maz-ui 5.0.0-beta.37 → 5.0.0-beta.39

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 (43) hide show
  1. package/dist/assets/MazBottomSheet.32utKIY0.css +2 -0
  2. package/dist/assets/{MazBtn.BaoUBSlx.css → MazBtn.YF06fX4K.css} +1 -1
  3. package/dist/assets/MazTextarea.DamMIwYJ.css +2 -0
  4. package/dist/chunks/MazBottomSheet.wl2tGAdr.js +1 -0
  5. package/dist/chunks/MazBtn.BDvqcYIY.js +1 -0
  6. package/dist/chunks/{MazDropzone.Cz5cSHN8.js → MazDropzone.BntPhoYq.js} +1 -1
  7. package/dist/chunks/{MazInputTags.CgEsmbnw.js → MazInputTags.7WzwopR1.js} +1 -1
  8. package/dist/chunks/{MazMarkdownEditor.zmln9XoX.js → MazMarkdownEditor.BZQItWt2.js} +1 -1
  9. package/dist/chunks/{MazPagination.C9dBe4AB.js → MazPagination.BuFeBpT5.js} +1 -1
  10. package/dist/chunks/{MazPickerCalendarGrid.9RHBzkN0.js → MazPickerCalendarGrid.Cdqyx-sd.js} +1 -1
  11. package/dist/chunks/{MazTabsBar.6uYFYXhR.js → MazTabsBar.Fscr154L.js} +1 -1
  12. package/dist/chunks/MazTextarea.Dhi0bCLK.js +1 -0
  13. package/dist/components/MazBottomSheet.js +1 -1
  14. package/dist/components/MazBottomSheet.vue.d.ts +52 -7
  15. package/dist/components/MazBtn.js +1 -1
  16. package/dist/components/MazBtn.vue.d.ts +5 -0
  17. package/dist/components/MazDatePicker/MazPickerCalendarMonth/MazPickerCalendarGrid.js +1 -1
  18. package/dist/components/MazDatePicker/MazPickerCalendarMonth/MazPickerCalendarMonth.js +1 -1
  19. package/dist/components/MazDatePicker/MazPickerCalendarSwitcher.js +1 -1
  20. package/dist/components/MazDatePicker/MazPickerMonthSwitcher.js +1 -1
  21. package/dist/components/MazDatePicker/MazPickerShortcuts.js +1 -1
  22. package/dist/components/MazDatePicker/MazPickerTime.js +1 -1
  23. package/dist/components/MazDatePicker/MazPickerYearSwitcher.js +1 -1
  24. package/dist/components/MazDropzone.js +1 -1
  25. package/dist/components/MazInputTags.js +1 -1
  26. package/dist/components/MazMarkdownEditor.js +1 -1
  27. package/dist/components/MazPagination.js +1 -1
  28. package/dist/components/MazTabsBar.js +1 -1
  29. package/dist/components/MazTabsBar.vue.d.ts +1 -0
  30. package/dist/components/MazTextarea.js +1 -1
  31. package/dist/components/MazTextarea.vue.d.ts +15 -1
  32. package/dist/components/index.js +1 -1
  33. package/dist/composables/index.d.ts +1 -0
  34. package/dist/composables/index.js +1 -1
  35. package/dist/composables/useDrag.d.ts +107 -0
  36. package/dist/composables/useDrag.js +1 -0
  37. package/dist/css/main.css +1 -1
  38. package/dist/resolvers/MazModulesResolver.js +1 -1
  39. package/package.json +6 -6
  40. package/dist/assets/MazTextarea.DNmo3YKr.css +0 -2
  41. package/dist/chunks/MazBottomSheet.BMiGc4uw.js +0 -1
  42. package/dist/chunks/MazBtn.C7LV-iX2.js +0 -1
  43. package/dist/chunks/MazTextarea.-yf7kcEl.js +0 -1
