@zydon/common 2.8.68 → 2.8.69

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 (96) hide show
  1. package/dist/{chunk-CYWFK4OE.js → chunk-2HAPOY5M.js} +2 -2
  2. package/dist/chunk-2ZJUGM2S.js +7 -0
  3. package/dist/chunk-2ZJUGM2S.js.map +1 -0
  4. package/dist/{chunk-5PUQMKA5.js → chunk-3BQAO7XM.js} +5 -5
  5. package/dist/chunk-3BQAO7XM.js.map +1 -0
  6. package/dist/{chunk-JSL5OEWZ.js → chunk-5J35UAV6.js} +1 -1
  7. package/dist/chunk-5J35UAV6.js.map +1 -0
  8. package/dist/{chunk-GODJQLB7.js → chunk-5VTCWA4D.js} +2 -2
  9. package/dist/chunk-65DNEETS.js +34 -0
  10. package/dist/chunk-65DNEETS.js.map +1 -0
  11. package/dist/{chunk-PWR4GBUH.js → chunk-73KFQXIW.js} +2 -2
  12. package/dist/{chunk-6JTWZZRD.js → chunk-7GF4KRVL.js} +2 -2
  13. package/dist/{chunk-D7UUJ7FJ.js → chunk-BVPBGV4Y.js} +2 -2
  14. package/dist/{chunk-CWRUW77O.js → chunk-C2G7TCA7.js} +2 -2
  15. package/dist/chunk-FJBC6QA5.js +7 -0
  16. package/dist/chunk-FJBC6QA5.js.map +1 -0
  17. package/dist/{chunk-2A4XOLBZ.js → chunk-I3B772WD.js} +2 -2
  18. package/dist/chunk-JINCDD7Q.js +6 -0
  19. package/dist/chunk-JINCDD7Q.js.map +1 -0
  20. package/dist/chunk-L7AW7XP5.js +12 -0
  21. package/dist/chunk-L7AW7XP5.js.map +1 -0
  22. package/dist/chunk-Q3OO4DAC.js +16 -0
  23. package/dist/chunk-Q3OO4DAC.js.map +1 -0
  24. package/dist/{chunk-QMFFV7WM.js → chunk-TY7VOTWV.js} +2 -2
  25. package/dist/{chunk-LG2B5RFV.js → chunk-WLRSUL67.js} +2 -2
  26. package/dist/{chunk-O7SN6FIA.js → chunk-ZTTBPQJZ.js} +2 -2
  27. package/dist/components/AutocompleteDetailed/index.js +2 -2
  28. package/dist/components/CopyButton/index.js +2 -2
  29. package/dist/components/DataView/index.js +3 -3
  30. package/dist/components/DynamicDataView/index.js +18 -18
  31. package/dist/components/DynamicDataView/index.js.map +1 -1
  32. package/dist/components/EasyCropModal/index.js +2 -2
  33. package/dist/components/FileUpload/index.js +5 -5
  34. package/dist/components/FrameSkeleton/index.js +3 -3
  35. package/dist/components/Incrementer/index.js +1 -1
  36. package/dist/components/InfoCircle/index.js +1 -1
  37. package/dist/components/ListBundles/index.js +2 -2
  38. package/dist/components/ResponsivePopover/index.js +2 -2
  39. package/dist/components/Result/index.d.ts +1 -2
  40. package/dist/components/Result/index.js +1 -1
  41. package/dist/components/SelectList/index.js +2 -2
  42. package/dist/components/SelectableCards/index.js +2 -2
  43. package/dist/components/SeoPreview/index.js +2 -2
  44. package/dist/components/SmartText/index.js +2 -2
  45. package/dist/components/SmartText/index.js.map +1 -1
  46. package/dist/components/SwapList/index.js +1 -1
  47. package/dist/components/TextMaxLine/index.js +2 -2
  48. package/dist/components/Tooltip/index.js +1 -1
  49. package/dist/components/animate/index.js +2 -2
  50. package/dist/components/carousel/index.js +1 -1
  51. package/dist/components/form/AutocompleteDetailed/index.js +2 -2
  52. package/dist/components/form/Codes/index.js +1 -1
  53. package/dist/components/form/FileUpload/index.js +5 -5
  54. package/dist/components/form/Incrementer/index.js +1 -1
  55. package/dist/components/form/SelectList/index.js +2 -2
  56. package/dist/components/form/SelectableCards/index.js +2 -2
  57. package/dist/components/form/Webhook/index.js +11 -10
  58. package/dist/components/form/Webhook/index.js.map +1 -1
  59. package/dist/hooks/useActiveElement.js +1 -1
  60. package/dist/hooks/useActiveElement.js.map +1 -1
  61. package/dist/hooks/useCollapseSidebarOnMount.js +3 -3
  62. package/dist/hooks/useEventListener.js +1 -1
  63. package/dist/hooks/useLocalStorage.js +2 -2
  64. package/dist/hooks/useOnClickOutside.js +1 -1
  65. package/dist/hooks/useResponsive.d.ts +1 -1
  66. package/dist/hooks/useResponsive.js +1 -1
  67. package/dist/hooks/useUpload.js +3 -3
  68. package/dist/hooks/useUpload.js.map +1 -1
  69. package/dist/utils/sanitize-html.d.ts +3 -0
  70. package/dist/utils/sanitize-html.js +6 -0
  71. package/dist/utils/sanitize-html.js.map +1 -0
  72. package/package.json +2 -1
  73. package/dist/chunk-2MCLMTFV.js +0 -16
  74. package/dist/chunk-2MCLMTFV.js.map +0 -1
  75. package/dist/chunk-5PUQMKA5.js.map +0 -1
  76. package/dist/chunk-FQOV5EGQ.js +0 -12
  77. package/dist/chunk-FQOV5EGQ.js.map +0 -1
  78. package/dist/chunk-IJZCVZ32.js +0 -6
  79. package/dist/chunk-IJZCVZ32.js.map +0 -1
  80. package/dist/chunk-JSL5OEWZ.js.map +0 -1
  81. package/dist/chunk-KKVRDMSE.js +0 -7
  82. package/dist/chunk-KKVRDMSE.js.map +0 -1
  83. package/dist/chunk-RPO7AI5K.js +0 -7
  84. package/dist/chunk-RPO7AI5K.js.map +0 -1
  85. package/dist/chunk-TBFQ5PEL.js +0 -34
  86. package/dist/chunk-TBFQ5PEL.js.map +0 -1
  87. /package/dist/{chunk-CYWFK4OE.js.map → chunk-2HAPOY5M.js.map} +0 -0
  88. /package/dist/{chunk-GODJQLB7.js.map → chunk-5VTCWA4D.js.map} +0 -0
  89. /package/dist/{chunk-PWR4GBUH.js.map → chunk-73KFQXIW.js.map} +0 -0
  90. /package/dist/{chunk-6JTWZZRD.js.map → chunk-7GF4KRVL.js.map} +0 -0
  91. /package/dist/{chunk-D7UUJ7FJ.js.map → chunk-BVPBGV4Y.js.map} +0 -0
  92. /package/dist/{chunk-CWRUW77O.js.map → chunk-C2G7TCA7.js.map} +0 -0
  93. /package/dist/{chunk-2A4XOLBZ.js.map → chunk-I3B772WD.js.map} +0 -0
  94. /package/dist/{chunk-QMFFV7WM.js.map → chunk-TY7VOTWV.js.map} +0 -0
  95. /package/dist/{chunk-LG2B5RFV.js.map → chunk-WLRSUL67.js.map} +0 -0
  96. /package/dist/{chunk-O7SN6FIA.js.map → chunk-ZTTBPQJZ.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/carousel/breakpoints.ts","../src/components/carousel/carousel.tsx","../src/components/carousel/components/carousel-slide.tsx","../src/components/carousel/classes.ts","../src/components/carousel/components/carousel-arrow-buttons.tsx","../src/components/carousel/components/carousel-dot-buttons.tsx","../src/components/carousel/components/carousel-progress-bar.tsx","../src/components/carousel/components/carousel-thumbs.tsx","../src/components/carousel/hooks/use-carousel.ts","../src/components/carousel/hooks/use-carousel-arrows.ts","../src/components/carousel/hooks/use-carousel-auto-play.ts","../src/components/carousel/hooks/use-carousel-auto-scroll.ts","../src/components/carousel/hooks/use-carousel-dots.ts","../src/components/carousel/hooks/use-carousel-parallax.ts","../src/components/carousel/hooks/use-carousel-progress.ts","../src/components/carousel/hooks/use-thumbs.ts"],"names":["carouselBreakpoints","Children","isValidElement","Box","styled","carouselClasses","jsx","StyledRoot","prop","axis","slideSpacing","StyledContent","CarouselSlide","sx","options","children","other","slideSize","getSize","slidesToShow","acc","key","sizeByKey","getValue","value","StyledContainer","Carousel","carousel","slotProps","props","mainRef","direction","renderChildren","child","reactChild","theme","ButtonBase","buttonBaseClasses","Stack","useTheme","SvgIcon","Fragment","jsxs","CarouselArrowBasicButtons","totalSlides","selectedIndex","onClickPrev","onClickNext","disablePrev","disableNext","ArrowButton","CarouselArrowNumberButtons","varAlpha","CarouselArrowFloatButtons","baseStyles","stylesMode","svgIcon","svgSize","variant","arrowPrev","arrowNext","prevSvg","nextSvg","NoSsr","CarouselDotButtons","gap","onClickDot","scrollSnaps","fallbackCount","fallback","GAPS","SIZES","renderFallback","dotStyles","selected","_","index","StyledProgress","CarouselProgressBar","forwardRef","CarouselThumbs","ref","maskStyles","useMaskStyle","CarouselThumb","thumbType","src","imageRender","thumbAlt","sxThumb","Icon_default","bgcolor","useMemo","useEmblaCarousel","useCallback","useEffect","useState","useCarouselArrows","mainApi","setDisabledPrevBtn","setDisabledNextBtn","onSelect","_mainApi","useCarouselAutoPlay","isPlaying","setIsPlaying","onClickAutoplay","callback","autoplay","onTogglePlay","useCarouselAutoScroll","autoScroll","useCarouselDots","dotCount","setDotCount","setSelectedIndex","setScrollSnaps","onInit","useRef","useParallax","parallax","tweenFactor","tweenNodes","TWEEN_FACTOR_BASE","setTweenNodes","slideNode","setTweenFactor","tweenParallax","eventName","engine","scrollProgress","slidesInView","isScrollEvent","scrollSnap","snapIndex","diffToTarget","slideIndex","loopItem","target","sign","translateValue","tweenNode","useCarouselProgress","setScrollProgress","onScroll","progress","useThumbs","thumbsRef","thumbsApi","onClickThumb","useCarousel","plugins","pluginNames","plugin","_dots","_autoplay","_autoScroll","_progress","_thumbs","controls"],"mappings":"uFAAO,IAAMA,GAAsB,CACjC,GAAI,mBACJ,GAAI,qBACJ,GAAI,qBACJ,GAAI,sBACJ,GAAI,qBACN,ECLA,OAAS,YAAAC,GAAU,kBAAAC,OAAsB,QACzC,OAAOC,MAAS,oBAChB,OAAS,UAAAC,MAAc,uBCDvB,OAAOD,MAAS,oBAChB,OAAS,UAAAC,MAAc,uBCHhB,IAAMC,EAAkB,CAC7B,KAAM,sBACN,UAAW,2BAEX,KAAM,sBACN,IAAK,qBAEL,OAAQ,wBACR,YAAa,8BACb,UAAW,2BACX,UAAW,2BACX,SAAU,0BAEV,MAAO,uBACP,aAAc,gCAEd,OAAQ,wBACR,MAAO,uBACP,eAAgB,mCAChB,WAAY,8BAEZ,SAAU,0BACV,YAAa,+BACb,MAAO,CAAE,SAAU,kBAAmB,SAAU,iBAAkB,CACpE,EDoCU,cAAAC,MAAA,oBA7CV,IAAMC,GAAaH,EAAOD,EAAK,CAC7B,kBAAmBK,GAAQA,IAAS,QAAUA,IAAS,cACzD,CAAC,EAAe,CAAC,CAAE,KAAAC,EAAM,aAAAC,CAAa,KAAO,CAC3C,QAAS,QACT,SAAU,WACV,GAAID,IAAS,KAAO,CAClB,SAAU,EACV,YAAaC,CACf,EACA,GAAID,IAAS,KAAO,CAClB,UAAW,EACX,WAAYC,CACd,CACF,EAAE,EAEIC,GAAgBP,EAAOD,CAAG,EAAE,KAAO,CACvC,SAAU,SACV,SAAU,WACV,aAAc,SAChB,EAAE,EAIK,SAASS,EAAc,CAC5B,GAAAC,EACA,QAAAC,EACA,SAAAC,EACA,GAAGC,CACL,EAAkC,CAChC,IAAMC,EAAYC,GAAQJ,GAAS,YAAY,EAE/C,OACER,EAACC,GAAA,CACC,UAAU,KACV,KAAMO,GAAS,MAAQ,IACvB,aAAcA,GAAS,aACvB,UAAWT,EAAgB,MAC3B,GAAI,CACF,KAAMY,EACN,GAAGJ,CACL,EACC,GAAGG,EAEH,SAAAF,GAAS,SACRR,EAACK,GAAA,CAAc,UAAWN,EAAgB,aACxC,SAAAC,EAAC,OAAI,UAAU,yBAA0B,SAAAS,EAAS,EACpD,EAEAA,EAEJ,CAEJ,CAIA,SAASG,GAAQC,EAAsC,CACrD,OAAIA,GAAgB,OAAOA,GAAiB,SACnC,OAAO,KAAKA,CAAY,EAAE,OAAoB,CAACC,EAAKC,IAAQ,CACjE,IAAMC,EAAYH,EAAaE,CAAG,EAClC,OAAAD,EAAIC,CAAG,EAAIE,EAASD,CAAS,EACtBF,CACT,EAAG,CAAC,CAAC,EAGAG,EAASJ,CAAY,CAC9B,CAEA,SAASI,EAASC,EAAyB,EAAW,CACpD,GAAI,OAAOA,GAAU,SAAU,CAG7B,GAAI,EADFA,IAAU,QAAUA,EAAM,SAAS,GAAG,GAAKA,EAAM,SAAS,IAAI,GAE9D,MAAM,IAAI,MAAM,8CAA8C,EAGhE,MAAO,OAAOA,IAGhB,GAAI,OAAOA,GAAU,SACnB,MAAO,OAAO,IAAMA,KAItB,MAAM,IAAI,MACR,kEACF,CACF,CDtCQ,cAAAlB,MAAA,oBApDD,IAAMC,EAAaH,EAAOD,EAAK,CACpC,kBAAmBK,GAAQA,IAAS,MACtC,CAAC,EAAe,CAAC,CAAE,KAAAC,CAAK,KAAO,CAC7B,OAAQ,OACR,MAAO,OACP,SAAU,OACV,SAAU,SACV,SAAU,WACV,GAAIA,IAAS,KAAO,CAClB,OAAQ,MACV,CACF,EAAE,EAEWgB,EAAkBrB,EAAOD,EAAK,CACzC,kBAAmBK,GAAQA,IAAS,QAAUA,IAAS,cACzD,CAAC,EAAe,CAAC,CAAE,KAAAC,EAAM,aAAAC,CAAa,KAAO,CAC3C,QAAS,OACT,mBAAoB,SACpB,GAAID,IAAS,KAAO,CAClB,YAAa,mBACb,WAAY,QAAQC,SACtB,EACA,GAAID,IAAS,KAAO,CAClB,OAAQ,OACR,cAAe,SACf,YAAa,mBACb,UAAW,QAAQC,SACrB,CACF,EAAE,EAIK,SAASgB,GAAS,CACvB,SAAAC,EACA,SAAAZ,EACA,GAAAF,EACA,UAAAe,EACA,GAAGC,CACL,EAAkB,CAChB,GAAM,CAAE,QAAAC,EAAS,QAAAhB,CAAQ,EAAIa,EAEvBlB,EAAOK,GAAS,MAAQ,IAExBJ,EAAeI,GAAS,cAAgB,MAExCiB,EAAYjB,GAAS,WAAa,MAElCkB,EAAiB/B,GAAS,IAAIc,EAAUkB,GAAS,CACrD,GAAI/B,GAAe+B,CAAK,EAAG,CACzB,IAAMC,EAAaD,EAEnB,OACE3B,EAACM,EAAA,CAEC,QAASe,EAAS,QAClB,GAAIC,GAAW,MACd,GAAGC,EAEH,SAAAI,GALIC,EAAW,GAMlB,EAGJ,OAAO,IACT,CAAC,EAED,OACE5B,EAACC,EAAA,CACC,GAAIM,EACJ,KAAMJ,EACN,IAAKqB,EACL,IAAKC,EACL,UAAW1B,EAAgB,KAE3B,SAAAC,EAACmB,EAAA,CACC,UAAU,KACV,KAAMhB,EACN,aAAcC,EACd,UAAWL,EAAgB,UAC3B,GAAI,CACF,GAAIsB,EAAS,aAAa,SAAS,YAAY,GAAK,CAClD,WAAY,aACZ,WAAYQ,GACVA,EAAM,YAAY,OAAO,CAAC,QAAQ,EAAG,CACnC,OAAQA,EAAM,YAAY,OAAO,UACjC,SAAUA,EAAM,YAAY,SAAS,OACvC,CAAC,CACL,EACA,GAAGP,GAAW,SAChB,EAEC,SAAAI,EACH,EACF,CAEJ,CGxGA,OAAO7B,OAAS,oBAEhB,OAAOiC,IAAc,qBAAAC,OAAyB,2BAE9C,OAAOC,MAAW,sBAElB,OAAS,YAAAC,OAAgB,uBACzB,OAAOC,OAAa,wBAuBhB,OA6HA,YAAAC,GAhHE,OAAAnC,EAbF,QAAAoC,MAAA,oBAdG,SAASC,GAA0B,CACxC,QAAA7B,EACA,UAAAc,EACA,YAAAgB,EACA,cAAAC,EAEA,YAAAC,EACA,YAAAC,EACA,YAAAC,EACA,YAAAC,EACA,GAAApC,EACA,GAAGG,CACL,EAA2C,CACzC,OACE0B,EAACJ,EAAA,CACC,UAAU,MACV,WAAW,SACX,QAAQ,cACR,UAAWjC,EAAgB,OAC3B,GAAI,CACF,IAAK,GACL,OAAQ,EACR,MAAO,gBACP,GAAGQ,CACL,EACC,GAAGG,EAEJ,UAAAV,EAAC4C,EAAA,CACC,QAAQ,OACR,QAASpC,EACT,SAAUkC,EACV,QAASF,EACT,QAASlB,GAAW,SAAS,QAC7B,QAASA,GAAW,SAAS,QAC7B,GAAIA,GAAW,SAAS,GAC1B,EAEAtB,EAAC4C,EAAA,CACC,QAAQ,OACR,QAASpC,EACT,SAAUmC,EACV,QAASF,EACT,QAASnB,GAAW,SAAS,QAC7B,QAASA,GAAW,SAAS,QAC7B,GAAIA,GAAW,SAAS,GAC1B,GACF,CAEJ,CAIO,SAASuB,GAA2B,CACzC,QAAArC,EACA,UAAAc,EACA,YAAAgB,EACA,cAAAC,EAEA,YAAAC,EACA,YAAAC,EACA,YAAAC,EACA,YAAAC,EACA,GAAApC,EACA,GAAGG,CACL,EAA2C,CACzC,IAAMmB,EAAQI,GAAS,EAEvB,OACEG,EAACJ,EAAA,CACC,UAAU,MACV,WAAW,SACX,QAAQ,cACR,UAAWjC,EAAgB,OAC3B,GAAI,CACF,EAAG,GACH,IAAK,IACL,OAAQ,EACR,aAAc,KACd,MAAO,eACP,QAAS+C,EAASjB,EAAM,KAAK,QAAQ,KAAK,YAAY,EAAG,GAAI,EAC7D,GAAGtB,CACL,EACC,GAAGG,EAEJ,UAAAV,EAAC4C,EAAA,CACC,QAAQ,OACR,QAASpC,EACT,SAAUkC,EACV,QAASF,EACT,GAAI,CAAE,EAAG,IAAM,aAAc,UAAW,GAAGlB,GAAW,SAAS,EAAG,EAClE,QAASA,GAAW,SAAS,QAC7B,QAASA,GAAW,SAAS,SAAW,GAC1C,EAEAc,EAACvC,GAAA,CACC,UAAU,OACV,UAAWE,EAAgB,YAC3B,GAAI,CAAE,GAAI,GAAK,WAAY,WAAY,EACvC,cAAY,0BAEX,UAAAwC,EAAc,IAAED,GACnB,EAEAtC,EAAC4C,EAAA,CACC,QAAQ,OACR,QAASpC,EACT,SAAUmC,EACV,QAASF,EACT,GAAI,CAAE,EAAG,IAAM,aAAc,UAAW,GAAGnB,GAAW,SAAS,EAAG,EAClE,QAASA,GAAW,SAAS,QAC7B,QAASA,GAAW,SAAS,SAAW,GAC1C,GACF,CAEJ,CAIO,SAASyB,GAA0B,CACxC,QAAAvC,EACA,UAAAc,EACA,YAAAkB,EACA,YAAAC,EACA,YAAAC,EACA,YAAAC,CACF,EAA2C,CACzC,IAAMK,EAAwB,CAC5B,OAAQ,EACR,IAAK,MACL,aAAc,IACd,SAAU,WACV,MAAO,eACP,QAAS,eACT,UAAW,mBACX,UAAW,CAAE,QAAS,EAAI,EAC1B,CAACC,EAAW,IAAI,EAAG,CAAE,MAAO,UAAW,CACzC,EAEA,OACEb,EAAAD,GAAA,CACE,UAAAnC,EAAC4C,EAAA,CACC,QAAQ,OACR,QAASpC,EACT,SAAUkC,EACV,QAASF,EACT,QAASlB,GAAW,SAAS,QAC7B,QAASA,GAAW,SAAS,QAC7B,GAAI,CAAE,KAAM,IAAK,GAAG0B,EAAY,GAAG1B,GAAW,SAAS,EAAG,EAC5D,EAEAtB,EAAC4C,EAAA,CACC,QAAQ,OACR,QAASpC,EACT,SAAUmC,EACV,QAASF,EACT,QAASnB,GAAW,SAAS,QAC7B,QAASA,GAAW,SAAS,QAC7B,GAAI,CAAE,MAAO,IAAK,GAAG0B,EAAY,GAAG1B,GAAW,SAAS,EAAG,EAC7D,GACF,CAEJ,CAIO,SAASsB,EAAY,CAC1B,GAAArC,EACA,QAAA2C,EACA,QAAAC,EACA,QAAA3C,EACA,QAAA4C,EACA,GAAG1C,CACL,EAA+C,CAC7C,IAAM2C,EAAYD,IAAY,OACxBE,EAAYF,IAAY,OAExBG,EAAUL,GACdlD,EAAC,QACC,KAAK,eACL,SAAS,UACT,EAAE,wIACF,SAAS,UACX,EAGIwD,EAAUN,GACdlD,EAAC,QACC,KAAK,eACL,SAAS,UACT,EAAE,uIACF,SAAS,UACX,EAGF,OACEA,EAAC8B,GAAA,CACC,UACEuB,EAAYtD,EAAgB,UAAYA,EAAgB,UAE1D,aAAYsD,EAAY,cAAgB,cACxC,GAAI,CACF,EAAG,EACH,aAAc,MACd,UAAW,cACX,WAAYxB,GACVA,EAAM,YAAY,OAAO,CAAC,KAAK,EAAG,CAChC,OAAQA,EAAM,YAAY,OAAO,MACjC,SAAUA,EAAM,YAAY,SAAS,KACvC,CAAC,EACH,CAAC,KAAKE,GAAkB,UAAU,EAAG,CACnC,QAAS,EACX,EACA,GAAGxB,EACH,GAAIC,GAAS,YAAc,OAAS,CAClC,GAAI6C,GAAa,CAAE,MAAO,IAAK,KAAM,MAAO,EAC5C,GAAIC,GAAa,CAAE,KAAM,IAAK,MAAO,MAAO,CAC9C,CACF,EACC,GAAG5C,EAEJ,SAAAV,EAACkC,GAAA,CACC,UAAWnC,EAAgB,SAC3B,GAAI,CACF,MAAOoD,GAAW,GAClB,OAAQA,GAAW,GACnB,GAAI3C,GAAS,OAAS,KAAO,CAAE,UAAW,gBAAiB,EAC3D,GAAIA,GAAS,YAAc,OAAS,CAAE,UAAW,aAAc,CACjE,EAEC,SAAA6C,EAAYE,EAAUC,EACzB,EACF,CAEJ,CC1PA,OAAO3D,MAAS,oBAChB,OAAOiC,OAAgB,2BACvB,OAAO2B,OAAW,sBAClB,OAAS,YAAAxB,OAAgB,uBAkCrB,cAAAjC,MAAA,oBA1BG,SAAS0D,GAAmB,CACjC,GAAAnD,EACA,IAAAoD,EACA,UAAArC,EACA,WAAAsC,EACA,YAAAC,EACA,cAAAtB,EACA,cAAAuB,EAAgB,EAChB,QAAAV,EAAU,WACV,SAAAW,EAAW,GACX,GAAGrD,CACL,EAA4B,CAC1B,IAAMmB,EAAQI,GAAS,EAEjB+B,EAAO,CACX,OAAQL,GAAO,EACf,QAASA,GAAO,EAChB,SAAUA,GAAO,CACnB,EAEMM,EAAQ,CACZ,SAAU3C,GAAW,KAAK,MAAQ,GAClC,OAAQA,GAAW,KAAK,MAAQ,EAClC,EAEM4C,EACJlE,EAACH,EAAA,CACC,GAAI,CACF,OAAQoE,EAAM,SACd,MAAO,QAAQH,EAAgBG,EAAM,SAAWD,EAAK,UAAYF,EAAgB,SACjF,GAAIV,IAAY,UAAY,CAC1B,OAAQa,EAAM,OACd,MAAO,QAAQH,EAAgBG,EAAM,OAASD,EAAK,QAAUF,EAAgB,QAC/E,CACF,EACF,EAGIK,EAAY,CAChB,SAAWC,IAAuB,CAChC,MAAOH,EAAM,SACb,OAAQA,EAAM,SACd,YAAa,CACX,MAAO,EACP,OAAQ,EACR,QAAS,KACT,QAAS,IACT,aAAc,MACd,QAAS,eACT,WAAYpC,EAAM,YAAY,OAAO,CAAC,SAAS,EAAG,CAChD,OAAQA,EAAM,YAAY,OAAO,MACjC,SAAUA,EAAM,YAAY,SAAS,KACvC,CAAC,EACD,GAAIuC,GAAY,CAAE,QAAS,CAAE,CAC/B,CACF,GACA,QAAUA,IAAuB,CAC/B,MAAOH,EAAM,SACb,OAAQA,EAAM,SACd,YAAa,CACX,MAAO,EACP,OAAQ,EACR,QAAS,KACT,QAAS,IACT,aAAc,MACd,QAAS,eACT,WAAYpC,EAAM,YAAY,OAAO,CAAC,QAAS,SAAS,EAAG,CACzD,OAAQA,EAAM,YAAY,OAAO,MACjC,SAAUA,EAAM,YAAY,SAAS,KACvC,CAAC,EACD,GAAIuC,GAAY,CACd,MAAO,mBACP,QAAS,EACT,aAAc,CAChB,CACF,CACF,GACA,OAASA,IAAuB,CAC9B,MAAOH,EAAM,OACb,OAAQA,EAAM,OACd,aAAc,MACd,WAAY,UACZ,MAAO,gBACP,OAAQ,aAAanB,EAASjB,EAAM,KAAK,QAAQ,KAAK,YAAY,EAAG,GAAI,IACzE,GAAIuC,GAAY,CACd,MAAO,eACP,QAAS,eACT,WAAY,qBACZ,CAACnB,EAAW,IAAI,EAAG,CAAE,MAAO,UAAW,CACzC,CACF,EACF,EAEA,OACEjD,EAACyD,GAAA,CAAM,SAAUM,EAAWG,EAAiB,KAC3C,SAAAlE,EAACH,EAAA,CACC,cAAY,gBACZ,UAAU,KACV,UAAWE,EAAgB,KAC3B,GAAI,CACF,OAAQ,EACR,QAAS,cACT,GAAIqD,IAAY,YAAc,CAAE,IAAK,GAAGY,EAAK,YAAa,EAC1D,GAAIZ,IAAY,WAAa,CAAE,IAAK,GAAGY,EAAK,WAAY,EACxD,GAAIZ,IAAY,UAAY,CAAE,IAAK,GAAGY,EAAK,UAAW,EACtD,GAAGzD,CACL,EACC,GAAGG,EAEH,SAAAmD,EAAY,IAAI,CAACQ,EAAGC,IAAU,CAC7B,IAAMF,EAAWE,IAAU/B,EAE3B,OACEvC,EAACH,EAAA,CAAI,UAAU,KAAiB,GAAI,CAAE,QAAS,aAAc,EAC3D,SAAAG,EAAC8B,GAAA,CACC,cAAa,GACb,aAAY,OAAOwC,IACnB,UAAWvE,EAAgB,IAAI,OAC7BqE,EAAW,IAAIrE,EAAgB,MAAM,WAAa,EACpD,EACA,QAAS,IAAM6D,EAAWU,CAAK,EAC/B,GAAI,CACF,GAAIlB,IAAY,YAAce,EAAU,SAASC,CAAQ,EACzD,GAAIhB,IAAY,WAAae,EAAU,QAAQC,CAAQ,EACvD,GAAIhB,IAAY,UAAYe,EAAU,OAAOC,CAAQ,EACrD,CAAC,KAAKrE,EAAgB,MAAM,UAAU,EAAG,CACvC,GAAGuB,GAAW,KAAK,QACrB,EACA,GAAGA,GAAW,KAAK,EACrB,EAEC,SAAA8B,IAAY,UAAYkB,EAAQ,EACnC,GAnBuBA,CAoBzB,CAEJ,CAAC,EACH,EACF,CAEJ,CCrJA,OAAOzE,MAAS,oBAChB,OAAS,UAAAC,MAAc,uBAyCjB,cAAAE,MAAA,oBAlCN,IAAMC,GAAaH,EAAOD,CAAG,EAAE,CAAC,CAAE,MAAAgC,CAAM,KAAO,CAC7C,OAAQ,EACR,SAAU,IACV,MAAO,OACP,aAAc,EACd,SAAU,SACV,SAAU,WACV,MAAOA,EAAM,QAAQ,KAAK,QAC1B,gBAAiBA,EAAM,QAAQ,OACjC,EAAE,EAEI0C,GAAiBzE,EAAOD,CAAG,EAAE,KAAO,CACxC,IAAK,EACL,OAAQ,EACR,MAAO,OACP,KAAM,QACN,SAAU,WACV,gBAAiB,cACnB,EAAE,EAIK,SAAS2E,GAAoB,CAClC,MAAAtD,EACA,GAAAX,EACA,GAAGG,CACL,EAAwC,CACtC,OACEV,EAACC,GAAA,CACC,cAAY,oBACZ,GAAIM,EACJ,UAAWR,EAAgB,SAC1B,GAAGW,EAEJ,SAAAV,EAACuE,GAAA,CACC,cAAY,wBACZ,UAAWxE,EAAgB,YAC3B,GAAI,CACF,UAAW,eAAemB,eAC5B,EACF,EACF,CAEJ,CCpDA,OAAS,YAAAvB,GAAU,cAAA8E,GAAY,kBAAA7E,OAAsB,QAErD,OAAOC,OAAS,oBAEhB,OAAOiC,MAAgB,2BAEvB,OAAS,YAAAG,OAAgB,uBAgCjB,cAAAjC,MAAA,oBAfD,IAAM0E,GAAiBD,GAG5B,CAAC,CAAE,SAAAhE,EAAU,UAAAa,EAAW,QAAAd,EAAS,GAAAD,EAAI,GAAGG,CAAM,EAAGiE,IAAQ,CACzD,IAAMxE,EAAOK,GAAS,MAAQ,IAExBJ,EAAeI,GAAS,cAAgB,OAExCoE,EAAaC,GAAa1E,CAAI,EAE9BuB,EAAiB/B,GAAS,IAAIc,EAAUkB,GAAS,CACrD,GAAI/B,GAAe+B,CAAK,EAAG,CACzB,IAAMC,EAAaD,EAEnB,OACE3B,EAACM,EAAA,CAEC,QAAS,CAAE,GAAGE,EAAS,aAAAJ,CAAa,EACpC,GAAIkB,GAAW,MAEd,SAAAK,GAJIC,EAAW,GAKlB,EAGJ,OAAO,IACT,CAAC,EAED,OACE5B,EAACC,EAAA,CACC,IAAK0E,EACL,KAAMxE,EACN,cAAY,gBACZ,UAAWJ,EAAgB,OAC3B,GAAI,CACF,WAAY,EACZ,GAAII,IAAS,KAAO,CAAE,EAAG,GAAK,SAAU,CAAE,EAC1C,GAAIA,IAAS,KAAO,CAAE,EAAG,GAAK,UAAW,CAAE,EAC3C,GAAI,CAACmB,GAAW,aAAesD,EAC/B,GAAGrE,CACL,EACC,GAAGG,EAEJ,SAAAV,EAACmB,EAAA,CACC,UAAU,KACV,KAAMhB,EACN,cAAY,qBACZ,aAAcC,EACd,UAAWL,EAAgB,eAC3B,GAAI,CACF,GAAGuB,GAAW,SAChB,EAEC,SAAAI,EACH,EACF,CAEJ,CAAC,EACDgD,GAAe,YAAc,iBAEtB,SAASI,GAAc,CAC5B,UAAAC,EAAY,QACZ,GAAAxE,EACA,IAAAyE,EACA,MAAAV,EACA,SAAAF,EACA,YAAAa,EACA,SAAAC,EACA,GAAGxE,CACL,EAAyC,CACvC,GAAIqE,IAAc,UAAYC,GAAOC,GAAc,CACjD,IAAME,EAA0B,CAC9B,MAAO,EACP,OAAQ,EACR,YAAa,EACb,UAAW,QACX,aAAc,SAChB,EAEA,OACEnF,EAAC8B,EAAA,CACC,UAAW/B,EAAgB,MAC3B,cAAY,iBACZ,GAAI,CACF,MAAO,GACP,OAAQ,GACR,QAAS,IACT,WAAY,EACZ,OAAQ,UACR,aAAc,KACd,WAAY8B,GACVA,EAAM,YAAY,OAAO,CAAC,UAAW,YAAY,EAAG,CAClD,OAAQA,EAAM,YAAY,OAAO,MACjC,SAAUA,EAAM,YAAY,SAAS,KACvC,CAAC,EACH,GAAIuC,GAAY,CACd,QAAS,EACT,UAAWvC,GAAS,aAAaA,EAAM,KAAK,QAAQ,QAAQ,MAC9D,EACA,GAAGtB,CACL,EACC,GAAGG,EAEH,SAAAuE,IAAc,CACb,GAAIE,EACJ,QAASpF,EAAgB,UAC3B,CAAC,GACCC,EAACH,GAAA,CACC,UAAU,MACV,IAAKqF,GAAY,mBAAmBZ,IACpC,IAAKU,EACL,cAAY,uBACZ,UAAWjF,EAAgB,WAC3B,GAAIoF,EACN,EAEJ,EAIJ,OAAIJ,IAAc,QAEd/E,EAAC8B,EAAA,CACC,UAAW/B,EAAgB,MAC3B,cAAY,iBACZ,GAAI,CACF,MAAO,GACP,OAAQ,GACR,QAAS,IACT,WAAY,EACZ,OAAQ,UACR,aAAc,KACd,MAAO8B,GAASA,EAAM,KAAK,QAAQ,QAAQ,KAC3C,WAAYA,GACVA,EAAM,YAAY,OAAO,CAAC,UAAW,YAAY,EAAG,CAClD,OAAQA,EAAM,YAAY,OAAO,MACjC,SAAUA,EAAM,YAAY,SAAS,KACvC,CAAC,EACH,GAAIuC,GAAY,CACd,QAAS,EACT,UAAWvC,GAAS,aAAaA,EAAM,KAAK,QAAQ,QAAQ,MAC9D,EACA,GAAGtB,CACL,EACC,GAAGG,EAEJ,SAAAV,EAACoF,EAAA,CAAK,KAAK,cAAc,MAAO,GAAI,EACtC,EAIG,IACT,CAIA,SAASP,GAAa1E,EAA0C,CAC9D,IAAM0B,EAAQI,GAAS,EAEjBe,EAAa,CACjB,OAAQ,EACR,QAAS,KACT,SAAU,UACZ,EAEMqC,EAAU,GAAGxD,EAAM,KAAK,QAAQ,WAAW,cAAciB,EAASjB,EAAM,KAAK,QAAQ,WAAW,aAAc,CAAC,UAErH,OAAI1B,IAAS,IACJ,CACL,sBAAuB,CACrB,GAAG6C,EACH,KAAM,EACN,OAAQ,GACR,MAAO,MACT,EACA,YAAa,CACX,IAAK,GACL,WAAY,8BAA8BqC,GAC5C,EACA,WAAY,CACV,OAAQ,GACR,WAAY,2BAA2BA,GACzC,CACF,EAGK,CACL,sBAAuB,CACrB,GAAGrC,EACH,IAAK,EACL,MAAO,GACP,OAAQ,MACV,EACA,YAAa,CACX,KAAM,GACN,WAAY,6BAA6BqC,GAC3C,EACA,WAAY,CACV,MAAO,GACP,WAAY,4BAA4BA,GAC1C,CACF,CACF,CCjOA,OAAS,WAAAC,OAAe,QAExB,OAAOC,OAAsB,uBCF7B,OAAS,eAAAC,EAAa,aAAAC,GAAW,YAAAC,MAAgB,QAO1C,IAAMC,EACXC,GAC4B,CAC5B,GAAM,CAAClD,EAAamD,CAAkB,EAAIH,EAAS,EAAI,EAEjD,CAAC/C,EAAamD,CAAkB,EAAIJ,EAAS,EAAI,EAEjDlD,EAAcgD,EAAY,IAAM,CAC/BI,GACLA,EAAQ,WAAW,CACrB,EAAG,CAACA,CAAO,CAAC,EAENnD,EAAc+C,EAAY,IAAM,CAC/BI,GACLA,EAAQ,WAAW,CACrB,EAAG,CAACA,CAAO,CAAC,EAENG,EAAWP,EAAaQ,GAAgC,CAC5DH,EAAmB,CAACG,EAAS,cAAc,CAAC,EAC5CF,EAAmB,CAACE,EAAS,cAAc,CAAC,CAC9C,EAAG,CAAC,CAAC,EAEL,OAAAP,GAAU,IAAM,CACd,GAAKG,EAEL,OAAAG,EAASH,CAAO,EAChBA,EAAQ,GAAG,SAAUG,CAAQ,EAC7BH,EAAQ,GAAG,SAAUG,CAAQ,EAEtB,IAAM,CACXH,EAAQ,IAAI,SAAUG,CAAQ,EAC9BH,EAAQ,IAAI,SAAUG,CAAQ,CAChC,CACF,EAAG,CAACH,EAASG,CAAQ,CAAC,EAEf,CACL,YAAArD,EACA,YAAAC,EACA,YAAAH,EACA,YAAAC,CACF,CACF,EC9CA,OAAS,eAAA+C,GAAa,aAAAC,GAAW,YAAAC,OAAgB,QAO1C,SAASO,GACdL,EAC2B,CAC3B,GAAM,CAACM,EAAWC,CAAY,EAAIT,GAAS,EAAK,EAE1CU,EAAkBZ,GACrBa,GAAyB,CACxB,IAAMC,EAAWV,GAAS,QAAQ,GAAG,SACrC,GAAI,CAACU,EAAU,QAGbA,EAAS,QAAQ,oBAAsB,GACnCA,EAAS,MACTA,EAAS,MAEH,EACZD,EAAS,CACX,EACA,CAACT,CAAO,CACV,EAEMW,EAAef,GAAY,IAAM,CACrC,IAAMc,EAAWV,GAAS,QAAQ,GAAG,SACrC,GAAI,CAACU,EAAU,QAEIA,EAAS,UAAU,EAAIA,EAAS,KAAOA,EAAS,MACxD,CACb,EAAG,CAACV,CAAO,CAAC,EAEZ,OAAAH,GAAU,IAAM,CACd,IAAMa,EAAWV,GAAS,QAAQ,GAAG,SAChCU,IAELH,EAAaG,EAAS,UAAU,CAAC,EACjCV,EACG,GAAG,gBAAiB,IAAMO,EAAa,EAAI,CAAC,EAC5C,GAAG,gBAAiB,IAAMA,EAAa,EAAK,CAAC,EAC7C,GAAG,SAAU,IAAMA,EAAa,EAAK,CAAC,EAC3C,EAAG,CAACP,CAAO,CAAC,EAEL,CAAE,UAAAM,EAAW,aAAAK,EAAc,gBAAAH,CAAgB,CACpD,CChDA,OAAS,eAAAZ,GAAa,aAAAC,GAAW,YAAAC,OAAgB,QAO1C,SAASc,GACdZ,EAC2B,CAC3B,GAAM,CAACM,EAAWC,CAAY,EAAIT,GAAS,EAAK,EAE1CU,EAAkBZ,GACrBa,GAAyB,CACxB,IAAMI,EAAab,GAAS,QAAQ,GAAG,WACvC,GAAI,CAACa,EAAY,QAGfA,EAAW,QAAQ,oBAAsB,GACrCA,EAAW,MACXA,EAAW,MAEL,EACZJ,EAAS,CACX,EACA,CAACT,CAAO,CACV,EAEMW,EAAef,GAAY,IAAM,CACrC,IAAMiB,EAAab,GAAS,QAAQ,GAAG,WACvC,GAAI,CAACa,EAAY,QAEEA,EAAW,UAAU,EACpCA,EAAW,KACXA,EAAW,MACJ,CACb,EAAG,CAACb,CAAO,CAAC,EAEZ,OAAAH,GAAU,IAAM,CACd,IAAMgB,EAAab,GAAS,QAAQ,GAAG,WAClCa,IAELN,EAAaM,EAAW,UAAU,CAAC,EACnCb,EACG,GAAG,kBAAmB,IAAMO,EAAa,EAAI,CAAC,EAC9C,GAAG,kBAAmB,IAAMA,EAAa,EAAK,CAAC,EAC/C,GAAG,SAAU,IAAMA,EAAa,EAAK,CAAC,EAC3C,EAAG,CAACP,CAAO,CAAC,EAEL,CAAE,UAAAM,EAAW,aAAAK,EAAc,gBAAAH,CAAgB,CACpD,CCpDA,OAAS,eAAAZ,EAAa,aAAAC,GAAW,YAAAC,MAAgB,QAK1C,SAASgB,GACdd,EACuB,CACvB,GAAM,CAACe,EAAUC,CAAW,EAAIlB,EAAS,CAAC,EAEpC,CAACnD,EAAesE,CAAgB,EAAInB,EAAS,CAAC,EAE9C,CAAC7B,EAAaiD,CAAc,EAAIpB,EAAmB,CAAC,CAAC,EAErD9B,EAAa4B,EAChBlB,GAAkB,CACZsB,GACLA,EAAQ,SAAStB,CAAK,CACxB,EACA,CAACsB,CAAO,CACV,EAEMmB,EAASvB,EAAaQ,GAAgC,CAC1Dc,EAAed,EAAS,eAAe,CAAC,CAC1C,EAAG,CAAC,CAAC,EAECD,EAAWP,EAAaQ,GAAgC,CAC5Da,EAAiBb,EAAS,mBAAmB,CAAC,EAC9CY,EAAYZ,EAAS,eAAe,EAAE,MAAM,CAC9C,EAAG,CAAC,CAAC,EAEL,OAAAP,GAAU,IAAM,CACd,GAAKG,EAEL,OAAAmB,EAAOnB,CAAO,EACdG,EAASH,CAAO,EAChBA,EAAQ,GAAG,SAAUmB,CAAM,EAC3BnB,EAAQ,GAAG,SAAUG,CAAQ,EAC7BH,EAAQ,GAAG,SAAUG,CAAQ,EAEtB,IAAM,CACXH,EAAQ,IAAI,SAAUmB,CAAM,EAC5BnB,EAAQ,IAAI,SAAUG,CAAQ,EAC9BH,EAAQ,IAAI,SAAUG,CAAQ,CAChC,CACF,EAAG,CAACH,EAASmB,EAAQhB,CAAQ,CAAC,EAEvB,CACL,SAAAY,EACA,YAAA9C,EACA,cAAAtB,EACA,WAAAqB,CACF,CACF,CCrDA,OAAS,eAAA4B,EAAa,aAAAC,GAAW,UAAAuB,OAAc,QAKxC,SAASC,GACdrB,EACAsB,EACA,CACA,IAAMC,EAAcH,GAAO,CAAC,EAEtBI,EAAaJ,GAAsB,CAAC,CAAC,EAErCK,EAAoB,OAAOH,GAAa,SAAWA,EAAW,IAE9DI,EAAgB9B,EAAaQ,GAAsC,CACvEoB,EAAW,QAAUpB,EAClB,WAAW,EACX,IACCuB,GACEA,EAAU,cAAc,yBAAyB,CACrD,CACJ,EAAG,CAAC,CAAC,EAECC,EAAiBhC,EACpBQ,GAAgC,CAC/BmB,EAAY,QACVE,EAAoBrB,EAAS,eAAe,EAAE,MAClD,EACA,CAACqB,CAAiB,CACpB,EAEMI,EAAgBjC,EACpB,CAACQ,EAA6B0B,IAA+B,CAC3D,IAAMC,EAAS3B,EAAS,eAAe,EAEjC4B,EAAiB5B,EAAS,eAAe,EAEzC6B,EAAe7B,EAAS,aAAa,EAErC8B,EAAgBJ,IAAc,SAEpC1B,EAAS,eAAe,EAAE,QAAQ,CAAC+B,EAAYC,IAAc,CAC3D,IAAIC,EAAeF,EAAaH,EAEXD,EAAO,cAAcK,CAAS,EAEtC,QAAQE,GAAc,CACjC,GAAIJ,GAAiB,CAACD,EAAa,SAASK,CAAU,EAAG,OAErDP,EAAO,QAAQ,MACjBA,EAAO,YAAY,WAAW,QAAQQ,GAAY,CAChD,IAAMC,EAASD,EAAS,OAAO,EAE/B,GAAID,IAAeC,EAAS,OAASC,IAAW,EAAG,CACjD,IAAMC,EAAO,KAAK,KAAKD,CAAM,EAEzBC,IAAS,KACXJ,EAAeF,GAAc,EAAIH,IAE/BS,IAAS,IACXJ,EAAeF,GAAc,EAAIH,IAGvC,CAAC,EAGH,IAAMU,GACJL,GAAgB,GAAKd,EAAY,SAAW,IAExCoB,EAAYnB,EAAW,QAAQc,CAAU,EAE3CK,IACFA,EAAU,MAAM,UAAY,cAAcD,OAE9C,CAAC,CACH,CAAC,CACH,EACA,CAAC,CACH,EAEA,OAAA7C,GAAU,IAAM,CACd,GAAI,GAACG,GAAW,CAACsB,GAEjB,OAAAI,EAAc1B,CAAO,EACrB4B,EAAe5B,CAAO,EACtB6B,EAAc7B,CAAO,EAErBA,EACG,GAAG,SAAU0B,CAAa,EAC1B,GAAG,SAAUE,CAAc,EAC3B,GAAG,SAAUC,CAAa,EAC1B,GAAG,SAAUA,CAAa,EAEtB,IAAM,CACX7B,EACG,IAAI,SAAU0B,CAAa,EAC3B,IAAI,SAAUE,CAAc,EAC5B,IAAI,SAAUC,CAAa,EAC3B,IAAI,SAAUA,CAAa,CAChC,CAEF,EAAG,CAAC7B,EAAS6B,CAAa,CAAC,EAEpB,IACT,CCzGA,OAAS,eAAAjC,GAAa,aAAAC,GAAW,YAAAC,OAAgB,QAK1C,SAAS8C,GACd5C,EAC2B,CAC3B,GAAM,CAACgC,EAAgBa,CAAiB,EAAI/C,GAAS,CAAC,EAEhDgD,EAAWlD,GAAaQ,GAAgC,CAC5D,IAAM2C,EAAW,KAAK,IAAI,EAAG,KAAK,IAAI,EAAG3C,EAAS,eAAe,CAAC,CAAC,EAEnEyC,EAAkBE,EAAW,GAAG,CAClC,EAAG,CAAC,CAAC,EAEL,OAAAlD,GAAU,IAAM,CACd,GAAKG,EAEL,OAAA8C,EAAS9C,CAAO,EAChBA,EAAQ,GAAG,SAAU8C,CAAQ,EAC7B9C,EAAQ,GAAG,SAAU8C,CAAQ,EAEtB,IAAM,CACX9C,EAAQ,IAAI,SAAU8C,CAAQ,EAAE,IAAI,SAAUA,CAAQ,CACxD,CACF,EAAG,CAAC9C,EAAS8C,CAAQ,CAAC,EAEf,CAAE,MAAOd,CAAe,CACjC,CC7BA,OAAS,eAAApC,GAAa,aAAAC,GAAW,YAAAC,OAAgB,QAEjD,OAAOH,OAAsB,uBAItB,SAASqD,GACdhD,EACApF,EACyB,CACzB,GAAM,CAACqI,EAAWC,CAAS,EAAIvD,GAAiB,CAC9C,cAAe,YACf,SAAU,GACV,GAAG/E,CACL,CAAC,EAEK,CAAC+B,EAAesE,CAAgB,EAAInB,GAAS,CAAC,EAE9CqD,EAAevD,GAClBlB,GAAkB,CACb,CAACsB,GAAW,CAACkD,GACjBlD,EAAQ,SAAStB,CAAK,CACxB,EACA,CAACsB,EAASkD,CAAS,CACrB,EAEM/C,EAAWP,GAAY,IAAM,CAC7B,CAACI,GAAW,CAACkD,IACjBjC,EAAiBjB,EAAQ,mBAAmB,CAAC,EAC7CkD,EAAU,SAASlD,EAAQ,mBAAmB,CAAC,EACjD,EAAG,CAACA,EAASkD,EAAWjC,CAAgB,CAAC,EAEzC,OAAApB,GAAU,IAAM,CACd,GAAKG,EACL,OAAAG,EAAS,EACTH,EAAQ,GAAG,SAAUG,CAAQ,EAC7BH,EAAQ,GAAG,SAAUG,CAAQ,EAEtB,IAAM,CACXH,EAAQ,IAAI,SAAUG,CAAQ,EAC9BH,EAAQ,IAAI,SAAUG,CAAQ,CAChC,CACF,EAAG,CAACH,EAASG,CAAQ,CAAC,EAEf,CACL,aAAAgD,EACA,UAAAF,EACA,UAAAC,EACA,cAAAvG,CACF,CACF,CPlCO,IAAMyG,GAAc,CACzBxI,EACAyI,IACsB,CACtB,GAAM,CAACzH,EAASoE,CAAO,EAAIL,GAAiB/E,EAASyI,CAAO,EAEtD,CAAE,YAAAvG,EAAa,YAAAC,EAAa,YAAAH,EAAa,YAAAC,CAAY,EACzDkD,EAAkBC,CAAO,EAErBsD,EAAcD,GAAS,IAAIE,GAAUA,EAAO,IAAI,EAEhDC,EAAQ1C,GAAgBd,CAAO,EAE/ByD,EAAYpD,GAAoBL,CAAO,EAEvC0D,EAAc9C,GAAsBZ,CAAO,EAE3C2D,EAAYf,GAAoB5C,CAAO,EAEvC4D,EAAUZ,GAAUhD,EAASpF,GAAS,MAAM,EAElDyG,GAAYrB,EAASpF,GAAS,QAAQ,EAEtC,IAAMiJ,EAAWnE,GAAQ,IACnB4D,GAAa,SAAS,UAAU,EAC3B,CACL,YAAa,IAAMG,EAAU,gBAAgB7G,CAAW,EACxD,YAAa,IAAM6G,EAAU,gBAAgB5G,CAAW,CAC1D,EAEEyG,GAAa,SAAS,YAAY,EAC7B,CACL,YAAa,IAAMI,EAAY,gBAAgB9G,CAAW,EAC1D,YAAa,IAAM8G,EAAY,gBAAgB7G,CAAW,CAC5D,EAEK,CACL,YAAAD,EACA,YAAAC,CACF,EACC,CAAC6G,EAAaD,EAAW5G,EAAaD,EAAa0G,CAAW,CAAC,EAElE,MAAO,CACL,QAAS,CACP,GAAG1I,EACH,GAAGoF,GAAS,eAAe,EAAE,OAC/B,EACA,YAAAsD,EACA,QAAA1H,EACA,QAAAoE,EAEA,OAAQ,CACN,YAAAlD,EACA,YAAAC,EACA,YAAa8G,EAAS,YACtB,YAAaA,EAAS,WACxB,EAEA,KAAML,EAEN,OAAQI,EAER,SAAUD,EAEV,SAAUF,EACV,WAAYC,CACd,CACF","sourcesContent":["export const carouselBreakpoints = {\n xs: '(min-width: 0px)',\n sm: '(min-width: 600px)',\n md: '(min-width: 900px)',\n lg: '(min-width: 1200px)',\n xl: '(min-width: 1536px)',\n};\n","/* eslint-disable react/function-component-definition */\nimport { Children, isValidElement } from 'react';\nimport Box from '@mui/material/Box';\nimport { styled } from '@mui/material/styles';\n\nimport { CarouselSlide } from './components/carousel-slide';\nimport { carouselClasses } from './classes';\nimport type {\n CarouselProps,\n CarouselStyledProps as StyledProps,\n} from './types';\n\nexport const StyledRoot = styled(Box, {\n shouldForwardProp: prop => prop !== 'axis',\n})<StyledProps>(({ axis }) => ({\n margin: 'auto',\n width: '100%',\n maxWidth: '100%',\n overflow: 'hidden',\n position: 'relative',\n ...(axis === 'y' && {\n height: '100%',\n }),\n}));\n\nexport const StyledContainer = styled(Box, {\n shouldForwardProp: prop => prop !== 'axis' && prop !== 'slideSpacing',\n})<StyledProps>(({ axis, slideSpacing }) => ({\n display: 'flex',\n backfaceVisibility: 'hidden',\n ...(axis === 'x' && {\n touchAction: 'pan-y pinch-zoom',\n marginLeft: `calc(${slideSpacing} * -1)`,\n }),\n ...(axis === 'y' && {\n height: '100%',\n flexDirection: 'column',\n touchAction: 'pan-x pinch-zoom',\n marginTop: `calc(${slideSpacing} * -1)`,\n }),\n}));\n\n// ----------------------------------------------------------------------\n\nexport function Carousel({\n carousel,\n children,\n sx,\n slotProps,\n ...props\n}: CarouselProps) {\n const { mainRef, options } = carousel;\n\n const axis = options?.axis ?? 'x';\n\n const slideSpacing = options?.slideSpacing ?? '0px';\n\n const direction = options?.direction ?? 'ltr';\n\n const renderChildren = Children.map(children, child => {\n if (isValidElement(child)) {\n const reactChild = child as React.ReactElement<{ key?: React.Key }>;\n\n return (\n <CarouselSlide\n key={reactChild.key}\n options={carousel.options}\n sx={slotProps?.slide}\n {...props}\n >\n {child}\n </CarouselSlide>\n );\n }\n return null;\n });\n\n return (\n <StyledRoot\n sx={sx}\n axis={axis}\n ref={mainRef}\n dir={direction}\n className={carouselClasses.root}\n >\n <StyledContainer\n component=\"ul\"\n axis={axis}\n slideSpacing={slideSpacing}\n className={carouselClasses.container}\n sx={{\n ...(carousel.pluginNames?.includes('autoHeight') && {\n alignItems: 'flex-start',\n transition: theme =>\n theme.transitions.create(['height'], {\n easing: theme.transitions.easing.easeInOut,\n duration: theme.transitions.duration.shorter,\n }),\n }),\n ...slotProps?.container,\n }}\n >\n {renderChildren}\n </StyledContainer>\n </StyledRoot>\n );\n}\n","/* eslint-disable react/function-component-definition */\nimport type { BoxProps } from '@mui/material/Box';\nimport Box from '@mui/material/Box';\nimport { styled } from '@mui/material/styles';\n\nimport { carouselClasses } from '../classes';\nimport type {\n CarouselInputValue as InputValue,\n CarouselObjectValue as ObjectValue,\n CarouselSlideProps,\n CarouselStyledProps as StyledProps,\n} from '../types';\n\n// ----------------------------------------------------------------------\n\nconst StyledRoot = styled(Box, {\n shouldForwardProp: prop => prop !== 'axis' && prop !== 'slideSpacing',\n})<StyledProps>(({ axis, slideSpacing }) => ({\n display: 'block',\n position: 'relative',\n ...(axis === 'x' && {\n minWidth: 0,\n paddingLeft: slideSpacing,\n }),\n ...(axis === 'y' && {\n minHeight: 0,\n paddingTop: slideSpacing,\n }),\n}));\n\nconst StyledContent = styled(Box)(() => ({\n overflow: 'hidden',\n position: 'relative',\n borderRadius: 'inherit',\n}));\n\n// ----------------------------------------------------------------------\n\nexport function CarouselSlide({\n sx,\n options,\n children,\n ...other\n}: BoxProps & CarouselSlideProps) {\n const slideSize = getSize(options?.slidesToShow);\n\n return (\n <StyledRoot\n component=\"li\"\n axis={options?.axis ?? 'x'}\n slideSpacing={options?.slideSpacing}\n className={carouselClasses.slide}\n sx={{\n flex: slideSize,\n ...sx,\n }}\n {...other}\n >\n {options?.parallax ? (\n <StyledContent className={carouselClasses.slideContent}>\n <div className=\"slide__parallax__layer\">{children}</div>\n </StyledContent>\n ) : (\n children\n )}\n </StyledRoot>\n );\n}\n\n// ----------------------------------------------------------------------\n\nfunction getSize(slidesToShow: InputValue): InputValue {\n if (slidesToShow && typeof slidesToShow === 'object') {\n return Object.keys(slidesToShow).reduce<ObjectValue>((acc, key) => {\n const sizeByKey = slidesToShow[key];\n acc[key] = getValue(sizeByKey);\n return acc;\n }, {});\n }\n\n return getValue(slidesToShow);\n}\n\nfunction getValue(value: string | number = 1): string {\n if (typeof value === 'string') {\n const isSupported =\n value === 'auto' || value.endsWith('%') || value.endsWith('px');\n if (!isSupported) {\n throw new Error('Only accepts values: auto, px, %, or number.');\n }\n // value is either 'auto', ends with '%', or ends with 'px'\n return `0 0 ${value}`;\n }\n\n if (typeof value === 'number') {\n return `0 0 ${100 / value}%`;\n }\n\n // Default case should not be reached due to the type signature, but we include it for safety\n throw new Error(\n 'Invalid value type. Only accepts values: auto, px, %, or number.',\n );\n}\n","export const carouselClasses = {\n root: 'mnl__carousel__root',\n container: 'mnl__carousel__container',\n // dot\n dots: 'mnl__carousel__dots',\n dot: 'mnl__carousel__dot',\n // arrow\n arrows: 'mnl__carousel__arrows',\n arrowsLabel: 'mnl__carousel__arrows_label',\n arrowPrev: 'mnl__carousel__btn--prev',\n arrowNext: 'mnl__carousel__btn--next',\n arrowSvg: 'mnl__carousel__btn__svg',\n // slide\n slide: 'mnl__carousel__slide',\n slideContent: 'mnl__carousel__slide__content',\n // thumb\n thumbs: 'mnl__carousel__thumbs',\n thumb: 'mnl__carousel__thumb',\n thumbContainer: 'mnl__carousel__thumbs__container',\n thumbImage: 'mnl__carousel__thumb__image',\n // progress\n progress: 'mnl__carousel__progress',\n progressBar: 'mnl__carousel__progress__bar',\n state: { selected: 'state--selected', disabled: 'state--disabled' },\n};\n","/* eslint-disable @typescript-eslint/no-unused-vars */\n/* eslint-disable react/function-component-definition */\nimport Box from '@mui/material/Box';\nimport type { ButtonBaseProps } from '@mui/material/ButtonBase';\nimport ButtonBase, { buttonBaseClasses } from '@mui/material/ButtonBase';\nimport type { StackProps } from '@mui/material/Stack';\nimport Stack from '@mui/material/Stack';\nimport type { CSSObject } from '@mui/material/styles';\nimport { useTheme } from '@mui/material/styles';\nimport SvgIcon from '@mui/material/SvgIcon';\nimport { stylesMode, varAlpha } from 'theme/styles';\n\nimport { carouselClasses } from '../classes';\nimport type {\n CarouselArrowButtonProps,\n CarouselArrowButtonsProps,\n} from '../types';\n\nexport function CarouselArrowBasicButtons({\n options,\n slotProps,\n totalSlides,\n selectedIndex,\n //\n onClickPrev,\n onClickNext,\n disablePrev,\n disableNext,\n sx,\n ...other\n}: StackProps & CarouselArrowButtonsProps) {\n return (\n <Stack\n direction=\"row\"\n alignItems=\"center\"\n display=\"inline-flex\"\n className={carouselClasses.arrows}\n sx={{\n gap: 0.5,\n zIndex: 9,\n color: 'action.active',\n ...sx,\n }}\n {...other}\n >\n <ArrowButton\n variant=\"prev\"\n options={options}\n disabled={disablePrev}\n onClick={onClickPrev}\n svgIcon={slotProps?.prevBtn?.svgIcon}\n svgSize={slotProps?.prevBtn?.svgSize}\n sx={slotProps?.prevBtn?.sx}\n />\n\n <ArrowButton\n variant=\"next\"\n options={options}\n disabled={disableNext}\n onClick={onClickNext}\n svgIcon={slotProps?.nextBtn?.svgIcon}\n svgSize={slotProps?.prevBtn?.svgSize}\n sx={slotProps?.prevBtn?.sx}\n />\n </Stack>\n );\n}\n\n// ----------------------------------------------------------------------\n\nexport function CarouselArrowNumberButtons({\n options,\n slotProps,\n totalSlides,\n selectedIndex,\n //\n onClickPrev,\n onClickNext,\n disablePrev,\n disableNext,\n sx,\n ...other\n}: StackProps & CarouselArrowButtonsProps) {\n const theme = useTheme();\n\n return (\n <Stack\n direction=\"row\"\n alignItems=\"center\"\n display=\"inline-flex\"\n className={carouselClasses.arrows}\n sx={{\n p: 0.5,\n gap: 0.25,\n zIndex: 9,\n borderRadius: 1.25,\n color: 'common.white',\n bgcolor: varAlpha(theme.vars.palette.grey['900Channel'], 0.48),\n ...sx,\n }}\n {...other}\n >\n <ArrowButton\n variant=\"prev\"\n options={options}\n disabled={disablePrev}\n onClick={onClickPrev}\n sx={{ p: 0.75, borderRadius: 'inherit', ...slotProps?.prevBtn?.sx }}\n svgIcon={slotProps?.prevBtn?.svgIcon}\n svgSize={slotProps?.prevBtn?.svgSize ?? 16}\n />\n\n <Box\n component=\"span\"\n className={carouselClasses.arrowsLabel}\n sx={{ mx: 0.5, typography: 'subtitle2' }}\n data-testid=\"carousel-number-display\"\n >\n {selectedIndex}/{totalSlides}\n </Box>\n\n <ArrowButton\n variant=\"next\"\n options={options}\n disabled={disableNext}\n onClick={onClickNext}\n sx={{ p: 0.75, borderRadius: 'inherit', ...slotProps?.nextBtn?.sx }}\n svgIcon={slotProps?.nextBtn?.svgIcon}\n svgSize={slotProps?.prevBtn?.svgSize ?? 16}\n />\n </Stack>\n );\n}\n\n// ----------------------------------------------------------------------\n\nexport function CarouselArrowFloatButtons({\n options,\n slotProps,\n onClickPrev,\n onClickNext,\n disablePrev,\n disableNext,\n}: StackProps & CarouselArrowButtonsProps) {\n const baseStyles: CSSObject = {\n zIndex: 9,\n top: '50%',\n borderRadius: 1.5,\n position: 'absolute',\n color: 'common.white',\n bgcolor: 'text.primary',\n transform: 'translateY(-50%)',\n '&:hover': { opacity: 0.8 },\n [stylesMode.dark]: { color: 'grey.800' },\n };\n\n return (\n <>\n <ArrowButton\n variant=\"prev\"\n options={options}\n disabled={disablePrev}\n onClick={onClickPrev}\n svgIcon={slotProps?.prevBtn?.svgIcon}\n svgSize={slotProps?.prevBtn?.svgSize}\n sx={{ left: -16, ...baseStyles, ...slotProps?.prevBtn?.sx }}\n />\n\n <ArrowButton\n variant=\"next\"\n options={options}\n disabled={disableNext}\n onClick={onClickNext}\n svgIcon={slotProps?.nextBtn?.svgIcon}\n svgSize={slotProps?.nextBtn?.svgSize}\n sx={{ right: -16, ...baseStyles, ...slotProps?.nextBtn?.sx }}\n />\n </>\n );\n}\n\n// ----------------------------------------------------------------------\n\nexport function ArrowButton({\n sx,\n svgIcon,\n svgSize,\n options,\n variant,\n ...other\n}: ButtonBaseProps & CarouselArrowButtonProps) {\n const arrowPrev = variant === 'prev';\n const arrowNext = variant === 'next';\n\n const prevSvg = svgIcon || (\n <path\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n d=\"M15.488 4.43a.75.75 0 0 1 .081 1.058L9.988 12l5.581 6.512a.75.75 0 1 1-1.138.976l-6-7a.75.75 0 0 1 0-.976l6-7a.75.75 0 0 1 1.057-.081\"\n clipRule=\"evenodd\"\n />\n );\n\n const nextSvg = svgIcon || (\n <path\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n d=\"M8.512 4.43a.75.75 0 0 1 1.057.082l6 7a.75.75 0 0 1 0 .976l-6 7a.75.75 0 0 1-1.138-.976L14.012 12L8.431 5.488a.75.75 0 0 1 .08-1.057\"\n clipRule=\"evenodd\"\n />\n );\n\n return (\n <ButtonBase\n className={\n arrowPrev ? carouselClasses.arrowPrev : carouselClasses.arrowPrev\n }\n aria-label={arrowPrev ? 'Prev button' : 'Next button'}\n sx={{\n p: 1,\n borderRadius: '50%',\n boxSizing: 'content-box',\n transition: theme =>\n theme.transitions.create(['all'], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.short,\n }),\n [`&.${buttonBaseClasses.disabled}`]: {\n opacity: 0.4,\n },\n ...sx,\n ...(options?.direction === 'rtl' && {\n ...(arrowPrev && { right: -16, left: 'auto' }),\n ...(arrowNext && { left: -16, right: 'auto' }),\n }),\n }}\n {...other}\n >\n <SvgIcon\n className={carouselClasses.arrowSvg}\n sx={{\n width: svgSize ?? 20,\n height: svgSize ?? 20,\n ...(options?.axis === 'y' && { transform: ' rotate(90deg)' }),\n ...(options?.direction === 'rtl' && { transform: ' scaleX(-1)' }),\n }}\n >\n {arrowPrev ? prevSvg : nextSvg}\n </SvgIcon>\n </ButtonBase>\n );\n}\n","/* eslint-disable react/function-component-definition */\nimport Box from '@mui/material/Box';\nimport ButtonBase from '@mui/material/ButtonBase';\nimport NoSsr from '@mui/material/NoSsr';\nimport { useTheme } from '@mui/material/styles';\nimport { stylesMode, varAlpha } from 'theme/styles';\n\nimport { carouselClasses } from '../classes';\nimport type { CarouselDotButtonsProps } from '../types';\n\n// ----------------------------------------------------------------------\n\nexport function CarouselDotButtons({\n sx,\n gap,\n slotProps,\n onClickDot,\n scrollSnaps,\n selectedIndex,\n fallbackCount = 1,\n variant = 'circular',\n fallback = false,\n ...other\n}: CarouselDotButtonsProps) {\n const theme = useTheme();\n\n const GAPS = {\n number: gap ?? 6,\n rounded: gap ?? 2,\n circular: gap ?? 2,\n };\n\n const SIZES = {\n circular: slotProps?.dot?.size ?? 18,\n number: slotProps?.dot?.size ?? 28,\n };\n\n const renderFallback = (\n <Box\n sx={{\n height: SIZES.circular,\n width: `calc(${fallbackCount * SIZES.circular + GAPS.circular * (fallbackCount - 1)}px )`,\n ...(variant === 'number' && {\n height: SIZES.number,\n width: `calc(${fallbackCount * SIZES.number + GAPS.number * (fallbackCount - 1)}px )`,\n }),\n }}\n />\n );\n\n const dotStyles = {\n circular: (selected: boolean) => ({\n width: SIZES.circular,\n height: SIZES.circular,\n '&::before': {\n width: 8,\n height: 8,\n content: '\"\"',\n opacity: 0.24,\n borderRadius: '50%',\n bgcolor: 'primary.main',\n transition: theme.transitions.create(['opacity'], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.short,\n }),\n ...(selected && { opacity: 1 }),\n },\n }),\n rounded: (selected: boolean) => ({\n width: SIZES.circular,\n height: SIZES.circular,\n '&::before': {\n width: 8,\n height: 8,\n content: '\"\"',\n opacity: 0.24,\n borderRadius: '50%',\n bgcolor: 'primary.main',\n transition: theme.transitions.create(['width', 'opacity'], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.short,\n }),\n ...(selected && {\n width: 'calc(100% - 4px)',\n opacity: 1,\n borderRadius: 1,\n }),\n },\n }),\n number: (selected: boolean) => ({\n width: SIZES.number,\n height: SIZES.number,\n borderRadius: '50%',\n typography: 'caption',\n color: 'text.disabled',\n border: `solid 1px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.16)}`,\n ...(selected && {\n color: 'common.white',\n bgcolor: 'text.primary',\n fontWeight: 'fontWeightSemiBold',\n [stylesMode.dark]: { color: 'grey.800' },\n }),\n }),\n };\n\n return (\n <NoSsr fallback={fallback ? renderFallback : null}>\n <Box\n data-testid=\"carousel-dots\"\n component=\"ul\"\n className={carouselClasses.dots}\n sx={{\n zIndex: 9,\n display: 'inline-flex',\n ...(variant === 'circular' && { gap: `${GAPS.circular}px` }),\n ...(variant === 'rounded' && { gap: `${GAPS.rounded}px` }),\n ...(variant === 'number' && { gap: `${GAPS.number}px` }),\n ...sx,\n }}\n {...other}\n >\n {scrollSnaps.map((_, index) => {\n const selected = index === selectedIndex;\n\n return (\n <Box component=\"li\" key={index} sx={{ display: 'inline-flex' }}>\n <ButtonBase\n disableRipple\n aria-label={`dot-${index}`}\n className={carouselClasses.dot.concat(\n selected ? ` ${carouselClasses.state.selected}` : '',\n )}\n onClick={() => onClickDot(index)}\n sx={{\n ...(variant === 'circular' && dotStyles.circular(selected)),\n ...(variant === 'rounded' && dotStyles.rounded(selected)),\n ...(variant === 'number' && dotStyles.number(selected)),\n [`&.${carouselClasses.state.selected}`]: {\n ...slotProps?.dot?.selected,\n },\n ...slotProps?.dot?.sx,\n }}\n >\n {variant === 'number' && index + 1}\n </ButtonBase>\n </Box>\n );\n })}\n </Box>\n </NoSsr>\n );\n}\n","/* eslint-disable react/function-component-definition */\nimport type { BoxProps } from '@mui/material/Box';\nimport Box from '@mui/material/Box';\nimport { styled } from '@mui/material/styles';\n\nimport { carouselClasses } from '../classes';\nimport type { CarouselProgressBarProps } from '../types';\n\n// ----------------------------------------------------------------------\n\nconst StyledRoot = styled(Box)(({ theme }) => ({\n height: 6,\n maxWidth: 120,\n width: '100%',\n borderRadius: 6,\n overflow: 'hidden',\n position: 'relative',\n color: theme.palette.text.primary,\n backgroundColor: theme.palette.divider,\n}));\n\nconst StyledProgress = styled(Box)(() => ({\n top: 0,\n bottom: 0,\n width: '100%',\n left: '-100%',\n position: 'absolute',\n backgroundColor: 'currentColor',\n}));\n\n// ----------------------------------------------------------------------\n\nexport function CarouselProgressBar({\n value,\n sx,\n ...other\n}: BoxProps & CarouselProgressBarProps) {\n return (\n <StyledRoot\n data-testid=\"carousel-progress\"\n sx={sx}\n className={carouselClasses.progress}\n {...other}\n >\n <StyledProgress\n data-testid=\"carousel-progress-bar\"\n className={carouselClasses.progressBar}\n sx={{\n transform: `translate3d(${value}%, 0px, 0px)`,\n }}\n />\n </StyledRoot>\n );\n}\n","/* eslint-disable react/function-component-definition */\nimport { Children, forwardRef, isValidElement } from 'react';\nimport type { BoxProps } from '@mui/material/Box';\nimport Box from '@mui/material/Box';\nimport type { ButtonBaseProps } from '@mui/material/ButtonBase';\nimport ButtonBase from '@mui/material/ButtonBase';\nimport type { CSSObject, SxProps, Theme } from '@mui/material/styles';\nimport { useTheme } from '@mui/material/styles';\nimport { varAlpha } from 'theme/styles';\n\nimport Icon from 'components/Icon';\n\nimport { StyledContainer, StyledRoot } from '../carousel';\nimport { carouselClasses } from '../classes';\nimport type {\n CarouselOptions,\n CarouselThumbProps,\n CarouselThumbsProps,\n} from '../types';\n\nimport { CarouselSlide } from './carousel-slide';\n\n// ----------------------------------------------------------------------\n\nexport const CarouselThumbs = forwardRef<\n HTMLDivElement,\n BoxProps & CarouselThumbsProps\n>(({ children, slotProps, options, sx, ...other }, ref) => {\n const axis = options?.axis ?? 'x';\n\n const slideSpacing = options?.slideSpacing ?? '12px';\n\n const maskStyles = useMaskStyle(axis);\n\n const renderChildren = Children.map(children, child => {\n if (isValidElement(child)) {\n const reactChild = child as React.ReactElement<{ key?: React.Key }>;\n\n return (\n <CarouselSlide\n key={reactChild.key}\n options={{ ...options, slideSpacing }}\n sx={slotProps?.slide}\n >\n {child}\n </CarouselSlide>\n );\n }\n return null;\n });\n\n return (\n <StyledRoot\n ref={ref}\n axis={axis}\n data-testid=\"carousel-root\"\n className={carouselClasses.thumbs}\n sx={{\n flexShrink: 0,\n ...(axis === 'x' && { p: 0.5, maxWidth: 1 }),\n ...(axis === 'y' && { p: 0.5, maxHeight: 1 }),\n ...(!slotProps?.disableMask && maskStyles),\n ...sx,\n }}\n {...other}\n >\n <StyledContainer\n component=\"ul\"\n axis={axis}\n data-testid=\"carousel-container\"\n slideSpacing={slideSpacing}\n className={carouselClasses.thumbContainer}\n sx={{\n ...slotProps?.container,\n }}\n >\n {renderChildren}\n </StyledContainer>\n </StyledRoot>\n );\n});\nCarouselThumbs.displayName = 'CarouselThumbs';\n\nexport function CarouselThumb({\n thumbType = 'image',\n sx,\n src,\n index,\n selected,\n imageRender,\n thumbAlt,\n ...other\n}: ButtonBaseProps & CarouselThumbProps) {\n if (thumbType === 'image' && (src || imageRender)) {\n const sxThumb: SxProps<Theme> = {\n width: 1,\n height: 1,\n aspectRatio: 1,\n objectFit: 'cover',\n borderRadius: 'inherit',\n };\n\n return (\n <ButtonBase\n className={carouselClasses.thumb}\n data-testid=\"carousel-thumb\"\n sx={{\n width: 64,\n height: 64,\n opacity: 0.48,\n flexShrink: 0,\n cursor: 'pointer',\n borderRadius: 1.25,\n transition: theme =>\n theme.transitions.create(['opacity', 'box-shadow'], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.short,\n }),\n ...(selected && {\n opacity: 1,\n boxShadow: theme => `0 0 0 2px ${theme.vars.palette.primary.main}`,\n }),\n ...sx,\n }}\n {...other}\n >\n {imageRender?.({\n sx: sxThumb,\n classes: carouselClasses.thumbImage,\n }) || (\n <Box\n component=\"img\"\n alt={thumbAlt || `Imagem do slide ${index}`}\n src={src}\n data-testid=\"carousel-thumb-image\"\n className={carouselClasses.thumbImage}\n sx={sxThumb}\n />\n )}\n </ButtonBase>\n );\n }\n\n if (thumbType === 'video') {\n return (\n <ButtonBase\n className={carouselClasses.thumb}\n data-testid=\"carousel-thumb\"\n sx={{\n width: 64,\n height: 64,\n opacity: 0.48,\n flexShrink: 0,\n cursor: 'pointer',\n borderRadius: 1.25,\n color: theme => theme.vars.palette.primary.main,\n transition: theme =>\n theme.transitions.create(['opacity', 'box-shadow'], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.short,\n }),\n ...(selected && {\n opacity: 1,\n boxShadow: theme => `0 0 0 2px ${theme.vars.palette.primary.main}`,\n }),\n ...sx,\n }}\n {...other}\n >\n <Icon icon=\"PLAY_CIRCLE\" width={32} />\n </ButtonBase>\n );\n }\n\n return null;\n}\n\n// ----------------------------------------------------------------------\n\nfunction useMaskStyle(axis: CarouselOptions['axis']): CSSObject {\n const theme = useTheme();\n\n const baseStyles = {\n zIndex: 9,\n content: '\"\"',\n position: 'absolute',\n };\n\n const bgcolor = `${theme.vars.palette.background.paper} 20%, ${varAlpha(theme.vars.palette.background.paperChannel, 0)} 100%)`;\n\n if (axis === 'y') {\n return {\n '&::before, &::after': {\n ...baseStyles,\n left: 0,\n height: 40,\n width: '100%',\n },\n '&::before': {\n top: -8,\n background: `linear-gradient(to bottom, ${bgcolor}`,\n },\n '&::after': {\n bottom: -8,\n background: `linear-gradient(to top, ${bgcolor}`,\n },\n };\n }\n\n return {\n '&::before, &::after': {\n ...baseStyles,\n top: 0,\n width: 40,\n height: '100%',\n },\n '&::before': {\n left: -8,\n background: `linear-gradient(to right, ${bgcolor}`,\n },\n '&::after': {\n right: -8,\n background: `linear-gradient(to left, ${bgcolor}`,\n },\n };\n}\n","import { useMemo } from 'react';\nimport type { EmblaPluginType } from 'embla-carousel';\nimport useEmblaCarousel from 'embla-carousel-react';\n\nimport type { CarouselOptions, UseCarouselReturn } from '../types';\n\nimport { useCarouselArrows } from './use-carousel-arrows';\nimport { useCarouselAutoPlay } from './use-carousel-auto-play';\nimport { useCarouselAutoScroll } from './use-carousel-auto-scroll';\nimport { useCarouselDots } from './use-carousel-dots';\nimport { useParallax } from './use-carousel-parallax';\nimport { useCarouselProgress } from './use-carousel-progress';\nimport { useThumbs } from './use-thumbs';\n\n// ----------------------------------------------------------------------\n\nexport const useCarousel = (\n options?: CarouselOptions,\n plugins?: EmblaPluginType[],\n): UseCarouselReturn => {\n const [mainRef, mainApi] = useEmblaCarousel(options, plugins);\n\n const { disablePrev, disableNext, onClickPrev, onClickNext } =\n useCarouselArrows(mainApi);\n\n const pluginNames = plugins?.map(plugin => plugin.name);\n\n const _dots = useCarouselDots(mainApi);\n\n const _autoplay = useCarouselAutoPlay(mainApi);\n\n const _autoScroll = useCarouselAutoScroll(mainApi);\n\n const _progress = useCarouselProgress(mainApi);\n\n const _thumbs = useThumbs(mainApi, options?.thumbs);\n\n useParallax(mainApi, options?.parallax);\n\n const controls = useMemo(() => {\n if (pluginNames?.includes('autoplay')) {\n return {\n onClickPrev: () => _autoplay.onClickAutoplay(onClickPrev),\n onClickNext: () => _autoplay.onClickAutoplay(onClickNext),\n };\n }\n if (pluginNames?.includes('autoScroll')) {\n return {\n onClickPrev: () => _autoScroll.onClickAutoplay(onClickPrev),\n onClickNext: () => _autoScroll.onClickAutoplay(onClickNext),\n };\n }\n return {\n onClickPrev,\n onClickNext,\n };\n }, [_autoScroll, _autoplay, onClickNext, onClickPrev, pluginNames]);\n\n return {\n options: {\n ...options,\n ...mainApi?.internalEngine().options,\n },\n pluginNames,\n mainRef,\n mainApi,\n // arrows\n arrows: {\n disablePrev,\n disableNext,\n onClickPrev: controls.onClickPrev,\n onClickNext: controls.onClickNext,\n },\n // dots\n dots: _dots,\n // thumbs\n thumbs: _thumbs,\n // progress\n progress: _progress,\n // autoplay\n autoplay: _autoplay,\n autoScroll: _autoScroll,\n };\n};\n","import { useCallback, useEffect, useState } from 'react';\nimport type { EmblaCarouselType } from 'embla-carousel';\n\nimport type { UseCarouselArrowsReturn } from '../types';\n\n// ----------------------------------------------------------------------\n\nexport const useCarouselArrows = (\n mainApi?: EmblaCarouselType,\n): UseCarouselArrowsReturn => {\n const [disablePrev, setDisabledPrevBtn] = useState(true);\n\n const [disableNext, setDisabledNextBtn] = useState(true);\n\n const onClickPrev = useCallback(() => {\n if (!mainApi) return;\n mainApi.scrollPrev();\n }, [mainApi]);\n\n const onClickNext = useCallback(() => {\n if (!mainApi) return;\n mainApi.scrollNext();\n }, [mainApi]);\n\n const onSelect = useCallback((_mainApi: EmblaCarouselType) => {\n setDisabledPrevBtn(!_mainApi.canScrollPrev());\n setDisabledNextBtn(!_mainApi.canScrollNext());\n }, []);\n\n useEffect(() => {\n if (!mainApi) return;\n\n onSelect(mainApi);\n mainApi.on('reInit', onSelect);\n mainApi.on('select', onSelect);\n\n return () => {\n mainApi.off('reInit', onSelect);\n mainApi.off('select', onSelect);\n };\n }, [mainApi, onSelect]);\n\n return {\n disablePrev,\n disableNext,\n onClickPrev,\n onClickNext,\n };\n};\n","/* eslint-disable @typescript-eslint/ban-ts-comment */\n// @ts-nocheck\nimport { useCallback, useEffect, useState } from 'react';\nimport type { EmblaCarouselType } from 'embla-carousel';\n\nimport type { UseCarouselAutoPlayReturn } from '../types';\n\n// ----------------------------------------------------------------------\n\nexport function useCarouselAutoPlay(\n mainApi?: EmblaCarouselType,\n): UseCarouselAutoPlayReturn {\n const [isPlaying, setIsPlaying] = useState(false);\n\n const onClickAutoplay = useCallback(\n (callback: () => void) => {\n const autoplay = mainApi?.plugins()?.autoplay;\n if (!autoplay) return;\n\n const resetOrStop =\n autoplay.options.stopOnInteraction === false\n ? autoplay.reset\n : autoplay.stop;\n\n resetOrStop();\n callback();\n },\n [mainApi],\n );\n\n const onTogglePlay = useCallback(() => {\n const autoplay = mainApi?.plugins()?.autoplay;\n if (!autoplay) return;\n\n const playOrStop = autoplay.isPlaying() ? autoplay.stop : autoplay.play;\n playOrStop();\n }, [mainApi]);\n\n useEffect(() => {\n const autoplay = mainApi?.plugins()?.autoplay;\n if (!autoplay) return;\n\n setIsPlaying(autoplay.isPlaying());\n mainApi\n .on('autoplay:play', () => setIsPlaying(true))\n .on('autoplay:stop', () => setIsPlaying(false))\n .on('reInit', () => setIsPlaying(false));\n }, [mainApi]);\n\n return { isPlaying, onTogglePlay, onClickAutoplay };\n}\n","/* eslint-disable @typescript-eslint/ban-ts-comment */\n// @ts-nocheck\nimport { useCallback, useEffect, useState } from 'react';\nimport type { EmblaCarouselType } from 'embla-carousel';\n\nimport type { UseCarouselAutoPlayReturn } from '../types';\n\n// ----------------------------------------------------------------------\n\nexport function useCarouselAutoScroll(\n mainApi?: EmblaCarouselType,\n): UseCarouselAutoPlayReturn {\n const [isPlaying, setIsPlaying] = useState(false);\n\n const onClickAutoplay = useCallback(\n (callback: () => void) => {\n const autoScroll = mainApi?.plugins()?.autoScroll;\n if (!autoScroll) return;\n\n const resetOrStop =\n autoScroll.options.stopOnInteraction === false\n ? autoScroll.reset\n : autoScroll.stop;\n\n resetOrStop();\n callback();\n },\n [mainApi],\n );\n\n const onTogglePlay = useCallback(() => {\n const autoScroll = mainApi?.plugins()?.autoScroll;\n if (!autoScroll) return;\n\n const playOrStop = autoScroll.isPlaying()\n ? autoScroll.stop\n : autoScroll.play;\n playOrStop();\n }, [mainApi]);\n\n useEffect(() => {\n const autoScroll = mainApi?.plugins()?.autoScroll;\n if (!autoScroll) return;\n\n setIsPlaying(autoScroll.isPlaying());\n mainApi\n .on('autoScroll:play', () => setIsPlaying(true))\n .on('autoScroll:stop', () => setIsPlaying(false))\n .on('reInit', () => setIsPlaying(false));\n }, [mainApi]);\n\n return { isPlaying, onTogglePlay, onClickAutoplay };\n}\n","import { useCallback, useEffect, useState } from 'react';\nimport type { EmblaCarouselType } from 'embla-carousel';\n\nimport type { UseCarouselDotsReturn } from '../types';\n\nexport function useCarouselDots(\n mainApi?: EmblaCarouselType,\n): UseCarouselDotsReturn {\n const [dotCount, setDotCount] = useState(0);\n\n const [selectedIndex, setSelectedIndex] = useState(0);\n\n const [scrollSnaps, setScrollSnaps] = useState<number[]>([]);\n\n const onClickDot = useCallback(\n (index: number) => {\n if (!mainApi) return;\n mainApi.scrollTo(index);\n },\n [mainApi],\n );\n\n const onInit = useCallback((_mainApi: EmblaCarouselType) => {\n setScrollSnaps(_mainApi.scrollSnapList());\n }, []);\n\n const onSelect = useCallback((_mainApi: EmblaCarouselType) => {\n setSelectedIndex(_mainApi.selectedScrollSnap());\n setDotCount(_mainApi.scrollSnapList().length);\n }, []);\n\n useEffect(() => {\n if (!mainApi) return;\n\n onInit(mainApi);\n onSelect(mainApi);\n mainApi.on('reInit', onInit);\n mainApi.on('reInit', onSelect);\n mainApi.on('select', onSelect);\n\n return () => {\n mainApi.off('reInit', onInit);\n mainApi.off('reInit', onSelect);\n mainApi.off('select', onSelect);\n };\n }, [mainApi, onInit, onSelect]);\n\n return {\n dotCount,\n scrollSnaps,\n selectedIndex,\n onClickDot,\n };\n}\n","import { useCallback, useEffect, useRef } from 'react';\nimport type { EmblaCarouselType, EmblaEventType } from 'embla-carousel';\n\nimport type { CarouselOptions } from '../types';\n\nexport function useParallax(\n mainApi?: EmblaCarouselType,\n parallax?: CarouselOptions['parallax'],\n) {\n const tweenFactor = useRef(0);\n\n const tweenNodes = useRef<HTMLElement[]>([]);\n\n const TWEEN_FACTOR_BASE = typeof parallax === 'number' ? parallax : 0.24;\n\n const setTweenNodes = useCallback((_mainApi: EmblaCarouselType): void => {\n tweenNodes.current = _mainApi\n .slideNodes()\n .map(\n slideNode =>\n slideNode.querySelector('.slide__parallax__layer') as HTMLElement,\n );\n }, []);\n\n const setTweenFactor = useCallback(\n (_mainApi: EmblaCarouselType) => {\n tweenFactor.current =\n TWEEN_FACTOR_BASE * _mainApi.scrollSnapList().length;\n },\n [TWEEN_FACTOR_BASE],\n );\n\n const tweenParallax = useCallback(\n (_mainApi: EmblaCarouselType, eventName?: EmblaEventType) => {\n const engine = _mainApi.internalEngine();\n\n const scrollProgress = _mainApi.scrollProgress();\n\n const slidesInView = _mainApi.slidesInView();\n\n const isScrollEvent = eventName === 'scroll';\n\n _mainApi.scrollSnapList().forEach((scrollSnap, snapIndex) => {\n let diffToTarget = scrollSnap - scrollProgress;\n\n const slidesInSnap = engine.slideRegistry[snapIndex];\n\n slidesInSnap.forEach(slideIndex => {\n if (isScrollEvent && !slidesInView.includes(slideIndex)) return;\n\n if (engine.options.loop) {\n engine.slideLooper.loopPoints.forEach(loopItem => {\n const target = loopItem.target();\n\n if (slideIndex === loopItem.index && target !== 0) {\n const sign = Math.sign(target);\n\n if (sign === -1) {\n diffToTarget = scrollSnap - (1 + scrollProgress);\n }\n if (sign === 1) {\n diffToTarget = scrollSnap + (1 - scrollProgress);\n }\n }\n });\n }\n\n const translateValue =\n diffToTarget * (-1 * tweenFactor.current) * 100;\n\n const tweenNode = tweenNodes.current[slideIndex];\n\n if (tweenNode) {\n tweenNode.style.transform = `translateX(${translateValue}%)`;\n }\n });\n });\n },\n [],\n );\n\n useEffect(() => {\n if (!mainApi || !parallax) return;\n\n setTweenNodes(mainApi);\n setTweenFactor(mainApi);\n tweenParallax(mainApi);\n\n mainApi\n .on('reInit', setTweenNodes)\n .on('reInit', setTweenFactor)\n .on('reInit', tweenParallax)\n .on('scroll', tweenParallax);\n\n return () => {\n mainApi\n .off('reInit', setTweenNodes)\n .off('reInit', setTweenFactor)\n .off('reInit', tweenParallax)\n .off('scroll', tweenParallax);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [mainApi, tweenParallax]);\n\n return null;\n}\n","import { useCallback, useEffect, useState } from 'react';\nimport type { EmblaCarouselType } from 'embla-carousel';\n\nimport type { UseCarouselProgressReturn } from '../types';\n\nexport function useCarouselProgress(\n mainApi?: EmblaCarouselType,\n): UseCarouselProgressReturn {\n const [scrollProgress, setScrollProgress] = useState(0);\n\n const onScroll = useCallback((_mainApi: EmblaCarouselType) => {\n const progress = Math.max(0, Math.min(1, _mainApi.scrollProgress()));\n\n setScrollProgress(progress * 100);\n }, []);\n\n useEffect(() => {\n if (!mainApi) return;\n\n onScroll(mainApi);\n mainApi.on('reInit', onScroll);\n mainApi.on('scroll', onScroll);\n\n return () => {\n mainApi.off('reInit', onScroll).off('scroll', onScroll);\n };\n }, [mainApi, onScroll]);\n\n return { value: scrollProgress };\n}\n","import { useCallback, useEffect, useState } from 'react';\nimport type { EmblaCarouselType } from 'embla-carousel';\nimport useEmblaCarousel from 'embla-carousel-react';\n\nimport type { CarouselOptions, UseCarouselThumbsReturn } from '../types';\n\nexport function useThumbs(\n mainApi?: EmblaCarouselType,\n options?: Partial<CarouselOptions>,\n): UseCarouselThumbsReturn {\n const [thumbsRef, thumbsApi] = useEmblaCarousel({\n containScroll: 'keepSnaps',\n dragFree: true,\n ...options,\n });\n\n const [selectedIndex, setSelectedIndex] = useState(0);\n\n const onClickThumb = useCallback(\n (index: number) => {\n if (!mainApi || !thumbsApi) return;\n mainApi.scrollTo(index);\n },\n [mainApi, thumbsApi],\n );\n\n const onSelect = useCallback(() => {\n if (!mainApi || !thumbsApi) return;\n setSelectedIndex(mainApi.selectedScrollSnap());\n thumbsApi.scrollTo(mainApi.selectedScrollSnap());\n }, [mainApi, thumbsApi, setSelectedIndex]);\n\n useEffect(() => {\n if (!mainApi) return;\n onSelect();\n mainApi.on('select', onSelect);\n mainApi.on('reInit', onSelect);\n\n return () => {\n mainApi.off('select', onSelect);\n mainApi.off('reInit', onSelect);\n };\n }, [mainApi, onSelect]);\n\n return {\n onClickThumb,\n thumbsRef,\n thumbsApi,\n selectedIndex,\n };\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/DataView/index.tsx","../src/components/DataView/BulkActionsBar.tsx","../src/components/DataView/DataViewHeader.tsx","../src/components/DataView/DataViewMobileContent.tsx","../src/components/DataView/DataViewTopbar.tsx","../src/components/DataView/contants.ts","../src/components/DataView/EnhancedMoreActions.ts","../src/components/DataView/use-data-grid-slots.tsx","../src/components/DataView/DesktopFooter.tsx","../src/components/DataView/Toolbar.tsx","../src/components/DataView/use-selection-state.ts"],"names":["memo","useEffect","useMemo","useRef","useState","isEqual","IconButton","LinearProgress","Stack","Tooltip","useCallback","LoadingButton","Fragment","jsx","jsxs","resolveDynamicBoolean","value","context","resolveConfirmation","confirmation","BulkActionsBar","actions","confirmAction","setConfirmAction","runningActionId","setRunningActionId","visibleActions","action","executeAction","handleActionClick","handleConfirm","handleCloseConfirm","confirmationConfig","SelectionActions","disabled","loading","Icon_default","Confirm_default","BulkActionsBar_default","Button","Typography","DataViewHeader","title","breakpoint","showActions","showAdd","showHeaderMoreActions","showActionsContainer","onAdd","onOpenMoreActions","Header","ActionsContainer","ActionsDivider","DataViewHeader_default","DataViewMobileContent","fetching","rows","mobileSlots","mobileSlotsProps","slots","scrollableNodeRef","mobileRender","hideFooter","onPaginationChange","rowCount","paginationModel","Result_default","FixedProgressBar_default","LoadingProgress","Scrollbar_default","row","MobilePaginationContainer","Pagination_default","newPage","newRowsPerPage","DataViewMobileContent_default","DATAGRID_ACTIONS","Children","cloneElement","isValidElement","createEnhanceMoreActions","children","onClose","child","originalOnClick","enhancedProps","args","childProps","EnhancedMoreActions","EnhancedMoreActions_default","DataViewTopbar","isMobile","showSearch","showMoreActions","showTopbarMoreActions","filterButton","searchValue","onSearch","onSearchChange","moreActions","popover","Topbar","ToolbarActionsDivider","MoreActionsPopover","SearchContainer","SearchInput_default","v","e","DataViewTopbar_default","DesktopFooter","page","rowsPerPage","DesktopPaginationContainer","DesktopFooter_default","forwardRef","GridToolbarColumnsButton","ColumnsButton","props","ref","Toolbar","setFilterButtonEl","handleColumnsButtonRef","button","Portal_default","Toolbar_default","useDataGridSlots","showColumnButton","FooterComponent","use_data_grid_slots_default","useSelectionState","rowSelectionModel","onRowSelectionModelChange","getRowId","bulkActions","selectionModel","numSelected","pageRowIds","pageRowIdSet","selectedOnPageCount","count","id","allSelected","someSelected","emitRowSelectionChange","nextSelection","clearSelection","selectedIdSet","selectedRowsInPage","bulkActionContext","hasBulkActions","handleSelectAllToggle","_event","checked","selectedIds","use_selection_state_default","DataViewComponent","header","headerProps","columns","slotProps","fetchingNextPage","containerProps","activeFilters","onRowsScrollEnd","scrollEndThreshold","others","usePopover_default","useResponsive_default","filterButtonEl","node","handleScroll","scrollTop","scrollHeight","clientHeight","dataGridSlots","showTopbar","selectionOverlay","SelectionOverlay","SelectionCheckbox","SelectionCount","Container","TopbarDivider","DataGridWrapper","DataGrid_default","DataView_default"],"mappings":"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","sourcesContent":["import { memo, useEffect, useMemo, useRef, useState } from 'react';\nimport isEqual from 'react-fast-compare';\nimport IconButton from '@mui/material/IconButton';\nimport LinearProgress from '@mui/material/LinearProgress';\nimport Stack from '@mui/material/Stack';\nimport Tooltip from '@mui/material/Tooltip';\nimport {\n GridRowId,\n GridSlotsComponentsProps,\n GridValidRowModel,\n} from '@mui/x-data-grid-premium';\n\nimport DataGrid from 'components/DataGrid';\nimport Icon from 'components/Icon';\nimport usePopover from 'hooks/usePopover';\nimport useResponsive from 'hooks/useResponsive';\n\nimport BulkActionsBar from './BulkActionsBar';\nimport DataViewHeader from './DataViewHeader';\nimport DataViewMobileContent from './DataViewMobileContent';\nimport DataViewTopbar from './DataViewTopbar';\nimport { DataViewProps } from './props';\nimport {\n ActionsContainer,\n ActionsDivider,\n Container,\n DataGridWrapper,\n Header,\n MobilePaginationContainer,\n MoreActionsPopover,\n SearchContainer,\n SelectionActions,\n SelectionCheckbox,\n SelectionCount,\n SelectionOverlay,\n ToolbarActionsDivider,\n Topbar,\n TopbarDivider,\n} from './styles';\nimport useDataGridSlots from './use-data-grid-slots';\nimport useSelectionState from './use-selection-state';\n\nconst DataViewComponent = <T extends GridValidRowModel = GridValidRowModel>({\n title,\n header,\n headerProps,\n breakpoint = 'md',\n columns,\n rows = [],\n mobileSlots,\n mobileSlotsProps,\n mobileRender,\n rowCount = 0,\n paginationModel = { page: 0, pageSize: 25 },\n onPaginationChange,\n actions,\n moreActions,\n onAdd,\n onSearch,\n searchValue,\n onSearchChange,\n slots,\n slotProps,\n loading,\n fetching,\n fetchingNextPage,\n containerProps = { height: 562, maxHeight: 562 },\n hideFooter,\n showColumnButton = false,\n filterButton,\n activeFilters,\n bulkActions,\n onRowsScrollEnd,\n scrollEndThreshold = 200,\n ...others\n}: DataViewProps<T>) => {\n const popover = usePopover();\n const isMobile = useResponsive('down', breakpoint);\n const [filterButtonEl, setFilterButtonEl] =\n useState<HTMLButtonElement | null>(null);\n const scrollableNodeRef = useRef<HTMLDivElement | null>(null);\n\n useEffect(() => {\n const node = scrollableNodeRef.current;\n if (!node || !isMobile || !onRowsScrollEnd) return;\n\n const handleScroll = () => {\n const { scrollTop, scrollHeight, clientHeight } = node;\n const distanceToBottom = scrollHeight - scrollTop - clientHeight;\n if (distanceToBottom <= scrollEndThreshold) {\n (onRowsScrollEnd as () => void)();\n }\n };\n\n node.addEventListener('scroll', handleScroll, { passive: true });\n return () => {\n node.removeEventListener('scroll', handleScroll);\n };\n }, [isMobile, onRowsScrollEnd, scrollEndThreshold, rows.length]);\n\n const getRowId = useMemo(\n () =>\n (others.getRowId ?? ((row: GridValidRowModel) => row.id)) as (\n row: GridValidRowModel,\n ) => GridRowId,\n [others.getRowId],\n );\n\n const {\n numSelected,\n allSelected,\n someSelected,\n hasBulkActions,\n bulkActionContext,\n clearSelection,\n handleSelectAllToggle,\n } = useSelectionState<T>({\n rows,\n rowSelectionModel: Array.isArray(others.rowSelectionModel)\n ? others.rowSelectionModel\n : undefined,\n onRowSelectionModelChange: others.onRowSelectionModelChange as\n | ((model: GridRowId[], details?: unknown) => void)\n | undefined,\n getRowId,\n bulkActions,\n });\n\n const { dataGridSlots } = useDataGridSlots({\n slots,\n showColumnButton,\n rowCount,\n paginationModel,\n onPaginationChange,\n });\n\n const showSearch = !!onSearch;\n const showAdd = !!onAdd;\n const showActions = !!actions;\n const showMoreActions = !!moreActions;\n const showHeaderMoreActions = isMobile && showMoreActions;\n const showTopbarMoreActions = !isMobile && showMoreActions;\n const showActionsContainer = showActions || showAdd || showHeaderMoreActions;\n const showTopbar =\n showTopbarMoreActions ||\n showSearch ||\n showColumnButton ||\n !!filterButton ||\n !isMobile;\n\n const selectionOverlay = hasBulkActions && numSelected > 0 && (\n <SelectionOverlay>\n <Stack flexDirection=\"row\" alignItems=\"center\" gap={1} flex={1}>\n <Tooltip title=\"Selecione todos nessa pagina\">\n <SelectionCheckbox\n size=\"small\"\n checked={allSelected}\n indeterminate={someSelected}\n onChange={handleSelectAllToggle}\n />\n </Tooltip>\n\n <SelectionCount variant=\"body2\">\n {numSelected} selecionado{numSelected > 1 ? 's' : ''}\n </SelectionCount>\n\n <Tooltip title=\"Desselecionar tudo\">\n <IconButton\n size=\"small\"\n onClick={clearSelection}\n aria-label=\"Desselecionar tudo\"\n sx={{ color: 'primary.main' }}\n >\n <Icon icon=\"CLOSE_MARK_BUTTON\" width={18} height={18} />\n </IconButton>\n </Tooltip>\n </Stack>\n\n <BulkActionsBar actions={bulkActions ?? []} context={bulkActionContext} />\n </SelectionOverlay>\n );\n\n return (\n <Container\n key={loading ? 'loading' : 'data'}\n breakpoint={breakpoint}\n {...containerProps}\n flex={loading ? 1 : undefined}\n minHeight={loading || rows.length === 0 ? 562 : undefined}\n >\n {header ? (\n <Stack p={3} {...headerProps}>\n {header}\n </Stack>\n ) : (\n <>\n <DataViewHeader\n title={title}\n breakpoint={breakpoint}\n actions={actions}\n showActions={showActions}\n showAdd={showAdd}\n showHeaderMoreActions={showHeaderMoreActions}\n showActionsContainer={showActionsContainer}\n onAdd={onAdd}\n onOpenMoreActions={popover.onOpen}\n />\n\n {showTopbar && (\n <DataViewTopbar\n breakpoint={breakpoint}\n isMobile={isMobile}\n showSearch={showSearch}\n showMoreActions={showMoreActions}\n showTopbarMoreActions={showTopbarMoreActions}\n showHeaderMoreActions={showHeaderMoreActions}\n filterButton={filterButton}\n searchValue={searchValue}\n onSearch={onSearch}\n onSearchChange={onSearchChange}\n moreActions={moreActions}\n popover={popover}\n />\n )}\n\n {activeFilters && activeFilters}\n\n {!showTopbar && <TopbarDivider />}\n </>\n )}\n\n {isMobile ? (\n <DataViewMobileContent<T>\n fetching={fetching}\n loading={loading}\n rows={rows}\n mobileSlots={mobileSlots}\n mobileSlotsProps={mobileSlotsProps}\n slots={slots}\n scrollableNodeRef={scrollableNodeRef}\n mobileRender={mobileRender}\n hideFooter={hideFooter}\n onPaginationChange={onPaginationChange}\n rowCount={rowCount}\n paginationModel={paginationModel}\n />\n ) : (\n <DataGridWrapper>\n {selectionOverlay}\n <DataGrid\n columns={columns}\n rows={rows}\n slots={dataGridSlots}\n slotProps={{\n panel: { anchorEl: filterButtonEl },\n toolbar: {\n setFilterButtonEl,\n showQuickFilter: true,\n } as unknown as GridSlotsComponentsProps['toolbar'],\n ...slotProps,\n }}\n columnHeaderHeight={48}\n getRowHeight={() => 68}\n loading={loading}\n fetching={fetching}\n hideFooter={hideFooter}\n onRowsScrollEnd={onRowsScrollEnd}\n scrollEndThreshold={scrollEndThreshold}\n {...others}\n />\n </DataGridWrapper>\n )}\n\n {fetchingNextPage && <LinearProgress />}\n </Container>\n );\n};\n\nexport default memo(DataViewComponent, isEqual) as typeof DataViewComponent;\nexport {\n ActionsContainer,\n ActionsDivider,\n Container,\n DataGridWrapper,\n Header,\n MobilePaginationContainer,\n MoreActionsPopover,\n SearchContainer,\n SelectionActions,\n SelectionCount,\n SelectionOverlay,\n ToolbarActionsDivider,\n Topbar,\n};\nexport type {\n BulkAction,\n BulkActionConfirmation,\n BulkActionContext,\n} from './bulkActions';\nexport { default as DesktopFooter } from './DesktopFooter';\nexport { default as EnhancedMoreActions } from './EnhancedMoreActions';\nexport { default as Toolbar } from './Toolbar';\n","import { useCallback, useMemo, useState } from 'react';\nimport LoadingButton from '@mui/lab/LoadingButton';\nimport { GridValidRowModel } from '@mui/x-data-grid-premium';\n\nimport Confirm from 'components/Confirm';\nimport Icon from 'components/Icon';\nimport { IconName } from 'types/icon';\n\nimport type {\n BulkAction,\n BulkActionConfirmation,\n BulkActionContext,\n} from './bulkActions';\nimport type { BulkActionsBarProps } from './props';\nimport { SelectionActions } from './styles';\n\nconst resolveDynamicBoolean = <T extends GridValidRowModel>(\n value: boolean | ((context: BulkActionContext<T>) => boolean) | undefined,\n context: BulkActionContext<T>,\n) => (typeof value === 'function' ? value(context) : !!value);\n\nconst resolveConfirmation = <T extends GridValidRowModel>(\n confirmation: BulkAction<T>['confirmation'],\n context: BulkActionContext<T>,\n): BulkActionConfirmation | undefined => {\n if (!confirmation) return undefined;\n if (confirmation === true) return {};\n if (typeof confirmation === 'function') return confirmation(context);\n\n return confirmation;\n};\n\nconst BulkActionsBar = <T extends GridValidRowModel>({\n actions,\n context,\n}: BulkActionsBarProps<T>) => {\n const [confirmAction, setConfirmAction] = useState<BulkAction<T> | null>(\n null,\n );\n const [runningActionId, setRunningActionId] = useState<string | null>(null);\n\n const visibleActions = useMemo(\n () =>\n actions.filter(action => !resolveDynamicBoolean(action.hidden, context)),\n [actions, context],\n );\n\n const executeAction = useCallback(\n async (action: BulkAction<T>) => {\n setRunningActionId(action.actionId);\n try {\n await action.handler(context);\n } finally {\n setRunningActionId(null);\n }\n },\n [context],\n );\n\n const handleActionClick = useCallback(\n (action: BulkAction<T>) => {\n if (action.confirmation) {\n setConfirmAction(action);\n return;\n }\n\n void executeAction(action).catch(() => undefined);\n },\n [executeAction],\n );\n\n const handleConfirm = useCallback(async () => {\n if (!confirmAction) return;\n await executeAction(confirmAction);\n setConfirmAction(null);\n }, [confirmAction, executeAction]);\n\n const handleCloseConfirm = useCallback(() => {\n if (runningActionId) return;\n setConfirmAction(null);\n }, [runningActionId]);\n\n const confirmationConfig = resolveConfirmation(\n confirmAction?.confirmation,\n context,\n );\n\n return (\n <>\n <SelectionActions>\n {visibleActions.map(action => {\n const disabled =\n !!runningActionId ||\n resolveDynamicBoolean(action.disabled, context);\n const loading = runningActionId === action.actionId;\n\n return (\n <LoadingButton\n key={action.actionId}\n size=\"small\"\n variant=\"text\"\n onClick={() => handleActionClick(action)}\n loading={loading}\n disabled={disabled}\n sx={{ color: 'text.primary' }}\n startIcon={\n typeof action.icon === 'string' ? (\n <Icon icon={action.icon as IconName} />\n ) : (\n action.icon\n )\n }\n >\n {action.label}\n </LoadingButton>\n );\n })}\n </SelectionActions>\n\n {confirmAction && (\n <Confirm\n open\n onClose={handleCloseConfirm}\n onConfirm={() => {\n void handleConfirm().catch(() => undefined);\n }}\n confirming={runningActionId === confirmAction.actionId}\n modalTitle={\n confirmationConfig?.title ??\n `${confirmAction.action ?? 'Excluir'} ${context.selectedCount} ${confirmAction.entityName ?? 'registro'}${context.selectedCount !== 1 ? 's' : ''}?`\n }\n message={\n confirmationConfig?.message ?? 'Esta ação não poderá ser desfeita.'\n }\n cancelButtonText={confirmationConfig?.cancelButtonText ?? 'Cancelar'}\n confirmButtonText={\n confirmationConfig?.confirmButtonText ?? 'Sim, excluir'\n }\n />\n )}\n </>\n );\n};\n\nexport default BulkActionsBar;\n","import Button from '@mui/material/Button';\nimport Typography from '@mui/material/Typography';\n\nimport Icon from 'components/Icon';\n\nimport { DataViewHeaderProps } from './props';\nimport { ActionsContainer, ActionsDivider, Header } from './styles';\n\nconst DataViewHeader = ({\n title,\n breakpoint,\n actions,\n showActions,\n showAdd,\n showHeaderMoreActions,\n showActionsContainer,\n onAdd,\n onOpenMoreActions,\n}: DataViewHeaderProps) => (\n <Header breakpoint={breakpoint}>\n <Typography variant=\"overline\" color=\"text.secondary\" noWrap>\n {title}\n </Typography>\n\n {showActionsContainer && (\n <ActionsContainer breakpoint={breakpoint}>\n {showActions && actions}\n\n {showAdd && (\n <>\n {showActions && <ActionsDivider orientation=\"vertical\" flexItem />}\n\n <Button\n startIcon={<Icon icon=\"SIMPLE_ADD\" />}\n variant=\"contained\"\n onClick={onAdd}\n >\n Adicionar\n </Button>\n </>\n )}\n\n {showHeaderMoreActions && (\n <>\n {(showActions || showAdd) && (\n <ActionsDivider orientation=\"vertical\" flexItem />\n )}\n\n <Button\n color=\"inherit\"\n startIcon={<Icon icon=\"MORE_BOLD\" />}\n size=\"small\"\n onClick={onOpenMoreActions}\n >\n Mais\n </Button>\n </>\n )}\n </ActionsContainer>\n )}\n </Header>\n);\n\nexport default DataViewHeader;\n","import { Fragment } from 'react';\nimport Stack from '@mui/material/Stack';\nimport Typography from '@mui/material/Typography';\nimport { GridValidRowModel } from '@mui/x-data-grid-premium';\n\nimport FixedProgressBar from 'components/FixedProgressBar';\nimport Result from 'components/Result';\nimport Scrollbar from 'components/Scrollbar';\n\nimport Pagination from './Pagination';\nimport { DataViewMobileContentProps } from './props';\nimport { LoadingProgress, MobilePaginationContainer } from './styles';\n\nconst DataViewMobileContent = <T extends GridValidRowModel>({\n fetching,\n loading,\n rows,\n mobileSlots,\n mobileSlotsProps,\n slots,\n scrollableNodeRef,\n mobileRender,\n hideFooter,\n onPaginationChange,\n rowCount,\n paginationModel,\n}: DataViewMobileContentProps<T>) => (\n <Result\n isFetching={fetching}\n fetching={<FixedProgressBar />}\n isLoading={loading}\n loading={<LoadingProgress />}\n isEmpty={rows.length === 0}\n empty={\n <Stack flex={1} direction=\"column\" {...mobileSlotsProps}>\n {mobileSlots && mobileSlots}\n\n <Stack flex={1} alignItems=\"center\" justifyContent=\"center\">\n {slots?.noRowsOverlay ? (\n <slots.noRowsOverlay />\n ) : (\n <Typography variant=\"body2\" color=\"text.secondary\">\n Nenhum registro encontrado\n </Typography>\n )}\n </Stack>\n </Stack>\n }\n >\n <Stack direction=\"column\" flex={1} minHeight={0} {...mobileSlotsProps}>\n {mobileSlots && mobileSlots}\n\n <Scrollbar fillContent ref={scrollableNodeRef}>\n {rows.map(row => (\n <Fragment key={(row as unknown as { id: string }).id}>\n {mobileRender(row)}\n </Fragment>\n ))}\n </Scrollbar>\n </Stack>\n\n {!hideFooter && onPaginationChange && (\n <MobilePaginationContainer>\n <Pagination\n count={rowCount}\n page={paginationModel.page}\n rowsPerPage={paginationModel.pageSize}\n onPageChange={newPage =>\n onPaginationChange?.(newPage, paginationModel.pageSize)\n }\n onRowsPerPageChange={newRowsPerPage =>\n onPaginationChange?.(0, newRowsPerPage)\n }\n />\n </MobilePaginationContainer>\n )}\n </Result>\n);\n\nexport default DataViewMobileContent;\n","import Button from '@mui/material/Button';\nimport Stack from '@mui/material/Stack';\n\nimport Icon from 'components/Icon';\nimport SearchInput from 'components/SearchInput';\n\nimport { DATAGRID_ACTIONS } from './contants';\nimport EnhancedMoreActions from './EnhancedMoreActions';\nimport { DataViewTopbarProps } from './props';\nimport {\n MoreActionsPopover,\n SearchContainer,\n ToolbarActionsDivider,\n Topbar,\n} from './styles';\n\nconst DataViewTopbar = ({\n breakpoint,\n isMobile,\n showSearch,\n showMoreActions,\n showTopbarMoreActions,\n showHeaderMoreActions,\n filterButton,\n searchValue,\n onSearch,\n onSearchChange,\n moreActions,\n popover,\n}: DataViewTopbarProps) => (\n <Topbar breakpoint={breakpoint}>\n <Stack\n flex={1}\n direction=\"row\"\n alignItems=\"center\"\n id={DATAGRID_ACTIONS}\n gap={0.5}\n >\n {showMoreActions && (\n <>\n {showTopbarMoreActions && (\n <>\n <Button\n color=\"inherit\"\n startIcon={<Icon icon=\"MORE_BOLD\" />}\n size=\"small\"\n onClick={popover.onOpen}\n >\n Mais\n </Button>\n\n {!isMobile && (\n <ToolbarActionsDivider orientation=\"vertical\" flexItem />\n )}\n </>\n )}\n\n {(showTopbarMoreActions || showHeaderMoreActions) && (\n <MoreActionsPopover\n open={popover.open}\n anchorEl={popover.open}\n onClose={popover.onClose}\n disabledArrow={true}\n >\n <EnhancedMoreActions onClose={popover.onClose}>\n {moreActions}\n </EnhancedMoreActions>\n </MoreActionsPopover>\n )}\n </>\n )}\n\n {!isMobile && filterButton && (\n <>\n {filterButton}\n\n {showTopbarMoreActions && (\n <ToolbarActionsDivider orientation=\"vertical\" flexItem />\n )}\n </>\n )}\n </Stack>\n\n {showSearch && (\n <SearchContainer breakpoint={breakpoint}>\n <SearchInput\n value={searchValue}\n placeholder=\"Buscar\"\n onSearch={v => onSearch!(v ?? '')}\n onChange={e => onSearchChange?.(e.target.value)}\n size=\"small\"\n fullWidth\n iconPosition=\"start\"\n />\n {isMobile && filterButton && <Stack ml={1}>{filterButton}</Stack>}\n </SearchContainer>\n )}\n </Topbar>\n);\n\nexport default DataViewTopbar;\n","export const DATAGRID_ACTIONS = 'datagrid-actions';\n","import {\n Children,\n cloneElement,\n isValidElement,\n memo,\n ReactElement,\n ReactNode,\n} from 'react';\n\nimport { EnhancedMoreActionsProps } from './props';\n\nconst createEnhanceMoreActions = (\n children: ReactNode,\n onClose: () => void,\n): ReactNode => {\n return Children.map(children, child => {\n if (!isValidElement(child)) {\n return child;\n }\n\n const originalOnClick = (\n child.props as { onClick?: (...args: unknown[]) => void }\n ).onClick;\n\n const enhancedProps: {\n onClick?: (...args: unknown[]) => void;\n children?: ReactNode;\n } = {};\n\n enhancedProps.onClick = (...args: unknown[]) => {\n onClose();\n if (originalOnClick) {\n originalOnClick(...args);\n }\n };\n\n const childProps = child.props as { children?: ReactNode };\n if (childProps?.children) {\n enhancedProps.children = createEnhanceMoreActions(\n childProps.children,\n onClose,\n );\n }\n\n return cloneElement(child as ReactElement, enhancedProps);\n });\n};\n\nconst EnhancedMoreActions = ({\n children,\n onClose,\n}: EnhancedMoreActionsProps) => {\n if (!children) return null;\n return createEnhanceMoreActions(children, onClose);\n};\n\nexport default memo(EnhancedMoreActions);\n","import { useCallback, useMemo } from 'react';\n\nimport DesktopFooter from './DesktopFooter';\nimport { DataGridSlotsProps } from './props';\nimport { UseDataGridSlotsProps, UseDataGridSlotsReturn } from './props';\nimport Toolbar from './Toolbar';\n\nconst useDataGridSlots = ({\n slots,\n showColumnButton,\n rowCount,\n paginationModel,\n onPaginationChange,\n}: UseDataGridSlotsProps): UseDataGridSlotsReturn => {\n const FooterComponent = useCallback(() => {\n if (onPaginationChange) {\n return (\n <DesktopFooter\n rowCount={rowCount}\n page={paginationModel.page}\n rowsPerPage={paginationModel.pageSize}\n onPaginationChange={onPaginationChange}\n />\n );\n }\n return null;\n }, [rowCount, paginationModel, onPaginationChange]);\n\n const dataGridSlots: DataGridSlotsProps = useMemo(\n () => ({\n ...slots,\n footer: FooterComponent as unknown as DataGridSlotsProps['footer'],\n ...(showColumnButton &&\n !slots?.toolbar && {\n toolbar: Toolbar as unknown as DataGridSlotsProps['toolbar'],\n }),\n }),\n [slots, FooterComponent, showColumnButton],\n );\n\n return { dataGridSlots };\n};\n\nexport default useDataGridSlots;\n","import { memo } from 'react';\nimport Stack from '@mui/material/Stack';\nimport Typography from '@mui/material/Typography';\n\nimport Pagination from './Pagination';\nimport { DesktopFooterProps } from './props';\nimport { DesktopPaginationContainer } from './styles';\n\nconst DesktopFooter = ({\n rowCount,\n page,\n rowsPerPage,\n onPaginationChange,\n}: DesktopFooterProps) => {\n return (\n <DesktopPaginationContainer>\n <Stack direction=\"row\" alignItems=\"center\" gap={0.5}>\n <Typography variant=\"body2\" color=\"text.disabled\">\n Total de itens:\n </Typography>\n <Typography variant=\"body2\">{rowCount}</Typography>\n </Stack>\n\n <Pagination\n count={rowCount}\n page={page}\n rowsPerPage={rowsPerPage}\n onPageChange={newPage => onPaginationChange(newPage, rowsPerPage)}\n onRowsPerPageChange={newRowsPerPage =>\n onPaginationChange(0, newRowsPerPage)\n }\n />\n </DesktopPaginationContainer>\n );\n};\n\nexport default memo(DesktopFooter);\n","import { forwardRef, useCallback } from 'react';\nimport Button, { ButtonProps } from '@mui/material/Button';\nimport { GridToolbarColumnsButton } from '@mui/x-data-grid-premium';\n\nimport Icon from 'components/Icon';\nimport Portal from 'components/Portal';\n\nimport { DATAGRID_ACTIONS } from './contants';\nimport { ToolbarProps } from './props';\n\nconst ColumnsButton = forwardRef<HTMLButtonElement, ButtonProps>(\n ({ children, ...props }, ref) => (\n <Button\n {...props}\n ref={ref}\n color=\"inherit\"\n startIcon={<Icon icon=\"COLUMNS\" />}\n >\n {children ?? 'Colunas'}\n </Button>\n ),\n);\n\nColumnsButton.displayName = 'ColumnsButton';\n\nconst Toolbar = ({ setFilterButtonEl }: ToolbarProps) => {\n const handleColumnsButtonRef = useCallback(\n (button: HTMLButtonElement | null) => {\n setFilterButtonEl(button);\n },\n [setFilterButtonEl],\n );\n\n return (\n <Portal container={DATAGRID_ACTIONS}>\n <GridToolbarColumnsButton\n ref={handleColumnsButtonRef}\n slotProps={{\n button: {\n color: 'inherit',\n startIcon: <Icon icon=\"COLUMNS\" />,\n children: 'Colunas',\n },\n }}\n />\n </Portal>\n );\n};\n\nexport default Toolbar;\n","import { ChangeEvent, useCallback, useMemo } from 'react';\nimport { GridRowId, GridValidRowModel } from '@mui/x-data-grid-premium';\n\nimport type { BulkAction, BulkActionContext } from './bulkActions';\n\ninterface UseSelectionStateProps<T extends GridValidRowModel> {\n rows: readonly T[];\n rowSelectionModel: GridRowId[] | undefined;\n onRowSelectionModelChange:\n | ((model: GridRowId[], details?: unknown) => void)\n | undefined;\n getRowId: (row: GridValidRowModel) => GridRowId;\n bulkActions: BulkAction<T>[] | undefined;\n}\n\ninterface UseSelectionStateReturn<T extends GridValidRowModel> {\n selectionModel: GridRowId[];\n numSelected: number;\n allSelected: boolean;\n someSelected: boolean;\n hasBulkActions: boolean;\n bulkActionContext: BulkActionContext<T>;\n clearSelection: () => void;\n handleSelectAllToggle: (\n event: ChangeEvent<HTMLInputElement>,\n checked: boolean,\n ) => void;\n}\n\nconst useSelectionState = <T extends GridValidRowModel>({\n rows,\n rowSelectionModel,\n onRowSelectionModelChange,\n getRowId,\n bulkActions,\n}: UseSelectionStateProps<T>): UseSelectionStateReturn<T> => {\n const selectionModel = useMemo(() => {\n if (Array.isArray(rowSelectionModel)) return rowSelectionModel;\n return [];\n }, [rowSelectionModel]);\n\n const numSelected = selectionModel.length;\n\n const pageRowIds = useMemo(\n () => rows.map(row => getRowId(row)),\n [rows, getRowId],\n );\n\n const pageRowIdSet = useMemo(() => new Set(pageRowIds), [pageRowIds]);\n\n const selectedOnPageCount = useMemo(\n () =>\n selectionModel.reduce<number>(\n (count, id) => count + (pageRowIdSet.has(id) ? 1 : 0),\n 0,\n ),\n [selectionModel, pageRowIdSet],\n );\n\n const allSelected =\n pageRowIds.length > 0 && selectedOnPageCount === pageRowIds.length;\n const someSelected = selectedOnPageCount > 0 && !allSelected;\n\n const emitRowSelectionChange = useCallback(\n (nextSelection: GridRowId[]) => {\n if (!onRowSelectionModelChange) return;\n onRowSelectionModelChange(nextSelection);\n },\n [onRowSelectionModelChange],\n );\n\n const clearSelection = useCallback(() => {\n emitRowSelectionChange([]);\n }, [emitRowSelectionChange]);\n\n const selectedIdSet = useMemo(\n () => new Set(selectionModel),\n [selectionModel],\n );\n\n const selectedRowsInPage = useMemo(\n () => rows.filter(row => selectedIdSet.has(getRowId(row))) as T[],\n [rows, selectedIdSet, getRowId],\n );\n\n const bulkActionContext: BulkActionContext<T> = useMemo(\n () => ({\n selectedIds: selectionModel,\n selectedRowsInPage: selectedRowsInPage as T[],\n selectedCount: numSelected,\n clearSelection,\n }),\n [selectionModel, selectedRowsInPage, numSelected, clearSelection],\n );\n\n const hasBulkActions = !!bulkActions?.length;\n\n const handleSelectAllToggle = useCallback(\n (_event: ChangeEvent<HTMLInputElement>, checked: boolean) => {\n if (!onRowSelectionModelChange) return;\n\n if (checked) {\n const selectedIds = new Set(selectionModel);\n const nextSelection = [...selectionModel];\n pageRowIds.forEach(id => {\n if (!selectedIds.has(id)) nextSelection.push(id);\n });\n emitRowSelectionChange(nextSelection);\n return;\n }\n\n const nextSelection = selectionModel.filter(id => !pageRowIdSet.has(id));\n emitRowSelectionChange(nextSelection);\n },\n [\n onRowSelectionModelChange,\n selectionModel,\n pageRowIds,\n pageRowIdSet,\n emitRowSelectionChange,\n ],\n );\n\n return {\n selectionModel,\n numSelected,\n allSelected,\n someSelected,\n hasBulkActions,\n bulkActionContext,\n clearSelection,\n handleSelectAllToggle,\n };\n};\n\nexport type { UseSelectionStateProps, UseSelectionStateReturn };\nexport default useSelectionState;\n"]}
@@ -1,12 +0,0 @@
1
- import { a } from './chunk-W3CK33IH.js';
2
- import { f } from './chunk-OF6623HG.js';
3
- import { a as a$1 } from './chunk-FBVAHVU3.js';
4
- import { forwardRef, useState, useRef, useMemo, useCallback } from 'react';
5
- import T from '@mui/material/IconButton';
6
- import R from '@mui/material/InputAdornment';
7
- import { jsx } from 'react/jsx-runtime';
8
-
9
- var C=forwardRef(({name:M,increment:e=1,updadteForMultiple:P,allowNegative:u=!1,value:m,onChange:c,minValue:r,maxValue:o,decimalScale:p,disabled:i,tabIndex:w,labelIncrementer:B,labelDecrementer:O,placeholder:z,InputProps:y,...E},L)=>{let[N,_]=useState(`incrementer-input-${Date.now()}`),I=useRef(null),s=Number(m||0),b=()=>{I.current&&(clearTimeout(I.current),I.current=null);},$=useMemo(()=>{let n=s-e;return typeof r=="number"&&n<r?!0:i||!u&&n<0},[i,s,e,r,u]),G=useMemo(()=>{let n=s+e;return typeof o=="number"&&n>o?!0:i},[i,s,e,o]),H=useCallback(()=>{if(b(),!u&&s-e<0)return;let n=s-e,t=r!==void 0&&n<r?r:f(n,p);c(t);},[s,e,r,p,c,u]),K=n=>r!==void 0&&n<r?r:o!==void 0&&n>o?o:f(n,p),U=useCallback(()=>{b();let n=s+e,t=K(n);c(t);},[s,e,o,r,p,c]),W=useCallback(n=>{b();let t=Number(n.target.value||0);(e!==1||P)&&(t=t+e/2,t-=t%e),!u&&t<0&&(t=0),typeof r=="number"&&t<r&&(t=r),typeof o=="number"&&t>o&&(t=o),t=f(t,p),(!t||t===m)&&(I.current=setTimeout(()=>{_(`incrementer-input-${Date.now()}`);},600)),c(t);},[m,e,r,o,p,c,P,u]);return jsx(a,{ref:L,name:M,value:m,minValue:r,maxValue:o,allowNegative:u,decimalScale:p,InputProps:{...y,startAdornment:jsx(R,{position:"start",sx:{ml:-1},children:jsx(T,{onClick:H,disabled:$,size:"small","aria-label":O||"Decrementa",sx:{p:.5},children:jsx(a$1,{icon:"MINUS_SIGN",width:14,height:14,color:"primary.main"})})}),endAdornment:jsx(R,{position:"end",sx:{mr:-1},children:jsx(T,{onClick:U,disabled:G,size:"small","aria-label":B||"Incrementa",sx:{p:.5},children:jsx(a$1,{icon:"SIMPLE_ADD",width:14,height:14,color:"primary.main"})})}),inputProps:{...y?.inputProps,style:{...y?.inputProps?.style,textAlign:"center"},sx:{mx:-2.5}}},inputProps:{tabIndex:w},onChange:W,disabled:i,placeholder:z,...E},N)});C.displayName="Incrementer";var x=C;
10
-
11
- export { x as a };
12
- //# sourceMappingURL=chunk-FQOV5EGQ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/Incrementer/index.tsx"],"names":["forwardRef","useCallback","useMemo","useRef","useState","IconButton","InputAdornment","jsx","Incrementer","name","increment","updadteForMultiple","allowNegative","originalValue","onChange","minValue","maxValue","decimalScale","disabled","tabIndex","labelIncrementer","labelDecrementer","placeholder","InputProps","other","ref","inputkey","setInputKey","timer","value","clearTimer","disableDecrement","nextValue","disableIncrement","handleClickDecrement","valueMinusIncrement","newValue","fWithDecimalPlacesOrNot","getIncrementValue","handleClickIncrement","valuePlusIncrement","handleChange","e","NumberInput_default","Icon_default","Incrementer_default"],"mappings":"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","sourcesContent":["import { forwardRef, useCallback, useMemo, useRef, useState } from 'react';\nimport IconButton from '@mui/material/IconButton';\nimport InputAdornment from '@mui/material/InputAdornment';\n\nimport { OnChangeReturn } from 'types/numberInputProps';\nimport { fWithDecimalPlacesOrNot } from 'utils/formatNumber';\n\nimport Icon from '../Icon';\nimport NumberInput from '../NumberInput';\n\nimport { IncrementerProps } from './props';\n\nconst Incrementer = forwardRef<HTMLDivElement, IncrementerProps>(\n (\n {\n name,\n increment = 1,\n updadteForMultiple,\n allowNegative = false,\n value: originalValue,\n onChange,\n minValue,\n maxValue,\n decimalScale,\n disabled,\n tabIndex,\n labelIncrementer,\n labelDecrementer,\n placeholder,\n InputProps,\n ...other\n },\n ref,\n ) => {\n const [inputkey, setInputKey] = useState(`incrementer-input-${Date.now()}`);\n const timer = useRef<ReturnType<typeof setTimeout> | null>(null);\n const value = Number(originalValue || 0);\n\n const clearTimer = () => {\n if (!timer.current) return;\n clearTimeout(timer.current);\n timer.current = null;\n };\n\n const disableDecrement = useMemo(() => {\n const nextValue = value - increment;\n if (typeof minValue === 'number' && nextValue < minValue) return true;\n return disabled || (!allowNegative && nextValue < 0);\n }, [disabled, value, increment, minValue, allowNegative]);\n\n const disableIncrement = useMemo(() => {\n const nextValue = value + increment;\n if (typeof maxValue === 'number' && nextValue > maxValue) return true;\n\n return disabled;\n }, [disabled, value, increment, maxValue]);\n\n const handleClickDecrement = useCallback(() => {\n clearTimer();\n if (!allowNegative && value - increment < 0) return;\n\n const valueMinusIncrement = value - increment;\n const newValue =\n minValue !== undefined && valueMinusIncrement < minValue\n ? minValue\n : fWithDecimalPlacesOrNot(valueMinusIncrement, decimalScale);\n\n onChange(newValue);\n }, [value, increment, minValue, decimalScale, onChange, allowNegative]);\n\n const getIncrementValue = (value: number) => {\n if (minValue !== undefined && value < minValue) {\n return minValue;\n }\n if (maxValue !== undefined && value > maxValue) {\n return maxValue;\n }\n return fWithDecimalPlacesOrNot(value, decimalScale);\n };\n\n const handleClickIncrement = useCallback(() => {\n clearTimer();\n const valuePlusIncrement = value + increment;\n const newValue = getIncrementValue(valuePlusIncrement);\n onChange(newValue);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value, increment, maxValue, minValue, decimalScale, onChange]);\n\n const handleChange = useCallback(\n (e: OnChangeReturn) => {\n clearTimer();\n let newValue = Number(e.target.value || 0);\n\n if (increment !== 1 || updadteForMultiple) {\n newValue = newValue + increment / 2;\n newValue -= newValue % increment;\n }\n\n if (!allowNegative && newValue < 0) {\n newValue = 0;\n }\n\n if (typeof minValue === 'number' && newValue < minValue) {\n newValue = minValue;\n }\n\n if (typeof maxValue === 'number' && newValue > maxValue) {\n newValue = maxValue;\n }\n\n newValue = fWithDecimalPlacesOrNot(newValue, decimalScale);\n if (!newValue || newValue === originalValue) {\n timer.current = setTimeout(() => {\n //force clean when new value is the same as original value\n setInputKey(`incrementer-input-${Date.now()}`);\n }, 600);\n }\n\n onChange(newValue);\n return;\n },\n [\n originalValue,\n increment,\n minValue,\n maxValue,\n decimalScale,\n onChange,\n updadteForMultiple,\n allowNegative,\n ],\n );\n\n return (\n <NumberInput\n key={inputkey}\n ref={ref}\n name={name}\n value={originalValue}\n minValue={minValue}\n maxValue={maxValue}\n allowNegative={allowNegative}\n decimalScale={decimalScale}\n InputProps={{\n ...InputProps,\n startAdornment: (\n <InputAdornment position=\"start\" sx={{ ml: -1 }}>\n <IconButton\n onClick={handleClickDecrement}\n disabled={disableDecrement}\n size=\"small\"\n aria-label={labelDecrementer || 'Decrementa'}\n sx={{ p: 0.5 }}\n >\n <Icon\n icon=\"MINUS_SIGN\"\n width={14}\n height={14}\n color=\"primary.main\"\n />\n </IconButton>\n </InputAdornment>\n ),\n endAdornment: (\n <InputAdornment position=\"end\" sx={{ mr: -1 }}>\n <IconButton\n onClick={handleClickIncrement}\n disabled={disableIncrement}\n size=\"small\"\n aria-label={labelIncrementer || 'Incrementa'}\n sx={{ p: 0.5 }}\n >\n <Icon\n icon=\"SIMPLE_ADD\"\n width={14}\n height={14}\n color=\"primary.main\"\n />\n </IconButton>\n </InputAdornment>\n ),\n inputProps: {\n ...InputProps?.inputProps,\n style: {\n ...InputProps?.inputProps?.style,\n textAlign: 'center',\n },\n sx: {\n mx: -2.5,\n },\n },\n }}\n inputProps={{ tabIndex }}\n onChange={handleChange}\n disabled={disabled}\n placeholder={placeholder}\n {...other}\n />\n );\n },\n);\n\nIncrementer.displayName = 'Incrementer';\n\nexport default Incrementer;\n"]}
@@ -1,6 +0,0 @@
1
- import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
-
3
- var l=({isFetching:e,fetching:n,isLoading:u,loading:f,anError:a,error:s,isEmpty:p,empty:d,data:t,children:r})=>{if(u)return f||"Carregando...";if(a)return s||"Error";if(p)return d||"Nenhum resultado";let i=t!==void 0&&typeof r=="function"?r(t):r;return jsxs(Fragment,{children:[e&&jsx(Fragment,{children:n||"Carregando..."}),i]})},m=l;
4
-
5
- export { m as a };
6
- //# sourceMappingURL=chunk-IJZCVZ32.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/Result/index.tsx"],"names":["Fragment","jsx","jsxs","Result","isFetching","fetching","isLoading","loading","anError","error","isEmpty","empty","data","children","content","Result_default"],"mappings":"AA0BI,OACiB,YAAAA,EAAA,OAAAC,EADjB,QAAAC,MAAA,oBAxBJ,IAAMC,EAAS,CAAS,CACtB,WAAAC,EACA,SAAAC,EACA,UAAAC,EACA,QAAAC,EACA,QAAAC,EACA,MAAAC,EACA,QAAAC,EACA,MAAAC,EACA,KAAAC,EACA,SAAAC,CACF,IAA0B,CACxB,GAAIP,EAAW,OAAOC,GAAW,gBAEjC,GAAIC,EAAS,OAAOC,GAAS,QAE7B,GAAIC,EAAS,OAAOC,GAAS,mBAE7B,IAAMG,EACJF,IAAS,QAAa,OAAOC,GAAa,WACtCA,EAASD,CAAI,EACbC,EAEN,OACEX,EAAAF,EAAA,CACG,UAAAI,GAAcH,EAAAD,EAAA,CAAG,SAAAK,GAAY,gBAAgB,EAC7CS,GACH,CAEJ,EAEOC,EAAQZ","sourcesContent":["import { ResultProps } from './props';\n\nconst Result = <TData,>({\n isFetching,\n fetching,\n isLoading,\n loading,\n anError,\n error,\n isEmpty,\n empty,\n data,\n children,\n}: ResultProps<TData>) => {\n if (isLoading) return loading || 'Carregando...';\n\n if (anError) return error || 'Error';\n\n if (isEmpty) return empty || 'Nenhum resultado';\n\n const content =\n data !== undefined && typeof children === 'function'\n ? children(data)\n : children;\n\n return (\n <>\n {isFetching && <>{fetching || 'Carregando...'}</>}\n {content}\n </>\n );\n};\n\nexport default Result;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/Tooltip/index.tsx"],"names":["MuiTooltip","jsx","Tooltip","children","props","Tooltip_default"],"mappings":"AAAA,OAAOA,MAAkC,wBAIrC,cAAAC,MAAA,oBAFJ,IAAMC,EAAU,CAAC,CAAE,SAAAC,EAAU,GAAGC,CAAM,IAElCH,EAACD,EAAA,CAAY,GAAGI,EACb,SAAAD,EACH,EAIGE,EAAQH","sourcesContent":["import MuiTooltip, { TooltipProps } from '@mui/material/Tooltip';\n\nconst Tooltip = ({ children, ...props }: TooltipProps) => {\n return (\n <MuiTooltip {...props}>\n {children}\n </MuiTooltip>\n );\n};\n\nexport default Tooltip;\n"]}
@@ -1,7 +0,0 @@
1
- import { a } from './chunk-POTVACYB.js';
2
- import { useEffect } from 'react';
3
-
4
- function l(n,s,t,o){let d=a(s);useEffect(()=>{let e=t?.current||window;if(!(e&&e.addEventListener))return;let i=E=>d(E);return e.addEventListener(n,i,o),()=>{e.removeEventListener(n,i);}},[t,n,o,d]);}var p=l;
5
-
6
- export { p as a };
7
- //# sourceMappingURL=chunk-KKVRDMSE.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/hooks/useEventListener.ts"],"names":["useEffect","useEventListener","eventName","handler","element","options","stableHandler","useEventCallback_default","targetElement","eventListener","event","useEventListener_default"],"mappings":"wCAAA,OAAoB,aAAAA,MAAiB,QA+BrC,SAASC,EAKPC,EACAC,EAGAC,EACAC,EACA,CACA,IAAMC,EAAgBC,EAAiBJ,CAAO,EAE9CH,EAAU,IAAM,CACd,IAAMQ,EAA4BJ,GAAS,SAAW,OACtD,GAAI,EAAEI,GAAiBA,EAAc,kBACnC,OAGF,IAAMC,EAAgCC,GAASJ,EAAcI,CAAK,EAElE,OAAAF,EAAc,iBAAiBN,EAAWO,EAAeJ,CAAO,EAEzD,IAAM,CACXG,EAAc,oBAAoBN,EAAWO,CAAa,CAC5D,CACF,EAAG,CAACL,EAASF,EAAWG,EAASC,CAAa,CAAC,CACjD,CAEA,IAAOK,EAAQV","sourcesContent":["import { RefObject, useEffect } from 'react';\n\nimport useEventCallback from './useEventCallback';\n\n// Window Event based useEventListener interface\nfunction useEventListener<K extends keyof WindowEventMap>(\n eventName: K,\n handler: (event: WindowEventMap[K]) => void,\n element?: undefined,\n options?: boolean | AddEventListenerOptions,\n): void;\n\n// Element Event based useEventListener interface\nfunction useEventListener<\n K extends keyof HTMLElementEventMap,\n T extends HTMLElement = HTMLDivElement,\n>(\n eventName: K,\n handler: (event: HTMLElementEventMap[K]) => void,\n element: RefObject<T | null>,\n options?: boolean | AddEventListenerOptions,\n): void;\n\n// Document Event based useEventListener interface\nfunction useEventListener<K extends keyof DocumentEventMap>(\n eventName: K,\n handler: (event: DocumentEventMap[K]) => void,\n element: RefObject<Document | null>,\n options?: boolean | AddEventListenerOptions,\n): void;\n\nfunction useEventListener<\n KW extends keyof WindowEventMap,\n KH extends keyof HTMLElementEventMap,\n T extends HTMLElement | void = void,\n>(\n eventName: KW | KH,\n handler: (\n event: WindowEventMap[KW] | HTMLElementEventMap[KH] | Event,\n ) => void,\n element?: RefObject<T | null>,\n options?: boolean | AddEventListenerOptions,\n) {\n const stableHandler = useEventCallback(handler);\n\n useEffect(() => {\n const targetElement: T | Window = element?.current || window;\n if (!(targetElement && targetElement.addEventListener)) {\n return;\n }\n\n const eventListener: typeof handler = event => stableHandler(event);\n\n targetElement.addEventListener(eventName, eventListener, options);\n\n return () => {\n targetElement.removeEventListener(eventName, eventListener);\n };\n }, [element, eventName, options, stableHandler]);\n}\n\nexport default useEventListener;\n"]}
@@ -1,7 +0,0 @@
1
- import { useTheme } from '@mui/material/styles';
2
- import o from '@mui/material/useMediaQuery';
3
-
4
- var l=(n,t,r)=>{let e=useTheme(),a=o(e.breakpoints.up(t)),s=o(e.breakpoints.down(t)),p=o(e.breakpoints.between(t,r)),i=o(e.breakpoints.only(t));return n==="up"?a:n==="down"?s:n==="between"?p:i};function y(){let n=useTheme();return [...n.breakpoints.keys].reverse().reduce((r,e)=>{let a=o(n.breakpoints.up(e));return !r&&a?e:r},null)||"xs"}var b=l;
5
-
6
- export { y as a, b };
7
- //# sourceMappingURL=chunk-RPO7AI5K.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/hooks/useResponsive.ts"],"names":["useTheme","useMediaQuery","useResponsive","query","start","end","theme","mediaUp","mediaDown","mediaBetween","mediaOnly","useWidth","output","key","matches","useResponsive_default"],"mappings":"AAAA,OAAqB,YAAAA,MAAgB,uBACrC,OAAOC,MAAmB,8BAQ1B,IAAMC,EAAgB,CACpBC,EACAC,EACAC,IACe,CACf,IAAMC,EAAQN,EAAS,EAEjBO,EAAUN,EAAcK,EAAM,YAAY,GAAGF,CAAc,CAAC,EAE5DI,EAAYP,EAAcK,EAAM,YAAY,KAAKF,CAAc,CAAC,EAEhEK,EAAeR,EACnBK,EAAM,YAAY,QAAQF,EAAgBC,CAAY,CACxD,EAEMK,EAAYT,EAAcK,EAAM,YAAY,KAAKF,CAAmB,CAAC,EAE3E,OAAID,IAAU,KACLI,EAGLJ,IAAU,OACLK,EAGLL,IAAU,UACLM,EAGFC,CACT,EAIO,SAASC,GAAW,CACzB,IAAML,EAAQN,EAAS,EAIvB,MAFa,CAAC,GAAGM,EAAM,YAAY,IAAI,EAAE,QAAQ,EAG1C,OAAO,CAACM,EAA0BC,IAAoB,CAEzD,IAAMC,EAAUb,EAAcK,EAAM,YAAY,GAAGO,CAAG,CAAC,EAEvD,MAAO,CAACD,GAAUE,EAAUD,EAAMD,CACpC,EAAG,IAAI,GAAK,IAEhB,CAEA,IAAOG,EAAQb","sourcesContent":["import { Breakpoint, useTheme } from '@mui/material/styles';\nimport useMediaQuery from '@mui/material/useMediaQuery';\n\ntype ReturnType = boolean;\n\ntype Query = 'up' | 'down' | 'between' | 'only';\n\ntype Value = Breakpoint | number;\n\nconst useResponsive = (\n query: Query,\n start?: Value,\n end?: Value,\n): ReturnType => {\n const theme = useTheme();\n\n const mediaUp = useMediaQuery(theme.breakpoints.up(start as Value));\n\n const mediaDown = useMediaQuery(theme.breakpoints.down(start as Value));\n\n const mediaBetween = useMediaQuery(\n theme.breakpoints.between(start as Value, end as Value),\n );\n\n const mediaOnly = useMediaQuery(theme.breakpoints.only(start as Breakpoint));\n\n if (query === 'up') {\n return mediaUp;\n }\n\n if (query === 'down') {\n return mediaDown;\n }\n\n if (query === 'between') {\n return mediaBetween;\n }\n\n return mediaOnly;\n};\n\ntype BreakpointOrNull = Breakpoint | null;\n\nexport function useWidth() {\n const theme = useTheme();\n\n const keys = [...theme.breakpoints.keys].reverse();\n\n return (\n keys.reduce((output: BreakpointOrNull, key: Breakpoint) => {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const matches = useMediaQuery(theme.breakpoints.up(key));\n\n return !output && matches ? key : output;\n }, null) || 'xs'\n );\n}\n\nexport default useResponsive;\n"]}
@@ -1,34 +0,0 @@
1
- import { a } from './chunk-3ELMAXMX.js';
2
- import { a as a$5 } from './chunk-PWR4GBUH.js';
3
- import { a as a$2 } from './chunk-YKLRB3EJ.js';
4
- import { e } from './chunk-OF6623HG.js';
5
- import { a as a$6 } from './chunk-6U5LS7MP.js';
6
- import { a as a$3 } from './chunk-JSL5OEWZ.js';
7
- import { j } from './chunk-2A4XOLBZ.js';
8
- import { a as a$4 } from './chunk-FBVAHVU3.js';
9
- import { a as a$7 } from './chunk-SVX7EWV4.js';
10
- import { a as a$1 } from './chunk-XNKYJHNL.js';
11
- import { memo, forwardRef, useMemo, useLayoutEffect, useCallback, useState, useRef, useEffect, useId } from 'react';
12
- import sr from '@mui/material/FormHelperText';
13
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
14
- import { useSensors, useSensor, PointerSensor, KeyboardSensor, DndContext, closestCenter } from '@dnd-kit/core';
15
- import { restrictToHorizontalAxis, restrictToParentElement, restrictToWindowEdges } from '@dnd-kit/modifiers';
16
- import { useSortable, sortableKeyboardCoordinates, SortableContext, horizontalListSortingStrategy } from '@dnd-kit/sortable';
17
- import { m, AnimatePresence } from 'framer-motion';
18
- import { CSS } from '@dnd-kit/utilities';
19
- import he from '@mui/material/Stack';
20
- import eo from '@mui/material/Typography';
21
- import ze from '@mui/material/Box';
22
- import cr from '@mui/material/IconButton';
23
- import mr from '@mui/material/Paper';
24
- import { styled, alpha, useTheme } from '@mui/material/styles';
25
- import gr from '@mui/material/Badge';
26
- import Jr from '@mui/material/ButtonBase';
27
- import et from '@mui/material/Tooltip';
28
- import { useDropzone } from 'react-dropzone';
29
- import ri from '@mui/material/CircularProgress';
30
-
31
- var pr=({helperText:e,disabled:o,isError:r})=>e?jsx(sr,{error:r,sx:a=>({mx:"14px",color:o?a.palette.grey[500]:void 0}),children:e}):null,S=memo(pr);var Ce=styled(he)({position:"relative",width:"100%",borderRadius:8,overflow:"hidden","&:hover .actions":{display:"flex"}}),ke=styled(he)({position:"absolute",top:4,right:4,gap:.5,"& svg":{width:16,height:16}}),lo=styled(ze,{shouldForwardProp:e=>!["isDragActive","isError","disabled"].includes(e)})(({theme:e,isDragActive:o,isError:r,disabled:a})=>({outline:"none",cursor:"pointer",overflow:"hidden",position:"relative",padding:e.spacing(5),borderRadius:e.shape.borderRadius,transition:e.transitions.create("padding"),backgroundColor:e.palette.background.neutral,border:`dashed 1px ${e.palette.divider}`,...o&&{opacity:.72},...r&&{color:e.palette.error.main,backgroundColor:e.palette.error.lighter,borderColor:e.palette.error.light},...a&&{opacity:.48,pointerEvents:"none"},"&:hover":{opacity:.72}})),so=styled(cr)(({theme:e})=>({position:"relative",zIndex:999,pointerEvents:"auto",color:e.palette.grey[700],backgroundColor:e.palette.grey[100],"&:hover":{color:e.palette.grey[900],backgroundColor:e.palette.grey[300]}})),Xe=styled("div")({position:"relative",zIndex:1,userSelect:"none","&:hover":{zIndex:2}}),po=styled(he,{shouldForwardProp:e=>!["isDragging"].includes(e)})(({theme:e,width:o,isDragging:r})=>({width:o,height:100,alignItems:"center",display:"inline-flex",justifyContent:"center",margin:e.spacing(.5),padding:e.spacing(2,1,2,1),gap:e.spacing(1),borderRadius:e.spacing(1.25),overflow:"hidden",position:"relative",border:`solid 1px ${e.palette.divider}`,backgroundColor:e.palette.common.white,zIndex:1,transition:"box-shadow 150ms ease-in-out",boxShadow:r?`0 0 0 2px ${e.palette.primary.main}, ${e.customShadows.z8}, inset 0 0 0 1000px ${alpha(e.palette.primary.main,.06)}`:"0px 0px 0px 0px rgba(0, 0, 0, 0)"})),co=styled(m.div)(({theme:e,width:o,isDragging:r})=>({width:o,height:60,alignItems:"center",display:"inline-flex",justifyContent:"center",margin:e.spacing(.5),padding:e.spacing(2),borderRadius:e.spacing(1.25),overflow:"hidden",position:"relative",border:`solid 1px ${e.palette.divider}`,backgroundColor:e.palette.common.white,zIndex:1,transition:"box-shadow 150ms ease-in-out",boxShadow:r?`0 0 0 2px ${e.palette.primary.main}, ${e.customShadows.z8}, inset 0 0 0 1000px ${alpha(e.palette.primary.main,.06)}`:"0px 0px 0px 0px rgba(0, 0, 0, 0)"})),mo=styled(a)(({theme:e})=>({top:16,right:16,zIndex:9,position:"absolute",color:e.palette.common.white,backgroundColor:alpha(e.palette.grey[900],.72),"&:hover":{backgroundColor:alpha(e.palette.grey[900],.48)}})),fo=styled(ze,{shouldForwardProp:e=>e!=="isDragActive"&&e!=="disabled"&&e!=="hasError"})(({theme:e,isDragActive:o,disabled:r,hasError:a})=>({width:64,height:64,flexShrink:0,display:"flex",borderRadius:1,cursor:"pointer",alignItems:"center",color:e.palette.text.disabled,justifyContent:"center",backgroundColor:alpha(e.palette.grey[500],.08),border:`dashed 1px ${alpha(e.palette.grey[500],.16)}`,...o&&{opacity:.72},...r&&{opacity:.48,pointerEvents:"none"},...a&&{color:e.palette.error.main,borderColor:e.palette.error.main,backgroundColor:alpha(e.palette.error.main,.08)},"&:hover":{opacity:.72}})),uo=styled(ze)(({theme:e})=>({padding:e.spacing(1),top:0,left:0,width:"100%",height:"100%",position:"absolute",display:"flex",justifyContent:"center",alignItems:"center",transition:"all 0.3s ease-in-out",filter:"blur(0)","&:hover .single-file-preview-img":{filter:"blur(3px)",transition:"all 0.1s ease-in-out"},"&:hover .single-file-preview-hover-overlay":{opacity:1}})),go=styled("img",{shouldForwardProp:e=>e!=="aspectRatio"&&e!=="isLoading"&&e!=="isUploading"&&e!=="maxWidth"&&e!=="maxHeight"&&e!=="cropSize"&&e!=="fill"})(({theme:e,aspectRatio:o,maxWidth:r,maxHeight:a,isLoading:t,isUploading:s,fill:n})=>({borderRadius:e.shape.borderRadius,objectFit:"cover",position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%) scale(1)",filter:"blur(0)",zIndex:1,backgroundColor:e.palette.background.paper,...n&&{width:"100%",height:"100%"},...!n&&Math.abs(o)>=1&&{maxWidth:r,maxHeight:a,aspectRatio:Math.abs(o),width:"calc(100% - 16px)",height:void 0},...!n&&Math.abs(o)<1&&{maxWidth:r,maxHeight:a,aspectRatio:Math.abs(o),width:void 0,height:"calc(100% - 16px)"},transition:"all 0.3s ease-in-out",...t||s?{opacity:0,filter:"blur(1.5rem)",transform:"translate(-50%, -50%) scale(0.7)"}:{}})),xo=styled("img",{shouldForwardProp:e=>e!=="isLoading"&&e!=="isUploading"})(({isLoading:e,isUploading:o})=>({width:"100%",height:"100%",objectFit:"cover",top:0,left:0,filter:"blur(1.5rem)",transform:"scale(1.1)",position:"absolute",zIndex:0,transition:"opacity 0.3s ease-in-out",...e&&{opacity:0},...o&&{opacity:.7,filter:"blur(2rem)"}})),ho=styled(he)(({theme:e})=>({position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:alpha(e.palette.primary.darker,.75),zIndex:2,pointerEvents:"none",opacity:0,transition:"opacity 0.3s ease-in-out"})),bo=styled(he)({width:"100%",height:"100%",position:"relative",overflow:"hidden",borderRadius:"50%",justifyContent:"center",alignItems:"center"});styled(mr)(({theme:e})=>({py:1,px:2,mt:3,textAlign:"left",borderStyle:"dashed",borderColor:"error.main",backgroundColor:alpha(e.palette.error.main,.08)}));var qe=styled(ze,{shouldForwardProp:e=>e!=="isError"&&e!=="hasFile"})(({theme:e,isError:o,hasFile:r})=>({top:0,gap:e.spacing(1),left:0,width:"100%",height:"100%",zIndex:9,display:"flex",borderRadius:"50%",position:"absolute",alignItems:"center",color:e.palette.text.disabled,flexDirection:"column",justifyContent:"center",backgroundColor:alpha(e.palette.grey[500],.08),transition:e.transitions.create(["opacity"],{duration:e.transitions.duration.shorter}),"&:hover":{opacity:.92},...o&&{color:e.palette.error.main},...r&&{zIndex:9,opacity:0,color:e.palette.common.white,backgroundColor:alpha(e.palette.common.black,.54)}})),Io=styled(he)({top:0,left:0,right:0,bottom:0,position:"absolute",zIndex:10,alignItems:"center",justifyContent:"center",opacity:.8});styled(he)(({theme:e})=>({padding:20,justifyContent:"center",alignItems:"center",gap:4,alignSelf:"stretch",borderRadius:12,background:e.palette.divider,color:e.palette.text.disabled,height:160}));var Po=styled(ze,{shouldForwardProp:e=>e!=="isDragActive"&&e!=="isError"&&e!=="hasFile"})(({theme:e,isDragActive:o,disabled:r,isError:a,hasFile:t})=>({padding:e.spacing(1),margin:"auto",width:144,height:144,cursor:"pointer",overflow:"hidden",borderRadius:"50%",border:`1px dashed ${e.palette.divider}`,...o&&{opacity:.72},...r&&{opacity:.48,pointerEvents:"none"},...a&&{borderColor:"error.main"},...t&&{...a&&{bgcolor:alpha(e.palette.error.main,.08)},"&:hover .upload-placeholder":{opacity:1},"& img":{filter:"blur(0)"},"&:hover img":{filter:"blur(3px)"}}})),vo=styled("img")({width:"100%",height:"100%",borderRadius:"50%",objectFit:"cover",transition:"all 0.3s ease-in-out"}),Fo=styled(a)(({theme:e})=>({backgroundColor:alpha(e.palette.grey[900],.72),color:e.palette.common.white,"&:hover":{backgroundColor:alpha(e.palette.grey[600],.64),color:e.palette.common.white},"& svg":{width:14,height:14}}));var xr=({onRemove:e,sx:o,file:r,disableDrag:a,attributes:t,listeners:s,innerWidth:n,isDragging:d})=>{let c=r?.id;return c?jsx(gr,{anchorOrigin:{vertical:"top",horizontal:"left"},children:jsxs(co,{width:n,isDragging:d,"data-testid":`preview-multi-img-${c}`,...j().inUp,sx:o,children:[jsx(a$2,{disableDrag:a,...t,...s}),jsx(Ee,{imageView:!0,file:r}),jsx(ke,{sx:{position:"absolute",right:3,top:3,zIndex:1},children:e&&jsx(Fo,{size:"small",label:"Remover arquivo",onClick:()=>e(r),icon:"DELETE_MARK_BUTTON_02"})})]})},`badge-${c}`):null},Eo=memo(xr);var Fr=({file:e$1,thumbnail:o,onRemove:r,sx:a$1,disableDrag:t=!1,disableTransitions:s=!1})=>{let n=e$1.size||0,d=e$1.name||e$1.id,c=e$1.id,m=typeof e$1=="string",l=t?70:80,{attributes:x,listeners:b,setNodeRef:v,transform:M,transition:E,isDragging:k}=useSortable({id:c,disabled:t}),z={transform:s?void 0:CSS.Transform.toString(M),transition:s?"none":E,opacity:s?.2:1,display:"inline-block",alignItems:"center",justifyContent:"center",width:`${l+8}px`,height:"68px"};return o&&e$1?jsx(Xe,{ref:v,style:z,children:jsx(Eo,{innerWidth:l,isDragging:k,sx:a$1,file:e$1,disableDrag:t,attributes:x,listeners:b,onRemove:r})}):jsx(Xe,{ref:v,style:{...z,height:"80px",width:`${l+38}px`},children:jsxs(po,{width:l+30,isDragging:k,"data-testid":`preview-multi-img-${c}`,...j().inUp,sx:a$1,children:[jsx(a$2,{disableDrag:t,...x,...b}),e$1&&jsx(Ee,{file:e$1}),jsxs(he,{flexGrow:1,sx:{width:"100%"},children:[jsx(a$3,{title:d,children:jsx(eo,{variant:"subtitle2",noWrap:!0,children:d})}),jsx(eo,{variant:"caption",sx:{color:"text.secondary"},children:m?"":e(n)})]}),jsx(ke,{children:r&&jsx(a,{size:"small",label:"Remover arquivo",onClick:()=>r(e$1),icon:"DELETE_MARK_BUTTON_02"})})]})})},Ao=memo(Fr);var kr=({thumbnail:e,files:o,onRemove:r,onReorder:a,sx:t})=>{let[s,n]=useState(!1),d=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}}),useSensor(KeyboardSensor,{coordinateGetter:sortableKeyboardCoordinates})),c=useCallback(l=>{let{active:x,over:b}=l;if(!(!x||!b||x.id===b.id)&&a){let v=o.findIndex(({id:E})=>E===x.id),M=o.findIndex(({id:E})=>E===b.id);v!==-1&&M!==-1&&(a(v,M,o),n(!0),setTimeout(()=>{n(!1);},300));}},[o,a]),m=jsx(AnimatePresence,{initial:!1,children:o.map(l=>jsx(Ao,{sx:t,id:`preview-file-${l.id}`,file:l,onRemove:r,thumbnail:e,disableDrag:!a,disableTransitions:s},`preview-file-${l.id}`))});return a?jsx(DndContext,{sensors:d,collisionDetection:closestCenter,onDragEnd:c,modifiers:[restrictToHorizontalAxis,restrictToParentElement,restrictToWindowEdges],children:jsx(SortableContext,{items:o.map(l=>l.id),strategy:horizontalListSortingStrategy,children:m})}):m},De=memo(kr);var Mo=forwardRef(({onLoading:e,aspectRatio:o,cropSize:r,...a},t)=>{let{maxWidth:s,maxHeight:n}=useMemo(()=>r&&typeof r=="object"?{maxWidth:r.width,maxHeight:r.height}:r&&typeof r=="number"?{maxWidth:r,maxHeight:r}:{maxWidth:"100%",maxHeight:"100%"},[r]);a$1(()=>{e?.(!0);}),useLayoutEffect(()=>{typeof t=="object"&&t?.current?e?.(!t.current.complete):e?.(!1);},[t,e]);let d=useCallback(()=>{e?.(!1);},[e]);return jsx(go,{...a,maxWidth:s,maxHeight:n,ref:t,aspectRatio:o,onLoad:d,onError:d})});Mo.displayName="LoadingPreviewImage";var Do=Mo;var $r=({file:e,aspectRatio:o=1,isUploading:r,isLoading:a,onLoading:t,cropSize:s,maxWidth:n,maxHeight:d,hoverAlt:c,fill:m})=>{let l=useRef(null),x=e?.id||"",b=e?.name||"",v=URL.createObjectURL(e);return x?jsxs(uo,{className:"single-file-preview-box",children:[jsx(Do,{className:"single-file-preview-img",aspectRatio:o,cropSize:s,isLoading:a,isUploading:r,alt:b,src:v,ref:l,loading:"lazy",onLoading:t,onLoad:()=>t?.(!1),onError:()=>t?.(!1),maxWidth:n,maxHeight:d,fill:m},`image-preview-${x}`),jsx(xo,{className:"single-file-preview-bg",alt:b,src:v,isLoading:a,isUploading:r}),c&&jsx(ho,{className:"single-file-preview-hover-overlay",children:c})]}):null},Ke=memo($r);var yo=["pdf"],_o=["txt"],Lo=["psd"],So=["doc","docx"],Oo=["xls","xlsx"],To=["zip","rar","iso"],Uo=["ai","eps"],Co=["ppt","pptx"],ko=["wav","aif","mp3","aac"],No=["jpg","jpeg","gif","bmp","png","svg","webp"],Bo=["m4v","avi","mpg","mp4","webm"];function qr(e){return e.startsWith("image/")?"image":e.startsWith("video/")?"video":e.startsWith("audio/")?"audio":e==="application/pdf"?"pdf":e==="text/plain"?"txt":e==="application/msword"||e==="application/vnd.openxmlformats-officedocument.wordprocessingml.document"?"word":e==="application/vnd.ms-excel"||e==="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"?"excel":e==="application/vnd.ms-powerpoint"||e==="application/vnd.openxmlformats-officedocument.presentationml.presentation"?"powerpoint":e==="application/zip"||e==="application/x-rar-compressed"||e==="application/x-iso9660-image"?"zip":e==="image/vnd.adobe.photoshop"?"photoshop":e==="application/illustrator"||e==="application/postscript"?"illustrator":null}function Wo(e,o){if(o){let a=qr(o);if(a)return a}let r=jo(e);return _o.includes(r)?"txt":To.includes(r)?"zip":ko.includes(r)?"audio":No.includes(r)?"image":Bo.includes(r)?"video":So.includes(r)?"word":Oo.includes(r)?"excel":Co.includes(r)?"powerpoint":yo.includes(r)?"pdf":Lo.includes(r)?"photoshop":Uo.includes(r)?"illustrator":"file"}function Vr(e){let o=jo(e);return _o.includes(o)?"txt":To.includes(o)?"zip":ko.includes(o)?"audio":No.includes(o)?"image":Bo.includes(o)?"video":So.includes(o)?"word":Oo.includes(o)?"excel":Co.includes(o)?"powerpoint":yo.includes(o)?"pdf":Lo.includes(o)?"photoshop":Uo.includes(o)?"illustrator":e?.startsWith("http")?"image":o||"file"}function Go(e){let o;switch(Vr(e)){case"folder":o="IC_FOLDER";break;case"txt":o="IC_TXT";break;case"zip":o="IC_ZIP";break;case"audio":o="IC_AUDIO";break;case"video":o="IC_VIDEO";break;case"word":o="IC_WORD";break;case"excel":o="IC_EXCEL";break;case"powerpoint":o="IC_POWER_POINT";break;case"pdf":o="IC_PDF";break;case"photoshop":o="IC_PTS";break;case"illustrator":o="IC_AI";break;case"image":o="IC_IMG";break;default:o="IC_FILE";}return o}function jo(e){return e&&e.split(".").pop()||""}function ga(e){return e.split("/").pop()}var Be={root:"mnl__file__thumbnail__root",img:"mnl__file__thumbnail__img",icon:"mnl__file__thumbnail__icon",removeBtn:"mnl__file__thumbnail__remove__button",downloadBtn:"mnl__file__thumbnail__download__button"},Ee=({sx:e,file:o,tooltip:r,onRemove:a,imageView:t,slotProps:s,onDownload:n,...d})=>{let c=o.size>0?URL.createObjectURL(o):o.url,m=o?.name||"",l=Wo(m,o.type),x=jsx(ze,{component:"img",src:c,className:Be.img,sx:{width:1,height:1,objectFit:"cover",borderRadius:"inherit",...s?.img}}),b=jsx(a$4,{icon:Go(l),sx:{width:32,height:32,flexShrink:0,...e}}),v=jsxs(he,{component:"span",className:Be.root,sx:{width:36,height:36,flexShrink:0,borderRadius:1.25,alignItems:"center",position:"relative",display:"inline-flex",justifyContent:"center",...e},...d,children:[l==="image"&&t?x:b,a&&jsx(Jr,{"aria-label":"Remover arquivo",onClick:a,className:Be.removeBtn,sx:s?.removeBtn,children:jsx(a$4,{icon:"CLOSE_MARK_BUTTON",width:24})}),n&&jsx(cr,{"aria-label":"Baixar arquivo",onClick:n,className:Be.downloadBtn,sx:s?.downloadBtn,size:"small",children:jsx(a$4,{icon:"ARROW_DOWN_CICLE",width:12})})]});return r?jsx(et,{arrow:!0,title:m,slotProps:{popper:{modifiers:[{name:"offset",options:{offset:[0,-12]}}]}},children:v}):v};var Aa=e=>e.startsWith("image/"),Zo=(e,o=.8)=>new Promise((r,a)=>{let t=document.createElement("canvas"),s=t.getContext("2d"),n=new Image;n.onload=()=>{t.width=n.width,t.height=n.height,s?(s.drawImage(n,0,0),t.toBlob(d=>{if(d){let c=new File([d],e.name.replace(/\.[^/.]+$/,".webp"),{type:"image/webp",lastModified:Date.now()});r(c);}else a(new Error("Falha ao converter para WebP"));},"image/webp",o)):a(new Error("N\xE3o foi poss\xEDvel obter contexto do canvas"));},n.onerror=()=>a(new Error("Falha ao carregar imagem")),n.src=URL.createObjectURL(e);}),Ho=(e,o=.8,r,a)=>new Promise((t,s)=>{let n=document.createElement("canvas"),d=n.getContext("2d"),c=new Image;c.onload=()=>{let{width:m,height:l}=c;r&&m>r&&(l=l*r/m,m=r),a&&l>a&&(m=m*a/l,l=a),n.width=m,n.height=l,d?(d.imageSmoothingEnabled=!0,d.imageSmoothingQuality="high",d.drawImage(c,0,0,m,l),n.toBlob(x=>{if(x){let b=new File([x],e.name.replace(/\.[^/.]+$/,".webp"),{type:"image/webp",lastModified:Date.now()});t(b);}else s(new Error("Falha ao comprimir imagem"));},"image/webp",o)):s(new Error("N\xE3o foi poss\xEDvel obter contexto do canvas"));},c.onerror=()=>s(new Error("Falha ao carregar imagem")),c.src=URL.createObjectURL(e);}),$o=e=>{let o=e.match(/filename\*=UTF-8''([^;]+)|filename="?([^";]+)"?/i);return o?.[1]||o?.[2]||""},Xo=e=>`UTF-8''${encodeURIComponent(e)}`;var nt=({onFilesSelect:e$1,onFileSelect:o,onReorder:r,onRemove:a,uploadFiles:t,filesPreview:s,dropzoneOptions:n,enableCrop:d=!1,customAspectRatio:c,convertToWebp:m=!0,cropSize:l,maxFiles:x,compressionQuality:b=.8,maxCompressedWidth:v,maxCompressedHeight:M})=>{let{showErrorMessage:E}=a$7(),k=useMemo(()=>c||(l&&typeof l!="number"?l.width/l.height:1),[c,l]),[z,I]=useState([]),[R,u]=useState(!1),[A,T]=useState(null),[C,P]=useState(null),[f,w]=useState(""),[D,U]=useState(!1),[y,_]=useState([]),[W,K]=useState(0),[re,Z]=useState(0),se=g=>{if(g.length<1)return;let h=g[0];T(h),K(L=>L+1);let F=new FileReader;F.onload=()=>{w(F.result),u(!0);},F.readAsDataURL(h);},ge=(g,h)=>{P(h);},pe=async g=>!A||!C?null:new Promise(h=>{let F=document.createElement("canvas"),L=F.getContext("2d"),N=new Image;N.onload=async()=>{let{width:G,height:ce,x:ye,y:ir}=C,ar=Math.abs(k),_e=G,Le=ce;l&&typeof l=="object"?(_e=l.width,Le=l.height):l&&typeof l=="number"&&(_e=l,Le=l/ar),F.width=_e,F.height=Le,L?(L.drawImage(N,ye,ir,G,ce,0,0,_e,Le),F.toBlob(async io=>{if(io){let $e=new File([io],A.name,{type:A.type,lastModified:Date.now()});if(m)try{$e=await Zo($e,b);}catch(nr){E(nr,"Erro ao converter para WebP");}let ao=$e;ao.id=g,h(ao);}else h(null);},"image/png")):h(null);},N.src=f;}),de=async()=>{if(!(!A||!C||y.length===0)){U(!0);try{let g=y[0],h=await pe(g.id);if(h){let L=await t([h]);L&&(!e$1&&!o&&I(N=>[...N,...L]),e$1?.([...s||[],...L]),o?.(h));}u(!1),U(!1),w(""),T(null);let F=y.slice(1);_(F),se(F);}catch(g){E(g,"Erro ao processar imagem"),U(!1);}}},H=()=>{u(!1),U(!1),w(""),T(null),_([]),K(0),Z(0);},J=async g=>{if(g.length===0)return;let h=Object.keys(n?.accept||{}).some(L=>L.includes("image/")),F=z.length+g.length;if(x&&F>x){E(new Error(`M\xE1ximo de ${x} arquivos`),"Erro ao fazer upload");return}try{if(h&&d){let N=g.filter(G=>G.type.startsWith("image/")).map((G,ce)=>{let ye=G;return ye.id=`temp-crop-${Date.now()}-${ce}`,ye});Z(N.length),K(0),_(N),se(N);}else {let L=[];for(let G of g)if(G.type.startsWith("image/")&&m)try{let ce=await Ho(G,b,v,M);L.push(ce);}catch(ce){E(ce,"Erro ao comprimir imagem"),L.push(G);}else L.push(G);let N=await t(L);N&&(!e$1&&!o&&I(G=>[...G,...N]),e$1?.([...s||[],...N]),o?.(N[0]));}}catch(L){E(L,"Erro ao processar arquivos");}},Q=g=>{if(!g.length)return;let h=g[0]?.errors[0]?.code,F=n?.maxSize||3145728;E(h==="file-too-large"?new Error(`O arquivo excede o tamanho m\xE1ximo de ${e(F)}`):h==="file-invalid-type"?new Error("Formato de arquivo n\xE3o suportado"):g[0]?.errors[0]||new Error("Erro ao enviar arquivo"),"Erro ao fazer upload");},{getRootProps:te,getInputProps:ie,isDragActive:p,isDragReject:ae,fileRejections:Y}=useDropzone({onDrop:J,onDropRejected:Q,...n}),Ie=g=>{if(!g){a||I([]),a?.(void 0);return}let h=z.filter(F=>F.id!==g.id);a||I(h),a?.(g);},we=(g,h,F)=>{r?.(g,h,F);},xe=useRef("");return useEffect(()=>{let g=s?.map(h=>h.id).join(",")||"";g!==xe.current&&(xe.current=g,I(s||[]));},[s]),{file:z?.[0],files:z,aspectRatio:k,dropzoneProps:{getRootProps:te,getInputProps:ie,isDragActive:p,isDragReject:ae,fileRejections:Y},cropState:{cropModalOpen:R,imagePreview:f,cropLoading:D,setCropModalOpen:u,onCropInitialized:ge,handleCropSave:de,handleCropCancel:H,currentImageIndex:W,totalPendingImages:re},setInitialFiles:I,handleRemove:Ie,handleReorder:we}},X=nt;var Je=(p=>(p.APPLICATION_OCTET_STREAM="application/octet-stream",p.IMAGE_JPEG="image/jpeg",p.IMAGE_JPG="image/jpg",p.IMAGE_PNG="image/png",p.IMAGE_GIF="image/gif",p.IMAGE_WEBP="image/webp",p.IMAGE_SVG="image/svg+xml",p.IMAGE_BMP="image/bmp",p.IMAGE_TIFF="image/tiff",p.IMAGE_ICO="image/x-icon",p.IMAGE_AVIF="image/avif",p.APPLICATION_PDF="application/pdf",p.TEXT_PLAIN="text/plain",p.TEXT_CSV="text/csv",p.APPLICATION_RTF="application/rtf",p.APPLICATION_MSWORD="application/msword",p.APPLICATION_DOCX="application/vnd.openxmlformats-officedocument.wordprocessingml.document",p.APPLICATION_MSEXCEL="application/vnd.ms-excel",p.APPLICATION_XLSX="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",p.APPLICATION_MSPOWERPOINT="application/vnd.ms-powerpoint",p.APPLICATION_PPTX="application/vnd.openxmlformats-officedocument.presentationml.presentation",p.APPLICATION_ODT="application/vnd.oasis.opendocument.text",p.APPLICATION_ODS="application/vnd.oasis.opendocument.spreadsheet",p.APPLICATION_ODP="application/vnd.oasis.opendocument.presentation",p.APPLICATION_XML="application/xml",p.TEXT_XML="text/xml",p.TEXT_HTML="text/html",p.TEXT_CSS="text/css",p.APPLICATION_JSON="application/json",p.TEXT_JAVASCRIPT="text/javascript",p.APPLICATION_ZIP="application/zip",p.APPLICATION_GZIP="application/gzip",p.APPLICATION_RAR="application/vnd.rar",p.APPLICATION_7Z="application/x-7z-compressed",p.AUDIO_MPEG="audio/mpeg",p.AUDIO_WAV="audio/wav",p.AUDIO_OGG="audio/ogg",p.AUDIO_WEBM="audio/webm",p.AUDIO_AAC="audio/aac",p.VIDEO_MP4="video/mp4",p.VIDEO_MPEG="video/mpeg",p.VIDEO_OGG="video/ogg",p.VIDEO_WEBM="video/webm",p.VIDEO_QUICKTIME="video/quicktime",p))(Je||{}),We=(e=>(e["application/octet-stream"]="APPLICATION_OCTET_STREAM",e["image/jpeg"]="IMAGE_JPEG",e["image/jpg"]="IMAGE_JPG",e["image/png"]="IMAGE_PNG",e["image/gif"]="IMAGE_GIF",e["image/webp"]="IMAGE_WEBP",e["image/svg+xml"]="IMAGE_SVG",e["image/bmp"]="IMAGE_BMP",e["image/tiff"]="IMAGE_TIFF",e["image/x-icon"]="IMAGE_ICO",e["image/avif"]="IMAGE_AVIF",e["application/pdf"]="APPLICATION_PDF",e["text/plain"]="TEXT_PLAIN",e["text/csv"]="TEXT_CSV",e["application/rtf"]="APPLICATION_RTF",e["application/msword"]="APPLICATION_MSWORD",e["application/vnd.openxmlformats-officedocument.wordprocessingml.document"]="APPLICATION_DOCX",e["application/vnd.ms-excel"]="APPLICATION_MSEXCEL",e["application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"]="APPLICATION_XLSX",e["application/vnd.ms-powerpoint"]="APPLICATION_MSPOWERPOINT",e["application/vnd.openxmlformats-officedocument.presentationml.presentation"]="APPLICATION_PPTX",e["application/vnd.oasis.opendocument.text"]="APPLICATION_ODT",e["application/vnd.oasis.opendocument.spreadsheet"]="APPLICATION_ODS",e["application/vnd.oasis.opendocument.presentation"]="APPLICATION_ODP",e["application/xml"]="APPLICATION_XML",e["text/xml"]="TEXT_XML",e["text/html"]="TEXT_HTML",e["text/css"]="TEXT_CSS",e["application/json"]="APPLICATION_JSON",e["text/javascript"]="TEXT_JAVASCRIPT",e["application/zip"]="APPLICATION_ZIP",e["application/gzip"]="APPLICATION_GZIP",e["application/vnd.rar"]="APPLICATION_RAR",e["application/x-7z-compressed"]="APPLICATION_7Z",e["audio/mpeg"]="AUDIO_MPEG",e["audio/wav"]="AUDIO_WAV",e["audio/ogg"]="AUDIO_OGG",e["audio/webm"]="AUDIO_WEBM",e["audio/aac"]="AUDIO_AAC",e["video/mp4"]="VIDEO_MP4",e["video/mpeg"]="VIDEO_MPEG",e["video/ogg"]="VIDEO_OGG",e["video/webm"]="VIDEO_WEBM",e["video/quicktime"]="VIDEO_QUICKTIME",e))(We||{});var dt=({createFilesMutation:e,filesDetails:o})=>{let{showErrorMessage:r}=a$7(),[a,t]=useState(!1),[s,n]=useState(!1),[d,c]=useState(null),[m,l]=useState([]),x=useMemo(()=>m?.[0],[m]),b=s||a,v=useCallback(async I=>{if(!I.length){l([]),n(!1);return}n(!0);try{let u=(await Promise.all(I.map(async({url:A,id:T,name:C})=>{try{if(!A)return null;let P=await fetch(A);if(!P.ok)throw new Error(P.statusText);let f=await P.blob(),w=null;if(!C){let y=P.headers.get("content-disposition")||void 0;if(y){let _=$o(y);if(_)try{w=decodeURIComponent(_);}catch{w=_;}}}let D=w||C||T,U=new File([f],D,{type:f.type});return U.id=T,U.url=A,U}catch{return null}}))).filter(Boolean);l(u),n(!1);}catch(R){r(R,"Erro ao carregar arquivos"),l([]),n(!1);}},[r]),M=useRef("");useEffect(()=>{let I=o?.map(({id:R})=>R).join(",")||"";I!==M.current&&(async()=>(M.current=I,await v(o)))();},[o,v]);let E=async I=>{if(!I||!Array.isArray(I))throw new Error("Arquivos inv\xE1lidos");let R=I.filter(u=>u instanceof File);if(R?.length){t(!0);try{let u=R.map(P=>{let f=P.type||"application/octet-stream",w=We[f];if(!w)throw new Error(`Tipo de arquivo n\xE3o suportado: ${f}`);return {file:P,mimeType:f,contentTypeEnum:w}}),A=await e({files:u.map(({file:P,contentTypeEnum:f})=>({content_type:f,name:P.name}))}).unwrap(),T=A.files.map((P,f)=>{let w=u[f].file,D=w;return D.id=P.id,D.url=URL.createObjectURL(w),D});return await(await Promise.all(A.files.map((P,f)=>{let{mimeType:w}=u[f],D=T[f];return fetch(P.url,{method:"PUT",headers:{"Content-Type":w,"Content-Disposition":`inline; filename*=${Xo(D.name)}`,"X-File-Id":P.id},body:D})}))).forEach(async P=>{if(!P.ok)throw new Error("Erro no upload do arquivo.")}),T}catch(u){throw c(u),r(u,"Erro no upload"),u}finally{t(!1);}}},k=useMemo(()=>d&&d instanceof Error?d.message:d,[d]),z=useMemo(()=>o.filter(I=>!m.some(R=>R.id===I.id)),[o,m]);return {setFilesPreview:l,uploadFiles:E,filesPreview:m,filePreview:x,isLoadingPreview:s,isUploadingFiles:a,isUploadOrLoadingFiles:b,uploadErrorText:k,invalidFiles:z}},q=dt;var mt=({sx:e,id:o,name:r,tabIndex:a,uploading:t,getRootProps:s,getInputProps:n,isDragActive:d,isError:c,disabled:m,dropZoneSxProps:l,dropZoneContent:x,children:b,...v})=>jsxs(Ce,{children:[t&&jsx(a$6,{"data-testid":"uploading-progress-bar",sx:{zIndex:1}}),jsxs(ze,{sx:{width:1,position:"relative",...e},children:[jsxs(lo,{...s(),"data-testid":"drop-zone-styled-area",isError:c,isDragActive:d,disabled:!!m,sx:l,...v,children:[jsx("input",{...n(),id:o,tabIndex:a,name:r}),x]}),b]})]}),me=mt;function Ko(){let e=useTheme(),o=useId(),r=e.vars.palette.primary.main;return jsxs(Fragment,{children:[jsx("defs",{children:jsxs("linearGradient",{id:o,x1:"19.496%",x2:"77.479%",y1:"71.822%",y2:"16.69%",children:[jsx("stop",{offset:"0%",stopColor:r}),jsx("stop",{offset:"100%",stopColor:r,stopOpacity:"0"})]})}),jsx("path",{fill:`url(#${o})`,fillRule:"nonzero",d:"M0 198.78c0 41.458 14.945 79.236 39.539 107.786 28.214 32.765 69.128 53.365 114.734 53.434a148.44 148.44 0 0056.495-11.036c9.051-3.699 19.182-3.274 27.948 1.107a75.779 75.779 0 0033.957 8.01c5.023 0 9.942-.494 14.7-1.433 13.58-2.67 25.94-8.99 36.09-17.94 6.378-5.627 14.547-8.456 22.897-8.446h.142c27.589 0 53.215-8.732 74.492-23.696 19.021-13.36 34.554-31.696 44.904-53.224C474.92 234.58 480 213.388 480 190.958c0-76.93-59.774-139.305-133.498-139.305-7.516 0-14.88.663-22.063 1.899C305.418 21.42 271.355 0 232.499 0a103.651 103.651 0 00-45.88 10.661c-13.24 6.487-25.011 15.705-34.64 26.939-32.698.544-62.931 11.69-87.676 30.291C25.351 97.155 0 144.882 0 198.781z",opacity:"0.2"})]})}function It({hideBackground:e,sx:o,...r}){let a=useTheme(),t=a.vars.palette.primary.main,s=a.vars.palette.primary.dark,n=a.vars.palette.primary.darker;return jsxs(ze,{component:"svg",width:"100%",height:"100%",viewBox:"0 0 480 360",xmlns:"http://www.w3.org/2000/svg",sx:{width:320,maxWidth:1,flexShrink:0,height:"auto",...o},...r,children:[!e&&jsx(Ko,{}),jsx("defs",{children:jsxs("linearGradient",{id:"linearGradient-2",x1:"30.113%",x2:"30.113%",y1:"0%",y2:"100%",children:[jsx("stop",{offset:"0%",stopOpacity:"0"}),jsx("stop",{offset:"100%"})]})}),jsx("path",{fill:"#FF4842",fillRule:"nonzero",d:"M293.006 206.192c-2.248 2.672-4.676 2.628-6.123 2.251l.054-1.384s5.979-2.733 5.827-2.159c-.057.215.057.733.242 1.292zM309.393 209.217c-3.818 2.206-6.058-.38-6.578-1.112.32-.84.801-2.204.703-2.592-.144-.577 5.827 2.155 5.827 2.155l.048 1.549zM305.303 187.204s3.632-2.093 4.425-1.151c.792.942-4.425 1.151-4.425 1.151zM307.497 188.355s-.598.299.721.681c1.318.383-.721-.681-.721-.681zM285.532 182.599c-.123.036 3.022 2.123 5.862.395-.012 0-5.154-.61-5.862-.395zM291.239 186.591s-.861 1.692-2.625 1.943c-1.764.251 2.625-1.943 2.625-1.943zM302.785 190.262s4.138 6.578 3.346 8.129c-.793 1.552-3.346-8.129-3.346-8.129zM294.62 216.416c0 .368 0 .712-.036.996-.107 1.33-3.381.828-3.381.828-2.99.416-4.066-1.019-4.422-2.392a5.444 5.444 0 01-.164-1.363 5.606 5.606 0 01.054-.819v-.272a1.998 1.998 0 011.859.379c1.331 1.08 3.095.252 3.095.252s1.294.107 1.793.538c.281.242.745-.341 1.098-.897.021.359.054 1.007.074 1.701.024.356.03.714.03 1.049z",opacity:"0.05"}),jsx("path",{fill:"#FF4842",fillRule:"nonzero",d:"M289.37 216.339s-.897.879-2.589-.479a5.444 5.444 0 01-.164-1.363c.864.658 2.466 1.842 2.753 1.842zM294.62 216.416a.67.67 0 01-.519.132.672.672 0 01-.452-.287c.348-.266.669-.566.956-.897.009.359.015.717.015 1.052zM301.637 217.032c0 .371 0 .715.033.996.108 1.333 3.382.828 3.382.828 2.989.419 4.066-1.017 4.421-2.392a5.728 5.728 0 00.111-2.182v-.272a2.024 2.024 0 00-1.862.379c-1.331 1.08-3.092.251-3.092.251s-1.294.111-1.794.542c-.281.242-.744-.341-1.094-.897a61.426 61.426 0 00-.078 1.701c-.024.35-.03.708-.027 1.046z",opacity:"0.05"}),jsx("path",{fill:"#FF4842",fillRule:"nonzero",d:"M306.887 216.949s.897.879 2.587-.479c.112-.444.169-.901.167-1.36-.867.655-2.47 1.839-2.754 1.839zM301.637 217.032a.67.67 0 00.969-.155 6.35 6.35 0 01-.957-.897c-.009.356-.014.714-.012 1.052zM319.614 106.269c.063-.138.123-.275.18-.41.057-.134.077-.209.11-.317-.11.237-.206.48-.29.727z",opacity:"0.05"}),jsx("path",{fill:n,fillRule:"nonzero",d:"M157.592 279.461a4.114 4.114 0 01-.917-3.131l13.196-107.979 1.094-8.97a4.142 4.142 0 014.078-3.635l38.654-.257a4.135 4.135 0 004.108-4.249l-.015-.409a4.14 4.14 0 014.135-4.279h40.619a4.134 4.134 0 014.098 4.682 4.137 4.137 0 003.995 4.682l39.01.996a4.13 4.13 0 013.97 4.831l-19.502 113.909-.368 2.152a4.042 4.042 0 01-.598 1.543l-135.557.114z"}),jsx("path",{fill:"#FFF",fillRule:"nonzero",d:"M251.256817 123.296578L274.098317 123.296578 274.098317 200.823078 251.256817 200.823078z",transform:"rotate(34.64 262.678 162.06)"}),jsx("path",{fill:"#FFC107",fillRule:"nonzero",d:"M270.624591 129.857671L286.750291 129.857671 286.750291 145.983371 270.624591 145.983371z",transform:"rotate(34.804 278.687 137.92)"}),jsx("path",{fill:"#FFC107",fillRule:"nonzero",d:"M260.275579 145.813111L276.423079 145.813111 276.423079 161.960611 260.275579 161.960611z",opacity:"0.5",transform:"rotate(34.64 268.35 153.887)"}),jsx("path",{fill:"#FFC107",fillRule:"nonzero",d:"M249.191579 161.852111L265.339079 161.852111 265.339079 177.999611 249.191579 177.999611z",opacity:"0.3",transform:"rotate(34.64 257.265 169.926)"}),jsx("path",{fill:"#FFF",fillRule:"nonzero",d:"M237.472537 121.334214L260.314037 121.334214 260.314037 198.567714 237.472537 198.567714z",transform:"rotate(16.29 248.893 159.951)"}),jsx("path",{fill:"#FF4842",fillRule:"nonzero",d:"M249.053192 123.761554L265.200692 123.761554 265.200692 139.909054 249.053192 139.909054z",transform:"rotate(16.29 257.127 131.835)"}),jsx("path",{fill:"#FF4842",fillRule:"nonzero",d:"M243.584192 142.473554L259.731692 142.473554 259.731692 158.621053 243.584192 158.621053z",opacity:"0.5",transform:"rotate(16.29 251.658 150.547)"}),jsx("path",{fill:"#FF4842",fillRule:"nonzero",d:"M238.116192 161.182554L254.263692 161.182554 254.263692 177.330054 238.116192 177.330054z",opacity:"0.3",transform:"rotate(16.29 246.19 169.256)"}),jsx("path",{fill:"#FFF",fillRule:"nonzero",d:"M230.099192 121.641542L252.940692 121.641542 252.940692 198.875042 230.099192 198.875042z",transform:"rotate(4.6 241.52 160.258)"}),jsx("path",{fill:"#1890FF",fillRule:"nonzero",d:"M235.800489 122.985499L251.947989 122.985499 251.947989 139.132999 235.800489 139.132999z",transform:"rotate(4.6 243.874 131.06)"}),jsx("path",{fill:"#1890FF",fillRule:"nonzero",d:"M234.234488 142.413498L250.381988 142.413498 250.381988 158.560998 234.234488 158.560998z",opacity:"0.5",transform:"rotate(4.6 242.308 150.487)"}),jsx("path",{fill:"#1890FF",fillRule:"nonzero",d:"M232.672488 161.846499L248.819988 161.846499 248.819988 177.993999 232.672488 177.993999z",opacity:"0.3",transform:"rotate(4.6 240.746 169.92)"}),jsx("path",{fill:"#FFF",fillRule:"nonzero",d:"M224.736657 123.384871L247.578157 123.384871 247.578157 200.618371 224.736657 200.618371z",transform:"rotate(-2.61 236.157 162.002)"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M226.751283 124.659968L242.898783 124.659968 242.898783 140.807468 226.751283 140.807468z",transform:"rotate(-2.61 234.825 132.734)"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M228.305601 143.479224L244.473301 143.479224 244.473301 159.646924 228.305601 159.646924z",opacity:"0.5",transform:"rotate(-2.862 236.39 151.563)"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M228.525282 163.608968L244.672782 163.608968 244.672782 179.756468 228.525282 179.756468z",opacity:"0.3",transform:"rotate(-2.61 236.599 171.683)"}),jsx("path",{fill:"#F4F6F8",fillRule:"nonzero",d:"M232.679 225.726l-20.294 7.851-29.661 11.466c-1.121-2.093-2.771-4.921-4.813-8.297-7.026-11.642-18.65-29.75-29.001-45.665-11.66-17.938-21.696-33.075-21.696-33.075l7.265-2.093 59.346-17.23 38.854 87.043z"}),jsx("path",{fill:"#000",fillRule:"nonzero",d:"M232.679 225.726l-20.294 7.851a152.535 152.535 0 01-34.484 3.169c-7.026-11.642-18.65-29.75-29-45.665l-14.42-35.18 59.343-17.218 38.855 87.043z",opacity:"0.1"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M247.777 220.841s-31.526 18.65-78.596 14.432l-37.525-91.486 17.984-3.091 62.168-10.677 35.279 89.043.69 1.779z"}),jsx("path",{fill:"#FF4842",fillRule:"nonzero",d:"M247.075 219.074c-7.424.365-16.013.329-24.654-.702-9.351-1.101-18.757-3.367-26.82-7.523-6.742-3.471-12.506-7.247-17.532-11.776-13.074-11.759-21.164-28.579-28.429-58.365l62.168-10.677 35.267 89.043z",opacity:"0.1"}),jsx("path",{fill:"#FFF",fillRule:"nonzero",d:"M270.203 213.959s-23.239 4.55-46.894 1.749c-9.351-1.1-18.757-3.367-26.82-7.522-6.742-3.471-12.503-7.247-17.532-11.777-16.181-14.557-24.725-36.866-33.536-81.918 0 0 38.633 9.325 76.836-11.101-.012.015 12.865 80.373 47.946 110.569z"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M165.405 131.03s31.416-1.776 40.187-8.548l1.331 4.276s-20.758 9.157-41.518 9.268v-4.996zM165.405 152.137s30.417-1.665 53.399-12.766l.777 1.776s-18.237 10.647-54.176 13.433v-2.443zM167.853 160.362s30.418-1.665 53.397-12.766l.777 1.776s-18.237 10.643-54.174 13.433v-2.443zM170.299 168.599s30.417-1.666 53.399-12.766l.774 1.775s-18.237 10.647-54.173 13.433v-2.442zM172.748 176.835s30.417-1.665 53.396-12.766l.777 1.776s-18.237 10.647-54.173 13.433v-2.443zM175.193 185.075s30.417-1.665 53.399-12.766l.774 1.776s-18.237 10.643-54.173 13.433v-2.443z",opacity:"0.3"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M389.069 287.344s-12.641-.762-11.152 8.097c0 0-.299 1.563 1.124 2.275 0 0 .021-.658 1.295-.434.454.077.916.099 1.375.066a2.832 2.832 0 001.677-.694c.468-.409 3.555-1.468 4.936-7.274 0 0 1.023-1.267.981-1.593l-2.132.897s.73 1.54.156 2.816c0 0-.069-2.759-.479-2.691-.083 0-1.109.533-1.109.533s1.253 2.69.299 4.628c0 0 .359-3.304-.699-4.434l-1.495.876s1.465 2.768.472 5.029c0 0 .254-3.465-.789-4.817l-1.361 1.062s1.379 2.729.539 4.604c0 0-.111-4.036-.835-4.341 0 0-1.195 1.049-1.369 1.494 0 0 .942 1.98.356 3.026 0 0-.359-2.691-.652-2.691 0 0-1.196 1.794-1.309 2.99 0 0 .051-1.818 1.022-3.172a3.593 3.593 0 00-1.818.942s.186-1.262 2.111-1.37c0 0 .981-1.351 1.241-1.435 0 0-1.914-.158-3.074.356 0 0 1.023-1.196 3.427-.649l1.342-1.094s-2.52-.347-3.588.036c0 0 1.229-1.052 3.95-.299l1.462-.873s-2.147-.463-3.426-.299c0 0 1.348-.729 3.856.06l1.044-.47s-1.573-.299-2.033-.358c-.461-.06-.488-.174-.488-.174a5.426 5.426 0 012.957.329s2.222-.813 2.186-.954z"}),jsx("ellipse",{cx:"380.363",cy:"298.487",fill:t,fillRule:"nonzero",opacity:"0.1",rx:"8.945",ry:"1.513"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M394.956 258.102s-7.125-.43-6.279 4.565a1.218 1.218 0 00.631 1.283s.015-.371.733-.245c.255.042.515.054.774.036.349-.023.681-.159.945-.389.264-.23 2.003-.828 2.783-4.102 0 0 .577-.714.553-.897l-1.196.511s.41.87.087 1.591c0 0-.039-1.558-.269-1.522-.048 0-.625.299-.625.299s.706 1.495.173 2.61c0 0 .204-1.862-.394-2.502l-.846.496s.825 1.561.266 2.834c0 0 .143-1.955-.446-2.714l-.765.598s.774 1.539.299 2.595c0 0-.063-2.275-.469-2.446a4.75 4.75 0 00-.775.834s.532 1.118.204 1.707c0 0-.204-1.515-.368-1.521 0 0-.67 1.001-.739 1.689a3.671 3.671 0 01.577-1.794 2.007 2.007 0 00-1.025.532s.104-.711 1.196-.771c0 0 .553-.763.699-.81 0 0-1.079-.09-1.734.2 0 0 .577-.67 1.932-.365l.759-.619s-1.423-.194-2.024.021c0 0 .694-.598 2.227-.161l.826-.494a7.445 7.445 0 00-1.935-.164s.763-.413 2.174.033l.598-.263s-.897-.177-1.148-.203c-.252-.027-.275-.099-.275-.099a3.078 3.078 0 011.668.185s1.232-.46 1.208-.538z"}),jsx("ellipse",{cx:"390.052",cy:"264.383",fill:t,fillRule:"nonzero",opacity:"0.1",rx:"5.044",ry:"1"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M352.896 262.437s-8.604-.52-7.588 5.51a1.47 1.47 0 00.763 1.549s0-.449.897-.299c.309.052.623.067.935.045a1.923 1.923 0 001.142-.473c.318-.279 2.419-.998 3.361-4.951 0 0 .697-.861.667-1.085l-1.468.622s.496 1.046.104 1.916c0 0-.048-1.877-.326-1.835-.056 0-.753.364-.753.364s.852 1.824.209 3.152c0 0 .245-2.249-.475-3.02l-1.023.598s.996 1.886.32 3.423c0 0 .174-2.359-.535-3.289l-.927.724s.939 1.857.365 3.133c0 0-.072-2.747-.565-2.954 0 0-.81.715-.933 1.008 0 0 .64 1.348.242 2.06 0 0-.245-1.83-.445-1.839 0 0-.804 1.214-.897 2.042.04-.768.28-1.512.697-2.159a2.427 2.427 0 00-1.235.643s.125-.858 1.435-.933c0 0 .667-.92.846-.974 0 0-1.303-.111-2.093.239 0 0 .694-.807 2.329-.44l.915-.747s-1.713-.233-2.442.024c0 0 .837-.715 2.69-.191l.996-.598s-1.462-.314-2.335-.201c0 0 .921-.496 2.625.042l.711-.32s-1.07-.209-1.384-.242c-.314-.033-.329-.119-.329-.119a3.69 3.69 0 012.012.221s1.519-.553 1.492-.646z"}),jsx("ellipse",{cx:"346.97",cy:"270.022",fill:t,fillRule:"nonzero",opacity:"0.1",rx:"6.09",ry:"1.028"}),jsx("rect",{width:"51.026",height:"91.312",x:"303.926",y:"69.211",fill:"#FFF",fillRule:"nonzero",rx:"4.737",transform:"rotate(-71.99 329.44 114.867)"}),jsx("circle",{cx:"303.613",cy:"103.507",r:"9.376",fill:t,fillRule:"nonzero",opacity:"0.2"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M344.582495 86.4883769L347.150665 86.4883769 347.150665 127.336977 344.582495 127.336977z",opacity:"0.2",transform:"rotate(-71.99 345.867 106.913)"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M333.028401 99.6373982L335.596571 99.6373982 335.596571 120.445898 333.028401 120.445898z",opacity:"0.2",transform:"rotate(-71.99 334.312 110.042)"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M337.109071 101.431004L339.677241 101.431004 339.677241 135.086304 337.109071 135.086304z",opacity:"0.2",transform:"rotate(-71.99 338.393 118.259)"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M338.505494 105.174377L341.073664 105.174377 341.073664 146.022978 338.505494 146.022978z",opacity:"0.2",transform:"rotate(-71.99 339.79 125.599)"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M348.060839 134.648161L353.026769 134.648161 353.026769 145.952261 348.060839 145.952261z",opacity:"0.5",transform:"rotate(-71.99 350.544 140.3)"}),jsx("rect",{width:"50.3",height:"78.305",x:"291.549",y:"174.486",fill:"#FFF",fillRule:"nonzero",rx:"4",transform:"rotate(-57.265 316.7 213.638)"}),jsx("path",{fill:"#DFE3E8",fillRule:"nonzero",d:"M278.038439 203.88874L292.269539 203.88874 292.269539 207.23723 278.038439 207.23723z",transform:"rotate(-57.57 285.154 205.563)"}),jsx("path",{fill:"#DFE3E8",fillRule:"nonzero",d:"M283.007935 199.201889L314.262535 199.201889 314.262535 202.272339 283.007935 202.272339z",transform:"rotate(-57.57 298.635 200.737)"}),jsx("path",{fill:"#DFE3E8",fillRule:"nonzero",d:"M288.543935 202.715889L319.798535 202.715889 319.798535 205.786339 288.543935 205.786339z",transform:"rotate(-57.57 304.171 204.251)"}),jsx("path",{fill:"#DFE3E8",fillRule:"nonzero",d:"M294.078936 206.235889L325.333536 206.235889 325.333536 209.306339 294.078936 209.306339z",transform:"rotate(-57.57 309.706 207.771)"}),jsx("path",{fill:"#DFE3E8",fillRule:"nonzero",d:"M299.879919 211.40702L331.090719 211.40702 331.090719 214.47316 299.879919 214.47316z",transform:"rotate(-57.265 315.485 212.94)"}),jsx("path",{fill:"#F4F6F8",fillRule:"nonzero",d:"M305.149936 213.268889L336.404536 213.268889 336.404536 216.339339 305.149936 216.339339z",transform:"rotate(-57.57 320.777 214.804)"}),jsx("path",{fill:"#F4F6F8",fillRule:"nonzero",d:"M310.685935 216.782889L341.940535 216.782889 341.940535 219.853339 310.685935 219.853339z",transform:"rotate(-57.57 326.313 218.318)"}),jsx("path",{fill:"#DFE3E8",fillRule:"nonzero",d:"M341.417983 210.406958L349.511163 210.406958 349.511163 218.500138 341.417983 218.500138z",transform:"rotate(-57.57 345.465 214.454)"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M269.277 168.76l-45.767.493a3.127 3.127 0 00-3.094 3.125v3.782a3.127 3.127 0 01-3.05 3.124l-33.024.792a3.124 3.124 0 01-3.095-2.308l-1.551-5.701a3.124 3.124 0 00-3.053-2.308l-44.113.475a3.125 3.125 0 00-3.05 3.648l17.747 104.449a3.129 3.129 0 003.071 2.604l139.363.598a3.129 3.129 0 003.082-3.714l-20.366-106.521a3.125 3.125 0 00-3.1-2.538z"}),jsx("path",{fill:s,fillRule:"nonzero",d:"M269.277 168.76l-45.767.493a3.127 3.127 0 00-3.094 3.125v3.782a3.127 3.127 0 01-3.05 3.124l-33.024.792a3.124 3.124 0 01-3.095-2.308l-1.551-5.701a3.124 3.124 0 00-3.053-2.308l-44.113.475a3.125 3.125 0 00-3.05 3.648l17.747 104.449a3.129 3.129 0 003.071 2.604l139.363.598a3.129 3.129 0 003.082-3.714l-20.366-106.521a3.125 3.125 0 00-3.1-2.538z",opacity:"0.243"}),jsx("path",{fill:"url(#linearGradient-2)",fillRule:"nonzero",d:"M269.277 168.76l-45.767.493a3.127 3.127 0 00-3.094 3.125v3.782a3.127 3.127 0 01-3.05 3.124l-33.024.792a3.124 3.124 0 01-3.095-2.308l-1.551-5.701a3.124 3.124 0 00-3.053-2.308l-44.113.475a3.125 3.125 0 00-3.05 3.648l17.747 104.449a3.129 3.129 0 003.071 2.604l139.363.598a3.129 3.129 0 003.082-3.714l-20.366-106.521a3.125 3.125 0 00-3.1-2.538z",opacity:"0.32"}),jsx("ellipse",{cx:"119.593",cy:"258.664",fill:t,fillRule:"nonzero",opacity:"0.1",rx:"4.846",ry:"1"}),jsx("ellipse",{cx:"101.03",cy:"260.545",fill:t,fillRule:"nonzero",opacity:"0.1",rx:"4.846",ry:"1"}),jsx("ellipse",{cx:"108.459",cy:"265.905",fill:t,fillRule:"nonzero",opacity:"0.1",rx:"3.444",ry:"1"}),jsx("ellipse",{cx:"89.193",cy:"265.433",fill:t,fillRule:"nonzero",opacity:"0.1",rx:"3.444",ry:"1"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M100.925 260.398s6.796-22.279-1.064-31.204c-5.881-6.676-12.557-5.877-15.547-5.052a5.528 5.528 0 00-3.564 2.963c-1.046 2.254-.858 5.913 6.521 10.186 12.35 7.151 13.119 16.96 13.119 16.96l.535 6.147z"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M85.382 227.302s20.031 6.278 15.546 33.096M97.083 229.547s-2.76 1.86-1.88 4.655M87.39 231.203s1.687-1.716 3.741-.768M95.31 239.832s2.963-1.495 3.728.379M102.638 242.962s-2.224-.176-2.263.897"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M101.2 260.575s-7.961-16.193-10.147-15.846c-1.037.17-1.516 1.196-1.734 2.218a6.516 6.516 0 00.434 3.941c1.13 2.601 4.165 7.519 11.447 9.687z"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M91.113 247.808s8.353 12.115 9.968 12.647"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M90.344 249.701L92.293 249.701"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M92.68 254.132L95.738 254.263"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M94.542 250.586L94.21 252.179"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M97.792 255.432L97.732 256.879"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M100.964 260.575s7.959-16.193 10.144-15.846c1.041.17 1.519 1.196 1.734 2.218a6.514 6.514 0 01-.433 3.941c-1.13 2.601-4.168 7.519-11.445 9.687z"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M111.051 247.808s-8.371 12.115-9.97 12.647"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M111.82 249.701L109.871 249.701"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M109.485 254.132L106.426 254.263"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M107.622 250.586L107.954 252.179"}),jsx("path",{stroke:n,strokeLinecap:"round",strokeWidth:"0.5",d:"M104.372 255.432L104.432 256.879"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M87.295 264.357a1.375 1.375 0 01-.452-.685.599.599 0 01.317-.697c.3-.11.598.09.837.299.24.21.512.431.81.38a1.237 1.237 0 01-.382-1.16.47.47 0 01.105-.236c.161-.174.454-.099.648.039.598.43.787 1.264.79 2.018.03-.277.03-.555 0-.831a.853.853 0 01.334-.727.938.938 0 01.476-.114.988.988 0 01.774.222.767.767 0 01-.03.947c-.229.257-.5.474-.801.64a1.805 1.805 0 00-.571.547.399.399 0 00-.042.096h-1.74a4.826 4.826 0 01-1.073-.738zM117.626 257.833a1.355 1.355 0 01-.452-.682.599.599 0 01.314-.696c.299-.111.598.089.837.299.239.209.509.436.817.391a1.236 1.236 0 01-.386-1.157.472.472 0 01.107-.236c.162-.173.455-.099.649.036.613.433.787 1.268.79 2.021a4.008 4.008 0 000-.834.852.852 0 01.299-.736.955.955 0 01.475-.11.998.998 0 01.774.218.768.768 0 01-.033.951 2.996 2.996 0 01-.798.64 1.767 1.767 0 00-.571.544.499.499 0 00-.042.098h-1.701a4.78 4.78 0 01-1.079-.747zM107.518 264.357a1.406 1.406 0 01-.455-.685.6.6 0 01.317-.697c.299-.11.598.09.837.299.239.21.505.437.816.395a1.247 1.247 0 01-.385-1.16.472.472 0 01.107-.236c.162-.174.455-.099.649.039.613.43.783 1.264.789 2.018.03-.277.03-.555 0-.832a.855.855 0 01.314-.735.93.93 0 01.476-.114.988.988 0 01.774.222.764.764 0 01-.033.947 3.028 3.028 0 01-.798.64 1.798 1.798 0 00-.571.547.411.411 0 00-.042.096h-1.734c-.385-.2-.742-.45-1.061-.744z"}),jsx("circle",{cx:"84.467",cy:"87.003",r:"6.467",fill:t,fillRule:"nonzero",opacity:"0.1"}),jsx("circle",{cx:"395.425",cy:"138.681",r:"6.467",fill:t,fillRule:"nonzero",opacity:"0.1"}),jsx("circle",{cx:"279.178",cy:"66.467",r:"6.467",fill:t,fillRule:"nonzero",opacity:"0.1"}),jsx("circle",{cx:"97.4",cy:"122.68",r:"10.838",fill:t,fillRule:"nonzero",opacity:"0.1"}),jsx("path",{fill:s,fillRule:"nonzero",d:"M206.029 209.911c-7.975 0-14.44 6.465-14.44 14.44s6.465 14.44 14.44 14.44 14.44-6.465 14.44-14.44-6.465-14.44-14.44-14.44z"}),jsx("path",{fill:t,fillRule:"nonzero",d:"M206.029 211.59c7.047 0 12.761 5.714 12.761 12.761 0 7.048-5.714 12.761-12.761 12.761-7.048 0-12.761-5.713-12.761-12.761.006-7.045 5.716-12.754 12.761-12.761",opacity:"0.72"}),jsx("path",{fill:s,fillRule:"nonzero",d:"M200.058 225.406l-.699-.681a.721.721 0 010-1.065l6.127-5.984a.753.753 0 01.546-.231c.206 0 .404.083.545.231l6.127 5.978a.733.733 0 010 1.065l-.699.682a.768.768 0 01-1.091 0l-3.622-3.727v8.843a.725.725 0 01-.219.523.76.76 0 01-.534.217h-1.009a.75.75 0 01-.759-.74v-8.832l-3.622 3.726a.768.768 0 01-1.091-.005z"})]})}var Qo=memo(It);var Ft=({header:e,description:o,sx:r,...a})=>jsxs(he,{spacing:5,alignItems:"center",justifyContent:"center",direction:{xs:"column",md:"row"},sx:{width:1,textAlign:{xs:"center",md:"left"},...r},...a,children:[jsx(Qo,{sx:{width:220}}),jsxs("div",{children:[jsx(eo,{gutterBottom:!0,variant:"h5",children:e||"Soltar ou selecionar arquivos"}),jsx(eo,{variant:"body2",sx:{color:"text.secondary"},children:o||jsxs(Fragment,{children:["Solte os arquivos aqui ou clique",jsx(eo,{variant:"body2",component:"span",sx:{mx:.5,color:"primary.main",textDecoration:"underline"},children:"procurar"}),"na sua m\xE1quina"]})})]})]}),fe=memo(Ft);var zt=({onRemove:e,onReorder:o,onFilesSelect:r,createFilesMutation:a,filesDetails:t=[],id:s,disabled:n,error:d,helperText:c,thumbnail:m,dropZoneSxProps:l,uploading:x,tabIndex:b,maxFiles:v,placeholderAlt:M,placeholderProps:E,...k})=>{let{filesPreview:z,isUploadOrLoadingFiles:I,uploadErrorText:R,uploadFiles:u}=q({createFilesMutation:a,filesDetails:t}),{files:A,dropzoneProps:T,handleRemove:C,handleReorder:P}=X({onFilesSelect:r,onReorder:o,onRemove:e,filesPreview:z,dropzoneOptions:{multiple:!0,disabled:n,...k},maxFiles:v,uploadFiles:u}),{getRootProps:f,getInputProps:w,isDragActive:D,isDragReject:U}=T,y=!!A?.filter(W=>!!W.id).length,_=U||!!d||!!R;return jsxs(me,{id:s,uploading:x||I,disabled:n,dropZoneSxProps:l,tabIndex:b,getRootProps:f,getInputProps:w,isDragActive:D,isError:_,dropZoneContent:jsx(Fragment,{children:M?jsx(he,{children:M}):jsx(fe,{header:E?.header,description:E?.description})}),children:[jsx(S,{disabled:n,helperText:c,isError:_}),d?jsx(S,{helperText:d,isError:!0}):null,R?jsx(S,{helperText:R,isError:!0}):null,y&&jsx(ze,{sx:{my:3},children:jsx(De,{files:A,thumbnail:!!m,onRemove:e?C:void 0,onReorder:o?P:void 0})})]})},Mt=memo(zt);var Ot=({onRemove:e,onReorder:o,onFilesSelect:r,createFilesMutation:a,filesDetails:t=[],id:s,disabled:n,error:d,helperText:c,dropZoneSxProps:m,placeholderProps:l,placeholderAlt:x,uploading:b,tabIndex:v,maxFiles:M,aspectRatio:E,enableCrop:k=!0,convertToWebp:z=!0,cropSize:I,name:R,label:u,keepInvalidFiles:A=!1,...T})=>{let{filesPreview:C,isUploadOrLoadingFiles:P,uploadErrorText:f,uploadFiles:w,invalidFiles:D}=q({createFilesMutation:a,filesDetails:t}),U=b||P,{files:y,dropzoneProps:_,cropState:W,aspectRatio:K,handleRemove:re,handleReorder:Z}=X({onFilesSelect:r,onReorder:o,onRemove:e,filesPreview:C,dropzoneOptions:{accept:{"image/*":[".jpeg",".jpg",".png",".gif",".webp"]},multiple:!0,disabled:n,...T},enableCrop:k,customAspectRatio:E,convertToWebp:z,maxFiles:M,cropSize:I,uploadFiles:w}),{getRootProps:se,getInputProps:ge,isDragActive:pe,isDragReject:de}=_,{cropModalOpen:H,imagePreview:J,cropLoading:Q,onCropInitialized:te,handleCropSave:ie,handleCropCancel:p,currentImageIndex:ae,totalPendingImages:Y}=W,Ie=useMemo(()=>{if(!A)return y;let h=D.map(F=>({...new File([],F.name??"invalid-file"),id:F.id,url:"url.invalid"}));return [...y,...h]},[A,y,D]),we=!!Ie?.filter(h=>!!h.id).length,xe=de||!!d||!!f,g=useMemo(()=>{let h=u??"Ajustar Imagem",F=Y>1||ae>1?` (${ae} de ${Y})`:"";return `${h}${F}`},[u,Y,ae]);return jsxs(me,{id:s,name:R,uploading:U,disabled:n,dropZoneSxProps:m,tabIndex:v,getRootProps:se,getInputProps:ge,isDragActive:pe,isError:xe,dropZoneContent:jsx(Fragment,{children:x?jsx(he,{children:x}):jsx(fe,{header:l?.header,description:l?.description})}),children:[jsx(S,{disabled:n,helperText:c,isError:xe}),d?jsx(S,{helperText:d,isError:!0}):null,f?jsx(S,{helperText:f,isError:!0}):null,we&&jsx(ze,{sx:{my:3,ml:.5},children:jsx(De,{files:Ie,thumbnail:!0,onRemove:re,onReorder:o?Z:void 0})}),jsx(a$5,{open:H,onClose:p,label:g,imageSrc:J,aspectRatio:K,onInitialized:te,onSave:ie,loading:Q,cropSize:I})]})},Tt=memo(Ot);var Wt=({onFileSelect:e$1,onRemove:o,createFilesMutation:r,fileDetails:a,id:t,disabled:s,error:n,helperText:d,sx:c,dropZoneSxProps:m$1,uploading:l,tabIndex:x,placeholderAlt:b,placeholderProps:v,...M})=>{let{filesPreview:E,isUploadOrLoadingFiles:k,uploadErrorText:z,uploadFiles:I}=q({createFilesMutation:r,filesDetails:a?[a]:[]}),R=k||l,{file:u,dropzoneProps:A,handleRemove:T}=X({uploadFiles:I,onFileSelect:e$1,onRemove:o,filesPreview:E,dropzoneOptions:{multiple:!1,disabled:s,...M}}),{getRootProps:C,getInputProps:P,isDragActive:f,isDragReject:w}=A,D=useCallback(W=>{W.stopPropagation(),T(u||void 0);},[u,T]),U=!!u,y=typeof u=="string",_=w||!!n||!!z;return jsxs(me,{id:t,uploading:R,disabled:s,dropZoneSxProps:m$1,tabIndex:x,getRootProps:C,getInputProps:P,isDragActive:f,isError:_,dropZoneContent:jsxs(Fragment,{children:[!U&&(b?jsx(he,{...v,children:b}):jsx(fe,{})),U&&jsxs(he,{component:m.div,...j().inUp,spacing:2,direction:"row",alignItems:"center",sx:{my:1,px:1,py:.75,borderRadius:.75,border:W=>`solid 1px ${W.palette.divider}`,...c},children:[jsx(Ee,{file:u}),jsxs(he,{flexGrow:1,sx:{minWidth:0},children:[jsx(eo,{variant:"subtitle2",noWrap:!0,children:y?u:u.name}),jsx(eo,{variant:"caption",sx:{color:"text.secondary"},children:y?"":e(u.size)})]}),o&&jsx(a$3,{title:"Remover arquivo",children:jsx(so,{edge:"end",size:"small",disabled:s,"aria-label":"Remover arquivo",onClick:D,children:jsx(a$4,{icon:"DELETE_MARK_BUTTON_02",width:16})})})]})]}),children:[jsx(S,{disabled:s,helperText:d,isError:_}),n?jsx(S,{helperText:n,isError:!0}):null,z?jsx(S,{helperText:z,isError:!0}):null]})},Gt=memo(Wt);var Vt=({onRemove:e,onFileSelect:o,createFilesMutation:r,fileDetails:a,id:t,disabled:s,error:n,helperText:d,dropZoneSxProps:c,placeholderProps:m,placeholderAlt:l,hoverAlt:x,uploading:b,tabIndex:v,aspectRatio:M,enableCrop:E=!0,convertToWebp:k=!0,name:z,label:I,cropSize:R,sx:u,maxWidth:A,maxHeight:T,compressionQuality:C=.8,maxCompressedWidth:P,maxCompressedHeight:f,fill:w,...D})=>{let{filesPreview:U,isUploadOrLoadingFiles:y,uploadErrorText:_,uploadFiles:W}=q({createFilesMutation:r,filesDetails:a?[a]:[]}),[K,re]=useState(!1),{file:Z,dropzoneProps:se,cropState:ge,handleRemove:pe,aspectRatio:de}=X({onFileSelect:o,onRemove:e,dropzoneOptions:{accept:{"image/*":[".jpeg",".jpg",".png",".gif",".webp"]},multiple:!1,disabled:s,...D},filesPreview:U,enableCrop:E,customAspectRatio:M,convertToWebp:k,cropSize:R,uploadFiles:W,compressionQuality:C,maxCompressedWidth:P,maxCompressedHeight:f}),{getRootProps:H,getInputProps:J,isDragActive:Q,isDragReject:te}=se,{cropModalOpen:ie,imagePreview:p,cropLoading:ae,onCropInitialized:Y,handleCropSave:Ie,handleCropCancel:we}=ge,xe=useCallback(()=>{pe(Z||void 0);},[Z,pe]),g=!!Z,h=te||!!n||!!_,F=b||y,L=g?{opacity:0}:{opacity:1},N=c?.width;return useEffect(()=>{g||re(!1);},[g]),jsxs(Ce,{sx:{...u,...N&&{width:N}},children:[(F||K)&&jsx(a$6,{}),jsxs(me,{id:t,uploading:F,disabled:s,dropZoneSxProps:c,tabIndex:v,getRootProps:H,getInputProps:J,isDragActive:Q,isError:h,name:z,dropZoneContent:jsxs(Fragment,{children:[l?jsx(he,{sx:L,children:l}):jsx(fe,{sx:L,header:m?.title,description:m?.description}),g&&jsx(Ke,{file:Z,cropSize:R,isLoading:K,isUploading:F,onLoading:re,aspectRatio:de,maxWidth:A,maxHeight:T,hoverAlt:x,fill:w})]}),children:[jsx(S,{disabled:s,helperText:d,isError:h}),n?jsx(S,{helperText:n,isError:!0}):null,_?jsx(S,{helperText:_,isError:!0}):null,g&&e&&jsx(mo,{size:"small",onClick:xe,disabled:s,label:"Remover arquivo",children:jsx(a$4,{icon:"DELETE_MARK_BUTTON_02",width:16})}),jsx(a$5,{open:ie,onClose:we,label:I??"Ajustar Imagem",imageSrc:p,aspectRatio:de,onInitialized:Y,onSave:Ie,loading:ae,cropSize:R})]})]})},Kt=memo(Vt);var ti=({onRemove:e,onFileSelect:o,createFilesMutation:r,fileDetails:a,disabled:t,label:s,id:n,tabIndex:d,error:c,helperText:m,sx:l,name:x,maxSize:b,uploading:v,aspectRatio:M=1,enableCrop:E=!0,convertToWebp:k=!0,cropSize:z,...I})=>{let[R,u]=useState(!1),{filesPreview:A,isUploadOrLoadingFiles:T,uploadErrorText:C,uploadFiles:P}=q({createFilesMutation:r,filesDetails:a?[a]:[]}),{file:f,dropzoneProps:w,cropState:D,handleRemove:U}=X({filesPreview:A,onFileSelect:o,onRemove:e,dropzoneOptions:{accept:{"image/*":[".jpeg",".jpg",".png",".gif",".webp"]},multiple:!1,disabled:t,maxSize:b,...I},enableCrop:E,customAspectRatio:M,convertToWebp:k,cropSize:z,uploadFiles:P}),{getRootProps:y,getInputProps:_,isDragActive:W,isDragReject:K}=w,{cropModalOpen:re,imagePreview:Z,cropLoading:se,onCropInitialized:ge,handleCropSave:pe,handleCropCancel:de}=D,H=K||!!c||!!C,J=R||T||v,Q=!!e,te=useRef(a?.url||""),ie=useRef(void 0);useEffect(()=>{if(!f){te.current="",ie.current=void 0;return}if(ie.current===f.id)return;ie.current=f.id,u(!0);let Y=URL.createObjectURL(f);return te.current=Y,()=>{URL.revokeObjectURL(Y);}},[f]);let p=()=>{u(!1);},ae=useCallback(()=>Q&&f?()=>U(f):y().onClick,[Q,f,y,U]);return jsxs(Fragment,{children:[jsxs(he,{sx:{alignItems:"center"},children:[jsxs(Po,{sx:l,isError:H,isDragActive:W,hasFile:!!f,...y(),onClick:ae(),children:[jsxs(bo,{children:[J&&jsx(Io,{children:jsx(ri,{size:135,thickness:2,color:"primary"})}),f&&jsx(vo,{alt:"Avatar Preview",src:te.current,onLoad:p,...J&&{sx:{filter:"blur(5px) !important",scale:1.2,opacity:.7}}}),!f&&!J&&jsxs(qe,{isError:H,hasFile:!1,children:[jsx(a$4,{icon:"ADD_IMAGE",width:32}),jsx(eo,{variant:"caption",textAlign:"center",sx:{color:H?"error.main":"text.disabled"},children:"Adicionar foto"})]}),f&&!J&&jsxs(qe,{isError:H,hasFile:!0,children:[jsx(a$4,{icon:Q?"DELETE_MARK_BUTTON_02":"ADD_IMAGE",width:32}),jsx(eo,{variant:"caption",textAlign:"center",sx:{color:H?"error.main":"common.white"},children:Q?"Remover foto":"Alterar foto"})]})]}),jsx("input",{name:x,id:n,tabIndex:d,..._()})]}),jsx(he,{sx:{alignItems:"center",mt:-.5},children:jsx(S,{helperText:m,disabled:t,isError:H})}),C?jsx(S,{helperText:C,isError:!0}):null,c?jsx(S,{helperText:c,isError:!0}):null]}),re&&Z&&jsx(a$5,{open:re,onClose:de,label:s??"Ajustar Imagem",imageSrc:Z,aspectRatio:M,onInitialized:ge,onSave:pe,loading:se,cropSize:z,cropShape:"round"})]})},ii=memo(ti);var si=({error:e,name:o,disabled:r,sx:a,...t})=>{let{getRootProps:s,getInputProps:n,isDragActive:d,isDragReject:c}=useDropzone({disabled:r,...t}),m=c||e;return jsxs(fo,{...s(),isDragActive:d,hasError:!!m,disabled:!!r,sx:a,"data-testid":"upload-box",children:[jsx("input",{name:o,...n()}),"Selecionar arquivo"]})},pi=memo(si);
32
-
33
- export { S as a, De as b, Ke as c, qr as d, Wo as e, Vr as f, Go as g, jo as h, ga as i, Be as j, Ee as k, Aa as l, Zo as m, Ho as n, $o as o, Xo as p, X as q, Je as r, We as s, q as t, Mt as u, Tt as v, Gt as w, Kt as x, ii as y, pi as z };
34
- //# sourceMappingURL=chunk-TBFQ5PEL.js.map