@mieweb/ui 0.10.0-dev.4 → 0.10.0-dev.40
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.
- package/README.md +4 -4
- package/agent/mieweb-ui.instructions.md +90 -1
- package/dist/CsvBlock-CFXSDPBI.js +9 -0
- package/dist/{CsvBlock-UWPMTLE2.js.map → CsvBlock-CFXSDPBI.js.map} +1 -1
- package/dist/CsvBlock-RGO7JXHJ.cjs +18 -0
- package/dist/{CsvBlock-ROJCKJDP.cjs.map → CsvBlock-RGO7JXHJ.cjs.map} +1 -1
- package/dist/HtmlPreviewBlock-VBYXCXVT.cjs +18 -0
- package/dist/{HtmlPreviewBlock-DWFN6EUB.cjs.map → HtmlPreviewBlock-VBYXCXVT.cjs.map} +1 -1
- package/dist/HtmlPreviewBlock-Z2GCK325.js +9 -0
- package/dist/{HtmlPreviewBlock-ME5U3XNS.js.map → HtmlPreviewBlock-Z2GCK325.js.map} +1 -1
- package/dist/MermaidBlock-I2R2BQOX.cjs +18 -0
- package/dist/{MermaidBlock-D2UC5M55.cjs.map → MermaidBlock-I2R2BQOX.cjs.map} +1 -1
- package/dist/MermaidBlock-XCAK7IA5.js +9 -0
- package/dist/{MermaidBlock-2B6CPD6Y.js.map → MermaidBlock-XCAK7IA5.js.map} +1 -1
- package/dist/SurveyBlock-KI5JOWCL.js +9 -0
- package/dist/{SurveyBlock-4DO62RBT.js.map → SurveyBlock-KI5JOWCL.js.map} +1 -1
- package/dist/SurveyBlock-UKSGISRT.cjs +18 -0
- package/dist/{SurveyBlock-4CD4AYMJ.cjs.map → SurveyBlock-UKSGISRT.cjs.map} +1 -1
- package/dist/ag-grid.d.cts +142 -1
- package/dist/ag-grid.d.ts +142 -1
- package/dist/brands/bluehive.cjs +3 -3
- package/dist/brands/bluehive.css +3 -0
- package/dist/brands/bluehive.js +1 -1
- package/dist/brands/index.cjs +14 -14
- package/dist/brands/index.js +4 -4
- package/dist/{chunk-3M7TAXNR.js → chunk-24AFHH4J.js} +3 -3
- package/dist/{chunk-3M7TAXNR.js.map → chunk-24AFHH4J.js.map} +1 -1
- package/dist/{chunk-JYZW2PZS.cjs → chunk-254QK722.cjs} +7 -7
- package/dist/chunk-254QK722.cjs.map +1 -0
- package/dist/{chunk-VPIYTQCV.cjs → chunk-2I4IRQQG.cjs} +12 -5
- package/dist/chunk-2I4IRQQG.cjs.map +1 -0
- package/dist/chunk-2X54ZLT6.js +874 -0
- package/dist/chunk-2X54ZLT6.js.map +1 -0
- package/dist/{chunk-5MCBWTIF.cjs → chunk-32ZCJOSR.cjs} +4 -4
- package/dist/{chunk-5MCBWTIF.cjs.map → chunk-32ZCJOSR.cjs.map} +1 -1
- package/dist/chunk-3YBS4WUQ.js +52 -0
- package/dist/chunk-3YBS4WUQ.js.map +1 -0
- package/dist/{chunk-WNJRS7Y7.cjs → chunk-3ZWCIPFT.cjs} +4 -2
- package/dist/chunk-3ZWCIPFT.cjs.map +1 -0
- package/dist/chunk-434L5RYF.js +314 -0
- package/dist/chunk-434L5RYF.js.map +1 -0
- package/dist/{chunk-TPWKM7JH.js → chunk-43K7OQ3E.js} +3 -3
- package/dist/{chunk-TPWKM7JH.js.map → chunk-43K7OQ3E.js.map} +1 -1
- package/dist/chunk-47P5QLX4.cjs +42 -0
- package/dist/chunk-47P5QLX4.cjs.map +1 -0
- package/dist/chunk-4IS3QCOQ.cjs +453 -0
- package/dist/chunk-4IS3QCOQ.cjs.map +1 -0
- package/dist/chunk-4NCDU5IG.cjs +56 -0
- package/dist/chunk-4NCDU5IG.cjs.map +1 -0
- package/dist/chunk-4ZB7RSMY.cjs +306 -0
- package/dist/chunk-4ZB7RSMY.cjs.map +1 -0
- package/dist/chunk-522WJIVI.js +99 -0
- package/dist/chunk-522WJIVI.js.map +1 -0
- package/dist/chunk-56VTM4OX.js +261 -0
- package/dist/chunk-56VTM4OX.js.map +1 -0
- package/dist/chunk-5HKZR6UG.js +248 -0
- package/dist/chunk-5HKZR6UG.js.map +1 -0
- package/dist/chunk-6BNZLN4B.cjs +548 -0
- package/dist/chunk-6BNZLN4B.cjs.map +1 -0
- package/dist/chunk-6N7NMOSV.js +233 -0
- package/dist/chunk-6N7NMOSV.js.map +1 -0
- package/dist/chunk-6TTCZY3P.cjs +4 -0
- package/dist/chunk-6TTCZY3P.cjs.map +1 -0
- package/dist/{chunk-YQDA366U.js → chunk-753ENNB6.js} +2 -2
- package/dist/{chunk-YQDA366U.js.map → chunk-753ENNB6.js.map} +1 -1
- package/dist/{chunk-N6IY47YA.cjs → chunk-7C5W744U.cjs} +8 -8
- package/dist/{chunk-N6IY47YA.cjs.map → chunk-7C5W744U.cjs.map} +1 -1
- package/dist/chunk-7E46YDOT.cjs +122 -0
- package/dist/chunk-7E46YDOT.cjs.map +1 -0
- package/dist/chunk-7HUTR6RX.js +178 -0
- package/dist/chunk-7HUTR6RX.js.map +1 -0
- package/dist/chunk-7IRTD4JT.cjs +61 -0
- package/dist/chunk-7IRTD4JT.cjs.map +1 -0
- package/dist/{chunk-KZFBQ7GY.js → chunk-7QW6TU4X.js} +3 -3
- package/dist/{chunk-KZFBQ7GY.js.map → chunk-7QW6TU4X.js.map} +1 -1
- package/dist/{chunk-MWVW4APN.cjs → chunk-7UTBDFFL.cjs} +4 -4
- package/dist/{chunk-MWVW4APN.cjs.map → chunk-7UTBDFFL.cjs.map} +1 -1
- package/dist/chunk-7WJ6MBF5.cjs +47 -0
- package/dist/chunk-7WJ6MBF5.cjs.map +1 -0
- package/dist/{chunk-FJ7YPVKV.js → chunk-7X6R3JIA.js} +3 -3
- package/dist/{chunk-FJ7YPVKV.js.map → chunk-7X6R3JIA.js.map} +1 -1
- package/dist/chunk-A4W5CSK7.cjs +216 -0
- package/dist/chunk-A4W5CSK7.cjs.map +1 -0
- package/dist/{chunk-2G75X6TS.cjs → chunk-AHHFFXJR.cjs} +3 -3
- package/dist/{chunk-2G75X6TS.cjs.map → chunk-AHHFFXJR.cjs.map} +1 -1
- package/dist/chunk-AJPFQF3H.cjs +896 -0
- package/dist/chunk-AJPFQF3H.cjs.map +1 -0
- package/dist/chunk-AMYFRY7K.js +3 -0
- package/dist/chunk-AMYFRY7K.js.map +1 -0
- package/dist/{chunk-VNYW4C4J.cjs → chunk-ANMX7YDL.cjs} +4 -84
- package/dist/chunk-ANMX7YDL.cjs.map +1 -0
- package/dist/chunk-ARIJ5OHW.cjs +139 -0
- package/dist/chunk-ARIJ5OHW.cjs.map +1 -0
- package/dist/{chunk-DVOQ3JNO.js → chunk-B4CKCNWD.js} +16 -8
- package/dist/chunk-B4CKCNWD.js.map +1 -0
- package/dist/chunk-BJ6ABRSQ.cjs +256 -0
- package/dist/chunk-BJ6ABRSQ.cjs.map +1 -0
- package/dist/chunk-BM35CACB.js +148 -0
- package/dist/chunk-BM35CACB.js.map +1 -0
- package/dist/{chunk-G3JX3UAU.cjs → chunk-BWSZ2BHJ.cjs} +6 -6
- package/dist/{chunk-G3JX3UAU.cjs.map → chunk-BWSZ2BHJ.cjs.map} +1 -1
- package/dist/chunk-BXRQ6HEP.cjs +4 -0
- package/dist/chunk-BXRQ6HEP.cjs.map +1 -0
- package/dist/{chunk-SGFYA22I.cjs → chunk-C77FAR3F.cjs} +8 -8
- package/dist/{chunk-SGFYA22I.cjs.map → chunk-C77FAR3F.cjs.map} +1 -1
- package/dist/chunk-CBBKWRLG.js +213 -0
- package/dist/chunk-CBBKWRLG.js.map +1 -0
- package/dist/{chunk-UAMXCMST.cjs → chunk-CFI3TQMA.cjs} +3 -3
- package/dist/{chunk-UAMXCMST.cjs.map → chunk-CFI3TQMA.cjs.map} +1 -1
- package/dist/chunk-CLQW724U.cjs +271 -0
- package/dist/chunk-CLQW724U.cjs.map +1 -0
- package/dist/chunk-CPDNX3LS.cjs +47 -0
- package/dist/chunk-CPDNX3LS.cjs.map +1 -0
- package/dist/chunk-CVNPNZMX.js +44 -0
- package/dist/chunk-CVNPNZMX.js.map +1 -0
- package/dist/{chunk-2YCERQWC.js → chunk-CVXESGXJ.js} +10 -9
- package/dist/chunk-CVXESGXJ.js.map +1 -0
- package/dist/chunk-DGHS5IVD.js +305 -0
- package/dist/chunk-DGHS5IVD.js.map +1 -0
- package/dist/chunk-DHGCLPFZ.js +91 -0
- package/dist/chunk-DHGCLPFZ.js.map +1 -0
- package/dist/{chunk-GD7EBGC4.cjs → chunk-DHU3FFC3.cjs} +49 -19
- package/dist/chunk-DHU3FFC3.cjs.map +1 -0
- package/dist/chunk-DO2YN46R.cjs +201 -0
- package/dist/chunk-DO2YN46R.cjs.map +1 -0
- package/dist/chunk-DVDT7TX7.js +151 -0
- package/dist/chunk-DVDT7TX7.js.map +1 -0
- package/dist/chunk-DXEPYK3I.cjs +92 -0
- package/dist/chunk-DXEPYK3I.cjs.map +1 -0
- package/dist/{chunk-X4XPNTCZ.cjs → chunk-DZ3JTMKM.cjs} +136 -58
- package/dist/chunk-DZ3JTMKM.cjs.map +1 -0
- package/dist/chunk-EACNRR3C.cjs +4 -0
- package/dist/chunk-EACNRR3C.cjs.map +1 -0
- package/dist/{chunk-ZGRCSNPK.js → chunk-EEOGIGIA.js} +4 -4
- package/dist/{chunk-ZGRCSNPK.js.map → chunk-EEOGIGIA.js.map} +1 -1
- package/dist/chunk-EPCUPHEO.js +193 -0
- package/dist/chunk-EPCUPHEO.js.map +1 -0
- package/dist/{chunk-7ZXAQTV4.cjs → chunk-ERACGSDY.cjs} +8 -8
- package/dist/{chunk-7ZXAQTV4.cjs.map → chunk-ERACGSDY.cjs.map} +1 -1
- package/dist/{chunk-OD47TTAW.cjs → chunk-F2FOG4EG.cjs} +9 -9
- package/dist/{chunk-OD47TTAW.cjs.map → chunk-F2FOG4EG.cjs.map} +1 -1
- package/dist/chunk-F3EWRDIT.js +312 -0
- package/dist/chunk-F3EWRDIT.js.map +1 -0
- package/dist/{chunk-XCP454Q6.js → chunk-F4N67NAF.js} +12 -3
- package/dist/chunk-F4N67NAF.js.map +1 -0
- package/dist/{chunk-WGPLUCBD.js → chunk-F6W62K4J.js} +4 -4
- package/dist/{chunk-WGPLUCBD.js.map → chunk-F6W62K4J.js.map} +1 -1
- package/dist/chunk-FBCDYTWM.js +385 -0
- package/dist/chunk-FBCDYTWM.js.map +1 -0
- package/dist/{chunk-V7D3YGUV.js → chunk-FGLIP6YR.js} +4 -4
- package/dist/{chunk-V7D3YGUV.js.map → chunk-FGLIP6YR.js.map} +1 -1
- package/dist/{chunk-VU6UTJRM.js → chunk-FIKO4WR6.js} +3 -3
- package/dist/{chunk-VU6UTJRM.js.map → chunk-FIKO4WR6.js.map} +1 -1
- package/dist/chunk-FSGJXCBG.cjs +318 -0
- package/dist/chunk-FSGJXCBG.cjs.map +1 -0
- package/dist/chunk-FSWHZY3T.cjs +328 -0
- package/dist/chunk-FSWHZY3T.cjs.map +1 -0
- package/dist/chunk-FTEZNCRI.js +29 -0
- package/dist/chunk-FTEZNCRI.js.map +1 -0
- package/dist/{chunk-YVPC65ZJ.cjs → chunk-GF2BE4FB.cjs} +91 -32
- package/dist/chunk-GF2BE4FB.cjs.map +1 -0
- package/dist/{chunk-JEIW7BSV.cjs → chunk-GKDHMNUA.cjs} +2 -52
- package/dist/chunk-GKDHMNUA.cjs.map +1 -0
- package/dist/chunk-GM32IDVL.cjs +356 -0
- package/dist/chunk-GM32IDVL.cjs.map +1 -0
- package/dist/chunk-GVM6DTR5.js +90 -0
- package/dist/chunk-GVM6DTR5.js.map +1 -0
- package/dist/{chunk-SQHMGT4W.js → chunk-GW4RFJZ5.js} +7 -7
- package/dist/chunk-GW4RFJZ5.js.map +1 -0
- package/dist/chunk-GY5SP4ST.js +3 -0
- package/dist/chunk-GY5SP4ST.js.map +1 -0
- package/dist/chunk-H2Y7HZV5.js +3 -0
- package/dist/chunk-H2Y7HZV5.js.map +1 -0
- package/dist/chunk-H3P7POFC.cjs +337 -0
- package/dist/chunk-H3P7POFC.cjs.map +1 -0
- package/dist/{chunk-JID7AZTO.cjs → chunk-H3ROMJYI.cjs} +4 -4
- package/dist/{chunk-JID7AZTO.cjs.map → chunk-H3ROMJYI.cjs.map} +1 -1
- package/dist/{chunk-462XSCP3.cjs → chunk-HCIXGFWR.cjs} +4 -4
- package/dist/{chunk-462XSCP3.cjs.map → chunk-HCIXGFWR.cjs.map} +1 -1
- package/dist/{chunk-H4ZXMQQW.js → chunk-HDY7YQFX.js} +3 -3
- package/dist/{chunk-H4ZXMQQW.js.map → chunk-HDY7YQFX.js.map} +1 -1
- package/dist/chunk-HNFFFFYH.cjs +114 -0
- package/dist/chunk-HNFFFFYH.cjs.map +1 -0
- package/dist/chunk-HNXLLDPN.js +25 -0
- package/dist/chunk-HNXLLDPN.js.map +1 -0
- package/dist/{chunk-NV2CWBI2.cjs → chunk-IEY3ZJIT.cjs} +12 -3
- package/dist/chunk-IEY3ZJIT.cjs.map +1 -0
- package/dist/{chunk-3QEVGSFG.cjs → chunk-IGDO62KR.cjs} +5 -5
- package/dist/{chunk-3QEVGSFG.cjs.map → chunk-IGDO62KR.cjs.map} +1 -1
- package/dist/chunk-IT775BYG.js +179 -0
- package/dist/chunk-IT775BYG.js.map +1 -0
- package/dist/{chunk-N5O47VGS.cjs → chunk-IVGI353O.cjs} +2 -2
- package/dist/{chunk-N5O47VGS.cjs.map → chunk-IVGI353O.cjs.map} +1 -1
- package/dist/chunk-IWRBJHO3.cjs +51 -0
- package/dist/chunk-IWRBJHO3.cjs.map +1 -0
- package/dist/{chunk-VILW53UZ.js → chunk-JMAZ2GKT.js} +3 -3
- package/dist/{chunk-VILW53UZ.js.map → chunk-JMAZ2GKT.js.map} +1 -1
- package/dist/{chunk-WWJIW2IH.cjs → chunk-JSXIB6EJ.cjs} +4 -4
- package/dist/{chunk-WWJIW2IH.cjs.map → chunk-JSXIB6EJ.cjs.map} +1 -1
- package/dist/{chunk-KRU6IGV7.js → chunk-JUJGWUAN.js} +28 -6
- package/dist/chunk-JUJGWUAN.js.map +1 -0
- package/dist/{chunk-FXO5ARBB.cjs → chunk-KDW6BD4O.cjs} +4 -4
- package/dist/{chunk-FXO5ARBB.cjs.map → chunk-KDW6BD4O.cjs.map} +1 -1
- package/dist/{chunk-Z5V7SAZ4.js → chunk-KFEN2SRZ.js} +3 -3
- package/dist/{chunk-Z5V7SAZ4.js.map → chunk-KFEN2SRZ.js.map} +1 -1
- package/dist/{chunk-XEAT7XJG.cjs → chunk-KQ6GLYFZ.cjs} +29 -13
- package/dist/chunk-KQ6GLYFZ.cjs.map +1 -0
- package/dist/chunk-L6K4PRZK.cjs +4 -0
- package/dist/chunk-L6K4PRZK.cjs.map +1 -0
- package/dist/{chunk-7ZDPD5ZX.cjs → chunk-LC3JL2HB.cjs} +11 -7
- package/dist/chunk-LC3JL2HB.cjs.map +1 -0
- package/dist/{chunk-P7UMS4E6.cjs → chunk-LC7PVBXH.cjs} +16 -8
- package/dist/chunk-LC7PVBXH.cjs.map +1 -0
- package/dist/{chunk-Y5HFM7LO.js → chunk-LDBNUJB7.js} +5 -5
- package/dist/{chunk-Y5HFM7LO.js.map → chunk-LDBNUJB7.js.map} +1 -1
- package/dist/chunk-LRAAJRE7.cjs +2707 -0
- package/dist/chunk-LRAAJRE7.cjs.map +1 -0
- package/dist/chunk-LUPRGPKP.js +2540 -0
- package/dist/chunk-LUPRGPKP.js.map +1 -0
- package/dist/chunk-M3VPGJMV.js +283 -0
- package/dist/chunk-M3VPGJMV.js.map +1 -0
- package/dist/{chunk-VKELAMAZ.js → chunk-N54FYWG6.js} +27 -11
- package/dist/chunk-N54FYWG6.js.map +1 -0
- package/dist/chunk-N5JDL4VE.js +3 -0
- package/dist/chunk-N5JDL4VE.js.map +1 -0
- package/dist/{chunk-2QKBTPUC.cjs → chunk-NAH65KPK.cjs} +8 -8
- package/dist/{chunk-2QKBTPUC.cjs.map → chunk-NAH65KPK.cjs.map} +1 -1
- package/dist/{chunk-PYJDVWXM.js → chunk-NUB5HRKS.js} +3 -3
- package/dist/{chunk-PYJDVWXM.js.map → chunk-NUB5HRKS.js.map} +1 -1
- package/dist/{chunk-WNZAYBVB.cjs → chunk-O6BJMVGT.cjs} +48 -48
- package/dist/{chunk-WNZAYBVB.cjs.map → chunk-O6BJMVGT.cjs.map} +1 -1
- package/dist/{chunk-SVSHA7XV.js → chunk-O6XDA3SI.js} +31 -33
- package/dist/chunk-O6XDA3SI.js.map +1 -0
- package/dist/chunk-OIF34LEN.cjs +425 -0
- package/dist/chunk-OIF34LEN.cjs.map +1 -0
- package/dist/chunk-OIMXMPH2.cjs +218 -0
- package/dist/chunk-OIMXMPH2.cjs.map +1 -0
- package/dist/{chunk-J5CSLNCN.cjs → chunk-OODVC2UD.cjs} +2 -2
- package/dist/{chunk-J5CSLNCN.cjs.map → chunk-OODVC2UD.cjs.map} +1 -1
- package/dist/{chunk-ACCAXVOG.js → chunk-OSTSZDQC.js} +134 -56
- package/dist/chunk-OSTSZDQC.js.map +1 -0
- package/dist/{chunk-LL6IWKI3.js → chunk-OW3SQJ7P.js} +3 -3
- package/dist/{chunk-LL6IWKI3.js.map → chunk-OW3SQJ7P.js.map} +1 -1
- package/dist/chunk-P22YCUVM.cjs +4 -0
- package/dist/chunk-P22YCUVM.cjs.map +1 -0
- package/dist/{chunk-CEQJGUAS.js → chunk-P4E3K3ND.js} +12 -5
- package/dist/chunk-P4E3K3ND.js.map +1 -0
- package/dist/{chunk-5GUOOLPR.cjs → chunk-P5CMZZRZ.cjs} +5 -5
- package/dist/{chunk-5GUOOLPR.cjs.map → chunk-P5CMZZRZ.cjs.map} +1 -1
- package/dist/{chunk-TMMVIUUN.js → chunk-P7D7BYFE.js} +4 -4
- package/dist/{chunk-TMMVIUUN.js.map → chunk-P7D7BYFE.js.map} +1 -1
- package/dist/{chunk-3T7QGLNB.js → chunk-PJEL5ZZV.js} +4 -2
- package/dist/chunk-PJEL5ZZV.js.map +1 -0
- package/dist/chunk-PYI2IWNX.cjs +281 -0
- package/dist/chunk-PYI2IWNX.cjs.map +1 -0
- package/dist/chunk-Q3YVLO52.cjs +174 -0
- package/dist/chunk-Q3YVLO52.cjs.map +1 -0
- package/dist/{chunk-WNM7IZJ7.js → chunk-QJ2L5RU6.js} +7 -7
- package/dist/{chunk-WNM7IZJ7.js.map → chunk-QJ2L5RU6.js.map} +1 -1
- package/dist/{chunk-X4LBUPJO.cjs → chunk-QX6AAVDE.cjs} +31 -33
- package/dist/chunk-QX6AAVDE.cjs.map +1 -0
- package/dist/{chunk-UV2FVNWT.cjs → chunk-RIUQP2QS.cjs} +5 -5
- package/dist/{chunk-UV2FVNWT.cjs.map → chunk-RIUQP2QS.cjs.map} +1 -1
- package/dist/chunk-RLVYWUXG.js +115 -0
- package/dist/chunk-RLVYWUXG.js.map +1 -0
- package/dist/{chunk-22CYDCXA.js → chunk-RM2HPQIC.js} +105 -14
- package/dist/chunk-RM2HPQIC.js.map +1 -0
- package/dist/{chunk-DEDN5HAG.js → chunk-RSJGTWLM.js} +3 -3
- package/dist/{chunk-DEDN5HAG.js.map → chunk-RSJGTWLM.js.map} +1 -1
- package/dist/{chunk-6EN3IQQI.cjs → chunk-RV45J2ZT.cjs} +8 -8
- package/dist/{chunk-6EN3IQQI.cjs.map → chunk-RV45J2ZT.cjs.map} +1 -1
- package/dist/chunk-RZSSQ7AT.js +333 -0
- package/dist/chunk-RZSSQ7AT.js.map +1 -0
- package/dist/{chunk-ENKFJJZX.js → chunk-S2JZL4JC.js} +6 -6
- package/dist/{chunk-ENKFJJZX.js.map → chunk-S2JZL4JC.js.map} +1 -1
- package/dist/{chunk-ELPW32ZI.cjs → chunk-S4XCPDEO.cjs} +60 -59
- package/dist/chunk-S4XCPDEO.cjs.map +1 -0
- package/dist/{chunk-OE5CKRUC.js → chunk-SACHTD7B.js} +34 -4
- package/dist/chunk-SACHTD7B.js.map +1 -0
- package/dist/{chunk-U42F3HLE.cjs → chunk-SAGJHL2Z.cjs} +275 -5
- package/dist/chunk-SAGJHL2Z.cjs.map +1 -0
- package/dist/{chunk-VROIMIHB.cjs → chunk-SHBCUXFS.cjs} +28 -6
- package/dist/chunk-SHBCUXFS.cjs.map +1 -0
- package/dist/{chunk-RJ6NTJHC.js → chunk-SRMTRD7F.js} +3 -3
- package/dist/{chunk-RJ6NTJHC.js.map → chunk-SRMTRD7F.js.map} +1 -1
- package/dist/{chunk-IX6KFB3K.cjs → chunk-SW2E7XKY.cjs} +9 -9
- package/dist/{chunk-IX6KFB3K.cjs.map → chunk-SW2E7XKY.cjs.map} +1 -1
- package/dist/chunk-SZSRGUVO.js +402 -0
- package/dist/chunk-SZSRGUVO.js.map +1 -0
- package/dist/{chunk-NJ6MY6V5.js → chunk-T5BBZQ66.js} +3 -3
- package/dist/{chunk-NJ6MY6V5.js.map → chunk-T5BBZQ66.js.map} +1 -1
- package/dist/{chunk-JI244Y7C.js → chunk-T5NOFXOL.js} +275 -5
- package/dist/chunk-T5NOFXOL.js.map +1 -0
- package/dist/{chunk-2IZLKPUW.js → chunk-THLIL6PY.js} +3 -3
- package/dist/{chunk-2IZLKPUW.js.map → chunk-THLIL6PY.js.map} +1 -1
- package/dist/{chunk-HZ4MBUC3.js → chunk-TI3TQQ7F.js} +4 -53
- package/dist/chunk-TI3TQQ7F.js.map +1 -0
- package/dist/chunk-TVU4KB27.cjs +353 -0
- package/dist/chunk-TVU4KB27.cjs.map +1 -0
- package/dist/{chunk-5JJ2DAE4.js → chunk-TWQSMUE6.js} +7 -3
- package/dist/chunk-TWQSMUE6.js.map +1 -0
- package/dist/{chunk-TAXD5ADA.cjs → chunk-UEDTZYGI.cjs} +3 -3
- package/dist/{chunk-TAXD5ADA.cjs.map → chunk-UEDTZYGI.cjs.map} +1 -1
- package/dist/{chunk-3QGS6CXD.js → chunk-UJDWFDKE.js} +3 -3
- package/dist/{chunk-3QGS6CXD.js.map → chunk-UJDWFDKE.js.map} +1 -1
- package/dist/chunk-UNFDIBKJ.js +258 -0
- package/dist/chunk-UNFDIBKJ.js.map +1 -0
- package/dist/{chunk-UQ3VVR6A.cjs → chunk-UPWIJC6I.cjs} +3 -3
- package/dist/{chunk-UQ3VVR6A.cjs.map → chunk-UPWIJC6I.cjs.map} +1 -1
- package/dist/chunk-UTIPENPW.cjs +286 -0
- package/dist/chunk-UTIPENPW.cjs.map +1 -0
- package/dist/{chunk-S7WCHDBO.js → chunk-VCI2Y7ST.js} +3 -3
- package/dist/{chunk-S7WCHDBO.js.map → chunk-VCI2Y7ST.js.map} +1 -1
- package/dist/chunk-VEE46VTX.js +166 -0
- package/dist/chunk-VEE46VTX.js.map +1 -0
- package/dist/chunk-VFFV7EMT.cjs +188 -0
- package/dist/chunk-VFFV7EMT.cjs.map +1 -0
- package/dist/chunk-VINZZQBD.cjs +323 -0
- package/dist/chunk-VINZZQBD.cjs.map +1 -0
- package/dist/chunk-VPTASZ2O.cjs +171 -0
- package/dist/chunk-VPTASZ2O.cjs.map +1 -0
- package/dist/{chunk-P2CA3XGI.js → chunk-VSRO4PAI.js} +23 -5
- package/dist/chunk-VSRO4PAI.js.map +1 -0
- package/dist/{chunk-L6MDULYB.js → chunk-VU3ZMJBN.js} +2 -2
- package/dist/{chunk-L6MDULYB.js.map → chunk-VU3ZMJBN.js.map} +1 -1
- package/dist/{chunk-XI34EGK5.cjs → chunk-VV2U36T6.cjs} +9 -9
- package/dist/{chunk-XI34EGK5.cjs.map → chunk-VV2U36T6.cjs.map} +1 -1
- package/dist/{chunk-VPWJCJCX.cjs → chunk-VXW7D5LR.cjs} +26 -8
- package/dist/chunk-VXW7D5LR.cjs.map +1 -0
- package/dist/chunk-W3HXHIDO.cjs +2573 -0
- package/dist/chunk-W3HXHIDO.cjs.map +1 -0
- package/dist/{chunk-GOALNQZ2.js → chunk-WFBUBT54.js} +4 -83
- package/dist/chunk-WFBUBT54.js.map +1 -0
- package/dist/chunk-WFL4N5PC.js +283 -0
- package/dist/chunk-WFL4N5PC.js.map +1 -0
- package/dist/chunk-WQHBMZSC.js +295 -0
- package/dist/chunk-WQHBMZSC.js.map +1 -0
- package/dist/chunk-X3RSNAMX.js +195 -0
- package/dist/chunk-X3RSNAMX.js.map +1 -0
- package/dist/chunk-X5JOEZVR.js +525 -0
- package/dist/chunk-X5JOEZVR.js.map +1 -0
- package/dist/chunk-XBAAHOCP.js +3 -0
- package/dist/chunk-XBAAHOCP.js.map +1 -0
- package/dist/chunk-XDIMTPZU.cjs +202 -0
- package/dist/chunk-XDIMTPZU.cjs.map +1 -0
- package/dist/chunk-XDU65GLW.js +21 -0
- package/dist/chunk-XDU65GLW.js.map +1 -0
- package/dist/chunk-XI74P5F2.cjs +424 -0
- package/dist/chunk-XI74P5F2.cjs.map +1 -0
- package/dist/chunk-XNPDZANN.cjs +238 -0
- package/dist/chunk-XNPDZANN.cjs.map +1 -0
- package/dist/{chunk-WIAQQNFU.cjs → chunk-XRVMYT5G.cjs} +106 -13
- package/dist/chunk-XRVMYT5G.cjs.map +1 -0
- package/dist/chunk-XVW5DPPP.js +429 -0
- package/dist/chunk-XVW5DPPP.js.map +1 -0
- package/dist/chunk-XXA4NZUC.js +3 -0
- package/dist/chunk-XXA4NZUC.js.map +1 -0
- package/dist/chunk-Y424YL55.js +59 -0
- package/dist/chunk-Y424YL55.js.map +1 -0
- package/dist/chunk-Y4QNLW7W.js +300 -0
- package/dist/chunk-Y4QNLW7W.js.map +1 -0
- package/dist/chunk-Y7ZJZLJY.js +2657 -0
- package/dist/chunk-Y7ZJZLJY.js.map +1 -0
- package/dist/chunk-YGS2TRMP.js +38 -0
- package/dist/chunk-YGS2TRMP.js.map +1 -0
- package/dist/chunk-YUMOM3KE.js +167 -0
- package/dist/chunk-YUMOM3KE.js.map +1 -0
- package/dist/chunk-YW2AKBLS.cjs +23 -0
- package/dist/chunk-YW2AKBLS.cjs.map +1 -0
- package/dist/chunk-ZNUMOJOI.cjs +4 -0
- package/dist/chunk-ZNUMOJOI.cjs.map +1 -0
- package/dist/chunk-ZSNFL736.cjs +306 -0
- package/dist/chunk-ZSNFL736.cjs.map +1 -0
- package/dist/components/Accordion/index.cjs +2 -2
- package/dist/components/Accordion/index.d.cts +6 -0
- package/dist/components/Accordion/index.d.ts +6 -0
- package/dist/components/Accordion/index.js +1 -1
- package/dist/components/ActionPlan/index.cjs +34 -0
- package/dist/components/ActionPlan/index.cjs.map +1 -0
- package/dist/components/ActionPlan/index.d.cts +65 -0
- package/dist/components/ActionPlan/index.d.ts +65 -0
- package/dist/components/ActionPlan/index.js +21 -0
- package/dist/components/ActionPlan/index.js.map +1 -0
- package/dist/components/ActivityFeed/index.cjs +31 -0
- package/dist/components/ActivityFeed/index.cjs.map +1 -0
- package/dist/components/ActivityFeed/index.d.cts +99 -0
- package/dist/components/ActivityFeed/index.d.ts +99 -0
- package/dist/components/ActivityFeed/index.js +18 -0
- package/dist/components/ActivityFeed/index.js.map +1 -0
- package/dist/components/Alert/index.d.cts +1 -1
- package/dist/components/Alert/index.d.ts +1 -1
- package/dist/components/AlertDialog/index.cjs +19 -5
- package/dist/components/AlertDialog/index.d.cts +94 -16
- package/dist/components/AlertDialog/index.d.ts +94 -16
- package/dist/components/AlertDialog/index.js +6 -4
- package/dist/components/AssociationList/index.cjs +29 -0
- package/dist/components/AssociationList/index.cjs.map +1 -0
- package/dist/components/AssociationList/index.d.cts +50 -0
- package/dist/components/AssociationList/index.d.ts +50 -0
- package/dist/components/AssociationList/index.js +16 -0
- package/dist/components/AssociationList/index.js.map +1 -0
- package/dist/components/AudioRecorder/index.d.cts +2 -2
- package/dist/components/AudioRecorder/index.d.ts +2 -2
- package/dist/components/Autocomplete/index.d.cts +8 -2
- package/dist/components/Autocomplete/index.d.ts +8 -2
- package/dist/components/Avatar/index.cjs +9 -7
- package/dist/components/Avatar/index.d.cts +46 -15
- package/dist/components/Avatar/index.d.ts +46 -15
- package/dist/components/Avatar/index.js +3 -1
- package/dist/components/AvatarGroup/index.cjs +20 -0
- package/dist/components/AvatarGroup/index.cjs.map +1 -0
- package/dist/components/AvatarGroup/index.d.cts +57 -0
- package/dist/components/AvatarGroup/index.d.ts +57 -0
- package/dist/components/AvatarGroup/index.js +7 -0
- package/dist/components/AvatarGroup/index.js.map +1 -0
- package/dist/components/Badge/index.cjs +3 -3
- package/dist/components/Badge/index.d.cts +16 -2
- package/dist/components/Badge/index.d.ts +16 -2
- package/dist/components/Badge/index.js +1 -1
- package/dist/components/BoardView/index.cjs +24 -0
- package/dist/components/BoardView/index.cjs.map +1 -0
- package/dist/components/BoardView/index.d.cts +41 -0
- package/dist/components/BoardView/index.d.ts +41 -0
- package/dist/components/BoardView/index.js +7 -0
- package/dist/components/BoardView/index.js.map +1 -0
- package/dist/components/Button/index.cjs +5 -3
- package/dist/components/Button/index.d.cts +2 -1
- package/dist/components/Button/index.d.ts +2 -1
- package/dist/components/Button/index.js +3 -1
- package/dist/components/CalendarHeatmap/index.cjs +18 -0
- package/dist/components/CalendarHeatmap/index.cjs.map +1 -0
- package/dist/components/CalendarHeatmap/index.d.cts +47 -0
- package/dist/components/CalendarHeatmap/index.d.ts +47 -0
- package/dist/components/CalendarHeatmap/index.js +5 -0
- package/dist/components/CalendarHeatmap/index.js.map +1 -0
- package/dist/components/CalendarView/index.cjs +24 -0
- package/dist/components/CalendarView/index.cjs.map +1 -0
- package/dist/components/CalendarView/index.d.cts +39 -0
- package/dist/components/CalendarView/index.d.ts +39 -0
- package/dist/components/CalendarView/index.js +11 -0
- package/dist/components/CalendarView/index.js.map +1 -0
- package/dist/components/Card/index.d.cts +3 -3
- package/dist/components/Card/index.d.ts +3 -3
- package/dist/components/ClampedText/index.cjs +3 -2
- package/dist/components/ClampedText/index.js +2 -1
- package/dist/components/CollabStatus/index.cjs +6 -4
- package/dist/components/CollabStatus/index.d.cts +11 -0
- package/dist/components/CollabStatus/index.d.ts +11 -0
- package/dist/components/CollabStatus/index.js +3 -1
- package/dist/components/Collapsible/index.cjs +6 -6
- package/dist/components/Collapsible/index.d.cts +6 -0
- package/dist/components/Collapsible/index.d.ts +6 -0
- package/dist/components/Collapsible/index.js +3 -3
- package/dist/components/CompletenessMeter/index.cjs +23 -0
- package/dist/components/CompletenessMeter/index.cjs.map +1 -0
- package/dist/components/CompletenessMeter/index.d.cts +52 -0
- package/dist/components/CompletenessMeter/index.d.ts +52 -0
- package/dist/components/CompletenessMeter/index.js +6 -0
- package/dist/components/CompletenessMeter/index.js.map +1 -0
- package/dist/components/CountryCodeDropdown/index.cjs +5 -5
- package/dist/components/CountryCodeDropdown/index.js +2 -2
- package/dist/components/CustomizableDashboard/index.cjs +12 -10
- package/dist/components/CustomizableDashboard/index.js +5 -3
- package/dist/components/DateInput/index.d.cts +36 -4
- package/dist/components/DateInput/index.d.ts +36 -4
- package/dist/components/Dropdown/index.cjs +11 -10
- package/dist/components/Dropdown/index.d.cts +2 -1
- package/dist/components/Dropdown/index.d.ts +2 -1
- package/dist/components/Dropdown/index.js +4 -3
- package/dist/components/EmailEditor/index.cjs +67 -0
- package/dist/components/EmailEditor/index.cjs.map +1 -0
- package/dist/components/EmailEditor/index.d.cts +347 -0
- package/dist/components/EmailEditor/index.d.ts +347 -0
- package/dist/components/EmailEditor/index.js +26 -0
- package/dist/components/EmailEditor/index.js.map +1 -0
- package/dist/components/FieldHistory/index.cjs +34 -0
- package/dist/components/FieldHistory/index.cjs.map +1 -0
- package/dist/components/FieldHistory/index.d.cts +66 -0
- package/dist/components/FieldHistory/index.d.ts +66 -0
- package/dist/components/FieldHistory/index.js +21 -0
- package/dist/components/FieldHistory/index.js.map +1 -0
- package/dist/components/FloatingWindow/index.cjs +6 -4
- package/dist/components/FloatingWindow/index.js +4 -2
- package/dist/components/GanttView/index.cjs +20 -0
- package/dist/components/GanttView/index.cjs.map +1 -0
- package/dist/components/GanttView/index.d.cts +36 -0
- package/dist/components/GanttView/index.d.ts +36 -0
- package/dist/components/GanttView/index.js +7 -0
- package/dist/components/GanttView/index.js.map +1 -0
- package/dist/components/GlossaryTooltip/index.cjs +3 -3
- package/dist/components/GlossaryTooltip/index.js +2 -2
- package/dist/components/InlineEdit/index.cjs +20 -0
- package/dist/components/InlineEdit/index.cjs.map +1 -0
- package/dist/components/InlineEdit/index.d.cts +56 -0
- package/dist/components/InlineEdit/index.d.ts +56 -0
- package/dist/components/InlineEdit/index.js +7 -0
- package/dist/components/InlineEdit/index.js.map +1 -0
- package/dist/components/KeyboardShortcutsOverlay/index.cjs +5 -5
- package/dist/components/KeyboardShortcutsOverlay/index.js +3 -3
- package/dist/components/ListView/index.cjs +24 -0
- package/dist/components/ListView/index.cjs.map +1 -0
- package/dist/components/ListView/index.d.cts +124 -0
- package/dist/components/ListView/index.d.ts +124 -0
- package/dist/components/ListView/index.js +11 -0
- package/dist/components/ListView/index.js.map +1 -0
- package/dist/components/LogoUploader/index.cjs +18 -0
- package/dist/components/LogoUploader/index.cjs.map +1 -0
- package/dist/components/LogoUploader/index.d.cts +49 -0
- package/dist/components/LogoUploader/index.d.ts +49 -0
- package/dist/components/LogoUploader/index.js +5 -0
- package/dist/components/LogoUploader/index.js.map +1 -0
- package/dist/components/Markdown/index.cjs +21 -19
- package/dist/components/Markdown/index.js +9 -7
- package/dist/components/MediaEditor/index.cjs +16 -14
- package/dist/components/MediaEditor/index.d.cts +91 -2
- package/dist/components/MediaEditor/index.d.ts +91 -2
- package/dist/components/MediaEditor/index.js +11 -9
- package/dist/components/MediaFeed/index.cjs +29 -0
- package/dist/components/MediaFeed/index.cjs.map +1 -0
- package/dist/components/MediaFeed/index.d.cts +104 -0
- package/dist/components/MediaFeed/index.d.ts +104 -0
- package/dist/components/MediaFeed/index.js +20 -0
- package/dist/components/MediaFeed/index.js.map +1 -0
- package/dist/components/MediaPlayer/index.cjs +8 -6
- package/dist/components/MediaPlayer/index.d.cts +19 -1
- package/dist/components/MediaPlayer/index.d.ts +19 -1
- package/dist/components/MediaPlayer/index.js +5 -3
- package/dist/components/MegaMenu/index.cjs +7 -5
- package/dist/components/MegaMenu/index.js +4 -2
- package/dist/components/Modal/index.cjs +10 -10
- package/dist/components/Modal/index.js +2 -2
- package/dist/components/Pagination/index.d.cts +1 -1
- package/dist/components/Pagination/index.d.ts +1 -1
- package/dist/components/PhiMask/index.cjs +18 -0
- package/dist/components/PhiMask/index.cjs.map +1 -0
- package/dist/components/PhiMask/index.d.cts +45 -0
- package/dist/components/PhiMask/index.d.ts +45 -0
- package/dist/components/PhiMask/index.js +5 -0
- package/dist/components/PhiMask/index.js.map +1 -0
- package/dist/components/Progress/index.cjs +6 -6
- package/dist/components/Progress/index.d.cts +8 -2
- package/dist/components/Progress/index.d.ts +8 -2
- package/dist/components/Progress/index.js +1 -1
- package/dist/components/PropertyList/index.cjs +25 -0
- package/dist/components/PropertyList/index.cjs.map +1 -0
- package/dist/components/PropertyList/index.d.cts +87 -0
- package/dist/components/PropertyList/index.d.ts +87 -0
- package/dist/components/PropertyList/index.js +12 -0
- package/dist/components/PropertyList/index.js.map +1 -0
- package/dist/components/Q/index.d.cts +2 -2
- package/dist/components/Q/index.d.ts +2 -2
- package/dist/components/QuickAction/index.d.cts +1 -1
- package/dist/components/QuickAction/index.d.ts +1 -1
- package/dist/components/RadialExplorer/index.cjs +7 -5
- package/dist/components/RadialExplorer/index.js +6 -4
- package/dist/components/Rating/index.cjs +28 -0
- package/dist/components/Rating/index.cjs.map +1 -0
- package/dist/components/Rating/index.d.cts +85 -0
- package/dist/components/Rating/index.d.ts +85 -0
- package/dist/components/Rating/index.js +7 -0
- package/dist/components/Rating/index.js.map +1 -0
- package/dist/components/RecordButton/index.d.cts +1 -1
- package/dist/components/RecordButton/index.d.ts +1 -1
- package/dist/components/RecordHeader/index.cjs +29 -0
- package/dist/components/RecordHeader/index.cjs.map +1 -0
- package/dist/components/RecordHeader/index.d.cts +96 -0
- package/dist/components/RecordHeader/index.d.ts +96 -0
- package/dist/components/RecordHeader/index.js +16 -0
- package/dist/components/RecordHeader/index.js.map +1 -0
- package/dist/components/RecordLayout/index.cjs +21 -0
- package/dist/components/RecordLayout/index.cjs.map +1 -0
- package/dist/components/RecordLayout/index.d.cts +40 -0
- package/dist/components/RecordLayout/index.d.ts +40 -0
- package/dist/components/RecordLayout/index.js +8 -0
- package/dist/components/RecordLayout/index.js.map +1 -0
- package/dist/components/RichTextEditor/index.cjs +11 -8
- package/dist/components/RichTextEditor/index.d.cts +12 -2
- package/dist/components/RichTextEditor/index.d.ts +12 -2
- package/dist/components/RichTextEditor/index.js +8 -5
- package/dist/components/ScrollArea/index.d.cts +1 -1
- package/dist/components/ScrollArea/index.d.ts +1 -1
- package/dist/components/SectionSpyNav/index.cjs +5 -3
- package/dist/components/SectionSpyNav/index.js +4 -2
- package/dist/components/Select/index.cjs +4 -4
- package/dist/components/Select/index.d.cts +2 -2
- package/dist/components/Select/index.d.ts +2 -2
- package/dist/components/Select/index.js +2 -2
- package/dist/components/Skeleton/index.d.cts +1 -1
- package/dist/components/Skeleton/index.d.ts +1 -1
- package/dist/components/Slider/index.d.cts +2 -2
- package/dist/components/Slider/index.d.ts +2 -2
- package/dist/components/SliderCalculator/index.cjs +4 -4
- package/dist/components/SliderCalculator/index.js +2 -2
- package/dist/components/SourceTip/index.cjs +3 -3
- package/dist/components/SourceTip/index.js +2 -2
- package/dist/components/Spinner/index.d.cts +2 -2
- package/dist/components/Spinner/index.d.ts +2 -2
- package/dist/components/SuperChat/index.cjs +1300 -713
- package/dist/components/SuperChat/index.cjs.map +1 -1
- package/dist/components/SuperChat/index.d.cts +126 -8
- package/dist/components/SuperChat/index.d.ts +126 -8
- package/dist/components/SuperChat/index.js +1404 -817
- package/dist/components/SuperChat/index.js.map +1 -1
- package/dist/components/SuperChat/plugins/index.cjs +7 -6
- package/dist/components/SuperChat/plugins/index.cjs.map +1 -1
- package/dist/components/SuperChat/plugins/index.d.cts +2 -3
- package/dist/components/SuperChat/plugins/index.d.ts +2 -3
- package/dist/components/SuperChat/plugins/index.js +6 -5
- package/dist/components/SuperChat/plugins/index.js.map +1 -1
- package/dist/components/Tabs/index.cjs +9 -7
- package/dist/components/Tabs/index.d.cts +12 -1
- package/dist/components/Tabs/index.d.ts +12 -1
- package/dist/components/Tabs/index.js +3 -1
- package/dist/components/TagEditor/index.cjs +22 -0
- package/dist/components/TagEditor/index.cjs.map +1 -0
- package/dist/components/TagEditor/index.d.cts +46 -0
- package/dist/components/TagEditor/index.d.ts +46 -0
- package/dist/components/TagEditor/index.js +9 -0
- package/dist/components/TagEditor/index.js.map +1 -0
- package/dist/components/Text/index.d.cts +3 -3
- package/dist/components/Text/index.d.ts +3 -3
- package/dist/components/Textarea/index.d.cts +2 -2
- package/dist/components/Textarea/index.d.ts +2 -2
- package/dist/components/ThemeProvider/index.cjs +9 -9
- package/dist/components/ThemeProvider/index.d.cts +3 -1
- package/dist/components/ThemeProvider/index.d.ts +3 -1
- package/dist/components/ThemeProvider/index.js +3 -3
- package/dist/components/Tooltip/index.cjs +3 -3
- package/dist/components/Tooltip/index.js +2 -2
- package/dist/components/TranscriptView/index.d.cts +85 -4
- package/dist/components/TranscriptView/index.d.ts +85 -4
- package/dist/components/UserPicker/index.cjs +24 -0
- package/dist/components/UserPicker/index.cjs.map +1 -0
- package/dist/components/UserPicker/index.d.cts +60 -0
- package/dist/components/UserPicker/index.d.ts +60 -0
- package/dist/components/UserPicker/index.js +11 -0
- package/dist/components/UserPicker/index.js.map +1 -0
- package/dist/components/VideoCard/index.cjs +4 -4
- package/dist/components/VideoCard/index.js +2 -2
- package/dist/components/ViewSet/index.cjs +25 -0
- package/dist/components/ViewSet/index.cjs.map +1 -0
- package/dist/components/ViewSet/index.d.cts +201 -0
- package/dist/components/ViewSet/index.d.ts +201 -0
- package/dist/components/ViewSet/index.js +16 -0
- package/dist/components/ViewSet/index.js.map +1 -0
- package/dist/components/ViewSwitcher/index.cjs +20 -0
- package/dist/components/ViewSwitcher/index.cjs.map +1 -0
- package/dist/components/ViewSwitcher/index.d.cts +39 -0
- package/dist/components/ViewSwitcher/index.d.ts +39 -0
- package/dist/components/ViewSwitcher/index.js +7 -0
- package/dist/components/ViewSwitcher/index.js.map +1 -0
- package/dist/datavis.cjs +6 -4
- package/dist/datavis.cjs.map +1 -1
- package/dist/datavis.d.cts +167 -13
- package/dist/datavis.d.ts +167 -13
- package/dist/datavis.js +4 -2
- package/dist/datavis.js.map +1 -1
- package/dist/deck.cjs +3360 -0
- package/dist/deck.cjs.map +1 -0
- package/dist/deck.d.cts +712 -0
- package/dist/deck.d.ts +712 -0
- package/dist/deck.js +3316 -0
- package/dist/deck.js.map +1 -0
- package/dist/esheet.cjs +19 -16
- package/dist/esheet.cjs.map +1 -1
- package/dist/esheet.d.cts +183 -1
- package/dist/esheet.d.ts +183 -1
- package/dist/esheet.js +16 -13
- package/dist/esheet.js.map +1 -1
- package/dist/globe.cjs +2 -2
- package/dist/globe.js +1 -1
- package/dist/hooks/index.cjs +94 -35
- package/dist/hooks/index.d.cts +680 -36
- package/dist/hooks/index.d.ts +680 -36
- package/dist/hooks/index.js +10 -7
- package/dist/icons-wBacj6BW.d.cts +142 -0
- package/dist/icons-wBacj6BW.d.ts +142 -0
- package/dist/index.cjs +2152 -1276
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +10375 -626
- package/dist/index.d.ts +10375 -626
- package/dist/index.js +740 -313
- package/dist/index.js.map +1 -1
- package/dist/kerebron.cjs +58 -19
- package/dist/kerebron.cjs.map +1 -1
- package/dist/kerebron.css +115 -0
- package/dist/kerebron.d.cts +37 -0
- package/dist/kerebron.d.ts +37 -0
- package/dist/kerebron.js +58 -19
- package/dist/kerebron.js.map +1 -1
- package/dist/maps.cjs +160 -0
- package/dist/maps.cjs.map +1 -0
- package/dist/maps.d.cts +42 -0
- package/dist/maps.d.ts +42 -0
- package/dist/maps.js +138 -0
- package/dist/maps.js.map +1 -0
- package/dist/motion.cjs +7 -7
- package/dist/motion.d.cts +186 -2
- package/dist/motion.d.ts +186 -2
- package/dist/motion.js +2 -2
- package/dist/org-chart.cjs +1302 -0
- package/dist/org-chart.cjs.map +1 -0
- package/dist/org-chart.d.cts +164 -0
- package/dist/org-chart.d.ts +164 -0
- package/dist/org-chart.js +1277 -0
- package/dist/org-chart.js.map +1 -0
- package/dist/q.d.cts +25 -3
- package/dist/q.d.ts +25 -3
- package/dist/styles/effects.css +133 -0
- package/dist/styles/init.css +22 -3
- package/dist/styles.css +1 -1
- package/dist/tailwind-preset.cjs +4 -4
- package/dist/tailwind-preset.js +1 -1
- package/dist/templates.cjs +156 -0
- package/dist/templates.cjs.map +1 -0
- package/dist/templates.d.cts +734 -0
- package/dist/templates.d.ts +734 -0
- package/dist/templates.js +11 -0
- package/dist/templates.js.map +1 -0
- package/dist/types-CDeBNZiE.d.cts +92 -0
- package/dist/types-CDeBNZiE.d.ts +92 -0
- package/dist/types-Cx1FHLq2.d.cts +548 -0
- package/dist/types-Cx1FHLq2.d.ts +548 -0
- package/dist/types-DsdZvEI1.d.cts +92 -0
- package/dist/types-DsdZvEI1.d.ts +92 -0
- package/dist/utils/index.cjs +9 -9
- package/dist/utils/index.d.cts +13 -2
- package/dist/utils/index.d.ts +13 -2
- package/dist/utils/index.js +1 -1
- package/package.json +82 -13
- package/dist/Animated-XmH6k8pZ.d.cts +0 -188
- package/dist/Animated-XmH6k8pZ.d.ts +0 -188
- package/dist/CsvBlock-ROJCKJDP.cjs +0 -16
- package/dist/CsvBlock-UWPMTLE2.js +0 -7
- package/dist/HtmlPreviewBlock-DWFN6EUB.cjs +0 -16
- package/dist/HtmlPreviewBlock-ME5U3XNS.js +0 -7
- package/dist/MedicationEditor-Bp4NLy7y.d.cts +0 -352
- package/dist/MedicationEditor-Bp4NLy7y.d.ts +0 -352
- package/dist/MermaidBlock-2B6CPD6Y.js +0 -7
- package/dist/MermaidBlock-D2UC5M55.cjs +0 -16
- package/dist/SurveyBlock-4CD4AYMJ.cjs +0 -16
- package/dist/SurveyBlock-4DO62RBT.js +0 -7
- package/dist/chunk-22CYDCXA.js.map +0 -1
- package/dist/chunk-2YCERQWC.js.map +0 -1
- package/dist/chunk-3T7QGLNB.js.map +0 -1
- package/dist/chunk-5JJ2DAE4.js.map +0 -1
- package/dist/chunk-6HFFWEM3.cjs +0 -22
- package/dist/chunk-6HFFWEM3.cjs.map +0 -1
- package/dist/chunk-7ZDPD5ZX.cjs.map +0 -1
- package/dist/chunk-7ZVTLTJF.js +0 -109
- package/dist/chunk-7ZVTLTJF.js.map +0 -1
- package/dist/chunk-ACCAXVOG.js.map +0 -1
- package/dist/chunk-BMSG4NBH.js +0 -56
- package/dist/chunk-BMSG4NBH.js.map +0 -1
- package/dist/chunk-CEQJGUAS.js.map +0 -1
- package/dist/chunk-DVOQ3JNO.js.map +0 -1
- package/dist/chunk-E4IBHYJ7.cjs +0 -80
- package/dist/chunk-E4IBHYJ7.cjs.map +0 -1
- package/dist/chunk-ELPW32ZI.cjs.map +0 -1
- package/dist/chunk-GD7EBGC4.cjs.map +0 -1
- package/dist/chunk-GOALNQZ2.js.map +0 -1
- package/dist/chunk-HB7C7NB5.js +0 -20
- package/dist/chunk-HB7C7NB5.js.map +0 -1
- package/dist/chunk-HZ4MBUC3.js.map +0 -1
- package/dist/chunk-JEIW7BSV.cjs.map +0 -1
- package/dist/chunk-JHULS3EC.js +0 -130
- package/dist/chunk-JHULS3EC.js.map +0 -1
- package/dist/chunk-JI244Y7C.js.map +0 -1
- package/dist/chunk-JYZW2PZS.cjs.map +0 -1
- package/dist/chunk-KRU6IGV7.js.map +0 -1
- package/dist/chunk-NV2CWBI2.cjs.map +0 -1
- package/dist/chunk-OE5CKRUC.js.map +0 -1
- package/dist/chunk-P2CA3XGI.js.map +0 -1
- package/dist/chunk-P7UMS4E6.cjs.map +0 -1
- package/dist/chunk-SQHMGT4W.js.map +0 -1
- package/dist/chunk-SVSHA7XV.js.map +0 -1
- package/dist/chunk-U42F3HLE.cjs.map +0 -1
- package/dist/chunk-VKELAMAZ.js.map +0 -1
- package/dist/chunk-VNYW4C4J.cjs.map +0 -1
- package/dist/chunk-VOKVG3ER.js +0 -78
- package/dist/chunk-VOKVG3ER.js.map +0 -1
- package/dist/chunk-VPIYTQCV.cjs.map +0 -1
- package/dist/chunk-VPWJCJCX.cjs.map +0 -1
- package/dist/chunk-VROIMIHB.cjs.map +0 -1
- package/dist/chunk-WIAQQNFU.cjs.map +0 -1
- package/dist/chunk-WNAA6CLE.cjs +0 -143
- package/dist/chunk-WNAA6CLE.cjs.map +0 -1
- package/dist/chunk-WNJRS7Y7.cjs.map +0 -1
- package/dist/chunk-X4LBUPJO.cjs.map +0 -1
- package/dist/chunk-X4XPNTCZ.cjs.map +0 -1
- package/dist/chunk-XCP454Q6.js.map +0 -1
- package/dist/chunk-XEAT7XJG.cjs.map +0 -1
- package/dist/chunk-YVL3XATO.cjs +0 -79
- package/dist/chunk-YVL3XATO.cjs.map +0 -1
- package/dist/chunk-YVPC65ZJ.cjs.map +0 -1
- package/dist/html-MdxqSzjD.d.cts +0 -13
- package/dist/html-MdxqSzjD.d.ts +0 -13
- package/dist/orderRows-BUJYgSc7.d.cts +0 -221
- package/dist/orderRows-BUJYgSc7.d.ts +0 -221
- package/dist/transcript-Cg7uSW-C.d.cts +0 -84
- package/dist/transcript-Cg7uSW-C.d.ts +0 -84
- package/dist/types-B97JNRNQ.d.cts +0 -251
- package/dist/types-CnPEwzlp.d.cts +0 -254
- package/dist/types-CnPEwzlp.d.ts +0 -254
- package/dist/types-gZXrfLj6.d.ts +0 -251
- package/dist/useAnchoredPosition-CKwLSQW8.d.cts +0 -76
- package/dist/useAnchoredPosition-CKwLSQW8.d.ts +0 -76
- package/dist/useTheme-B9SWu6ui.d.cts +0 -24
- package/dist/useTheme-B9SWu6ui.d.ts +0 -24
- package/dist/useTranscriptEdits-CGzlemHT.d.cts +0 -182
- package/dist/useTranscriptEdits-D32bLs0l.d.ts +0 -182
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
import { Dropdown, DropdownItem } from './chunk-EEOGIGIA.js';
|
|
2
|
+
import { Avatar } from './chunk-TI3TQQ7F.js';
|
|
3
|
+
import { Badge } from './chunk-522WJIVI.js';
|
|
4
|
+
import { Button } from './chunk-WFBUBT54.js';
|
|
5
|
+
import { buttonVariants } from './chunk-GVM6DTR5.js';
|
|
6
|
+
import { cn } from './chunk-TQONQSJO.js';
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
import { cva } from 'class-variance-authority';
|
|
9
|
+
import { MoreHorizontal, ArrowLeft } from 'lucide-react';
|
|
10
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
11
|
+
|
|
12
|
+
var defaultRecordHeaderLabels = {
|
|
13
|
+
back: "Back",
|
|
14
|
+
moreActions: "More actions",
|
|
15
|
+
meta: "Details"
|
|
16
|
+
};
|
|
17
|
+
var recordHeaderVariants = cva(
|
|
18
|
+
"border-border bg-background flex flex-col gap-3 border-b px-4 py-4 sm:px-6",
|
|
19
|
+
{
|
|
20
|
+
variants: {
|
|
21
|
+
sticky: {
|
|
22
|
+
true: "sticky top-0 z-20",
|
|
23
|
+
false: ""
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
defaultVariants: { sticky: false }
|
|
27
|
+
}
|
|
28
|
+
);
|
|
29
|
+
var menuLinkClass = "text-foreground hover:bg-muted focus-visible:bg-muted flex w-full items-center gap-3 rounded-lg px-3 py-2 text-start text-sm font-medium focus:outline-none";
|
|
30
|
+
var RecordHeader = React.forwardRef(
|
|
31
|
+
({
|
|
32
|
+
title,
|
|
33
|
+
headingLevel: Heading = "h1",
|
|
34
|
+
subtitle,
|
|
35
|
+
avatar,
|
|
36
|
+
icon: Icon,
|
|
37
|
+
media,
|
|
38
|
+
badges,
|
|
39
|
+
meta,
|
|
40
|
+
actions = [],
|
|
41
|
+
maxVisibleActions = 2,
|
|
42
|
+
presence,
|
|
43
|
+
breadcrumbs,
|
|
44
|
+
onBack,
|
|
45
|
+
backHref,
|
|
46
|
+
sticky,
|
|
47
|
+
labels: labelsProp,
|
|
48
|
+
className,
|
|
49
|
+
children,
|
|
50
|
+
...rest
|
|
51
|
+
}, ref) => {
|
|
52
|
+
const labels = { ...defaultRecordHeaderLabels, ...labelsProp };
|
|
53
|
+
const [menuOpen, setMenuOpen] = React.useState(false);
|
|
54
|
+
const hasOverflow = actions.length > maxVisibleActions;
|
|
55
|
+
const variantOf = (a, i) => a.variant ?? (i === 0 ? "primary" : "outline");
|
|
56
|
+
const leading = media ? /* @__PURE__ */ jsx("div", { "data-slot": "record-header-media", className: "shrink-0", children: media }) : avatar ? /* @__PURE__ */ jsx(
|
|
57
|
+
Avatar,
|
|
58
|
+
{
|
|
59
|
+
"data-slot": "record-header-media",
|
|
60
|
+
size: "lg",
|
|
61
|
+
src: avatar.src,
|
|
62
|
+
name: avatar.name,
|
|
63
|
+
alt: "",
|
|
64
|
+
className: "shrink-0"
|
|
65
|
+
}
|
|
66
|
+
) : Icon ? /* @__PURE__ */ jsx(
|
|
67
|
+
"div",
|
|
68
|
+
{
|
|
69
|
+
"data-slot": "record-header-media",
|
|
70
|
+
className: "bg-muted text-muted-foreground flex h-12 w-12 shrink-0 items-center justify-center rounded-lg",
|
|
71
|
+
children: /* @__PURE__ */ jsx(Icon, { className: "h-6 w-6", "aria-hidden": "true" })
|
|
72
|
+
}
|
|
73
|
+
) : null;
|
|
74
|
+
const backClass = cn(
|
|
75
|
+
buttonVariants({ variant: "ghost", size: "icon" }),
|
|
76
|
+
"shrink-0 rtl:[&_svg]:-scale-x-100"
|
|
77
|
+
);
|
|
78
|
+
const back = backHref ? /* @__PURE__ */ jsx(
|
|
79
|
+
"a",
|
|
80
|
+
{
|
|
81
|
+
href: backHref,
|
|
82
|
+
onClick: onBack,
|
|
83
|
+
"aria-label": labels.back,
|
|
84
|
+
className: backClass,
|
|
85
|
+
children: /* @__PURE__ */ jsx(ArrowLeft, { className: "h-5 w-5", "aria-hidden": "true" })
|
|
86
|
+
}
|
|
87
|
+
) : onBack ? /* @__PURE__ */ jsx(
|
|
88
|
+
"button",
|
|
89
|
+
{
|
|
90
|
+
type: "button",
|
|
91
|
+
onClick: onBack,
|
|
92
|
+
"aria-label": labels.back,
|
|
93
|
+
className: backClass,
|
|
94
|
+
children: /* @__PURE__ */ jsx(ArrowLeft, { className: "h-5 w-5", "aria-hidden": "true" })
|
|
95
|
+
}
|
|
96
|
+
) : null;
|
|
97
|
+
const renderButton = (a, i) => {
|
|
98
|
+
const ActionIcon = a.icon;
|
|
99
|
+
const iconEl = ActionIcon ? /* @__PURE__ */ jsx(ActionIcon, { className: "h-4 w-4", "aria-hidden": "true" }) : void 0;
|
|
100
|
+
const hiddenOnMobile = "hidden sm:inline-flex";
|
|
101
|
+
if (a.href && !a.disabled) {
|
|
102
|
+
return /* @__PURE__ */ jsxs(
|
|
103
|
+
"a",
|
|
104
|
+
{
|
|
105
|
+
href: a.href,
|
|
106
|
+
onClick: a.onClick,
|
|
107
|
+
className: cn(
|
|
108
|
+
buttonVariants({ variant: variantOf(a, i), size: "sm" }),
|
|
109
|
+
"gap-2",
|
|
110
|
+
hiddenOnMobile
|
|
111
|
+
),
|
|
112
|
+
children: [
|
|
113
|
+
iconEl,
|
|
114
|
+
a.label
|
|
115
|
+
]
|
|
116
|
+
},
|
|
117
|
+
a.id
|
|
118
|
+
);
|
|
119
|
+
}
|
|
120
|
+
return /* @__PURE__ */ jsx(
|
|
121
|
+
Button,
|
|
122
|
+
{
|
|
123
|
+
size: "sm",
|
|
124
|
+
variant: variantOf(a, i),
|
|
125
|
+
leftIcon: iconEl,
|
|
126
|
+
onClick: a.onClick,
|
|
127
|
+
disabled: a.disabled,
|
|
128
|
+
className: hiddenOnMobile,
|
|
129
|
+
children: a.label
|
|
130
|
+
},
|
|
131
|
+
a.id
|
|
132
|
+
);
|
|
133
|
+
};
|
|
134
|
+
const renderMenuItem = (a, i) => {
|
|
135
|
+
const ActionIcon = a.icon;
|
|
136
|
+
const iconEl = ActionIcon ? /* @__PURE__ */ jsx(ActionIcon, { className: "h-4 w-4", "aria-hidden": "true" }) : void 0;
|
|
137
|
+
const mobileOnly = i < maxVisibleActions && "sm:hidden";
|
|
138
|
+
const select = (event) => {
|
|
139
|
+
setMenuOpen(false);
|
|
140
|
+
a.onClick?.(event);
|
|
141
|
+
};
|
|
142
|
+
if (a.href && !a.disabled) {
|
|
143
|
+
return /* @__PURE__ */ jsxs(
|
|
144
|
+
"a",
|
|
145
|
+
{
|
|
146
|
+
role: "menuitem",
|
|
147
|
+
"data-slot": "dropdown-item",
|
|
148
|
+
href: a.href,
|
|
149
|
+
onClick: select,
|
|
150
|
+
className: cn(menuLinkClass, mobileOnly),
|
|
151
|
+
children: [
|
|
152
|
+
iconEl && /* @__PURE__ */ jsx("span", { className: "h-4 w-4 shrink-0", children: iconEl }),
|
|
153
|
+
a.label
|
|
154
|
+
]
|
|
155
|
+
},
|
|
156
|
+
a.id
|
|
157
|
+
);
|
|
158
|
+
}
|
|
159
|
+
return /* @__PURE__ */ jsx(
|
|
160
|
+
DropdownItem,
|
|
161
|
+
{
|
|
162
|
+
icon: iconEl,
|
|
163
|
+
variant: variantOf(a, i) === "danger" ? "danger" : "default",
|
|
164
|
+
disabled: a.disabled,
|
|
165
|
+
onClick: select,
|
|
166
|
+
className: cn(mobileOnly),
|
|
167
|
+
children: a.label
|
|
168
|
+
},
|
|
169
|
+
a.id
|
|
170
|
+
);
|
|
171
|
+
};
|
|
172
|
+
return /* @__PURE__ */ jsxs(
|
|
173
|
+
"header",
|
|
174
|
+
{
|
|
175
|
+
ref,
|
|
176
|
+
"data-slot": "record-header",
|
|
177
|
+
className: cn(recordHeaderVariants({ sticky }), className),
|
|
178
|
+
...rest,
|
|
179
|
+
children: [
|
|
180
|
+
breadcrumbs && /* @__PURE__ */ jsx("div", { "data-slot": "record-header-breadcrumbs", children: breadcrumbs }),
|
|
181
|
+
/* @__PURE__ */ jsxs(
|
|
182
|
+
"div",
|
|
183
|
+
{
|
|
184
|
+
"data-slot": "record-header-row",
|
|
185
|
+
className: "flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",
|
|
186
|
+
children: [
|
|
187
|
+
/* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 items-start gap-3 sm:gap-4", children: [
|
|
188
|
+
back,
|
|
189
|
+
leading,
|
|
190
|
+
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
191
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
|
|
192
|
+
/* @__PURE__ */ jsx(
|
|
193
|
+
Heading,
|
|
194
|
+
{
|
|
195
|
+
"data-slot": "record-header-title",
|
|
196
|
+
className: "text-foreground min-w-0 text-xl font-semibold break-words",
|
|
197
|
+
children: title
|
|
198
|
+
}
|
|
199
|
+
),
|
|
200
|
+
badges?.map((b) => /* @__PURE__ */ jsx(Badge, { size: "sm", variant: b.variant, children: b.label }, b.id))
|
|
201
|
+
] }),
|
|
202
|
+
subtitle && /* @__PURE__ */ jsx(
|
|
203
|
+
"p",
|
|
204
|
+
{
|
|
205
|
+
"data-slot": "record-header-subtitle",
|
|
206
|
+
className: "text-muted-foreground mt-0.5 text-sm",
|
|
207
|
+
children: subtitle
|
|
208
|
+
}
|
|
209
|
+
),
|
|
210
|
+
meta && meta.length > 0 && /* @__PURE__ */ jsx(
|
|
211
|
+
"ul",
|
|
212
|
+
{
|
|
213
|
+
"data-slot": "record-header-meta",
|
|
214
|
+
"aria-label": labels.meta,
|
|
215
|
+
className: "text-muted-foreground mt-1.5 flex flex-wrap items-center gap-x-4 gap-y-1 text-sm",
|
|
216
|
+
children: meta.map(({ id, label, icon: MetaIcon, href }) => {
|
|
217
|
+
const content = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
218
|
+
MetaIcon && /* @__PURE__ */ jsx(
|
|
219
|
+
MetaIcon,
|
|
220
|
+
{
|
|
221
|
+
className: "h-4 w-4 shrink-0",
|
|
222
|
+
"aria-hidden": "true"
|
|
223
|
+
}
|
|
224
|
+
),
|
|
225
|
+
label
|
|
226
|
+
] });
|
|
227
|
+
return /* @__PURE__ */ jsx("li", { className: "inline-flex items-center gap-1.5", children: href ? /* @__PURE__ */ jsx(
|
|
228
|
+
"a",
|
|
229
|
+
{
|
|
230
|
+
href,
|
|
231
|
+
className: "hover:text-foreground focus-visible:ring-ring inline-flex items-center gap-1.5 rounded-sm underline-offset-2 hover:underline focus-visible:ring-2 focus-visible:outline-none",
|
|
232
|
+
children: content
|
|
233
|
+
}
|
|
234
|
+
) : content }, id);
|
|
235
|
+
})
|
|
236
|
+
}
|
|
237
|
+
)
|
|
238
|
+
] })
|
|
239
|
+
] }),
|
|
240
|
+
(presence || actions.length > 0) && /* @__PURE__ */ jsxs(
|
|
241
|
+
"div",
|
|
242
|
+
{
|
|
243
|
+
"data-slot": "record-header-actions",
|
|
244
|
+
className: "flex shrink-0 items-center gap-2 sm:justify-end",
|
|
245
|
+
children: [
|
|
246
|
+
presence,
|
|
247
|
+
actions.slice(0, maxVisibleActions).map(renderButton),
|
|
248
|
+
actions.length > 0 && /* @__PURE__ */ jsx(
|
|
249
|
+
Dropdown,
|
|
250
|
+
{
|
|
251
|
+
open: menuOpen,
|
|
252
|
+
onOpenChange: setMenuOpen,
|
|
253
|
+
placement: "bottom-end",
|
|
254
|
+
trigger: /* @__PURE__ */ jsx(
|
|
255
|
+
Button,
|
|
256
|
+
{
|
|
257
|
+
variant: "outline",
|
|
258
|
+
size: "sm",
|
|
259
|
+
"aria-label": labels.moreActions,
|
|
260
|
+
className: cn(!hasOverflow && "sm:hidden"),
|
|
261
|
+
children: /* @__PURE__ */ jsx(MoreHorizontal, { className: "h-4 w-4", "aria-hidden": "true" })
|
|
262
|
+
}
|
|
263
|
+
),
|
|
264
|
+
children: actions.map(renderMenuItem)
|
|
265
|
+
}
|
|
266
|
+
)
|
|
267
|
+
]
|
|
268
|
+
}
|
|
269
|
+
)
|
|
270
|
+
]
|
|
271
|
+
}
|
|
272
|
+
),
|
|
273
|
+
children
|
|
274
|
+
]
|
|
275
|
+
}
|
|
276
|
+
);
|
|
277
|
+
}
|
|
278
|
+
);
|
|
279
|
+
RecordHeader.displayName = "RecordHeader";
|
|
280
|
+
|
|
281
|
+
export { RecordHeader, defaultRecordHeaderLabels };
|
|
282
|
+
//# sourceMappingURL=chunk-WFL4N5PC.js.map
|
|
283
|
+
//# sourceMappingURL=chunk-WFL4N5PC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/RecordHeader/RecordHeader.tsx"],"names":[],"mappings":"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","file":"chunk-WFL4N5PC.js","sourcesContent":["import * as React from 'react';\nimport { cva } from 'class-variance-authority';\nimport { ArrowLeft, MoreHorizontal, type LucideIcon } from 'lucide-react';\nimport { cn } from '../../utils/cn';\nimport { Avatar } from '../Avatar/Avatar';\nimport { Badge, type BadgeProps } from '../Badge/Badge';\nimport { Button, type ButtonProps } from '../Button/Button';\nimport { buttonVariants } from '../Button/button-variants';\nimport { Dropdown, DropdownItem } from '../Dropdown/Dropdown';\n\nexport interface RecordHeaderBadge {\n id: string;\n label: string;\n variant?: BadgeProps['variant'];\n}\n\nexport interface RecordHeaderMetaItem {\n id: string;\n label: string;\n icon?: LucideIcon;\n href?: string;\n}\n\nexport interface RecordHeaderAction {\n id: string;\n label: string;\n icon?: LucideIcon;\n /** With `href`, call `event.preventDefault()` to route client-side. */\n onClick?: (event: React.MouseEvent<HTMLElement>) => void;\n href?: string;\n /** Defaults to `primary` for the first action and `outline` for the rest. */\n variant?: ButtonProps['variant'];\n disabled?: boolean;\n}\n\nexport interface RecordHeaderLabels {\n back: string;\n moreActions: string;\n meta: string;\n}\n\nexport const defaultRecordHeaderLabels: RecordHeaderLabels = {\n back: 'Back',\n moreActions: 'More actions',\n meta: 'Details',\n};\n\nconst recordHeaderVariants = cva(\n 'border-border bg-background flex flex-col gap-3 border-b px-4 py-4 sm:px-6',\n {\n variants: {\n sticky: {\n true: 'sticky top-0 z-20',\n false: '',\n },\n },\n defaultVariants: { sticky: false },\n }\n);\n\nexport interface RecordHeaderProps extends Omit<\n React.HTMLAttributes<HTMLElement>,\n 'title'\n> {\n title: React.ReactNode;\n headingLevel?: 'h1' | 'h2' | 'h3';\n subtitle?: React.ReactNode;\n avatar?: { src?: string | null; name: string };\n icon?: LucideIcon;\n /** Replaces avatar/icon, e.g. a company logo. */\n media?: React.ReactNode;\n badges?: RecordHeaderBadge[];\n meta?: RecordHeaderMetaItem[];\n actions?: RecordHeaderAction[];\n /** Actions shown as buttons from `sm` up; the rest go to the overflow menu. */\n maxVisibleActions?: number;\n presence?: React.ReactNode;\n breadcrumbs?: React.ReactNode;\n onBack?: (event: React.MouseEvent<HTMLElement>) => void;\n backHref?: string;\n sticky?: boolean;\n labels?: Partial<RecordHeaderLabels>;\n}\n\nconst menuLinkClass =\n 'text-foreground hover:bg-muted focus-visible:bg-muted flex w-full items-center gap-3 rounded-lg px-3 py-2 text-start text-sm font-medium focus:outline-none';\n\nexport const RecordHeader = React.forwardRef<HTMLElement, RecordHeaderProps>(\n (\n {\n title,\n headingLevel: Heading = 'h1',\n subtitle,\n avatar,\n icon: Icon,\n media,\n badges,\n meta,\n actions = [],\n maxVisibleActions = 2,\n presence,\n breadcrumbs,\n onBack,\n backHref,\n sticky,\n labels: labelsProp,\n className,\n children,\n ...rest\n },\n ref\n ) => {\n const labels = { ...defaultRecordHeaderLabels, ...labelsProp };\n const [menuOpen, setMenuOpen] = React.useState(false);\n const hasOverflow = actions.length > maxVisibleActions;\n const variantOf = (a: RecordHeaderAction, i: number) =>\n a.variant ?? (i === 0 ? 'primary' : 'outline');\n\n const leading = media ? (\n <div data-slot=\"record-header-media\" className=\"shrink-0\">\n {media}\n </div>\n ) : avatar ? (\n <Avatar\n data-slot=\"record-header-media\"\n size=\"lg\"\n src={avatar.src}\n name={avatar.name}\n // The title already names the record; don't announce it twice.\n alt=\"\"\n className=\"shrink-0\"\n />\n ) : Icon ? (\n <div\n data-slot=\"record-header-media\"\n className=\"bg-muted text-muted-foreground flex h-12 w-12 shrink-0 items-center justify-center rounded-lg\"\n >\n <Icon className=\"h-6 w-6\" aria-hidden=\"true\" />\n </div>\n ) : null;\n\n const backClass = cn(\n buttonVariants({ variant: 'ghost', size: 'icon' }),\n 'shrink-0 rtl:[&_svg]:-scale-x-100'\n );\n const back = backHref ? (\n <a\n href={backHref}\n onClick={onBack}\n aria-label={labels.back}\n className={backClass}\n >\n <ArrowLeft className=\"h-5 w-5\" aria-hidden=\"true\" />\n </a>\n ) : onBack ? (\n <button\n type=\"button\"\n onClick={onBack}\n aria-label={labels.back}\n className={backClass}\n >\n <ArrowLeft className=\"h-5 w-5\" aria-hidden=\"true\" />\n </button>\n ) : null;\n\n const renderButton = (a: RecordHeaderAction, i: number) => {\n const ActionIcon = a.icon;\n const iconEl = ActionIcon ? (\n <ActionIcon className=\"h-4 w-4\" aria-hidden=\"true\" />\n ) : undefined;\n const hiddenOnMobile = 'hidden sm:inline-flex';\n if (a.href && !a.disabled) {\n return (\n <a\n key={a.id}\n href={a.href}\n onClick={a.onClick}\n className={cn(\n buttonVariants({ variant: variantOf(a, i), size: 'sm' }),\n 'gap-2',\n hiddenOnMobile\n )}\n >\n {iconEl}\n {a.label}\n </a>\n );\n }\n return (\n <Button\n key={a.id}\n size=\"sm\"\n variant={variantOf(a, i)}\n leftIcon={iconEl}\n onClick={a.onClick}\n disabled={a.disabled}\n className={hiddenOnMobile}\n >\n {a.label}\n </Button>\n );\n };\n\n const renderMenuItem = (a: RecordHeaderAction, i: number) => {\n const ActionIcon = a.icon;\n const iconEl = ActionIcon ? (\n <ActionIcon className=\"h-4 w-4\" aria-hidden=\"true\" />\n ) : undefined;\n // Items that are also buttons only appear in the menu below `sm`.\n const mobileOnly = i < maxVisibleActions && 'sm:hidden';\n const select = (event: React.MouseEvent<HTMLElement>) => {\n setMenuOpen(false);\n a.onClick?.(event);\n };\n if (a.href && !a.disabled) {\n return (\n <a\n key={a.id}\n role=\"menuitem\"\n data-slot=\"dropdown-item\"\n href={a.href}\n onClick={select}\n className={cn(menuLinkClass, mobileOnly)}\n >\n {iconEl && <span className=\"h-4 w-4 shrink-0\">{iconEl}</span>}\n {a.label}\n </a>\n );\n }\n return (\n <DropdownItem\n key={a.id}\n icon={iconEl}\n variant={variantOf(a, i) === 'danger' ? 'danger' : 'default'}\n disabled={a.disabled}\n onClick={select}\n className={cn(mobileOnly)}\n >\n {a.label}\n </DropdownItem>\n );\n };\n\n return (\n <header\n ref={ref}\n data-slot=\"record-header\"\n className={cn(recordHeaderVariants({ sticky }), className)}\n {...rest}\n >\n {breadcrumbs && (\n <div data-slot=\"record-header-breadcrumbs\">{breadcrumbs}</div>\n )}\n <div\n data-slot=\"record-header-row\"\n className=\"flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between\"\n >\n <div className=\"flex min-w-0 flex-1 items-start gap-3 sm:gap-4\">\n {back}\n {leading}\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex flex-wrap items-center gap-2\">\n <Heading\n data-slot=\"record-header-title\"\n className=\"text-foreground min-w-0 text-xl font-semibold break-words\"\n >\n {title}\n </Heading>\n {badges?.map((b) => (\n <Badge key={b.id} size=\"sm\" variant={b.variant}>\n {b.label}\n </Badge>\n ))}\n </div>\n {subtitle && (\n <p\n data-slot=\"record-header-subtitle\"\n className=\"text-muted-foreground mt-0.5 text-sm\"\n >\n {subtitle}\n </p>\n )}\n {meta && meta.length > 0 && (\n <ul\n data-slot=\"record-header-meta\"\n aria-label={labels.meta}\n className=\"text-muted-foreground mt-1.5 flex flex-wrap items-center gap-x-4 gap-y-1 text-sm\"\n >\n {meta.map(({ id, label, icon: MetaIcon, href }) => {\n const content = (\n <>\n {MetaIcon && (\n <MetaIcon\n className=\"h-4 w-4 shrink-0\"\n aria-hidden=\"true\"\n />\n )}\n {label}\n </>\n );\n return (\n <li key={id} className=\"inline-flex items-center gap-1.5\">\n {href ? (\n <a\n href={href}\n className=\"hover:text-foreground focus-visible:ring-ring inline-flex items-center gap-1.5 rounded-sm underline-offset-2 hover:underline focus-visible:ring-2 focus-visible:outline-none\"\n >\n {content}\n </a>\n ) : (\n content\n )}\n </li>\n );\n })}\n </ul>\n )}\n </div>\n </div>\n {(presence || actions.length > 0) && (\n <div\n data-slot=\"record-header-actions\"\n className=\"flex shrink-0 items-center gap-2 sm:justify-end\"\n >\n {presence}\n {actions.slice(0, maxVisibleActions).map(renderButton)}\n {actions.length > 0 && (\n <Dropdown\n open={menuOpen}\n onOpenChange={setMenuOpen}\n placement=\"bottom-end\"\n trigger={\n <Button\n variant=\"outline\"\n size=\"sm\"\n aria-label={labels.moreActions}\n className={cn(!hasOverflow && 'sm:hidden')}\n >\n <MoreHorizontal className=\"h-4 w-4\" aria-hidden=\"true\" />\n </Button>\n }\n >\n {actions.map(renderMenuItem)}\n </Dropdown>\n )}\n </div>\n )}\n </div>\n {children}\n </header>\n );\n }\n);\n\nRecordHeader.displayName = 'RecordHeader';\n"]}
|
|
@@ -0,0 +1,295 @@
|
|
|
1
|
+
import { cn } from './chunk-TQONQSJO.js';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { cva } from 'class-variance-authority';
|
|
4
|
+
import { ImagePlus, Loader2, Trash2 } from 'lucide-react';
|
|
5
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
6
|
+
|
|
7
|
+
var defaultLogoUploaderLabels = {
|
|
8
|
+
upload: "Upload logo",
|
|
9
|
+
replace: "Replace logo",
|
|
10
|
+
remove: "Remove logo",
|
|
11
|
+
dropHint: "Drop an image or click to browse",
|
|
12
|
+
uploading: "Uploading\u2026",
|
|
13
|
+
removing: "Removing\u2026",
|
|
14
|
+
invalidType: "That file type is not supported.",
|
|
15
|
+
tooLarge: (maxBytes) => `Files must be ${formatBytes(maxBytes)} or smaller.`,
|
|
16
|
+
uploadFailed: "Upload failed. Try again.",
|
|
17
|
+
removeFailed: "Could not remove the logo. Try again.",
|
|
18
|
+
previewAlt: "Current logo"
|
|
19
|
+
};
|
|
20
|
+
function formatBytes(bytes) {
|
|
21
|
+
if (bytes < 1024) return `${bytes} B`;
|
|
22
|
+
const kb = bytes / 1024;
|
|
23
|
+
if (kb < 1024) return `${Math.round(kb)} KB`;
|
|
24
|
+
return `${Math.round(kb / 1024 * 10) / 10} MB`;
|
|
25
|
+
}
|
|
26
|
+
function safeImageSrc(url) {
|
|
27
|
+
const trimmed = url?.trim();
|
|
28
|
+
if (!trimmed) return null;
|
|
29
|
+
const scheme = /^([a-z][a-z\d+.-]*):/i.exec(trimmed)?.[1].toLowerCase();
|
|
30
|
+
if (!scheme || ["http", "https", "blob"].includes(scheme)) return trimmed;
|
|
31
|
+
return /^data:image\//i.test(trimmed) ? trimmed : null;
|
|
32
|
+
}
|
|
33
|
+
function matchesAccept(file, accept) {
|
|
34
|
+
return accept.split(",").map((token) => token.trim().toLowerCase()).some((token) => {
|
|
35
|
+
if (!token) return false;
|
|
36
|
+
if (token.startsWith(".")) return file.name.toLowerCase().endsWith(token);
|
|
37
|
+
if (token.endsWith("/*")) return file.type.startsWith(token.slice(0, -1));
|
|
38
|
+
return file.type === token;
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
function FilePreview({ file, alt }) {
|
|
42
|
+
const canvasRef = React.useRef(null);
|
|
43
|
+
React.useEffect(() => {
|
|
44
|
+
if (typeof globalThis.createImageBitmap !== "function") return;
|
|
45
|
+
let cancelled = false;
|
|
46
|
+
globalThis.createImageBitmap(file).then((bitmap) => {
|
|
47
|
+
const canvas = canvasRef.current;
|
|
48
|
+
if (!cancelled && canvas) {
|
|
49
|
+
canvas.width = bitmap.width;
|
|
50
|
+
canvas.height = bitmap.height;
|
|
51
|
+
canvas.getContext("2d")?.drawImage(bitmap, 0, 0);
|
|
52
|
+
}
|
|
53
|
+
bitmap.close();
|
|
54
|
+
}).catch(() => {
|
|
55
|
+
});
|
|
56
|
+
return () => {
|
|
57
|
+
cancelled = true;
|
|
58
|
+
};
|
|
59
|
+
}, [file]);
|
|
60
|
+
return /* @__PURE__ */ jsx(
|
|
61
|
+
"canvas",
|
|
62
|
+
{
|
|
63
|
+
ref: canvasRef,
|
|
64
|
+
role: "img",
|
|
65
|
+
"aria-label": alt,
|
|
66
|
+
className: "h-full w-full object-contain"
|
|
67
|
+
}
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
var targetVariants = cva(
|
|
71
|
+
[
|
|
72
|
+
"relative flex cursor-pointer items-center justify-center overflow-hidden border-2 border-dashed bg-muted/40 text-muted-foreground",
|
|
73
|
+
"transition-colors motion-reduce:transition-none hover:border-primary-500 hover:text-foreground",
|
|
74
|
+
"peer-focus-visible:ring-ring peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2",
|
|
75
|
+
"peer-disabled:cursor-not-allowed peer-disabled:opacity-50"
|
|
76
|
+
],
|
|
77
|
+
{
|
|
78
|
+
variants: {
|
|
79
|
+
shape: { square: "rounded-lg", circle: "rounded-full" },
|
|
80
|
+
size: { sm: "h-16 w-16", md: "h-24 w-24", lg: "h-32 w-32" },
|
|
81
|
+
dragging: {
|
|
82
|
+
true: "border-primary-500 bg-primary-500/10",
|
|
83
|
+
false: "border-border"
|
|
84
|
+
},
|
|
85
|
+
filled: { true: "border-solid bg-card", false: "" }
|
|
86
|
+
},
|
|
87
|
+
defaultVariants: {
|
|
88
|
+
shape: "square",
|
|
89
|
+
size: "md",
|
|
90
|
+
dragging: false,
|
|
91
|
+
filled: false
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
);
|
|
95
|
+
var LogoUploader = React.forwardRef(
|
|
96
|
+
function LogoUploader2({
|
|
97
|
+
value,
|
|
98
|
+
onUpload,
|
|
99
|
+
onRemove,
|
|
100
|
+
accept = "image/*",
|
|
101
|
+
maxSizeBytes,
|
|
102
|
+
disabled,
|
|
103
|
+
shape,
|
|
104
|
+
size,
|
|
105
|
+
labels: labelOverrides,
|
|
106
|
+
className,
|
|
107
|
+
...props
|
|
108
|
+
}, ref) {
|
|
109
|
+
const labels = { ...defaultLogoUploaderLabels, ...labelOverrides };
|
|
110
|
+
const [busy, setBusy] = React.useState(
|
|
111
|
+
null
|
|
112
|
+
);
|
|
113
|
+
const [preview, setPreview] = React.useState(null);
|
|
114
|
+
const [localFile, setLocalFile] = React.useState(null);
|
|
115
|
+
const [error, setError] = React.useState(null);
|
|
116
|
+
const [dragging, setDragging] = React.useState(false);
|
|
117
|
+
const inputRef = React.useRef(null);
|
|
118
|
+
const generation = React.useRef(0);
|
|
119
|
+
const id = React.useId();
|
|
120
|
+
const inputId = `${id}-input`;
|
|
121
|
+
const errorId = `${id}-error`;
|
|
122
|
+
React.useEffect(() => {
|
|
123
|
+
generation.current += 1;
|
|
124
|
+
setPreview(null);
|
|
125
|
+
setLocalFile(null);
|
|
126
|
+
}, [value]);
|
|
127
|
+
const shown = localFile ? null : safeImageSrc(preview ?? value);
|
|
128
|
+
const filled = !!localFile || !!shown;
|
|
129
|
+
const inactive = disabled || busy !== null;
|
|
130
|
+
const refocusInput = React.useRef(false);
|
|
131
|
+
React.useEffect(() => {
|
|
132
|
+
if (busy === null && refocusInput.current) {
|
|
133
|
+
refocusInput.current = false;
|
|
134
|
+
inputRef.current?.focus();
|
|
135
|
+
}
|
|
136
|
+
}, [busy]);
|
|
137
|
+
const handleFile = async (file) => {
|
|
138
|
+
if (!file || inactive) return;
|
|
139
|
+
if (!matchesAccept(file, accept)) return setError(labels.invalidType);
|
|
140
|
+
if (maxSizeBytes !== void 0 && file.size > maxSizeBytes) {
|
|
141
|
+
return setError(labels.tooLarge(maxSizeBytes));
|
|
142
|
+
}
|
|
143
|
+
setError(null);
|
|
144
|
+
const request = ++generation.current;
|
|
145
|
+
setPreview(null);
|
|
146
|
+
setLocalFile(file);
|
|
147
|
+
setBusy("uploading");
|
|
148
|
+
try {
|
|
149
|
+
const url = await onUpload(file);
|
|
150
|
+
if (url && request === generation.current) {
|
|
151
|
+
setLocalFile(null);
|
|
152
|
+
setPreview(url);
|
|
153
|
+
}
|
|
154
|
+
} catch {
|
|
155
|
+
if (request === generation.current) {
|
|
156
|
+
setLocalFile(null);
|
|
157
|
+
setError(labels.uploadFailed);
|
|
158
|
+
}
|
|
159
|
+
} finally {
|
|
160
|
+
setBusy(null);
|
|
161
|
+
}
|
|
162
|
+
};
|
|
163
|
+
const handleRemove = async () => {
|
|
164
|
+
if (!onRemove || inactive) return;
|
|
165
|
+
setError(null);
|
|
166
|
+
setBusy("removing");
|
|
167
|
+
try {
|
|
168
|
+
await onRemove();
|
|
169
|
+
setPreview(null);
|
|
170
|
+
setLocalFile(null);
|
|
171
|
+
} catch {
|
|
172
|
+
setError(labels.removeFailed);
|
|
173
|
+
} finally {
|
|
174
|
+
refocusInput.current = true;
|
|
175
|
+
setBusy(null);
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
return /* @__PURE__ */ jsxs(
|
|
179
|
+
"div",
|
|
180
|
+
{
|
|
181
|
+
ref,
|
|
182
|
+
"data-slot": "logo-uploader",
|
|
183
|
+
"aria-busy": busy !== null || void 0,
|
|
184
|
+
className: cn("inline-flex flex-col items-start gap-2", className),
|
|
185
|
+
...props,
|
|
186
|
+
children: [
|
|
187
|
+
/* @__PURE__ */ jsxs("div", { className: "relative", children: [
|
|
188
|
+
/* @__PURE__ */ jsx(
|
|
189
|
+
"input",
|
|
190
|
+
{
|
|
191
|
+
ref: inputRef,
|
|
192
|
+
id: inputId,
|
|
193
|
+
type: "file",
|
|
194
|
+
accept,
|
|
195
|
+
disabled: inactive,
|
|
196
|
+
"aria-label": filled ? labels.replace : labels.upload,
|
|
197
|
+
"aria-describedby": error ? errorId : void 0,
|
|
198
|
+
"aria-invalid": error ? true : void 0,
|
|
199
|
+
onChange: (e) => {
|
|
200
|
+
void handleFile(e.target.files?.[0]);
|
|
201
|
+
e.target.value = "";
|
|
202
|
+
},
|
|
203
|
+
className: "peer sr-only"
|
|
204
|
+
}
|
|
205
|
+
),
|
|
206
|
+
/* @__PURE__ */ jsxs(
|
|
207
|
+
"label",
|
|
208
|
+
{
|
|
209
|
+
htmlFor: inputId,
|
|
210
|
+
"data-slot": "logo-uploader-target",
|
|
211
|
+
onDragOver: (e) => {
|
|
212
|
+
e.preventDefault();
|
|
213
|
+
if (!inactive) setDragging(true);
|
|
214
|
+
},
|
|
215
|
+
onDragLeave: () => setDragging(false),
|
|
216
|
+
onDrop: (e) => {
|
|
217
|
+
e.preventDefault();
|
|
218
|
+
setDragging(false);
|
|
219
|
+
void handleFile(e.dataTransfer.files?.[0]);
|
|
220
|
+
},
|
|
221
|
+
className: targetVariants({
|
|
222
|
+
shape,
|
|
223
|
+
size,
|
|
224
|
+
dragging,
|
|
225
|
+
filled
|
|
226
|
+
}),
|
|
227
|
+
children: [
|
|
228
|
+
localFile ? /* @__PURE__ */ jsx(FilePreview, { file: localFile, alt: labels.previewAlt }) : shown ? /* @__PURE__ */ jsx(
|
|
229
|
+
"img",
|
|
230
|
+
{
|
|
231
|
+
src: shown,
|
|
232
|
+
alt: labels.previewAlt,
|
|
233
|
+
className: "h-full w-full object-contain"
|
|
234
|
+
}
|
|
235
|
+
) : /* @__PURE__ */ jsxs("span", { className: "flex flex-col items-center gap-1 px-2 text-center text-xs", children: [
|
|
236
|
+
/* @__PURE__ */ jsx(ImagePlus, { "aria-hidden": "true", className: "h-5 w-5" }),
|
|
237
|
+
/* @__PURE__ */ jsx("span", { children: labels.dropHint })
|
|
238
|
+
] }),
|
|
239
|
+
busy && /* @__PURE__ */ jsxs(
|
|
240
|
+
"span",
|
|
241
|
+
{
|
|
242
|
+
role: "status",
|
|
243
|
+
className: "bg-background/70 absolute inset-0 flex items-center justify-center",
|
|
244
|
+
children: [
|
|
245
|
+
/* @__PURE__ */ jsx(
|
|
246
|
+
Loader2,
|
|
247
|
+
{
|
|
248
|
+
"aria-hidden": "true",
|
|
249
|
+
className: "text-foreground h-5 w-5 animate-spin motion-reduce:animate-none"
|
|
250
|
+
}
|
|
251
|
+
),
|
|
252
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: busy === "uploading" ? labels.uploading : labels.removing })
|
|
253
|
+
]
|
|
254
|
+
}
|
|
255
|
+
)
|
|
256
|
+
]
|
|
257
|
+
}
|
|
258
|
+
),
|
|
259
|
+
filled && onRemove && /* @__PURE__ */ jsx(
|
|
260
|
+
"button",
|
|
261
|
+
{
|
|
262
|
+
type: "button",
|
|
263
|
+
"aria-label": labels.remove,
|
|
264
|
+
title: labels.remove,
|
|
265
|
+
disabled: inactive,
|
|
266
|
+
onClick: () => void handleRemove(),
|
|
267
|
+
className: cn(
|
|
268
|
+
"border-border bg-card text-muted-foreground absolute -end-2 -top-2 rounded-full border p-1 shadow-sm",
|
|
269
|
+
"hover:text-destructive focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none",
|
|
270
|
+
"disabled:cursor-not-allowed disabled:opacity-50"
|
|
271
|
+
),
|
|
272
|
+
children: /* @__PURE__ */ jsx(Trash2, { "aria-hidden": "true", className: "h-3.5 w-3.5" })
|
|
273
|
+
}
|
|
274
|
+
)
|
|
275
|
+
] }),
|
|
276
|
+
error && /* @__PURE__ */ jsx(
|
|
277
|
+
"p",
|
|
278
|
+
{
|
|
279
|
+
id: errorId,
|
|
280
|
+
role: "alert",
|
|
281
|
+
"data-slot": "logo-uploader-error",
|
|
282
|
+
className: "text-destructive-700 dark:text-destructive-400 text-sm",
|
|
283
|
+
children: error
|
|
284
|
+
}
|
|
285
|
+
)
|
|
286
|
+
]
|
|
287
|
+
}
|
|
288
|
+
);
|
|
289
|
+
}
|
|
290
|
+
);
|
|
291
|
+
LogoUploader.displayName = "LogoUploader";
|
|
292
|
+
|
|
293
|
+
export { LogoUploader, defaultLogoUploaderLabels };
|
|
294
|
+
//# sourceMappingURL=chunk-WQHBMZSC.js.map
|
|
295
|
+
//# sourceMappingURL=chunk-WQHBMZSC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/LogoUploader/LogoUploader.tsx"],"names":["LogoUploader"],"mappings":"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","file":"chunk-WQHBMZSC.js","sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { ImagePlus, Loader2, Trash2 } from 'lucide-react';\nimport { cn } from '../../utils/cn';\n\nexport interface LogoUploaderLabels {\n /** Accessible name of the file input. */\n upload: string;\n replace: string;\n remove: string;\n /** Text inside the empty drop target. */\n dropHint: string;\n uploading: string;\n removing: string;\n invalidType: string;\n tooLarge: (maxBytes: number) => string;\n uploadFailed: string;\n removeFailed: string;\n /** Alt text of the preview image. */\n previewAlt: string;\n}\n\nexport const defaultLogoUploaderLabels: LogoUploaderLabels = {\n upload: 'Upload logo',\n replace: 'Replace logo',\n remove: 'Remove logo',\n dropHint: 'Drop an image or click to browse',\n uploading: 'Uploading…',\n removing: 'Removing…',\n invalidType: 'That file type is not supported.',\n tooLarge: (maxBytes) => `Files must be ${formatBytes(maxBytes)} or smaller.`,\n uploadFailed: 'Upload failed. Try again.',\n removeFailed: 'Could not remove the logo. Try again.',\n previewAlt: 'Current logo',\n};\n\nfunction formatBytes(bytes: number): string {\n if (bytes < 1024) return `${bytes} B`;\n const kb = bytes / 1024;\n if (kb < 1024) return `${Math.round(kb)} KB`;\n return `${Math.round((kb / 1024) * 10) / 10} MB`;\n}\n\n/** Relative URLs, http(s), blob: and data:image/ only — nothing else reaches `<img src>`. */\nfunction safeImageSrc(url: string | null | undefined): string | null {\n const trimmed = url?.trim();\n if (!trimmed) return null;\n const scheme = /^([a-z][a-z\\d+.-]*):/i.exec(trimmed)?.[1].toLowerCase();\n if (!scheme || ['http', 'https', 'blob'].includes(scheme)) return trimmed;\n return /^data:image\\//i.test(trimmed) ? trimmed : null;\n}\n\n/** True when `file` matches an `accept` attribute value. */\nfunction matchesAccept(file: File, accept: string): boolean {\n return accept\n .split(',')\n .map((token) => token.trim().toLowerCase())\n .some((token) => {\n if (!token) return false;\n if (token.startsWith('.')) return file.name.toLowerCase().endsWith(token);\n if (token.endsWith('/*')) return file.type.startsWith(token.slice(0, -1));\n return file.type === token;\n });\n}\n\n/**\n * Local preview of a picked file. Drawn to a canvas so the file never becomes\n * an `<img src>` string (no object URL to sanitize or revoke).\n */\nfunction FilePreview({ file, alt }: { file: File; alt: string }) {\n const canvasRef = React.useRef<HTMLCanvasElement>(null);\n React.useEffect(() => {\n // Without the API (older engines, jsdom) the target keeps its spinner,\n // same as an undecodable image.\n if (typeof globalThis.createImageBitmap !== 'function') return;\n let cancelled = false;\n globalThis\n .createImageBitmap(file)\n .then((bitmap) => {\n const canvas = canvasRef.current;\n if (!cancelled && canvas) {\n canvas.width = bitmap.width;\n canvas.height = bitmap.height;\n canvas.getContext('2d')?.drawImage(bitmap, 0, 0);\n }\n bitmap.close();\n })\n .catch(() => {\n // Undecodable image: the target keeps its border and spinner.\n });\n return () => {\n cancelled = true;\n };\n }, [file]);\n return (\n <canvas\n ref={canvasRef}\n role=\"img\"\n aria-label={alt}\n className=\"h-full w-full object-contain\"\n />\n );\n}\n\nconst targetVariants = cva(\n [\n 'relative flex cursor-pointer items-center justify-center overflow-hidden border-2 border-dashed bg-muted/40 text-muted-foreground',\n 'transition-colors motion-reduce:transition-none hover:border-primary-500 hover:text-foreground',\n 'peer-focus-visible:ring-ring peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2',\n 'peer-disabled:cursor-not-allowed peer-disabled:opacity-50',\n ],\n {\n variants: {\n shape: { square: 'rounded-lg', circle: 'rounded-full' },\n size: { sm: 'h-16 w-16', md: 'h-24 w-24', lg: 'h-32 w-32' },\n dragging: {\n true: 'border-primary-500 bg-primary-500/10',\n false: 'border-border',\n },\n filled: { true: 'border-solid bg-card', false: '' },\n },\n defaultVariants: {\n shape: 'square',\n size: 'md',\n dragging: false,\n filled: false,\n },\n }\n);\n\nexport interface LogoUploaderProps\n extends\n Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'>,\n Pick<VariantProps<typeof targetVariants>, 'shape' | 'size'> {\n /** URL of the current logo. */\n value?: string | null;\n /** Upload the file. Resolve with the new URL to preview it until `value` updates. */\n onUpload: (file: File) => Promise<string | void>;\n /** Remove the logo. Omit to hide the remove button. */\n onRemove?: () => void | Promise<void>;\n /** `accept` attribute for the file input. */\n accept?: string;\n /** Reject files larger than this. */\n maxSizeBytes?: number;\n disabled?: boolean;\n /** Translatable strings. */\n labels?: Partial<LogoUploaderLabels>;\n}\n\n/**\n * Square or circular logo drop target with click-to-browse, preview and\n * remove.\n */\nexport const LogoUploader = React.forwardRef<HTMLDivElement, LogoUploaderProps>(\n function LogoUploader(\n {\n value,\n onUpload,\n onRemove,\n accept = 'image/*',\n maxSizeBytes,\n disabled,\n shape,\n size,\n labels: labelOverrides,\n className,\n ...props\n },\n ref\n ) {\n const labels = { ...defaultLogoUploaderLabels, ...labelOverrides };\n const [busy, setBusy] = React.useState<'uploading' | 'removing' | null>(\n null\n );\n const [preview, setPreview] = React.useState<string | null>(null);\n const [localFile, setLocalFile] = React.useState<File | null>(null);\n const [error, setError] = React.useState<string | null>(null);\n const [dragging, setDragging] = React.useState(false);\n const inputRef = React.useRef<HTMLInputElement>(null);\n // Bumped by each upload and each new `value`; stale uploads check it.\n const generation = React.useRef(0);\n const id = React.useId();\n const inputId = `${id}-input`;\n const errorId = `${id}-error`;\n\n // A fresh `value` from the caller supersedes any local preview.\n React.useEffect(() => {\n generation.current += 1;\n setPreview(null);\n setLocalFile(null);\n }, [value]);\n\n const shown = localFile ? null : safeImageSrc(preview ?? value);\n const filled = !!localFile || !!shown;\n const inactive = disabled || busy !== null;\n\n // The input is disabled while busy, so focus it once it re-enables.\n const refocusInput = React.useRef(false);\n React.useEffect(() => {\n if (busy === null && refocusInput.current) {\n refocusInput.current = false;\n inputRef.current?.focus();\n }\n }, [busy]);\n\n const handleFile = async (file: File | undefined) => {\n if (!file || inactive) return;\n if (!matchesAccept(file, accept)) return setError(labels.invalidType);\n if (maxSizeBytes !== undefined && file.size > maxSizeBytes) {\n return setError(labels.tooLarge(maxSizeBytes));\n }\n setError(null);\n const request = ++generation.current;\n setPreview(null);\n setLocalFile(file);\n setBusy('uploading');\n try {\n const url = await onUpload(file);\n if (url && request === generation.current) {\n setLocalFile(null);\n setPreview(url);\n }\n } catch {\n if (request === generation.current) {\n setLocalFile(null);\n setError(labels.uploadFailed);\n }\n } finally {\n setBusy(null);\n }\n };\n\n const handleRemove = async () => {\n if (!onRemove || inactive) return;\n setError(null);\n setBusy('removing');\n try {\n await onRemove();\n setPreview(null);\n setLocalFile(null);\n } catch {\n setError(labels.removeFailed);\n } finally {\n refocusInput.current = true;\n setBusy(null);\n }\n };\n\n return (\n <div\n ref={ref}\n data-slot=\"logo-uploader\"\n aria-busy={busy !== null || undefined}\n className={cn('inline-flex flex-col items-start gap-2', className)}\n {...props}\n >\n <div className=\"relative\">\n <input\n ref={inputRef}\n id={inputId}\n type=\"file\"\n accept={accept}\n disabled={inactive}\n aria-label={filled ? labels.replace : labels.upload}\n aria-describedby={error ? errorId : undefined}\n aria-invalid={error ? true : undefined}\n onChange={(e) => {\n void handleFile(e.target.files?.[0]);\n e.target.value = '';\n }}\n className=\"peer sr-only\"\n />\n <label\n htmlFor={inputId}\n data-slot=\"logo-uploader-target\"\n onDragOver={(e) => {\n e.preventDefault();\n if (!inactive) setDragging(true);\n }}\n onDragLeave={() => setDragging(false)}\n onDrop={(e) => {\n e.preventDefault();\n setDragging(false);\n void handleFile(e.dataTransfer.files?.[0]);\n }}\n className={targetVariants({\n shape,\n size,\n dragging,\n filled,\n })}\n >\n {localFile ? (\n <FilePreview file={localFile} alt={labels.previewAlt} />\n ) : shown ? (\n <img\n src={shown}\n alt={labels.previewAlt}\n className=\"h-full w-full object-contain\"\n />\n ) : (\n <span className=\"flex flex-col items-center gap-1 px-2 text-center text-xs\">\n <ImagePlus aria-hidden=\"true\" className=\"h-5 w-5\" />\n <span>{labels.dropHint}</span>\n </span>\n )}\n {busy && (\n <span\n role=\"status\"\n className=\"bg-background/70 absolute inset-0 flex items-center justify-center\"\n >\n <Loader2\n aria-hidden=\"true\"\n className=\"text-foreground h-5 w-5 animate-spin motion-reduce:animate-none\"\n />\n <span className=\"sr-only\">\n {busy === 'uploading' ? labels.uploading : labels.removing}\n </span>\n </span>\n )}\n </label>\n {filled && onRemove && (\n <button\n type=\"button\"\n aria-label={labels.remove}\n title={labels.remove}\n disabled={inactive}\n onClick={() => void handleRemove()}\n className={cn(\n 'border-border bg-card text-muted-foreground absolute -end-2 -top-2 rounded-full border p-1 shadow-sm',\n 'hover:text-destructive focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none',\n 'disabled:cursor-not-allowed disabled:opacity-50'\n )}\n >\n <Trash2 aria-hidden=\"true\" className=\"h-3.5 w-3.5\" />\n </button>\n )}\n </div>\n {error && (\n <p\n id={errorId}\n role=\"alert\"\n data-slot=\"logo-uploader-error\"\n className=\"text-destructive-700 dark:text-destructive-400 text-sm\"\n >\n {error}\n </p>\n )}\n </div>\n );\n }\n);\n\nLogoUploader.displayName = 'LogoUploader';\n"]}
|