@@ -0,0 +1,2 @@
1
+ /*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
2
+ @media (min-width:640px){.m-bottom-sheet-wrapper[data-v-249c8e31]{max-inline-size:var(--max-width)}}.m-bottom-sheet[data-v-249c8e31]{will-change:transform;transition:transform .25s}.m-bottom-sheet.--dragging[data-v-249c8e31]{transition:none}
@@ -1,2 +1,2 @@
1
1
  /*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
2
- .m-btn[data-v-531af0a0]{--m-btn-bg-hover:oklch(from var(--m-btn-bg) clamp(0, calc(l - .05), 1) c h);--m-btn-bg-active:oklch(from var(--m-btn-bg) clamp(0, calc(l - .1), 1) c h);--m-btn-bd-light:oklch(from var(--m-btn-bg) clamp(0, calc(l + .06), 1) c h);--m-btn-bd-dark:oklch(from var(--m-btn-bg) clamp(0, calc(l - .1), 1) c h);--m-btn-pastel-bg:var(--m-btn-bg)}@supports (color:color-mix(in lab, red, red)){.m-btn[data-v-531af0a0]{--m-btn-pastel-bg:color-mix(in srgb, var(--m-btn-bg) 20%, transparent)}}.m-btn[data-v-531af0a0]{--m-btn-pastel-fg:oklch(from var(--m-btn-bg) clamp(0, calc(l - .1), 1) c h);justify-content:var(--m-btn-justify,center);background-color:var(--m-btn-bg);color:var(--m-btn-fg);font-weight:var(--maz-btn-font-weight,500);outline-offset:2px;outline:2px solid #0000}.m-btn[data-v-531af0a0]:not(:disabled):hover{background-color:var(--m-btn-bg-hover)}.m-btn[data-v-531af0a0]:not(:disabled):active,.m-btn.--active[data-v-531af0a0]{background-color:var(--m-btn-bg-active)}.m-btn[data-v-531af0a0]:focus-visible{outline-color:var(--m-btn-bg,var(--maz-primary))}.m-btn-loader-container[data-v-531af0a0]{inset:calc(var(--maz-space) * 0);background-color:var(--m-btn-bg);color:var(--m-btn-fg);justify-content:center;align-items:center;display:flex;position:absolute}.m-btn.--outlined[data-v-531af0a0]{border-color:var(--m-btn-bd-light);background-color:#0000}.m-btn.--outlined[data-v-531af0a0]:where(.dark,.dark *){border-color:var(--m-btn-bd-dark)}.m-btn.--outlined[data-v-531af0a0]{color:var(--m-btn-bg)}.m-btn.--outlined[data-v-531af0a0]:not(:disabled):hover{background-color:var(--m-btn-bg)}@supports (color:color-mix(in lab, red, red)){.m-btn.--outlined[data-v-531af0a0]:not(:disabled):hover{background-color:color-mix(in srgb, var(--m-btn-bg) 10%, transparent)}}.m-btn.--outlined[data-v-531af0a0]:not(:disabled):active,.m-btn.--outlined.--active[data-v-531af0a0]{background-color:var(--m-btn-bg)}@supports (color:color-mix(in lab, red, red)){.m-btn.--outlined[data-v-531af0a0]:not(:disabled):active,.m-btn.--outlined.--active[data-v-531af0a0]{background-color:color-mix(in srgb, var(--m-btn-bg) 20%, transparent)}}.m-btn.--pastel[data-v-531af0a0]{background-color:var(--m-btn-pastel-bg);color:var(--m-btn-pastel-fg)}.m-btn.--pastel[data-v-531af0a0]:not(:disabled):hover{background-color:var(--m-btn-bg);color:var(--m-btn-fg)}.m-btn.--pastel[data-v-531af0a0]:not(:disabled):active,.m-btn.--pastel.--active[data-v-531af0a0]{background-color:var(--m-btn-bg-hover);color:var(--m-btn-fg)}.m-btn.--transparent[data-v-531af0a0]{color:var(--maz-color-foreground,var(--maz-foreground));background-color:#0000}.m-btn.--transparent[data-v-531af0a0]:not(:disabled):hover{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}@supports (color:color-mix(in lab, red, red)){.m-btn.--transparent[data-v-531af0a0]:not(:disabled):hover{background-color:color-mix(in oklab, var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h)) 50%, transparent)}}.m-btn.--transparent[data-v-531af0a0]:not(:disabled):hover:where(.dark,.dark *){background-color:var(--maz-color-surface-400,oklch(from var(--maz-surface) clamp(0, calc(l + .06), 1) c h))}.m-btn.--transparent.--outlined[data-v-531af0a0]{border-color:var(--maz-color-divider,var(--maz-divider))}.m-btn.--transparent.--outlined[data-v-531af0a0]:not(:disabled):hover{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}@supports (color:color-mix(in lab, red, red)){.m-btn.--transparent.--outlined[data-v-531af0a0]:not(:disabled):hover{background-color:color-mix(in oklab, var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h)) 50%, transparent)}}.m-btn.--transparent.--outlined[data-v-531af0a0]:not(:disabled):active,.m-btn.--transparent.--outlined.--active[data-v-531af0a0],.m-btn.--transparent.--pastel[data-v-531af0a0]:not(:disabled):hover{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}.m-btn.--transparent.--pastel[data-v-531af0a0]:not(:disabled):active,.m-btn.--transparent.--pastel.--active[data-v-531af0a0]{background-color:var(--maz-color-surface-700,oklch(from var(--maz-surface) clamp(0, calc(l - .1), 1) c h))}.m-btn.--transparent .m-btn-loader-container[data-v-531af0a0],.m-btn.--surface[data-v-531af0a0]{background-color:var(--maz-color-surface,var(--maz-surface));color:var(--maz-color-foreground,var(--maz-foreground))}.m-btn.--surface[data-v-531af0a0]:not(:disabled):hover{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}.m-btn.--surface[data-v-531af0a0]:not(:disabled):hover:where(.dark,.dark *){background-color:var(--maz-color-surface-400,oklch(from var(--maz-surface) clamp(0, calc(l + .06), 1) c h))}.m-btn.--surface[data-v-531af0a0]:not(:disabled):active,.m-btn.--surface.--active[data-v-531af0a0]{background-color:var(--maz-color-surface-700,oklch(from var(--maz-surface) clamp(0, calc(l - .1), 1) c h))}:is(.m-btn.--surface[data-v-531af0a0]:not(:disabled):active,.m-btn.--surface.--active[data-v-531af0a0]):where(.dark,.dark *){background-color:var(--maz-color-surface-300,oklch(from var(--maz-surface) clamp(0, calc(l + .13), 1) c h))}.m-btn.--surface.--outlined[data-v-531af0a0]{border-color:var(--maz-color-divider,var(--maz-divider));background-color:#0000}.m-btn.--surface.--outlined[data-v-531af0a0]:not(:disabled):hover{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}@supports (color:color-mix(in lab, red, red)){.m-btn.--surface.--outlined[data-v-531af0a0]:not(:disabled):hover{background-color:color-mix(in oklab, var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h)) 50%, transparent)}}.m-btn.--surface.--outlined[data-v-531af0a0]:not(:disabled):active,.m-btn.--surface.--outlined.--active[data-v-531af0a0],.m-btn.--surface.--pastel[data-v-531af0a0]{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}.m-btn.--surface.--pastel[data-v-531af0a0]:not(:disabled):hover{background-color:var(--maz-color-surface-700,oklch(from var(--maz-surface) clamp(0, calc(l - .1), 1) c h))}.m-btn.--surface.--pastel[data-v-531af0a0]:not(:disabled):active,.m-btn.--surface.--pastel.--active[data-v-531af0a0]{background-color:var(--maz-color-surface-800,oklch(from var(--maz-surface) clamp(0, calc(l - .16), 1) calc(c * .9) h))}.m-btn.--surface .m-btn-loader-container[data-v-531af0a0]{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h));color:var(--maz-color-foreground,var(--maz-foreground))}.m-btn.--surface .m-btn-loader-container[data-v-531af0a0]:where(.dark,.dark *){background-color:var(--maz-color-surface-400,oklch(from var(--maz-surface) clamp(0, calc(l + .06), 1) c h))}.m-btn.--block[data-v-531af0a0]{width:100%}.m-btn[data-v-531af0a0]:disabled:not(.--loading){cursor:var(--maz-disabled-cursor);border-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h));background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h));color:var(--maz-color-muted,var(--maz-muted))}.m-btn[data-v-531af0a0]:disabled:not(.--loading):where(.dark,.dark *){border-color:var(--maz-color-surface-400,oklch(from var(--maz-surface) clamp(0, calc(l + .06), 1) c h));background-color:var(--maz-color-surface-400,oklch(from var(--maz-surface) clamp(0, calc(l + .06), 1) c h))}.m-btn.--loading[data-v-531af0a0]{cursor:wait}.m-btn.--no-padding[data-v-531af0a0]{padding:calc(var(--maz-space) * 0)}
2
+ .m-btn[data-v-48b88c67]{--m-btn-bg-hover:oklch(from var(--m-btn-bg) clamp(0, calc(l - .05), 1) c h);--m-btn-bg-active:oklch(from var(--m-btn-bg) clamp(0, calc(l - .1), 1) c h);--m-btn-bd-light:oklch(from var(--m-btn-bg) clamp(0, calc(l + .06), 1) c h);--m-btn-bd-dark:oklch(from var(--m-btn-bg) clamp(0, calc(l - .1), 1) c h);--m-btn-pastel-bg:var(--m-btn-bg)}@supports (color:color-mix(in lab, red, red)){.m-btn[data-v-48b88c67]{--m-btn-pastel-bg:color-mix(in srgb, var(--m-btn-bg) 20%, transparent)}}.m-btn[data-v-48b88c67]{--m-btn-pastel-fg:oklch(from var(--m-btn-bg) clamp(0, calc(l - .1), 1) c h);justify-content:var(--m-btn-justify,center);background-color:var(--m-btn-bg);color:var(--m-btn-fg);font-weight:var(--maz-btn-font-weight,500);outline-offset:2px;outline:2px solid #0000}.m-btn[data-v-48b88c67]:not(:disabled):hover{background-color:var(--m-btn-bg-hover)}.m-btn[data-v-48b88c67]:not(:disabled):active,.m-btn.--active[data-v-48b88c67]{background-color:var(--m-btn-bg-active)}.m-btn[data-v-48b88c67]:focus-visible{outline-color:var(--m-btn-bg,var(--maz-primary))}.m-btn-loader-container[data-v-48b88c67]{inset:calc(var(--maz-space) * 0);background-color:var(--m-btn-bg);color:var(--m-btn-fg);justify-content:center;align-items:center;display:flex;position:absolute}.m-btn.--outlined[data-v-48b88c67]{border-color:var(--m-btn-bd-light);background-color:#0000}.m-btn.--outlined[data-v-48b88c67]:where(.dark,.dark *){border-color:var(--m-btn-bd-dark)}.m-btn.--outlined[data-v-48b88c67]{color:var(--m-btn-bg)}.m-btn.--outlined[data-v-48b88c67]:not(:disabled):hover{background-color:var(--m-btn-bg)}@supports (color:color-mix(in lab, red, red)){.m-btn.--outlined[data-v-48b88c67]:not(:disabled):hover{background-color:color-mix(in srgb, var(--m-btn-bg) 10%, transparent)}}.m-btn.--outlined[data-v-48b88c67]:not(:disabled):active,.m-btn.--outlined.--active[data-v-48b88c67]{background-color:var(--m-btn-bg)}@supports (color:color-mix(in lab, red, red)){.m-btn.--outlined[data-v-48b88c67]:not(:disabled):active,.m-btn.--outlined.--active[data-v-48b88c67]{background-color:color-mix(in srgb, var(--m-btn-bg) 20%, transparent)}}.m-btn.--pastel[data-v-48b88c67]{background-color:var(--m-btn-pastel-bg);color:var(--m-btn-pastel-fg)}.m-btn.--pastel[data-v-48b88c67]:not(:disabled):hover{background-color:var(--m-btn-bg);color:var(--m-btn-fg)}.m-btn.--pastel[data-v-48b88c67]:not(:disabled):active,.m-btn.--pastel.--active[data-v-48b88c67]{background-color:var(--m-btn-bg-hover);color:var(--m-btn-fg)}.m-btn.--transparent[data-v-48b88c67]{color:var(--maz-color-foreground,var(--maz-foreground));background-color:#0000}.m-btn.--transparent[data-v-48b88c67]:not(:disabled):hover{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}@supports (color:color-mix(in lab, red, red)){.m-btn.--transparent[data-v-48b88c67]:not(:disabled):hover{background-color:color-mix(in oklab, var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h)) 50%, transparent)}}.m-btn.--transparent[data-v-48b88c67]:not(:disabled):hover:where(.dark,.dark *){background-color:var(--maz-color-surface-400,oklch(from var(--maz-surface) clamp(0, calc(l + .06), 1) c h))}.m-btn.--transparent.--outlined[data-v-48b88c67]{border-color:var(--maz-color-divider,var(--maz-divider))}.m-btn.--transparent.--outlined[data-v-48b88c67]:not(:disabled):hover{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}@supports (color:color-mix(in lab, red, red)){.m-btn.--transparent.--outlined[data-v-48b88c67]:not(:disabled):hover{background-color:color-mix(in oklab, var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h)) 50%, transparent)}}.m-btn.--transparent.--outlined[data-v-48b88c67]:not(:disabled):active,.m-btn.--transparent.--outlined.--active[data-v-48b88c67],.m-btn.--transparent.--pastel[data-v-48b88c67]:not(:disabled):hover{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}.m-btn.--transparent.--pastel[data-v-48b88c67]:not(:disabled):active,.m-btn.--transparent.--pastel.--active[data-v-48b88c67]{background-color:var(--maz-color-surface-700,oklch(from var(--maz-surface) clamp(0, calc(l - .1), 1) c h))}.m-btn.--transparent .m-btn-loader-container[data-v-48b88c67],.m-btn.--surface[data-v-48b88c67]{background-color:var(--maz-color-surface,var(--maz-surface));color:var(--maz-color-foreground,var(--maz-foreground))}.m-btn.--surface[data-v-48b88c67]:not(:disabled):hover{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}.m-btn.--surface[data-v-48b88c67]:not(:disabled):hover:where(.dark,.dark *){background-color:var(--maz-color-surface-400,oklch(from var(--maz-surface) clamp(0, calc(l + .06), 1) c h))}.m-btn.--surface[data-v-48b88c67]:not(:disabled):active,.m-btn.--surface.--active[data-v-48b88c67]{background-color:var(--maz-color-surface-700,oklch(from var(--maz-surface) clamp(0, calc(l - .1), 1) c h))}:is(.m-btn.--surface[data-v-48b88c67]:not(:disabled):active,.m-btn.--surface.--active[data-v-48b88c67]):where(.dark,.dark *){background-color:var(--maz-color-surface-300,oklch(from var(--maz-surface) clamp(0, calc(l + .13), 1) c h))}.m-btn.--surface.--outlined[data-v-48b88c67]{border-color:var(--maz-color-divider,var(--maz-divider));background-color:#0000}.m-btn.--surface.--outlined[data-v-48b88c67]:not(:disabled):hover{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}@supports (color:color-mix(in lab, red, red)){.m-btn.--surface.--outlined[data-v-48b88c67]:not(:disabled):hover{background-color:color-mix(in oklab, var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h)) 50%, transparent)}}.m-btn.--surface.--outlined[data-v-48b88c67]:not(:disabled):active,.m-btn.--surface.--outlined.--active[data-v-48b88c67],.m-btn.--surface.--pastel[data-v-48b88c67]{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h))}.m-btn.--surface.--pastel[data-v-48b88c67]:not(:disabled):hover{background-color:var(--maz-color-surface-700,oklch(from var(--maz-surface) clamp(0, calc(l - .1), 1) c h))}.m-btn.--surface.--pastel[data-v-48b88c67]:not(:disabled):active,.m-btn.--surface.--pastel.--active[data-v-48b88c67]{background-color:var(--maz-color-surface-800,oklch(from var(--maz-surface) clamp(0, calc(l - .16), 1) calc(c * .9) h))}.m-btn.--surface .m-btn-loader-container[data-v-48b88c67]{background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h));color:var(--maz-color-foreground,var(--maz-foreground))}.m-btn.--surface .m-btn-loader-container[data-v-48b88c67]:where(.dark,.dark *){background-color:var(--maz-color-surface-400,oklch(from var(--maz-surface) clamp(0, calc(l + .06), 1) c h))}.m-btn.--block[data-v-48b88c67]{width:100%}.m-btn[data-v-48b88c67]:disabled:not(.--loading){cursor:var(--maz-disabled-cursor);border-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h));background-color:var(--maz-color-surface-600,oklch(from var(--maz-surface) clamp(0, calc(l - .05), 1) c h));color:var(--maz-color-muted,var(--maz-muted))}.m-btn[data-v-48b88c67]:disabled:not(.--loading):where(.dark,.dark *){border-color:var(--maz-color-surface-400,oklch(from var(--maz-surface) clamp(0, calc(l + .06), 1) c h));background-color:var(--maz-color-surface-400,oklch(from var(--maz-surface) clamp(0, calc(l + .06), 1) c h))}.m-btn.--loading[data-v-48b88c67]{cursor:wait}.m-btn.--no-padding[data-v-48b88c67]{padding:calc(var(--maz-space) * 0)}
@@ -0,0 +1,2 @@
1
+ /*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
2
+ .m-textarea[data-v-e61d0cb9]{--mt-padding-block:calc((var(--mt-height,3rem) - var(--mt-line-height,1.5rem) - (var(--maz-border-width) * 2)) / 2)}.m-textarea.--padding[data-v-e61d0cb9]{padding-inline:var(--mt-padding-inline,1rem);padding-block:var(--mt-padding-block)}.m-textarea.--has-placeholder.--has-label textarea[data-v-e61d0cb9]{padding-block-start:calc(var(--mt-line-height,1.5rem) * .6)}.m-textarea.--has-label:has(textarea:not(:placeholder-shown)) textarea[data-v-e61d0cb9]{padding-block-start:calc(var(--mt-line-height,1.5rem) * .6)}.m-textarea.--has-label:has(textarea:-webkit-autofill) textarea[data-v-e61d0cb9]{padding-block-start:calc(var(--mt-line-height,1.5rem) * .6)}.m-textarea__append[data-v-e61d0cb9]{justify-content:var(--append-justify)}.m-textarea textarea[data-v-e61d0cb9]{--tw-outline-style:none;background-color:#0000;outline-style:none;width:100%}@media (forced-colors:active){.m-textarea textarea[data-v-e61d0cb9]{outline-offset:2px;outline:2px solid #0000}}.m-textarea textarea[data-v-e61d0cb9]{line-height:var(--mt-line-height,1.5rem);transition:padding .2s cubic-bezier(0,0,.2,1)}.m-textarea textarea.--has-append[data-v-e61d0cb9]{padding-bottom:calc(var(--maz-space) * 4)}.m-textarea.--is-disabled[data-v-e61d0cb9] *{cursor:var(--maz-disabled-cursor);color:var(--maz-color-muted,var(--maz-muted))}.m-textarea.--is-disabled>label[data-v-e61d0cb9]{color:var(--maz-color-gray-300,#d1d5dc)}@supports (color:lab(0% 0 0)){.m-textarea.--is-disabled>label[data-v-e61d0cb9]{color:var(--maz-color-gray-300,lab(85.1236% -.612259 -3.7138))}}.m-textarea.--is-disabled>label[data-v-e61d0cb9]:where(.dark,.dark *){color:var(--maz-color-gray-600,#4a5565)}@supports (color:lab(0% 0 0)){.m-textarea.--is-disabled>label[data-v-e61d0cb9]:where(.dark,.dark *){color:var(--maz-color-gray-600,lab(35.6337% -1.58697 -10.8425))}}.m-textarea__label[data-v-e61d0cb9]{pointer-events:none;transform-origin:0 0;text-overflow:ellipsis;white-space:nowrap;width:max-content;line-height:var(--mt-line-height,1.5rem);justify-content:center;align-items:center;transition:transform .2s cubic-bezier(0,0,.2,1);display:flex;position:absolute;inset-block-start:var(--mt-padding-block);inset-inline-start:var(--mt-padding-inline,1rem);overflow:hidden}.m-textarea__label[data-v-e61d0cb9]:not(.--has-state){color:var(--maz-color-muted,var(--maz-muted))}.m-textarea.--has-placeholder .m-textarea__label[data-v-e61d0cb9]{transform:scale(.8) translateY(calc(-1 * var(--mt-padding-block)))}.m-textarea:has(textarea:not(:placeholder-shown)) .m-textarea__label[data-v-e61d0cb9]{transform:scale(.8) translateY(calc(-1 * var(--mt-padding-block)))}.m-textarea:has(textarea:-webkit-autofill) .m-textarea__label[data-v-e61d0cb9]{transform:scale(.8) translateY(calc(-1 * var(--mt-padding-block)))}.m-textarea.--primary[data-v-e61d0cb9]:focus-within{border-color:var(--maz-color-primary,var(--maz-primary))}.m-textarea.--secondary[data-v-e61d0cb9]:focus-within{border-color:var(--maz-color-secondary,var(--maz-secondary))}.m-textarea.--accent[data-v-e61d0cb9]:focus-within{border-color:var(--maz-color-accent,var(--maz-accent))}.m-textarea.--info[data-v-e61d0cb9]:focus-within{border-color:var(--maz-color-info,var(--maz-info))}.m-textarea.--success[data-v-e61d0cb9]:focus-within{border-color:var(--maz-color-success,var(--maz-success))}.m-textarea.--warning[data-v-e61d0cb9]:focus-within{border-color:var(--maz-color-warning,var(--maz-warning))}.m-textarea.--destructive[data-v-e61d0cb9]:focus-within{border-color:var(--maz-color-destructive,var(--maz-destructive))}.m-textarea.--contrast[data-v-e61d0cb9]:focus-within{border-color:var(--maz-color-contrast,var(--maz-contrast))}.m-textarea.--autogrow textarea[data-v-e61d0cb9]{resize:none;field-sizing:content;min-block-size:calc(var(--maz-textarea-min-rows,3) * 1lh)}.m-textarea:not(.--autogrow) textarea[data-v-e61d0cb9]{resize:vertical}
@@ -0,0 +1 @@
1
+ import{t as hasSlotContent}from"./hasSlotContent.rEQOMGV4.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{useDrag}from"../composables/useDrag.js";import{useMazIconProps}from"../composables/useMazIconProps.js";import{t as MazIcon_default}from"./MazIcon.CblJ-8Iu.js";import{t as MazBackdrop_default}from"./MazBackdrop.DfqSzNiW.js";import{computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createPropsRestProxy,createTextVNode,createVNode,defineAsyncComponent,defineComponent,mergeProps,normalizeClass,normalizeProps,normalizeStyle,openBlock,ref,renderSlot,toDisplayString,unref,useAttrs,useSlots,withCtx}from"vue";import{MazXMark}from"@maz-ui/icons/raw/MazXMark";import '../assets/MazBottomSheet.32utKIY0.css';var _hoisted_1={key:0,class:`m-bottom-sheet__header-content maz:flex maz:min-w-0 maz:items-center maz:gap-3`};var _hoisted_2={key:0,class:`m-bottom-sheet__icon maz:flex maz:shrink-0 maz:items-center`};var _hoisted_3={key:1,id:`bottomSheetTitle`,class:`m-bottom-sheet__title maz:my-0 maz:truncate maz:font-display maz:text-lg maz:font-semibold`};var _hoisted_4={key:1,class:`m-bottom-sheet__close maz:flex maz:shrink-0 maz:justify-end`};var _hoisted_5={key:1,class:`m-bottom-sheet__footer maz:flex maz:items-center maz:justify-end maz:gap-2 maz:border-t maz:border-divider maz:p-4`};var CLOSE_THRESHOLD=120;var MazBottomSheet_default=_plugin_vue_export_helper_default(defineComponent({name:`MazBottomSheet`,inheritAttrs:!1,__name:`MazBottomSheet`,props:{modelValue:{type:Boolean},title:{},icon:{type:[String,Function,Object]},maxWidth:{default:`40rem`},hideCloseButton:{type:Boolean,default:!1},hideHeader:{type:Boolean,default:!1},padding:{type:Boolean,default:!0},persistent:{type:Boolean},swipeToClose:{type:Boolean,default:!0},teleportSelector:{},beforeClose:{type:Function},closeOnEscape:{type:Boolean,default:!0},transitionName:{},backdropClass:{type:[Boolean,null,String,Object,Array]},backdropContentClass:{type:[Boolean,null,String,Object,Array]},contentPadding:{type:Boolean},justify:{},align:{},variant:{},ariaLabelledby:{},ariaDescribedby:{}},emits:[`update:model-value`,`open`,`close`],setup(__props,{expose:__expose,emit:__emit}){let backdropProps=createPropsRestProxy(__props,[`modelValue`,`title`,`icon`,`maxWidth`,`hideCloseButton`,`hideHeader`,`padding`,`persistent`,`swipeToClose`,`closeOnEscape`]);let emits=__emit;let MazBtn=defineAsyncComponent(()=>import(`../components/MazBtn.js`));let attrs=useAttrs();let slots=useSlots();let backdrop=ref();__expose({close:()=>backdrop.value?.close?.()});let{iconProps}=useMazIconProps(()=>__props.icon,()=>({size:`1.5rem`}));let wrapperAttrs=computed(()=>({class:attrs.class,style:attrs.style}));let hasTitle=computed(()=>hasSlotContent(slots.title)||!!__props.title);let hasIcon=computed(()=>hasSlotContent(slots.icon)||!!iconProps.value);let hasFooter=computed(()=>hasSlotContent(slots.footer));let closeSheet=()=>backdrop.value?.close?.();let handleEl=ref();let dragOffset=ref(0);let sheetStyle=computed(()=>dragOffset.value>0?{transform:`translateY(${dragOffset.value}px)`}:{});let{isDragging}=useDrag(handleEl,{axis:`y`,onMove:({offsetY})=>{dragOffset.value=Math.max(0,offsetY)},onEnd:({offsetY})=>{!__props.persistent&&offsetY>=CLOSE_THRESHOLD?closeSheet():dragOffset.value=0}});function onClose(value){dragOffset.value=0,emits(`close`,value)}return(_ctx,_cache)=>(openBlock(),createBlock(MazBackdrop_default,mergeProps(backdropProps,{ref_key:`backdrop`,ref:backdrop,"model-value":__props.modelValue,"transition-name":`bottom-sheet-anim`,"backdrop-class":`--bottom-sheet`,"content-padding":!1,"close-on-escape":__props.closeOnEscape,persistent:__props.persistent,align:`end`,justify:`center`,variant:`bottom-sheet`,"aria-labelledby":`bottomSheetTitle`,"aria-describedby":`bottomSheetDesc`,onClose,onOpen:_cache[0]||=$event=>emits(`open`,$event),"onUpdate:modelValue":_cache[1]||=$event=>emits(`update:model-value`,$event)}),{default:withCtx(({close})=>[createElementVNode(`div`,{class:`m-bottom-sheet-wrapper maz:flex maz:w-full maz:flex-col`,style:normalizeStyle([{"--max-width":__props.maxWidth}])},[createElementVNode(`div`,mergeProps({class:[`m-bottom-sheet maz:relative maz:flex maz:w-full maz:flex-col maz:rounded-t-md maz:border-x maz:border-t maz:border-divider maz:bg-container maz:text-foreground maz:shadow-elevation maz:drop-shadow-md`,{"--dragging":unref(isDragging)}],role:`dialog`,"aria-modal":`true`,style:sheetStyle.value},wrapperAttrs.value),[__props.swipeToClose?(openBlock(),createElementBlock(`div`,{key:0,ref_key:`handleEl`,ref:handleEl,class:`m-bottom-sheet__handle-zone maz:flex maz:shrink-0 maz:cursor-grab maz:touch-none maz:justify-center maz:pt-2 maz:pb-1`},[renderSlot(_ctx.$slots,`handle`,{},()=>[_cache[2]||=createElementVNode(`span`,{class:`m-bottom-sheet__handle maz:h-1 maz:w-9 maz:rounded-full maz:bg-foreground/20`},null,-1)],!0)],512)):createCommentVNode(``,!0),renderSlot(_ctx.$slots,`header`,{close},()=>[__props.hideHeader?createCommentVNode(``,!0):(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`m-bottom-sheet__header maz:flex maz:items-center maz:gap-3 maz:border-b maz:border-divider maz:px-3 maz:py-2`,[hasTitle.value||hasIcon.value?`maz:justify-between`:`maz:justify-end`]])},[hasTitle.value||hasIcon.value?(openBlock(),createElementBlock(`div`,_hoisted_1,[hasIcon.value?(openBlock(),createElementBlock(`span`,_hoisted_2,[renderSlot(_ctx.$slots,`icon`,{},()=>[unref(iconProps)?(openBlock(),createBlock(MazIcon_default,normalizeProps(mergeProps({key:0},unref(iconProps))),null,16)):createCommentVNode(``,!0)],!0)])):createCommentVNode(``,!0),hasTitle.value?(openBlock(),createElementBlock(`h2`,_hoisted_3,[renderSlot(_ctx.$slots,`title`,{},()=>[createTextVNode(toDisplayString(__props.title),1)],!0)])):createCommentVNode(``,!0)])):createCommentVNode(``,!0),!__props.hideCloseButton&&!__props.persistent?(openBlock(),createElementBlock(`div`,_hoisted_4,[createVNode(unref(MazBtn),{color:`transparent`,size:`sm`,outlined:``,icon:unref(MazXMark),onClick:close},null,8,[`icon`,`onClick`])])):createCommentVNode(``,!0)],2))],!0),createElementVNode(`div`,{id:`bottomSheetDesc`,class:normalizeClass([`m-bottom-sheet__content maz:flex-1`,{"maz:p-4":__props.padding}])},[renderSlot(_ctx.$slots,`default`,{close},void 0,!0)],2),hasFooter.value?(openBlock(),createElementBlock(`div`,_hoisted_5,[renderSlot(_ctx.$slots,`footer`,{close},void 0,!0)])):createCommentVNode(``,!0)],16)],4)]),_:3},16,[`model-value`,`close-on-escape`,`persistent`]))}}),[[`__scopeId`,`data-v-249c8e31`]]);export{MazBottomSheet_default as t};
@@ -0,0 +1 @@
1
+ import{t as hasSlotContent}from"./hasSlotContent.rEQOMGV4.js";import{t as getColor}from"./types.BkdDF2d8.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{useMazIconProps}from"../composables/useMazIconProps.js";import{useGlobalConfig}from"../composables/useGlobalConfig.js";import{t as resolveLinkComponent}from"./resolveLinkComponent.Cbat3RFd.js";import{computed,createBlock,createCommentVNode,createElementBlock,createTextVNode,createVNode,defineAsyncComponent,defineComponent,mergeProps,normalizeClass,normalizeProps,normalizeStyle,openBlock,renderSlot,resolveDynamicComponent,toDisplayString,unref,useAttrs,withCtx}from"vue";import '../assets/MazBtn.YF06fX4K.css';var _hoisted_1={key:0,class:`m-btn-loader-container`};var MazBtn_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazBtn`,props:{text:{},size:{},color:{default:`primary`},textColor:{},type:{default:`button`},roundedSize:{},outlined:{type:Boolean},pastel:{type:Boolean},block:{type:Boolean},loading:{type:Boolean},disabled:{type:Boolean},fab:{type:Boolean},icon:{type:[String,Function,Object]},startIcon:{type:[String,Function,Object]},endIcon:{type:[String,Function,Object]},padding:{type:Boolean,default:!0},justify:{default:`center`},active:{type:Boolean},overflowHidden:{type:Boolean,default:!0}},setup(__props){let{size,roundedSize}=useGlobalConfig(`MazBtn`,{size:`md`,roundedSize:`md`});let MazIcon=defineAsyncComponent(()=>import(`../components/MazIcon.js`));let MazSpinner=defineAsyncComponent(()=>import(`../components/MazSpinner.js`));let{href,to}=useAttrs();let component=computed(()=>href?`a`:to?resolveLinkComponent():`button`);let resolvedColor=computed(()=>getColor(__props.color));let isDisabled=computed(()=>(__props.loading||__props.disabled)&&component.value===`button`);let btnType=computed(()=>component.value===`button`?__props.type:void 0);let iconSize=computed(()=>({xl:`lg`,lg:`md`,md:`md`,sm:`sm`,xs:`xs`,mini:`1em`})[size.value]||`lg`);let{iconProps:startIconProps}=useMazIconProps(()=>__props.startIcon,()=>({size:iconSize.value}));let{iconProps:endIconProps}=useMazIconProps(()=>__props.endIcon,()=>({size:iconSize.value}));let{iconProps:fabIconProps}=useMazIconProps(()=>__props.icon,()=>({size:iconSize.value}));let btnStyle=computed(()=>{let c=resolvedColor.value;let base={"--m-btn-justify":__props.justify};return c===`transparent`||c===`surface`?base:{...base,"--m-btn-bg":`var(--maz-${c})`,"--m-btn-fg":`var(--maz-${c}-foreground)`,...__props.pastel&&c===`contrast`&&{"--m-btn-pastel-fg":`var(--maz-contrast-foreground)`}}});let TEXT_COLOR={primary:`maz:text-primary!`,secondary:`maz:text-secondary!`,accent:`maz:text-accent!`,info:`maz:text-info!`,success:`maz:text-success!`,warning:`maz:text-warning!`,destructive:`maz:text-destructive!`,contrast:`maz:text-contrast!`,transparent:`maz:text-transparent!`,muted:`maz:text-muted!`};let SIZE_CLASS={xl:`maz:min-h-16 maz:px-8 maz:text-xl`,lg:`maz:min-h-14 maz:px-6`,md:`maz:min-h-12 maz:px-4`,sm:`maz:min-h-10 maz:px-3`,xs:`maz:min-h-8 maz:px-2 maz:text-sm`,mini:`maz:min-h-6 maz:px-1 maz:text-xs`};let ROUNDED_CLASS={none:``,sm:`maz:rounded-xs`,md:`maz:rounded-md`,lg:`maz:rounded-lg`,xl:`maz:rounded-xl`,full:`maz:rounded-full`};let FAB_SIZE_CLASS={xl:`maz:w-16`,lg:`maz:w-14`,md:`maz:w-12`,sm:`maz:w-10`,xs:`maz:w-8`,mini:`maz:w-6`};let ICON_PADDING_CLASS={xl:{start:`maz:ps-6`,end:`maz:pe-6`},lg:{start:`maz:ps-4`,end:`maz:pe-4`},md:{start:`maz:ps-2`,end:`maz:pe-2`},sm:{start:`maz:ps-2`,end:`maz:pe-2`},xs:{start:``,end:``},mini:{start:``,end:``}};return(_ctx,_cache)=>(openBlock(),createBlock(resolveDynamicComponent(component.value),{disabled:isDisabled.value,class:normalizeClass([`m-btn m-reset-css maz:inline-flex maz:cursor-pointer maz:items-center maz:gap-2 maz:border maz:border-solid maz:border-transparent maz:bg-transparent maz:py-0.5 maz:text-center maz:align-top maz:text-foreground maz:no-underline maz:transition-all maz:duration-200 maz:ease-in-out`,[`--${resolvedColor.value}`,`--${unref(size)}`,__props.textColor&&`${TEXT_COLOR[__props.textColor]}`,!__props.fab&&unref(roundedSize)?`--rounded-${unref(roundedSize)}`:``,!__props.fab&&SIZE_CLASS[unref(size)],__props.fab?`maz:flex maz:flex-center maz:rounded-full maz:p-1`:ROUNDED_CLASS[unref(roundedSize)],__props.fab?FAB_SIZE_CLASS[unref(size)]:``,__props.startIcon||unref(hasSlotContent)(_ctx.$slots[`start-icon`])?ICON_PADDING_CLASS[unref(size)].start:``,__props.endIcon||unref(hasSlotContent)(_ctx.$slots[`end-icon`])?ICON_PADDING_CLASS[unref(size)].end:``,{"maz:relative":__props.loading,"maz:overflow-hidden":__props.overflowHidden,"--outlined":__props.outlined,"--pastel":__props.pastel,"--block":__props.block&&!__props.fab,"--fab":__props.fab,"--loading":__props.loading,"--active":__props.active,"--no-padding":!__props.padding,"--has-start-icon":!!__props.startIcon||unref(hasSlotContent)(_ctx.$slots[`start-icon`]),"--has-end-icon":!!__props.endIcon||unref(hasSlotContent)(_ctx.$slots[`end-icon`])}]]),style:normalizeStyle(btnStyle.value),type:btnType.value},{default:withCtx(()=>[renderSlot(_ctx.$slots,`start-icon`,{},()=>[unref(startIconProps)?(openBlock(),createBlock(unref(MazIcon),normalizeProps(mergeProps({key:0},unref(startIconProps))),null,16)):createCommentVNode(``,!0)],!0),renderSlot(_ctx.$slots,`icon`,{},()=>[unref(fabIconProps)?(openBlock(),createBlock(unref(MazIcon),normalizeProps(mergeProps({key:0},unref(fabIconProps))),null,16)):createCommentVNode(``,!0)],!0),renderSlot(_ctx.$slots,`default`,{},()=>[createTextVNode(toDisplayString(__props.text),1)],!0),renderSlot(_ctx.$slots,`end-icon`,{},()=>[unref(endIconProps)?(openBlock(),createBlock(unref(MazIcon),normalizeProps(mergeProps({key:0},unref(endIconProps))),null,16)):createCommentVNode(``,!0)],!0),__props.loading?(openBlock(),createElementBlock(`div`,_hoisted_1,[renderSlot(_ctx.$slots,`loader`,{},()=>[createVNode(unref(MazSpinner),{size:`2em`})],!0)])):createCommentVNode(``,!0)]),_:3},8,[`disabled`,`class`,`style`,`type`]))}}),[[`__scopeId`,`data-v-48b88c67`]]);export{MazBtn_default as t};
@@ -1 +1 @@
1
- import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{useDropzone}from"../composables/useDropzone.js";import{t as MazBtn_default}from"./MazBtn.C7LV-iX2.js";import{t as MazIcon_default}from"./MazIcon.CblJ-8Iu.js";import{t as MazLink_default}from"./MazLink.CemC1AR_.js";import{Fragment,Transition,TransitionGroup,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,createVNode,defineAsyncComponent,defineComponent,mergeModels,mergeProps,normalizeClass,normalizeStyle,onBeforeMount,openBlock,ref,renderList,renderSlot,toDisplayString,unref,useModel,withCtx,withModifiers}from"vue";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import{sleep}from"@maz-ui/utils/helpers/sleep";import{MazCheckCircle}from"@maz-ui/icons/lazy/MazCheckCircle";import{MazCodeBracket}from"@maz-ui/icons/lazy/MazCodeBracket";import{MazPhoto}from"@maz-ui/icons/lazy/MazPhoto";import{MazArchiveBox}from"@maz-ui/icons/lazy/MazArchiveBox";import{MazArrowUpOnSquare}from"@maz-ui/icons/lazy/MazArrowUpOnSquare";import{MazCog}from"@maz-ui/icons/lazy/MazCog";import{MazCommandLine}from"@maz-ui/icons/lazy/MazCommandLine";import{MazDocumentIcon}from"@maz-ui/icons/lazy/MazDocumentIcon";import{MazDocumentText}from"@maz-ui/icons/lazy/MazDocumentText";import{MazFilm}from"@maz-ui/icons/lazy/MazFilm";import{MazLogoAndroid}from"@maz-ui/icons/lazy/MazLogoAndroid";import{MazLogoApple}from"@maz-ui/icons/lazy/MazLogoApple";import{MazLogoCsv}from"@maz-ui/icons/lazy/MazLogoCsv";import{MazLogoHtml}from"@maz-ui/icons/lazy/MazLogoHtml";import{MazLogoJs}from"@maz-ui/icons/lazy/MazLogoJs";import{MazLogoJson}from"@maz-ui/icons/lazy/MazLogoJson";import{MazLogoMarkdown}from"@maz-ui/icons/lazy/MazLogoMarkdown";import{MazLogoProperties}from"@maz-ui/icons/lazy/MazLogoProperties";import{MazLogoReact}from"@maz-ui/icons/lazy/MazLogoReact";import{MazLogoTxt}from"@maz-ui/icons/lazy/MazLogoTxt";import{MazLogoTypescript}from"@maz-ui/icons/lazy/MazLogoTypescript";import{MazLogoVue}from"@maz-ui/icons/lazy/MazLogoVue";import{MazLogoXliff}from"@maz-ui/icons/lazy/MazLogoXliff";import{MazLogoXls}from"@maz-ui/icons/lazy/MazLogoXls";import{MazLogoXml}from"@maz-ui/icons/lazy/MazLogoXml";import{MazPaintBrush}from"@maz-ui/icons/lazy/MazPaintBrush";import{MazPencilSquare}from"@maz-ui/icons/lazy/MazPencilSquare";import{MazPresentationChartBar}from"@maz-ui/icons/lazy/MazPresentationChartBar";import{MazSpeakerWave}from"@maz-ui/icons/lazy/MazSpeakerWave";import{MazTrash}from"@maz-ui/icons/lazy/MazTrash";import{MazXCircle}from"@maz-ui/icons/lazy/MazXCircle";import '../assets/MazDropzone._IzxepXc.css';var _hoisted_1=[`for`];var _hoisted_2={class:`m-dropzone__icon-container`};var _hoisted_3={key:3,class:`m-dropzone__file-icon-wrapper`};var _hoisted_4={class:`m-dropzone__description`};var _hoisted_5={class:`m-dropzone__file-info`};var _hoisted_6={class:`m-dropzone__file-name`};var _hoisted_7={class:`m-dropzone__file-size`};var _hoisted_8={class:`m-dropzone__content`};var _hoisted_9={class:`m-dropzone__upload-text`};var _hoisted_10={key:0,class:`m-dropzone__info-text`};var _hoisted_11={key:0};var _hoisted_12={key:1};var _hoisted_13={key:2};var _hoisted_14=[`id`,`multiple`,`accept`,`disabled`];var MazDropzone_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazDropzone`,props:mergeModels({id:{},multiple:{type:Boolean,default:!1},dataTypes:{},preventDefaultForUnhandled:{type:Boolean,default:!0},maxFileSize:{},maxFiles:{},disabled:{type:Boolean,default:!1},preview:{type:Boolean,default:!0},minFileSize:{},allowDuplicates:{type:Boolean,default:!1},translations:{},color:{default:`primary`},removeFileBtnProps:{default:()=>({})},spinnerProps:{default:()=>({})},autoUpload:{type:[String,Boolean],default:!1},url:{},requestOptions:{},transformBody:{type:Function},maxConcurrentUploads:{default:5}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:mergeModels([`drop`,`enter`,`leave`,`over`,`add`,`remove`,`error`,`upload-error`,`upload-error-multiple`,`upload-success`,`upload-success-multiple`],[`update:modelValue`]),setup(__props,{expose:__expose,emit:__emit}){let emits=__emit;let MazSpinner=defineAsyncComponent(()=>import(`../components/MazSpinner.js`));let filesData=useModel(__props,`modelValue`);onBeforeMount(async()=>{filesData.value.length&&(filesData.value=await Promise.all(filesData.value.map(fileData=>getFileData(fileData.file))))});let dropZoneRef=ref();let isUploading=ref(!1);let hasMultiple=computed(()=>__props.multiple||(__props.maxFiles?__props.maxFiles>1:!1)||__props.autoUpload===`multiple`);let instanceId=useInstanceUniqId({componentName:`MazDropzone`,providedId:__props.id});function uploadFile(formData){if(!__props.url)throw emits(`error`,{files:null,event:null,code:`NO_URL`}),Error(`NO_URL`);try{let body=__props.transformBody?.(formData)??formData;return fetch(__props.url,{method:`POST`,body,...__props.requestOptions})}catch{emits(`error`,{files:null,event:null,code:`FILE_UPLOAD_ERROR`})}}function getFormData(file){let formData=new FormData;return formData.append(`file`,file),formData}function getFormDataMultiple(){let formData=new FormData;return filesData.value.forEach(fileData=>formData.append(`files`,fileData.file)),formData}async function uploadFilesMultiple(){if(!filesData.value.length){emits(`error`,{files:filesData.value.map(f=>f.file),event:null,code:`NO_FILES_TO_UPLOAD`});return}try{isUploading.value=!0,filesData.value=filesData.value.map(f=>({...f,uploading:!0,success:!1,error:!1}));let response=await uploadFile(getFormDataMultiple());filesData.value=filesData.value.map(f=>({...f,uploading:!1,success:!0,error:!1})),emits(`upload-success-multiple`,{files:filesData.value.map(f=>f.file),response})}catch(error){filesData.value=filesData.value.map(f=>({...f,uploading:!1,success:!1,error:!0})),emits(`upload-error-multiple`,{files:filesData.value.map(f=>f.file),code:`FILE_UPLOAD_ERROR_MULTIPLE`,error})}finally{isUploading.value=!1,await sleep(1e3),filesData.value=filesData.value.filter(f=>f.error)}}async function uploadFiles(){if(!filesData.value.length)throw emits(`error`,{files:filesData.value.map(f=>f.file),event:null,code:`NO_FILES_TO_UPLOAD`}),Error(`NO_FILES_TO_UPLOAD`);try{isUploading.value=!0;let queue=[...filesData.value];let activeUploads=[];async function uploadFileData(fileData){let formData=getFormData(fileData.file);try{fileData.error=!1,fileData.uploading=!0;let response=await uploadFile(formData);emits(`upload-success`,{file:fileData.file,response}),fileData.success=!0}catch(error){fileData.error=!0,emits(`upload-error`,{file:fileData.file,code:`FILE_UPLOAD_ERROR`,error})}finally{fileData.uploading=!1}}async function processQueue(){for(;queue.length>0;){let fileData=queue.shift();fileData&&await uploadFileData(fileData)}}for(let i=0;i<Math.min(__props.maxConcurrentUploads,filesData.value.length);i++)activeUploads.push(processQueue());await Promise.allSettled(activeUploads)}finally{isUploading.value=!1,await sleep(1e3),filesData.value=filesData.value.filter(f=>f.error)}}async function getFileData(file){let fileData={file,name:file.name,size:file.size,type:file.type,lastModified:file.lastModified,sizeInMb:(file.size/1024/1024).toFixed(2),lastModifiedDate:new Date(file.lastModified),url:URL.createObjectURL(file),thumbnail:void 0,uploading:!1,success:!1,error:!1};return file.type.startsWith(`image/`)&&await new Promise(resolve=>{let reader=new FileReader;reader.onload=event=>{fileData.thumbnail=event.target?.result||void 0,resolve(null)},reader.readAsDataURL(file)}),__props.maxFileSize&&file.size>__props.maxFileSize*1024*1024&&emits(`error`,{files:[file],event:null,code:`FILE_SIZE_EXCEEDED`}),__props.minFileSize&&file.size<__props.minFileSize*1024*1024&&emits(`error`,{files:[file],event:null,code:`FILE_SIZE_TOO_SMALL`}),fileData}async function handleFiles(files){if(__props.disabled||!files)return null;for await(let file of files){if(!isFileTypeAllowed(file)){emits(`error`,{files:[file],event:null,code:`FILE_TYPE_NOT_ALLOWED`});continue}if(!hasMultiple.value&&filesData.value.length>=1){emits(`error`,{files:[file],event:null,code:`MAX_FILES_EXCEEDED`});continue}if(__props.maxFiles&&filesData.value.length>=__props.maxFiles){emits(`error`,{files:[file],event:null,code:`MAX_FILES_EXCEEDED`});continue}if(__props.maxFileSize&&file.size>__props.maxFileSize*1024*1024){emits(`error`,{files:[file],event:null,code:`FILE_SIZE_EXCEEDED`});continue}if(__props.minFileSize&&file.size<__props.minFileSize*1024*1024){emits(`error`,{files:[file],event:null,code:`FILE_SIZE_TOO_SMALL`});continue}if(!__props.allowDuplicates&&filesData.value.some(f=>f.name===file.name&&f.size===file.size&&f.type===file.type)){emits(`error`,{files:[file],event:null,code:`FILE_DUPLICATED`});continue}let fileData=await getFileData(file);filesData.value=[...filesData.value,fileData],emits(`add`,fileData.file)}return __props.autoUpload===`single`?uploadFiles():__props.autoUpload===`multiple`&&uploadFilesMultiple(),filesData.value}async function onDrop(files,event){await handleFiles(files),emits(`drop`,{files,event})}function onError(files,event){emits(`error`,{files,event,code:`FILE_TYPE_NOT_ALLOWED`})}function onEnter(files,event){emits(`enter`,{files,event})}function onLeave(files,event){emits(`leave`,{files,event})}function onOver(files,event){emits(`over`,{files,event})}let{isOverDropZone,isOverError}=useDropzone(dropZoneRef,{dataTypes:__props.dataTypes,onDrop,preventDefaultForUnhandled:__props.preventDefaultForUnhandled,multiple:hasMultiple.value,onError,onEnter,onLeave,onOver});let fileInput=ref();function handleFileUpload(event){let input=event.target;let files=input?.files;files&&handleFiles(files),setTimeout(()=>{input.value=``},3e3)}let extensionIconMap=(()=>{let map=new Map;let groups=[[MazLogoJs,[`js`,`mjs`,`cjs`]],[MazLogoTypescript,[`ts`,`tsx`,`mts`,`cts`]],[MazLogoVue,[`vue`]],[MazLogoReact,[`jsx`]],[MazLogoJson,[`json`,`jsonc`,`json5`]],[MazLogoXml,[`xml`]],[MazLogoHtml,[`html`,`htm`]],[MazLogoMarkdown,[`md`,`markdown`,`mdx`]],[MazLogoProperties,[`properties`]],[MazLogoTxt,[`txt`]],[MazLogoCsv,[`csv`]],[MazLogoXls,[`xls`,`xlsx`]],[MazLogoXliff,[`xliff`,`xlf`]],[MazLogoApple,[`strings`,`stringsdict`,`xcstrings`]],[MazLogoAndroid,[`apk`]],[MazPhoto,[`jpeg`,`jpg`,`png`,`tiff`,`bmp`,`webp`,`svg`,`ico`,`gif`,`heic`,`heif`,`avif`]],[MazFilm,[`mp4`,`webm`,`avi`,`mov`,`mkv`,`flv`,`wmv`,`m4v`,`mpeg`,`mpg`,`3gp`,`ogv`]],[MazSpeakerWave,[`mp3`,`wav`,`m4a`,`aac`,`flac`,`ogg`,`oga`,`opus`,`wma`,`alac`,`aiff`]],[MazArchiveBox,[`zip`,`rar`,`tar`,`gz`,`7z`,`bz2`,`xz`]],[MazCommandLine,[`exe`,`dll`,`so`,`dylib`,`dmg`,`deb`,`rpm`,`app`,`bat`,`cmd`]],[MazCodeBracket,`css.scss.sass.less.py.java.cpp.c.h.hpp.go.rs.rust.php.rb.swift.kt.kotlin.sql.sh.bash.zsh.yaml.yml.toml.ini`.split(`.`)],[MazCog,[`conf`,`config`,`env`,`cfg`]],[MazPresentationChartBar,[`ppt`,`pptx`,`key`,`odp`]],[MazDocumentText,[`rtf`,`odt`]],[MazPencilSquare,[`ttf`,`otf`,`woff`,`woff2`,`eot`]],[MazPaintBrush,[`ai`,`psd`,`sketch`,`fig`,`xd`,`eps`]],[MazDocumentIcon,[`pdf`,`doc`,`docx`,`tsv`,`document`]]];for(let[icon,extensions]of groups)for(let ext of extensions)map.set(ext,icon);return map})();function getIconComponent(fileData){let type=fileData.file.type.split(`/`)?.[1]?.split(`+`)?.[0]?.toLowerCase();let extension=fileData.file.name.split(`.`).pop()?.toLowerCase();return extensionIconMap.get(type)||extension&&extensionIconMap.get(extension)||extensionIconMap.get(`document`)}function handleFileInputClick(){fileInput.value&&fileInput.value.click()}function handleFileRemove(fileData){fileData.url&&URL.revokeObjectURL(fileData.url),filesData.value=filesData.value.filter(f=>f.file!==fileData.file),emits(`remove`,fileData.file)}let selectAreaCanBeDisplayed=ref(!0);let dataTypesString=computed(()=>__props.dataTypes?.map(formatReadable).join(`, `));let allFileIsAccepted=computed(()=>__props.dataTypes?.length===1&&__props.dataTypes[0]===`*/*`);let{t}=useTranslations();let messages=computed(()=>{let customTranslations=__props.translations||{};return{dragAndDrop:customTranslations.dragAndDrop??t(`dropzone.dragAndDrop`),fileMaxCount:__props.maxFiles?customTranslations.fileMaxCount??t(`dropzone.fileMaxCount`,{count:__props.maxFiles}):void 0,fileMaxSize:__props.maxFileSize?customTranslations.fileMaxSize??t(`dropzone.fileMaxSize`,{size:__props.maxFileSize}):void 0,fileTypes:dataTypesString.value?customTranslations.fileTypes??t(`dropzone.fileTypes`,{types:dataTypesString.value}):void 0,selectFile:customTranslations.selectFile??t(`dropzone.selectFile`),divider:customTranslations.divider??t(`dropzone.divider`)}});function formatReadable(fmt){if(fmt.startsWith(`.`))return fmt;if(fmt.includes(`/`)){let[type,subtype]=fmt.split(`/`);if(subtype===`*`){let customTypes=__props.translations?.types||{};switch(type){case`image`:return customTypes.image??t(`dropzone.types.image`);case`video`:return customTypes.video??t(`dropzone.types.video`);case`audio`:return customTypes.audio??t(`dropzone.types.audio`);case`text`:return customTypes.text??t(`dropzone.types.text`);default:return fmt}}return subtype}return fmt}function reset(){filesData.value.forEach(fileData=>{fileData.url&&URL.revokeObjectURL(fileData.url)}),filesData.value=[]}function addFile(file){handleFiles([file])}function removeFile(file){filesData.value=filesData.value.filter(f=>f.file!==file)}function isFileTypeAllowed(file){return!__props.dataTypes||__props.dataTypes.includes(`*/*`)?!0:__props.dataTypes.some(type=>type.startsWith(`.`)?file.name.toLowerCase().endsWith(type.toLowerCase()):type.endsWith(`/*`)?file.type.startsWith(type.slice(0,-1)):file.type===type)}return __expose({uploadFiles,uploadFilesMultiple,getFormData,getFormDataMultiple,reset,isUploading,addFile,removeFile}),(_ctx,_cache)=>(openBlock(),createElementBlock(`label`,{ref_key:`dropZoneRef`,ref:dropZoneRef,role:`button`,tabindex:`0`,for:`input-file-uploader-${unref(instanceId)}`,class:normalizeClass([`m-dropzone m-reset-css maz:flex maz:w-full maz:cursor-pointer maz:flex-col maz:flex-center maz:gap-2 maz:overflow-hidden maz:rounded-md maz:border maz:border-dashed maz:border-divider maz:bg-input maz:p-6 maz:transition-colors maz:duration-200 maz:ease-in-out maz:hover:bg-surface-600/50 maz:dark:hover:bg-surface-400/50`,{"m-dropzone--disabled maz:disabled-state":__props.disabled,"m-dropzone--is-over-drop-zone":unref(isOverDropZone)&&!unref(isOverError),"m-dropzone--is-over-error":unref(isOverError)}]),style:normalizeStyle({"--active-color":`var(--maz-${__props.color})`})},[renderSlot(_ctx.$slots,`files-area`,{filesData:filesData.value},()=>[createVNode(TransitionGroup,{name:`file-scale`,tag:`div`,class:`m-dropzone__files-container`,onBeforeEnter:_cache[1]||=$event=>selectAreaCanBeDisplayed.value=!1,onAfterLeave:_cache[2]||=$event=>selectAreaCanBeDisplayed.value=filesData.value.length===0},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(filesData.value,file=>(openBlock(),createElementBlock(`div`,{key:`${file.name}-${file.size}-${file}`,class:`m-dropzone__file-item group`,onClick:_cache[0]||=withModifiers(()=>{},[`prevent`])},[renderSlot(_ctx.$slots,`file-item`,{file},()=>[file.thumbnail&&__props.preview?(openBlock(),createElementBlock(Fragment,{key:0},[createElementVNode(`div`,{style:normalizeStyle({backgroundImage:`url(${file.thumbnail})`,backgroundSize:`cover`,backgroundPosition:`center`}),class:`m-dropzone__thumbnail`},null,4),_cache[4]||=createElementVNode(`div`,{class:`m-dropzone__overlay`},null,-1)],64)):createCommentVNode(``,!0),createElementVNode(`div`,_hoisted_2,[createVNode(Transition,{name:`icon-scale`},{default:withCtx(()=>[file.uploading?(openBlock(),createBlock(unref(MazSpinner),mergeProps({key:0,color:__props.color,class:`m-dropzone__spinner`},{ref_for:!0},__props.spinnerProps),null,16,[`color`])):file.success?(openBlock(),createBlock(unref(MazCheckCircle),{key:1,class:`m-dropzone__success-icon`})):file.error?(openBlock(),createBlock(unref(MazXCircle),{key:2,class:`m-dropzone__error-icon`})):(openBlock(),createElementBlock(`div`,_hoisted_3,[createVNode(MazIcon_default,{icon:getIconComponent(file),size:`lg`,class:`m-dropzone__file-icon`},null,8,[`icon`])]))]),_:2},1024)]),createElementVNode(`div`,_hoisted_4,[createElementVNode(`div`,_hoisted_5,[createElementVNode(`span`,_hoisted_6,toDisplayString(file.name),1),createElementVNode(`span`,_hoisted_7,toDisplayString(file.sizeInMb)+` MB`,1)]),!file.uploading&&!file.success?(openBlock(),createBlock(MazBtn_default,mergeProps({key:0,size:`xs`,icon:unref(MazTrash),disabled:__props.disabled,color:`destructive`,pastel:``},{ref_for:!0},__props.removeFileBtnProps,{onClick:withModifiers($event=>handleFileRemove(file),[`prevent`])}),null,16,[`icon`,`disabled`,`onClick`])):createCommentVNode(``,!0)])],!0)]))),128))]),_:3})],!0),filesData.value.length===0&&selectAreaCanBeDisplayed.value?renderSlot(_ctx.$slots,`no-files-area`,{key:0,selectFile:handleFileInputClick},()=>[createElementVNode(`div`,_hoisted_8,[renderSlot(_ctx.$slots,`upload-icon`,{},()=>[createVNode(unref(MazArrowUpOnSquare),{class:`m-dropzone__upload-icon`})],!0),createElementVNode(`span`,_hoisted_9,[createTextVNode(toDisplayString(messages.value.dragAndDrop)+` `+toDisplayString(messages.value.divider)+` `,1),createVNode(MazLink_default,{color:`inherit`,underline:``,onClick:_cache[3]||=withModifiers($event=>!__props.disabled&&handleFileInputClick(),[`prevent`])},{default:withCtx(()=>[createTextVNode(toDisplayString(messages.value.selectFile),1)]),_:1})])]),!allFileIsAccepted.value&&(messages.value.fileMaxCount||messages.value.fileMaxSize||messages.value.fileTypes)?(openBlock(),createElementBlock(`p`,_hoisted_10,[messages.value.fileMaxCount?(openBlock(),createElementBlock(`span`,_hoisted_11,toDisplayString(messages.value.fileMaxCount),1)):createCommentVNode(``,!0),messages.value.fileMaxSize?(openBlock(),createElementBlock(`span`,_hoisted_12,toDisplayString(messages.value.fileMaxSize),1)):createCommentVNode(``,!0),messages.value.fileTypes?(openBlock(),createElementBlock(`span`,_hoisted_13,toDisplayString(messages.value.fileTypes),1)):createCommentVNode(``,!0)])):createCommentVNode(``,!0)],!0):createCommentVNode(``,!0),createElementVNode(`input`,{id:`input-file-uploader-${unref(instanceId)}`,ref_key:`fileInput`,ref:fileInput,multiple:hasMultiple.value,type:`file`,accept:__props.dataTypes?.join(`,`),tabindex:`-1`,disabled:__props.disabled,class:`m-dropzone__file-input`,onChange:handleFileUpload},null,40,_hoisted_14)],14,_hoisted_1))}}),[[`__scopeId`,`data-v-b607dd3b`]]);export{MazDropzone_default as t};
1
+ import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{useDropzone}from"../composables/useDropzone.js";import{t as MazBtn_default}from"./MazBtn.BDvqcYIY.js";import{t as MazIcon_default}from"./MazIcon.CblJ-8Iu.js";import{t as MazLink_default}from"./MazLink.CemC1AR_.js";import{Fragment,Transition,TransitionGroup,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,createVNode,defineAsyncComponent,defineComponent,mergeModels,mergeProps,normalizeClass,normalizeStyle,onBeforeMount,openBlock,ref,renderList,renderSlot,toDisplayString,unref,useModel,withCtx,withModifiers}from"vue";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import{sleep}from"@maz-ui/utils/helpers/sleep";import{MazCheckCircle}from"@maz-ui/icons/lazy/MazCheckCircle";import{MazCodeBracket}from"@maz-ui/icons/lazy/MazCodeBracket";import{MazPhoto}from"@maz-ui/icons/lazy/MazPhoto";import{MazArchiveBox}from"@maz-ui/icons/lazy/MazArchiveBox";import{MazArrowUpOnSquare}from"@maz-ui/icons/lazy/MazArrowUpOnSquare";import{MazCog}from"@maz-ui/icons/lazy/MazCog";import{MazCommandLine}from"@maz-ui/icons/lazy/MazCommandLine";import{MazDocumentIcon}from"@maz-ui/icons/lazy/MazDocumentIcon";import{MazDocumentText}from"@maz-ui/icons/lazy/MazDocumentText";import{MazFilm}from"@maz-ui/icons/lazy/MazFilm";import{MazLogoAndroid}from"@maz-ui/icons/lazy/MazLogoAndroid";import{MazLogoApple}from"@maz-ui/icons/lazy/MazLogoApple";import{MazLogoCsv}from"@maz-ui/icons/lazy/MazLogoCsv";import{MazLogoHtml}from"@maz-ui/icons/lazy/MazLogoHtml";import{MazLogoJs}from"@maz-ui/icons/lazy/MazLogoJs";import{MazLogoJson}from"@maz-ui/icons/lazy/MazLogoJson";import{MazLogoMarkdown}from"@maz-ui/icons/lazy/MazLogoMarkdown";import{MazLogoProperties}from"@maz-ui/icons/lazy/MazLogoProperties";import{MazLogoReact}from"@maz-ui/icons/lazy/MazLogoReact";import{MazLogoTxt}from"@maz-ui/icons/lazy/MazLogoTxt";import{MazLogoTypescript}from"@maz-ui/icons/lazy/MazLogoTypescript";import{MazLogoVue}from"@maz-ui/icons/lazy/MazLogoVue";import{MazLogoXliff}from"@maz-ui/icons/lazy/MazLogoXliff";import{MazLogoXls}from"@maz-ui/icons/lazy/MazLogoXls";import{MazLogoXml}from"@maz-ui/icons/lazy/MazLogoXml";import{MazPaintBrush}from"@maz-ui/icons/lazy/MazPaintBrush";import{MazPencilSquare}from"@maz-ui/icons/lazy/MazPencilSquare";import{MazPresentationChartBar}from"@maz-ui/icons/lazy/MazPresentationChartBar";import{MazSpeakerWave}from"@maz-ui/icons/lazy/MazSpeakerWave";import{MazTrash}from"@maz-ui/icons/lazy/MazTrash";import{MazXCircle}from"@maz-ui/icons/lazy/MazXCircle";import '../assets/MazDropzone._IzxepXc.css';var _hoisted_1=[`for`];var _hoisted_2={class:`m-dropzone__icon-container`};var _hoisted_3={key:3,class:`m-dropzone__file-icon-wrapper`};var _hoisted_4={class:`m-dropzone__description`};var _hoisted_5={class:`m-dropzone__file-info`};var _hoisted_6={class:`m-dropzone__file-name`};var _hoisted_7={class:`m-dropzone__file-size`};var _hoisted_8={class:`m-dropzone__content`};var _hoisted_9={class:`m-dropzone__upload-text`};var _hoisted_10={key:0,class:`m-dropzone__info-text`};var _hoisted_11={key:0};var _hoisted_12={key:1};var _hoisted_13={key:2};var _hoisted_14=[`id`,`multiple`,`accept`,`disabled`];var MazDropzone_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazDropzone`,props:mergeModels({id:{},multiple:{type:Boolean,default:!1},dataTypes:{},preventDefaultForUnhandled:{type:Boolean,default:!0},maxFileSize:{},maxFiles:{},disabled:{type:Boolean,default:!1},preview:{type:Boolean,default:!0},minFileSize:{},allowDuplicates:{type:Boolean,default:!1},translations:{},color:{default:`primary`},removeFileBtnProps:{default:()=>({})},spinnerProps:{default:()=>({})},autoUpload:{type:[String,Boolean],default:!1},url:{},requestOptions:{},transformBody:{type:Function},maxConcurrentUploads:{default:5}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:mergeModels([`drop`,`enter`,`leave`,`over`,`add`,`remove`,`error`,`upload-error`,`upload-error-multiple`,`upload-success`,`upload-success-multiple`],[`update:modelValue`]),setup(__props,{expose:__expose,emit:__emit}){let emits=__emit;let MazSpinner=defineAsyncComponent(()=>import(`../components/MazSpinner.js`));let filesData=useModel(__props,`modelValue`);onBeforeMount(async()=>{filesData.value.length&&(filesData.value=await Promise.all(filesData.value.map(fileData=>getFileData(fileData.file))))});let dropZoneRef=ref();let isUploading=ref(!1);let hasMultiple=computed(()=>__props.multiple||(__props.maxFiles?__props.maxFiles>1:!1)||__props.autoUpload===`multiple`);let instanceId=useInstanceUniqId({componentName:`MazDropzone`,providedId:__props.id});function uploadFile(formData){if(!__props.url)throw emits(`error`,{files:null,event:null,code:`NO_URL`}),Error(`NO_URL`);try{let body=__props.transformBody?.(formData)??formData;return fetch(__props.url,{method:`POST`,body,...__props.requestOptions})}catch{emits(`error`,{files:null,event:null,code:`FILE_UPLOAD_ERROR`})}}function getFormData(file){let formData=new FormData;return formData.append(`file`,file),formData}function getFormDataMultiple(){let formData=new FormData;return filesData.value.forEach(fileData=>formData.append(`files`,fileData.file)),formData}async function uploadFilesMultiple(){if(!filesData.value.length){emits(`error`,{files:filesData.value.map(f=>f.file),event:null,code:`NO_FILES_TO_UPLOAD`});return}try{isUploading.value=!0,filesData.value=filesData.value.map(f=>({...f,uploading:!0,success:!1,error:!1}));let response=await uploadFile(getFormDataMultiple());filesData.value=filesData.value.map(f=>({...f,uploading:!1,success:!0,error:!1})),emits(`upload-success-multiple`,{files:filesData.value.map(f=>f.file),response})}catch(error){filesData.value=filesData.value.map(f=>({...f,uploading:!1,success:!1,error:!0})),emits(`upload-error-multiple`,{files:filesData.value.map(f=>f.file),code:`FILE_UPLOAD_ERROR_MULTIPLE`,error})}finally{isUploading.value=!1,await sleep(1e3),filesData.value=filesData.value.filter(f=>f.error)}}async function uploadFiles(){if(!filesData.value.length)throw emits(`error`,{files:filesData.value.map(f=>f.file),event:null,code:`NO_FILES_TO_UPLOAD`}),Error(`NO_FILES_TO_UPLOAD`);try{isUploading.value=!0;let queue=[...filesData.value];let activeUploads=[];async function uploadFileData(fileData){let formData=getFormData(fileData.file);try{fileData.error=!1,fileData.uploading=!0;let response=await uploadFile(formData);emits(`upload-success`,{file:fileData.file,response}),fileData.success=!0}catch(error){fileData.error=!0,emits(`upload-error`,{file:fileData.file,code:`FILE_UPLOAD_ERROR`,error})}finally{fileData.uploading=!1}}async function processQueue(){for(;queue.length>0;){let fileData=queue.shift();fileData&&await uploadFileData(fileData)}}for(let i=0;i<Math.min(__props.maxConcurrentUploads,filesData.value.length);i++)activeUploads.push(processQueue());await Promise.allSettled(activeUploads)}finally{isUploading.value=!1,await sleep(1e3),filesData.value=filesData.value.filter(f=>f.error)}}async function getFileData(file){let fileData={file,name:file.name,size:file.size,type:file.type,lastModified:file.lastModified,sizeInMb:(file.size/1024/1024).toFixed(2),lastModifiedDate:new Date(file.lastModified),url:URL.createObjectURL(file),thumbnail:void 0,uploading:!1,success:!1,error:!1};return file.type.startsWith(`image/`)&&await new Promise(resolve=>{let reader=new FileReader;reader.onload=event=>{fileData.thumbnail=event.target?.result||void 0,resolve(null)},reader.readAsDataURL(file)}),__props.maxFileSize&&file.size>__props.maxFileSize*1024*1024&&emits(`error`,{files:[file],event:null,code:`FILE_SIZE_EXCEEDED`}),__props.minFileSize&&file.size<__props.minFileSize*1024*1024&&emits(`error`,{files:[file],event:null,code:`FILE_SIZE_TOO_SMALL`}),fileData}async function handleFiles(files){if(__props.disabled||!files)return null;for await(let file of files){if(!isFileTypeAllowed(file)){emits(`error`,{files:[file],event:null,code:`FILE_TYPE_NOT_ALLOWED`});continue}if(!hasMultiple.value&&filesData.value.length>=1){emits(`error`,{files:[file],event:null,code:`MAX_FILES_EXCEEDED`});continue}if(__props.maxFiles&&filesData.value.length>=__props.maxFiles){emits(`error`,{files:[file],event:null,code:`MAX_FILES_EXCEEDED`});continue}if(__props.maxFileSize&&file.size>__props.maxFileSize*1024*1024){emits(`error`,{files:[file],event:null,code:`FILE_SIZE_EXCEEDED`});continue}if(__props.minFileSize&&file.size<__props.minFileSize*1024*1024){emits(`error`,{files:[file],event:null,code:`FILE_SIZE_TOO_SMALL`});continue}if(!__props.allowDuplicates&&filesData.value.some(f=>f.name===file.name&&f.size===file.size&&f.type===file.type)){emits(`error`,{files:[file],event:null,code:`FILE_DUPLICATED`});continue}let fileData=await getFileData(file);filesData.value=[...filesData.value,fileData],emits(`add`,fileData.file)}return __props.autoUpload===`single`?uploadFiles():__props.autoUpload===`multiple`&&uploadFilesMultiple(),filesData.value}async function onDrop(files,event){await handleFiles(files),emits(`drop`,{files,event})}function onError(files,event){emits(`error`,{files,event,code:`FILE_TYPE_NOT_ALLOWED`})}function onEnter(files,event){emits(`enter`,{files,event})}function onLeave(files,event){emits(`leave`,{files,event})}function onOver(files,event){emits(`over`,{files,event})}let{isOverDropZone,isOverError}=useDropzone(dropZoneRef,{dataTypes:__props.dataTypes,onDrop,preventDefaultForUnhandled:__props.preventDefaultForUnhandled,multiple:hasMultiple.value,onError,onEnter,onLeave,onOver});let fileInput=ref();function handleFileUpload(event){let input=event.target;let files=input?.files;files&&handleFiles(files),setTimeout(()=>{input.value=``},3e3)}let extensionIconMap=(()=>{let map=new Map;let groups=[[MazLogoJs,[`js`,`mjs`,`cjs`]],[MazLogoTypescript,[`ts`,`tsx`,`mts`,`cts`]],[MazLogoVue,[`vue`]],[MazLogoReact,[`jsx`]],[MazLogoJson,[`json`,`jsonc`,`json5`]],[MazLogoXml,[`xml`]],[MazLogoHtml,[`html`,`htm`]],[MazLogoMarkdown,[`md`,`markdown`,`mdx`]],[MazLogoProperties,[`properties`]],[MazLogoTxt,[`txt`]],[MazLogoCsv,[`csv`]],[MazLogoXls,[`xls`,`xlsx`]],[MazLogoXliff,[`xliff`,`xlf`]],[MazLogoApple,[`strings`,`stringsdict`,`xcstrings`]],[MazLogoAndroid,[`apk`]],[MazPhoto,[`jpeg`,`jpg`,`png`,`tiff`,`bmp`,`webp`,`svg`,`ico`,`gif`,`heic`,`heif`,`avif`]],[MazFilm,[`mp4`,`webm`,`avi`,`mov`,`mkv`,`flv`,`wmv`,`m4v`,`mpeg`,`mpg`,`3gp`,`ogv`]],[MazSpeakerWave,[`mp3`,`wav`,`m4a`,`aac`,`flac`,`ogg`,`oga`,`opus`,`wma`,`alac`,`aiff`]],[MazArchiveBox,[`zip`,`rar`,`tar`,`gz`,`7z`,`bz2`,`xz`]],[MazCommandLine,[`exe`,`dll`,`so`,`dylib`,`dmg`,`deb`,`rpm`,`app`,`bat`,`cmd`]],[MazCodeBracket,`css.scss.sass.less.py.java.cpp.c.h.hpp.go.rs.rust.php.rb.swift.kt.kotlin.sql.sh.bash.zsh.yaml.yml.toml.ini`.split(`.`)],[MazCog,[`conf`,`config`,`env`,`cfg`]],[MazPresentationChartBar,[`ppt`,`pptx`,`key`,`odp`]],[MazDocumentText,[`rtf`,`odt`]],[MazPencilSquare,[`ttf`,`otf`,`woff`,`woff2`,`eot`]],[MazPaintBrush,[`ai`,`psd`,`sketch`,`fig`,`xd`,`eps`]],[MazDocumentIcon,[`pdf`,`doc`,`docx`,`tsv`,`document`]]];for(let[icon,extensions]of groups)for(let ext of extensions)map.set(ext,icon);return map})();function getIconComponent(fileData){let type=fileData.file.type.split(`/`)?.[1]?.split(`+`)?.[0]?.toLowerCase();let extension=fileData.file.name.split(`.`).pop()?.toLowerCase();return extensionIconMap.get(type)||extension&&extensionIconMap.get(extension)||extensionIconMap.get(`document`)}function handleFileInputClick(){fileInput.value&&fileInput.value.click()}function handleFileRemove(fileData){fileData.url&&URL.revokeObjectURL(fileData.url),filesData.value=filesData.value.filter(f=>f.file!==fileData.file),emits(`remove`,fileData.file)}let selectAreaCanBeDisplayed=ref(!0);let dataTypesString=computed(()=>__props.dataTypes?.map(formatReadable).join(`, `));let allFileIsAccepted=computed(()=>__props.dataTypes?.length===1&&__props.dataTypes[0]===`*/*`);let{t}=useTranslations();let messages=computed(()=>{let customTranslations=__props.translations||{};return{dragAndDrop:customTranslations.dragAndDrop??t(`dropzone.dragAndDrop`),fileMaxCount:__props.maxFiles?customTranslations.fileMaxCount??t(`dropzone.fileMaxCount`,{count:__props.maxFiles}):void 0,fileMaxSize:__props.maxFileSize?customTranslations.fileMaxSize??t(`dropzone.fileMaxSize`,{size:__props.maxFileSize}):void 0,fileTypes:dataTypesString.value?customTranslations.fileTypes??t(`dropzone.fileTypes`,{types:dataTypesString.value}):void 0,selectFile:customTranslations.selectFile??t(`dropzone.selectFile`),divider:customTranslations.divider??t(`dropzone.divider`)}});function formatReadable(fmt){if(fmt.startsWith(`.`))return fmt;if(fmt.includes(`/`)){let[type,subtype]=fmt.split(`/`);if(subtype===`*`){let customTypes=__props.translations?.types||{};switch(type){case`image`:return customTypes.image??t(`dropzone.types.image`);case`video`:return customTypes.video??t(`dropzone.types.video`);case`audio`:return customTypes.audio??t(`dropzone.types.audio`);case`text`:return customTypes.text??t(`dropzone.types.text`);default:return fmt}}return subtype}return fmt}function reset(){filesData.value.forEach(fileData=>{fileData.url&&URL.revokeObjectURL(fileData.url)}),filesData.value=[]}function addFile(file){handleFiles([file])}function removeFile(file){filesData.value=filesData.value.filter(f=>f.file!==file)}function isFileTypeAllowed(file){return!__props.dataTypes||__props.dataTypes.includes(`*/*`)?!0:__props.dataTypes.some(type=>type.startsWith(`.`)?file.name.toLowerCase().endsWith(type.toLowerCase()):type.endsWith(`/*`)?file.type.startsWith(type.slice(0,-1)):file.type===type)}return __expose({uploadFiles,uploadFilesMultiple,getFormData,getFormDataMultiple,reset,isUploading,addFile,removeFile}),(_ctx,_cache)=>(openBlock(),createElementBlock(`label`,{ref_key:`dropZoneRef`,ref:dropZoneRef,role:`button`,tabindex:`0`,for:`input-file-uploader-${unref(instanceId)}`,class:normalizeClass([`m-dropzone m-reset-css maz:flex maz:w-full maz:cursor-pointer maz:flex-col maz:flex-center maz:gap-2 maz:overflow-hidden maz:rounded-md maz:border maz:border-dashed maz:border-divider maz:bg-input maz:p-6 maz:transition-colors maz:duration-200 maz:ease-in-out maz:hover:bg-surface-600/50 maz:dark:hover:bg-surface-400/50`,{"m-dropzone--disabled maz:disabled-state":__props.disabled,"m-dropzone--is-over-drop-zone":unref(isOverDropZone)&&!unref(isOverError),"m-dropzone--is-over-error":unref(isOverError)}]),style:normalizeStyle({"--active-color":`var(--maz-${__props.color})`})},[renderSlot(_ctx.$slots,`files-area`,{filesData:filesData.value},()=>[createVNode(TransitionGroup,{name:`file-scale`,tag:`div`,class:`m-dropzone__files-container`,onBeforeEnter:_cache[1]||=$event=>selectAreaCanBeDisplayed.value=!1,onAfterLeave:_cache[2]||=$event=>selectAreaCanBeDisplayed.value=filesData.value.length===0},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(filesData.value,file=>(openBlock(),createElementBlock(`div`,{key:`${file.name}-${file.size}-${file}`,class:`m-dropzone__file-item group`,onClick:_cache[0]||=withModifiers(()=>{},[`prevent`])},[renderSlot(_ctx.$slots,`file-item`,{file},()=>[file.thumbnail&&__props.preview?(openBlock(),createElementBlock(Fragment,{key:0},[createElementVNode(`div`,{style:normalizeStyle({backgroundImage:`url(${file.thumbnail})`,backgroundSize:`cover`,backgroundPosition:`center`}),class:`m-dropzone__thumbnail`},null,4),_cache[4]||=createElementVNode(`div`,{class:`m-dropzone__overlay`},null,-1)],64)):createCommentVNode(``,!0),createElementVNode(`div`,_hoisted_2,[createVNode(Transition,{name:`icon-scale`},{default:withCtx(()=>[file.uploading?(openBlock(),createBlock(unref(MazSpinner),mergeProps({key:0,color:__props.color,class:`m-dropzone__spinner`},{ref_for:!0},__props.spinnerProps),null,16,[`color`])):file.success?(openBlock(),createBlock(unref(MazCheckCircle),{key:1,class:`m-dropzone__success-icon`})):file.error?(openBlock(),createBlock(unref(MazXCircle),{key:2,class:`m-dropzone__error-icon`})):(openBlock(),createElementBlock(`div`,_hoisted_3,[createVNode(MazIcon_default,{icon:getIconComponent(file),size:`lg`,class:`m-dropzone__file-icon`},null,8,[`icon`])]))]),_:2},1024)]),createElementVNode(`div`,_hoisted_4,[createElementVNode(`div`,_hoisted_5,[createElementVNode(`span`,_hoisted_6,toDisplayString(file.name),1),createElementVNode(`span`,_hoisted_7,toDisplayString(file.sizeInMb)+` MB`,1)]),!file.uploading&&!file.success?(openBlock(),createBlock(MazBtn_default,mergeProps({key:0,size:`xs`,icon:unref(MazTrash),disabled:__props.disabled,color:`destructive`,pastel:``},{ref_for:!0},__props.removeFileBtnProps,{onClick:withModifiers($event=>handleFileRemove(file),[`prevent`])}),null,16,[`icon`,`disabled`,`onClick`])):createCommentVNode(``,!0)])],!0)]))),128))]),_:3})],!0),filesData.value.length===0&&selectAreaCanBeDisplayed.value?renderSlot(_ctx.$slots,`no-files-area`,{key:0,selectFile:handleFileInputClick},()=>[createElementVNode(`div`,_hoisted_8,[renderSlot(_ctx.$slots,`upload-icon`,{},()=>[createVNode(unref(MazArrowUpOnSquare),{class:`m-dropzone__upload-icon`})],!0),createElementVNode(`span`,_hoisted_9,[createTextVNode(toDisplayString(messages.value.dragAndDrop)+` `+toDisplayString(messages.value.divider)+` `,1),createVNode(MazLink_default,{color:`inherit`,underline:``,onClick:_cache[3]||=withModifiers($event=>!__props.disabled&&handleFileInputClick(),[`prevent`])},{default:withCtx(()=>[createTextVNode(toDisplayString(messages.value.selectFile),1)]),_:1})])]),!allFileIsAccepted.value&&(messages.value.fileMaxCount||messages.value.fileMaxSize||messages.value.fileTypes)?(openBlock(),createElementBlock(`p`,_hoisted_10,[messages.value.fileMaxCount?(openBlock(),createElementBlock(`span`,_hoisted_11,toDisplayString(messages.value.fileMaxCount),1)):createCommentVNode(``,!0),messages.value.fileMaxSize?(openBlock(),createElementBlock(`span`,_hoisted_12,toDisplayString(messages.value.fileMaxSize),1)):createCommentVNode(``,!0),messages.value.fileTypes?(openBlock(),createElementBlock(`span`,_hoisted_13,toDisplayString(messages.value.fileTypes),1)):createCommentVNode(``,!0)])):createCommentVNode(``,!0)],!0):createCommentVNode(``,!0),createElementVNode(`input`,{id:`input-file-uploader-${unref(instanceId)}`,ref_key:`fileInput`,ref:fileInput,multiple:hasMultiple.value,type:`file`,accept:__props.dataTypes?.join(`,`),tabindex:`-1`,disabled:__props.disabled,class:`m-dropzone__file-input`,onChange:handleFileUpload},null,40,_hoisted_14)],14,_hoisted_1))}}),[[`__scopeId`,`data-v-b607dd3b`]]);export{MazDropzone_default as t};
@@ -1 +1 @@
1
- import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{useGlobalConfig}from"../composables/useGlobalConfig.js";import{t as MazBtn_default}from"./MazBtn.C7LV-iX2.js";import{t as MazInput_default}from"./MazInput.CfAgOEV4.js";import{Fragment,TransitionGroup,computed,createElementBlock,createTextVNode,createVNode,defineComponent,mergeProps,normalizeClass,normalizeStyle,openBlock,ref,renderList,toDisplayString,unref,withCtx,withKeys,withModifiers}from"vue";import{truthyFilter}from"@maz-ui/utils/helpers/truthyFilter";import{MazTrash}from"@maz-ui/icons/raw/MazTrash";import '../assets/MazInputTags.CkN4xVxJ.css';var MazInputTags_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazInputTags`,props:{style:{type:[Boolean,null,String,Object,Array]},class:{type:[Boolean,null,String,Object,Array]},modelValue:{},placeholder:{},label:{},disabled:{type:Boolean,default:!1},error:{type:Boolean,default:!1},success:{type:Boolean,default:!1},warning:{type:Boolean,default:!1},size:{},color:{default:`primary`},block:{type:Boolean},addTagsOnBlur:{type:Boolean,default:!0},hint:{}},emits:[`update:model-value`],setup(__props,{emit:__emit}){let emits=__emit;let{size}=useGlobalConfig(`MazInputTags`,{size:`md`});let isFocused=ref(!1);let inputValue=ref();let tagsHoveredId=ref();let lastIdToDelete=ref();let currentDeleteTimeout=ref();let tags=computed(()=>__props.modelValue?.map(tag=>({tag,id:`${Date.now()}-${Math.random().toString(36).slice(2)}`})));function addTags(event){if(inputValue.value){lastIdToDelete.value=void 0,event.preventDefault();let newValues=inputValue.value.trim().split(`,`).map(value=>value.trim()===`,`?void 0:value.trim()).filter(truthyFilter).filter(value=>!__props.modelValue?.filter(truthyFilter)?.includes(value));emits(`update:model-value`,__props.modelValue?[...__props.modelValue,...newValues]:[...newValues]),inputValue.value=void 0}}let borderStyle=computed(()=>{if(__props.error)return`maz:border-destructive`;if(__props.success)return`maz:border-success`;if(__props.warning)return`maz:border-warning`;if(isFocused.value){if(__props.color===`primary`)return`maz:border-primary`;if(__props.color===`secondary`)return`maz:border-secondary`;if(__props.color===`info`)return`maz:border-info`;if(__props.color===`destructive`)return`maz:border-destructive`;if(__props.color===`success`)return`maz:border-success`;if(__props.color===`warning`)return`maz:border-warning`}return``});function removeLastTag(){inputValue.value||tags.value&&tags.value?.length===0||(currentDeleteTimeout.value&&clearTimeout(currentDeleteTimeout.value),lastIdToDelete.value?(removeTag(lastIdToDelete.value),lastIdToDelete.value=void 0):(lastIdToDelete.value=tags.value?.at(-1)?.id,currentDeleteTimeout.value=setTimeout(()=>{lastIdToDelete.value=void 0},2e3)))}function removeTag(id){let tagsArray=tags.value?.filter(tag=>tag.id!==id).map(tag=>tag.tag);emits(`update:model-value`,tagsArray)}let SIZE_CLASS={xl:`maz:min-h-16`,lg:`maz:min-h-14`,md:`maz:min-h-12`,sm:`maz:min-h-10`,xs:`maz:min-h-8`,mini:`maz:min-h-6`};let buttonSize=computed(()=>size.value===`mini`||size.value===`xs`?`mini`:size.value===`sm`?`xs`:size.value===`md`?`sm`:size.value===`lg`?`md`:size.value===`xl`?`lg`:size.value);return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`m-input-tags m-reset-css maz:relative maz:inline-flex maz:flex-wrap maz:gap-1 maz:overflow-hidden maz:rounded-md maz:border maz:border-divider maz:bg-input maz:px-[0.5em] maz:py-[0.25em] maz:align-top maz:transition-colors maz:duration-200 maz:ease-in-out maz:dark:border-divider-400`,[borderStyle.value,`--${__props.color}`,`--${unref(size)}`,SIZE_CLASS[unref(size)],__props.class,{"--block":__props.block,"maz:w-full":__props.block}]]),style:normalizeStyle(__props.style),onFocusCapture:_cache[4]||=$event=>isFocused.value=!0,onBlurCapture:_cache[5]||=$event=>isFocused.value=!1},[createVNode(TransitionGroup,{name:`maz-tags`},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(tags.value,({tag,id},i)=>(openBlock(),createElementBlock(`div`,{key:`tag-${i}`,class:`m-input-tags__wrapper maz:inline-flex maz:h-auto maz:flex-none! maz:flex-center`},[createVNode(MazBtn_default,{class:`m-input-tags__tag`,disabled:__props.disabled,size:buttonSize.value,color:tagsHoveredId.value===id||lastIdToDelete.value===id?`destructive`:__props.color,"end-icon":tagsHoveredId.value===id||lastIdToDelete.value===id?unref(MazTrash):void 0,onClick:withModifiers($event=>removeTag(id),[`stop`]),onMouseenter:$event=>tagsHoveredId.value=__props.disabled?void 0:id,onFocus:$event=>tagsHoveredId.value=__props.disabled?void 0:id,onMouseleave:_cache[0]||=$event=>tagsHoveredId.value=void 0,onBlur:_cache[1]||=$event=>tagsHoveredId.value=void 0},{default:withCtx(()=>[createTextVNode(toDisplayString(tag),1)]),_:2},1032,[`disabled`,`size`,`color`,`end-icon`,`onClick`,`onMouseenter`,`onFocus`])]))),128))]),_:1}),createVNode(MazInput_default,mergeProps({key:`input-tags`,modelValue:inputValue.value,"onUpdate:modelValue":_cache[2]||=$event=>inputValue.value=$event},_ctx.$attrs,{placeholder:__props.placeholder,label:__props.label,"aria-label":__props.label||__props.placeholder,error:__props.error,hint:__props.hint,success:__props.success,warning:__props.warning,disabled:__props.disabled,"top-label":void 0,"assistive-text":void 0,color:__props.color,block:__props.block,size:unref(size),"input-classes":`maz:w-full`,border:!1,class:`m-input-tags__input maz:h-auto! maz:flex-1`,onKeydown:[withKeys(addTags,[`enter`]),withKeys(removeLastTag,[`delete`])],onBlur:_cache[3]||=$event=>__props.addTagsOnBlur?addTags($event):void 0}),null,16,[`modelValue`,`placeholder`,`label`,`aria-label`,`error`,`hint`,`success`,`warning`,`disabled`,`color`,`block`,`size`])],38))}}),[[`__scopeId`,`data-v-7b221b88`]]);export{MazInputTags_default as t};
1
+ import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{useGlobalConfig}from"../composables/useGlobalConfig.js";import{t as MazBtn_default}from"./MazBtn.BDvqcYIY.js";import{t as MazInput_default}from"./MazInput.CfAgOEV4.js";import{Fragment,TransitionGroup,computed,createElementBlock,createTextVNode,createVNode,defineComponent,mergeProps,normalizeClass,normalizeStyle,openBlock,ref,renderList,toDisplayString,unref,withCtx,withKeys,withModifiers}from"vue";import{truthyFilter}from"@maz-ui/utils/helpers/truthyFilter";import{MazTrash}from"@maz-ui/icons/raw/MazTrash";import '../assets/MazInputTags.CkN4xVxJ.css';var MazInputTags_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazInputTags`,props:{style:{type:[Boolean,null,String,Object,Array]},class:{type:[Boolean,null,String,Object,Array]},modelValue:{},placeholder:{},label:{},disabled:{type:Boolean,default:!1},error:{type:Boolean,default:!1},success:{type:Boolean,default:!1},warning:{type:Boolean,default:!1},size:{},color:{default:`primary`},block:{type:Boolean},addTagsOnBlur:{type:Boolean,default:!0},hint:{}},emits:[`update:model-value`],setup(__props,{emit:__emit}){let emits=__emit;let{size}=useGlobalConfig(`MazInputTags`,{size:`md`});let isFocused=ref(!1);let inputValue=ref();let tagsHoveredId=ref();let lastIdToDelete=ref();let currentDeleteTimeout=ref();let tags=computed(()=>__props.modelValue?.map(tag=>({tag,id:`${Date.now()}-${Math.random().toString(36).slice(2)}`})));function addTags(event){if(inputValue.value){lastIdToDelete.value=void 0,event.preventDefault();let newValues=inputValue.value.trim().split(`,`).map(value=>value.trim()===`,`?void 0:value.trim()).filter(truthyFilter).filter(value=>!__props.modelValue?.filter(truthyFilter)?.includes(value));emits(`update:model-value`,__props.modelValue?[...__props.modelValue,...newValues]:[...newValues]),inputValue.value=void 0}}let borderStyle=computed(()=>{if(__props.error)return`maz:border-destructive`;if(__props.success)return`maz:border-success`;if(__props.warning)return`maz:border-warning`;if(isFocused.value){if(__props.color===`primary`)return`maz:border-primary`;if(__props.color===`secondary`)return`maz:border-secondary`;if(__props.color===`info`)return`maz:border-info`;if(__props.color===`destructive`)return`maz:border-destructive`;if(__props.color===`success`)return`maz:border-success`;if(__props.color===`warning`)return`maz:border-warning`}return``});function removeLastTag(){inputValue.value||tags.value&&tags.value?.length===0||(currentDeleteTimeout.value&&clearTimeout(currentDeleteTimeout.value),lastIdToDelete.value?(removeTag(lastIdToDelete.value),lastIdToDelete.value=void 0):(lastIdToDelete.value=tags.value?.at(-1)?.id,currentDeleteTimeout.value=setTimeout(()=>{lastIdToDelete.value=void 0},2e3)))}function removeTag(id){let tagsArray=tags.value?.filter(tag=>tag.id!==id).map(tag=>tag.tag);emits(`update:model-value`,tagsArray)}let SIZE_CLASS={xl:`maz:min-h-16`,lg:`maz:min-h-14`,md:`maz:min-h-12`,sm:`maz:min-h-10`,xs:`maz:min-h-8`,mini:`maz:min-h-6`};let buttonSize=computed(()=>size.value===`mini`||size.value===`xs`?`mini`:size.value===`sm`?`xs`:size.value===`md`?`sm`:size.value===`lg`?`md`:size.value===`xl`?`lg`:size.value);return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`m-input-tags m-reset-css maz:relative maz:inline-flex maz:flex-wrap maz:gap-1 maz:overflow-hidden maz:rounded-md maz:border maz:border-divider maz:bg-input maz:px-[0.5em] maz:py-[0.25em] maz:align-top maz:transition-colors maz:duration-200 maz:ease-in-out maz:dark:border-divider-400`,[borderStyle.value,`--${__props.color}`,`--${unref(size)}`,SIZE_CLASS[unref(size)],__props.class,{"--block":__props.block,"maz:w-full":__props.block}]]),style:normalizeStyle(__props.style),onFocusCapture:_cache[4]||=$event=>isFocused.value=!0,onBlurCapture:_cache[5]||=$event=>isFocused.value=!1},[createVNode(TransitionGroup,{name:`maz-tags`},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(tags.value,({tag,id},i)=>(openBlock(),createElementBlock(`div`,{key:`tag-${i}`,class:`m-input-tags__wrapper maz:inline-flex maz:h-auto maz:flex-none! maz:flex-center`},[createVNode(MazBtn_default,{class:`m-input-tags__tag`,disabled:__props.disabled,size:buttonSize.value,color:tagsHoveredId.value===id||lastIdToDelete.value===id?`destructive`:__props.color,"end-icon":tagsHoveredId.value===id||lastIdToDelete.value===id?unref(MazTrash):void 0,onClick:withModifiers($event=>removeTag(id),[`stop`]),onMouseenter:$event=>tagsHoveredId.value=__props.disabled?void 0:id,onFocus:$event=>tagsHoveredId.value=__props.disabled?void 0:id,onMouseleave:_cache[0]||=$event=>tagsHoveredId.value=void 0,onBlur:_cache[1]||=$event=>tagsHoveredId.value=void 0},{default:withCtx(()=>[createTextVNode(toDisplayString(tag),1)]),_:2},1032,[`disabled`,`size`,`color`,`end-icon`,`onClick`,`onMouseenter`,`onFocus`])]))),128))]),_:1}),createVNode(MazInput_default,mergeProps({key:`input-tags`,modelValue:inputValue.value,"onUpdate:modelValue":_cache[2]||=$event=>inputValue.value=$event},_ctx.$attrs,{placeholder:__props.placeholder,label:__props.label,"aria-label":__props.label||__props.placeholder,error:__props.error,hint:__props.hint,success:__props.success,warning:__props.warning,disabled:__props.disabled,"top-label":void 0,"assistive-text":void 0,color:__props.color,block:__props.block,size:unref(size),"input-classes":`maz:w-full`,border:!1,class:`m-input-tags__input maz:h-auto! maz:flex-1`,onKeydown:[withKeys(addTags,[`enter`]),withKeys(removeLastTag,[`delete`])],onBlur:_cache[3]||=$event=>__props.addTagsOnBlur?addTags($event):void 0}),null,16,[`modelValue`,`placeholder`,`label`,`aria-label`,`error`,`hint`,`success`,`warning`,`disabled`,`color`,`block`,`size`])],38))}}),[[`__scopeId`,`data-v-7b221b88`]]);export{MazInputTags_default as t};
@@ -1,4 +1,4 @@
1
- import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{useGlobalConfig}from"../composables/useGlobalConfig.js";import{t as MazBtn_default}from"./MazBtn.C7LV-iX2.js";import{t as MazBtnGroup_default}from"./MazBtnGroup.DQPVMzrc.js";import{t as MazDropdown_default}from"./MazDropdown.TQ8Ob7Xl.js";import{Fragment,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,createVNode,defineComponent,mergeModels,mergeProps,nextTick,normalizeClass,normalizeStyle,openBlock,ref,renderList,renderSlot,toDisplayString,unref,useModel,vModelText,vShow,watch,withCtx,withDirectives}from"vue";import{MazLinkIcon}from"@maz-ui/icons/lazy/MazLinkIcon";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import{MazCheckCircle}from"@maz-ui/icons/lazy/MazCheckCircle";import{MazEye}from"@maz-ui/icons/lazy/MazEye";import{MazBold}from"@maz-ui/icons/lazy/MazBold";import{MazChatBubbleBottomCenterText}from"@maz-ui/icons/lazy/MazChatBubbleBottomCenterText";import{MazCodeBracket}from"@maz-ui/icons/lazy/MazCodeBracket";import{MazCodeBracketSquare}from"@maz-ui/icons/lazy/MazCodeBracketSquare";import{MazHashtag}from"@maz-ui/icons/lazy/MazHashtag";import{MazItalic}from"@maz-ui/icons/lazy/MazItalic";import{MazListBullet}from"@maz-ui/icons/lazy/MazListBullet";import{MazNumberedList}from"@maz-ui/icons/lazy/MazNumberedList";import{MazPencil}from"@maz-ui/icons/lazy/MazPencil";import{MazPhoto}from"@maz-ui/icons/lazy/MazPhoto";import{MazStrikethrough}from"@maz-ui/icons/lazy/MazStrikethrough";import{MazTableCells}from"@maz-ui/icons/lazy/MazTableCells";import{MazViewColumns}from"@maz-ui/icons/lazy/MazViewColumns";import '../assets/MazMarkdownEditor.DeyfIz2b.css';var _hoisted_1=[`for`];var _hoisted_2={class:`m-markdown-editor__header maz:flex maz:items-center maz:justify-between maz:gap-2 maz:border-b maz:bg-container maz:px-2 maz:py-1.5`};var _hoisted_3=[`aria-label`];var _hoisted_4={key:0,class:`m-markdown-editor__toolbar maz:flex maz:flex-wrap maz:items-center maz:gap-0.5`};var _hoisted_5={class:`m-markdown-editor__editor maz:flex maz:min-w-0 maz:flex-1`};var _hoisted_6=[`id`,`name`,`rows`,`placeholder`,`disabled`,`readonly`,`required`,`aria-labelledby`];var _hoisted_7=[`id`,`aria-labelledby`];var _hoisted_8=[`innerHTML`];var _hoisted_9={key:1,class:`m-markdown-editor__preview-empty maz:text-muted maz:italic`};var MazMarkdownEditor_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazMarkdownEditor`,props:mergeModels({style:{type:[Boolean,null,String,Object,Array]},class:{type:[Boolean,null,String,Object,Array]},modelValue:{},id:{},name:{default:`MazMarkdownEditor`},label:{},placeholder:{},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},error:{type:Boolean,default:!1},success:{type:Boolean,default:!1},warning:{type:Boolean,default:!1},color:{default:`primary`},roundedSize:{},topLabel:{},assistiveText:{},toolbar:{type:[Boolean,Array],default:!1},lineNumbers:{type:Boolean,default:!1},shortcuts:{type:Boolean,default:!0},sanitize:{type:Boolean,default:!0},renderFunction:{type:Function},markedOptions:{},rows:{default:6},translations:{}},{mode:{default:`write`},modeModifiers:{}}),emits:mergeModels([`update:model-value`,`input`,`focus`,`blur`,`change`],[`update:mode`]),setup(__props,{expose:__expose,emit:__emit}){let emits=__emit;let mode=useModel(__props,`mode`);let{roundedSize}=useGlobalConfig(`MazMarkdownEditor`,{roundedSize:`md`});let{t}=useTranslations();let instanceId=useInstanceUniqId({componentName:`MazMarkdownEditor`,providedId:__props.id});let textareaEl=ref();let gutterEl=ref();let previewHtml=ref(``);let isRendering=ref(!1);let labels=computed(()=>({write:__props.translations?.write??t(`markdownEditor.write`),preview:__props.translations?.preview??t(`markdownEditor.preview`),split:__props.translations?.split??t(`markdownEditor.split`),emptyPreview:__props.translations?.emptyPreview??t(`markdownEditor.emptyPreview`),toolbar:{heading:__props.translations?.toolbar?.heading??t(`markdownEditor.toolbar.heading`),bold:__props.translations?.toolbar?.bold??t(`markdownEditor.toolbar.bold`),italic:__props.translations?.toolbar?.italic??t(`markdownEditor.toolbar.italic`),strikethrough:__props.translations?.toolbar?.strikethrough??t(`markdownEditor.toolbar.strikethrough`),quote:__props.translations?.toolbar?.quote??t(`markdownEditor.toolbar.quote`),code:__props.translations?.toolbar?.code??t(`markdownEditor.toolbar.code`),codeBlock:__props.translations?.toolbar?.codeBlock??t(`markdownEditor.toolbar.codeBlock`),link:__props.translations?.toolbar?.link??t(`markdownEditor.toolbar.link`),image:__props.translations?.toolbar?.image??t(`markdownEditor.toolbar.image`),bulletList:__props.translations?.toolbar?.bulletList??t(`markdownEditor.toolbar.bulletList`),orderedList:__props.translations?.toolbar?.orderedList??t(`markdownEditor.toolbar.orderedList`),checkList:__props.translations?.toolbar?.checkList??t(`markdownEditor.toolbar.checkList`),table:__props.translations?.toolbar?.table??t(`markdownEditor.toolbar.table`)},headings:{h1:__props.translations?.headings?.h1??t(`markdownEditor.headings.h1`),h2:__props.translations?.headings?.h2??t(`markdownEditor.headings.h2`),h3:__props.translations?.headings?.h3??t(`markdownEditor.headings.h3`)}}));let inputValue=computed({get:()=>__props.modelValue,set:value=>updateValue(value)});function updateValue(value){emits(`update:model-value`,value),emits(`input`,value)}function escapeHtml(value){return value.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&#39;`)}let renderSeq=0;async function parseToHtml(source){if(__props.renderFunction)return __props.renderFunction(source);let{marked}=await import(`marked`);return marked.parse(source,{gfm:!0,breaks:!0,...__props.markedOptions})}async function sanitizeHtml(html,source){if(!__props.sanitize)return html;try{let{default:DOMPurify}=await import(`dompurify`);return DOMPurify.sanitize(html)}catch{return`<pre>${escapeHtml(source)}</pre>`}}async function renderPreview(){let seq=++renderSeq;let source=__props.modelValue??``;if(!source.trim()||globalThis.window===void 0){seq===renderSeq&&(previewHtml.value=``);return}isRendering.value=!0;try{let html=await sanitizeHtml(await parseToHtml(source),source);seq===renderSeq&&(previewHtml.value=html)}catch{seq===renderSeq&&(previewHtml.value=`<pre>${escapeHtml(source)}</pre>`)}finally{seq===renderSeq&&(isRendering.value=!1)}}function setMode(value){__props.disabled||(mode.value=value)}function tryExecInsert(el,text){if(typeof document>`u`||typeof document.execCommand!=`function`)return!1;try{return document.execCommand(`insertText`,!1,text)}catch{return!1}}function replaceRange(rangeStart,rangeEnd,text,caretStart,caretEnd=caretStart){let el=textareaEl.value;if(!(!el||__props.disabled||__props.readonly)){if(el.focus(),el.setSelectionRange(rangeStart,rangeEnd),!tryExecInsert(el,text)){let value=__props.modelValue??``;updateValue(value.slice(0,rangeStart)+text+value.slice(rangeEnd))}nextTick(()=>{el.focus(),el.setSelectionRange(caretStart,caretEnd)})}}function wrapSelection(before,after=before){let el=textareaEl.value;if(!el)return;let value=__props.modelValue??``;let start=el.selectionStart??value.length;let end=el.selectionEnd??value.length;let selected=value.slice(start,end);let caret=start+before.length;replaceRange(start,end,`${before}${selected}${after}`,caret,caret+selected.length)}function prefixLines(prefix){let el=textareaEl.value;if(!el)return;let value=__props.modelValue??``;let start=el.selectionStart??0;let end=el.selectionEnd??0;let lineStart=value.lastIndexOf(`
1
+ import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{useGlobalConfig}from"../composables/useGlobalConfig.js";import{t as MazBtn_default}from"./MazBtn.BDvqcYIY.js";import{t as MazBtnGroup_default}from"./MazBtnGroup.DQPVMzrc.js";import{t as MazDropdown_default}from"./MazDropdown.TQ8Ob7Xl.js";import{Fragment,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,createVNode,defineComponent,mergeModels,mergeProps,nextTick,normalizeClass,normalizeStyle,openBlock,ref,renderList,renderSlot,toDisplayString,unref,useModel,vModelText,vShow,watch,withCtx,withDirectives}from"vue";import{MazLinkIcon}from"@maz-ui/icons/lazy/MazLinkIcon";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import{MazCheckCircle}from"@maz-ui/icons/lazy/MazCheckCircle";import{MazEye}from"@maz-ui/icons/lazy/MazEye";import{MazBold}from"@maz-ui/icons/lazy/MazBold";import{MazChatBubbleBottomCenterText}from"@maz-ui/icons/lazy/MazChatBubbleBottomCenterText";import{MazCodeBracket}from"@maz-ui/icons/lazy/MazCodeBracket";import{MazCodeBracketSquare}from"@maz-ui/icons/lazy/MazCodeBracketSquare";import{MazHashtag}from"@maz-ui/icons/lazy/MazHashtag";import{MazItalic}from"@maz-ui/icons/lazy/MazItalic";import{MazListBullet}from"@maz-ui/icons/lazy/MazListBullet";import{MazNumberedList}from"@maz-ui/icons/lazy/MazNumberedList";import{MazPencil}from"@maz-ui/icons/lazy/MazPencil";import{MazPhoto}from"@maz-ui/icons/lazy/MazPhoto";import{MazStrikethrough}from"@maz-ui/icons/lazy/MazStrikethrough";import{MazTableCells}from"@maz-ui/icons/lazy/MazTableCells";import{MazViewColumns}from"@maz-ui/icons/lazy/MazViewColumns";import '../assets/MazMarkdownEditor.DeyfIz2b.css';var _hoisted_1=[`for`];var _hoisted_2={class:`m-markdown-editor__header maz:flex maz:items-center maz:justify-between maz:gap-2 maz:border-b maz:bg-container maz:px-2 maz:py-1.5`};var _hoisted_3=[`aria-label`];var _hoisted_4={key:0,class:`m-markdown-editor__toolbar maz:flex maz:flex-wrap maz:items-center maz:gap-0.5`};var _hoisted_5={class:`m-markdown-editor__editor maz:flex maz:min-w-0 maz:flex-1`};var _hoisted_6=[`id`,`name`,`rows`,`placeholder`,`disabled`,`readonly`,`required`,`aria-labelledby`];var _hoisted_7=[`id`,`aria-labelledby`];var _hoisted_8=[`innerHTML`];var _hoisted_9={key:1,class:`m-markdown-editor__preview-empty maz:text-muted maz:italic`};var MazMarkdownEditor_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazMarkdownEditor`,props:mergeModels({style:{type:[Boolean,null,String,Object,Array]},class:{type:[Boolean,null,String,Object,Array]},modelValue:{},id:{},name:{default:`MazMarkdownEditor`},label:{},placeholder:{},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},error:{type:Boolean,default:!1},success:{type:Boolean,default:!1},warning:{type:Boolean,default:!1},color:{default:`primary`},roundedSize:{},topLabel:{},assistiveText:{},toolbar:{type:[Boolean,Array],default:!1},lineNumbers:{type:Boolean,default:!1},shortcuts:{type:Boolean,default:!0},sanitize:{type:Boolean,default:!0},renderFunction:{type:Function},markedOptions:{},rows:{default:6},translations:{}},{mode:{default:`write`},modeModifiers:{}}),emits:mergeModels([`update:model-value`,`input`,`focus`,`blur`,`change`],[`update:mode`]),setup(__props,{expose:__expose,emit:__emit}){let emits=__emit;let mode=useModel(__props,`mode`);let{roundedSize}=useGlobalConfig(`MazMarkdownEditor`,{roundedSize:`md`});let{t}=useTranslations();let instanceId=useInstanceUniqId({componentName:`MazMarkdownEditor`,providedId:__props.id});let textareaEl=ref();let gutterEl=ref();let previewHtml=ref(``);let isRendering=ref(!1);let labels=computed(()=>({write:__props.translations?.write??t(`markdownEditor.write`),preview:__props.translations?.preview??t(`markdownEditor.preview`),split:__props.translations?.split??t(`markdownEditor.split`),emptyPreview:__props.translations?.emptyPreview??t(`markdownEditor.emptyPreview`),toolbar:{heading:__props.translations?.toolbar?.heading??t(`markdownEditor.toolbar.heading`),bold:__props.translations?.toolbar?.bold??t(`markdownEditor.toolbar.bold`),italic:__props.translations?.toolbar?.italic??t(`markdownEditor.toolbar.italic`),strikethrough:__props.translations?.toolbar?.strikethrough??t(`markdownEditor.toolbar.strikethrough`),quote:__props.translations?.toolbar?.quote??t(`markdownEditor.toolbar.quote`),code:__props.translations?.toolbar?.code??t(`markdownEditor.toolbar.code`),codeBlock:__props.translations?.toolbar?.codeBlock??t(`markdownEditor.toolbar.codeBlock`),link:__props.translations?.toolbar?.link??t(`markdownEditor.toolbar.link`),image:__props.translations?.toolbar?.image??t(`markdownEditor.toolbar.image`),bulletList:__props.translations?.toolbar?.bulletList??t(`markdownEditor.toolbar.bulletList`),orderedList:__props.translations?.toolbar?.orderedList??t(`markdownEditor.toolbar.orderedList`),checkList:__props.translations?.toolbar?.checkList??t(`markdownEditor.toolbar.checkList`),table:__props.translations?.toolbar?.table??t(`markdownEditor.toolbar.table`)},headings:{h1:__props.translations?.headings?.h1??t(`markdownEditor.headings.h1`),h2:__props.translations?.headings?.h2??t(`markdownEditor.headings.h2`),h3:__props.translations?.headings?.h3??t(`markdownEditor.headings.h3`)}}));let inputValue=computed({get:()=>__props.modelValue,set:value=>updateValue(value)});function updateValue(value){emits(`update:model-value`,value),emits(`input`,value)}function escapeHtml(value){return value.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&#39;`)}let renderSeq=0;async function parseToHtml(source){if(__props.renderFunction)return __props.renderFunction(source);let{marked}=await import(`marked`);return marked.parse(source,{gfm:!0,breaks:!0,...__props.markedOptions})}async function sanitizeHtml(html,source){if(!__props.sanitize)return html;try{let{default:DOMPurify}=await import(`dompurify`);return DOMPurify.sanitize(html)}catch{return`<pre>${escapeHtml(source)}</pre>`}}async function renderPreview(){let seq=++renderSeq;let source=__props.modelValue??``;if(!source.trim()||globalThis.window===void 0){seq===renderSeq&&(previewHtml.value=``);return}isRendering.value=!0;try{let html=await sanitizeHtml(await parseToHtml(source),source);seq===renderSeq&&(previewHtml.value=html)}catch{seq===renderSeq&&(previewHtml.value=`<pre>${escapeHtml(source)}</pre>`)}finally{seq===renderSeq&&(isRendering.value=!1)}}function setMode(value){__props.disabled||(mode.value=value)}function tryExecInsert(el,text){if(typeof document>`u`||typeof document.execCommand!=`function`)return!1;try{return document.execCommand(`insertText`,!1,text)}catch{return!1}}function replaceRange(rangeStart,rangeEnd,text,caretStart,caretEnd=caretStart){let el=textareaEl.value;if(!(!el||__props.disabled||__props.readonly)){if(el.focus(),el.setSelectionRange(rangeStart,rangeEnd),!tryExecInsert(el,text)){let value=__props.modelValue??``;updateValue(value.slice(0,rangeStart)+text+value.slice(rangeEnd))}nextTick(()=>{el.focus(),el.setSelectionRange(caretStart,caretEnd)})}}function wrapSelection(before,after=before){let el=textareaEl.value;if(!el)return;let value=__props.modelValue??``;let start=el.selectionStart??value.length;let end=el.selectionEnd??value.length;let selected=value.slice(start,end);let caret=start+before.length;replaceRange(start,end,`${before}${selected}${after}`,caret,caret+selected.length)}function prefixLines(prefix){let el=textareaEl.value;if(!el)return;let value=__props.modelValue??``;let start=el.selectionStart??0;let end=el.selectionEnd??0;let lineStart=value.lastIndexOf(`
2
2
  `,start-1)+1;let prefixed=value.slice(lineStart,end).split(`
3
3
  `).map(line=>prefix+line).join(`
4
4
  `);replaceRange(lineStart,end,prefixed,lineStart,lineStart+prefixed.length)}function applyHeading(level){prefixLines(`${`#`.repeat(level)} `)}function insertLink(){let el=textareaEl.value;if(!el)return;let value=__props.modelValue??``;let start=el.selectionStart??value.length;let end=el.selectionEnd??value.length;let selected=value.slice(start,end)||labels.value.toolbar.link.toLowerCase();let urlStart=start+selected.length+3;replaceRange(start,end,`[${selected}](url)`,urlStart,urlStart+3)}function insertImage(){let el=textareaEl.value;if(!el)return;let value=__props.modelValue??``;let start=el.selectionStart??value.length;let end=el.selectionEnd??value.length;let selected=value.slice(start,end)||`alt`;let urlStart=start+selected.length+4;replaceRange(start,end,`![${selected}](url)`,urlStart,urlStart+3)}function insertCodeBlock(){let el=textareaEl.value;if(!el)return;let value=__props.modelValue??``;let start=el.selectionStart??value.length;let end=el.selectionEnd??value.length;let selected=value.slice(start,end);let caret=start+4;replaceRange(start,end,`\`\`\`\n${selected}\n\`\`\``,caret,caret+selected.length)}function insertTable(){let el=textareaEl.value;if(!el)return;let start=el.selectionStart??0;replaceRange(start,el.selectionEnd??0,`| Header | Header |
@@ -1 +1 @@
1
- import{useGlobalConfig}from"../composables/useGlobalConfig.js";import{t as MazBtn_default}from"./MazBtn.C7LV-iX2.js";import{t as MazIcon_default}from"./MazIcon.CblJ-8Iu.js";import{Fragment,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,createVNode,defineComponent,mergeProps,openBlock,renderList,renderSlot,toDisplayString,unref,withCtx}from"vue";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import{MazEllipsisHorizontal}from"@maz-ui/icons/lazy/MazEllipsisHorizontal";import{MazChevronDoubleLeft}from"@maz-ui/icons/raw/MazChevronDoubleLeft";import{MazChevronLeft}from"@maz-ui/icons/raw/MazChevronLeft";var _hoisted_1=[`aria-label`];var _hoisted_2={class:`maz:m-0! maz:inline-flex maz:list-none! maz:items-center maz:gap-2 maz:-space-x-px maz:p-0! maz:align-top maz:text-base`};var _hoisted_3={class:`maz:m-0`};var _hoisted_4={class:`maz:sr-only`};var _hoisted_5={class:`maz:m-0`};var _hoisted_6={class:`maz:sr-only`};var _hoisted_7=[`id`];var _hoisted_8={class:`maz:sr-only`};var _hoisted_9={class:`maz:m-0`};var _hoisted_10={class:`maz:sr-only`};var _hoisted_11={class:`maz:m-0`};var _hoisted_12={class:`maz:sr-only`};var MazPagination_default=defineComponent({__name:`MazPagination`,props:{modelValue:{default:1},buttonProps:{},activeColor:{default:`surface`},size:{},totalPages:{},pageRange:{default:1},loading:{type:Boolean}},emits:[`update:model-value`],setup(__props,{emit:__emit}){let emits=__emit;let DEFAULT_BUTTONS_PROPS={size:`md`,color:`surface`,outlined:!0,fab:!0};let{t}=useTranslations();let{size}=useGlobalConfig(`MazPagination`,{size:`md`});let buttonsPropsMerged=computed(()=>({...DEFAULT_BUTTONS_PROPS,...__props.buttonProps}));let previousPage=computed(()=>__props.modelValue>1?__props.modelValue-1:1);let nextPage=computed(()=>__props.modelValue<__props.totalPages?__props.modelValue+1:__props.totalPages);let allPages=computed(()=>Array.from({length:__props.totalPages},(_,index)=>{let itemNumber=index+1;return{number:itemNumber,isActive:itemNumber===__props.modelValue,loading:itemNumber===__props.modelValue&&__props.loading}}));let firstOne=computed(()=>__props.modelValue-__props.pageRange>1?allPages.value.slice(0,1):[]);let lastOne=computed(()=>__props.modelValue<__props.totalPages-__props.pageRange?allPages.value.slice(-1):[]);let rangeStartAt=computed(()=>{let baseStart=__props.modelValue-__props.pageRange-1;return baseStart<0?0:baseStart>__props.totalPages-__props.pageRange?__props.totalPages-__props.pageRange:baseStart});let rangeEndAt=computed(()=>{let baseEnd=__props.modelValue+__props.pageRange;return baseEnd>__props.totalPages?__props.totalPages:baseEnd<__props.pageRange?__props.pageRange:baseEnd});let range=computed(()=>allPages.value.slice(rangeStartAt.value,rangeEndAt.value));let firstDivider=computed(()=>__props.modelValue-__props.pageRange>2?[{divider:!0}]:[]);let lastDivider=computed(()=>__props.modelValue<__props.totalPages-__props.pageRange-1?[{divider:!0}]:[]);let pages=computed(()=>[...firstOne.value,...firstDivider.value,...range.value,...lastDivider.value,...lastOne.value]);function setPageNumber(page){page!==__props.modelValue&&emits(`update:model-value`,page)}return(_ctx,_cache)=>(openBlock(),createElementBlock(`nav`,{class:`m-pagination m-reset-css`,role:`navigation`,"aria-label":unref(t)(`pagination.navAriaLabel`)},[createElementVNode(`ul`,_hoisted_2,[createElementVNode(`li`,_hoisted_3,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===1,"aria-label":`First Page, Page 1`,size:unref(size),onClick:_cache[0]||=$event=>setPageNumber(1)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_4,[renderSlot(_ctx.$slots,`first-page-sr`,{page:1},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.firstPage`,{page:1})),1)])]),createVNode(MazIcon_default,{icon:unref(MazChevronDoubleLeft)},null,8,[`icon`])]),_:3},16,[`disabled`,`size`])]),createElementVNode(`li`,_hoisted_5,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===1,"aria-label":`Previous Page, Page ${previousPage.value}`,size:unref(size),onClick:_cache[1]||=$event=>setPageNumber(previousPage.value)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_6,[renderSlot(_ctx.$slots,`previous-page-sr`,{page:previousPage.value},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.previousPage`,{page:previousPage.value})),1)])]),createVNode(MazIcon_default,{icon:unref(MazChevronLeft)},null,8,[`icon`])]),_:3},16,[`disabled`,`aria-label`,`size`])]),(openBlock(!0),createElementBlock(Fragment,null,renderList(pages.value,(page,i)=>(openBlock(),createElementBlock(`li`,{id:`number`in page?`button-${i}-${page.number}`:`ellipsis-${i}`,key:`number`in page?`button-${i}-${page.number}`:`ellipsis-${i}`,class:`maz:m-0`},[`number`in page?(openBlock(),createBlock(MazBtn_default,mergeProps({key:0,ref_for:!0},{...buttonsPropsMerged.value,color:page.isActive?__props.activeColor:buttonsPropsMerged.value.color,outlined:page.isActive?!1:buttonsPropsMerged.value.outlined},{size:unref(size),"aria-label":`Page ${page.number}`,"aria-current":page.isActive?`page`:void 0,loading:page.loading,class:{active:page.isActive},onClick:$event=>page.isActive?void 0:setPageNumber(page.number)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_8,[renderSlot(_ctx.$slots,`page-sr`,{page:page.number},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.page`,{page:page.number})),1)])]),createTextVNode(` `+toDisplayString(page.number),1)]),_:2},1040,[`size`,`aria-label`,`aria-current`,`loading`,`class`,`onClick`])):page.divider?(openBlock(),createElementBlock(`div`,mergeProps({key:1,ref_for:!0},buttonsPropsMerged.value,{class:`flex-center flex p-2`}),[createVNode(unref(MazEllipsisHorizontal))],16)):createCommentVNode(``,!0)],8,_hoisted_7))),128)),createElementVNode(`li`,_hoisted_9,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===__props.totalPages,"aria-label":`Next Page, Page ${nextPage.value}`,size:unref(size),onClick:_cache[2]||=$event=>setPageNumber(nextPage.value)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_10,[renderSlot(_ctx.$slots,`next-page-sr`,{page:nextPage.value},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.nextPage`,{page:nextPage.value})),1)])]),createVNode(MazIcon_default,{icon:unref(MazChevronLeft),class:`maz:-rotate-180`},null,8,[`icon`])]),_:3},16,[`disabled`,`aria-label`,`size`])]),createElementVNode(`li`,_hoisted_11,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===__props.totalPages,"aria-label":`Next Page, Page ${__props.totalPages}`,size:unref(size),onClick:_cache[3]||=$event=>setPageNumber(__props.totalPages)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_12,[renderSlot(_ctx.$slots,`last-page-sr`,{page:__props.totalPages},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.lastPage`,{page:__props.totalPages})),1)])]),createVNode(MazIcon_default,{icon:unref(MazChevronDoubleLeft),class:`maz:-rotate-180`},null,8,[`icon`])]),_:3},16,[`disabled`,`aria-label`,`size`])])])],8,_hoisted_1))}});export{MazPagination_default as t};
1
+ import{useGlobalConfig}from"../composables/useGlobalConfig.js";import{t as MazBtn_default}from"./MazBtn.BDvqcYIY.js";import{t as MazIcon_default}from"./MazIcon.CblJ-8Iu.js";import{Fragment,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,createVNode,defineComponent,mergeProps,openBlock,renderList,renderSlot,toDisplayString,unref,withCtx}from"vue";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import{MazEllipsisHorizontal}from"@maz-ui/icons/lazy/MazEllipsisHorizontal";import{MazChevronDoubleLeft}from"@maz-ui/icons/raw/MazChevronDoubleLeft";import{MazChevronLeft}from"@maz-ui/icons/raw/MazChevronLeft";var _hoisted_1=[`aria-label`];var _hoisted_2={class:`maz:m-0! maz:inline-flex maz:list-none! maz:items-center maz:gap-2 maz:-space-x-px maz:p-0! maz:align-top maz:text-base`};var _hoisted_3={class:`maz:m-0`};var _hoisted_4={class:`maz:sr-only`};var _hoisted_5={class:`maz:m-0`};var _hoisted_6={class:`maz:sr-only`};var _hoisted_7=[`id`];var _hoisted_8={class:`maz:sr-only`};var _hoisted_9={class:`maz:m-0`};var _hoisted_10={class:`maz:sr-only`};var _hoisted_11={class:`maz:m-0`};var _hoisted_12={class:`maz:sr-only`};var MazPagination_default=defineComponent({__name:`MazPagination`,props:{modelValue:{default:1},buttonProps:{},activeColor:{default:`surface`},size:{},totalPages:{},pageRange:{default:1},loading:{type:Boolean}},emits:[`update:model-value`],setup(__props,{emit:__emit}){let emits=__emit;let DEFAULT_BUTTONS_PROPS={size:`md`,color:`surface`,outlined:!0,fab:!0};let{t}=useTranslations();let{size}=useGlobalConfig(`MazPagination`,{size:`md`});let buttonsPropsMerged=computed(()=>({...DEFAULT_BUTTONS_PROPS,...__props.buttonProps}));let previousPage=computed(()=>__props.modelValue>1?__props.modelValue-1:1);let nextPage=computed(()=>__props.modelValue<__props.totalPages?__props.modelValue+1:__props.totalPages);let allPages=computed(()=>Array.from({length:__props.totalPages},(_,index)=>{let itemNumber=index+1;return{number:itemNumber,isActive:itemNumber===__props.modelValue,loading:itemNumber===__props.modelValue&&__props.loading}}));let firstOne=computed(()=>__props.modelValue-__props.pageRange>1?allPages.value.slice(0,1):[]);let lastOne=computed(()=>__props.modelValue<__props.totalPages-__props.pageRange?allPages.value.slice(-1):[]);let rangeStartAt=computed(()=>{let baseStart=__props.modelValue-__props.pageRange-1;return baseStart<0?0:baseStart>__props.totalPages-__props.pageRange?__props.totalPages-__props.pageRange:baseStart});let rangeEndAt=computed(()=>{let baseEnd=__props.modelValue+__props.pageRange;return baseEnd>__props.totalPages?__props.totalPages:baseEnd<__props.pageRange?__props.pageRange:baseEnd});let range=computed(()=>allPages.value.slice(rangeStartAt.value,rangeEndAt.value));let firstDivider=computed(()=>__props.modelValue-__props.pageRange>2?[{divider:!0}]:[]);let lastDivider=computed(()=>__props.modelValue<__props.totalPages-__props.pageRange-1?[{divider:!0}]:[]);let pages=computed(()=>[...firstOne.value,...firstDivider.value,...range.value,...lastDivider.value,...lastOne.value]);function setPageNumber(page){page!==__props.modelValue&&emits(`update:model-value`,page)}return(_ctx,_cache)=>(openBlock(),createElementBlock(`nav`,{class:`m-pagination m-reset-css`,role:`navigation`,"aria-label":unref(t)(`pagination.navAriaLabel`)},[createElementVNode(`ul`,_hoisted_2,[createElementVNode(`li`,_hoisted_3,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===1,"aria-label":`First Page, Page 1`,size:unref(size),onClick:_cache[0]||=$event=>setPageNumber(1)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_4,[renderSlot(_ctx.$slots,`first-page-sr`,{page:1},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.firstPage`,{page:1})),1)])]),createVNode(MazIcon_default,{icon:unref(MazChevronDoubleLeft)},null,8,[`icon`])]),_:3},16,[`disabled`,`size`])]),createElementVNode(`li`,_hoisted_5,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===1,"aria-label":`Previous Page, Page ${previousPage.value}`,size:unref(size),onClick:_cache[1]||=$event=>setPageNumber(previousPage.value)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_6,[renderSlot(_ctx.$slots,`previous-page-sr`,{page:previousPage.value},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.previousPage`,{page:previousPage.value})),1)])]),createVNode(MazIcon_default,{icon:unref(MazChevronLeft)},null,8,[`icon`])]),_:3},16,[`disabled`,`aria-label`,`size`])]),(openBlock(!0),createElementBlock(Fragment,null,renderList(pages.value,(page,i)=>(openBlock(),createElementBlock(`li`,{id:`number`in page?`button-${i}-${page.number}`:`ellipsis-${i}`,key:`number`in page?`button-${i}-${page.number}`:`ellipsis-${i}`,class:`maz:m-0`},[`number`in page?(openBlock(),createBlock(MazBtn_default,mergeProps({key:0,ref_for:!0},{...buttonsPropsMerged.value,color:page.isActive?__props.activeColor:buttonsPropsMerged.value.color,outlined:page.isActive?!1:buttonsPropsMerged.value.outlined},{size:unref(size),"aria-label":`Page ${page.number}`,"aria-current":page.isActive?`page`:void 0,loading:page.loading,class:{active:page.isActive},onClick:$event=>page.isActive?void 0:setPageNumber(page.number)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_8,[renderSlot(_ctx.$slots,`page-sr`,{page:page.number},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.page`,{page:page.number})),1)])]),createTextVNode(` `+toDisplayString(page.number),1)]),_:2},1040,[`size`,`aria-label`,`aria-current`,`loading`,`class`,`onClick`])):page.divider?(openBlock(),createElementBlock(`div`,mergeProps({key:1,ref_for:!0},buttonsPropsMerged.value,{class:`flex-center flex p-2`}),[createVNode(unref(MazEllipsisHorizontal))],16)):createCommentVNode(``,!0)],8,_hoisted_7))),128)),createElementVNode(`li`,_hoisted_9,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===__props.totalPages,"aria-label":`Next Page, Page ${nextPage.value}`,size:unref(size),onClick:_cache[2]||=$event=>setPageNumber(nextPage.value)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_10,[renderSlot(_ctx.$slots,`next-page-sr`,{page:nextPage.value},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.nextPage`,{page:nextPage.value})),1)])]),createVNode(MazIcon_default,{icon:unref(MazChevronLeft),class:`maz:-rotate-180`},null,8,[`icon`])]),_:3},16,[`disabled`,`aria-label`,`size`])]),createElementVNode(`li`,_hoisted_11,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===__props.totalPages,"aria-label":`Next Page, Page ${__props.totalPages}`,size:unref(size),onClick:_cache[3]||=$event=>setPageNumber(__props.totalPages)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_12,[renderSlot(_ctx.$slots,`last-page-sr`,{page:__props.totalPages},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.lastPage`,{page:__props.totalPages})),1)])]),createVNode(MazIcon_default,{icon:unref(MazChevronDoubleLeft),class:`maz:-rotate-180`},null,8,[`icon`])]),_:3},16,[`disabled`,`aria-label`,`size`])])])],8,_hoisted_1))}});export{MazPagination_default as t};
@@ -1 +1 @@
1
- import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{t as MazBtn_default}from"./MazBtn.C7LV-iX2.js";import{d as isRangeValue,f as isSameDate,m as isValidDate,o as getFirstDayOfMonth,p as isSameDay,r as getDaysInMonth}from"./utils.CjLBQJki.js";import{Fragment,TransitionGroup,computed,createBlock,createElementBlock,createElementVNode,createVNode,defineComponent,normalizeClass,openBlock,ref,renderList,toDisplayString,useCssVars,watch,withCtx}from"vue";import{debounce}from"@maz-ui/utils/helpers/debounce";import dayjs from"dayjs/esm";import '../assets/MazPickerCalendarGrid.DiySQJQ9.css';var _hoisted_1={class:`maz:text-sm`};var MazPickerCalendarGrid_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazPickerCalendarGrid`,props:{modelValue:{type:[String,Object],default:void 0},calendarDate:{type:String,required:!0},hasTime:{type:Boolean,required:!0},locale:{type:String,required:!0},firstDayOfWeek:{type:Number,required:!0},color:{type:String,required:!0},minDate:{type:String,default:void 0},inline:{type:Boolean,required:!0},maxDate:{type:String,default:void 0},disabledWeekly:{type:Array,required:!0},disabledDates:{type:Array,required:!0},hoverredDay:{type:Object,default:void 0},disabled:{type:Boolean,required:!0},range:{type:Boolean,required:!0}},emits:[`update:model-value`,`update:hoverred-day`],setup(__props,{emit:__emit}){useCssVars(_ctx=>({v93bdda52:hoverColor.value,v11ce37aa:hoverTextColor.value}));let props=__props;let emits=__emit;let MazDatePickerGrid=ref();let transitionName=ref(`maz-slidenext`);let calendarDateArray=computed(()=>[props.calendarDate]);let hoverColor=computed(()=>`color-mix(in srgb, var(--maz-${props.color}) 20%, transparent)`);let hoverTextColor=computed(()=>`var(--maz-${props.color}-foreground)`);let modelValue=computed({get:()=>props.modelValue,set:value=>emits(`update:model-value`,value)});let monthDays=computed(()=>Array.from({length:getDaysInMonth(props.calendarDate)},(_v,i)=>i+1).map(day=>({label:day,date:dayjs(props.calendarDate).set(`date`,day)})));let emptyDaysCount=computed(()=>(getFirstDayOfMonth(props.calendarDate)-props.firstDayOfWeek+7)%7);function setHoverredDay(day){let value=props.modelValue;!value||!isRangeValue(value)||(value.start&&!value.end&&day&&day.isAfter(value.start)?emits(`update:hoverred-day`,day):emits(`update:hoverred-day`))}function isBetweenHoverred(day){let value=props.modelValue;if(!(!value||!isRangeValue(value)||!value.start||!props.hoverredDay))return dayjs(day).isBetween(value.start,props.hoverredDay,`date`,`()`)?3:void 0}function isLastDayHoverred(day){if(props.hoverredDay)return dayjs(day).isSame(props.hoverredDay)}function isFirstDay(day){return props.modelValue&&props.modelValue&&typeof props.modelValue==`object`&&props.modelValue?.start?isSameDate(day,props.modelValue.start,`date`):!1}function isLastDay(day){return props.modelValue&&props.modelValue&&typeof props.modelValue==`object`&&props.modelValue?.end?isSameDate(day,props.modelValue.end,`date`):!1}function getDayButtonColor(date){let value=props.modelValue;if(typeof value==`object`){let isStartDate=value.start?isSameDate(date,value.start,`date`):!1;let isEndDate=value.end?isSameDate(date,value.end,`date`):!1;let isBetweenDates=checkIsBetween(date);return isStartDate||isEndDate||isBetweenDates?props.color:`transparent`}else return checkIsSameDate(date)?props.color:`transparent`}function isSelectedOrBetween(day){if(props.modelValue&&typeof props.modelValue==`object`){if(props.modelValue.start&&isSameDate(day,props.modelValue.start,`date`))return 1;if(props.modelValue.end){if(isSameDate(day,props.modelValue.end,`date`))return 1;if(checkIsBetween(day))return 2}}else if(checkIsSameDate(day))return 1;return 0}function selectDay(value){props.range&&setHoverredDay();let valueFormatted=value.format();if(typeof modelValue.value==`object`){let values=modelValue.value;values.start&&values.end&&(values={start:void 0,end:void 0});let isBeforeStartDate=dayjs(valueFormatted).isBefore(values.start,`date`);modelValue.value=!values.start||isBeforeStartDate?{start:valueFormatted,end:void 0}:{start:values.start,end:valueFormatted}}else modelValue.value=valueFormatted}function checkIsSameDate(day){let value=props.modelValue;return!value||!isValidDate(value)?!1:isSameDate(day,value,`date`)}function checkIsBetween(day){let value=props.modelValue;return!isRangeValue(value)||!value.start||!value.end?!1:dayjs(day).isBetween(value.start,value.end,`date`,`()`)}function isSmallerMinDate(day){return props.minDate?dayjs(day).isBefore(props.minDate,`date`):!1}function isDisabledWeekly(day){return props.disabledWeekly?.length?props.disabledWeekly.some(disabledDay=>isSameDay(day,disabledDay)):!1}function isDisabledDate(day){return props.disabledDates?.length?props.disabledDates.some(disabledDay=>isSameDate(day,disabledDay,`date`)):!1}function isBiggerMaxDate(day){return props.maxDate?dayjs(day).isAfter(props.maxDate,`date`):!1}let removeContainerHeight=debounce(()=>{MazDatePickerGrid.value&&(MazDatePickerGrid.value.style.minHeight=``)},400);function setContainerHeight(){MazDatePickerGrid.value&&(MazDatePickerGrid.value.style.minHeight=`${MazDatePickerGrid.value?.clientHeight||176}px`,removeContainerHeight())}return watch(()=>props.calendarDate,(calendarDate,oldCalendarValue)=>{transitionName.value=dayjs(calendarDate).isAfter(oldCalendarValue,`date`)?`maz-slidenext`:`maz-slideprev`,setContainerHeight()}),(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{ref_key:`MazDatePickerGrid`,ref:MazDatePickerGrid,class:`maz-picker-calendar-grid maz:relative maz:transition-all maz:duration-300 maz:ease-in-out`},[createVNode(TransitionGroup,{name:transitionName.value},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList([calendarDateArray.value],(dateArray,dateIndex)=>(openBlock(),createElementBlock(`div`,{key:`${dateArray[dateIndex]}`,class:normalizeClass([`maz-picker-calendar-grid__container maz:relative maz:grid maz:grid-cols-7 maz:items-start maz:gap-y-1`,{"--is-range":__props.range,"maz:gap-x-1":!__props.range}])},[(openBlock(!0),createElementBlock(Fragment,null,renderList(emptyDaysCount.value,first=>(openBlock(),createElementBlock(`div`,{key:first}))),128)),(openBlock(!0),createElementBlock(Fragment,null,renderList(monthDays.value,({label,date},i)=>(openBlock(),createBlock(MazBtn_default,{key:i,size:`mini`,color:getDayButtonColor(date),type:`button`,block:__props.inline,disabled:__props.disabled||isSmallerMinDate(date)||isBiggerMaxDate(date)||isDisabledWeekly(date)||isDisabledDate(date),class:normalizeClass([`maz:size-8 maz:cursor-pointer maz:rounded-full`,{"--is-first":isFirstDay(date)&&isSelectedOrBetween(date)===1,"--is-last":isLastDay(date)&&isSelectedOrBetween(date)===1,"--is-last-hoverred":isLastDayHoverred(date),"--is-selected":isSelectedOrBetween(date)===1,"--is-between":isSelectedOrBetween(date)===2,"--is-between-hoverred":__props.range?isBetweenHoverred(date)===3:void 0}]),onClick:$event=>selectDay(date),onMouseover:$event=>__props.range?setHoverredDay(date):void 0,onMouseleave:_cache[0]||=$event=>__props.range?setHoverredDay():void 0,onFocus:$event=>__props.range?setHoverredDay(date):void 0,onBlur:_cache[1]||=$event=>__props.range?setHoverredDay():void 0},{default:withCtx(()=>[createElementVNode(`span`,_hoisted_1,toDisplayString(label),1)]),_:2},1032,[`color`,`block`,`disabled`,`class`,`onClick`,`onMouseover`,`onFocus`]))),128))],2))),128))]),_:1},8,[`name`])],512))}}),[[`__scopeId`,`data-v-fc747436`]]);export{MazPickerCalendarGrid_default as t};
1
+ import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{t as MazBtn_default}from"./MazBtn.BDvqcYIY.js";import{d as isRangeValue,f as isSameDate,m as isValidDate,o as getFirstDayOfMonth,p as isSameDay,r as getDaysInMonth}from"./utils.CjLBQJki.js";import{Fragment,TransitionGroup,computed,createBlock,createElementBlock,createElementVNode,createVNode,defineComponent,normalizeClass,openBlock,ref,renderList,toDisplayString,useCssVars,watch,withCtx}from"vue";import{debounce}from"@maz-ui/utils/helpers/debounce";import dayjs from"dayjs/esm";import '../assets/MazPickerCalendarGrid.DiySQJQ9.css';var _hoisted_1={class:`maz:text-sm`};var MazPickerCalendarGrid_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazPickerCalendarGrid`,props:{modelValue:{type:[String,Object],default:void 0},calendarDate:{type:String,required:!0},hasTime:{type:Boolean,required:!0},locale:{type:String,required:!0},firstDayOfWeek:{type:Number,required:!0},color:{type:String,required:!0},minDate:{type:String,default:void 0},inline:{type:Boolean,required:!0},maxDate:{type:String,default:void 0},disabledWeekly:{type:Array,required:!0},disabledDates:{type:Array,required:!0},hoverredDay:{type:Object,default:void 0},disabled:{type:Boolean,required:!0},range:{type:Boolean,required:!0}},emits:[`update:model-value`,`update:hoverred-day`],setup(__props,{emit:__emit}){useCssVars(_ctx=>({v93bdda52:hoverColor.value,v11ce37aa:hoverTextColor.value}));let props=__props;let emits=__emit;let MazDatePickerGrid=ref();let transitionName=ref(`maz-slidenext`);let calendarDateArray=computed(()=>[props.calendarDate]);let hoverColor=computed(()=>`color-mix(in srgb, var(--maz-${props.color}) 20%, transparent)`);let hoverTextColor=computed(()=>`var(--maz-${props.color}-foreground)`);let modelValue=computed({get:()=>props.modelValue,set:value=>emits(`update:model-value`,value)});let monthDays=computed(()=>Array.from({length:getDaysInMonth(props.calendarDate)},(_v,i)=>i+1).map(day=>({label:day,date:dayjs(props.calendarDate).set(`date`,day)})));let emptyDaysCount=computed(()=>(getFirstDayOfMonth(props.calendarDate)-props.firstDayOfWeek+7)%7);function setHoverredDay(day){let value=props.modelValue;!value||!isRangeValue(value)||(value.start&&!value.end&&day&&day.isAfter(value.start)?emits(`update:hoverred-day`,day):emits(`update:hoverred-day`))}function isBetweenHoverred(day){let value=props.modelValue;if(!(!value||!isRangeValue(value)||!value.start||!props.hoverredDay))return dayjs(day).isBetween(value.start,props.hoverredDay,`date`,`()`)?3:void 0}function isLastDayHoverred(day){if(props.hoverredDay)return dayjs(day).isSame(props.hoverredDay)}function isFirstDay(day){return props.modelValue&&props.modelValue&&typeof props.modelValue==`object`&&props.modelValue?.start?isSameDate(day,props.modelValue.start,`date`):!1}function isLastDay(day){return props.modelValue&&props.modelValue&&typeof props.modelValue==`object`&&props.modelValue?.end?isSameDate(day,props.modelValue.end,`date`):!1}function getDayButtonColor(date){let value=props.modelValue;if(typeof value==`object`){let isStartDate=value.start?isSameDate(date,value.start,`date`):!1;let isEndDate=value.end?isSameDate(date,value.end,`date`):!1;let isBetweenDates=checkIsBetween(date);return isStartDate||isEndDate||isBetweenDates?props.color:`transparent`}else return checkIsSameDate(date)?props.color:`transparent`}function isSelectedOrBetween(day){if(props.modelValue&&typeof props.modelValue==`object`){if(props.modelValue.start&&isSameDate(day,props.modelValue.start,`date`))return 1;if(props.modelValue.end){if(isSameDate(day,props.modelValue.end,`date`))return 1;if(checkIsBetween(day))return 2}}else if(checkIsSameDate(day))return 1;return 0}function selectDay(value){props.range&&setHoverredDay();let valueFormatted=value.format();if(typeof modelValue.value==`object`){let values=modelValue.value;values.start&&values.end&&(values={start:void 0,end:void 0});let isBeforeStartDate=dayjs(valueFormatted).isBefore(values.start,`date`);modelValue.value=!values.start||isBeforeStartDate?{start:valueFormatted,end:void 0}:{start:values.start,end:valueFormatted}}else modelValue.value=valueFormatted}function checkIsSameDate(day){let value=props.modelValue;return!value||!isValidDate(value)?!1:isSameDate(day,value,`date`)}function checkIsBetween(day){let value=props.modelValue;return!isRangeValue(value)||!value.start||!value.end?!1:dayjs(day).isBetween(value.start,value.end,`date`,`()`)}function isSmallerMinDate(day){return props.minDate?dayjs(day).isBefore(props.minDate,`date`):!1}function isDisabledWeekly(day){return props.disabledWeekly?.length?props.disabledWeekly.some(disabledDay=>isSameDay(day,disabledDay)):!1}function isDisabledDate(day){return props.disabledDates?.length?props.disabledDates.some(disabledDay=>isSameDate(day,disabledDay,`date`)):!1}function isBiggerMaxDate(day){return props.maxDate?dayjs(day).isAfter(props.maxDate,`date`):!1}let removeContainerHeight=debounce(()=>{MazDatePickerGrid.value&&(MazDatePickerGrid.value.style.minHeight=``)},400);function setContainerHeight(){MazDatePickerGrid.value&&(MazDatePickerGrid.value.style.minHeight=`${MazDatePickerGrid.value?.clientHeight||176}px`,removeContainerHeight())}return watch(()=>props.calendarDate,(calendarDate,oldCalendarValue)=>{transitionName.value=dayjs(calendarDate).isAfter(oldCalendarValue,`date`)?`maz-slidenext`:`maz-slideprev`,setContainerHeight()}),(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{ref_key:`MazDatePickerGrid`,ref:MazDatePickerGrid,class:`maz-picker-calendar-grid maz:relative maz:transition-all maz:duration-300 maz:ease-in-out`},[createVNode(TransitionGroup,{name:transitionName.value},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList([calendarDateArray.value],(dateArray,dateIndex)=>(openBlock(),createElementBlock(`div`,{key:`${dateArray[dateIndex]}`,class:normalizeClass([`maz-picker-calendar-grid__container maz:relative maz:grid maz:grid-cols-7 maz:items-start maz:gap-y-1`,{"--is-range":__props.range,"maz:gap-x-1":!__props.range}])},[(openBlock(!0),createElementBlock(Fragment,null,renderList(emptyDaysCount.value,first=>(openBlock(),createElementBlock(`div`,{key:first}))),128)),(openBlock(!0),createElementBlock(Fragment,null,renderList(monthDays.value,({label,date},i)=>(openBlock(),createBlock(MazBtn_default,{key:i,size:`mini`,color:getDayButtonColor(date),type:`button`,block:__props.inline,disabled:__props.disabled||isSmallerMinDate(date)||isBiggerMaxDate(date)||isDisabledWeekly(date)||isDisabledDate(date),class:normalizeClass([`maz:size-8 maz:cursor-pointer maz:rounded-full`,{"--is-first":isFirstDay(date)&&isSelectedOrBetween(date)===1,"--is-last":isLastDay(date)&&isSelectedOrBetween(date)===1,"--is-last-hoverred":isLastDayHoverred(date),"--is-selected":isSelectedOrBetween(date)===1,"--is-between":isSelectedOrBetween(date)===2,"--is-between-hoverred":__props.range?isBetweenHoverred(date)===3:void 0}]),onClick:$event=>selectDay(date),onMouseover:$event=>__props.range?setHoverredDay(date):void 0,onMouseleave:_cache[0]||=$event=>__props.range?setHoverredDay():void 0,onFocus:$event=>__props.range?setHoverredDay(date):void 0,onBlur:_cache[1]||=$event=>__props.range?setHoverredDay():void 0},{default:withCtx(()=>[createElementVNode(`span`,_hoisted_1,toDisplayString(label),1)]),_:2},1032,[`color`,`block`,`disabled`,`class`,`onClick`,`onMouseover`,`onFocus`]))),128))],2))),128))]),_:1},8,[`name`])],512))}}),[[`__scopeId`,`data-v-fc747436`]]);export{MazPickerCalendarGrid_default as t};
@@ -1 +1 @@
1
- import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{GLOBAL_CONFIG_INJECTION_KEY}from"../composables/useGlobalConfig.js";import{t as MazBtn_default}from"./MazBtn.C7LV-iX2.js";import{Fragment,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,defineAsyncComponent,defineComponent,getCurrentInstance,inject,mergeProps,normalizeClass,normalizeStyle,onBeforeMount,onMounted,openBlock,ref,renderList,renderSlot,toDisplayString,unref,watch,withCtx}from"vue";import{sleep}from"@maz-ui/utils/helpers/sleep";import '../assets/MazTabsBar.SUnpNfa4.css';var MazTabsBar_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazTabsBar`,props:{items:{},modelValue:{},size:{},roundedSize:{},color:{},standalone:{type:Boolean,default:!1},persistent:{type:Boolean,default:!1},queryParam:{default:`tab`},block:{type:Boolean,default:!1},elevation:{type:Boolean,default:!1},autoScroll:{type:Boolean,default:!0},bordered:{type:Boolean,default:!0}},emits:[`update:model-value`],setup(__props,{emit:__emit}){let emits=__emit;let MazBadge=defineAsyncComponent(()=>import(`../components/MazBadge.js`));let injectedTabs=inject(`maz-tabs`,void 0);let tabsContext=computed(()=>__props.standalone?void 0:injectedTabs);let instance=getCurrentInstance();let globalConfig=inject(GLOBAL_CONFIG_INJECTION_KEY,void 0);function wasPropProvided(key){let raw=instance?.vnode.props;return raw?Object.hasOwn(raw,key)||Object.hasOwn(raw,key.replace(/\B([A-Z])/g,`-$1`).toLowerCase()):!1}let resolvedSize=computed(()=>wasPropProvided(`size`)?instance.props.size:tabsContext.value?.size?.value??globalConfig?.MazTabsBar?.size??globalConfig?.global?.size??`md`);let resolvedRoundedSize=computed(()=>wasPropProvided(`roundedSize`)?instance.props.roundedSize:tabsContext.value?.roundedSize?.value??globalConfig?.MazTabsBar?.roundedSize??globalConfig?.global?.roundedSize??`md`);let resolvedColor=computed(()=>__props.color??tabsContext.value?.color?.value);let ROUNDED_CLASS={none:``,sm:`maz:rounded-xs`,md:`maz:rounded-md`,lg:`maz:rounded-lg`,xl:`maz:rounded-xl`,full:`maz:rounded-full`};let normalizedItems=computed(()=>__props.items.map(item=>{if(typeof item==`string`)return{label:item,value:void 0,disabled:!1,size:void 0,roundedSize:void 0,color:`transparent`,badge:void 0,btnProps:{}};let{label,value,disabled,badge,size,roundedSize,color:itemColor,...btnProps}=item;return{label,value,disabled:disabled??!1,size,roundedSize,color:itemColor??`transparent`,badge,btnProps}}));let currentTab=computed(()=>{if(tabsContext.value)return tabsContext.value.currentTab.value;if(__props.modelValue===void 0)return 1;let indexByValue=normalizedItems.value.findIndex(item=>item.value!==void 0&&item.value===__props.modelValue);return indexByValue===-1?typeof __props.modelValue==`number`?__props.modelValue:1:indexByValue+1});function setActiveTab(oneBasedIndex){if(tabsContext.value){tabsContext.value.updateCurrentTab(oneBasedIndex);return}let item=normalizedItems.value[oneBasedIndex-1];emits(`update:model-value`,item?.value??oneBasedIndex)}function selectTab(tabIndex){setActiveTab(tabIndex+1),__props.persistent&&addOrUpdateQueryParamTab(tabIndex+1)}let tabsBarRef=ref();let itemRefs=ref([]);function isActiveTab(index){return currentTab.value===index+1}function addElementToItemRefs({mazBtn,index}){itemRefs.value[index]=mazBtn&&`$el`in mazBtn?mazBtn.$el:mazBtn}let tabsIndicatorState=ref();let tabsBarHasScrollAnimation=ref(!1);async function setIndicatorAndScroll(){if(!__props.autoScroll)return;await sleep(150);let tabsBar=tabsBarRef.value;let activeTab=itemRefs.value[currentTab.value-1];if(!tabsBar||!activeTab)return;if(activeTab.offsetLeft-50<tabsBar.scrollLeft||activeTab.offsetLeft+activeTab.offsetWidth>tabsBar.scrollLeft+tabsBar.clientWidth){let tabBarPaddingLeft=globalThis.getComputedStyle(tabsBar).paddingLeft;let tabsBarPaddingOffset=Number(tabBarPaddingLeft.slice(0,-2));tabsBar.scrollTo({left:activeTab.offsetLeft-tabsBarPaddingOffset-50,behavior:tabsBarHasScrollAnimation.value?`smooth`:`instant`})}if(typeof currentTab.value!=`number`)return;let indicatorWidth=activeTab?.offsetWidth??0;let indicatorHeight=activeTab?.offsetHeight??0;tabsIndicatorState.value={transform:`translateX(${activeTab?.offsetLeft??0}px)`,width:`${indicatorWidth}px`,height:`${indicatorHeight}px`},tabsBarHasScrollAnimation.value=!0}function getTabStyle(index,disabled){return disabled?{}:currentTab.value===index+1?resolvedColor.value?`color: var(--maz-${resolvedColor.value}-foreground)`:`color: var(--maz-foreground)`:`color: var(--maz-muted)`}onBeforeMount(()=>{(currentTab.value<1||currentTab.value>normalizedItems.value.length)&&console.error(`[maz-ui](MazTabsBar) The model-value should be between 1 and ${normalizedItems.value.length}`)}),onMounted(()=>{(__props.persistent||currentTab.value)&&setIndicatorAndScroll()}),watch(()=>[currentTab.value,normalizedItems.value],()=>{setIndicatorAndScroll()});function getQueryParamTab(){let urlActuelle=new URL(globalThis.location.href);return Number(urlActuelle.searchParams.get(__props.queryParam))}function addOrUpdateQueryParamTab(tab){let urlActuelle=new URL(globalThis.location.href);urlActuelle.searchParams.set(__props.queryParam,String(tab)),globalThis.history.replaceState({},document.title,urlActuelle.toString())}return onMounted(()=>{__props.persistent&&setActiveTab(getQueryParamTab()||currentTab.value||1)}),(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{ref_key:`tabsBarRef`,ref:tabsBarRef,class:normalizeClass([`m-tabs-bar m-reset-css maz:relative maz:inline-flex maz:max-w-full maz:gap-1 maz:overflow-x-auto maz:bg-container maz:p-2 maz:align-top`,[ROUNDED_CLASS[resolvedRoundedSize.value],{"--block":__props.block,"--elevation":__props.elevation,"--bordered":__props.bordered,"maz:w-full":__props.block,"maz:shadow-elevation maz:drop-shadow-md maz:dark:shadow-none":__props.elevation,"maz:border maz:border-divider":__props.bordered}]])},[createElementVNode(`div`,{class:normalizeClass([`m-tabs-bar__indicator maz:absolute maz:left-0 maz:text-center`,[ROUNDED_CLASS[resolvedRoundedSize.value],{"maz:transition-all maz:duration-300 maz:ease-in-out":tabsBarHasScrollAnimation.value,"maz:bg-surface-600 maz:dark:bg-surface-400":!resolvedColor.value}]]),style:normalizeStyle([tabsIndicatorState.value,resolvedColor.value?{backgroundColor:`var(--maz-${resolvedColor.value})`}:{}])},null,6),(openBlock(!0),createElementBlock(Fragment,null,renderList(normalizedItems.value,(item,index)=>(openBlock(),createBlock(MazBtn_default,mergeProps({key:index,ref_for:!0,ref:mazBtn=>addElementToItemRefs({mazBtn,index})},{ref_for:!0},item.btnProps,{color:item.color,size:item.size??resolvedSize.value,"rounded-size":item.roundedSize??resolvedRoundedSize.value,disabled:item.disabled,class:[{"--is-active":isActiveTab(index),"--disabled":item.disabled},`m-tabs-bar__item maz:relative maz:z-1 maz:flex-none maz:font-medium`],style:getTabStyle(index,item.disabled),onClick:$event=>item.disabled?void 0:selectTab(index)}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`item`,{item,active:isActiveTab(index),index},()=>[createTextVNode(toDisplayString(item.label)+` `,1),item.badge?(openBlock(),createBlock(unref(MazBadge),mergeProps({key:0,ref_for:!0},item.badge,{size:item.badge.size??item.size??resolvedSize.value??`xs`,class:`m-tabs-bar__item__badge`}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`badge-content`,{content:item.badge.content},()=>[createTextVNode(toDisplayString(item.badge.content),1)],!0)]),_:2},1040,[`size`])):createCommentVNode(``,!0)],!0)]),_:2},1040,[`color`,`size`,`rounded-size`,`disabled`,`class`,`style`,`onClick`]))),128))],2))}}),[[`__scopeId`,`data-v-493c1a2d`]]);export{MazTabsBar_default as t};
1
+ import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{GLOBAL_CONFIG_INJECTION_KEY}from"../composables/useGlobalConfig.js";import{t as MazBtn_default}from"./MazBtn.BDvqcYIY.js";import{Fragment,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,defineAsyncComponent,defineComponent,getCurrentInstance,inject,mergeProps,normalizeClass,normalizeStyle,onBeforeMount,onMounted,openBlock,ref,renderList,renderSlot,toDisplayString,unref,watch,withCtx}from"vue";import{sleep}from"@maz-ui/utils/helpers/sleep";import '../assets/MazTabsBar.SUnpNfa4.css';var MazTabsBar_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazTabsBar`,props:{items:{},modelValue:{},size:{},roundedSize:{},color:{},standalone:{type:Boolean,default:!1},persistent:{type:Boolean,default:!1},queryParam:{default:`tab`},block:{type:Boolean,default:!1},elevation:{type:Boolean,default:!1},autoScroll:{type:Boolean,default:!0},bordered:{type:Boolean,default:!0}},emits:[`update:model-value`],setup(__props,{emit:__emit}){let emits=__emit;let MazBadge=defineAsyncComponent(()=>import(`../components/MazBadge.js`));let injectedTabs=inject(`maz-tabs`,void 0);let tabsContext=computed(()=>__props.standalone?void 0:injectedTabs);let instance=getCurrentInstance();let globalConfig=inject(GLOBAL_CONFIG_INJECTION_KEY,void 0);function wasPropProvided(key){let raw=instance?.vnode.props;return raw?Object.hasOwn(raw,key)||Object.hasOwn(raw,key.replace(/\B([A-Z])/g,`-$1`).toLowerCase()):!1}let resolvedSize=computed(()=>wasPropProvided(`size`)?instance.props.size:tabsContext.value?.size?.value??globalConfig?.MazTabsBar?.size??globalConfig?.global?.size??`md`);let resolvedRoundedSize=computed(()=>wasPropProvided(`roundedSize`)?instance.props.roundedSize:tabsContext.value?.roundedSize?.value??globalConfig?.MazTabsBar?.roundedSize??globalConfig?.global?.roundedSize??`md`);let resolvedColor=computed(()=>__props.color??tabsContext.value?.color?.value);let ROUNDED_CLASS={none:``,sm:`maz:rounded-xs`,md:`maz:rounded-md`,lg:`maz:rounded-lg`,xl:`maz:rounded-xl`,full:`maz:rounded-full`};let normalizedItems=computed(()=>__props.items.map(item=>{if(typeof item==`string`)return{label:item,value:void 0,disabled:!1,size:void 0,roundedSize:void 0,color:`transparent`,badge:void 0,btnProps:{}};let{label,value,disabled,badge,size,roundedSize,color:itemColor,...btnProps}=item;return{label,value,disabled:disabled??!1,size,roundedSize,color:itemColor??`transparent`,badge,btnProps}}));let currentTab=computed(()=>{if(tabsContext.value)return tabsContext.value.currentTab.value;if(__props.modelValue===void 0)return 1;let indexByValue=normalizedItems.value.findIndex(item=>item.value!==void 0&&item.value===__props.modelValue);return indexByValue===-1?typeof __props.modelValue==`number`?__props.modelValue:1:indexByValue+1});function setActiveTab(oneBasedIndex){if(tabsContext.value){tabsContext.value.updateCurrentTab(oneBasedIndex);return}let item=normalizedItems.value[oneBasedIndex-1];emits(`update:model-value`,item?.value??oneBasedIndex)}function selectTab(tabIndex){setActiveTab(tabIndex+1),__props.persistent&&addOrUpdateQueryParamTab(tabIndex+1)}let tabsBarRef=ref();let itemRefs=ref([]);function isActiveTab(index){return currentTab.value===index+1}function addElementToItemRefs({mazBtn,index}){itemRefs.value[index]=mazBtn&&`$el`in mazBtn?mazBtn.$el:mazBtn}let tabsIndicatorState=ref();let tabsBarHasScrollAnimation=ref(!1);async function setIndicatorAndScroll(){if(!__props.autoScroll)return;await sleep(150);let tabsBar=tabsBarRef.value;let activeTab=itemRefs.value[currentTab.value-1];if(!tabsBar||!activeTab)return;if(activeTab.offsetLeft-50<tabsBar.scrollLeft||activeTab.offsetLeft+activeTab.offsetWidth>tabsBar.scrollLeft+tabsBar.clientWidth){let tabBarPaddingLeft=globalThis.getComputedStyle(tabsBar).paddingLeft;let tabsBarPaddingOffset=Number(tabBarPaddingLeft.slice(0,-2));tabsBar.scrollTo({left:activeTab.offsetLeft-tabsBarPaddingOffset-50,behavior:tabsBarHasScrollAnimation.value?`smooth`:`instant`})}if(typeof currentTab.value!=`number`)return;let indicatorWidth=activeTab?.offsetWidth??0;let indicatorHeight=activeTab?.offsetHeight??0;tabsIndicatorState.value={transform:`translateX(${activeTab?.offsetLeft??0}px)`,width:`${indicatorWidth}px`,height:`${indicatorHeight}px`},tabsBarHasScrollAnimation.value=!0}function getTabStyle(index,disabled){return disabled?{}:currentTab.value===index+1?resolvedColor.value?`color: var(--maz-${resolvedColor.value}-foreground)`:`color: var(--maz-foreground)`:`color: var(--maz-muted)`}onBeforeMount(()=>{(currentTab.value<1||currentTab.value>normalizedItems.value.length)&&console.error(`[maz-ui](MazTabsBar) The model-value should be between 1 and ${normalizedItems.value.length}`)}),onMounted(()=>{(__props.persistent||currentTab.value)&&setIndicatorAndScroll()}),watch(()=>[currentTab.value,normalizedItems.value],()=>{setIndicatorAndScroll()});function getQueryParamTab(){let urlActuelle=new URL(globalThis.location.href);return Number(urlActuelle.searchParams.get(__props.queryParam))}function addOrUpdateQueryParamTab(tab){let urlActuelle=new URL(globalThis.location.href);urlActuelle.searchParams.set(__props.queryParam,String(tab)),globalThis.history.replaceState({},document.title,urlActuelle.toString())}return onMounted(()=>{__props.persistent&&setActiveTab(getQueryParamTab()||currentTab.value||1)}),(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{ref_key:`tabsBarRef`,ref:tabsBarRef,class:normalizeClass([`m-tabs-bar m-reset-css maz:relative maz:inline-flex maz:max-w-full maz:gap-1 maz:overflow-x-auto maz:bg-container maz:p-2 maz:align-top`,[ROUNDED_CLASS[resolvedRoundedSize.value],{"--block":__props.block,"--elevation":__props.elevation,"--bordered":__props.bordered,"maz:w-full":__props.block,"maz:shadow-elevation maz:drop-shadow-md maz:dark:shadow-none":__props.elevation,"maz:border maz:border-divider":__props.bordered}]])},[createElementVNode(`div`,{class:normalizeClass([`m-tabs-bar__indicator maz:absolute maz:left-0 maz:text-center`,[ROUNDED_CLASS[resolvedRoundedSize.value],{"maz:transition-all maz:duration-300 maz:ease-in-out":tabsBarHasScrollAnimation.value,"maz:bg-surface-600 maz:dark:bg-surface-400":!resolvedColor.value}]]),style:normalizeStyle([tabsIndicatorState.value,resolvedColor.value?{backgroundColor:`var(--maz-${resolvedColor.value})`}:{}])},null,6),(openBlock(!0),createElementBlock(Fragment,null,renderList(normalizedItems.value,(item,index)=>(openBlock(),createBlock(MazBtn_default,mergeProps({key:index,ref_for:!0,ref:mazBtn=>addElementToItemRefs({mazBtn,index})},{ref_for:!0},item.btnProps,{color:item.color,size:item.size??resolvedSize.value,"rounded-size":item.roundedSize??resolvedRoundedSize.value,disabled:item.disabled,class:[{"--is-active":isActiveTab(index),"--disabled":item.disabled},`m-tabs-bar__item maz:relative maz:z-1 maz:flex-none maz:font-medium`],style:getTabStyle(index,item.disabled),onClick:$event=>item.disabled?void 0:selectTab(index)}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`item`,{item,active:isActiveTab(index),index},()=>[createTextVNode(toDisplayString(item.label)+` `,1),item.badge?(openBlock(),createBlock(unref(MazBadge),mergeProps({key:0,ref_for:!0},item.badge,{size:item.badge.size??item.size??resolvedSize.value??`xs`,class:`m-tabs-bar__item__badge`}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`badge-content`,{content:item.badge.content},()=>[createTextVNode(toDisplayString(item.badge.content),1)],!0)]),_:2},1040,[`size`])):createCommentVNode(``,!0)],!0)]),_:2},1040,[`color`,`size`,`rounded-size`,`disabled`,`class`,`style`,`onClick`]))),128))],2))}}),[[`__scopeId`,`data-v-493c1a2d`]]);export{MazTabsBar_default as t};
@@ -0,0 +1 @@
1
+ import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.zP_plvmB.js";import{useGlobalConfig}from"../composables/useGlobalConfig.js";import{n as readInitialAutofillValue,t as onAutofillSync}from"./autofillSync.CbP9_N2N.js";import{computed,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,defineComponent,mergeProps,normalizeClass,normalizeStyle,onBeforeUnmount,onMounted,openBlock,ref,renderSlot,toDisplayString,toHandlers,unref,useSlots,vModelText,withDirectives}from"vue";import '../assets/MazTextarea.DamMIwYJ.css';var _hoisted_1=[`for`];var _hoisted_2=[`for`];var _hoisted_3=[`for`];var _hoisted_4={key:1};var _hoisted_5={key:2};var _hoisted_6=[`id`,`placeholder`,`name`,`rows`,`disabled`,`readonly`,`required`];var _hoisted_7={key:1,class:`m-textarea__append maz:inline-flex`};var MazTextarea_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazTextarea`,props:{style:{type:[Boolean,null,String,Object,Array]},class:{type:[Boolean,null,String,Object,Array]},modelValue:{},id:{},name:{default:`MazTextarea`},label:{},placeholder:{},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},error:{type:Boolean,default:!1},success:{type:Boolean,default:!1},warning:{type:Boolean,default:!1},hint:{},color:{default:`primary`},roundedSize:{},size:{},padding:{type:Boolean,default:!0},transparent:{type:Boolean,default:!1},border:{type:Boolean,default:!0},autogrow:{type:Boolean,default:!0},minRows:{default:3},appendJustify:{default:`end`},topLabel:{},assistiveText:{}},emits:[`update:model-value`,`input`,`focus`,`blur`,`change`],setup(__props,{emit:__emit}){let emits=__emit;let{roundedSize,size}=useGlobalConfig(`MazTextarea`,{roundedSize:`md`,size:`md`});let instanceId=useInstanceUniqId({componentName:`MazTextarea`,providedId:__props.id});let initialAutofillValue=readInitialAutofillValue(instanceId.value);let textarea=ref();let inputValue=computed({get:()=>__props.modelValue,set:value=>{emits(`update:model-value`,value),emits(`input`,value)}});function focus(event){emits(`focus`,event)}function blur(event){emits(`blur`,event)}function change(event){emits(`change`,event)}let slots=useSlots();let hasLabelOrHint=computed(()=>__props.label||__props.hint||!!slots.label);let hasAppend=computed(()=>!!slots.append);let borderStyle=computed(()=>__props.error?`maz:border-destructive`:__props.success?`maz:border-success`:__props.warning?`maz:border-warning`:`--default-border maz:border-divider maz:dark:border-divider-400`);let autofillCleanup;onMounted(()=>{textarea.value&&(initialAutofillValue&&textarea.value.value!==initialAutofillValue&&(textarea.value.value=initialAutofillValue,initialAutofillValue!==__props.modelValue&&emits(`update:model-value`,initialAutofillValue)),autofillCleanup=onAutofillSync(textarea.value,value=>{value!==__props.modelValue&&emits(`update:model-value`,value)}))}),onBeforeUnmount(()=>{autofillCleanup?.()});let ROUNDED_CLASS={none:``,sm:`maz:rounded-xs`,md:`maz:rounded-md`,lg:`maz:rounded-lg`,xl:`maz:rounded-xl`,full:`maz:rounded-full`};let SIZE_TEXT_CLASS={xl:`maz:text-xl`,lg:`maz:text-lg`,md:``,sm:`maz:text-sm`,xs:`maz:text-xs`,mini:`maz:text-xs`};let SIZE_CONFIG={xl:{height:`4rem`,lineHeight:`1.75rem`,paddingInline:`1.25rem`},lg:{height:`3.5rem`,lineHeight:`1.75rem`,paddingInline:`1rem`},md:{height:`3rem`,lineHeight:`1.5rem`,paddingInline:`1rem`},sm:{height:`2.5rem`,lineHeight:`1.25rem`,paddingInline:`0.75rem`},xs:{height:`2rem`,lineHeight:`1rem`,paddingInline:`0.625rem`},mini:{height:`1.5rem`,lineHeight:`1rem`,paddingInline:`0.5rem`}};let sizeTextClass=computed(()=>SIZE_TEXT_CLASS[size.value]);let sizeVars=computed(()=>{let config=SIZE_CONFIG[size.value];return{"--mt-height":config.height,"--mt-line-height":config.lineHeight,"--mt-padding-inline":config.paddingInline}});let stateLabelColor=computed(()=>[{"maz:text-destructive-600":__props.error,"maz:text-success-600":__props.success,"maz:text-warning-600":__props.warning}]);return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`m-textarea-wrapper m-reset-css maz:flex maz:flex-col maz:gap-2`,__props.class]),style:normalizeStyle(__props.style)},[__props.topLabel?(openBlock(),createElementBlock(`label`,{key:0,for:unref(instanceId),class:normalizeClass([`m-textarea__top-label`,stateLabelColor.value]),style:{fontWeight:`var(--maz-input-top-label-font-weight, 600)`}},toDisplayString(__props.topLabel),11,_hoisted_1)):createCommentVNode(``,!0),createElementVNode(`label`,{class:normalizeClass([`m-textarea maz:relative maz:flex maz:flex-col maz:align-top maz:text-foreground`,[{"--is-disabled":__props.disabled,"--has-label":hasLabelOrHint.value,"--background-transparent":__props.transparent,"--has-placeholder":!!__props.placeholder,"--autogrow":__props.autogrow,"--padding":__props.padding,"maz:border maz:border-solid":__props.border&&!__props.disabled,"maz:bg-input":!__props.transparent&&!__props.disabled,"maz:disabled-cursor maz:border-divider maz:bg-surface-600 maz:text-muted maz:dark:border-divider-400 maz:dark:bg-surface-400":__props.disabled},sizeTextClass.value,borderStyle.value,ROUNDED_CLASS[unref(roundedSize)],`--${__props.color}`]]),for:unref(instanceId),style:normalizeStyle([`--append-justify: ${__props.appendJustify}`,`--maz-textarea-min-rows: ${__props.minRows}`,sizeVars.value])},[hasLabelOrHint.value?(openBlock(),createElementBlock(`label`,{key:0,for:unref(instanceId),class:normalizeClass([`m-textarea__label`,[...stateLabelColor.value,{"--has-state":__props.error||__props.warning||__props.success}]])},[__props.hint?(openBlock(),createElementBlock(`span`,_hoisted_4,toDisplayString(__props.hint),1)):renderSlot(_ctx.$slots,`label`,{key:0},()=>[createTextVNode(toDisplayString(__props.label),1)],!0),__props.required?(openBlock(),createElementBlock(`sup`,_hoisted_5,`*`)):createCommentVNode(``,!0)],10,_hoisted_3)):createCommentVNode(``,!0),withDirectives(createElementVNode(`textarea`,mergeProps({id:unref(instanceId),ref_key:`textarea`,ref:textarea},_ctx.$attrs,{"onUpdate:modelValue":_cache[0]||=$event=>inputValue.value=$event,placeholder:__props.placeholder||` `,name:__props.name,rows:__props.minRows,disabled:__props.disabled,readonly:__props.readonly,required:__props.required,class:{"--has-append":hasAppend.value}},toHandlers({blur,focus,change},!0)),null,16,_hoisted_6),[[vModelText,inputValue.value]]),hasAppend.value?(openBlock(),createElementBlock(`div`,_hoisted_7,[renderSlot(_ctx.$slots,`append`,{},void 0,!0)])):createCommentVNode(``,!0)],14,_hoisted_2),__props.assistiveText?(openBlock(),createElementBlock(`div`,{key:1,class:normalizeClass([`m-textarea__bottom-text maz:-mt-1 maz:text-sm`,[{"maz:text-destructive-600":__props.error,"maz:text-success-600":__props.success,"maz:text-warning-600":__props.warning,"maz:text-muted":!__props.error&&!__props.success&&!__props.warning}]])},toDisplayString(__props.assistiveText),3)):createCommentVNode(``,!0)],6))}}),[[`__scopeId`,`data-v-e61d0cb9`]]);export{MazTextarea_default as t};
@@ -1 +1 @@
1
- import{t as MazBottomSheet_default}from"../chunks/MazBottomSheet.BMiGc4uw.js";export{MazBottomSheet_default as default};
1
+ import{t as MazBottomSheet_default}from"../chunks/MazBottomSheet.wl2tGAdr.js";export{MazBottomSheet_default as default};
@@ -1,22 +1,67 @@
1
- export interface MazBottomSheetProps {
1
+ import { MazIconLike } from '../composables/useMazIconProps';
2
+ import { MazBackdropProps } from './MazBackdrop.vue';
3
+ import { MazSizeUnit } from './types';
4
+ type __VLS_Props = BottomSheetProps & MazBackdropProps;
5
+ export interface BottomSheetProps {
2
6
  /** @model Modal's model value */
