@mieweb/ui 0.10.0-dev.3 → 0.10.0-dev.31
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-FX5YNGNE.cjs +17 -0
- package/dist/{CsvBlock-ROJCKJDP.cjs.map → CsvBlock-FX5YNGNE.cjs.map} +1 -1
- package/dist/CsvBlock-VLMG7GUO.js +8 -0
- package/dist/{CsvBlock-UWPMTLE2.js.map → CsvBlock-VLMG7GUO.js.map} +1 -1
- package/dist/HtmlPreviewBlock-5JE7L3GR.js +8 -0
- package/dist/{HtmlPreviewBlock-ME5U3XNS.js.map → HtmlPreviewBlock-5JE7L3GR.js.map} +1 -1
- package/dist/HtmlPreviewBlock-UO37JQ3K.cjs +17 -0
- package/dist/{HtmlPreviewBlock-DWFN6EUB.cjs.map → HtmlPreviewBlock-UO37JQ3K.cjs.map} +1 -1
- package/dist/Input-yN516s5_.d.cts +3 -0
- package/dist/Input-yN516s5_.d.ts +3 -0
- package/dist/MermaidBlock-3XHFBAMV.js +8 -0
- package/dist/{MermaidBlock-2B6CPD6Y.js.map → MermaidBlock-3XHFBAMV.js.map} +1 -1
- package/dist/MermaidBlock-RZ75RPZA.cjs +17 -0
- package/dist/{MermaidBlock-D2UC5M55.cjs.map → MermaidBlock-RZ75RPZA.cjs.map} +1 -1
- package/dist/SurveyBlock-MUVJ3JUI.js +8 -0
- package/dist/{SurveyBlock-4DO62RBT.js.map → SurveyBlock-MUVJ3JUI.js.map} +1 -1
- package/dist/SurveyBlock-VH47YXZC.cjs +17 -0
- package/dist/{SurveyBlock-4CD4AYMJ.cjs.map → SurveyBlock-VH47YXZC.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-JYZW2PZS.cjs → chunk-254QK722.cjs} +7 -7
- package/dist/chunk-254QK722.cjs.map +1 -0
- package/dist/{chunk-VKELAMAZ.js → chunk-2JICT4A2.js} +27 -11
- package/dist/chunk-2JICT4A2.js.map +1 -0
- package/dist/{chunk-VPWJCJCX.cjs → chunk-35Y4ILCU.cjs} +7 -7
- package/dist/{chunk-VPWJCJCX.cjs.map → chunk-35Y4ILCU.cjs.map} +1 -1
- package/dist/{chunk-G3JX3UAU.cjs → chunk-3KPDQG5O.cjs} +5 -5
- package/dist/{chunk-G3JX3UAU.cjs.map → chunk-3KPDQG5O.cjs.map} +1 -1
- package/dist/{chunk-Y5HFM7LO.js → chunk-3RXZWHCU.js} +4 -4
- package/dist/{chunk-Y5HFM7LO.js.map → chunk-3RXZWHCU.js.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-4HC2IBOX.js +258 -0
- package/dist/chunk-4HC2IBOX.js.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-E4IBHYJ7.cjs → chunk-6N6LIAUJ.cjs} +9 -9
- package/dist/{chunk-E4IBHYJ7.cjs.map → chunk-6N6LIAUJ.cjs.map} +1 -1
- package/dist/{chunk-3M7TAXNR.js → chunk-6ZPTZTKN.js} +3 -3
- package/dist/{chunk-3M7TAXNR.js.map → chunk-6ZPTZTKN.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-FJ7YPVKV.js → chunk-7X6R3JIA.js} +3 -3
- package/dist/{chunk-FJ7YPVKV.js.map → chunk-7X6R3JIA.js.map} +1 -1
- package/dist/{chunk-GOALNQZ2.js → chunk-7YO7DNUV.js} +4 -83
- package/dist/chunk-7YO7DNUV.js.map +1 -0
- package/dist/{chunk-P2CA3XGI.js → chunk-7ZV67VZE.js} +4 -4
- package/dist/{chunk-P2CA3XGI.js.map → chunk-7ZV67VZE.js.map} +1 -1
- package/dist/chunk-ADW7ZYCY.cjs +2707 -0
- package/dist/chunk-ADW7ZYCY.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-VILW53UZ.js → chunk-BIQ7GSO2.js} +3 -3
- package/dist/{chunk-VILW53UZ.js.map → chunk-BIQ7GSO2.js.map} +1 -1
- package/dist/chunk-BM35CACB.js +148 -0
- package/dist/chunk-BM35CACB.js.map +1 -0
- package/dist/chunk-BNH4SXJB.js +874 -0
- package/dist/chunk-BNH4SXJB.js.map +1 -0
- package/dist/{chunk-XEAT7XJG.cjs → chunk-BUT6MF5K.cjs} +29 -13
- package/dist/chunk-BUT6MF5K.cjs.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-J5CSLNCN.cjs → chunk-COM7RNZU.cjs} +2 -2
- package/dist/{chunk-J5CSLNCN.cjs.map → chunk-COM7RNZU.cjs.map} +1 -1
- package/dist/{chunk-XI34EGK5.cjs → chunk-CPPUT74P.cjs} +9 -9
- package/dist/{chunk-XI34EGK5.cjs.map → chunk-CPPUT74P.cjs.map} +1 -1
- package/dist/{chunk-ACCAXVOG.js → chunk-CRS2CQWM.js} +134 -56
- package/dist/chunk-CRS2CQWM.js.map +1 -0
- package/dist/{chunk-OE5CKRUC.js → chunk-D22GE27K.js} +4 -4
- package/dist/{chunk-OE5CKRUC.js.map → chunk-D22GE27K.js.map} +1 -1
- package/dist/chunk-DXEPYK3I.cjs +92 -0
- package/dist/chunk-DXEPYK3I.cjs.map +1 -0
- package/dist/{chunk-ZGRCSNPK.js → chunk-E2PBPQGS.js} +4 -4
- package/dist/{chunk-ZGRCSNPK.js.map → chunk-E2PBPQGS.js.map} +1 -1
- package/dist/{chunk-5JJ2DAE4.js → chunk-ENMXHZNE.js} +3 -3
- package/dist/{chunk-5JJ2DAE4.js.map → chunk-ENMXHZNE.js.map} +1 -1
- package/dist/{chunk-XCP454Q6.js → chunk-F4N67NAF.js} +12 -3
- package/dist/chunk-F4N67NAF.js.map +1 -0
- package/dist/chunk-FBCDYTWM.js +385 -0
- package/dist/chunk-FBCDYTWM.js.map +1 -0
- 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-DEDN5HAG.js → chunk-FZURBQJ2.js} +3 -3
- package/dist/{chunk-DEDN5HAG.js.map → chunk-FZURBQJ2.js.map} +1 -1
- package/dist/{chunk-JHULS3EC.js → chunk-GBUVIGD5.js} +89 -3
- package/dist/chunk-GBUVIGD5.js.map +1 -0
- package/dist/chunk-GU5OS7JJ.cjs +281 -0
- package/dist/chunk-GU5OS7JJ.cjs.map +1 -0
- package/dist/{chunk-V7D3YGUV.js → chunk-GVLNXPJX.js} +4 -4
- package/dist/{chunk-V7D3YGUV.js.map → chunk-GVLNXPJX.js.map} +1 -1
- 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-3QEVGSFG.cjs → chunk-GYXUS65N.cjs} +5 -5
- package/dist/{chunk-3QEVGSFG.cjs.map → chunk-GYXUS65N.cjs.map} +1 -1
- package/dist/{chunk-WGPLUCBD.js → chunk-H2IAMSHK.js} +3 -3
- package/dist/{chunk-WGPLUCBD.js.map → chunk-H2IAMSHK.js.map} +1 -1
- 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-GD7EBGC4.cjs → chunk-HC3NAN55.cjs} +19 -19
- package/dist/{chunk-GD7EBGC4.cjs.map → chunk-HC3NAN55.cjs.map} +1 -1
- package/dist/{chunk-7ZXAQTV4.cjs → chunk-HIZWOAWY.cjs} +8 -8
- package/dist/{chunk-7ZXAQTV4.cjs.map → chunk-HIZWOAWY.cjs.map} +1 -1
- package/dist/{chunk-NV2CWBI2.cjs → chunk-IEY3ZJIT.cjs} +12 -3
- package/dist/chunk-IEY3ZJIT.cjs.map +1 -0
- package/dist/chunk-IT775BYG.js +179 -0
- package/dist/chunk-IT775BYG.js.map +1 -0
- package/dist/chunk-IYWG72DM.js +166 -0
- package/dist/chunk-IYWG72DM.js.map +1 -0
- package/dist/{chunk-2YCERQWC.js → chunk-JBIGSP2T.js} +6 -6
- package/dist/{chunk-2YCERQWC.js.map → chunk-JBIGSP2T.js.map} +1 -1
- package/dist/{chunk-IX6KFB3K.cjs → chunk-JELTRRR5.cjs} +9 -9
- package/dist/{chunk-IX6KFB3K.cjs.map → chunk-JELTRRR5.cjs.map} +1 -1
- package/dist/{chunk-YQDA366U.js → chunk-JHG3ELS2.js} +2 -2
- package/dist/{chunk-YQDA366U.js.map → chunk-JHG3ELS2.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-WNM7IZJ7.js → chunk-K34DXMLZ.js} +7 -7
- package/dist/{chunk-WNM7IZJ7.js.map → chunk-K34DXMLZ.js.map} +1 -1
- 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-2QKBTPUC.cjs → chunk-KGKBZN3T.cjs} +8 -8
- package/dist/{chunk-2QKBTPUC.cjs.map → chunk-KGKBZN3T.cjs.map} +1 -1
- package/dist/{chunk-UV2FVNWT.cjs → chunk-LFPJ3OUM.cjs} +5 -5
- package/dist/{chunk-UV2FVNWT.cjs.map → chunk-LFPJ3OUM.cjs.map} +1 -1
- package/dist/{chunk-WNAA6CLE.cjs → chunk-LHBWRMNC.cjs} +94 -2
- package/dist/chunk-LHBWRMNC.cjs.map +1 -0
- package/dist/{chunk-JI244Y7C.js → chunk-MLAWXPRY.js} +190 -5
- package/dist/chunk-MLAWXPRY.js.map +1 -0
- package/dist/chunk-N7C4OEP7.cjs +356 -0
- package/dist/chunk-N7C4OEP7.cjs.map +1 -0
- package/dist/{chunk-WNZAYBVB.cjs → chunk-NKV76R65.cjs} +48 -48
- package/dist/{chunk-WNZAYBVB.cjs.map → chunk-NKV76R65.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-LL6IWKI3.js → chunk-OW3SQJ7P.js} +3 -3
- package/dist/{chunk-LL6IWKI3.js.map → chunk-OW3SQJ7P.js.map} +1 -1
- 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-3T7QGLNB.js → chunk-PJEL5ZZV.js} +4 -2
- package/dist/chunk-PJEL5ZZV.js.map +1 -0
- package/dist/{chunk-H4ZXMQQW.js → chunk-QOVJ6Z6R.js} +3 -3
- package/dist/{chunk-H4ZXMQQW.js.map → chunk-QOVJ6Z6R.js.map} +1 -1
- package/dist/{chunk-U42F3HLE.cjs → chunk-QURJVPRH.cjs} +190 -5
- package/dist/chunk-QURJVPRH.cjs.map +1 -0
- package/dist/{chunk-X4XPNTCZ.cjs → chunk-R5Z7AOVU.cjs} +136 -58
- package/dist/chunk-R5Z7AOVU.cjs.map +1 -0
- package/dist/{chunk-TMMVIUUN.js → chunk-R6KPWIGO.js} +4 -4
- package/dist/{chunk-TMMVIUUN.js.map → chunk-R6KPWIGO.js.map} +1 -1
- package/dist/{chunk-22CYDCXA.js → chunk-RM2HPQIC.js} +105 -14
- package/dist/chunk-RM2HPQIC.js.map +1 -0
- package/dist/{chunk-ENKFJJZX.js → chunk-SD7ONW6S.js} +6 -6
- package/dist/{chunk-ENKFJJZX.js.map → chunk-SD7ONW6S.js.map} +1 -1
- 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-T4JYUICS.js +2657 -0
- package/dist/chunk-T4JYUICS.js.map +1 -0
- package/dist/{chunk-7ZDPD5ZX.cjs → chunk-T4L7Q5FA.cjs} +7 -7
- package/dist/{chunk-7ZDPD5ZX.cjs.map → chunk-T4L7Q5FA.cjs.map} +1 -1
- 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-2IZLKPUW.js → chunk-THLIL6PY.js} +3 -3
- package/dist/{chunk-2IZLKPUW.js.map → chunk-THLIL6PY.js.map} +1 -1
- package/dist/{chunk-SGFYA22I.cjs → chunk-TJCX4OML.cjs} +8 -8
- package/dist/{chunk-SGFYA22I.cjs.map → chunk-TJCX4OML.cjs.map} +1 -1
- package/dist/{chunk-N6IY47YA.cjs → chunk-TTSSUOEV.cjs} +8 -8
- package/dist/{chunk-N6IY47YA.cjs.map → chunk-TTSSUOEV.cjs.map} +1 -1
- package/dist/{chunk-5MCBWTIF.cjs → chunk-TYE5K5WV.cjs} +4 -4
- package/dist/{chunk-5MCBWTIF.cjs.map → chunk-TYE5K5WV.cjs.map} +1 -1
- package/dist/{chunk-VOKVG3ER.js → chunk-UBSH27C2.js} +4 -4
- package/dist/{chunk-VOKVG3ER.js.map → chunk-UBSH27C2.js.map} +1 -1
- 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-UQ3VVR6A.cjs → chunk-UPWIJC6I.cjs} +3 -3
- package/dist/{chunk-UQ3VVR6A.cjs.map → chunk-UPWIJC6I.cjs.map} +1 -1
- 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-VINZZQBD.cjs +323 -0
- package/dist/chunk-VINZZQBD.cjs.map +1 -0
- package/dist/{chunk-OD47TTAW.cjs → chunk-VOQJHSXN.cjs} +9 -9
- package/dist/{chunk-OD47TTAW.cjs.map → chunk-VOQJHSXN.cjs.map} +1 -1
- package/dist/chunk-VPTASZ2O.cjs +171 -0
- package/dist/chunk-VPTASZ2O.cjs.map +1 -0
- package/dist/chunk-WXFGHDTV.cjs +896 -0
- package/dist/chunk-WXFGHDTV.cjs.map +1 -0
- package/dist/{chunk-VNYW4C4J.cjs → chunk-X6A27RGO.cjs} +4 -84
- package/dist/chunk-X6A27RGO.cjs.map +1 -0
- package/dist/chunk-XBTKZCZF.js +333 -0
- package/dist/chunk-XBTKZCZF.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-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-Y4E2WRUR.cjs +188 -0
- package/dist/chunk-Y4E2WRUR.cjs.map +1 -0
- package/dist/chunk-Y4QNLW7W.js +300 -0
- package/dist/chunk-Y4QNLW7W.js.map +1 -0
- package/dist/{chunk-6EN3IQQI.cjs → chunk-YRHBSSQ3.cjs} +6 -6
- package/dist/{chunk-6EN3IQQI.cjs.map → chunk-YRHBSSQ3.cjs.map} +1 -1
- package/dist/{chunk-KZFBQ7GY.js → chunk-YU55JD35.js} +3 -3
- package/dist/{chunk-KZFBQ7GY.js.map → chunk-YU55JD35.js.map} +1 -1
- package/dist/chunk-YW2AKBLS.cjs +23 -0
- package/dist/chunk-YW2AKBLS.cjs.map +1 -0
- package/dist/{chunk-ELPW32ZI.cjs → chunk-ZTMYKAVU.cjs} +45 -45
- package/dist/{chunk-ELPW32ZI.cjs.map → chunk-ZTMYKAVU.cjs.map} +1 -1
- package/dist/{chunk-3QGS6CXD.js → chunk-ZYL4SNOR.js} +3 -3
- package/dist/{chunk-3QGS6CXD.js.map → chunk-ZYL4SNOR.js.map} +1 -1
- package/dist/components/Alert/index.d.cts +1 -1
- package/dist/components/Alert/index.d.ts +1 -1
- package/dist/components/AlertDialog/index.cjs +6 -5
- package/dist/components/AlertDialog/index.d.cts +28 -3
- package/dist/components/AlertDialog/index.d.ts +28 -3
- package/dist/components/AlertDialog/index.js +5 -4
- 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.d.cts +1 -1
- package/dist/components/Avatar/index.d.ts +1 -1
- package/dist/components/Badge/index.d.cts +1 -1
- package/dist/components/Badge/index.d.ts +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 +4 -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 +2 -1
- package/dist/components/CalendarView/index.cjs +23 -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 +10 -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/Collapsible/index.cjs +6 -6
- package/dist/components/Collapsible/index.js +3 -3
- package/dist/components/CountryCodeDropdown/index.cjs +5 -5
- package/dist/components/CountryCodeDropdown/index.js +2 -2
- package/dist/components/CustomizableDashboard/index.cjs +10 -9
- package/dist/components/CustomizableDashboard/index.js +3 -2
- package/dist/components/Dropdown/index.cjs +10 -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 +3 -3
- package/dist/components/FloatingWindow/index.cjs +5 -4
- package/dist/components/FloatingWindow/index.js +3 -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/KeyboardShortcutsOverlay/index.cjs +5 -5
- package/dist/components/KeyboardShortcutsOverlay/index.js +3 -3
- package/dist/components/ListView/index.cjs +23 -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 +10 -0
- package/dist/components/ListView/index.js.map +1 -0
- package/dist/components/Markdown/index.cjs +20 -19
- package/dist/components/Markdown/index.js +8 -7
- package/dist/components/MediaEditor/index.cjs +15 -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 +10 -9
- package/dist/components/MediaFeed/index.cjs +26 -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 +17 -0
- package/dist/components/MediaFeed/index.js.map +1 -0
- package/dist/components/MediaPlayer/index.cjs +7 -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 +4 -3
- package/dist/components/MegaMenu/index.cjs +6 -5
- package/dist/components/MegaMenu/index.js +3 -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/PhoneInput/index.d.cts +36 -3
- package/dist/components/PhoneInput/index.d.ts +36 -3
- package/dist/components/Progress/index.d.cts +1 -1
- package/dist/components/Progress/index.d.ts +1 -1
- 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 +5 -4
- package/dist/components/RadialExplorer/index.js +4 -3
- package/dist/components/RecordButton/index.d.cts +1 -1
- package/dist/components/RecordButton/index.d.ts +1 -1
- package/dist/components/RichTextEditor/index.cjs +9 -8
- package/dist/components/RichTextEditor/index.d.cts +7 -2
- package/dist/components/RichTextEditor/index.d.ts +7 -2
- package/dist/components/RichTextEditor/index.js +6 -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 +4 -3
- package/dist/components/SectionSpyNav/index.js +3 -2
- package/dist/components/Select/index.cjs +4 -4
- package/dist/components/Select/index.d.cts +1 -2
- package/dist/components/Select/index.d.ts +1 -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 +1406 -823
- 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 +1398 -815
- package/dist/components/SuperChat/index.js.map +1 -1
- package/dist/components/SuperChat/plugins/index.cjs +6 -6
- 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 +5 -5
- 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 +1 -2
- package/dist/components/Textarea/index.d.ts +1 -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/ViewSet/index.cjs +24 -0
- package/dist/components/ViewSet/index.cjs.map +1 -0
- package/dist/components/ViewSet/index.d.cts +200 -0
- package/dist/components/ViewSet/index.d.ts +200 -0
- package/dist/components/ViewSet/index.js +15 -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 +4 -0
- package/dist/components/ViewSwitcher/index.d.ts +4 -0
- package/dist/components/ViewSwitcher/index.js +7 -0
- package/dist/components/ViewSwitcher/index.js.map +1 -0
- package/dist/datavis.cjs +3 -2
- 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 +2 -1
- 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 +14 -13
- 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 +11 -10
- package/dist/esheet.js.map +1 -1
- package/dist/globe.cjs +2 -2
- package/dist/globe.js +1 -1
- package/dist/hooks/index.cjs +60 -27
- package/dist/hooks/index.d.cts +590 -31
- package/dist/hooks/index.d.ts +590 -31
- package/dist/hooks/index.js +6 -5
- package/dist/icons-wBacj6BW.d.cts +142 -0
- package/dist/icons-wBacj6BW.d.ts +142 -0
- package/dist/index-DoYYWsNc.d.cts +127 -0
- package/dist/index-DoYYWsNc.d.ts +127 -0
- package/dist/index.cjs +1420 -1048
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +8796 -482
- package/dist/index.d.ts +8796 -482
- package/dist/index.js +368 -232
- 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/q.d.cts +25 -3
- package/dist/q.d.ts +25 -3
- package/dist/styles/effects.css +133 -0
- package/dist/styles/init.css +3 -0
- 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-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.d.cts +13 -2
- package/dist/utils/index.d.ts +13 -2
- package/package.json +62 -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-3T7QGLNB.js.map +0 -1
- package/dist/chunk-6HFFWEM3.cjs +0 -22
- package/dist/chunk-6HFFWEM3.cjs.map +0 -1
- package/dist/chunk-ACCAXVOG.js.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-JHULS3EC.js.map +0 -1
- package/dist/chunk-JI244Y7C.js.map +0 -1
- package/dist/chunk-JYZW2PZS.cjs.map +0 -1
- package/dist/chunk-NV2CWBI2.cjs.map +0 -1
- package/dist/chunk-SQHMGT4W.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-WIAQQNFU.cjs.map +0 -1
- package/dist/chunk-WNAA6CLE.cjs.map +0 -1
- package/dist/chunk-WNJRS7Y7.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/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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/RadialExplorer/RadialExplorer.tsx"],"names":["usePrefersReducedMotion","React","jsxs","cn","jsx","Badge","buttonVariants","ArrowRight"],"mappings":"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","file":"chunk-6EN3IQQI.cjs","sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { ArrowRight } from 'lucide-react';\nimport { cn } from '../../utils/cn';\nimport { Badge } from '../Badge';\nimport { buttonVariants } from '../Button';\nimport { usePrefersReducedMotion } from '../../hooks/usePrefersReducedMotion';\n\n// =============================================================================\n// Types\n// =============================================================================\n\nexport interface RadialSpoke {\n id: string;\n /** Label under the tile. */\n label: string;\n /** Tile icon (Lucide, ~22px). */\n icon: React.ReactNode;\n /** Small caps tag above the detail heading. Defaults to `label`. */\n tag?: string;\n /** Detail heading. Defaults to `label`. */\n title?: string;\n description?: string;\n /** Detail media — a `VideoCard variant=\"plate\"`, an image, a chart. */\n media?: React.ReactNode;\n /** Caption under the media, e.g. \"AI Medical Assistant · 2:44\". */\n caption?: string;\n /** Primary CTA in the detail panel. */\n cta?: { label: string; href: string };\n /** Secondary \"Explore module →\" link. */\n href?: string;\n hrefLabel?: string;\n}\n\nexport interface RadialExplorerProps {\n spokes: RadialSpoke[];\n /** Centre node — a brand mark or product tile. */\n center: React.ReactNode;\n /** Small caps label over the whole explorer. */\n eyebrow?: string;\n /** Controlled active spoke. */\n activeId?: string | null;\n defaultActiveId?: string | null;\n onActiveChange?: (id: string | null) => void;\n /** Shown in the detail panel before any spoke is chosen. */\n welcome?: {\n tag?: string;\n title: string;\n description?: string;\n media?: React.ReactNode;\n cta?: { label: string; href: string };\n };\n /**\n * Auto-advance through the spokes until the visitor interacts. Default\n * 2200ms; pass 0 to disable. Skipped under `prefers-reduced-motion`.\n */\n attractMs?: number;\n /** Hint under the ring. Default \"Hover a module to preview\". */\n hint?: string;\n /** Orbit radius. Default `clamp(118px, 17vw, 188px)`. */\n radius?: string;\n /** Accessible name for the spoke group. Default \"Modules\". */\n groupLabel?: string;\n className?: string;\n}\n\n// =============================================================================\n// RadialExplorer\n// =============================================================================\n\n/**\n * A radial product explorer: a centre mark with N icon tiles orbiting it, a\n * glowing tracer ray from the core to the active tile, tab dots, and a detail\n * panel beside the ring that shows the active spoke's media, copy and CTAs\n * (with a welcome state before any pick). Auto-advances gently until the\n * visitor engages. Below `lg` the ring becomes a chip grid above the panel.\n * Ported from the Enterprise Health hero HUD.\n *\n * @example\n * ```tsx\n * <RadialExplorer\n * eyebrow=\"Explore the platform\"\n * center={<img src=\"/mark.svg\" alt=\"\" />}\n * spokes={[{ id: 'ehr', label: 'Certified EHR', icon: <FileText />, description: '…',\n * media: <VideoCard variant=\"plate\" title=\"EHR tour\" youtubeId=\"…\" duration=\"2:44\" />,\n * cta: { label: 'Request a demo', href: '/demo/' }, href: '/platform/ehr/' }]}\n * />\n * ```\n */\nexport function RadialExplorer({\n spokes,\n center,\n eyebrow,\n activeId: controlled,\n defaultActiveId = null,\n onActiveChange,\n welcome,\n attractMs = 2200,\n hint = 'Hover a module to preview',\n radius = 'clamp(118px, 17vw, 188px)',\n groupLabel = 'Modules',\n className,\n}: RadialExplorerProps) {\n const reduced = usePrefersReducedMotion();\n const [inner, setInner] = React.useState<string | null>(defaultActiveId);\n const [engaged, setEngaged] = React.useState(false);\n const activeId = controlled !== undefined ? controlled : inner;\n const id = React.useId();\n\n const select = React.useCallback(\n (next: string | null) => {\n setEngaged(true);\n if (controlled === undefined) setInner(next);\n onActiveChange?.(next);\n },\n [controlled, onActiveChange]\n );\n\n // Attract loop until the visitor interacts. Never runs in controlled mode:\n // `activeId` is owned by the host, so cycling it (or firing unsolicited\n // `onActiveChange` ticks) would fight the controlled API contract.\n React.useEffect(() => {\n if (\n controlled !== undefined ||\n engaged ||\n reduced ||\n !attractMs ||\n spokes.length === 0\n )\n return;\n let i = spokes.findIndex((s) => s.id === activeId);\n const t = window.setInterval(() => {\n i = (i + 1) % spokes.length;\n setInner(spokes[i].id);\n onActiveChange?.(spokes[i].id);\n }, attractMs);\n return () => window.clearInterval(t);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [engaged, reduced, attractMs, spokes.length, controlled]);\n\n const activeIndex = spokes.findIndex((s) => s.id === activeId);\n const active = activeIndex >= 0 ? spokes[activeIndex] : null;\n const step = 360 / Math.max(spokes.length, 1);\n const angle = (i: number) => `${i * step - 90}deg`;\n\n return (\n <section\n data-slot=\"radial-explorer\"\n style={{ '--re-r': radius } as React.CSSProperties}\n className={cn(\n 'grid gap-8 lg:grid-cols-[1.1fr_minmax(300px,380px)] lg:items-center',\n className\n )}\n aria-labelledby={eyebrow ? `${id}-eyebrow` : undefined}\n >\n <div className=\"flex flex-col items-center gap-5\">\n {eyebrow && (\n <p\n id={`${id}-eyebrow`}\n className=\"text-primary-800 dark:text-primary-300 text-[11px] font-bold tracking-[0.18em] uppercase\"\n >\n {eyebrow}\n </p>\n )}\n\n {/* Ring (lg+) */}\n <div\n role=\"group\"\n aria-label={groupLabel}\n data-slot=\"radial-explorer-ring\"\n className=\"relative hidden aspect-square w-[calc(var(--re-r)*2+120px)] place-items-center lg:grid\"\n >\n <span\n aria-hidden\n data-slot=\"radial-explorer-core\"\n className={cn(\n // rtl-ignore -- physical centering paired with -translate-x-1/2 is direction-independent; start-1/2 would break it in RTL\n 'absolute top-1/2 left-1/2 grid h-[100px] w-[100px] -translate-x-1/2 -translate-y-1/2 place-items-center rounded-[24%] border border-white/15 text-white shadow-[0_14px_30px_rgba(0,0,0,0.3),inset_0_1px_0_rgba(255,255,255,0.08)]',\n '[background:radial-gradient(90%_90%_at_24%_8%,color-mix(in_srgb,var(--mieweb-primary-400)_35%,transparent),transparent_60%),linear-gradient(145deg,var(--mieweb-primary-700)_0%,var(--mieweb-primary-900)_68%,var(--mieweb-primary-950)_100%)]',\n '[&>*]:h-[54px] [&>*]:w-[54px] [&>img]:object-contain'\n )}\n >\n {center}\n </span>\n\n {active && (\n <span\n aria-hidden\n data-slot=\"radial-explorer-ray\"\n style={{\n width: 'var(--re-r)',\n transform: `translateY(-50%) rotate(${angle(activeIndex)})`,\n }}\n className={cn(\n // rtl-ignore -- the ray is rotated to a computed angle from the physical center; origin/tip geometry must stay physical\n 'pointer-events-none absolute top-1/2 left-1/2 z-0 h-0.5 origin-left rounded-full transition-transform duration-500 [transition-timing-function:cubic-bezier(0.4,0.85,0.3,1)]',\n '[filter:drop-shadow(0_0_6px_color-mix(in_srgb,var(--mieweb-accent,var(--mieweb-primary-300))_55%,transparent))] [background:linear-gradient(90deg,transparent_4%,var(--mieweb-accent,var(--mieweb-primary-300))_94%)]',\n // rtl-ignore -- tip dot sits at the physical end of the rotated ray\n 'after:absolute after:top-1/2 after:-right-[3px] after:h-[7px] after:w-[7px] after:-translate-y-1/2 after:rounded-full after:bg-[var(--mieweb-accent,var(--mieweb-primary-300))] after:shadow-[0_0_9px_2px_color-mix(in_srgb,var(--mieweb-accent,var(--mieweb-primary-300))_70%,transparent)] after:content-[\"\"]'\n )}\n />\n )}\n\n {spokes.map((s, i) => {\n const on = s.id === activeId;\n return (\n <button\n key={s.id}\n type=\"button\"\n aria-pressed={on}\n data-slot=\"radial-explorer-spoke\"\n data-active={on || undefined}\n style={{\n transform: `translate(-50%,-50%) rotate(${angle(i)}) translate(var(--re-r)) rotate(calc(-1 * ${angle(i)}))`,\n }}\n onMouseEnter={() => select(s.id)}\n onFocus={() => select(s.id)}\n onClick={() => select(s.id)}\n // rtl-ignore -- spokes are placed by rotate/translate trig from the physical center; the wheel is rotationally symmetric\n className=\"group/spoke absolute top-1/2 left-1/2 grid w-24 justify-items-center gap-2 focus-visible:outline-none\"\n >\n <SpokeTile icon={s.icon} active={on} />\n <span\n className={cn(\n 'text-muted-foreground group-hover/spoke:text-primary-800 dark:group-hover/spoke:text-primary-200 text-[13px] font-semibold transition-colors',\n on && 'text-primary-800 dark:text-primary-200'\n )}\n >\n {s.label}\n </span>\n </button>\n );\n })}\n </div>\n\n {/* Chip grid (< lg) */}\n <div\n role=\"group\"\n aria-label={groupLabel}\n className=\"grid w-full grid-cols-3 gap-3 lg:hidden\"\n >\n {spokes.map((s) => {\n const on = s.id === activeId;\n return (\n <button\n key={s.id}\n type=\"button\"\n aria-pressed={on}\n data-slot=\"radial-explorer-chip\"\n onClick={() => select(s.id)}\n className=\"group/spoke grid justify-items-center gap-1.5 focus-visible:outline-none\"\n >\n <SpokeTile icon={s.icon} active={on} size=\"sm\" />\n <span\n className={cn(\n 'text-muted-foreground text-center text-xs font-semibold',\n on && 'text-primary-800 dark:text-primary-200'\n )}\n >\n {s.label}\n </span>\n </button>\n );\n })}\n </div>\n\n {/* dots + hint */}\n <div className=\"flex flex-col items-center gap-2\">\n <div role=\"group\" aria-label={groupLabel} className=\"flex gap-2\">\n {spokes.map((s, i) => (\n <button\n key={s.id}\n type=\"button\"\n aria-pressed={i === activeIndex}\n aria-label={s.label}\n onClick={() => select(s.id)}\n className={cn(\n 'h-2 rounded-full transition-all',\n i === activeIndex\n ? 'w-6 bg-[var(--mieweb-accent,var(--mieweb-primary-400))]'\n : 'bg-primary-300/60 hover:bg-primary-400 w-2'\n )}\n />\n ))}\n </div>\n {hint && (\n <p\n className={cn(\n 'text-muted-foreground text-xs transition-opacity',\n engaged && 'opacity-0'\n )}\n aria-hidden={engaged}\n >\n {hint}\n </p>\n )}\n </div>\n </div>\n\n {/* Detail */}\n <div\n data-slot=\"radial-explorer-detail\"\n aria-live={engaged ? 'polite' : 'off'}\n className=\"border-border bg-card text-card-foreground grid content-center gap-3.5 rounded-2xl border p-5 shadow-xl\"\n >\n {active ? (\n <Detail\n key={active.id}\n tag={active.tag ?? active.label}\n title={active.title ?? active.label}\n description={active.description}\n media={active.media}\n caption={active.caption}\n cta={active.cta}\n href={active.href}\n hrefLabel={active.hrefLabel ?? 'Explore module'}\n />\n ) : welcome ? (\n <Detail\n key=\"welcome\"\n tag={welcome.tag}\n title={welcome.title}\n description={welcome.description}\n media={welcome.media}\n cta={welcome.cta}\n />\n ) : null}\n </div>\n </section>\n );\n}\n\n// =============================================================================\n// Pieces\n// =============================================================================\n\nfunction SpokeTile({\n icon,\n active,\n size = 'md',\n}: {\n icon: React.ReactNode;\n active: boolean;\n size?: 'sm' | 'md';\n}) {\n return (\n <span\n aria-hidden\n className={cn(\n 'mie-fx-sheen relative grid place-items-center rounded-[17px] border transition-[transform,border-color,color,box-shadow,background] duration-200',\n size === 'md'\n ? 'h-[60px] w-[60px] [&>svg]:h-[22px] [&>svg]:w-[22px]'\n : 'h-12 w-12 rounded-xl [&>svg]:h-5 [&>svg]:w-5',\n 'border-border bg-primary-500/10 text-primary-800 dark:text-primary-300 shadow-md backdrop-blur-sm',\n 'group-hover/spoke:-translate-y-0.5 group-hover/spoke:scale-[1.04] group-hover/spoke:border-transparent group-hover/spoke:text-white group-hover/spoke:shadow-xl',\n 'group-hover/spoke:[background:linear-gradient(150deg,var(--mieweb-primary-700),var(--mieweb-primary-900))_padding-box,linear-gradient(135deg,var(--mieweb-accent,var(--mieweb-primary-300)),var(--mieweb-primary-200)_55%,var(--mieweb-accent,var(--mieweb-primary-300)))_border-box]',\n 'group-focus-visible/spoke:outline-primary-500 group-focus-visible/spoke:outline group-focus-visible/spoke:outline-2 group-focus-visible/spoke:outline-offset-[3px]',\n active &&\n '-translate-y-0.5 scale-[1.04] border-transparent text-white shadow-xl [background:linear-gradient(150deg,var(--mieweb-primary-700),var(--mieweb-primary-900))_padding-box,linear-gradient(135deg,var(--mieweb-accent,var(--mieweb-primary-300)),var(--mieweb-primary-200)_55%,var(--mieweb-accent,var(--mieweb-primary-300)))_border-box]'\n )}\n >\n {icon}\n </span>\n );\n}\n\nfunction Detail({\n tag,\n title,\n description,\n media,\n caption,\n cta,\n href,\n hrefLabel,\n}: {\n tag?: string;\n title: string;\n description?: string;\n media?: React.ReactNode;\n caption?: string;\n cta?: { label: string; href: string };\n href?: string;\n hrefLabel?: string;\n}) {\n return (\n <div className=\"grid gap-3.5 motion-safe:animate-[mie-fade-in_0.25s_ease-out]\">\n {media && <div data-slot=\"radial-explorer-media\">{media}</div>}\n {tag && (\n <Badge\n size=\"sm\"\n className=\"w-fit text-[10px] font-bold tracking-[0.14em] uppercase\"\n >\n {tag}\n </Badge>\n )}\n <h3 className=\"text-foreground text-2xl leading-tight font-semibold\">\n {title}\n </h3>\n {description && (\n <p className=\"text-muted-foreground text-[15px] leading-snug\">\n {description}\n </p>\n )}\n {caption && <p className=\"text-muted-foreground text-sm\">{caption}</p>}\n {(cta || href) && (\n <div className=\"mt-1 flex flex-wrap items-center gap-3\">\n {cta && (\n <a href={cta.href} className={buttonVariants({ effect: 'sheen' })}>\n {cta.label}\n <ArrowRight size={16} aria-hidden />\n </a>\n )}\n {href && (\n <a\n href={href}\n className=\"text-primary-800 dark:text-primary-200 text-sm font-semibold underline-offset-4 hover:underline\"\n >\n {hrefLabel}\n </a>\n )}\n </div>\n )}\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/RadialExplorer/RadialExplorer.tsx"],"names":["usePrefersReducedMotion","React","jsxs","cn","jsx","Badge","buttonVariants","ArrowRight"],"mappings":"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","file":"chunk-YRHBSSQ3.cjs","sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { ArrowRight } from 'lucide-react';\nimport { cn } from '../../utils/cn';\nimport { Badge } from '../Badge';\nimport { buttonVariants } from '../Button';\nimport { usePrefersReducedMotion } from '../../hooks/usePrefersReducedMotion';\n\n// =============================================================================\n// Types\n// =============================================================================\n\nexport interface RadialSpoke {\n id: string;\n /** Label under the tile. */\n label: string;\n /** Tile icon (Lucide, ~22px). */\n icon: React.ReactNode;\n /** Small caps tag above the detail heading. Defaults to `label`. */\n tag?: string;\n /** Detail heading. Defaults to `label`. */\n title?: string;\n description?: string;\n /** Detail media — a `VideoCard variant=\"plate\"`, an image, a chart. */\n media?: React.ReactNode;\n /** Caption under the media, e.g. \"AI Medical Assistant · 2:44\". */\n caption?: string;\n /** Primary CTA in the detail panel. */\n cta?: { label: string; href: string };\n /** Secondary \"Explore module →\" link. */\n href?: string;\n hrefLabel?: string;\n}\n\nexport interface RadialExplorerProps {\n spokes: RadialSpoke[];\n /** Centre node — a brand mark or product tile. */\n center: React.ReactNode;\n /** Small caps label over the whole explorer. */\n eyebrow?: string;\n /** Controlled active spoke. */\n activeId?: string | null;\n defaultActiveId?: string | null;\n onActiveChange?: (id: string | null) => void;\n /** Shown in the detail panel before any spoke is chosen. */\n welcome?: {\n tag?: string;\n title: string;\n description?: string;\n media?: React.ReactNode;\n cta?: { label: string; href: string };\n };\n /**\n * Auto-advance through the spokes until the visitor interacts. Default\n * 2200ms; pass 0 to disable. Skipped under `prefers-reduced-motion`.\n */\n attractMs?: number;\n /** Hint under the ring. Default \"Hover a module to preview\". */\n hint?: string;\n /** Orbit radius. Default `clamp(118px, 17vw, 188px)`. */\n radius?: string;\n /** Accessible name for the spoke group. Default \"Modules\". */\n groupLabel?: string;\n className?: string;\n}\n\n// =============================================================================\n// RadialExplorer\n// =============================================================================\n\n/**\n * A radial product explorer: a centre mark with N icon tiles orbiting it, a\n * glowing tracer ray from the core to the active tile, tab dots, and a detail\n * panel beside the ring that shows the active spoke's media, copy and CTAs\n * (with a welcome state before any pick). Auto-advances gently until the\n * visitor engages. Below `lg` the ring becomes a chip grid above the panel.\n * Ported from the Enterprise Health hero HUD.\n *\n * @example\n * ```tsx\n * <RadialExplorer\n * eyebrow=\"Explore the platform\"\n * center={<img src=\"/mark.svg\" alt=\"\" />}\n * spokes={[{ id: 'ehr', label: 'Certified EHR', icon: <FileText />, description: '…',\n * media: <VideoCard variant=\"plate\" title=\"EHR tour\" youtubeId=\"…\" duration=\"2:44\" />,\n * cta: { label: 'Request a demo', href: '/demo/' }, href: '/platform/ehr/' }]}\n * />\n * ```\n */\nexport function RadialExplorer({\n spokes,\n center,\n eyebrow,\n activeId: controlled,\n defaultActiveId = null,\n onActiveChange,\n welcome,\n attractMs = 2200,\n hint = 'Hover a module to preview',\n radius = 'clamp(118px, 17vw, 188px)',\n groupLabel = 'Modules',\n className,\n}: RadialExplorerProps) {\n const reduced = usePrefersReducedMotion();\n const [inner, setInner] = React.useState<string | null>(defaultActiveId);\n const [engaged, setEngaged] = React.useState(false);\n const activeId = controlled !== undefined ? controlled : inner;\n const id = React.useId();\n\n const select = React.useCallback(\n (next: string | null) => {\n setEngaged(true);\n if (controlled === undefined) setInner(next);\n onActiveChange?.(next);\n },\n [controlled, onActiveChange]\n );\n\n // Attract loop until the visitor interacts. Never runs in controlled mode:\n // `activeId` is owned by the host, so cycling it (or firing unsolicited\n // `onActiveChange` ticks) would fight the controlled API contract.\n React.useEffect(() => {\n if (\n controlled !== undefined ||\n engaged ||\n reduced ||\n !attractMs ||\n spokes.length === 0\n )\n return;\n let i = spokes.findIndex((s) => s.id === activeId);\n const t = window.setInterval(() => {\n i = (i + 1) % spokes.length;\n setInner(spokes[i].id);\n onActiveChange?.(spokes[i].id);\n }, attractMs);\n return () => window.clearInterval(t);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [engaged, reduced, attractMs, spokes.length, controlled]);\n\n const activeIndex = spokes.findIndex((s) => s.id === activeId);\n const active = activeIndex >= 0 ? spokes[activeIndex] : null;\n const step = 360 / Math.max(spokes.length, 1);\n const angle = (i: number) => `${i * step - 90}deg`;\n\n return (\n <section\n data-slot=\"radial-explorer\"\n style={{ '--re-r': radius } as React.CSSProperties}\n className={cn(\n 'grid gap-8 lg:grid-cols-[1.1fr_minmax(300px,380px)] lg:items-center',\n className\n )}\n aria-labelledby={eyebrow ? `${id}-eyebrow` : undefined}\n >\n <div className=\"flex flex-col items-center gap-5\">\n {eyebrow && (\n <p\n id={`${id}-eyebrow`}\n className=\"text-primary-800 dark:text-primary-300 text-[11px] font-bold tracking-[0.18em] uppercase\"\n >\n {eyebrow}\n </p>\n )}\n\n {/* Ring (lg+) */}\n <div\n role=\"group\"\n aria-label={groupLabel}\n data-slot=\"radial-explorer-ring\"\n className=\"relative hidden aspect-square w-[calc(var(--re-r)*2+120px)] place-items-center lg:grid\"\n >\n <span\n aria-hidden\n data-slot=\"radial-explorer-core\"\n className={cn(\n // rtl-ignore -- physical centering paired with -translate-x-1/2 is direction-independent; start-1/2 would break it in RTL\n 'absolute top-1/2 left-1/2 grid h-[100px] w-[100px] -translate-x-1/2 -translate-y-1/2 place-items-center rounded-[24%] border border-white/15 text-white shadow-[0_14px_30px_rgba(0,0,0,0.3),inset_0_1px_0_rgba(255,255,255,0.08)]',\n '[background:radial-gradient(90%_90%_at_24%_8%,color-mix(in_srgb,var(--mieweb-primary-400)_35%,transparent),transparent_60%),linear-gradient(145deg,var(--mieweb-primary-700)_0%,var(--mieweb-primary-900)_68%,var(--mieweb-primary-950)_100%)]',\n '[&>*]:h-[54px] [&>*]:w-[54px] [&>img]:object-contain'\n )}\n >\n {center}\n </span>\n\n {active && (\n <span\n aria-hidden\n data-slot=\"radial-explorer-ray\"\n style={{\n width: 'var(--re-r)',\n transform: `translateY(-50%) rotate(${angle(activeIndex)})`,\n }}\n className={cn(\n // rtl-ignore -- the ray is rotated to a computed angle from the physical center; origin/tip geometry must stay physical\n 'pointer-events-none absolute top-1/2 left-1/2 z-0 h-0.5 origin-left rounded-full transition-transform duration-500 [transition-timing-function:cubic-bezier(0.4,0.85,0.3,1)]',\n '[filter:drop-shadow(0_0_6px_color-mix(in_srgb,var(--mieweb-accent,var(--mieweb-primary-300))_55%,transparent))] [background:linear-gradient(90deg,transparent_4%,var(--mieweb-accent,var(--mieweb-primary-300))_94%)]',\n // rtl-ignore -- tip dot sits at the physical end of the rotated ray\n 'after:absolute after:top-1/2 after:-right-[3px] after:h-[7px] after:w-[7px] after:-translate-y-1/2 after:rounded-full after:bg-[var(--mieweb-accent,var(--mieweb-primary-300))] after:shadow-[0_0_9px_2px_color-mix(in_srgb,var(--mieweb-accent,var(--mieweb-primary-300))_70%,transparent)] after:content-[\"\"]'\n )}\n />\n )}\n\n {spokes.map((s, i) => {\n const on = s.id === activeId;\n return (\n <button\n key={s.id}\n type=\"button\"\n aria-pressed={on}\n data-slot=\"radial-explorer-spoke\"\n data-active={on || undefined}\n style={{\n transform: `translate(-50%,-50%) rotate(${angle(i)}) translate(var(--re-r)) rotate(calc(-1 * ${angle(i)}))`,\n }}\n onMouseEnter={() => select(s.id)}\n onFocus={() => select(s.id)}\n onClick={() => select(s.id)}\n // rtl-ignore -- spokes are placed by rotate/translate trig from the physical center; the wheel is rotationally symmetric\n className=\"group/spoke absolute top-1/2 left-1/2 grid w-24 justify-items-center gap-2 focus-visible:outline-none\"\n >\n <SpokeTile icon={s.icon} active={on} />\n <span\n className={cn(\n 'text-muted-foreground group-hover/spoke:text-primary-800 dark:group-hover/spoke:text-primary-200 text-[13px] font-semibold transition-colors',\n on && 'text-primary-800 dark:text-primary-200'\n )}\n >\n {s.label}\n </span>\n </button>\n );\n })}\n </div>\n\n {/* Chip grid (< lg) */}\n <div\n role=\"group\"\n aria-label={groupLabel}\n className=\"grid w-full grid-cols-3 gap-3 lg:hidden\"\n >\n {spokes.map((s) => {\n const on = s.id === activeId;\n return (\n <button\n key={s.id}\n type=\"button\"\n aria-pressed={on}\n data-slot=\"radial-explorer-chip\"\n onClick={() => select(s.id)}\n className=\"group/spoke grid justify-items-center gap-1.5 focus-visible:outline-none\"\n >\n <SpokeTile icon={s.icon} active={on} size=\"sm\" />\n <span\n className={cn(\n 'text-muted-foreground text-center text-xs font-semibold',\n on && 'text-primary-800 dark:text-primary-200'\n )}\n >\n {s.label}\n </span>\n </button>\n );\n })}\n </div>\n\n {/* dots + hint */}\n <div className=\"flex flex-col items-center gap-2\">\n <div role=\"group\" aria-label={groupLabel} className=\"flex gap-2\">\n {spokes.map((s, i) => (\n <button\n key={s.id}\n type=\"button\"\n aria-pressed={i === activeIndex}\n aria-label={s.label}\n onClick={() => select(s.id)}\n className={cn(\n 'h-2 rounded-full transition-all',\n i === activeIndex\n ? 'w-6 bg-[var(--mieweb-accent,var(--mieweb-primary-400))]'\n : 'bg-primary-300/60 hover:bg-primary-400 w-2'\n )}\n />\n ))}\n </div>\n {hint && (\n <p\n className={cn(\n 'text-muted-foreground text-xs transition-opacity',\n engaged && 'opacity-0'\n )}\n aria-hidden={engaged}\n >\n {hint}\n </p>\n )}\n </div>\n </div>\n\n {/* Detail */}\n <div\n data-slot=\"radial-explorer-detail\"\n aria-live={engaged ? 'polite' : 'off'}\n className=\"border-border bg-card text-card-foreground grid content-center gap-3.5 rounded-2xl border p-5 shadow-xl\"\n >\n {active ? (\n <Detail\n key={active.id}\n tag={active.tag ?? active.label}\n title={active.title ?? active.label}\n description={active.description}\n media={active.media}\n caption={active.caption}\n cta={active.cta}\n href={active.href}\n hrefLabel={active.hrefLabel ?? 'Explore module'}\n />\n ) : welcome ? (\n <Detail\n key=\"welcome\"\n tag={welcome.tag}\n title={welcome.title}\n description={welcome.description}\n media={welcome.media}\n cta={welcome.cta}\n />\n ) : null}\n </div>\n </section>\n );\n}\n\n// =============================================================================\n// Pieces\n// =============================================================================\n\nfunction SpokeTile({\n icon,\n active,\n size = 'md',\n}: {\n icon: React.ReactNode;\n active: boolean;\n size?: 'sm' | 'md';\n}) {\n return (\n <span\n aria-hidden\n className={cn(\n 'mie-fx-sheen relative grid place-items-center rounded-[17px] border transition-[transform,border-color,color,box-shadow,background] duration-200',\n size === 'md'\n ? 'h-[60px] w-[60px] [&>svg]:h-[22px] [&>svg]:w-[22px]'\n : 'h-12 w-12 rounded-xl [&>svg]:h-5 [&>svg]:w-5',\n 'border-border bg-primary-500/10 text-primary-800 dark:text-primary-300 shadow-md backdrop-blur-sm',\n 'group-hover/spoke:-translate-y-0.5 group-hover/spoke:scale-[1.04] group-hover/spoke:border-transparent group-hover/spoke:text-white group-hover/spoke:shadow-xl',\n 'group-hover/spoke:[background:linear-gradient(150deg,var(--mieweb-primary-700),var(--mieweb-primary-900))_padding-box,linear-gradient(135deg,var(--mieweb-accent,var(--mieweb-primary-300)),var(--mieweb-primary-200)_55%,var(--mieweb-accent,var(--mieweb-primary-300)))_border-box]',\n 'group-focus-visible/spoke:outline-primary-500 group-focus-visible/spoke:outline group-focus-visible/spoke:outline-2 group-focus-visible/spoke:outline-offset-[3px]',\n active &&\n '-translate-y-0.5 scale-[1.04] border-transparent text-white shadow-xl [background:linear-gradient(150deg,var(--mieweb-primary-700),var(--mieweb-primary-900))_padding-box,linear-gradient(135deg,var(--mieweb-accent,var(--mieweb-primary-300)),var(--mieweb-primary-200)_55%,var(--mieweb-accent,var(--mieweb-primary-300)))_border-box]'\n )}\n >\n {icon}\n </span>\n );\n}\n\nfunction Detail({\n tag,\n title,\n description,\n media,\n caption,\n cta,\n href,\n hrefLabel,\n}: {\n tag?: string;\n title: string;\n description?: string;\n media?: React.ReactNode;\n caption?: string;\n cta?: { label: string; href: string };\n href?: string;\n hrefLabel?: string;\n}) {\n return (\n <div className=\"grid gap-3.5 motion-safe:animate-[mie-fade-in_0.25s_ease-out]\">\n {media && <div data-slot=\"radial-explorer-media\">{media}</div>}\n {tag && (\n <Badge\n size=\"sm\"\n className=\"w-fit text-[10px] font-bold tracking-[0.14em] uppercase\"\n >\n {tag}\n </Badge>\n )}\n <h3 className=\"text-foreground text-2xl leading-tight font-semibold\">\n {title}\n </h3>\n {description && (\n <p className=\"text-muted-foreground text-[15px] leading-snug\">\n {description}\n </p>\n )}\n {caption && <p className=\"text-muted-foreground text-sm\">{caption}</p>}\n {(cta || href) && (\n <div className=\"mt-1 flex flex-wrap items-center gap-3\">\n {cta && (\n <a href={cta.href} className={buttonVariants({ effect: 'sheen' })}>\n {cta.label}\n <ArrowRight size={16} aria-hidden />\n </a>\n )}\n {href && (\n <a\n href={href}\n className=\"text-primary-800 dark:text-primary-200 text-sm font-semibold underline-offset-4 hover:underline\"\n >\n {hrefLabel}\n </a>\n )}\n </div>\n )}\n </div>\n );\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FenceBlock } from './chunk-
|
|
1
|
+
import { FenceBlock } from './chunk-QOVJ6Z6R.js';
|
|
2
2
|
import DOMPurify from 'dompurify';
|
|
3
3
|
import { useState, useMemo, useCallback, useEffect } from 'react';
|
|
4
4
|
import { jsx } from 'react/jsx-runtime';
|
|
@@ -144,5 +144,5 @@ var MermaidBlock = ({ code, id }) => {
|
|
|
144
144
|
};
|
|
145
145
|
|
|
146
146
|
export { MermaidBlock };
|
|
147
|
-
//# sourceMappingURL=chunk-
|
|
148
|
-
//# sourceMappingURL=chunk-
|
|
147
|
+
//# sourceMappingURL=chunk-YU55JD35.js.map
|
|
148
|
+
//# sourceMappingURL=chunk-YU55JD35.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Markdown/MermaidBlock.tsx"],"names":[],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/components/Markdown/MermaidBlock.tsx"],"names":[],"mappings":"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","file":"chunk-YU55JD35.js","sourcesContent":["/**\n * MermaidBlock — Renders Mermaid diagrams.\n * Requires `mermaid` to be installed by the consumer (optional peer dependency).\n */\nimport DOMPurify from 'dompurify';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { FenceBlock } from './FenceBlock';\n\ninterface MermaidBlockProps {\n code: string;\n id: string;\n}\n\ntype MermaidApi = {\n initialize: (config: Record<string, unknown>) => void;\n parse: (text: string) => Promise<unknown>;\n render: (id: string, text: string) => Promise<{ svg: string }>;\n};\n\nlet mermaidInstance: MermaidApi | null = null;\nlet mermaidReady: Promise<MermaidApi> | null = null;\nlet mermaidTheme: 'dark' | 'default' = 'default';\n\nfunction currentTheme(): 'dark' | 'default' {\n return document.documentElement.classList.contains('dark') ||\n document.documentElement.getAttribute('data-theme') === 'dark'\n ? 'dark'\n : 'default';\n}\n\nfunction buildConfig(theme: 'dark' | 'default'): Record<string, unknown> {\n const base: Record<string, unknown> = {\n startOnLoad: false,\n theme,\n securityLevel: 'strict',\n };\n if (theme === 'dark') {\n base.themeVariables = {\n nodeBorder: '#6b7280',\n mainBkg: '#4a4a4a',\n nodeTextColor: '#ffffff',\n clusterBkg: '#374151',\n titleColor: '#ffffff',\n edgeLabelBackground: '#374151',\n lineColor: '#9ca3af',\n };\n }\n return base;\n}\n\nasync function getMermaid(): Promise<MermaidApi> {\n const theme = currentTheme();\n if (mermaidInstance) {\n if (theme !== mermaidTheme) {\n mermaidTheme = theme;\n mermaidInstance.initialize(buildConfig(theme));\n }\n return mermaidInstance;\n }\n if (!mermaidReady) {\n mermaidReady = import(/* @vite-ignore */ 'mermaid').then((mod) => {\n const m = (mod as { default: MermaidApi }).default;\n mermaidTheme = currentTheme();\n m.initialize(buildConfig(mermaidTheme));\n mermaidInstance = m;\n return m;\n });\n }\n return mermaidReady;\n}\n\nfunction sanitiseSvg(svg: string): string {\n return DOMPurify.sanitize(svg, {\n USE_PROFILES: { svg: true, svgFilters: true },\n // Allow <style> so mermaid's embedded CSS applies, and <foreignObject>\n // so node label text renders (mermaid escapes its content in strict mode).\n ADD_TAGS: ['style', 'foreignObject'],\n ADD_ATTR: [\n 'style',\n 'class',\n 'dominant-baseline',\n 'text-anchor',\n 'font-size',\n 'font-family',\n 'marker-end',\n 'marker-start',\n 'marker-mid',\n 'stroke-dasharray',\n 'stroke-width',\n ],\n FORBID_TAGS: ['script'],\n FORBID_ATTR: ['onload', 'onerror', 'onclick', 'onmouseover'],\n }) as string;\n}\n\nexport const MermaidBlock: React.FC<MermaidBlockProps> = ({ code, id }) => {\n const [svg, setSvg] = useState<string>('');\n const [error, setError] = useState<string>('');\n const [loading, setLoading] = useState(true);\n\n // Derive an accessible label from the diagram's declared type (first keyword).\n const diagramLabel = useMemo(() => {\n const firstWord =\n code\n .trim()\n .split(/[\\s\\n]/)[0]\n ?.toLowerCase() ?? '';\n const typeMap: Record<string, string> = {\n graph: 'Flowchart',\n flowchart: 'Flowchart',\n sequencediagram: 'Sequence diagram',\n classdiagram: 'Class diagram',\n statediagram: 'State diagram',\n 'statediagram-v2': 'State diagram',\n erdiagram: 'Entity relationship diagram',\n gantt: 'Gantt chart',\n pie: 'Pie chart',\n journey: 'User journey diagram',\n gitgraph: 'Git graph',\n mindmap: 'Mind map',\n timeline: 'Timeline',\n quadrantchart: 'Quadrant chart',\n };\n return `${typeMap[firstWord] ?? 'Mermaid'} diagram`;\n }, [code]);\n\n const render = useCallback(async () => {\n setLoading(true);\n setError('');\n try {\n const mermaid = await getMermaid();\n await mermaid.parse(code);\n const { svg: rendered } = await mermaid.render(`mermaid-${id}`, code);\n setSvg(sanitiseSvg(rendered));\n } catch (err) {\n setError((err as Error).message ?? 'Failed to render diagram');\n } finally {\n setLoading(false);\n }\n }, [code, id]);\n\n useEffect(() => {\n void render();\n }, [render]);\n\n // Re-render when the page theme changes (dark ↔ light)\n useEffect(() => {\n const observer = new MutationObserver(() => void render());\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['class', 'data-theme'],\n });\n return () => observer.disconnect();\n }, [render]);\n\n return (\n <FenceBlock\n code={code}\n language=\"mermaid\"\n supportsRawView\n error={error || undefined}\n >\n {loading ? (\n <div className=\"flex items-center justify-center p-8\">\n <div className=\"border-primary-500 h-6 w-6 animate-spin rounded-full border-2 border-t-transparent\" />\n </div>\n ) : (\n <div\n className=\"mermaid-svg flex justify-center p-4\"\n role=\"img\"\n aria-label={diagramLabel}\n dangerouslySetInnerHTML={{ __html: svg }}\n />\n )}\n </FenceBlock>\n );\n};\n"]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var react = require('react');
|
|
4
|
+
|
|
5
|
+
// src/hooks/usePrefersReducedMotion.ts
|
|
6
|
+
function usePrefersReducedMotion() {
|
|
7
|
+
return react.useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
|
|
8
|
+
}
|
|
9
|
+
var QUERY = "(prefers-reduced-motion: reduce)";
|
|
10
|
+
var canQuery = () => typeof window !== "undefined" && typeof window.matchMedia === "function";
|
|
11
|
+
function subscribe(onStoreChange) {
|
|
12
|
+
if (!canQuery()) return () => {
|
|
13
|
+
};
|
|
14
|
+
const mediaQuery = window.matchMedia(QUERY);
|
|
15
|
+
mediaQuery.addEventListener("change", onStoreChange);
|
|
16
|
+
return () => mediaQuery.removeEventListener("change", onStoreChange);
|
|
17
|
+
}
|
|
18
|
+
var getSnapshot = () => canQuery() && window.matchMedia(QUERY).matches;
|
|
19
|
+
var getServerSnapshot = () => false;
|
|
20
|
+
|
|
21
|
+
exports.usePrefersReducedMotion = usePrefersReducedMotion;
|
|
22
|
+
//# sourceMappingURL=chunk-YW2AKBLS.cjs.map
|
|
23
|
+
//# sourceMappingURL=chunk-YW2AKBLS.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/hooks/usePrefersReducedMotion.ts"],"names":["useSyncExternalStore"],"mappings":";;;;;AAkBO,SAAS,uBAAA,GAAmC;AAIjD,EAAA,OAAOA,0BAAA,CAAqB,SAAA,EAAW,WAAA,EAAa,iBAAiB,CAAA;AACvE;AAEA,IAAM,KAAA,GAAQ,kCAAA;AAEd,IAAM,WAAW,MACf,OAAO,WAAW,WAAA,IAAe,OAAO,OAAO,UAAA,KAAe,UAAA;AAEhE,SAAS,UAAU,aAAA,EAAuC;AACxD,EAAA,IAAI,CAAC,QAAA,EAAS,EAAG,OAAO,MAAM;AAAA,EAAC,CAAA;AAC/B,EAAA,MAAM,UAAA,GAAa,MAAA,CAAO,UAAA,CAAW,KAAK,CAAA;AAC1C,EAAA,UAAA,CAAW,gBAAA,CAAiB,UAAU,aAAa,CAAA;AACnD,EAAA,OAAO,MAAM,UAAA,CAAW,mBAAA,CAAoB,QAAA,EAAU,aAAa,CAAA;AACrE;AAEA,IAAM,cAAc,MAAM,QAAA,MAAc,MAAA,CAAO,UAAA,CAAW,KAAK,CAAA,CAAE,OAAA;AAEjE,IAAM,oBAAoB,MAAM,KAAA","file":"chunk-YW2AKBLS.cjs","sourcesContent":["import { useSyncExternalStore } from 'react';\n\n/**\n * Hook that detects if the user prefers reduced motion.\n * Useful for disabling animations for accessibility.\n *\n * @example\n * ```tsx\n * function AnimatedComponent() {\n * const prefersReducedMotion = usePrefersReducedMotion();\n * return (\n * <div className={prefersReducedMotion ? '' : 'animate-fade-in'}>\n * Content\n * </div>\n * );\n * }\n * ```\n */\nexport function usePrefersReducedMotion(): boolean {\n // External-store pattern: the server snapshot is always `false`, so SSR\n // markup and the hydration pass agree; React then re-renders immediately\n // from the client snapshot for reduced-motion users.\n return useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n}\n\nconst QUERY = '(prefers-reduced-motion: reduce)';\n\nconst canQuery = () =>\n typeof window !== 'undefined' && typeof window.matchMedia === 'function';\n\nfunction subscribe(onStoreChange: () => void): () => void {\n if (!canQuery()) return () => {};\n const mediaQuery = window.matchMedia(QUERY);\n mediaQuery.addEventListener('change', onStoreChange);\n return () => mediaQuery.removeEventListener('change', onStoreChange);\n}\n\nconst getSnapshot = () => canQuery() && window.matchMedia(QUERY).matches;\n\nconst getServerSnapshot = () => false;\n"]}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chunkBSDBI6H7_cjs = require('./chunk-BSDBI6H7.cjs');
|
|
4
|
-
var
|
|
4
|
+
var chunkJSXIB6EJ_cjs = require('./chunk-JSXIB6EJ.cjs');
|
|
5
5
|
var chunkG7EQ3JPX_cjs = require('./chunk-G7EQ3JPX.cjs');
|
|
6
6
|
var chunkAIJAFPGJ_cjs = require('./chunk-AIJAFPGJ.cjs');
|
|
7
|
-
var
|
|
7
|
+
var chunkUPWIJC6I_cjs = require('./chunk-UPWIJC6I.cjs');
|
|
8
8
|
var chunkZSGEGISB_cjs = require('./chunk-ZSGEGISB.cjs');
|
|
9
9
|
var chunkMJWFNV3L_cjs = require('./chunk-MJWFNV3L.cjs');
|
|
10
|
+
var chunkT4L7Q5FA_cjs = require('./chunk-T4L7Q5FA.cjs');
|
|
10
11
|
var chunkZ5S5JEJD_cjs = require('./chunk-Z5S5JEJD.cjs');
|
|
11
12
|
var chunkYVPC65ZJ_cjs = require('./chunk-YVPC65ZJ.cjs');
|
|
12
|
-
var chunk7ZDPD5ZX_cjs = require('./chunk-7ZDPD5ZX.cjs');
|
|
13
13
|
var chunkL7L5S2HO_cjs = require('./chunk-L7L5S2HO.cjs');
|
|
14
|
+
var chunkX6A27RGO_cjs = require('./chunk-X6A27RGO.cjs');
|
|
14
15
|
var chunkYVL3XATO_cjs = require('./chunk-YVL3XATO.cjs');
|
|
15
|
-
var chunkVNYW4C4J_cjs = require('./chunk-VNYW4C4J.cjs');
|
|
16
16
|
var chunkS5RVSXDV_cjs = require('./chunk-S5RVSXDV.cjs');
|
|
17
17
|
var jsxRuntime = require('react/jsx-runtime');
|
|
18
18
|
var React3 = require('react');
|
|
@@ -117,8 +117,8 @@ function RowIconButton({
|
|
|
117
117
|
controls,
|
|
118
118
|
size = "md"
|
|
119
119
|
}) {
|
|
120
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
121
|
-
|
|
120
|
+
return /* @__PURE__ */ jsxRuntime.jsx(chunkJSXIB6EJ_cjs.Tooltip, { content: label, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
121
|
+
chunkX6A27RGO_cjs.Button,
|
|
122
122
|
{
|
|
123
123
|
type: "button",
|
|
124
124
|
variant: "ghost",
|
|
@@ -340,7 +340,7 @@ var AllergyList = React3__namespace.forwardRef(
|
|
|
340
340
|
"No known allergies (NKA)"
|
|
341
341
|
] }) : /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground text-sm", children: "Allergy status not recorded." }),
|
|
342
342
|
!readOnly && onNoKnownAllergiesChange && /* @__PURE__ */ jsxRuntime.jsx(
|
|
343
|
-
|
|
343
|
+
chunkX6A27RGO_cjs.Button,
|
|
344
344
|
{
|
|
345
345
|
variant: noKnownAllergies ? "secondary" : "outline",
|
|
346
346
|
size: "sm",
|
|
@@ -374,7 +374,7 @@ var AllergyList = React3__namespace.forwardRef(
|
|
|
374
374
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-xs font-semibold tracking-wide uppercase", children: "Add allergy" }),
|
|
375
375
|
addSearch,
|
|
376
376
|
onAdd && /* @__PURE__ */ jsxRuntime.jsx(
|
|
377
|
-
|
|
377
|
+
chunkX6A27RGO_cjs.Button,
|
|
378
378
|
{
|
|
379
379
|
variant: "outline",
|
|
380
380
|
size: "sm",
|
|
@@ -437,12 +437,12 @@ function AllergyEditor({
|
|
|
437
437
|
}, []);
|
|
438
438
|
const canSave = draft.allergen.trim().length > 0;
|
|
439
439
|
const isDrug = (draft.type ?? "drug") === "drug";
|
|
440
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
441
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
442
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
443
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
440
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.Modal, { open: true, onOpenChange: (o) => !o && onClose(), size: "md", children: [
|
|
441
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.ModalHeader, { children: [
|
|
442
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkT4L7Q5FA_cjs.ModalTitle, { children: allergy ? "Correct Allergy" : "Add Allergy" }),
|
|
443
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkT4L7Q5FA_cjs.ModalClose, {})
|
|
444
444
|
] }),
|
|
445
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
445
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkT4L7Q5FA_cjs.ModalBody, { className: "space-y-4", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: bodyRef, className: "contents", children: [
|
|
446
446
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
447
447
|
chunkG7EQ3JPX_cjs.RadioGroup,
|
|
448
448
|
{
|
|
@@ -460,7 +460,7 @@ function AllergyEditor({
|
|
|
460
460
|
}
|
|
461
461
|
),
|
|
462
462
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
463
|
-
|
|
463
|
+
chunkUPWIJC6I_cjs.Select,
|
|
464
464
|
{
|
|
465
465
|
label: "Type",
|
|
466
466
|
options: TYPE_OPTIONS,
|
|
@@ -559,10 +559,10 @@ function AllergyEditor({
|
|
|
559
559
|
)
|
|
560
560
|
] })
|
|
561
561
|
] }) }),
|
|
562
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
563
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
562
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.ModalFooter, { children: [
|
|
563
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkX6A27RGO_cjs.Button, { variant: "secondary", onClick: onClose, children: "Cancel" }),
|
|
564
564
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
565
|
-
|
|
565
|
+
chunkX6A27RGO_cjs.Button,
|
|
566
566
|
{
|
|
567
567
|
onClick: () => {
|
|
568
568
|
onSave({ ...draft, allergen: draft.allergen.trim() });
|
|
@@ -682,12 +682,12 @@ function AllergyManager({
|
|
|
682
682
|
},
|
|
683
683
|
dialog.kind === "correct" ? dialog.allergy.id : "add"
|
|
684
684
|
),
|
|
685
|
-
dialog?.kind === "note" && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
686
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
687
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
688
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
685
|
+
dialog?.kind === "note" && /* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.Modal, { open: true, onOpenChange: (o) => !o && setDialog(null), size: "md", children: [
|
|
686
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.ModalHeader, { children: [
|
|
687
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkT4L7Q5FA_cjs.ModalTitle, { children: "Allergy Notes" }),
|
|
688
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkT4L7Q5FA_cjs.ModalClose, {})
|
|
689
689
|
] }),
|
|
690
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
690
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.ModalBody, { className: "space-y-4", children: [
|
|
691
691
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground text-sm", children: dialog.allergy.allergen }),
|
|
692
692
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1.5", children: [
|
|
693
693
|
/* @__PURE__ */ jsxRuntime.jsx(chunkAIJAFPGJ_cjs.Label, { htmlFor: "alg-note-dlg", children: "Note" }),
|
|
@@ -702,10 +702,10 @@ function AllergyManager({
|
|
|
702
702
|
)
|
|
703
703
|
] })
|
|
704
704
|
] }),
|
|
705
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
706
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
705
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.ModalFooter, { children: [
|
|
706
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkX6A27RGO_cjs.Button, { variant: "secondary", onClick: () => setDialog(null), children: "Cancel" }),
|
|
707
707
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
708
|
-
|
|
708
|
+
chunkX6A27RGO_cjs.Button,
|
|
709
709
|
{
|
|
710
710
|
onClick: () => {
|
|
711
711
|
commit(
|
|
@@ -991,7 +991,7 @@ var MedicationList = React3__namespace.forwardRef(
|
|
|
991
991
|
addSearch,
|
|
992
992
|
(quickAddOptions?.length || onAddOther) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-1.5", children: [
|
|
993
993
|
quickAddOptions?.map((name) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
994
|
-
|
|
994
|
+
chunkX6A27RGO_cjs.Button,
|
|
995
995
|
{
|
|
996
996
|
variant: "ghost",
|
|
997
997
|
size: "sm",
|
|
@@ -1003,7 +1003,7 @@ var MedicationList = React3__namespace.forwardRef(
|
|
|
1003
1003
|
name
|
|
1004
1004
|
)),
|
|
1005
1005
|
onAddOther && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1006
|
-
|
|
1006
|
+
chunkX6A27RGO_cjs.Button,
|
|
1007
1007
|
{
|
|
1008
1008
|
variant: "outline",
|
|
1009
1009
|
size: "sm",
|
|
@@ -1166,12 +1166,12 @@ function MedicationEditor({
|
|
|
1166
1166
|
};
|
|
1167
1167
|
const canSave = draft.name.trim().length > 0;
|
|
1168
1168
|
if (!open) return null;
|
|
1169
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1170
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1171
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1172
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1169
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.Modal, { open: true, onOpenChange: (o) => !o && onClose(), size: "lg", children: [
|
|
1170
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.ModalHeader, { children: [
|
|
1171
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkT4L7Q5FA_cjs.ModalTitle, { children: medication ? "Correct Medication" : "Add Medication" }),
|
|
1172
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkT4L7Q5FA_cjs.ModalClose, {})
|
|
1173
1173
|
] }),
|
|
1174
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1174
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkT4L7Q5FA_cjs.ModalBody, { className: "space-y-5", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: bodyRef, className: "contents", children: [
|
|
1175
1175
|
/* @__PURE__ */ jsxRuntime.jsxs("section", { className: "space-y-3", "aria-label": "Medication", children: [
|
|
1176
1176
|
effectiveCodeLookup ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1.5", children: [
|
|
1177
1177
|
/* @__PURE__ */ jsxRuntime.jsx(chunkAIJAFPGJ_cjs.Label, { htmlFor: "med-search", children: "Medication" }),
|
|
@@ -1368,10 +1368,10 @@ function MedicationEditor({
|
|
|
1368
1368
|
] })
|
|
1369
1369
|
] })
|
|
1370
1370
|
] }) }),
|
|
1371
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1372
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1371
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.ModalFooter, { children: [
|
|
1372
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkX6A27RGO_cjs.Button, { variant: "secondary", onClick: onClose, children: "Cancel" }),
|
|
1373
1373
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1374
|
-
|
|
1374
|
+
chunkX6A27RGO_cjs.Button,
|
|
1375
1375
|
{
|
|
1376
1376
|
onClick: () => {
|
|
1377
1377
|
onSave({ ...draft, name: draft.name.trim() });
|
|
@@ -1406,12 +1406,12 @@ function MedicationDialog({
|
|
|
1406
1406
|
onSave(form);
|
|
1407
1407
|
onClose();
|
|
1408
1408
|
};
|
|
1409
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1410
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1411
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1412
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1409
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.Modal, { open: true, onOpenChange: (open) => !open && onClose(), size: "md", children: [
|
|
1410
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.ModalHeader, { children: [
|
|
1411
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkT4L7Q5FA_cjs.ModalTitle, { children: dialog.kind === "note" ? "Medication Notes" : "Add Task" }),
|
|
1412
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkT4L7Q5FA_cjs.ModalClose, {})
|
|
1413
1413
|
] }),
|
|
1414
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1414
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.ModalBody, { className: "space-y-4", children: [
|
|
1415
1415
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground text-sm", children: dialog.medication.name }),
|
|
1416
1416
|
dialog.kind === "note" ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1.5", children: [
|
|
1417
1417
|
/* @__PURE__ */ jsxRuntime.jsx(chunkAIJAFPGJ_cjs.Label, { htmlFor: "med-note", children: "Note" }),
|
|
@@ -1438,9 +1438,9 @@ function MedicationDialog({
|
|
|
1438
1438
|
)
|
|
1439
1439
|
] })
|
|
1440
1440
|
] }),
|
|
1441
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1442
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1443
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1441
|
+
/* @__PURE__ */ jsxRuntime.jsxs(chunkT4L7Q5FA_cjs.ModalFooter, { children: [
|
|
1442
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkX6A27RGO_cjs.Button, { variant: "secondary", onClick: onClose, children: "Cancel" }),
|
|
1443
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkX6A27RGO_cjs.Button, { onClick: handleSave, children: "Save" })
|
|
1444
1444
|
] })
|
|
1445
1445
|
] });
|
|
1446
1446
|
}
|
|
@@ -1622,5 +1622,5 @@ exports.parseMedicationLabel = parseMedicationLabel;
|
|
|
1622
1622
|
exports.parseSig = parseSig;
|
|
1623
1623
|
exports.toolbarKeyNav = toolbarKeyNav;
|
|
1624
1624
|
exports.useCodeLookupConfig = useCodeLookupConfig;
|
|
1625
|
-
//# sourceMappingURL=chunk-
|
|
1626
|
-
//# sourceMappingURL=chunk-
|
|
1625
|
+
//# sourceMappingURL=chunk-ZTMYKAVU.cjs.map
|
|
1626
|
+
//# sourceMappingURL=chunk-ZTMYKAVU.cjs.map
|