@mieweb/ui 0.10.0-dev.4 → 0.10.0-dev.41
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 +2215 -1321
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +10386 -628
- package/dist/index.d.ts +10386 -628
- package/dist/index.js +805 -360
- 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 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/OrgChart/layout.ts","../src/components/OrgChart/shared.ts","../src/components/OrgChart/OrgChartCanvas.tsx","../src/components/OrgChart/tree.ts","../src/components/OrgChart/OrgChartTree.tsx","../src/components/OrgChart/OrgChart.tsx"],"names":["React","React2","jsx","ChevronDown","ChevronRight","jsxs","OrgChart","Fragment","MapIcon"],"mappings":"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","file":"org-chart.js","sourcesContent":["import type { ELK, ElkNode } from 'elkjs/lib/elk-api';\n\nexport type OrgChartDirection = 'DOWN' | 'RIGHT';\n\nexport interface LayoutBox {\n x: number;\n y: number;\n}\n\nexport interface LayoutRequest {\n ids: readonly string[];\n edges: readonly { source: string; target: string }[];\n direction: OrgChartDirection;\n width: number;\n height: number;\n}\n\n/**\n * `considerModelOrder` keeps siblings in input order, so expanding one branch\n * never reshuffles its neighbours.\n */\nexport const ORG_CHART_LAYOUT_OPTIONS: Record<string, string> = {\n 'elk.algorithm': 'layered',\n 'elk.layered.considerModelOrder.strategy': 'NODES_AND_EDGES',\n 'elk.layered.nodePlacement.strategy': 'BRANDES_KOEPF',\n 'elk.layered.spacing.nodeNodeBetweenLayers': '64',\n 'elk.spacing.nodeNode': '28',\n 'elk.spacing.componentComponent': '64',\n 'elk.edgeRouting': 'ORTHOGONAL',\n};\n\nlet elkPromise: Promise<ELK> | null = null;\n\nfunction getElk(): Promise<ELK> {\n elkPromise ??= import('elkjs/lib/elk.bundled.js').then(\n (m) => new m.default()\n );\n return elkPromise;\n}\n\n/** Positions for the visible nodes; falls back to a depth grid if elk fails. */\nexport async function layoutOrgChart(\n req: LayoutRequest\n): Promise<Map<string, LayoutBox>> {\n const graph: ElkNode = {\n id: 'org-chart-root',\n layoutOptions: {\n ...ORG_CHART_LAYOUT_OPTIONS,\n 'elk.direction': req.direction,\n },\n children: req.ids.map((id) => ({\n id,\n width: req.width,\n height: req.height,\n })),\n edges: req.edges.map((e) => ({\n id: JSON.stringify([e.source, e.target]),\n sources: [e.source],\n targets: [e.target],\n })),\n };\n try {\n const elk = await getElk();\n const out = await elk.layout(graph);\n return new Map(\n (out.children ?? []).map((c) => [c.id, { x: c.x ?? 0, y: c.y ?? 0 }])\n );\n } catch {\n return gridLayout(req);\n }\n}\n\nfunction gridLayout(req: LayoutRequest): Map<string, LayoutBox> {\n const parent = new Map(req.edges.map((e) => [e.target, e.source]));\n const perDepth = new Map<number, number>();\n const out = new Map<string, LayoutBox>();\n for (const id of req.ids) {\n let depth = 0;\n for (let p = parent.get(id); p != null; p = parent.get(p)) depth++;\n const slot = perDepth.get(depth) ?? 0;\n perDepth.set(depth, slot + 1);\n const along =\n slot * (req.direction === 'DOWN' ? req.width + 28 : req.height + 28);\n const across =\n depth * (req.direction === 'DOWN' ? req.height + 64 : req.width + 64);\n out.set(\n id,\n req.direction === 'DOWN'\n ? { x: along, y: across }\n : { x: across, y: along }\n );\n }\n return out;\n}\n","import type * as React from 'react';\nimport { accentClasses, type Accent } from '../../views/types';\nimport type { OrgChartNode } from './tree';\n\nexport type OrgChartAccent = Accent;\nexport type OrgChartNodeVariant = 'person' | 'location';\nexport type OrgChartView = 'chart' | 'list';\n\nexport type OrgChartSlot =\n | 'root'\n | 'toolbar'\n | 'canvas'\n | 'node'\n | 'tree'\n | 'treeItem'\n | 'detail'\n | 'state';\n\n/** Every string the chart renders. The defaults are English. */\nexport interface OrgChartLabels {\n /** Accessible name of the chart canvas. */\n chart: string;\n /** Accessible name of the list view's tree. */\n tree: string;\n /** Accessible name of the toolbar. */\n toolbar: string;\n search: string;\n searchPlaceholder: string;\n /** Announced politely while a search is active. */\n results: (count: number) => string;\n groupFilter: string;\n allGroups: string;\n expandAll: string;\n collapseAll: string;\n fitView: string;\n minimap: string;\n fullscreen: string;\n viewToggle: string;\n chartView: string;\n listView: string;\n /** Read by assistive tech for each card on the canvas. */\n canvasHint: string;\n expand: (name: string, count: number) => string;\n collapse: (name: string) => string;\n directReports: (count: number) => string;\n orgSize: (count: number) => string;\n reportsTo: (name: string) => string;\n /** Marker on the `highlightedId` node. */\n highlighted: string;\n open: string;\n close: string;\n loading: string;\n empty: string;\n error: string;\n retry: string;\n}\n\nconst plural = (n: number, one: string, many: string) =>\n `${n} ${n === 1 ? one : many}`;\n\nexport const defaultOrgChartLabels: OrgChartLabels = {\n chart: 'Organization chart',\n tree: 'Organization',\n toolbar: 'Organization chart tools',\n search: 'Search',\n searchPlaceholder: 'Search name, title or group',\n results: (n) => (n === 0 ? 'No matches' : plural(n, 'match', 'matches')),\n groupFilter: 'Filter by group',\n allGroups: 'All groups',\n expandAll: 'Expand all',\n collapseAll: 'Collapse all',\n fitView: 'Fit to view',\n minimap: 'Minimap',\n fullscreen: 'Full screen',\n viewToggle: 'View',\n chartView: 'Chart',\n listView: 'List',\n canvasHint:\n 'Use the card buttons to show details or expand reports. Switch to the list view to browse with arrow keys.',\n expand: (name, n) => `Expand ${name}, ${plural(n, 'report', 'reports')}`,\n collapse: (name) => `Collapse ${name}`,\n directReports: (n) => plural(n, 'direct report', 'direct reports'),\n orgSize: (n) => `${n} in organization`,\n reportsTo: (name) => `Reports to ${name}`,\n highlighted: 'Current',\n open: 'Open',\n close: 'Close details',\n loading: 'Loading organization',\n empty: 'No one to show',\n error: 'Could not load the organization',\n retry: 'Try again',\n};\n\n/** Palette groups are coloured from, in order of first sorted appearance. */\nexport const ORG_CHART_GROUP_ACCENTS: readonly Accent[] = [\n 'primary',\n 'info',\n 'success',\n 'warning',\n 'neutral',\n];\n\nexport const accentClassesFor = (accent: Accent | undefined) =>\n accent ? accentClasses[accent] : undefined;\n\n/** What a `renderNode` slot gets alongside the node. */\nexport interface OrgChartNodeContext {\n variant: OrgChartNodeVariant;\n depth: number;\n directReports: number;\n expanded: boolean;\n highlighted: boolean;\n matched: boolean;\n dimmed: boolean;\n accent?: Accent;\n}\n\n/** What a `renderDetail` slot gets alongside the node. */\nexport interface OrgChartDetailContext {\n directReports: number;\n orgSize: number;\n parent: OrgChartNode | null;\n close: () => void;\n}\n\nexport type OrgChartClassNames = Partial<Record<OrgChartSlot, string>>;\n\nexport interface OrgChartRenderSlots {\n renderNode?: (\n node: OrgChartNode,\n ctx: OrgChartNodeContext\n ) => React.ReactNode;\n renderBadges?: (node: OrgChartNode) => React.ReactNode;\n}\n","'use client';\n\nimport * as React from 'react';\nimport {\n Background,\n BackgroundVariant,\n Handle,\n MiniMap,\n Panel,\n Position,\n ReactFlow,\n ReactFlowProvider,\n useReactFlow,\n type Edge,\n type Node,\n type NodeProps,\n} from '@xyflow/react';\nimport { Building2, ChevronDown, ChevronRight } from 'lucide-react';\nimport { cn } from '../../utils/cn';\nimport { Avatar } from '../Avatar';\nimport {\n layoutOrgChart,\n type LayoutBox,\n type OrgChartDirection,\n} from './layout';\nimport {\n accentClassesFor,\n type OrgChartAccent,\n type OrgChartClassNames,\n type OrgChartLabels,\n type OrgChartNodeContext,\n type OrgChartNodeVariant,\n type OrgChartRenderSlots,\n} from './shared';\nimport type { OrgChartNode, OrgForest, VisibleNode } from './tree';\n\nexport const ORG_CHART_NODE_SIZE: Record<\n OrgChartNodeVariant,\n { width: number; height: number }\n> = {\n person: { width: 248, height: 92 },\n location: { width: 248, height: 76 },\n};\n\nexport function prefersReducedMotion(): boolean {\n return (\n typeof window !== 'undefined' &&\n !!window.matchMedia?.('(prefers-reduced-motion: reduce)').matches\n );\n}\n\n// =============================================================================\n// Card body (shared with the detail panel)\n// =============================================================================\n\nexport function GroupPill({\n group,\n accent,\n}: {\n group: string;\n accent?: OrgChartAccent;\n}) {\n const a = accentClassesFor(accent);\n return (\n <span\n className={cn(\n 'text-foreground inline-flex max-w-full items-center gap-1.5 rounded-full px-2 py-0.5 text-[11px] font-medium',\n a?.tint ?? 'bg-muted'\n )}\n >\n <span\n aria-hidden=\"true\"\n className={cn('size-1.5 shrink-0 rounded-full', a?.marker)}\n />\n <span className=\"truncate\">{group}</span>\n </span>\n );\n}\n\nexport function NodeBody({\n node,\n variant,\n accent,\n}: {\n node: OrgChartNode;\n variant: OrgChartNodeVariant;\n accent?: OrgChartAccent;\n}) {\n const secondary = variant === 'person' ? node.title : node.subtitle;\n return (\n <>\n {variant === 'person' ? (\n <Avatar src={node.avatarUrl} name={node.name} alt=\"\" size=\"md\" />\n ) : (\n <span\n aria-hidden=\"true\"\n className=\"bg-primary-500/10 text-primary-700 dark:text-primary-300 flex size-10 shrink-0 items-center justify-center rounded-md\"\n >\n <Building2 className=\"size-5\" />\n </span>\n )}\n <span className=\"flex min-w-0 flex-1 flex-col gap-0.5\">\n <span className=\"text-foreground truncate text-sm font-semibold\">\n {node.name}\n </span>\n {secondary && (\n <span className=\"text-muted-foreground truncate text-xs\">\n {secondary}\n </span>\n )}\n {node.group && (\n <span className=\"mt-0.5 flex\">\n <GroupPill group={node.group} accent={accent} />\n </span>\n )}\n </span>\n </>\n );\n}\n\n// =============================================================================\n// Flow node\n// =============================================================================\n\ninterface OrgFlowData extends Record<string, unknown> {\n node: OrgChartNode;\n ctx: OrgChartNodeContext;\n focused: boolean;\n}\n\ntype OrgFlowNode = Node<OrgFlowData, 'org'>;\n\ninterface CanvasContextValue extends OrgChartRenderSlots {\n labels: OrgChartLabels;\n classNames?: OrgChartClassNames;\n horizontal: boolean;\n rtl: boolean;\n onToggle: (id: string) => void;\n onSelect: (id: string) => void;\n}\n\nconst CanvasContext = React.createContext<CanvasContextValue | null>(null);\n\nconst hiddenHandle: React.CSSProperties = { opacity: 0, pointerEvents: 'none' };\n\nfunction OrgFlowNodeView({ data }: NodeProps<OrgFlowNode>) {\n const c = React.useContext(CanvasContext)!;\n const { node, ctx, focused } = data;\n const accent = accentClassesFor(ctx.accent);\n const start = c.horizontal\n ? c.rtl\n ? Position.Right\n : Position.Left\n : Position.Top;\n const end = c.horizontal\n ? c.rtl\n ? Position.Left\n : Position.Right\n : Position.Bottom;\n const Chevron = ctx.expanded ? ChevronDown : ChevronRight;\n\n return (\n <div\n data-slot=\"org-chart-node\"\n data-highlighted={ctx.highlighted || undefined}\n data-matched={ctx.matched || undefined}\n // React Flow disables pointer events on unselectable, undraggable nodes.\n style={{ pointerEvents: 'auto' }}\n className={cn(\n 'bg-card text-foreground relative h-full w-full rounded-lg border border-s-4 shadow-sm',\n 'motion-safe:transition-[opacity,box-shadow]',\n accent?.border ?? 'border-border',\n (ctx.highlighted || focused) &&\n 'ring-primary-500 ring-offset-background ring-2 ring-offset-2',\n ctx.matched && 'ring-ring ring-2',\n ctx.dimmed && 'opacity-40',\n c.classNames?.node\n )}\n >\n <Handle\n type=\"target\"\n position={start}\n isConnectable={false}\n style={hiddenHandle}\n />\n <button\n type=\"button\"\n aria-haspopup=\"dialog\"\n onClick={() => c.onSelect(node.id)}\n className=\"nodrag nopan focus-visible:ring-ring flex h-full w-full items-center gap-3 rounded-md px-3 text-start focus-visible:ring-2 focus-visible:outline-none\"\n >\n {c.renderNode ? (\n c.renderNode(node, ctx)\n ) : (\n <NodeBody node={node} variant={ctx.variant} accent={ctx.accent} />\n )}\n </button>\n {(ctx.highlighted || c.renderBadges) && (\n <span className=\"absolute end-2 -top-2.5 flex gap-1\">\n {ctx.highlighted && (\n <span className=\"bg-primary-600 rounded-full px-1.5 py-0.5 text-[10px] font-bold text-white uppercase shadow-sm\">\n {c.labels.highlighted}\n </span>\n )}\n {c.renderBadges?.(node)}\n </span>\n )}\n {ctx.directReports > 0 && (\n <button\n type=\"button\"\n aria-expanded={ctx.expanded}\n aria-label={\n ctx.expanded\n ? c.labels.collapse(node.name)\n : c.labels.expand(node.name, ctx.directReports)\n }\n onClick={() => c.onToggle(node.id)}\n className={cn(\n 'nodrag nopan absolute z-10 flex h-6 min-w-6 items-center justify-center gap-0.5 rounded-full border px-1.5 text-[11px] font-semibold shadow-sm',\n 'focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none',\n c.horizontal\n ? '-end-3 top-1/2 -translate-y-1/2'\n : '-bottom-3 left-1/2 -translate-x-1/2',\n ctx.expanded\n ? 'border-primary-600 bg-primary-600 text-white'\n : 'border-border bg-card text-foreground hover:border-primary-500'\n )}\n >\n <Chevron aria-hidden=\"true\" className=\"size-3 rtl:-scale-x-100\" />\n {ctx.directReports}\n </button>\n )}\n <Handle\n type=\"source\"\n position={end}\n isConnectable={false}\n style={hiddenHandle}\n />\n </div>\n );\n}\n\nconst nodeTypes = { org: OrgFlowNodeView };\n\n// Brand tokens through xyflow's own variables, so both themes follow the brand.\nconst flowStyle = {\n '--xy-background-color': 'transparent',\n '--xy-background-pattern-color': 'var(--mieweb-border)',\n '--xy-edge-stroke': 'var(--mieweb-muted-foreground)',\n '--xy-edge-stroke-width': '1.25',\n '--xy-node-background-color': 'transparent',\n '--xy-node-border': 'none',\n '--xy-node-border-radius': '0.5rem',\n '--xy-node-boxshadow-hover': 'none',\n '--xy-node-boxshadow-selected': 'none',\n '--xy-node-color': 'inherit',\n '--xy-minimap-background-color': 'var(--mieweb-card)',\n '--xy-minimap-mask-background-color':\n 'color-mix(in srgb, var(--mieweb-muted) 70%, transparent)',\n '--xy-minimap-node-background-color': 'var(--mieweb-muted-foreground)',\n '--xy-attribution-background-color': 'transparent',\n} as React.CSSProperties;\n\n// =============================================================================\n// Canvas\n// =============================================================================\n\nexport interface OrgChartCanvasProps extends OrgChartRenderSlots {\n forest: OrgForest;\n visible: VisibleNode[];\n nodeContext: (v: VisibleNode) => OrgChartNodeContext;\n focusId?: string | null;\n direction: OrgChartDirection;\n variant: OrgChartNodeVariant;\n showMinimap: boolean;\n /** Ids to frame; `null` frames everything. */\n fitTargets: readonly string[] | null;\n /** Bump to re-run fit-to-view. */\n fitRequest: number;\n labels: OrgChartLabels;\n classNames?: OrgChartClassNames;\n onToggle: (id: string) => void;\n onSelect: (id: string) => void;\n children?: React.ReactNode;\n}\n\nexport function OrgChartCanvas(props: OrgChartCanvasProps) {\n return (\n <ReactFlowProvider>\n <CanvasInner {...props} />\n </ReactFlowProvider>\n );\n}\n\nfunction CanvasInner({\n forest,\n visible,\n nodeContext,\n focusId,\n direction,\n variant,\n showMinimap,\n fitTargets,\n fitRequest,\n labels,\n classNames,\n renderNode,\n renderBadges,\n onToggle,\n onSelect,\n children,\n}: OrgChartCanvasProps) {\n const { fitView } = useReactFlow();\n const wrapRef = React.useRef<HTMLDivElement>(null);\n const [rtl, setRtl] = React.useState(false);\n const [positions, setPositions] = React.useState<Map<\n string,\n LayoutBox\n > | null>(null);\n const size = ORG_CHART_NODE_SIZE[variant];\n const horizontal = direction === 'RIGHT';\n\n React.useLayoutEffect(() => {\n const el = wrapRef.current;\n if (el) setRtl(getComputedStyle(el).direction === 'rtl');\n }, []);\n\n const edgeList = React.useMemo(() => {\n const out: { source: string; target: string }[] = [];\n for (const v of visible) {\n const p = forest.parentOf.get(v.node.id);\n if (p != null) out.push({ source: p, target: v.node.id });\n }\n return out;\n }, [visible, forest]);\n\n const layoutKey = JSON.stringify([\n direction,\n variant,\n visible.map((v) => v.node.id),\n edgeList.map((e) => [e.source, e.target]),\n ]);\n React.useEffect(() => {\n let cancelled = false;\n void layoutOrgChart({\n ids: visible.map((v) => v.node.id),\n edges: edgeList,\n direction,\n ...size,\n }).then((p) => {\n if (!cancelled) setPositions(p);\n });\n return () => {\n cancelled = true;\n };\n // layoutKey captures every input that changes positions.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [layoutKey]);\n\n const flowNodes = React.useMemo<OrgFlowNode[]>(() => {\n if (!positions) return [];\n const out: OrgFlowNode[] = [];\n for (const v of visible) {\n const pos = positions.get(v.node.id);\n if (!pos) continue;\n out.push({\n id: v.node.id,\n type: 'org',\n position: { x: rtl ? -pos.x - size.width : pos.x, y: pos.y },\n width: size.width,\n height: size.height,\n draggable: false,\n selectable: false,\n connectable: false,\n data: {\n node: v.node,\n ctx: nodeContext(v),\n focused: v.node.id === focusId,\n },\n });\n }\n return out;\n }, [positions, visible, nodeContext, focusId, rtl, size.width, size.height]);\n\n const flowEdges = React.useMemo<Edge[]>(\n () =>\n positions\n ? edgeList\n .filter((e) => positions.has(e.source) && positions.has(e.target))\n .map((e) => ({\n id: JSON.stringify([e.source, e.target]),\n source: e.source,\n target: e.target,\n type: 'smoothstep',\n focusable: false,\n }))\n : [],\n [edgeList, positions]\n );\n\n // Fit once the layout contains every target; layout is async, so the\n // request waits for positions rather than firing against stale ones.\n const fitKey = JSON.stringify(fitTargets);\n const pendingFit = React.useRef(true);\n React.useEffect(() => {\n pendingFit.current = true;\n }, [fitKey, fitRequest]);\n React.useEffect(() => {\n if (!pendingFit.current || !positions || positions.size === 0) return;\n const targets = fitTargets?.filter((id) => positions.has(id));\n if (fitTargets && fitTargets.length && !targets?.length) return;\n const raf = requestAnimationFrame(() => {\n pendingFit.current = false;\n void fitView({\n nodes: targets?.length ? targets.map((id) => ({ id })) : undefined,\n padding: 0.2,\n maxZoom: 1.1,\n duration: prefersReducedMotion() ? 0 : 300,\n });\n });\n return () => cancelAnimationFrame(raf);\n }, [positions, fitKey, fitRequest, fitTargets, fitView]);\n\n const ctxValue = React.useMemo<CanvasContextValue>(\n () => ({\n labels,\n classNames,\n horizontal,\n rtl,\n renderNode,\n renderBadges,\n onToggle,\n onSelect,\n }),\n [\n labels,\n classNames,\n horizontal,\n rtl,\n renderNode,\n renderBadges,\n onToggle,\n onSelect,\n ]\n );\n\n return (\n <CanvasContext.Provider value={ctxValue}>\n <div\n ref={wrapRef}\n role=\"region\"\n aria-label={labels.chart}\n data-slot=\"org-chart-canvas\"\n className={cn('relative h-[560px] w-full', classNames?.canvas)}\n >\n <ReactFlow\n nodes={flowNodes}\n edges={flowEdges}\n nodeTypes={nodeTypes}\n nodesDraggable={false}\n nodesConnectable={false}\n nodesFocusable={false}\n edgesFocusable={false}\n elementsSelectable={false}\n minZoom={0.1}\n maxZoom={2}\n style={flowStyle}\n // Built-in attribution is #999 (fails contrast); credit is rendered below with tokens.\n proOptions={{ hideAttribution: true }}\n ariaLabelConfig={{\n 'node.a11yDescription.default': labels.canvasHint,\n 'node.a11yDescription.keyboardDisabled': labels.canvasHint,\n 'edge.a11yDescription.default': labels.canvasHint,\n 'minimap.ariaLabel': labels.minimap,\n }}\n >\n <Background variant={BackgroundVariant.Dots} gap={20} size={1} />\n <Panel position={rtl ? 'bottom-right' : 'bottom-left'}>\n <a\n href=\"https://reactflow.dev\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"text-muted-foreground hover:text-foreground focus-visible:ring-ring rounded-sm text-[10px] focus-visible:ring-2 focus-visible:outline-none\"\n >\n React Flow\n </a>\n </Panel>\n {showMinimap && (\n <MiniMap\n pannable\n zoomable\n position={rtl ? 'bottom-left' : 'bottom-right'}\n className=\"border-border overflow-hidden rounded-md border\"\n />\n )}\n </ReactFlow>\n {children}\n </div>\n </CanvasContext.Provider>\n );\n}\n","/** One person, team or place in the chart. The caller owns the collection. */\nexport interface OrgChartNode {\n id: string;\n /** Parent id, or `null` for a root. An unknown parent makes the node a root. */\n parentId: string | null;\n name: string;\n /** Job title (person) — matched by search. */\n title?: string;\n /** Secondary line (location: address, type) — matched by search. */\n subtitle?: string;\n /** Department, region or any grouping — drives the filter and the colour. */\n group?: string;\n avatarUrl?: string;\n /** Anything else the caller's render slots need. Never read by the chart. */\n meta?: Record<string, unknown>;\n}\n\nexport interface OrgForest {\n byId: Map<string, OrgChartNode>;\n roots: OrgChartNode[];\n /** Effective children: each node appears under exactly one parent. */\n children: Map<string, OrgChartNode[]>;\n /** Effective parent; `null` for roots. */\n parentOf: Map<string, string | null>;\n depth: Map<string, number>;\n /** Everyone under a node, at any depth. */\n orgSize: Map<string, number>;\n}\n\nexport interface VisibleNode {\n node: OrgChartNode;\n depth: number;\n}\n\nconst EMPTY: OrgChartNode[] = [];\n\n/**\n * Builds a forest that is always a tree: duplicate ids keep the first, unknown\n * parents become roots, and a cycle is broken by promoting its first node.\n */\nexport function buildOrgForest(nodes: readonly OrgChartNode[]): OrgForest {\n const byId = new Map<string, OrgChartNode>();\n for (const n of nodes) if (!byId.has(n.id)) byId.set(n.id, n);\n\n const declared = new Map<string, OrgChartNode[]>();\n const roots: OrgChartNode[] = [];\n for (const n of byId.values()) {\n const p = n.parentId;\n if (p != null && p !== n.id && byId.has(p)) {\n const list = declared.get(p);\n if (list) list.push(n);\n else declared.set(p, [n]);\n } else {\n roots.push(n);\n }\n }\n\n const children = new Map<string, OrgChartNode[]>();\n const parentOf = new Map<string, string | null>();\n const depth = new Map<string, number>();\n const order: string[] = [];\n\n const walk = (root: OrgChartNode) => {\n parentOf.set(root.id, null);\n depth.set(root.id, 0);\n const stack = [root];\n while (stack.length) {\n const u = stack.pop()!;\n order.push(u.id);\n const kids: OrgChartNode[] = [];\n for (const c of declared.get(u.id) ?? EMPTY) {\n if (depth.has(c.id)) continue;\n depth.set(c.id, depth.get(u.id)! + 1);\n parentOf.set(c.id, u.id);\n kids.push(c);\n }\n if (kids.length) children.set(u.id, kids);\n for (let i = kids.length - 1; i >= 0; i--) stack.push(kids[i]);\n }\n };\n\n for (const r of roots) walk(r);\n for (const n of byId.values()) {\n if (depth.has(n.id)) continue;\n roots.push(n);\n walk(n);\n }\n\n const orgSize = new Map<string, number>();\n for (let i = order.length - 1; i >= 0; i--) {\n const id = order[i];\n let size = 0;\n for (const c of children.get(id) ?? EMPTY) size += 1 + orgSize.get(c.id)!;\n orgSize.set(id, size);\n }\n\n return { byId, roots, children, parentOf, depth, orgSize };\n}\n\nexport function childrenOf(forest: OrgForest, id: string): OrgChartNode[] {\n return forest.children.get(id) ?? EMPTY;\n}\n\nexport function ancestorsOf(forest: OrgForest, id: string): string[] {\n const out: string[] = [];\n let p = forest.parentOf.get(id) ?? null;\n while (p != null) {\n out.push(p);\n p = forest.parentOf.get(p) ?? null;\n }\n return out;\n}\n\n/** Expanded ids that show `levels` levels from each root. */\nexport function initialExpanded(\n forest: OrgForest,\n levels: number\n): Set<string> {\n const out = new Set<string>();\n for (const [id, d] of forest.depth) {\n if (d < levels - 1 && forest.children.has(id)) out.add(id);\n }\n return out;\n}\n\nexport function allExpandable(forest: OrgForest): Set<string> {\n return new Set(forest.children.keys());\n}\n\n/** Pre-order list of what is on screen given the expanded set. */\nexport function visibleNodes(\n forest: OrgForest,\n expanded: ReadonlySet<string>\n): VisibleNode[] {\n const out: VisibleNode[] = [];\n const visit = (n: OrgChartNode, depth: number) => {\n out.push({ node: n, depth });\n if (!expanded.has(n.id)) return;\n for (const c of childrenOf(forest, n.id)) visit(c, depth + 1);\n };\n for (const r of forest.roots) visit(r, 0);\n return out;\n}\n\nexport function matchesQuery(node: OrgChartNode, query: string): boolean {\n const q = query.trim().toLocaleLowerCase();\n if (!q) return false;\n return [node.name, node.title, node.subtitle, node.group].some((v) =>\n v?.toLocaleLowerCase().includes(q)\n );\n}\n\nexport function distinctGroups(nodes: readonly OrgChartNode[]): string[] {\n const set = new Set<string>();\n for (const n of nodes) if (n.group) set.add(n.group);\n return [...set].sort((a, b) => a.localeCompare(b));\n}\n","'use client';\n\nimport * as React from 'react';\nimport { ChevronDown, ChevronRight } from 'lucide-react';\nimport { cn } from '../../utils/cn';\nimport { GroupPill } from './OrgChartCanvas';\nimport type {\n OrgChartClassNames,\n OrgChartLabels,\n OrgChartNodeContext,\n OrgChartRenderSlots,\n} from './shared';\nimport { childrenOf, type OrgForest, type VisibleNode } from './tree';\n\nexport interface OrgChartTreeProps extends Pick<\n OrgChartRenderSlots,\n 'renderBadges'\n> {\n forest: OrgForest;\n visible: VisibleNode[];\n nodeContext: (v: VisibleNode) => OrgChartNodeContext;\n selectedId: string | null;\n labels: OrgChartLabels;\n classNames?: OrgChartClassNames;\n onToggle: (id: string) => void;\n onSelect: (id: string) => void;\n}\n\n/**\n * The chart as a WAI-ARIA tree: a flat list of treeitems carrying\n * `aria-level` / `aria-setsize` / `aria-posinset`, with one roving tab stop.\n */\nexport function OrgChartTree({\n forest,\n visible,\n nodeContext,\n selectedId,\n labels,\n classNames,\n renderBadges,\n onToggle,\n onSelect,\n}: OrgChartTreeProps) {\n const listRef = React.useRef<HTMLUListElement>(null);\n const items = React.useRef(new Map<string, HTMLElement>());\n const [activeId, setActiveId] = React.useState<string | null>(selectedId);\n const active =\n activeId && visible.some((v) => v.node.id === activeId)\n ? activeId\n : (visible[0]?.node.id ?? null);\n\n const move = (id: string | undefined) => {\n if (!id) return;\n setActiveId(id);\n items.current.get(id)?.focus();\n };\n\n const onKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n const index = visible.findIndex((v) => v.node.id === active);\n if (index < 0) return;\n const current = visible[index];\n const id = current.node.id;\n const hasKids = childrenOf(forest, id).length > 0;\n const expanded = nodeContext(current).expanded;\n const rtl =\n !!listRef.current &&\n getComputedStyle(listRef.current).direction === 'rtl';\n let key = e.key;\n if (rtl && key === 'ArrowLeft') key = 'ArrowRight';\n else if (rtl && key === 'ArrowRight') key = 'ArrowLeft';\n\n switch (key) {\n case 'ArrowDown':\n move(visible[index + 1]?.node.id);\n break;\n case 'ArrowUp':\n move(visible[index - 1]?.node.id);\n break;\n case 'Home':\n move(visible[0]?.node.id);\n break;\n case 'End':\n move(visible[visible.length - 1]?.node.id);\n break;\n case 'ArrowRight':\n if (hasKids && !expanded) onToggle(id);\n else if (hasKids) move(childrenOf(forest, id)[0]?.id);\n break;\n case 'ArrowLeft':\n if (hasKids && expanded) onToggle(id);\n else move(forest.parentOf.get(id) ?? undefined);\n break;\n case 'Enter':\n case ' ':\n onSelect(id);\n break;\n default:\n return;\n }\n e.preventDefault();\n };\n\n return (\n <ul\n ref={listRef}\n role=\"tree\"\n aria-label={labels.tree}\n data-slot=\"org-chart-tree\"\n className={cn('max-h-[560px] overflow-auto p-2', classNames?.tree)}\n >\n {visible.map((v) => {\n const { node } = v;\n const ctx = nodeContext(v);\n const parent = forest.parentOf.get(node.id);\n const siblings =\n parent != null ? childrenOf(forest, parent) : forest.roots;\n const Chevron = ctx.expanded ? ChevronDown : ChevronRight;\n const secondary = ctx.variant === 'person' ? node.title : node.subtitle;\n return (\n <li\n key={node.id}\n ref={(el) => {\n if (el) items.current.set(node.id, el);\n else items.current.delete(node.id);\n }}\n role=\"treeitem\"\n aria-level={v.depth + 1}\n aria-setsize={siblings.length}\n aria-posinset={siblings.indexOf(node) + 1}\n aria-expanded={ctx.directReports > 0 ? ctx.expanded : undefined}\n aria-selected={node.id === selectedId}\n aria-current={ctx.highlighted || undefined}\n tabIndex={node.id === active ? 0 : -1}\n data-slot=\"org-chart-tree-item\"\n data-matched={ctx.matched || undefined}\n onFocus={() => setActiveId(node.id)}\n onKeyDown={onKeyDown}\n onClick={(e) => {\n setActiveId(node.id);\n const onChevron = (e.target as HTMLElement).closest(\n '[data-slot=\"org-chart-tree-toggle\"]'\n );\n if (onChevron && ctx.directReports > 0) onToggle(node.id);\n else onSelect(node.id);\n }}\n style={{ paddingInlineStart: `${v.depth * 1.25 + 0.25}rem` }}\n className={cn(\n 'flex cursor-pointer items-center gap-2 rounded-md py-1.5 pe-2 text-sm',\n 'hover:bg-muted focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none',\n node.id === selectedId && 'bg-primary-500/10',\n ctx.matched && 'ring-ring ring-1',\n ctx.dimmed && 'opacity-50',\n classNames?.treeItem\n )}\n >\n <span\n aria-hidden=\"true\"\n data-slot=\"org-chart-tree-toggle\"\n className=\"text-muted-foreground flex size-5 shrink-0 items-center justify-center\"\n >\n {ctx.directReports > 0 && (\n <Chevron className=\"size-4 rtl:-scale-x-100\" />\n )}\n </span>\n <span className=\"flex min-w-0 flex-1 flex-wrap items-baseline gap-x-2\">\n <span className=\"text-foreground font-medium\">{node.name}</span>\n {secondary && (\n <span className=\"text-muted-foreground text-xs\">\n {secondary}\n </span>\n )}\n </span>\n {ctx.highlighted && (\n <span className=\"bg-primary-600 rounded-full px-1.5 text-[10px] font-bold text-white uppercase\">\n {labels.highlighted}\n </span>\n )}\n {renderBadges?.(node)}\n {node.group && <GroupPill group={node.group} accent={ctx.accent} />}\n {ctx.directReports > 0 && (\n <span className=\"text-muted-foreground text-xs tabular-nums\">\n {ctx.directReports}\n </span>\n )}\n </li>\n );\n })}\n </ul>\n );\n}\n","'use client';\n\nimport * as React from 'react';\nimport {\n ExternalLink,\n FoldVertical,\n Map as MapIcon,\n Maximize,\n Minimize,\n Network,\n List,\n Scan,\n Search,\n UnfoldVertical,\n X,\n} from 'lucide-react';\nimport { cn } from '../../utils/cn';\nimport { Avatar } from '../Avatar';\nimport { Button } from '../Button';\nimport { Spinner } from '../Spinner';\nimport { OrgChartCanvas, GroupPill } from './OrgChartCanvas';\nimport { OrgChartTree } from './OrgChartTree';\nimport type { OrgChartDirection } from './layout';\nimport {\n defaultOrgChartLabels,\n ORG_CHART_GROUP_ACCENTS,\n type OrgChartAccent,\n type OrgChartClassNames,\n type OrgChartDetailContext,\n type OrgChartLabels,\n type OrgChartNodeContext,\n type OrgChartNodeVariant,\n type OrgChartRenderSlots,\n type OrgChartView,\n} from './shared';\nimport {\n allExpandable,\n ancestorsOf,\n buildOrgForest,\n childrenOf,\n distinctGroups,\n initialExpanded,\n matchesQuery,\n visibleNodes,\n type OrgChartNode,\n type OrgForest,\n type VisibleNode,\n} from './tree';\n\nexport interface OrgChartProps\n extends\n Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect' | 'children'>,\n OrgChartRenderSlots {\n /** The collection. The caller owns fetching it; order sets sibling order. */\n nodes: readonly OrgChartNode[];\n loading?: boolean;\n error?: Error | null;\n /** Retries a failed load. The retry action renders only when given. */\n onRetry?: () => void;\n /** `person`: avatar + name + title. `location`: icon + name + subtitle. */\n nodeVariant?: OrgChartNodeVariant;\n /** Layout direction of the chart. */\n direction?: OrgChartDirection;\n /** Levels shown on first render, counted from each root. */\n initialDepth?: number;\n /** Expanded into view and framed (e.g. the record the page is about). */\n focusId?: string | null;\n /** Expanded into view and marked (e.g. the signed-in user). */\n highlightedId?: string | null;\n /** Initial search text. */\n defaultQuery?: string;\n /** Initial group filter. */\n defaultGroup?: string;\n /** Controlled view. */\n view?: OrgChartView;\n /** Uncontrolled initial view. Defaults to `list` below 640px, else `chart`. */\n defaultView?: OrgChartView;\n onViewChange?: (view: OrgChartView) => void;\n defaultShowMinimap?: boolean;\n /** Colour per group as a token name. Defaults to `ORG_CHART_GROUP_ACCENTS`. */\n getGroupAccent?: (group: string, index: number) => OrgChartAccent;\n /** Called when a node is selected (details opened) or deselected. */\n onSelect?: (id: string | null, node: OrgChartNode | null) => void;\n /** Called by the detail panel's Open action. */\n onOpen?: (id: string, node: OrgChartNode) => void;\n /** Renders the Open action as a real link. */\n getHref?: (id: string, node: OrgChartNode) => string;\n /** Replaces the detail panel's body. */\n renderDetail?: (\n node: OrgChartNode,\n ctx: OrgChartDetailContext\n ) => React.ReactNode;\n /** Replaces the built-in empty state. */\n emptyState?: React.ReactNode;\n labels?: Partial<OrgChartLabels>;\n classNames?: OrgChartClassNames;\n}\n\nconst isNarrow = () =>\n typeof window !== 'undefined' &&\n !!window.matchMedia?.('(max-width: 639px)').matches;\n\nconst union = (a: ReadonlySet<string>, ids: Iterable<string>) => {\n let out: Set<string> | null = null;\n for (const id of ids) {\n if (a.has(id)) continue;\n out ??= new Set(a);\n out.add(id);\n }\n return out ?? a;\n};\n\nconst ancestorsOfAll = (forest: OrgForest, ids: Iterable<string>) => {\n const out: string[] = [];\n for (const id of ids) out.push(...ancestorsOf(forest, id));\n return out;\n};\n\n/**\n * Declared `parameters.catalog.collection` — loading, empty and error are part\n * of the API.\n */\nexport const OrgChart = React.forwardRef<HTMLDivElement, OrgChartProps>(\n function OrgChart(\n {\n nodes,\n loading = false,\n error = null,\n onRetry,\n nodeVariant = 'person',\n direction = 'DOWN',\n initialDepth = 2,\n focusId = null,\n highlightedId = null,\n defaultQuery = '',\n defaultGroup = '',\n view: viewProp,\n defaultView,\n onViewChange,\n defaultShowMinimap = false,\n getGroupAccent,\n onSelect,\n onOpen,\n getHref,\n renderNode,\n renderBadges,\n renderDetail,\n emptyState,\n labels: labelsProp,\n classNames,\n className,\n ...rest\n },\n ref\n ) {\n const labels = React.useMemo(\n () => ({ ...defaultOrgChartLabels, ...labelsProp }),\n [labelsProp]\n );\n const rootRef = React.useRef<HTMLDivElement>(null);\n React.useImperativeHandle(ref, () => rootRef.current as HTMLDivElement);\n const searchId = React.useId();\n\n const forest = React.useMemo(() => buildOrgForest(nodes), [nodes]);\n const groups = React.useMemo(() => distinctGroups(nodes), [nodes]);\n const accentOf = React.useMemo(() => {\n const map = new Map<string, OrgChartAccent>();\n groups.forEach((g, i) =>\n map.set(\n g,\n getGroupAccent?.(g, i) ??\n ORG_CHART_GROUP_ACCENTS[i % ORG_CHART_GROUP_ACCENTS.length]\n )\n );\n return map;\n }, [groups, getGroupAccent]);\n\n // --- state -------------------------------------------------------------\n const [expanded, setExpanded] = React.useState<ReadonlySet<string>>(() =>\n union(\n initialExpanded(forest, initialDepth),\n ancestorsOfAll(\n forest,\n [focusId, highlightedId].filter((id): id is string => !!id)\n )\n )\n );\n const seeded = React.useRef(forest.byId.size > 0);\n const [query, setQuery] = React.useState(defaultQuery);\n const [groupState, setGroup] = React.useState(defaultGroup);\n // A group that isn't in `nodes` (stale default, removed on refresh) means no filter.\n const group = groupState && groups.includes(groupState) ? groupState : '';\n const [selectedId, setSelectedId] = React.useState<string | null>(null);\n // Deterministic initial view so SSR and client hydrate the same tree;\n // the narrow-screen default is applied once after mount.\n const [viewState, setViewState] = React.useState<OrgChartView>(\n defaultView ?? 'chart'\n );\n const appliedNarrowDefault = React.useRef(false);\n React.useEffect(() => {\n if (appliedNarrowDefault.current) return;\n appliedNarrowDefault.current = true;\n if (defaultView === undefined && isNarrow()) setViewState('list');\n }, [defaultView]);\n const view = viewProp ?? viewState;\n const [showMinimap, setShowMinimap] = React.useState(defaultShowMinimap);\n const [nativeFull, setNativeFull] = React.useState(false);\n const [pseudoFull, setPseudoFull] = React.useState(false);\n const fullscreen = nativeFull || pseudoFull;\n const [fitRequest, setFitRequest] = React.useState(0);\n const returnFocus = React.useRef<HTMLElement | null>(null);\n\n // Seed once data arrives, so a loading → loaded transition still opens\n // `initialDepth` levels.\n React.useEffect(() => {\n if (seeded.current || forest.byId.size === 0) return;\n seeded.current = true;\n setExpanded((prev) => union(prev, initialExpanded(forest, initialDepth)));\n }, [forest, initialDepth]);\n\n React.useEffect(() => {\n const ids = [focusId, highlightedId].filter(\n (id): id is string => !!id && forest.byId.has(id)\n );\n if (ids.length)\n setExpanded((prev) => union(prev, ancestorsOfAll(forest, ids)));\n }, [forest, focusId, highlightedId]);\n\n const matches = React.useMemo(() => {\n if (!query.trim()) return null;\n const out: string[] = [];\n for (const n of forest.byId.values())\n if (matchesQuery(n, query)) out.push(n.id);\n return out;\n }, [forest, query]);\n\n const groupMembers = React.useMemo(() => {\n if (!group) return null;\n const out: string[] = [];\n for (const n of forest.byId.values())\n if (n.group === group) out.push(n.id);\n return out;\n }, [forest, group]);\n\n const revealKey = JSON.stringify([matches, groupMembers]);\n React.useEffect(() => {\n const ids = [...(matches ?? []), ...(groupMembers ?? [])];\n if (ids.length)\n setExpanded((prev) => union(prev, ancestorsOfAll(forest, ids)));\n // revealKey stands in for the two arrays.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [revealKey, forest]);\n\n React.useEffect(() => {\n const onChange = () =>\n setNativeFull(\n !!rootRef.current && document.fullscreenElement === rootRef.current\n );\n document.addEventListener('fullscreenchange', onChange);\n return () => document.removeEventListener('fullscreenchange', onChange);\n }, []);\n\n React.useEffect(() => {\n if (!pseudoFull) return;\n const onKey = (e: KeyboardEvent) => {\n if (e.key === 'Escape') setPseudoFull(false);\n };\n document.addEventListener('keydown', onKey);\n return () => document.removeEventListener('keydown', onKey);\n }, [pseudoFull]);\n\n // --- derived -----------------------------------------------------------\n const visible = React.useMemo(\n () => visibleNodes(forest, expanded),\n [forest, expanded]\n );\n const matchSet = React.useMemo(() => new Set(matches ?? []), [matches]);\n const groupSet = React.useMemo(\n () => (groupMembers ? new Set(groupMembers) : null),\n [groupMembers]\n );\n\n const nodeContext = React.useCallback(\n (v: VisibleNode): OrgChartNodeContext => ({\n variant: nodeVariant,\n depth: v.depth,\n directReports: childrenOf(forest, v.node.id).length,\n expanded: expanded.has(v.node.id),\n highlighted: v.node.id === highlightedId,\n matched: matchSet.has(v.node.id),\n dimmed: !!groupSet && !groupSet.has(v.node.id),\n accent: v.node.group ? accentOf.get(v.node.group) : undefined,\n }),\n [\n nodeVariant,\n forest,\n expanded,\n highlightedId,\n matchSet,\n groupSet,\n accentOf,\n ]\n );\n\n const fitTargets = React.useMemo(() => {\n if (matches?.length) return matches;\n if (groupMembers?.length) return groupMembers;\n if (focusId && forest.byId.has(focusId)) return [focusId];\n return null;\n }, [matches, groupMembers, focusId, forest]);\n\n // --- actions -----------------------------------------------------------\n const toggle = React.useCallback((id: string) => {\n setExpanded((prev) => {\n const next = new Set(prev);\n if (next.has(id)) next.delete(id);\n else next.add(id);\n return next;\n });\n }, []);\n\n const select = React.useCallback(\n (id: string | null) => {\n if (id && typeof document !== 'undefined')\n returnFocus.current = document.activeElement as HTMLElement | null;\n setSelectedId(id);\n onSelect?.(id, id ? (forest.byId.get(id) ?? null) : null);\n },\n [forest, onSelect]\n );\n\n const closeDetail = React.useCallback(() => {\n select(null);\n const el = returnFocus.current;\n if (el?.isConnected) el.focus();\n }, [select]);\n\n const setView = (v: OrgChartView) => {\n setViewState(v);\n onViewChange?.(v);\n };\n\n const toggleFullscreen = async () => {\n const el = rootRef.current;\n if (!el) return;\n if (fullscreen) {\n setPseudoFull(false);\n if (document.fullscreenElement) await document.exitFullscreen?.();\n return;\n }\n try {\n if (!el.requestFullscreen) throw new Error('unsupported');\n await el.requestFullscreen();\n } catch {\n setPseudoFull(true);\n }\n };\n\n // --- render ------------------------------------------------------------\n const stateBox = (content: React.ReactNode) => (\n <div\n data-slot=\"org-chart-state\"\n className={cn(\n 'text-muted-foreground flex min-h-48 flex-col items-center justify-center gap-3 p-6 text-center text-sm',\n classNames?.state\n )}\n >\n {content}\n </div>\n );\n\n let body: React.ReactNode;\n if (error) {\n body = stateBox(\n <>\n <p\n role=\"alert\"\n className=\"text-destructive-700 dark:text-destructive-400\"\n >\n {labels.error}\n </p>\n {onRetry && (\n <Button variant=\"outline\" size=\"sm\" onClick={onRetry}>\n {labels.retry}\n </Button>\n )}\n </>\n );\n } else if (loading) {\n body = stateBox(\n <div role=\"status\" className=\"flex items-center gap-2\">\n <Spinner size=\"sm\" />\n <span>{labels.loading}</span>\n </div>\n );\n } else if (forest.byId.size === 0) {\n body = stateBox(emptyState ?? <p>{labels.empty}</p>);\n }\n\n const selected = selectedId ? (forest.byId.get(selectedId) ?? null) : null;\n const detail = selected && (\n <DetailPanel\n key={selected.id}\n node={selected}\n forest={forest}\n variant={nodeVariant}\n accent={selected.group ? accentOf.get(selected.group) : undefined}\n labels={labels}\n className={classNames?.detail}\n onClose={closeDetail}\n onOpen={onOpen}\n getHref={getHref}\n renderDetail={renderDetail}\n renderBadges={renderBadges}\n />\n );\n\n const iconButton = (\n label: string,\n icon: React.ReactNode,\n onClick: () => void,\n pressed?: boolean\n ) => (\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon\"\n aria-label={label}\n title={label}\n aria-pressed={pressed}\n onClick={onClick}\n className={cn(pressed && 'bg-primary-500/10')}\n >\n {icon}\n </Button>\n );\n\n return (\n <div\n ref={rootRef}\n data-slot=\"org-chart\"\n data-view={view}\n className={cn(\n 'bg-card text-foreground border-border relative flex flex-col overflow-hidden rounded-lg border',\n fullscreen && 'bg-background',\n pseudoFull && 'fixed inset-0 z-50 rounded-none',\n className,\n classNames?.root\n )}\n {...rest}\n >\n {body ?? (\n <>\n <div\n role=\"toolbar\"\n aria-label={labels.toolbar}\n data-slot=\"org-chart-toolbar\"\n className={cn(\n 'border-border flex flex-wrap items-center gap-2 border-b p-2',\n classNames?.toolbar\n )}\n >\n <div className=\"relative min-w-40 flex-1\">\n <label htmlFor={searchId} className=\"sr-only\">\n {labels.search}\n </label>\n <Search\n aria-hidden=\"true\"\n className=\"text-muted-foreground pointer-events-none absolute start-2.5 top-1/2 size-4 -translate-y-1/2\"\n />\n <input\n id={searchId}\n type=\"search\"\n value={query}\n placeholder={labels.searchPlaceholder}\n onChange={(e) => setQuery(e.target.value)}\n className=\"border-border bg-background text-foreground placeholder:text-muted-foreground focus-visible:ring-ring h-9 w-full rounded-md border ps-8 pe-2 text-sm focus-visible:ring-2 focus-visible:outline-none\"\n />\n </div>\n <p\n role=\"status\"\n aria-live=\"polite\"\n className=\"text-muted-foreground min-w-0 text-xs empty:hidden\"\n >\n {matches ? labels.results(matches.length) : ''}\n </p>\n {groups.length > 0 && (\n <select\n aria-label={labels.groupFilter}\n value={group}\n onChange={(e) => setGroup(e.target.value)}\n className=\"border-border bg-background text-foreground focus-visible:ring-ring h-9 max-w-48 rounded-md border px-2 text-sm focus-visible:ring-2 focus-visible:outline-none\"\n >\n <option value=\"\">{labels.allGroups}</option>\n {groups.map((g) => (\n <option key={g} value={g}>\n {g}\n </option>\n ))}\n </select>\n )}\n <div className=\"ms-auto flex flex-wrap items-center gap-1\">\n {iconButton(\n labels.expandAll,\n <UnfoldVertical aria-hidden=\"true\" className=\"size-4\" />,\n () => setExpanded(allExpandable(forest))\n )}\n {iconButton(\n labels.collapseAll,\n <FoldVertical aria-hidden=\"true\" className=\"size-4\" />,\n () => setExpanded(new Set())\n )}\n {view === 'chart' && (\n <>\n {iconButton(\n labels.fitView,\n <Scan aria-hidden=\"true\" className=\"size-4\" />,\n () => setFitRequest((n) => n + 1)\n )}\n {iconButton(\n labels.minimap,\n <MapIcon aria-hidden=\"true\" className=\"size-4\" />,\n () => setShowMinimap((v) => !v),\n showMinimap\n )}\n </>\n )}\n {iconButton(\n labels.fullscreen,\n fullscreen ? (\n <Minimize aria-hidden=\"true\" className=\"size-4\" />\n ) : (\n <Maximize aria-hidden=\"true\" className=\"size-4\" />\n ),\n () => void toggleFullscreen(),\n fullscreen\n )}\n <div\n role=\"group\"\n aria-label={labels.viewToggle}\n className=\"border-border ms-1 flex rounded-md border p-0.5\"\n >\n {(\n [\n ['chart', labels.chartView, Network],\n ['list', labels.listView, List],\n ] as const\n ).map(([v, label, Icon]) => (\n <button\n key={v}\n type=\"button\"\n aria-pressed={view === v}\n onClick={() => setView(v)}\n className={cn(\n 'focus-visible:ring-ring flex h-7 items-center gap-1 rounded px-2 text-xs font-medium focus-visible:ring-2 focus-visible:outline-none',\n view === v\n ? 'bg-primary-500/10 text-foreground'\n : 'text-muted-foreground hover:bg-muted'\n )}\n >\n <Icon aria-hidden=\"true\" className=\"size-3.5\" />\n {label}\n </button>\n ))}\n </div>\n </div>\n </div>\n {view === 'chart' ? (\n <OrgChartCanvas\n forest={forest}\n visible={visible}\n nodeContext={nodeContext}\n focusId={focusId}\n direction={direction}\n variant={nodeVariant}\n showMinimap={showMinimap}\n fitTargets={fitTargets}\n fitRequest={fitRequest}\n labels={labels}\n classNames={\n fullscreen\n ? {\n ...classNames,\n canvas: cn(classNames?.canvas, 'h-auto flex-1'),\n }\n : classNames\n }\n renderNode={renderNode}\n renderBadges={renderBadges}\n onToggle={toggle}\n onSelect={select}\n >\n {detail}\n </OrgChartCanvas>\n ) : (\n <div className={cn('relative', fullscreen && 'flex-1')}>\n <OrgChartTree\n forest={forest}\n visible={visible}\n nodeContext={nodeContext}\n selectedId={selectedId}\n labels={labels}\n classNames={classNames}\n renderBadges={renderBadges}\n onToggle={toggle}\n onSelect={select}\n />\n {detail}\n </div>\n )}\n </>\n )}\n </div>\n );\n }\n);\n\n// =============================================================================\n// Detail panel\n// =============================================================================\n\ninterface DetailPanelProps extends Pick<OrgChartRenderSlots, 'renderBadges'> {\n node: OrgChartNode;\n forest: OrgForest;\n variant: OrgChartNodeVariant;\n accent?: OrgChartAccent;\n labels: OrgChartLabels;\n className?: string;\n onClose: () => void;\n onOpen?: OrgChartProps['onOpen'];\n getHref?: OrgChartProps['getHref'];\n renderDetail?: OrgChartProps['renderDetail'];\n}\n\nfunction DetailPanel({\n node,\n forest,\n variant,\n accent,\n labels,\n className,\n onClose,\n onOpen,\n getHref,\n renderDetail,\n renderBadges,\n}: DetailPanelProps) {\n const ref = React.useRef<HTMLDivElement>(null);\n const closeRef = React.useRef(onClose);\n React.useEffect(() => {\n closeRef.current = onClose;\n });\n React.useEffect(() => {\n const el = ref.current;\n if (!el) return;\n el.focus();\n const onKey = (e: KeyboardEvent) => {\n if (e.key !== 'Escape') return;\n e.stopPropagation();\n closeRef.current();\n };\n el.addEventListener('keydown', onKey);\n return () => el.removeEventListener('keydown', onKey);\n }, []);\n\n const directReports = childrenOf(forest, node.id).length;\n const orgSize = forest.orgSize.get(node.id) ?? 0;\n const parentId = forest.parentOf.get(node.id);\n const parent = parentId ? (forest.byId.get(parentId) ?? null) : null;\n const secondary = variant === 'person' ? node.title : node.subtitle;\n const href = getHref?.(node.id, node);\n\n const actionClass =\n 'bg-primary-600 hover:bg-primary-700 focus-visible:ring-ring inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-sm font-medium text-white focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none';\n\n return (\n <div\n ref={ref}\n role=\"dialog\"\n aria-modal=\"false\"\n aria-label={node.name}\n tabIndex={-1}\n data-slot=\"org-chart-detail\"\n className={cn(\n 'bg-card text-foreground border-border absolute end-3 top-3 z-10 w-72 max-w-[calc(100%-1.5rem)] rounded-lg border p-4 shadow-lg focus:outline-none',\n className\n )}\n >\n <button\n type=\"button\"\n aria-label={labels.close}\n onClick={onClose}\n className=\"text-muted-foreground hover:bg-muted focus-visible:ring-ring absolute end-2 top-2 rounded p-1 focus-visible:ring-2 focus-visible:outline-none\"\n >\n <X aria-hidden=\"true\" className=\"size-4\" />\n </button>\n {renderDetail ? (\n renderDetail(node, { directReports, orgSize, parent, close: onClose })\n ) : (\n <div className=\"flex flex-col gap-3 pe-6\">\n <div className=\"flex items-center gap-3\">\n {variant === 'person' && (\n <Avatar src={node.avatarUrl} name={node.name} alt=\"\" size=\"lg\" />\n )}\n <div className=\"min-w-0\">\n <p className=\"text-foreground font-semibold\">{node.name}</p>\n {secondary && (\n <p className=\"text-muted-foreground text-sm\">{secondary}</p>\n )}\n </div>\n </div>\n {(node.group || renderBadges) && (\n <div className=\"flex flex-wrap gap-1.5\">\n {node.group && <GroupPill group={node.group} accent={accent} />}\n {renderBadges?.(node)}\n </div>\n )}\n <ul className=\"text-muted-foreground flex flex-col gap-1 text-sm\">\n {parent && <li>{labels.reportsTo(parent.name)}</li>}\n <li>{labels.directReports(directReports)}</li>\n {orgSize > directReports && <li>{labels.orgSize(orgSize)}</li>}\n </ul>\n {href ? (\n <a\n href={href}\n className={cn(actionClass, 'self-start')}\n onClick={(e) => {\n if (\n !onOpen ||\n e.button !== 0 ||\n e.metaKey ||\n e.ctrlKey ||\n e.shiftKey ||\n e.altKey\n )\n return;\n e.preventDefault();\n onOpen(node.id, node);\n }}\n >\n {labels.open}\n <ExternalLink aria-hidden=\"true\" className=\"size-3.5\" />\n </a>\n ) : (\n onOpen && (\n <button\n type=\"button\"\n className={cn(actionClass, 'self-start')}\n onClick={() => onOpen(node.id, node)}\n >\n {labels.open}\n </button>\n )\n )}\n </div>\n )}\n </div>\n );\n}\n"]}
|
package/dist/q.d.cts
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
|
-
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { AgentConfigGeneratorProps, QConfig, QSchema } from '@mieweb/q';
|
|
2
4
|
export { AgentConfigGenerator, AgentConfigGeneratorProps, ConfigEditor, ConfigEditorProps, FormBuilder, FormBuilderProps, GENERIC_TOOLS, Header, HeaderProps, QConfig, QDownloadMode, QSchema, TIMEZONES, ToolBuilder, ToolBuilderProps, configToQuestionnaire, configToYaml, copyToClipboard, defaultSchema, deriveDefaultConfig, downloadConfig, questionnaireToConfig, validateConfig, yamlToConfig } from '@mieweb/q';
|
|
3
5
|
export { UniversalAgentConfigGenerator, UniversalAgentConfigGeneratorOptions, brands, generateBrandCSS } from '@mieweb/q/universal';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
+
|
|
7
|
+
interface QProps extends AgentConfigGeneratorProps {
|
|
8
|
+
/** Additional class name for the Q container. */
|
|
9
|
+
className?: string;
|
|
10
|
+
/** Inline styles for the Q container. */
|
|
11
|
+
style?: React.CSSProperties;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Q is the agent config generator form surface.
|
|
15
|
+
*
|
|
16
|
+
* It wraps the published @mieweb/q form generator so it can be consumed through
|
|
17
|
+
* @mieweb/ui/q while keeping Q's heavier dependencies out of the main UI entry.
|
|
18
|
+
*/
|
|
19
|
+
declare function Q({ className, style, ...props }: QProps): react_jsx_runtime.JSX.Element;
|
|
20
|
+
|
|
21
|
+
declare const qTwilioAgentSchema: QSchema;
|
|
22
|
+
declare const qAgentSchema: QSchema;
|
|
23
|
+
declare const qLandingPageAgentConfig: QConfig;
|
|
24
|
+
declare function createQAgentConfig(): QConfig;
|
|
25
|
+
declare function createQTwilioAgentConfig(): QConfig;
|
|
26
|
+
|
|
27
|
+
export { Q, type QProps, createQAgentConfig, createQTwilioAgentConfig, qAgentSchema, qLandingPageAgentConfig, qTwilioAgentSchema };
|
package/dist/q.d.ts
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
|
-
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { AgentConfigGeneratorProps, QConfig, QSchema } from '@mieweb/q';
|
|
2
4
|
export { AgentConfigGenerator, AgentConfigGeneratorProps, ConfigEditor, ConfigEditorProps, FormBuilder, FormBuilderProps, GENERIC_TOOLS, Header, HeaderProps, QConfig, QDownloadMode, QSchema, TIMEZONES, ToolBuilder, ToolBuilderProps, configToQuestionnaire, configToYaml, copyToClipboard, defaultSchema, deriveDefaultConfig, downloadConfig, questionnaireToConfig, validateConfig, yamlToConfig } from '@mieweb/q';
|
|
3
5
|
export { UniversalAgentConfigGenerator, UniversalAgentConfigGeneratorOptions, brands, generateBrandCSS } from '@mieweb/q/universal';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
+
|
|
7
|
+
interface QProps extends AgentConfigGeneratorProps {
|
|
8
|
+
/** Additional class name for the Q container. */
|
|
9
|
+
className?: string;
|
|
10
|
+
/** Inline styles for the Q container. */
|
|
11
|
+
style?: React.CSSProperties;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Q is the agent config generator form surface.
|
|
15
|
+
*
|
|
16
|
+
* It wraps the published @mieweb/q form generator so it can be consumed through
|
|
17
|
+
* @mieweb/ui/q while keeping Q's heavier dependencies out of the main UI entry.
|
|
18
|
+
*/
|
|
19
|
+
declare function Q({ className, style, ...props }: QProps): react_jsx_runtime.JSX.Element;
|
|
20
|
+
|
|
21
|
+
declare const qTwilioAgentSchema: QSchema;
|
|
22
|
+
declare const qAgentSchema: QSchema;
|
|
23
|
+
declare const qLandingPageAgentConfig: QConfig;
|
|
24
|
+
declare function createQAgentConfig(): QConfig;
|
|
25
|
+
declare function createQTwilioAgentConfig(): QConfig;
|
|
26
|
+
|
|
27
|
+
export { Q, type QProps, createQAgentConfig, createQTwilioAgentConfig, qAgentSchema, qLandingPageAgentConfig, qTwilioAgentSchema };
|
package/dist/styles/effects.css
CHANGED
|
@@ -126,3 +126,136 @@
|
|
|
126
126
|
transform: none;
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
|
+
|
|
130
|
+
/* ── Marquee: seamless loop for LogoCloudSection (track holds two copies) ── */
|
|
131
|
+
@keyframes mie-marquee {
|
|
132
|
+
to {
|
|
133
|
+
transform: translateX(-50%);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
@keyframes mie-marquee-rtl {
|
|
137
|
+
to {
|
|
138
|
+
transform: translateX(50%);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
.mie-marquee {
|
|
142
|
+
animation: mie-marquee var(--mie-marquee-duration, 40s) linear infinite;
|
|
143
|
+
}
|
|
144
|
+
[dir='rtl'] .mie-marquee {
|
|
145
|
+
animation-name: mie-marquee-rtl;
|
|
146
|
+
}
|
|
147
|
+
.mie-marquee-host:hover .mie-marquee,
|
|
148
|
+
.mie-marquee-host:focus-within .mie-marquee {
|
|
149
|
+
animation-play-state: paused;
|
|
150
|
+
}
|
|
151
|
+
@media (prefers-reduced-motion: reduce) {
|
|
152
|
+
.mie-marquee {
|
|
153
|
+
animation: none;
|
|
154
|
+
flex-wrap: wrap;
|
|
155
|
+
justify-content: center;
|
|
156
|
+
width: auto;
|
|
157
|
+
}
|
|
158
|
+
.mie-marquee [data-duplicate] {
|
|
159
|
+
display: none;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
/* ── Deck (@mieweb/ui/deck) ──────────────────────────────────────────── */
|
|
164
|
+
/* Content fades up the first time its slide is seen. Hidden only once the
|
|
165
|
+
deck has mounted (`data-ready`), so server HTML and no-JS stay readable. */
|
|
166
|
+
.mie-deck[data-ready] .mie-deck-slide:not([data-seen]) .mie-deck-reveal {
|
|
167
|
+
opacity: 0;
|
|
168
|
+
transform: translateY(1.5rem);
|
|
169
|
+
}
|
|
170
|
+
.mie-deck-reveal {
|
|
171
|
+
transition:
|
|
172
|
+
opacity 0.6s cubic-bezier(0.21, 0.47, 0.32, 0.98),
|
|
173
|
+
transform 0.6s cubic-bezier(0.21, 0.47, 0.32, 0.98);
|
|
174
|
+
transition-delay: calc(var(--mie-reveal-i, 0) * 80ms);
|
|
175
|
+
}
|
|
176
|
+
/* Chart bars grow from the baseline. */
|
|
177
|
+
.mie-deck-grow {
|
|
178
|
+
transform-origin: bottom;
|
|
179
|
+
transition: transform 0.8s cubic-bezier(0.21, 0.47, 0.32, 0.98);
|
|
180
|
+
transition-delay: calc(var(--mie-reveal-i, 0) * 60ms + 200ms);
|
|
181
|
+
}
|
|
182
|
+
.mie-deck[data-ready] .mie-deck-slide:not([data-seen]) .mie-deck-grow {
|
|
183
|
+
transform: scaleY(0);
|
|
184
|
+
}
|
|
185
|
+
@keyframes mie-deck-spin {
|
|
186
|
+
to {
|
|
187
|
+
transform: rotate(360deg);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
.mie-deck-spin {
|
|
191
|
+
animation: mie-deck-spin 60s linear infinite;
|
|
192
|
+
}
|
|
193
|
+
/* A dot travelling along a diagram edge. */
|
|
194
|
+
@keyframes mie-deck-flow {
|
|
195
|
+
from {
|
|
196
|
+
left: var(--mie-from-x);
|
|
197
|
+
top: var(--mie-from-y);
|
|
198
|
+
}
|
|
199
|
+
to {
|
|
200
|
+
left: var(--mie-to-x);
|
|
201
|
+
top: var(--mie-to-y);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
.mie-deck-flow {
|
|
205
|
+
left: var(--mie-from-x);
|
|
206
|
+
top: var(--mie-from-y);
|
|
207
|
+
animation: mie-deck-flow 2.6s linear infinite;
|
|
208
|
+
}
|
|
209
|
+
@media (prefers-reduced-motion: reduce) {
|
|
210
|
+
.mie-deck-reveal,
|
|
211
|
+
.mie-deck-grow {
|
|
212
|
+
transition: none;
|
|
213
|
+
}
|
|
214
|
+
.mie-deck[data-ready] .mie-deck-slide:not([data-seen]) .mie-deck-reveal,
|
|
215
|
+
.mie-deck[data-ready] .mie-deck-slide:not([data-seen]) .mie-deck-grow {
|
|
216
|
+
opacity: 1;
|
|
217
|
+
transform: none;
|
|
218
|
+
}
|
|
219
|
+
.mie-deck-spin,
|
|
220
|
+
.mie-deck-flow {
|
|
221
|
+
animation: none;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
/* PointMap (@mieweb/ui/maps): permanent value labels sit on their markers. */
|
|
225
|
+
.leaflet-tooltip.mie-map-value {
|
|
226
|
+
background: transparent;
|
|
227
|
+
border: 0;
|
|
228
|
+
box-shadow: none;
|
|
229
|
+
font-weight: 700;
|
|
230
|
+
color: var(--mieweb-foreground, #171717);
|
|
231
|
+
}
|
|
232
|
+
.leaflet-tooltip.mie-map-value::before {
|
|
233
|
+
display: none;
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
/* Print: one slide per page, every slide's content visible. */
|
|
237
|
+
@media print {
|
|
238
|
+
.mie-deck {
|
|
239
|
+
height: auto;
|
|
240
|
+
overflow: visible;
|
|
241
|
+
}
|
|
242
|
+
.mie-deck-scroll {
|
|
243
|
+
height: auto;
|
|
244
|
+
overflow: visible;
|
|
245
|
+
}
|
|
246
|
+
.mie-deck-slide {
|
|
247
|
+
min-height: 100vh;
|
|
248
|
+
break-after: page;
|
|
249
|
+
print-color-adjust: exact;
|
|
250
|
+
-webkit-print-color-adjust: exact;
|
|
251
|
+
}
|
|
252
|
+
/* Match the data-ready hide rules' specificity so never-seen slides
|
|
253
|
+
still print their reveal/grow content (equal specificity, later wins). */
|
|
254
|
+
.mie-deck .mie-deck-slide .mie-deck-reveal,
|
|
255
|
+
.mie-deck .mie-deck-slide .mie-deck-grow,
|
|
256
|
+
.mie-deck[data-ready] .mie-deck-slide:not([data-seen]) .mie-deck-reveal,
|
|
257
|
+
.mie-deck[data-ready] .mie-deck-slide:not([data-seen]) .mie-deck-grow {
|
|
258
|
+
opacity: 1;
|
|
259
|
+
transform: none;
|
|
260
|
+
}
|
|
261
|
+
}
|
package/dist/styles/init.css
CHANGED
|
@@ -50,6 +50,9 @@
|
|
|
50
50
|
--color-ozwell: var(--mieweb-ozwell, #0ba0e0);
|
|
51
51
|
--color-ozwell-foreground: var(--mieweb-ozwell-foreground, #ffffff);
|
|
52
52
|
|
|
53
|
+
/* ── Accent — a brand's highlight colour (EH and BlueHive gold); falls back to primary ── */
|
|
54
|
+
--color-accent: var(--mieweb-accent, var(--mieweb-primary-400));
|
|
55
|
+
|
|
53
56
|
/* ── Secondary Color Scale ─────────────────────────────────────────── */
|
|
54
57
|
--color-secondary: var(--mieweb-secondary-500, #6366f1);
|
|
55
58
|
--color-secondary-50: var(--mieweb-secondary-50, #eef2ff);
|
|
@@ -365,9 +368,25 @@ kbd {
|
|
|
365
368
|
font-family: var(--mieweb-font-mono);
|
|
366
369
|
}
|
|
367
370
|
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
+
/* Focus visible styles for accessibility.
|
|
372
|
+
Mirrors base.css: layered so component utilities (e.g.
|
|
373
|
+
focus-visible:outline-none on elements that render their own focus
|
|
374
|
+
ring) can override it — unlayered rules would beat Tailwind's
|
|
375
|
+
utilities layer. */
|
|
376
|
+
@layer base {
|
|
377
|
+
:focus-visible {
|
|
378
|
+
outline: 2px solid var(--mieweb-ring);
|
|
379
|
+
outline-offset: 2px;
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
/* Theme the focus ring offset. Tailwind's --tw-ring-offset-color is
|
|
383
|
+
registered with inherits:false and defaults to #fff, which renders
|
|
384
|
+
as a glaring white box around focused elements in dark mode
|
|
385
|
+
(mieweb/ui#512). Set it per-element to the background token so
|
|
386
|
+
ring-offset-* utilities blend with the current theme. */
|
|
387
|
+
* {
|
|
388
|
+
--tw-ring-offset-color: var(--mieweb-background, #ffffff);
|
|
389
|
+
}
|
|
371
390
|
}
|
|
372
391
|
|
|
373
392
|
/* ── Reduced Motion ──────────────────────────────────────────────────── */
|