3
7
  modelValue?: boolean;
4
- /** Remove the close button */
8
+ /** Title of the bottom sheet in the header */
9
+ title?: string;
10
+ /** Icon displayed on the left of the header. Accepts an icon value or a full `MazIconProps` object. */
11
+ icon?: MazIconLike;
12
+ /**
13
+ * Bottom sheet's max-width, applied from the tablet breakpoint and up (full-width below).
14
+ * @default '40rem'
15
+ */
16
+ maxWidth?: MazSizeUnit;
17
+ /** Remove the close button in the header */
5
18
  hideCloseButton?: boolean;
6
- /** Remove the padding on the container */
19
+ /** Remove the whole header */
20
+ hideHeader?: boolean;
21
+ /** Add the padding on the content area */
7
22
  padding?: boolean;
23
+ /** Persistent bottom sheet (not closable by clicking outside and remove close button) */
24
+ persistent?: boolean;
25
+ /**
26
+ * Show the drag handle at the top and allow closing the sheet by swiping it down (iOS-like).
27
+ * The swipe never closes a `persistent` sheet (it snaps back instead).
28
+ * @default true
29
+ */
30
+ swipeToClose?: boolean;
8
31
  }
9
- declare var __VLS_13: {
32
+ export interface MazBottomSheetProps extends BottomSheetProps, MazBackdropProps {
33
+ }
34
+ declare var __VLS_13: {}, __VLS_15: {
35
+ close: () => void;
36
+ }, __VLS_17: {}, __VLS_24: {}, __VLS_33: {
37
+ close: () => void;
38
+ }, __VLS_35: {
10
39
  close: () => void;
11
40
  };
12
41
  type __VLS_Slots = {} & {
13
- default?: (props: typeof __VLS_13) => any;
42
+ handle?: (props: typeof __VLS_13) => any;
43
+ } & {
44
+ header?: (props: typeof __VLS_15) => any;
45
+ } & {
46
+ icon?: (props: typeof __VLS_17) => any;
47
+ } & {
48
+ title?: (props: typeof __VLS_24) => any;
49
+ } & {
50
+ default?: (props: typeof __VLS_33) => any;
51
+ } & {
52
+ footer?: (props: typeof __VLS_35) => any;
14
53
  };
15
- declare const __VLS_base: import('vue').DefineComponent<MazBottomSheetProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
54
+ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {
55
+ /**
56
+ * Close the bottom sheet
57
+ * @description This is used to close the bottom sheet
58
+ */
59
+ close: () => any;
60
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
16
61
  close: (value: void) => any;
17
62
  open: (value: void) => any;
18
63
  "update:model-value": (value: boolean) => any;
19
- }, string, import('vue').PublicProps, Readonly<MazBottomSheetProps> & Readonly<{
64
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
20
65
  onClose?: ((value?: void | undefined) => any) | undefined;
21
66
  onOpen?: ((value?: void | undefined) => any) | undefined;
22
67
  "onUpdate:model-value"?: ((value: boolean) => any) | undefined;
@@ -1 +1 @@
1
- import{t as MazBtn_default}from"../chunks/MazBtn.C7LV-iX2.js";export{MazBtn_default as default};
1
+ import{t as MazBtn_default}from"../chunks/MazBtn.BDvqcYIY.js";export{MazBtn_default as default};
@@ -93,6 +93,11 @@ export interface MazBtnProps {
93
93
  * @default false
94
94
  */
95
95
  active?: boolean;
96
+ /**
97
+ * If true, the button will have an overflow-hidden style
98
+ * @default false
99
+ */
100
+ overflowHidden?: boolean;
96
101
  }
97
102
  declare var __VLS_8: {}, __VLS_15: {}, __VLS_22: {}, __VLS_24: {}, __VLS_31: {};
98
103
  type __VLS_Slots = {} & {
@@ -1 +1 @@
1
- import{t as MazPickerCalendarGrid_default}from"../../../chunks/MazPickerCalendarGrid.9RHBzkN0.js";export{MazPickerCalendarGrid_default as default};
1
+ import{t as MazPickerCalendarGrid_default}from"../../../chunks/MazPickerCalendarGrid.Cdqyx-sd.js";export{MazPickerCalendarGrid_default as default};
@@ -1 +1 @@
1
- import{t as MazPickerCalendarDays_default}from"../../../chunks/MazPickerCalendarDays.M406Kil2.js";import{t as MazPickerCalendarGrid_default}from"../../../chunks/MazPickerCalendarGrid.9RHBzkN0.js";import{computed,createElementBlock,createVNode,defineComponent,normalizeClass,openBlock}from"vue";import dayjs from"dayjs/esm";var MazPickerCalendarMonth_default=defineComponent({__name:`MazPickerCalendarMonth`,props:{modelValue:{type:[String,Object],default:void 0},color:{type:String,required:!0},locale:{type:String,required:!0},hasTime:{type:Boolean,required:!0},firstDayOfWeek:{type:Number,required:!0},inline:{type:Boolean,required:!0},calendarDate:{type:String,required:!0},offsetMonth:{type:Number,default:0},minDate:{type:String,default:void 0},maxDate:{type:String,default:void 0},disabledWeekly:{type:Array,required:!0},disabledDates:{type:Array,required:!0},hoverredDay:{type:Object,default:void 0},disabled:{type:Boolean,required:!0},range:{type:Boolean,required:!0}},emits:[`update:model-value`,`update:calendar-date`,`update:hoverred-day`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let modelValue=computed({get:()=>props.modelValue,set:value=>emits(`update:model-value`,value)});let hoverredDay=computed({get:()=>props.hoverredDay,set:value=>emits(`update:hoverred-day`,value)});function getCalendarDateWithOffset(offset){return dayjs(props.calendarDate).add(offset,`month`).format()}let calendarDateWithOffset=computed({get:()=>getCalendarDateWithOffset(props.offsetMonth),set:calendarDate=>emits(`update:calendar-date`,calendarDate)});return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`maz-picker-calendar-month maz:w-full maz:overflow-hidden maz:py-2`,{"--has-padding":!__props.range,"maz:px-2":!__props.range}])},[createVNode(MazPickerCalendarDays_default,{locale:__props.locale,"first-day-of-week":__props.firstDayOfWeek,class:`maz-picker-calendar-month__days maz:pb-2`},null,8,[`locale`,`first-day-of-week`]),createVNode(MazPickerCalendarGrid_default,{modelValue:modelValue.value,"onUpdate:modelValue":_cache[0]||=$event=>modelValue.value=$event,"hoverred-day":hoverredDay.value,"onUpdate:hoverredDay":_cache[1]||=$event=>hoverredDay.value=$event,locale:__props.locale,color:__props.color,"has-time":__props.hasTime,inline:__props.inline,"calendar-date":calendarDateWithOffset.value,"first-day-of-week":__props.firstDayOfWeek,"min-date":__props.minDate,"max-date":__props.maxDate,"disabled-weekly":__props.disabledWeekly,"disabled-dates":__props.disabledDates,disabled:__props.disabled,range:__props.range},null,8,[`modelValue`,`hoverred-day`,`locale`,`color`,`has-time`,`inline`,`calendar-date`,`first-day-of-week`,`min-date`,`max-date`,`disabled-weekly`,`disabled-dates`,`disabled`,`range`])],2))}});export{MazPickerCalendarMonth_default as default};
1
+ import{t as MazPickerCalendarDays_default}from"../../../chunks/MazPickerCalendarDays.M406Kil2.js";import{t as MazPickerCalendarGrid_default}from"../../../chunks/MazPickerCalendarGrid.Cdqyx-sd.js";import{computed,createElementBlock,createVNode,defineComponent,normalizeClass,openBlock}from"vue";import dayjs from"dayjs/esm";var MazPickerCalendarMonth_default=defineComponent({__name:`MazPickerCalendarMonth`,props:{modelValue:{type:[String,Object],default:void 0},color:{type:String,required:!0},locale:{type:String,required:!0},hasTime:{type:Boolean,required:!0},firstDayOfWeek:{type:Number,required:!0},inline:{type:Boolean,required:!0},calendarDate:{type:String,required:!0},offsetMonth:{type:Number,default:0},minDate:{type:String,default:void 0},maxDate:{type:String,default:void 0},disabledWeekly:{type:Array,required:!0},disabledDates:{type:Array,required:!0},hoverredDay:{type:Object,default:void 0},disabled:{type:Boolean,required:!0},range:{type:Boolean,required:!0}},emits:[`update:model-value`,`update:calendar-date`,`update:hoverred-day`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let modelValue=computed({get:()=>props.modelValue,set:value=>emits(`update:model-value`,value)});let hoverredDay=computed({get:()=>props.hoverredDay,set:value=>emits(`update:hoverred-day`,value)});function getCalendarDateWithOffset(offset){return dayjs(props.calendarDate).add(offset,`month`).format()}let calendarDateWithOffset=computed({get:()=>getCalendarDateWithOffset(props.offsetMonth),set:calendarDate=>emits(`update:calendar-date`,calendarDate)});return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`maz-picker-calendar-month maz:w-full maz:overflow-hidden maz:py-2`,{"--has-padding":!__props.range,"maz:px-2":!__props.range}])},[createVNode(MazPickerCalendarDays_default,{locale:__props.locale,"first-day-of-week":__props.firstDayOfWeek,class:`maz-picker-calendar-month__days maz:pb-2`},null,8,[`locale`,`first-day-of-week`]),createVNode(MazPickerCalendarGrid_default,{modelValue:modelValue.value,"onUpdate:modelValue":_cache[0]||=$event=>modelValue.value=$event,"hoverred-day":hoverredDay.value,"onUpdate:hoverredDay":_cache[1]||=$event=>hoverredDay.value=$event,locale:__props.locale,color:__props.color,"has-time":__props.hasTime,inline:__props.inline,"calendar-date":calendarDateWithOffset.value,"first-day-of-week":__props.firstDayOfWeek,"min-date":__props.minDate,"max-date":__props.maxDate,"disabled-weekly":__props.disabledWeekly,"disabled-dates":__props.disabledDates,disabled:__props.disabled,range:__props.range},null,8,[`modelValue`,`hoverred-day`,`locale`,`color`,`has-time`,`inline`,`calendar-date`,`first-day-of-week`,`min-date`,`max-date`,`disabled-weekly`,`disabled-dates`,`disabled`,`range`])],2))}});export{MazPickerCalendarMonth_default as default};
@@ -1 +1 @@
1
- import{t as MazBtn_default}from"../../chunks/MazBtn.C7LV-iX2.js";import{t as MazIcon_default}from"../../chunks/MazIcon.CblJ-8Iu.js";import{computed,createElementBlock,createTextVNode,createVNode,defineComponent,openBlock,toDisplayString,unref,withCtx}from"vue";import{MazChevronLeft}from"@maz-ui/icons/raw/MazChevronLeft";import{formatDate}from"@maz-ui/utils/helpers/formatDate";import dayjs from"dayjs/esm";import{capitalize}from"@maz-ui/utils/helpers/capitalize";var _hoisted_1={class:`m-date-picker-calendar-switcher maz:flex maz:space-x-2 maz:border-b maz:border-divider maz:px-2 maz:py-1`};var MazPickerCalendarSwitcher_default=defineComponent({__name:`MazPickerCalendarSwitcher`,props:{calendarDate:{type:String,default:void 0},locale:{type:String,required:!0},double:{type:Boolean,required:!0}},emits:[`previous`,`next`,`open-month-switcher`,`open-year-switcher`,`update:calendar-date`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let calendarDate2=computed(()=>dayjs(props.calendarDate));let monthLabel=computed(()=>props.double?`${capitalize(formatDate(calendarDate2.value.format(),props.locale,{month:`short`})??calendarDate2.value.format())} - ${capitalize(formatDate(calendarDate2.value.add(1,`month`).format(),props.locale,{month:`short`})??calendarDate2.value.add(1,`month`).format())}`:capitalize(formatDate(calendarDate2.value.format(),props.locale,{month:`short`})??calendarDate2.value.format()));let yearLabel=computed(()=>formatDate(calendarDate2.value.format(),props.locale,{year:`numeric`}));function previousMonth(){emits(`update:calendar-date`,dayjs(props.calendarDate).subtract(1,`month`).format())}function nextMonth(){emits(`update:calendar-date`,dayjs(props.calendarDate).add(1,`month`).format())}return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,_hoisted_1,[createVNode(MazBtn_default,{size:`xs`,color:`transparent`,type:`button`,onClick:previousMonth},{default:withCtx(()=>[createVNode(MazIcon_default,{icon:unref(MazChevronLeft),class:`maz:text-lg`},null,8,[`icon`])]),_:1}),createVNode(MazBtn_default,{size:`sm`,color:`transparent`,type:`button`,class:`m-date-picker-calendar-switcher__date maz:flex-1 maz:truncate maz:text-center`,onClick:_cache[0]||=$event=>_ctx.$emit(`open-month-switcher`,$event)},{default:withCtx(()=>[createTextVNode(toDisplayString(monthLabel.value),1)]),_:1}),createVNode(MazBtn_default,{size:`sm`,color:`transparent`,type:`button`,class:`m-date-picker-calendar-switcher__date maz:flex-1 maz:truncate maz:text-center`,onClick:_cache[1]||=$event=>_ctx.$emit(`open-year-switcher`,$event)},{default:withCtx(()=>[createTextVNode(toDisplayString(yearLabel.value),1)]),_:1}),createVNode(MazBtn_default,{size:`xs`,color:`transparent`,type:`button`,onClick:nextMonth},{default:withCtx(()=>[createVNode(MazIcon_default,{icon:unref(MazChevronLeft),class:`maz:rotate-180 maz:text-lg`},null,8,[`icon`])]),_:1})]))}});export{MazPickerCalendarSwitcher_default as default};
1
+ import{t as MazBtn_default}from"../../chunks/MazBtn.BDvqcYIY.js";import{t as MazIcon_default}from"../../chunks/MazIcon.CblJ-8Iu.js";import{computed,createElementBlock,createTextVNode,createVNode,defineComponent,openBlock,toDisplayString,unref,withCtx}from"vue";import{MazChevronLeft}from"@maz-ui/icons/raw/MazChevronLeft";import{formatDate}from"@maz-ui/utils/helpers/formatDate";import dayjs from"dayjs/esm";import{capitalize}from"@maz-ui/utils/helpers/capitalize";var _hoisted_1={class:`m-date-picker-calendar-switcher maz:flex maz:space-x-2 maz:border-b maz:border-divider maz:px-2 maz:py-1`};var MazPickerCalendarSwitcher_default=defineComponent({__name:`MazPickerCalendarSwitcher`,props:{calendarDate:{type:String,default:void 0},locale:{type:String,required:!0},double:{type:Boolean,required:!0}},emits:[`previous`,`next`,`open-month-switcher`,`open-year-switcher`,`update:calendar-date`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let calendarDate2=computed(()=>dayjs(props.calendarDate));let monthLabel=computed(()=>props.double?`${capitalize(formatDate(calendarDate2.value.format(),props.locale,{month:`short`})??calendarDate2.value.format())} - ${capitalize(formatDate(calendarDate2.value.add(1,`month`).format(),props.locale,{month:`short`})??calendarDate2.value.add(1,`month`).format())}`:capitalize(formatDate(calendarDate2.value.format(),props.locale,{month:`short`})??calendarDate2.value.format()));let yearLabel=computed(()=>formatDate(calendarDate2.value.format(),props.locale,{year:`numeric`}));function previousMonth(){emits(`update:calendar-date`,dayjs(props.calendarDate).subtract(1,`month`).format())}function nextMonth(){emits(`update:calendar-date`,dayjs(props.calendarDate).add(1,`month`).format())}return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,_hoisted_1,[createVNode(MazBtn_default,{size:`xs`,color:`transparent`,type:`button`,onClick:previousMonth},{default:withCtx(()=>[createVNode(MazIcon_default,{icon:unref(MazChevronLeft),class:`maz:text-lg`},null,8,[`icon`])]),_:1}),createVNode(MazBtn_default,{size:`sm`,color:`transparent`,type:`button`,class:`m-date-picker-calendar-switcher__date maz:flex-1 maz:truncate maz:text-center`,onClick:_cache[0]||=$event=>_ctx.$emit(`open-month-switcher`,$event)},{default:withCtx(()=>[createTextVNode(toDisplayString(monthLabel.value),1)]),_:1}),createVNode(MazBtn_default,{size:`sm`,color:`transparent`,type:`button`,class:`m-date-picker-calendar-switcher__date maz:flex-1 maz:truncate maz:text-center`,onClick:_cache[1]||=$event=>_ctx.$emit(`open-year-switcher`,$event)},{default:withCtx(()=>[createTextVNode(toDisplayString(yearLabel.value),1)]),_:1}),createVNode(MazBtn_default,{size:`xs`,color:`transparent`,type:`button`,onClick:nextMonth},{default:withCtx(()=>[createVNode(MazIcon_default,{icon:unref(MazChevronLeft),class:`maz:rotate-180 maz:text-lg`},null,8,[`icon`])]),_:1})]))}});export{MazPickerCalendarSwitcher_default as default};
@@ -1 +1 @@
1
- import{t as _plugin_vue_export_helper_default}from"../../chunks/_plugin-vue_export-helper.zP_plvmB.js";import{t as MazBtn_default}from"../../chunks/MazBtn.C7LV-iX2.js";import{t as MazIcon_default}from"../../chunks/MazIcon.CblJ-8Iu.js";import{f as isSameDate}from"../../chunks/utils.CjLBQJki.js";import{Fragment,computed,createBlock,createElementBlock,createElementVNode,createTextVNode,createVNode,defineComponent,normalizeClass,openBlock,renderList,toDisplayString,unref,withCtx,withModifiers}from"vue";import{MazXMark}from"@maz-ui/icons/raw/MazXMark";import{formatDate}from"@maz-ui/utils/helpers/formatDate";import dayjs from"dayjs/esm";import{capitalize}from"@maz-ui/utils/helpers/capitalize";import '../../assets/MazPickerMonthSwitcher.CiMwoYth.css';var _hoisted_1={class:`maz-picker-month-switcher maz:absolute maz:inset-0 maz:z-1 maz:flex maz:flex-col maz:bg-container`};var _hoisted_2={class:`maz-picker-month-switcher__header maz:flex maz:justify-end maz:border-b maz:border-divider maz:p-2`};var MazPickerMonthSwitcher_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazPickerMonthSwitcher`,props:{calendarDate:{type:String,required:!0},color:{type:String,required:!0},locale:{type:String,required:!0},double:{type:Boolean,required:!0}},emits:[`update:calendar-date`,`close`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let months=computed(()=>Array.from({length:12},(_v,i)=>i).map(monthNumber=>{let monthDate=dayjs(props.calendarDate).set(`month`,monthNumber);return props.double?{label:`${capitalize(formatDate(monthDate.format(),props.locale,{month:`short`})??monthDate.add(1,`month`).format())} - ${capitalize(formatDate(monthDate.add(1,`month`).format(),props.locale,{month:`short`})??monthDate.add(1,`month`).format())}`,date:monthDate}:{label:capitalize(formatDate(monthDate.format(),props.locale,{month:`long`})??monthDate.format()),date:monthDate}}));function selectMonth(date){emits(`update:calendar-date`,date.format()),emits(`close`)}return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,_hoisted_1,[createElementVNode(`div`,_hoisted_2,[createVNode(MazBtn_default,{size:`xs`,color:`transparent`,type:`button`,onClick:_cache[0]||=withModifiers($event=>_ctx.$emit(`close`,$event),[`stop`])},{default:withCtx(()=>[createVNode(MazIcon_default,{icon:unref(MazXMark),class:`maz:text-lg`},null,8,[`icon`])]),_:1})]),createElementVNode(`div`,{class:normalizeClass([`maz-picker-month-switcher__main maz:grid maz:flex-1 maz:flex-center maz:gap-1 maz:overflow-y-auto maz:p-2`,[__props.double?`--has-double`:``,__props.double?`maz:grid-cols-3`:`maz:grid-cols-2`]])},[(openBlock(!0),createElementBlock(Fragment,null,renderList(months.value,month=>(openBlock(),createBlock(MazBtn_default,{key:month.label,size:props.double?`sm`:`xs`,class:normalizeClass({"--is-selected":unref(isSameDate)(month.date,__props.calendarDate,`month`)}),color:unref(isSameDate)(month.date,__props.calendarDate,`month`)?__props.color:`transparent`,type:`button`,onClick:withModifiers($event=>selectMonth(month.date),[`stop`])},{default:withCtx(()=>[createTextVNode(toDisplayString(month.label),1)]),_:2},1032,[`size`,`class`,`color`,`onClick`]))),128))],2)]))}}),[[`__scopeId`,`data-v-89ce5d38`]]);export{MazPickerMonthSwitcher_default as default};
1
+ import{t as _plugin_vue_export_helper_default}from"../../chunks/_plugin-vue_export-helper.zP_plvmB.js";import{t as MazBtn_default}from"../../chunks/MazBtn.BDvqcYIY.js";import{t as MazIcon_default}from"../../chunks/MazIcon.CblJ-8Iu.js";import{f as isSameDate}from"../../chunks/utils.CjLBQJki.js";import{Fragment,computed,createBlock,createElementBlock,createElementVNode,createTextVNode,createVNode,defineComponent,normalizeClass,openBlock,renderList,toDisplayString,unref,withCtx,withModifiers}from"vue";import{MazXMark}from"@maz-ui/icons/raw/MazXMark";import{formatDate}from"@maz-ui/utils/helpers/formatDate";import dayjs from"dayjs/esm";import{capitalize}from"@maz-ui/utils/helpers/capitalize";import '../../assets/MazPickerMonthSwitcher.CiMwoYth.css';var _hoisted_1={class:`maz-picker-month-switcher maz:absolute maz:inset-0 maz:z-1 maz:flex maz:flex-col maz:bg-container`};var _hoisted_2={class:`maz-picker-month-switcher__header maz:flex maz:justify-end maz:border-b maz:border-divider maz:p-2`};var MazPickerMonthSwitcher_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazPickerMonthSwitcher`,props:{calendarDate:{type:String,required:!0},color:{type:String,required:!0},locale:{type:String,required:!0},double:{type:Boolean,required:!0}},emits:[`update:calendar-date`,`close`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let months=computed(()=>Array.from({length:12},(_v,i)=>i).map(monthNumber=>{let monthDate=dayjs(props.calendarDate).set(`month`,monthNumber);return props.double?{label:`${capitalize(formatDate(monthDate.format(),props.locale,{month:`short`})??monthDate.add(1,`month`).format())} - ${capitalize(formatDate(monthDate.add(1,`month`).format(),props.locale,{month:`short`})??monthDate.add(1,`month`).format())}`,date:monthDate}:{label:capitalize(formatDate(monthDate.format(),props.locale,{month:`long`})??monthDate.format()),date:monthDate}}));function selectMonth(date){emits(`update:calendar-date`,date.format()),emits(`close`)}return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,_hoisted_1,[createElementVNode(`div`,_hoisted_2,[createVNode(MazBtn_default,{size:`xs`,color:`transparent`,type:`button`,onClick:_cache[0]||=withModifiers($event=>_ctx.$emit(`close`,$event),[`stop`])},{default:withCtx(()=>[createVNode(MazIcon_default,{icon:unref(MazXMark),class:`maz:text-lg`},null,8,[`icon`])]),_:1})]),createElementVNode(`div`,{class:normalizeClass([`maz-picker-month-switcher__main maz:grid maz:flex-1 maz:flex-center maz:gap-1 maz:overflow-y-auto maz:p-2`,[__props.double?`--has-double`:``,__props.double?`maz:grid-cols-3`:`maz:grid-cols-2`]])},[(openBlock(!0),createElementBlock(Fragment,null,renderList(months.value,month=>(openBlock(),createBlock(MazBtn_default,{key:month.label,size:props.double?`sm`:`xs`,class:normalizeClass({"--is-selected":unref(isSameDate)(month.date,__props.calendarDate,`month`)}),color:unref(isSameDate)(month.date,__props.calendarDate,`month`)?__props.color:`transparent`,type:`button`,onClick:withModifiers($event=>selectMonth(month.date),[`stop`])},{default:withCtx(()=>[createTextVNode(toDisplayString(month.label),1)]),_:2},1032,[`size`,`class`,`color`,`onClick`]))),128))],2)]))}}),[[`__scopeId`,`data-v-89ce5d38`]]);export{MazPickerMonthSwitcher_default as default};
@@ -1 +1 @@
1
- import{t as _plugin_vue_export_helper_default}from"../../chunks/_plugin-vue_export-helper.zP_plvmB.js";import{t as MazBtn_default}from"../../chunks/MazBtn.C7LV-iX2.js";import{Fragment,createBlock,createElementBlock,createTextVNode,defineComponent,normalizeClass,openBlock,ref,renderList,toDisplayString,watch,withCtx,withModifiers}from"vue";import '../../assets/MazPickerShortcuts.CbWJ5TeL.css';var _hoisted_1={class:`maz-picker-shortcuts maz:flex maz:flex-col maz:items-start maz:gap-1 maz:overflow-y-auto maz:border-e maz:border-divider maz:p-2`};var MazPickerShortcuts_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazPickerShortcuts`,props:{color:{},modelValue:{},shortcuts:{},double:{type:Boolean},shortcut:{},disabled:{type:Boolean}},emits:[`update:model-value`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let selectedShortcut=ref(props.shortcut);function selectShortcut(value,identifier){selectedShortcut.value=identifier,emits(`update:model-value`,value)}return watch(()=>props.modelValue,value=>{value?.end||(selectedShortcut.value=void 0)}),watch(()=>props.shortcut,shortcut=>{let newShortcut=props.shortcuts&&props.shortcuts.find(({identifier})=>shortcut===identifier);if(newShortcut){let{value,identifier}=newShortcut;selectShortcut(value,identifier)}},{immediate:!0}),(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,_hoisted_1,[(openBlock(!0),createElementBlock(Fragment,null,renderList(__props.shortcuts,({identifier,label,value})=>(openBlock(),createBlock(MazBtn_default,{key:identifier,type:`button`,size:`sm`,disabled:__props.disabled,color:identifier===selectedShortcut.value?props.color:`transparent`,class:normalizeClass({"--is-selected":identifier===selectedShortcut.value}),onClick:withModifiers($event=>selectShortcut(value,identifier),[`stop`])},{default:withCtx(()=>[createTextVNode(toDisplayString(label),1)]),_:2},1032,[`disabled`,`color`,`class`,`onClick`]))),128))]))}}),[[`__scopeId`,`data-v-9b6d7c08`]]);export{MazPickerShortcuts_default as default};
1
+ import{t as _plugin_vue_export_helper_default}from"../../chunks/_plugin-vue_export-helper.zP_plvmB.js";import{t as MazBtn_default}from"../../chunks/MazBtn.BDvqcYIY.js";import{Fragment,createBlock,createElementBlock,createTextVNode,defineComponent,normalizeClass,openBlock,ref,renderList,toDisplayString,watch,withCtx,withModifiers}from"vue";import '../../assets/MazPickerShortcuts.CbWJ5TeL.css';var _hoisted_1={class:`maz-picker-shortcuts maz:flex maz:flex-col maz:items-start maz:gap-1 maz:overflow-y-auto maz:border-e maz:border-divider maz:p-2`};var MazPickerShortcuts_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazPickerShortcuts`,props:{color:{},modelValue:{},shortcuts:{},double:{type:Boolean},shortcut:{},disabled:{type:Boolean}},emits:[`update:model-value`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let selectedShortcut=ref(props.shortcut);function selectShortcut(value,identifier){selectedShortcut.value=identifier,emits(`update:model-value`,value)}return watch(()=>props.modelValue,value=>{value?.end||(selectedShortcut.value=void 0)}),watch(()=>props.shortcut,shortcut=>{let newShortcut=props.shortcuts&&props.shortcuts.find(({identifier})=>shortcut===identifier);if(newShortcut){let{value,identifier}=newShortcut;selectShortcut(value,identifier)}},{immediate:!0}),(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,_hoisted_1,[(openBlock(!0),createElementBlock(Fragment,null,renderList(__props.shortcuts,({identifier,label,value})=>(openBlock(),createBlock(MazBtn_default,{key:identifier,type:`button`,size:`sm`,disabled:__props.disabled,color:identifier===selectedShortcut.value?props.color:`transparent`,class:normalizeClass({"--is-selected":identifier===selectedShortcut.value}),onClick:withModifiers($event=>selectShortcut(value,identifier),[`stop`])},{default:withCtx(()=>[createTextVNode(toDisplayString(label),1)]),_:2},1032,[`disabled`,`color`,`class`,`onClick`]))),128))]))}}),[[`__scopeId`,`data-v-9b6d7c08`]]);export{MazPickerShortcuts_default as default};