@epic-web/workshop-app 5.28.0 → 5.29.0
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/build/client/assets/_-DTLUa7j2.js +2 -0
- package/build/client/assets/_-DTLUa7j2.js.map +1 -0
- package/build/client/assets/{_basePickBy-lB0X5x6U.js → _basePickBy-Bkju64MX.js} +2 -2
- package/build/client/assets/{_basePickBy-lB0X5x6U.js.map → _basePickBy-Bkju64MX.js.map} +1 -1
- package/build/client/assets/{_baseUniq-BOjGYEEK.js → _baseUniq-Cp1g4BpN.js} +2 -2
- package/build/client/assets/{_baseUniq-BOjGYEEK.js.map → _baseUniq-Cp1g4BpN.js.map} +1 -1
- package/build/client/assets/_exerciseNumber-Co7M7Ztw.js +2 -0
- package/build/client/assets/_exerciseNumber-Co7M7Ztw.js.map +1 -0
- package/build/client/assets/_exerciseNumber_._stepNumber-Don1A9mU.js +2 -0
- package/build/client/assets/_exerciseNumber_._stepNumber-Don1A9mU.js.map +1 -0
- package/build/client/assets/_exerciseNumber_.finished-BqsavTTe.js +2 -0
- package/build/client/assets/_exerciseNumber_.finished-BqsavTTe.js.map +1 -0
- package/build/client/assets/_layout-BFto7KzZ.js +2 -0
- package/build/client/assets/_layout-BFto7KzZ.js.map +1 -0
- package/build/client/assets/_layout-BvOre76Q.js +2 -0
- package/build/client/assets/_layout-BvOre76Q.js.map +1 -0
- package/build/client/assets/_layout-CSP6lWdg.js +2 -0
- package/build/client/assets/_layout-CSP6lWdg.js.map +1 -0
- package/build/client/assets/_layout-DDOZBbUH.js +6 -0
- package/build/client/assets/_layout-DDOZBbUH.js.map +1 -0
- package/build/client/assets/accordion-BNzI0wOK.js +2 -0
- package/build/client/assets/{accordion-CpiLc1m2.js.map → accordion-BNzI0wOK.js.map} +1 -1
- package/build/client/assets/account-2uOW4wHE.js +2 -0
- package/build/client/assets/account-2uOW4wHE.js.map +1 -0
- package/build/client/assets/app-DfAmumll.js +2 -0
- package/build/client/assets/app-DfAmumll.js.map +1 -0
- package/build/client/assets/{arc-DmQZ2TPB.js → arc-BgUWL_JM.js} +2 -2
- package/build/client/assets/{arc-DmQZ2TPB.js.map → arc-BgUWL_JM.js.map} +1 -1
- package/build/client/assets/architectureDiagram-IEHRJDOE-VEDL5YJR.js +37 -0
- package/build/client/assets/{architectureDiagram-IEHRJDOE-BqPvrjLh.js.map → architectureDiagram-IEHRJDOE-VEDL5YJR.js.map} +1 -1
- package/build/client/assets/{blockDiagram-JOT3LUYC-D8OFd78i.js → blockDiagram-JOT3LUYC-CJojWhFE.js} +3 -3
- package/build/client/assets/{blockDiagram-JOT3LUYC-D8OFd78i.js.map → blockDiagram-JOT3LUYC-CJojWhFE.js.map} +1 -1
- package/build/client/assets/button-DRpue1NG.js +2 -0
- package/build/client/assets/button-DRpue1NG.js.map +1 -0
- package/build/client/assets/{c4Diagram-VJAJSXHY-DjROjsr_.js → c4Diagram-VJAJSXHY-CDiBL4DZ.js} +3 -3
- package/build/client/assets/{c4Diagram-VJAJSXHY-DjROjsr_.js.map → c4Diagram-VJAJSXHY-CDiBL4DZ.js.map} +1 -1
- package/build/client/assets/channel-CAodiiwJ.js +2 -0
- package/build/client/assets/{channel-DnqeaSfB.js.map → channel-CAodiiwJ.js.map} +1 -1
- package/build/client/assets/{chunk-4BMEZGHF-CNL-bCj2.js → chunk-4BMEZGHF-Dn8dm6h4.js} +2 -2
- package/build/client/assets/{chunk-4BMEZGHF-CNL-bCj2.js.map → chunk-4BMEZGHF-Dn8dm6h4.js.map} +1 -1
- package/build/client/assets/{chunk-A2AXSNBT-PeSyIKDm.js → chunk-A2AXSNBT-4MnudWit.js} +2 -2
- package/build/client/assets/{chunk-A2AXSNBT-PeSyIKDm.js.map → chunk-A2AXSNBT-4MnudWit.js.map} +1 -1
- package/build/client/assets/{chunk-AEK57VVT-B1JqGB_s.js → chunk-AEK57VVT-CqDnkZ4u.js} +2 -2
- package/build/client/assets/{chunk-AEK57VVT-B1JqGB_s.js.map → chunk-AEK57VVT-CqDnkZ4u.js.map} +1 -1
- package/build/client/assets/{chunk-D6G4REZN-C1e0nCkL.js → chunk-D6G4REZN-Brt3as5d.js} +2 -2
- package/build/client/assets/{chunk-D6G4REZN-C1e0nCkL.js.map → chunk-D6G4REZN-Brt3as5d.js.map} +1 -1
- package/build/client/assets/chunk-QMGIS6GS-CTjj1G71.js +44 -0
- package/build/client/assets/chunk-QMGIS6GS-CTjj1G71.js.map +1 -0
- package/build/client/assets/{chunk-RZ5BOZE2-D5pIwNeA.js → chunk-RZ5BOZE2-DRDeFo9p.js} +2 -2
- package/build/client/assets/{chunk-RZ5BOZE2-D5pIwNeA.js.map → chunk-RZ5BOZE2-DRDeFo9p.js.map} +1 -1
- package/build/client/assets/{chunk-XZIHB7SX-FbrNggxP.js → chunk-XZIHB7SX-jEJwVQJf.js} +2 -2
- package/build/client/assets/{chunk-XZIHB7SX-FbrNggxP.js.map → chunk-XZIHB7SX-jEJwVQJf.js.map} +1 -1
- package/build/client/assets/classDiagram-GIVACNV2-H_7kh---.js +2 -0
- package/build/client/assets/{classDiagram-GIVACNV2-cXWx-aYi.js.map → classDiagram-GIVACNV2-H_7kh---.js.map} +1 -1
- package/build/client/assets/classDiagram-v2-COTLJTTW-H_7kh---.js +2 -0
- package/build/client/assets/{classDiagram-v2-COTLJTTW-cXWx-aYi.js.map → classDiagram-v2-COTLJTTW-H_7kh---.js.map} +1 -1
- package/build/client/assets/clone-DRQ0Dnbp.js +2 -0
- package/build/client/assets/{clone-Bj8ANPCv.js.map → clone-DRQ0Dnbp.js.map} +1 -1
- package/build/client/assets/dagre-OKDRZEBW-BPnUPPO5.js +5 -0
- package/build/client/assets/{dagre-OKDRZEBW-DT9ZQRxf.js.map → dagre-OKDRZEBW-BPnUPPO5.js.map} +1 -1
- package/build/client/assets/diagram-SSKATNLV-Bh_ZXdjr.js +44 -0
- package/build/client/assets/{diagram-SSKATNLV-CcKCni9R.js.map → diagram-SSKATNLV-Bh_ZXdjr.js.map} +1 -1
- package/build/client/assets/diagram-VNBRO52H-D5zqYvJa.js +25 -0
- package/build/client/assets/{diagram-VNBRO52H-DWoRAiqO.js.map → diagram-VNBRO52H-D5zqYvJa.js.map} +1 -1
- package/build/client/assets/diff-CQ7A0nZj.js +2 -0
- package/build/client/assets/diff-CQ7A0nZj.js.map +1 -0
- package/build/client/assets/{diff-D5_VwPLF.js → diff-CtGU9cxI.js} +2 -2
- package/build/client/assets/diff-CtGU9cxI.js.map +1 -0
- package/build/client/assets/discord-91JJKnJ5.js +2 -0
- package/build/client/assets/discord-91JJKnJ5.js.map +1 -0
- package/build/client/assets/discord-D4appJa-.js +2 -0
- package/build/client/assets/discord-D4appJa-.js.map +1 -0
- package/build/client/assets/entry.client-uKxtCCau.js +35 -0
- package/build/client/assets/entry.client-uKxtCCau.js.map +1 -0
- package/build/client/assets/{epic-video-CmlkW6Rw.js → epic-video-D_3otytp.js} +3 -3
- package/build/client/assets/{epic-video-CmlkW6Rw.js.map → epic-video-D_3otytp.js.map} +1 -1
- package/build/client/assets/{erDiagram-Q7BY3M3F-DXkEmvKk.js → erDiagram-Q7BY3M3F-BxueSNDf.js} +3 -3
- package/build/client/assets/{erDiagram-Q7BY3M3F-DXkEmvKk.js.map → erDiagram-Q7BY3M3F-BxueSNDf.js.map} +1 -1
- package/build/client/assets/error-boundary-BLyHIxcu.js +2 -0
- package/build/client/assets/error-boundary-BLyHIxcu.js.map +1 -0
- package/build/client/assets/finished-BiOz59BB.js +2 -0
- package/build/client/assets/finished-BiOz59BB.js.map +1 -0
- package/build/client/assets/{flowDiagram-4HSFHLVR-DCodZaNW.js → flowDiagram-4HSFHLVR-CfL3E-FD.js} +3 -3
- package/build/client/assets/{flowDiagram-4HSFHLVR-DCodZaNW.js.map → flowDiagram-4HSFHLVR-CfL3E-FD.js.map} +1 -1
- package/build/client/assets/ganttDiagram-APWFNJXF-DxEqrjXE.js +258 -0
- package/build/client/assets/{ganttDiagram-APWFNJXF-TfB6wYvN.js.map → ganttDiagram-APWFNJXF-DxEqrjXE.js.map} +1 -1
- package/build/client/assets/gitGraphDiagram-7IBYFJ6S-csni0XOM.js +66 -0
- package/build/client/assets/{gitGraphDiagram-7IBYFJ6S-D2NQnQv2.js.map → gitGraphDiagram-7IBYFJ6S-csni0XOM.js.map} +1 -1
- package/build/client/assets/{graph-eJUngNSH.js → graph-DiSezMy_.js} +2 -2
- package/build/client/assets/{graph-eJUngNSH.js.map → graph-DiSezMy_.js.map} +1 -1
- package/build/client/assets/index-AKpqKc27.js +2 -0
- package/build/client/assets/index-AKpqKc27.js.map +1 -0
- package/build/client/assets/index-BGtlU-cD.js +2 -0
- package/build/client/assets/index-BGtlU-cD.js.map +1 -0
- package/build/client/assets/index-BP1ceC2h.js +10 -0
- package/build/client/assets/index-BP1ceC2h.js.map +1 -0
- package/build/client/assets/index-BSJLLJJ3.js +2 -0
- package/build/client/assets/index-BSJLLJJ3.js.map +1 -0
- package/build/client/assets/index-C0Fh_zu0.js +36 -0
- package/build/client/assets/{index-DLC5u33j.js.map → index-C0Fh_zu0.js.map} +1 -1
- package/build/client/assets/index-Co8qgD4k.js +2 -0
- package/build/client/assets/{index-BmMpCvYx.js.map → index-Co8qgD4k.js.map} +1 -1
- package/build/client/assets/index-D0dQzJhy.js +2 -0
- package/build/client/assets/index-D0dQzJhy.js.map +1 -0
- package/build/client/assets/index-DJsDENYs.js +42 -0
- package/build/client/assets/{index-Do-KWT0a.js.map → index-DJsDENYs.js.map} +1 -1
- package/build/client/assets/index-DWV7tDz3.js +3 -0
- package/build/client/assets/{index-DvQyydjU.js.map → index-DWV7tDz3.js.map} +1 -1
- package/build/client/assets/infoDiagram-PH2N3AL5-Dr2v4fFk.js +3 -0
- package/build/client/assets/{infoDiagram-PH2N3AL5-D-nEozcT.js.map → infoDiagram-PH2N3AL5-Dr2v4fFk.js.map} +1 -1
- package/build/client/assets/{journeyDiagram-U35MCT3I-Dc8g8jIX.js → journeyDiagram-U35MCT3I-iX4x5HVK.js} +3 -3
- package/build/client/assets/{journeyDiagram-U35MCT3I-Dc8g8jIX.js.map → journeyDiagram-U35MCT3I-iX4x5HVK.js.map} +1 -1
- package/build/client/assets/jsx-runtime-BjG_zV1W.js +10 -0
- package/build/client/assets/jsx-runtime-BjG_zV1W.js.map +1 -0
- package/build/client/assets/{kanban-definition-NDS4AKOZ-BwwcaZU2.js → kanban-definition-NDS4AKOZ-BwP5uDj3.js} +3 -3
- package/build/client/assets/{kanban-definition-NDS4AKOZ-BwwcaZU2.js.map → kanban-definition-NDS4AKOZ-BwP5uDj3.js.map} +1 -1
- package/build/client/assets/l-CVlzRdDg.js +2 -0
- package/build/client/assets/l-CVlzRdDg.js.map +1 -0
- package/build/client/assets/{layout-BAeq0-Is.js → layout-X8Y3Cf_B.js} +2 -2
- package/build/client/assets/{layout-BAeq0-Is.js.map → layout-X8Y3Cf_B.js.map} +1 -1
- package/build/client/assets/{linear-LWRPSVMz.js → linear-1DrdUlCY.js} +2 -2
- package/build/client/assets/{linear-LWRPSVMz.js.map → linear-1DrdUlCY.js.map} +1 -1
- package/build/client/assets/loading-CXEQXwx8.js +2 -0
- package/build/client/assets/{loading-b1FV2pQh.js.map → loading-CXEQXwx8.js.map} +1 -1
- package/build/client/assets/login-CaIyI5Cd.js +2 -0
- package/build/client/assets/login-CaIyI5Cd.js.map +1 -0
- package/build/client/assets/manifest-953eedfa.js +1 -0
- package/build/client/assets/mdx-DD5XL3ew.js +3 -0
- package/build/client/assets/mdx-DD5XL3ew.js.map +1 -0
- package/build/client/assets/{mermaid.core-q9C-HfFu.js → mermaid.core-D4QVSd3D.js} +5 -5
- package/build/client/assets/{mermaid.core-q9C-HfFu.js.map → mermaid.core-D4QVSd3D.js.map} +1 -1
- package/build/client/assets/mindmap-definition-ALO5MXBD-tl5KlWaB.js +96 -0
- package/build/client/assets/{mindmap-definition-ALO5MXBD-BhzLy0Zl.js.map → mindmap-definition-ALO5MXBD-tl5KlWaB.js.map} +1 -1
- package/build/client/assets/misc-yfWFSwMN.js +2 -0
- package/build/client/assets/{misc-2sBiisF5.js.map → misc-yfWFSwMN.js.map} +1 -1
- package/build/client/assets/nav-chevrons-CokHxUSB.js +2 -0
- package/build/client/assets/nav-chevrons-CokHxUSB.js.map +1 -0
- package/build/client/assets/onboarding-DyrGJaVn.js +2 -0
- package/build/client/assets/onboarding-DyrGJaVn.js.map +1 -0
- package/build/client/assets/online-CFV79-RX.js +2 -0
- package/build/client/assets/{online-DZKJk3C2.js.map → online-CFV79-RX.js.map} +1 -1
- package/build/client/assets/pe-C53l4u-6.js +2 -0
- package/build/client/assets/{pe-BShc2dvc.js.map → pe-C53l4u-6.js.map} +1 -1
- package/build/client/assets/pieDiagram-IB7DONF6-y5DqPNpS.js +31 -0
- package/build/client/assets/{pieDiagram-IB7DONF6-CaTGj8RH.js.map → pieDiagram-IB7DONF6-y5DqPNpS.js.map} +1 -1
- package/build/client/assets/preferences-C2zlOkAS.js +2 -0
- package/build/client/assets/preferences-C2zlOkAS.js.map +1 -0
- package/build/client/assets/{presence-C9bUSihT.js → presence-BoFXYAd7.js} +3 -3
- package/build/client/assets/{presence-C9bUSihT.js.map → presence-BoFXYAd7.js.map} +1 -1
- package/build/client/assets/preview-CE_VqYU4.js +2 -0
- package/build/client/assets/preview-CE_VqYU4.js.map +1 -0
- package/build/client/assets/product-TKJyOyif.js +2 -0
- package/build/client/assets/{product-DJOWNuL-.js.map → product-TKJyOyif.js.map} +1 -1
- package/build/client/assets/progress-CtGAFS2P.js +2 -0
- package/build/client/assets/{progress-BJ4ADF-s.js.map → progress-CtGAFS2P.js.map} +1 -1
- package/build/client/assets/progress-bar-DTYORRrG.js +2 -0
- package/build/client/assets/progress-bar-DTYORRrG.js.map +1 -0
- package/build/client/assets/{quadrantDiagram-7GDLP6J5-B4Od6z6p.js → quadrantDiagram-7GDLP6J5-ymq7Ot51.js} +3 -3
- package/build/client/assets/{quadrantDiagram-7GDLP6J5-B4Od6z6p.js.map → quadrantDiagram-7GDLP6J5-ymq7Ot51.js.map} +1 -1
- package/build/client/assets/{radar-MK3ICKWK-CENXhI0E.js → radar-MK3ICKWK-B8xuvUo7.js} +2 -2
- package/build/client/assets/{radar-MK3ICKWK-CENXhI0E.js.map → radar-MK3ICKWK-B8xuvUo7.js.map} +1 -1
- package/build/client/assets/{requirementDiagram-KVF5MWMF-_w0WuUxy.js → requirementDiagram-KVF5MWMF-B4D4Pi12.js} +3 -3
- package/build/client/assets/{requirementDiagram-KVF5MWMF-_w0WuUxy.js.map → requirementDiagram-KVF5MWMF-B4D4Pi12.js.map} +1 -1
- package/build/client/assets/revalidation-ws-89FLt73b.js +2 -0
- package/build/client/assets/revalidation-ws-89FLt73b.js.map +1 -0
- package/build/client/assets/root-Dd9--OJ3.js +2 -0
- package/build/client/assets/root-Dd9--OJ3.js.map +1 -0
- package/build/client/assets/sankeyDiagram-QLVOVGJD-BAY-vMZj.js +11 -0
- package/build/client/assets/{sankeyDiagram-QLVOVGJD-Bt8556P1.js.map → sankeyDiagram-QLVOVGJD-BAY-vMZj.js.map} +1 -1
- package/build/client/assets/{sequenceDiagram-X6HHIX6F-y2-oW3Ob.js → sequenceDiagram-X6HHIX6F-CDjFTgBk.js} +3 -3
- package/build/client/assets/{sequenceDiagram-X6HHIX6F-y2-oW3Ob.js.map → sequenceDiagram-X6HHIX6F-CDjFTgBk.js.map} +1 -1
- package/build/client/assets/set-playground-DtZ5ki7i.js +2 -0
- package/build/client/assets/set-playground-DtZ5ki7i.js.map +1 -0
- package/build/client/assets/stateDiagram-DGXRK772-DFekjeUZ.js +2 -0
- package/build/client/assets/{stateDiagram-DGXRK772-B3BuD15b.js.map → stateDiagram-DGXRK772-DFekjeUZ.js.map} +1 -1
- package/build/client/assets/stateDiagram-v2-YXO3MK2T-CSkUdkOW.js +2 -0
- package/build/client/assets/{stateDiagram-v2-YXO3MK2T-BzFxWpqR.js.map → stateDiagram-v2-YXO3MK2T-CSkUdkOW.js.map} +1 -1
- package/build/client/assets/support-drzs9wuf.js +2 -0
- package/build/client/assets/support-drzs9wuf.js.map +1 -0
- package/build/client/assets/test-psaYrMGK.js +2 -0
- package/build/client/assets/test-psaYrMGK.js.map +1 -0
- package/build/client/assets/{tests-B1ak2CDI.js → tests-7juFXgcY.js} +3 -3
- package/build/client/assets/tests-7juFXgcY.js.map +1 -0
- package/build/client/assets/{timeline-definition-BDJGKUSR-DUa2yfAV.js → timeline-definition-BDJGKUSR-1WjIsnZH.js} +3 -3
- package/build/client/assets/{timeline-definition-BDJGKUSR-DUa2yfAV.js.map → timeline-definition-BDJGKUSR-1WjIsnZH.js.map} +1 -1
- package/build/client/assets/tooltip-C6xKzWST.js +2 -0
- package/build/client/assets/{tooltip-Bzd6O8vq.js.map → tooltip-C6xKzWST.js.map} +1 -1
- package/build/client/assets/use-event-source-B411g-uF.js +2 -0
- package/build/client/assets/{use-event-source-Dar8h_B8.js.map → use-event-source-B411g-uF.js.map} +1 -1
- package/build/client/assets/user-Dmcddqge.js +2 -0
- package/build/client/assets/user-Dmcddqge.js.map +1 -0
- package/build/client/assets/version-BAECczgY.js +2 -0
- package/build/client/assets/version-BAECczgY.js.map +1 -0
- package/build/client/assets/workshop-config-gFAnGhSV.js +2 -0
- package/build/client/assets/workshop-config-gFAnGhSV.js.map +1 -0
- package/build/client/assets/{xychartDiagram-VJFVF3MP-JztjcODi.js → xychartDiagram-VJFVF3MP-Cp8GqXc6.js} +3 -3
- package/build/client/assets/{xychartDiagram-VJFVF3MP-JztjcODi.js.map → xychartDiagram-VJFVF3MP-Cp8GqXc6.js.map} +1 -1
- package/build/server/index.js +4439 -4072
- package/build/server/index.js.map +1 -1
- package/dist/server/index.js +2 -2
- package/package.json +13 -13
- package/build/client/assets/_-BaHOmd8F.js +0 -2
- package/build/client/assets/_-BaHOmd8F.js.map +0 -1
- package/build/client/assets/_exerciseNumber-Dqi7TgL9.js +0 -2
- package/build/client/assets/_exerciseNumber-Dqi7TgL9.js.map +0 -1
- package/build/client/assets/_exerciseNumber_._stepNumber-DoOFEk-P.js +0 -2
- package/build/client/assets/_exerciseNumber_._stepNumber-DoOFEk-P.js.map +0 -1
- package/build/client/assets/_exerciseNumber_.finished-C5m6M0gM.js +0 -2
- package/build/client/assets/_exerciseNumber_.finished-C5m6M0gM.js.map +0 -1
- package/build/client/assets/_layout-B_BIIcpM.js +0 -2
- package/build/client/assets/_layout-B_BIIcpM.js.map +0 -1
- package/build/client/assets/_layout-B_NrRv0S.js +0 -6
- package/build/client/assets/_layout-B_NrRv0S.js.map +0 -1
- package/build/client/assets/_layout-D7_F6t3x.js +0 -2
- package/build/client/assets/_layout-D7_F6t3x.js.map +0 -1
- package/build/client/assets/_layout-QRe2q83m.js +0 -2
- package/build/client/assets/_layout-QRe2q83m.js.map +0 -1
- package/build/client/assets/accordion-CpiLc1m2.js +0 -2
- package/build/client/assets/account-CbFDiVNd.js +0 -2
- package/build/client/assets/account-CbFDiVNd.js.map +0 -1
- package/build/client/assets/app-BYSDu0vh.js +0 -2
- package/build/client/assets/app-BYSDu0vh.js.map +0 -1
- package/build/client/assets/architectureDiagram-IEHRJDOE-BqPvrjLh.js +0 -37
- package/build/client/assets/button-Dt4EcDfR.js +0 -2
- package/build/client/assets/button-Dt4EcDfR.js.map +0 -1
- package/build/client/assets/channel-DnqeaSfB.js +0 -2
- package/build/client/assets/classDiagram-GIVACNV2-cXWx-aYi.js +0 -2
- package/build/client/assets/classDiagram-v2-COTLJTTW-cXWx-aYi.js +0 -2
- package/build/client/assets/clone-Bj8ANPCv.js +0 -2
- package/build/client/assets/components-5arJTWsS.js +0 -158
- package/build/client/assets/components-5arJTWsS.js.map +0 -1
- package/build/client/assets/dagre-OKDRZEBW-DT9ZQRxf.js +0 -5
- package/build/client/assets/diagram-SSKATNLV-CcKCni9R.js +0 -44
- package/build/client/assets/diagram-VNBRO52H-DWoRAiqO.js +0 -25
- package/build/client/assets/diff-BKR4usVv.js +0 -2
- package/build/client/assets/diff-BKR4usVv.js.map +0 -1
- package/build/client/assets/diff-D5_VwPLF.js.map +0 -1
- package/build/client/assets/discord-BU7RzE6-.js +0 -2
- package/build/client/assets/discord-BU7RzE6-.js.map +0 -1
- package/build/client/assets/discord-ut4t-aMQ.js +0 -2
- package/build/client/assets/discord-ut4t-aMQ.js.map +0 -1
- package/build/client/assets/entry.client-BLUlgPHE.js +0 -44
- package/build/client/assets/entry.client-BLUlgPHE.js.map +0 -1
- package/build/client/assets/error-boundary-B07cWiEy.js +0 -2
- package/build/client/assets/error-boundary-B07cWiEy.js.map +0 -1
- package/build/client/assets/finished-MrsevkkK.js +0 -2
- package/build/client/assets/finished-MrsevkkK.js.map +0 -1
- package/build/client/assets/ganttDiagram-APWFNJXF-TfB6wYvN.js +0 -258
- package/build/client/assets/gitGraphDiagram-7IBYFJ6S-D2NQnQv2.js +0 -66
- package/build/client/assets/index-9euhNa27.js +0 -2
- package/build/client/assets/index-9euhNa27.js.map +0 -1
- package/build/client/assets/index-B8yUFowV.js +0 -2
- package/build/client/assets/index-B8yUFowV.js.map +0 -1
- package/build/client/assets/index-BmMpCvYx.js +0 -2
- package/build/client/assets/index-DLC5u33j.js +0 -36
- package/build/client/assets/index-DPHVg8Eh.js +0 -2
- package/build/client/assets/index-DPHVg8Eh.js.map +0 -1
- package/build/client/assets/index-Do-KWT0a.js +0 -42
- package/build/client/assets/index-Dsusf_Av.js +0 -38
- package/build/client/assets/index-Dsusf_Av.js.map +0 -1
- package/build/client/assets/index-DvQyydjU.js +0 -3
- package/build/client/assets/index-Fw2eA3AF.js +0 -2
- package/build/client/assets/index-Fw2eA3AF.js.map +0 -1
- package/build/client/assets/infoDiagram-PH2N3AL5-D-nEozcT.js +0 -3
- package/build/client/assets/l-ChG-6rmU.js +0 -2
- package/build/client/assets/l-ChG-6rmU.js.map +0 -1
- package/build/client/assets/loading-b1FV2pQh.js +0 -2
- package/build/client/assets/login-Ci7cdiuj.js +0 -2
- package/build/client/assets/login-Ci7cdiuj.js.map +0 -1
- package/build/client/assets/manifest-f9e2a790.js +0 -1
- package/build/client/assets/mdx-C7imFHZE.js +0 -3
- package/build/client/assets/mdx-C7imFHZE.js.map +0 -1
- package/build/client/assets/mindmap-definition-ALO5MXBD-BhzLy0Zl.js +0 -96
- package/build/client/assets/misc-2sBiisF5.js +0 -2
- package/build/client/assets/nav-chevrons-CV-dpXNR.js +0 -2
- package/build/client/assets/nav-chevrons-CV-dpXNR.js.map +0 -1
- package/build/client/assets/onboarding-c9ZuxLsm.js +0 -2
- package/build/client/assets/onboarding-c9ZuxLsm.js.map +0 -1
- package/build/client/assets/online-DZKJk3C2.js +0 -2
- package/build/client/assets/pe-BShc2dvc.js +0 -2
- package/build/client/assets/pieDiagram-IB7DONF6-CaTGj8RH.js +0 -31
- package/build/client/assets/preferences-BkWQyRCq.js +0 -2
- package/build/client/assets/preferences-BkWQyRCq.js.map +0 -1
- package/build/client/assets/preview-CqZGJtsE.js +0 -2
- package/build/client/assets/preview-CqZGJtsE.js.map +0 -1
- package/build/client/assets/product-DJOWNuL-.js +0 -2
- package/build/client/assets/progress-BJ4ADF-s.js +0 -2
- package/build/client/assets/progress-bar-DgnkQxQw.js +0 -2
- package/build/client/assets/progress-bar-DgnkQxQw.js.map +0 -1
- package/build/client/assets/revalidation-ws-B0skixgr.js +0 -2
- package/build/client/assets/revalidation-ws-B0skixgr.js.map +0 -1
- package/build/client/assets/root-C_WG23OF.js +0 -11
- package/build/client/assets/root-C_WG23OF.js.map +0 -1
- package/build/client/assets/sankeyDiagram-QLVOVGJD-Bt8556P1.js +0 -11
- package/build/client/assets/set-playground-DW2Ys-rV.js +0 -2
- package/build/client/assets/set-playground-DW2Ys-rV.js.map +0 -1
- package/build/client/assets/stateDiagram-DGXRK772-B3BuD15b.js +0 -2
- package/build/client/assets/stateDiagram-v2-YXO3MK2T-BzFxWpqR.js +0 -2
- package/build/client/assets/support-Bg0iSyle.js +0 -2
- package/build/client/assets/support-Bg0iSyle.js.map +0 -1
- package/build/client/assets/test-DdUNKtkF.js +0 -2
- package/build/client/assets/test-DdUNKtkF.js.map +0 -1
- package/build/client/assets/tests-B1ak2CDI.js.map +0 -1
- package/build/client/assets/tooltip-Bzd6O8vq.js +0 -2
- package/build/client/assets/use-event-source-Dar8h_B8.js +0 -2
- package/build/client/assets/user-DNSnhqGn.js +0 -2
- package/build/client/assets/user-DNSnhqGn.js.map +0 -1
- package/build/client/assets/version-DriSvNMy.js +0 -2
- package/build/client/assets/version-DriSvNMy.js.map +0 -1
- package/build/client/assets/workshop-config-DchzGYJM.js +0 -2
- package/build/client/assets/workshop-config-DchzGYJM.js.map +0 -1
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import{_ as p,av as F,aw as Y,ax as _,ay as H,l as s,c as V,az as z,aA as U,ah as $,am as q,ai as P,ag as K,aB as Q,aC as W,aD as Z}from"./mermaid.core-q9C-HfFu.js";import{G as B}from"./graph-eJUngNSH.js";import{l as I}from"./layout-BAeq0-Is.js";import{i as x}from"./_baseUniq-BOjGYEEK.js";import{c as L}from"./clone-Bj8ANPCv.js";import{m as A}from"./_basePickBy-lB0X5x6U.js";import"./mdx-C7imFHZE.js";import"./index-Dsusf_Av.js";import"./misc-2sBiisF5.js";import"./components-5arJTWsS.js";import"./epic-video-CmlkW6Rw.js";import"./index-DLC5u33j.js";import"./tooltip-Bzd6O8vq.js";import"./pe-BShc2dvc.js";import"./online-DZKJk3C2.js";import"./loading-b1FV2pQh.js";import"./user-DNSnhqGn.js";import"./workshop-config-DchzGYJM.js";import"./progress-bar-DgnkQxQw.js";function E(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:ee(e),edges:ne(e)};return x(e.graph())||(t.value=L(e.graph())),t}function ee(e){return A(e.nodes(),function(t){var n=e.node(t),o=e.parent(t),c={v:t};return x(n)||(c.value=n),x(o)||(c.parent=o),c})}function ne(e){return A(e.edges(),function(t){var n=e.edge(t),o={v:t.v,w:t.w};return x(t.name)||(o.name=t.name),x(n)||(o.value=n),o})}var f=new Map,b=new Map,J=new Map,te=p(()=>{b.clear(),J.clear(),f.clear()},"clear"),O=p((e,t)=>{const n=b.get(t)||[];return s.trace("In isDescendant",t," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),ie=p((e,t)=>{const n=b.get(t)||[];return s.info("Descendants of ",t," is ",n),s.info("Edge is ",e),e.v===t||e.w===t?!1:n?n.includes(e.v)||O(e.v,t)||O(e.w,t)||n.includes(e.w):(s.debug("Tilt, ",t,",not in descendants"),!1)},"edgeInCluster"),G=p((e,t,n,o)=>{s.warn("Copying children of ",e,"root",o,"data",t.node(e),o);const c=t.children(e)||[];e!==o&&c.push(e),s.warn("Copying (nodes) clusterId",e,"nodes",c),c.forEach(a=>{if(t.children(a).length>0)G(a,t,n,o);else{const r=t.node(a);s.info("cp ",a," to ",o," with parent ",e),n.setNode(a,r),o!==t.parent(a)&&(s.warn("Setting parent",a,t.parent(a)),n.setParent(a,t.parent(a))),e!==o&&a!==e?(s.debug("Setting parent",a,e),n.setParent(a,e)):(s.info("In copy ",e,"root",o,"data",t.node(e),o),s.debug("Not Setting parent for node=",a,"cluster!==rootId",e!==o,"node!==clusterId",a!==e));const u=t.edges(a);s.debug("Copying Edges",u),u.forEach(l=>{s.info("Edge",l);const v=t.edge(l.v,l.w,l.name);s.info("Edge data",v,o);try{ie(l,o)?(s.info("Copying as ",l.v,l.w,v,l.name),n.setEdge(l.v,l.w,v,l.name),s.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):s.info("Skipping copy of edge ",l.v,"-->",l.w," rootId: ",o," clusterId:",e)}catch(C){s.error(C)}})}s.debug("Removing node",a),t.removeNode(a)})},"copy"),R=p((e,t)=>{const n=t.children(e);let o=[...n];for(const c of n)J.set(c,e),o=[...o,...R(c,t)];return o},"extractDescendants"),se=p((e,t,n)=>{const o=e.edges().filter(l=>l.v===t||l.w===t),c=e.edges().filter(l=>l.v===n||l.w===n),a=o.map(l=>({v:l.v===t?n:l.v,w:l.w===t?t:l.w})),r=c.map(l=>({v:l.v,w:l.w}));return a.filter(l=>r.some(v=>l.v===v.v&&l.w===v.w))},"findCommonEdges"),D=p((e,t,n)=>{const o=t.children(e);if(s.trace("Searching children of id ",e,o),o.length<1)return e;let c;for(const a of o){const r=D(a,t,n),u=se(t,n,r);if(r)if(u.length>0)c=r;else return r}return c},"findNonClusterChild"),k=p(e=>!f.has(e)||!f.get(e).externalConnections?e:f.has(e)?f.get(e).id:e,"getAnchorId"),re=p((e,t)=>{if(!e||t>10){s.debug("Opting out, no graph ");return}else s.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(s.warn("Cluster identified",n," Replacement id in edges: ",D(n,e,n)),b.set(n,R(n,e)),f.set(n,{id:D(n,e,n),clusterData:e.node(n)}))}),e.nodes().forEach(function(n){const o=e.children(n),c=e.edges();o.length>0?(s.debug("Cluster identified",n,b),c.forEach(a=>{const r=O(a.v,n),u=O(a.w,n);r^u&&(s.warn("Edge: ",a," leaves cluster ",n),s.warn("Descendants of XXX ",n,": ",b.get(n)),f.get(n).externalConnections=!0)})):s.debug("Not a cluster ",n,b)});for(let n of f.keys()){const o=f.get(n).id,c=e.parent(o);c!==n&&f.has(c)&&!f.get(c).externalConnections&&(f.get(n).id=c)}e.edges().forEach(function(n){const o=e.edge(n);s.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),s.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let c=n.v,a=n.w;if(s.warn("Fix XXX",f,"ids:",n.v,n.w,"Translating: ",f.get(n.v)," --- ",f.get(n.w)),f.get(n.v)||f.get(n.w)){if(s.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),c=k(n.v),a=k(n.w),e.removeEdge(n.v,n.w,n.name),c!==n.v){const r=e.parent(c);f.get(r).externalConnections=!0,o.fromCluster=n.v}if(a!==n.w){const r=e.parent(a);f.get(r).externalConnections=!0,o.toCluster=n.w}s.warn("Fix Replacing with XXX",c,a,n.name),e.setEdge(c,a,o,n.name)}}),s.warn("Adjusted Graph",E(e)),T(e,0),s.trace(f)},"adjustClustersAndEdges"),T=p((e,t)=>{var c,a;if(s.warn("extractor - ",t,E(e),e.children("D")),t>10){s.error("Bailing out");return}let n=e.nodes(),o=!1;for(const r of n){const u=e.children(r);o=o||u.length>0}if(!o){s.debug("Done, no node has children",e.nodes());return}s.debug("Nodes = ",n,t);for(const r of n)if(s.debug("Extracting node",r,f,f.has(r)&&!f.get(r).externalConnections,!e.parent(r),e.node(r),e.children("D")," Depth ",t),!f.has(r))s.debug("Not a cluster",r,t);else if(!f.get(r).externalConnections&&e.children(r)&&e.children(r).length>0){s.warn("Cluster without external connections, without a parent and with children",r,t);let l=e.graph().rankdir==="TB"?"LR":"TB";(a=(c=f.get(r))==null?void 0:c.clusterData)!=null&&a.dir&&(l=f.get(r).clusterData.dir,s.warn("Fixing dir",f.get(r).clusterData.dir,l));const v=new B({multigraph:!0,compound:!0}).setGraph({rankdir:l,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});s.warn("Old graph before copy",E(e)),G(r,e,v,r),e.setNode(r,{clusterNode:!0,id:r,clusterData:f.get(r).clusterData,label:f.get(r).label,graph:v}),s.warn("New graph after copy node: (",r,")",E(v)),s.debug("Old graph after copy",E(e))}else s.warn("Cluster ** ",r," **not meeting the criteria !externalConnections:",!f.get(r).externalConnections," no parent: ",!e.parent(r)," children ",e.children(r)&&e.children(r).length>0,e.children("D"),t),s.debug(f);n=e.nodes(),s.warn("New list of nodes",n);for(const r of n){const u=e.node(r);s.warn(" Now next level",r,u),u!=null&&u.clusterNode&&T(u.graph,t+1)}},"extractor"),M=p((e,t)=>{if(t.length===0)return[];let n=Object.assign([],t);return t.forEach(o=>{const c=e.children(o),a=M(e,c);n=[...n,...a]}),n},"sorter"),oe=p(e=>M(e,e.children()),"sortNodesByHierarchy"),j=p(async(e,t,n,o,c,a)=>{s.warn("Graph in recursive render:XAX",E(t),c);const r=t.graph().rankdir;s.trace("Dir in recursive render - dir:",r);const u=e.insert("g").attr("class","root");t.nodes()?s.info("Recursive render XXX",t.nodes()):s.info("No nodes found for",t),t.edges().length>0&&s.info("Recursive edges",t.edge(t.edges()[0]));const l=u.insert("g").attr("class","clusters"),v=u.insert("g").attr("class","edgePaths"),C=u.insert("g").attr("class","edgeLabels"),g=u.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(d){const i=t.node(d);if(c!==void 0){const w=JSON.parse(JSON.stringify(c.clusterData));s.trace(`Setting data for parent cluster XXX
|
|
2
|
-
Node.id = `,d,`
|
|
3
|
-
data=`,w.height,`
|
|
4
|
-
Parent cluster`,c.height),t.setNode(c.id,w),t.parent(d)||(s.trace("Setting parent",d,c.id),t.setParent(d,c.id,w))}if(s.info("(Insert) Node XXX"+d+": "+JSON.stringify(t.node(d))),i!=null&&i.clusterNode){s.info("Cluster identified XBX",d,i.width,t.node(d));const{ranksep:w,nodesep:m}=t.graph();i.graph.setGraph({...i.graph.graph(),ranksep:w+25,nodesep:m});const N=await j(g,i.graph,n,o,t.node(d),a),S=N.elem;z(i,S),i.diff=N.diff||0,s.info("New compound node after recursive render XAX",d,"width",i.width,"height",i.height),U(S,i)}else t.children(d).length>0?(s.trace("Cluster - the non recursive path XBX",d,i.id,i,i.width,"Graph:",t),s.trace(D(i.id,t)),f.set(i.id,{id:D(i.id,t),node:i})):(s.trace("Node - the non recursive path XAX",d,g,t.node(d),r),await $(g,t.node(d),{config:a,dir:r}))})),await p(async()=>{const d=t.edges().map(async function(i){const w=t.edge(i.v,i.w,i.name);s.info("Edge "+i.v+" -> "+i.w+": "+JSON.stringify(i)),s.info("Edge "+i.v+" -> "+i.w+": ",i," ",JSON.stringify(t.edge(i))),s.info("Fix",f,"ids:",i.v,i.w,"Translating: ",f.get(i.v),f.get(i.w)),await Z(C,w)});await Promise.all(d)},"processEdges")(),s.info("Graph before layout:",JSON.stringify(E(t))),s.info("############################################# XXX"),s.info("### Layout ### XXX"),s.info("############################################# XXX"),I(t),s.info("Graph after layout:",JSON.stringify(E(t)));let y=0,{subGraphTitleTotalMargin:X}=q(a);return await Promise.all(oe(t).map(async function(d){var w;const i=t.node(d);if(s.info("Position XBX => "+d+": ("+i.x,","+i.y,") width: ",i.width," height: ",i.height),i!=null&&i.clusterNode)i.y+=X,s.info("A tainted cluster node XBX1",d,i.id,i.width,i.height,i.x,i.y,t.parent(d)),f.get(i.id).node=i,P(i);else if(t.children(d).length>0){s.info("A pure cluster node XBX1",d,i.id,i.x,i.y,i.width,i.height,t.parent(d)),i.height+=X,t.node(i.parentId);const m=(i==null?void 0:i.padding)/2||0,N=((w=i==null?void 0:i.labelBBox)==null?void 0:w.height)||0,S=N-m||0;s.debug("OffsetY",S,"labelHeight",N,"halfPadding",m),await K(l,i),f.get(i.id).node=i}else{const m=t.node(i.parentId);i.y+=X/2,s.info("A regular node XBX1 - using the padding",i.id,"parent",i.parentId,i.width,i.height,i.x,i.y,"offsetY",i.offsetY,"parent",m,m==null?void 0:m.offsetY,i),P(i)}})),t.edges().forEach(function(d){const i=t.edge(d);s.info("Edge "+d.v+" -> "+d.w+": "+JSON.stringify(i),i),i.points.forEach(S=>S.y+=X/2);const w=t.node(d.v);var m=t.node(d.w);const N=Q(v,i,f,n,w,m,o);W(i,N)}),t.nodes().forEach(function(d){const i=t.node(d);s.info(d,i.type,i.diff),i.isGroup&&(y=i.diff)}),s.warn("Returning from recursive render XAX",u,y),{elem:u,diff:y}},"recursiveRender"),xe=p(async(e,t)=>{var a,r,u,l,v,C;const n=new B({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:((a=e.config)==null?void 0:a.nodeSpacing)||((u=(r=e.config)==null?void 0:r.flowchart)==null?void 0:u.nodeSpacing)||e.nodeSpacing,ranksep:((l=e.config)==null?void 0:l.rankSpacing)||((C=(v=e.config)==null?void 0:v.flowchart)==null?void 0:C.rankSpacing)||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),o=t.select("g");F(o,e.markers,e.type,e.diagramId),Y(),_(),H(),te(),e.nodes.forEach(g=>{n.setNode(g.id,{...g}),g.parentId&&n.setParent(g.id,g.parentId)}),s.debug("Edges:",e.edges),e.edges.forEach(g=>{if(g.start===g.end){const h=g.start,y=h+"---"+h+"---1",X=h+"---"+h+"---2",d=n.node(h);n.setNode(y,{domId:y,id:y,parentId:d.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),n.setParent(y,d.parentId),n.setNode(X,{domId:X,id:X,parentId:d.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),n.setParent(X,d.parentId);const i=structuredClone(g),w=structuredClone(g),m=structuredClone(g);i.label="",i.arrowTypeEnd="none",i.id=h+"-cyclic-special-1",w.arrowTypeStart="none",w.arrowTypeEnd="none",w.id=h+"-cyclic-special-mid",m.label="",d.isGroup&&(i.fromCluster=h,m.toCluster=h),m.id=h+"-cyclic-special-2",m.arrowTypeStart="none",n.setEdge(h,y,i,h+"-cyclic-special-0"),n.setEdge(y,X,w,h+"-cyclic-special-1"),n.setEdge(X,h,m,h+"-cyc<lic-special-2")}else n.setEdge(g.start,g.end,{...g},g.id)}),s.warn("Graph at first:",JSON.stringify(E(n))),re(n),s.warn("Graph after XAX:",JSON.stringify(E(n)));const c=V();await j(o,n,e.type,e.diagramId,void 0,c)},"render");export{xe as render};
|
|
5
|
-
//# sourceMappingURL=dagre-OKDRZEBW-DT9ZQRxf.js.map
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import{p as k}from"./chunk-4BMEZGHF-CNL-bCj2.js";import{_ as l,s as R,g as F,t as I,q as _,a as E,b as D,K as G,z,F as y,G as C,H as P,l as H,a1 as V}from"./mermaid.core-q9C-HfFu.js";import{p as W}from"./radar-MK3ICKWK-CENXhI0E.js";import"./mdx-C7imFHZE.js";import"./index-Dsusf_Av.js";import"./misc-2sBiisF5.js";import"./components-5arJTWsS.js";import"./epic-video-CmlkW6Rw.js";import"./index-DLC5u33j.js";import"./tooltip-Bzd6O8vq.js";import"./pe-BShc2dvc.js";import"./online-DZKJk3C2.js";import"./loading-b1FV2pQh.js";import"./user-DNSnhqGn.js";import"./workshop-config-DchzGYJM.js";import"./progress-bar-DgnkQxQw.js";import"./_baseUniq-BOjGYEEK.js";import"./_basePickBy-lB0X5x6U.js";import"./clone-Bj8ANPCv.js";var h={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},w={axes:[],curves:[],options:h},g=structuredClone(w),B=P.radar,j=l(()=>y({...B,...C().radar}),"getConfig"),b=l(()=>g.axes,"getAxes"),q=l(()=>g.curves,"getCurves"),K=l(()=>g.options,"getOptions"),N=l(a=>{g.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),U=l(a=>{g.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:X(t.entries)}))},"setCurves"),X=l(a=>{if(a[0].axis==null)return a.map(e=>e.value);const t=b();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{const r=a.find(s=>{var o;return((o=s.axis)==null?void 0:o.$refText)===e.name});if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),Y=l(a=>{var e,r,s,o,i;const t=a.reduce((n,c)=>(n[c.name]=c,n),{});g.options={showLegend:((e=t.showLegend)==null?void 0:e.value)??h.showLegend,ticks:((r=t.ticks)==null?void 0:r.value)??h.ticks,max:((s=t.max)==null?void 0:s.value)??h.max,min:((o=t.min)==null?void 0:o.value)??h.min,graticule:((i=t.graticule)==null?void 0:i.value)??h.graticule}},"setOptions"),Z=l(()=>{z(),g=structuredClone(w)},"clear"),$={getAxes:b,getCurves:q,getOptions:K,setAxes:N,setCurves:U,setOptions:Y,getConfig:j,clear:Z,setAccTitle:D,getAccTitle:E,setDiagramTitle:_,getDiagramTitle:I,getAccDescription:F,setAccDescription:R},J=l(a=>{k(a,$);const{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),Q={parse:l(async a=>{const t=await W("radar",a);H.debug(t),J(t)},"parse")},tt=l((a,t,e,r)=>{const s=r.db,o=s.getAxes(),i=s.getCurves(),n=s.getOptions(),c=s.getConfig(),d=s.getDiagramTitle(),m=G(t),p=et(m,c),u=n.max??Math.max(...i.map(f=>Math.max(...f.entries))),x=n.min,v=Math.min(c.width,c.height)/2;at(p,o,v,n.ticks,n.graticule),rt(p,o,v,c),M(p,o,i,x,u,n.graticule,c),T(p,i,n.showLegend,c),p.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-c.height/2-c.marginTop)},"draw"),et=l((a,t)=>{const e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,s={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return a.attr("viewbox",`0 0 ${e} ${r}`).attr("width",e).attr("height",r),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),at=l((a,t,e,r,s)=>{if(s==="circle")for(let o=0;o<r;o++){const i=e*(o+1)/r;a.append("circle").attr("r",i).attr("class","radarGraticule")}else if(s==="polygon"){const o=t.length;for(let i=0;i<r;i++){const n=e*(i+1)/r,c=t.map((d,m)=>{const p=2*m*Math.PI/o-Math.PI/2,u=n*Math.cos(p),x=n*Math.sin(p);return`${u},${x}`}).join(" ");a.append("polygon").attr("points",c).attr("class","radarGraticule")}}},"drawGraticule"),rt=l((a,t,e,r)=>{const s=t.length;for(let o=0;o<s;o++){const i=t[o].label,n=2*o*Math.PI/s-Math.PI/2;a.append("line").attr("x1",0).attr("y1",0).attr("x2",e*r.axisScaleFactor*Math.cos(n)).attr("y2",e*r.axisScaleFactor*Math.sin(n)).attr("class","radarAxisLine"),a.append("text").text(i).attr("x",e*r.axisLabelFactor*Math.cos(n)).attr("y",e*r.axisLabelFactor*Math.sin(n)).attr("class","radarAxisLabel")}},"drawAxes");function M(a,t,e,r,s,o,i){const n=t.length,c=Math.min(i.width,i.height)/2;e.forEach((d,m)=>{if(d.entries.length!==n)return;const p=d.entries.map((u,x)=>{const v=2*Math.PI*x/n-Math.PI/2,f=A(u,r,s,c),O=f*Math.cos(v),S=f*Math.sin(v);return{x:O,y:S}});o==="circle"?a.append("path").attr("d",L(p,i.curveTension)).attr("class",`radarCurve-${m}`):o==="polygon"&&a.append("polygon").attr("points",p.map(u=>`${u.x},${u.y}`).join(" ")).attr("class",`radarCurve-${m}`)})}l(M,"drawCurves");function A(a,t,e,r){const s=Math.min(Math.max(a,t),e);return r*(s-t)/(e-t)}l(A,"relativeRadius");function L(a,t){const e=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s<e;s++){const o=a[(s-1+e)%e],i=a[s],n=a[(s+1)%e],c=a[(s+2)%e],d={x:i.x+(n.x-o.x)*t,y:i.y+(n.y-o.y)*t},m={x:n.x-(c.x-i.x)*t,y:n.y-(c.y-i.y)*t};r+=` C${d.x},${d.y} ${m.x},${m.y} ${n.x},${n.y}`}return`${r} Z`}l(L,"closedRoundCurve");function T(a,t,e,r){if(!e)return;const s=(r.width/2+r.marginRight)*3/4,o=-(r.height/2+r.marginTop)*3/4,i=20;t.forEach((n,c)=>{const d=a.append("g").attr("transform",`translate(${s}, ${o+c*i})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${c}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}l(T,"drawLegend");var st={draw:tt},nt=l((a,t)=>{let e="";for(let r=0;r<a.THEME_COLOR_LIMIT;r++){const s=a[`cScale${r}`];e+=`
|
|
2
|
-
.radarCurve-${r} {
|
|
3
|
-
color: ${s};
|
|
4
|
-
fill: ${s};
|
|
5
|
-
fill-opacity: ${t.curveOpacity};
|
|
6
|
-
stroke: ${s};
|
|
7
|
-
stroke-width: ${t.curveStrokeWidth};
|
|
8
|
-
}
|
|
9
|
-
.radarLegendBox-${r} {
|
|
10
|
-
fill: ${s};
|
|
11
|
-
fill-opacity: ${t.curveOpacity};
|
|
12
|
-
stroke: ${s};
|
|
13
|
-
}
|
|
14
|
-
`}return e},"genIndexStyles"),ot=l(a=>{const t=V(),e=C(),r=y(t,e.themeVariables),s=y(r.radar,a);return{themeVariables:r,radarOptions:s}},"buildRadarStyleOptions"),it=l(({radar:a}={})=>{const{themeVariables:t,radarOptions:e}=ot(a);return`
|
|
15
|
-
.radarTitle {
|
|
16
|
-
font-size: ${t.fontSize};
|
|
17
|
-
color: ${t.titleColor};
|
|
18
|
-
dominant-baseline: hanging;
|
|
19
|
-
text-anchor: middle;
|
|
20
|
-
}
|
|
21
|
-
.radarAxisLine {
|
|
22
|
-
stroke: ${e.axisColor};
|
|
23
|
-
stroke-width: ${e.axisStrokeWidth};
|
|
24
|
-
}
|
|
25
|
-
.radarAxisLabel {
|
|
26
|
-
dominant-baseline: middle;
|
|
27
|
-
text-anchor: middle;
|
|
28
|
-
font-size: ${e.axisLabelFontSize}px;
|
|
29
|
-
color: ${e.axisColor};
|
|
30
|
-
}
|
|
31
|
-
.radarGraticule {
|
|
32
|
-
fill: ${e.graticuleColor};
|
|
33
|
-
fill-opacity: ${e.graticuleOpacity};
|
|
34
|
-
stroke: ${e.graticuleColor};
|
|
35
|
-
stroke-width: ${e.graticuleStrokeWidth};
|
|
36
|
-
}
|
|
37
|
-
.radarLegendText {
|
|
38
|
-
text-anchor: start;
|
|
39
|
-
font-size: ${e.legendFontSize}px;
|
|
40
|
-
dominant-baseline: hanging;
|
|
41
|
-
}
|
|
42
|
-
${nt(t,e)}
|
|
43
|
-
`},"styles"),Tt={parser:Q,db:$,renderer:st,styles:it};export{Tt as diagram};
|
|
44
|
-
//# sourceMappingURL=diagram-SSKATNLV-CcKCni9R.js.map
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import{p as w}from"./chunk-4BMEZGHF-CNL-bCj2.js";import{_ as l,s as B,g as S,t as F,q as z,a as P,b as W,F as v,K as T,e as D,z as _,G as A,H as E,l as x}from"./mermaid.core-q9C-HfFu.js";import{p as N}from"./radar-MK3ICKWK-CENXhI0E.js";import"./mdx-C7imFHZE.js";import"./index-Dsusf_Av.js";import"./misc-2sBiisF5.js";import"./components-5arJTWsS.js";import"./epic-video-CmlkW6Rw.js";import"./index-DLC5u33j.js";import"./tooltip-Bzd6O8vq.js";import"./pe-BShc2dvc.js";import"./online-DZKJk3C2.js";import"./loading-b1FV2pQh.js";import"./user-DNSnhqGn.js";import"./workshop-config-DchzGYJM.js";import"./progress-bar-DgnkQxQw.js";import"./_baseUniq-BOjGYEEK.js";import"./_basePickBy-lB0X5x6U.js";import"./clone-Bj8ANPCv.js";var C={packet:[]},h=structuredClone(C),L=E.packet,Y=l(()=>{const t=v({...L,...A().packet});return t.showBits&&(t.paddingY+=10),t},"getConfig"),G=l(()=>h.packet,"getPacket"),H=l(t=>{t.length>0&&h.packet.push(t)},"pushWord"),I=l(()=>{_(),h=structuredClone(C)},"clear"),u={pushWord:H,getPacket:G,getConfig:Y,clear:I,setAccTitle:W,getAccTitle:P,setDiagramTitle:z,getDiagramTitle:F,getAccDescription:S,setAccDescription:B},K=1e4,M=l(t=>{w(t,u);let e=-1,o=[],n=1;const{bitsPerRow:s}=u.getConfig();for(let{start:a,end:r,label:p}of t.blocks){if(r&&r<a)throw new Error(`Packet block ${a} - ${r} is invalid. End must be greater than start.`);if(a!==e+1)throw new Error(`Packet block ${a} - ${r??a} is not contiguous. It should start from ${e+1}.`);for(e=r??a,x.debug(`Packet block ${a} - ${e} with label ${p}`);o.length<=s+1&&u.getPacket().length<K;){const[m,c]=O({start:a,end:r,label:p},n,s);if(o.push(m),m.end+1===n*s&&(u.pushWord(o),o=[],n++),!c)break;({start:a,end:r,label:p}=c)}}u.pushWord(o)},"populate"),O=l((t,e,o)=>{if(t.end===void 0&&(t.end=t.start),t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);return t.end+1<=e*o?[t,void 0]:[{start:t.start,end:e*o-1,label:t.label},{start:e*o,end:t.end,label:t.label}]},"getNextFittingBlock"),q={parse:l(async t=>{const e=await N("packet",t);x.debug(e),M(e)},"parse")},R=l((t,e,o,n)=>{const s=n.db,a=s.getConfig(),{rowHeight:r,paddingY:p,bitWidth:m,bitsPerRow:c}=a,b=s.getPacket(),i=s.getDiagramTitle(),g=r+p,d=g*(b.length+1)-(i?0:r),k=m*c+2,f=T(e);f.attr("viewbox",`0 0 ${k} ${d}`),D(f,d,k,a.useMaxWidth);for(const[$,y]of b.entries())U(f,y,$,a);f.append("text").text(i).attr("x",k/2).attr("y",d-g/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),U=l((t,e,o,{rowHeight:n,paddingX:s,paddingY:a,bitWidth:r,bitsPerRow:p,showBits:m})=>{const c=t.append("g"),b=o*(n+a)+a;for(const i of e){const g=i.start%p*r+1,d=(i.end-i.start+1)*r-s;if(c.append("rect").attr("x",g).attr("y",b).attr("width",d).attr("height",n).attr("class","packetBlock"),c.append("text").attr("x",g+d/2).attr("y",b+n/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(i.label),!m)continue;const k=i.end===i.start,f=b-2;c.append("text").attr("x",g+(k?d/2:0)).attr("y",f).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",k?"middle":"start").text(i.start),k||c.append("text").attr("x",g+d).attr("y",f).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(i.end)}},"drawWord"),X={draw:R},j={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},J=l(({packet:t}={})=>{const e=v(j,t);return`
|
|
2
|
-
.packetByte {
|
|
3
|
-
font-size: ${e.byteFontSize};
|
|
4
|
-
}
|
|
5
|
-
.packetByte.start {
|
|
6
|
-
fill: ${e.startByteColor};
|
|
7
|
-
}
|
|
8
|
-
.packetByte.end {
|
|
9
|
-
fill: ${e.endByteColor};
|
|
10
|
-
}
|
|
11
|
-
.packetLabel {
|
|
12
|
-
fill: ${e.labelColor};
|
|
13
|
-
font-size: ${e.labelFontSize};
|
|
14
|
-
}
|
|
15
|
-
.packetTitle {
|
|
16
|
-
fill: ${e.titleColor};
|
|
17
|
-
font-size: ${e.titleFontSize};
|
|
18
|
-
}
|
|
19
|
-
.packetBlock {
|
|
20
|
-
stroke: ${e.blockStrokeColor};
|
|
21
|
-
stroke-width: ${e.blockStrokeWidth};
|
|
22
|
-
fill: ${e.blockFillColor};
|
|
23
|
-
}
|
|
24
|
-
`},"styles"),bt={parser:q,db:u,renderer:X,styles:J};export{bt as diagram};
|
|
25
|
-
//# sourceMappingURL=diagram-VNBRO52H-DWoRAiqO.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{c as o,j as r}from"./index-Dsusf_Av.js";import{d as e,a as m}from"./misc-2sBiisF5.js";import{D as p}from"./diff-D5_VwPLF.js";import{N as n}from"./nav-chevrons-CV-dpXNR.js";import{u as f,e as c}from"./components-5arJTWsS.js";import"./accordion-CpiLc1m2.js";import"./tooltip-Bzd6O8vq.js";import"./index-BmMpCvYx.js";import"./index-Do-KWT0a.js";import"./mdx-C7imFHZE.js";import"./epic-video-CmlkW6Rw.js";import"./index-DLC5u33j.js";import"./pe-BShc2dvc.js";import"./online-DZKJk3C2.js";import"./loading-b1FV2pQh.js";import"./user-DNSnhqGn.js";import"./workshop-config-DchzGYJM.js";import"./progress-bar-DgnkQxQw.js";import"./revalidation-ws-B0skixgr.js";function W(){const i=f(),[t]=c();new URLSearchParams(t).set("forceFresh","diff");const s=o(),a=e.useSpinDelay(s.state!=="idle",{delay:200,minDuration:200});return r.jsxs("div",{className:m("grid h-full grid-rows-[1fr,auto]",{"cursor-wait opacity-30":a}),children:[r.jsx("div",{className:"overflow-y-auto",children:r.jsx(p,{diff:i.diff,allApps:i.allApps})}),r.jsx("div",{className:"flex h-16 items-center justify-end border-t",children:r.jsx(n,{prev:i.prevLink,next:i.nextLink})})]})}export{W as default};
|
|
2
|
-
//# sourceMappingURL=diff-BKR4usVv.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"diff-BKR4usVv.js","sources":["../../../app/routes/diff.tsx"],"sourcesContent":["import {\n\tgetAppByName,\n\tgetAppDisplayName,\n\tgetApps,\n\tisExerciseStepApp,\n} from '@epic-web/workshop-utils/apps.server'\nimport { getDiffCode } from '@epic-web/workshop-utils/diff.server'\nimport { makeTimings } from '@epic-web/workshop-utils/timing.server'\nimport { type LoaderFunctionArgs } from '@remix-run/node'\nimport { useLoaderData, useNavigation, useSearchParams } from '@remix-run/react'\nimport { useSpinDelay } from 'spin-delay'\nimport { Diff } from '#app/components/diff.tsx'\nimport { NavChevrons } from '#app/components/nav-chevrons.tsx'\nimport { cn } from '#app/utils/misc.tsx'\n\nexport async function loader({ request }: LoaderFunctionArgs) {\n\tconst reqUrl = new URL(request.url)\n\tconst searchParams = reqUrl.searchParams\n\tconst timings = makeTimings('diffLoader')\n\tconst cacheOptions = { request, timings }\n\tconst allAppsFull = await getApps()\n\tconst app1Name = reqUrl.searchParams.get('app1')\n\tconst app2Name = reqUrl.searchParams.get('app2')\n\n\tconst usingDefaultApp1 = !app1Name\n\n\t// defaults to first problem app\n\tconst app1 = app1Name\n\t\t? await getAppByName(app1Name)\n\t\t: allAppsFull.filter(isExerciseStepApp).at(0)\n\n\t// defaults to last exercise step app\n\tconst app2 = app2Name\n\t\t? await getAppByName(app2Name)\n\t\t: allAppsFull.filter(isExerciseStepApp).at(-1)\n\n\tasync function getDiffProp() {\n\t\tif (!app1 || !app2) {\n\t\t\treturn {\n\t\t\t\tapp1: app1?.name,\n\t\t\t\tapp2: app2?.name,\n\t\t\t\tdiffCode: null,\n\t\t\t}\n\t\t}\n\t\tconst diffCode = await getDiffCode(app1, app2, {\n\t\t\t...cacheOptions,\n\t\t\tforceFresh: searchParams.get('forceFresh') === 'diff',\n\t\t}).catch((e) => {\n\t\t\tconsole.error(e)\n\t\t\treturn null\n\t\t})\n\t\treturn {\n\t\t\tapp1: app1.name,\n\t\t\tapp2: app2.name,\n\t\t\tdiffCode,\n\t\t}\n\t}\n\n\tconst allApps = allAppsFull\n\t\t.filter((a, i, ar) => ar.findIndex((b) => a.name === b.name) === i)\n\t\t.map((a) => ({\n\t\t\tdisplayName: getAppDisplayName(a, allAppsFull),\n\t\t\tname: a.name,\n\t\t\ttitle: a.title,\n\t\t\ttype: a.type,\n\t\t}))\n\n\tconst diff = getDiffProp()\n\tconst app1Index = allApps.findIndex((a) => a.name === app1?.name)\n\tconst prevApp1Index = usingDefaultApp1\n\t\t? allApps.length - 2\n\t\t: app1Index === 0\n\t\t\t? -2\n\t\t\t: app1Index - 1\n\tconst prevApp2Index = prevApp1Index + 1\n\tconst nextApp1Index = usingDefaultApp1\n\t\t? 0\n\t\t: app1Index + 1 < allApps.length\n\t\t\t? app1Index + 1\n\t\t\t: -2\n\tconst nextApp2Index = nextApp1Index + 1\n\tconst prevApp1 = allAppsFull[prevApp1Index]?.name\n\tconst prevApp2 = allAppsFull[prevApp2Index]?.name\n\tconst nextApp1 = allAppsFull[nextApp1Index]?.name\n\tconst nextApp2 = allAppsFull[nextApp2Index]?.name\n\tconst prevSearchParams = new URLSearchParams(reqUrl.searchParams)\n\tprevSearchParams.set('app1', prevApp1 ?? '')\n\tprevSearchParams.set('app2', prevApp2 ?? '')\n\tconst nextSearchParams = new URLSearchParams(reqUrl.searchParams)\n\tnextSearchParams.set('app1', nextApp1 ?? '')\n\tnextSearchParams.set('app2', nextApp2 ?? '')\n\treturn {\n\t\tallApps,\n\t\tdiff,\n\t\tprevLink:\n\t\t\tprevApp1 && prevApp2\n\t\t\t\t? { to: `/diff?${prevSearchParams}`, 'aria-label': 'Previous App' }\n\t\t\t\t: { to: '/diff' },\n\t\tnextLink:\n\t\t\tnextApp1 && nextApp2\n\t\t\t\t? { to: `/diff?${nextSearchParams}`, 'aria-label': 'Next App' }\n\t\t\t\t: { to: '/diff' },\n\t}\n}\n\nexport default function DiffViewer() {\n\tconst data = useLoaderData<typeof loader>()\n\tconst [params] = useSearchParams()\n\tconst paramsWithForcedRefresh = new URLSearchParams(params)\n\tparamsWithForcedRefresh.set('forceFresh', 'diff')\n\tconst navigation = useNavigation()\n\tconst isNavigating = useSpinDelay(navigation.state !== 'idle', {\n\t\tdelay: 200,\n\t\tminDuration: 200,\n\t})\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn('grid h-full grid-rows-[1fr,auto]', {\n\t\t\t\t'cursor-wait opacity-30': isNavigating,\n\t\t\t})}\n\t\t>\n\t\t\t<div className=\"overflow-y-auto\">\n\t\t\t\t<Diff diff={data.diff} allApps={data.allApps} />\n\t\t\t</div>\n\t\t\t<div className=\"flex h-16 items-center justify-end border-t\">\n\t\t\t\t<NavChevrons prev={data.prevLink} next={data.nextLink} />\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n"],"names":["DiffViewer","data","useLoaderData","params","useSearchParams","URLSearchParams","set","navigation","useNavigation","isNavigating","useSpinDelay","state","delay","minDuration","jsxs","className","cn","children","jsx","Diff","diff","allApps","NavChevrons","prev","prevLink","next","nextLink"],"mappings":"kpBAyGA,SAAwBA,GAAa,CACpC,MAAMC,EAAOC,EAA6B,EACpC,CAACC,CAAM,EAAIC,EAAgB,EACD,IAAIC,gBAAgBF,CAAM,EAClCG,IAAI,aAAc,MAAM,EAChD,MAAMC,EAAaC,EAAc,EAC3BC,EAAeC,EAAA,aAAaH,EAAWI,QAAU,OAAQ,CAC9DC,MAAO,IACPC,YAAa,GACd,CAAC,EAGA,OAAAC,EAAAA,KAAC,MAAA,CACAC,UAAWC,EAAG,mCAAoC,CACjD,yBAA0BP,CAC3B,CAAC,EAEDQ,SAAA,CAACC,EAAA,IAAA,MAAA,CAAIH,UAAU,kBACdE,SAACC,EAAA,IAAAC,EAAA,CAAKC,KAAMnB,EAAKmB,KAAMC,QAASpB,EAAKoB,OAAS,CAAA,CAC/C,CAAA,EACCH,EAAA,IAAA,MAAA,CAAIH,UAAU,8CACdE,SAACC,EAAA,IAAAI,EAAA,CAAYC,KAAMtB,EAAKuB,SAAUC,KAAMxB,EAAKyB,QAAU,CAAA,CACxD,CAAA,CAAA,CAAA,CACD,CAEF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"diff-D5_VwPLF.js","sources":["../../../app/components/diff.tsx"],"sourcesContent":["import * as Accordion from '@radix-ui/react-accordion'\nimport * as Select from '@radix-ui/react-select'\nimport {\n\tAwait,\n\tForm,\n\tLink,\n\tuseNavigation,\n\tuseSearchParams,\n\tuseSubmit,\n} from '@remix-run/react'\nimport { clsx } from 'clsx'\nimport React, { Suspense } from 'react'\nimport { useSpinDelay } from 'spin-delay'\nimport AccordionComponent from '#app/components/accordion.tsx'\nimport { Mdx } from '#app/utils/mdx.tsx'\nimport { cn } from '#app/utils/misc.tsx'\nimport { useApps } from './apps.tsx'\nimport { DeferredEpicVideo } from './epic-video.tsx'\nimport { Icon } from './icons.tsx'\nimport { useRevalidationWS } from './revalidation-ws.tsx'\nimport { SimpleTooltip } from './ui/tooltip.tsx'\nimport { useUserHasAccess } from './user.tsx'\n\ntype diffProp = {\n\tapp1?: string\n\tapp2?: string\n\tdiffCode?: string | null\n}\n\nconst pre = (props: any) => <pre {...props} />\n\nconst mdxComponents = {\n\tAccordion: AccordionComponent,\n\t// override the pre-with-buttons\n\tpre,\n}\n\nfunction RevalidateApps({\n\tapp1: app1Name,\n\tapp2: app2Name,\n}: {\n\tapp1?: string\n\tapp2?: string\n}) {\n\tconst apps = useApps()\n\tconst app1 = apps.find((app) => app.name === app1Name)\n\tconst app2 = apps.find((app) => app.name === app2Name)\n\n\tuseRevalidationWS({\n\t\twatchPaths: [app1?.fullPath, app2?.fullPath].filter(Boolean),\n\t})\n\treturn null\n}\n\nexport function Diff({\n\tdiff,\n\tallApps,\n}: {\n\tdiff: Promise<diffProp> | diffProp\n\tallApps: Array<{ name: string; displayName: string }>\n}) {\n\tconst userHasAccess = useUserHasAccess()\n\tconst submit = useSubmit()\n\tconst [params] = useSearchParams()\n\tconst paramsWithForcedRefresh = new URLSearchParams(params)\n\tparamsWithForcedRefresh.set('forceFresh', 'diff')\n\tconst navigation = useNavigation()\n\tconst spinnerNavigating = useSpinDelay(navigation.state !== 'idle', {\n\t\tdelay: 0,\n\t\tminDuration: 1000,\n\t})\n\n\tconst hiddenInputs: Array<React.ReactNode> = []\n\tfor (const [key, value] of params.entries()) {\n\t\tif (key === 'app1' || key === 'app2') continue\n\t\thiddenInputs.push(\n\t\t\t<input key={key} type=\"hidden\" name={key} value={value} />,\n\t\t)\n\t}\n\n\tif (!userHasAccess) {\n\t\treturn (\n\t\t\t<div className=\"w-full p-12\">\n\t\t\t\t<div className=\"flex w-full flex-col gap-4 text-center\">\n\t\t\t\t\t<p className=\"text-2xl font-bold\">Access Denied</p>\n\t\t\t\t\t<p className=\"text-lg\">\n\t\t\t\t\t\tYou must login or register for the workshop to view the diff.\n\t\t\t\t\t</p>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"h-16\" />\n\t\t\t\t<p className=\"pb-4\">\n\t\t\t\t\tCheck out this video to see how the diff tab works.\n\t\t\t\t</p>\n\t\t\t\t<DeferredEpicVideo url=\"https://www.epicweb.dev/tips/epic-workshop-diff-tab-demo\" />\n\t\t\t</div>\n\t\t)\n\t}\n\n\treturn (\n\t\t<Suspense\n\t\t\tfallback={\n\t\t\t\t<div className=\"flex items-center justify-center p-8\">\n\t\t\t\t\t<SimpleTooltip content=\"Loading diff\">\n\t\t\t\t\t\t<Icon name=\"Refresh\" className=\"animate-spin\" />\n\t\t\t\t\t</SimpleTooltip>\n\t\t\t\t</div>\n\t\t\t}\n\t\t>\n\t\t\t<Await\n\t\t\t\tresolve={diff}\n\t\t\t\terrorElement={\n\t\t\t\t\t<p className=\"text-foreground-destructive p-6\">\n\t\t\t\t\t\tThere was an error calculating the diff. Sorry.\n\t\t\t\t\t</p>\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{(diff) => (\n\t\t\t\t\t<div className=\"flex h-full w-full flex-col\">\n\t\t\t\t\t\t<div className=\"flex h-14 min-h-14 w-full overflow-x-hidden border-b\">\n\t\t\t\t\t\t\t<div className=\"border-r\">\n\t\t\t\t\t\t\t\t<SimpleTooltip content=\"Reload diff\">\n\t\t\t\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\t\t\t\tto={`.?${paramsWithForcedRefresh}`}\n\t\t\t\t\t\t\t\t\t\tclassName=\"flex h-full w-14 items-center justify-center\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\tname=\"Refresh\"\n\t\t\t\t\t\t\t\t\t\t\tclassName={cn({ 'animate-spin': spinnerNavigating })}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</Link>\n\t\t\t\t\t\t\t\t</SimpleTooltip>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<Form\n\t\t\t\t\t\t\t\tonChange={(e) => submit(e.currentTarget)}\n\t\t\t\t\t\t\t\tclassName=\"flex h-full flex-1 items-center overflow-x-auto scrollbar-thin scrollbar-thumb-scrollbar\"\n\t\t\t\t\t\t\t\tkey={`${diff.app1}${diff.app2}`}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{hiddenInputs}\n\t\t\t\t\t\t\t\t<SelectFileToDiff\n\t\t\t\t\t\t\t\t\tname=\"app1\"\n\t\t\t\t\t\t\t\t\tlabel=\"App 1\"\n\t\t\t\t\t\t\t\t\tclassName=\"border-r\"\n\t\t\t\t\t\t\t\t\tallApps={allApps}\n\t\t\t\t\t\t\t\t\tdefaultValue={diff.app1}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<SelectFileToDiff\n\t\t\t\t\t\t\t\t\tname=\"app2\"\n\t\t\t\t\t\t\t\t\tlabel=\"App 2\"\n\t\t\t\t\t\t\t\t\tallApps={allApps}\n\t\t\t\t\t\t\t\t\tdefaultValue={diff.app2}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Form>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex-grow overflow-y-scroll scrollbar-thin scrollbar-thumb-scrollbar\">\n\t\t\t\t\t\t\t{diff.diffCode ? (\n\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t<Accordion.Root className=\"w-full\" type=\"multiple\">\n\t\t\t\t\t\t\t\t\t\t<Mdx code={diff.diffCode} components={mdxComponents} />\n\t\t\t\t\t\t\t\t\t</Accordion.Root>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) : diff.app1 && diff.app2 ? (\n\t\t\t\t\t\t\t\t<p className=\"m-5 inline-flex items-center justify-center bg-foreground px-1 py-0.5 font-mono text-sm uppercase text-background\">\n\t\t\t\t\t\t\t\t\tThere was a problem generating the diff\n\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<p className=\"m-5 inline-flex items-center justify-center bg-foreground px-1 py-0.5 font-mono text-sm uppercase text-background\">\n\t\t\t\t\t\t\t\t\tSelect two apps to compare\n\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<RevalidateApps app1={diff.app1} app2={diff.app2} />\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Await>\n\t\t</Suspense>\n\t)\n}\n\nfunction SelectFileToDiff({\n\tname,\n\tlabel,\n\tclassName,\n\tallApps,\n\tdefaultValue,\n}: {\n\tname: string\n\tlabel: string\n\tclassName?: string\n\tallApps: Array<{ name: string; displayName: string }>\n\tdefaultValue?: string\n}) {\n\treturn (\n\t\t<Select.Root name={name} defaultValue={defaultValue}>\n\t\t\t<Select.Trigger\n\t\t\t\tclassName={clsx(\n\t\t\t\t\t'flex h-full w-full max-w-[50%] items-center justify-between px-3 text-left radix-placeholder:text-gray-500 focus-visible:outline-none',\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\taria-label={`Select ${label} for git Diff`}\n\t\t\t>\n\t\t\t\t<span className=\"overflow-hidden text-ellipsis whitespace-nowrap\">\n\t\t\t\t\t{label}:{' '}\n\t\t\t\t\t<SelectValue\n\t\t\t\t\t\tplaceholder={`Select ${label}`}\n\t\t\t\t\t\tclassName=\"inline-block w-40 text-ellipsis\"\n\t\t\t\t\t/>\n\t\t\t\t</span>\n\t\t\t\t<Select.Icon className=\"\">\n\t\t\t\t\t<Icon name=\"TriangleDownSmall\" />\n\t\t\t\t</Select.Icon>\n\t\t\t</Select.Trigger>\n\t\t\t<Select.Portal>\n\t\t\t\t<Select.Content\n\t\t\t\t\tposition=\"popper\"\n\t\t\t\t\talign=\"start\"\n\t\t\t\t\tclassName=\"z-20 max-h-[50vh] bg-black text-white lg:max-h-[70vh]\"\n\t\t\t\t>\n\t\t\t\t\t<Select.ScrollUpButton className=\"flex h-5 cursor-default items-center justify-center\">\n\t\t\t\t\t\t<Icon name=\"ChevronUp\" />\n\t\t\t\t\t</Select.ScrollUpButton>\n\t\t\t\t\t<Select.Viewport className=\"p-3\">\n\t\t\t\t\t\t<Select.Group>\n\t\t\t\t\t\t\t<Select.Label className=\"px-5 pb-3 font-mono uppercase\">\n\t\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t\t</Select.Label>\n\t\t\t\t\t\t\t{allApps.map((app) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<SelectItem key={app.name} value={app.name}>\n\t\t\t\t\t\t\t\t\t\t{app.displayName}\n\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</Select.Group>\n\t\t\t\t\t</Select.Viewport>\n\t\t\t\t\t<Select.ScrollDownButton className=\"flex h-5 cursor-default items-center justify-center\">\n\t\t\t\t\t\t<Icon name=\"ChevronDown\" />\n\t\t\t\t\t</Select.ScrollDownButton>\n\t\t\t\t</Select.Content>\n\t\t\t</Select.Portal>\n\t\t</Select.Root>\n\t)\n}\n\nconst SelectItem: React.FC<any> = React.forwardRef(\n\t({ children, className, ...props }, forwardedRef) => {\n\t\treturn (\n\t\t\t<Select.Item\n\t\t\t\tclassName={clsx(\n\t\t\t\t\t'relative flex cursor-pointer select-none items-center rounded px-10 py-2 leading-none opacity-80 radix-disabled:text-red-500 radix-highlighted:opacity-100 radix-highlighted:outline-none radix-state-checked:opacity-100',\n\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t\tref={forwardedRef}\n\t\t\t>\n\t\t\t\t<Select.ItemText>{children}</Select.ItemText>\n\t\t\t\t<Select.ItemIndicator className=\"absolute left-0 inline-flex w-[25px] items-center justify-center\">\n\t\t\t\t\t<Icon name=\"CheckSmall\" />\n\t\t\t\t</Select.ItemIndicator>\n\t\t\t</Select.Item>\n\t\t)\n\t},\n)\n\nconst SelectValue: React.FC<any> = React.forwardRef(\n\t({ children, className, ...props }, forwardedRef) => {\n\t\treturn (\n\t\t\t<Select.Value {...props} ref={forwardedRef}>\n\t\t\t\t{props.value}\n\t\t\t</Select.Value>\n\t\t)\n\t},\n)\n"],"names":["pre","props","jsx","mdxComponents","AccordionComponent","RevalidateApps","app1Name","app2Name","apps","useApps","app1","app","app2","useRevalidationWS","Diff","diff","allApps","userHasAccess","useUserHasAccess","submit","useSubmit","params","useSearchParams","paramsWithForcedRefresh","navigation","useNavigation","spinnerNavigating","useSpinDelay","hiddenInputs","key","value","Suspense","SimpleTooltip","Icon","Await","jsxs","Link","cn","Form","e","SelectFileToDiff","Accordion.Root","Mdx","DeferredEpicVideo","name","label","className","defaultValue","Select.Root","Select.Trigger","clsx","SelectValue","Select.Icon","Select.Portal","Select.Content","Select.ScrollUpButton","Select.Viewport","Select.Group","Select.Label","SelectItem","Select.ScrollDownButton","React","children","forwardedRef","Select.Item","Select.ItemText","Select.ItemIndicator","Select.Value"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as e}from"./index-Dsusf_Av.js";import{I as t}from"./misc-2sBiisF5.js";import{c as i,a as c}from"./user-DNSnhqGn.js";import{u as d}from"./workshop-config-DchzGYJM.js";import{L as s}from"./components-5arJTWsS.js";const f={getSitemapEntries:()=>null};function l(){const{product:{host:r}}=d();return`https://${r}/discord`}function j(){const r=i(),n=c(),o=l();return r?n?"https://discord.com/channels/715220730605731931/1161045224907341972":o:"/login"}function a(){const r=i(),n=c(),o=l();return r?n?e.jsxs("div",{className:"flex items-center justify-center gap-2 text-xl underline",children:[e.jsx(s,{to:"discord://discord.com/channels/715220730605731931/1161045224907341972",children:e.jsx(t,{name:"Discord",size:"2xl"})}),e.jsx(s,{to:"https://discord.com/channels/715220730605731931/1161045224907341972",target:"_blank",rel:"noreferrer noopener",children:"Open Discord"})]}):e.jsxs("div",{className:"flex flex-wrap items-center justify-center gap-2 text-xl",children:[e.jsxs(s,{to:o,className:"flex items-center gap-2 underline",children:[e.jsx(t,{name:"Discord",size:"2xl"}),"Connect Discord"]})," ",e.jsxs("span",{children:["to get access to the exclusive"," ",e.jsx(s,{to:"/discord",className:"underline",children:"discord channel"}),"."]})]}):e.jsxs("div",{className:"flex flex-wrap items-center justify-center gap-2 text-xl",children:[e.jsxs(s,{to:"/login",className:"inline-flex items-center gap-2 underline",children:[e.jsx(t,{name:"Discord",size:"2xl"}),"Login"]})," ",e.jsxs("span",{children:["to get access to the exclusive"," ",e.jsx(s,{to:"/discord",className:"underline",children:"discord channel"}),"."]})]})}function g(){return e.jsxs("div",{className:"container flex h-full max-w-3xl flex-col items-center justify-center gap-4 p-12",children:[e.jsx(a,{}),e.jsxs("p",{children:["The"," ",e.jsx(s,{target:"_blank",rel:"noreferrer noopener",className:"underline",to:"https://kentcdodds.com/discord",children:"Epic Web Community on Discord"})," ","is a great place to hang out with other developers who are working through this workshop. You can ask questions, get help, and solidify what you're learning by helping others."]}),e.jsx("p",{children:e.jsxs("small",{className:"text-sm",children:["If you've not joined the Epic Web Community on Discord yet, you'll be required to go through a short onboarding process first. A friendly bot will explain the process when you"," ",e.jsx(s,{to:"https://kcd.im/discord",target:"_blank",rel:"noreferrer noopener",className:"underline",children:"join"}),"."]})})]})}export{a as D,g as a,f as h,j as u};
|
|
2
|
-
//# sourceMappingURL=discord-BU7RzE6-.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discord-BU7RzE6-.js","sources":["../../../app/routes/_app+/discord.tsx"],"sourcesContent":["import { type SEOHandle } from '@nasa-gcn/remix-seo'\nimport { Link } from '@remix-run/react'\nimport { Icon } from '#app/components/icons.tsx'\nimport {\n\tuseOptionalDiscordMember,\n\tuseOptionalUser,\n} from '#app/components/user.tsx'\nimport { useWorkshopConfig } from '#app/components/workshop-config.tsx'\n\nexport const handle: SEOHandle = {\n\tgetSitemapEntries: () => null,\n}\n\nfunction useConnectDiscordURL() {\n\tconst {\n\t\tproduct: { host },\n\t} = useWorkshopConfig()\n\treturn `https://${host}/discord`\n}\n\nexport function useDiscordCTALink() {\n\tconst user = useOptionalUser()\n\tconst discordMember = useOptionalDiscordMember()\n\tconst connectDiscordURL = useConnectDiscordURL()\n\n\tif (!user) {\n\t\treturn '/login'\n\t}\n\tif (!discordMember) {\n\t\treturn connectDiscordURL\n\t}\n\n\treturn 'https://discord.com/channels/715220730605731931/1161045224907341972'\n}\n\nexport function DiscordCTA() {\n\tconst user = useOptionalUser()\n\tconst discordMember = useOptionalDiscordMember()\n\tconst connectDiscordURL = useConnectDiscordURL()\n\tif (!user) {\n\t\treturn (\n\t\t\t<div className=\"flex flex-wrap items-center justify-center gap-2 text-xl\">\n\t\t\t\t<Link to=\"/login\" className=\"inline-flex items-center gap-2 underline\">\n\t\t\t\t\t<Icon name=\"Discord\" size=\"2xl\" />\n\t\t\t\t\tLogin\n\t\t\t\t</Link>{' '}\n\t\t\t\t<span>\n\t\t\t\t\tto get access to the exclusive{' '}\n\t\t\t\t\t<Link to=\"/discord\" className=\"underline\">\n\t\t\t\t\t\tdiscord channel\n\t\t\t\t\t</Link>\n\t\t\t\t\t.\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t)\n\t}\n\tif (!discordMember) {\n\t\treturn (\n\t\t\t<div className=\"flex flex-wrap items-center justify-center gap-2 text-xl\">\n\t\t\t\t<Link\n\t\t\t\t\tto={connectDiscordURL}\n\t\t\t\t\tclassName=\"flex items-center gap-2 underline\"\n\t\t\t\t>\n\t\t\t\t\t<Icon name=\"Discord\" size=\"2xl\" />\n\t\t\t\t\tConnect Discord\n\t\t\t\t</Link>{' '}\n\t\t\t\t<span>\n\t\t\t\t\tto get access to the exclusive{' '}\n\t\t\t\t\t<Link to=\"/discord\" className=\"underline\">\n\t\t\t\t\t\tdiscord channel\n\t\t\t\t\t</Link>\n\t\t\t\t\t.\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t)\n\t}\n\n\treturn (\n\t\t<div className=\"flex items-center justify-center gap-2 text-xl underline\">\n\t\t\t<Link to=\"discord://discord.com/channels/715220730605731931/1161045224907341972\">\n\t\t\t\t<Icon name=\"Discord\" size=\"2xl\" />\n\t\t\t</Link>\n\t\t\t<Link\n\t\t\t\tto=\"https://discord.com/channels/715220730605731931/1161045224907341972\"\n\t\t\t\ttarget=\"_blank\"\n\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t>\n\t\t\t\tOpen Discord\n\t\t\t</Link>\n\t\t</div>\n\t)\n}\n\nexport default function DiscordRoute() {\n\treturn (\n\t\t<div className=\"container flex h-full max-w-3xl flex-col items-center justify-center gap-4 p-12\">\n\t\t\t<DiscordCTA />\n\t\t\t<p>\n\t\t\t\tThe{' '}\n\t\t\t\t<Link\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\tclassName=\"underline\"\n\t\t\t\t\tto=\"https://kentcdodds.com/discord\"\n\t\t\t\t>\n\t\t\t\t\tEpic Web Community on Discord\n\t\t\t\t</Link>{' '}\n\t\t\t\tis a great place to hang out with other developers who are working\n\t\t\t\tthrough this workshop. You can ask questions, get help, and solidify\n\t\t\t\twhat you're learning by helping others.\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\t<small className=\"text-sm\">\n\t\t\t\t\tIf you've not joined the Epic Web Community on Discord yet, you'll be\n\t\t\t\t\trequired to go through a short onboarding process first. A friendly\n\t\t\t\t\tbot will explain the process when you{' '}\n\t\t\t\t\t<Link\n\t\t\t\t\t\tto=\"https://kcd.im/discord\"\n\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\tclassName=\"underline\"\n\t\t\t\t\t>\n\t\t\t\t\t\tjoin\n\t\t\t\t\t</Link>\n\t\t\t\t\t.\n\t\t\t\t</small>\n\t\t\t</p>\n\t\t</div>\n\t)\n}\n"],"names":["handle","getSitemapEntries","useConnectDiscordURL","product","host","useWorkshopConfig","useDiscordCTALink","user","useOptionalUser","discordMember","useOptionalDiscordMember","connectDiscordURL","DiscordCTA","jsxs","className","children","jsx","Link","to","Icon","name","size","target","rel","DiscordRoute"],"mappings":"4NASO,MAAMA,EAAoB,CAChCC,kBAAmBA,IAAM,IAC1B,EAEA,SAASC,GAAuB,CACzB,KAAA,CACLC,QAAS,CAAEC,KAAAA,CAAK,GACbC,EAAkB,EACtB,MAAO,WAAWD,CAAI,UACvB,CAEO,SAASE,GAAoB,CACnC,MAAMC,EAAOC,EAAgB,EACvBC,EAAgBC,EAAyB,EACzCC,EAAoBT,EAAqB,EAE/C,OAAKK,EAGAE,EAIE,sEAHCE,EAHA,QAOT,CAEO,SAASC,GAAa,CAC5B,MAAML,EAAOC,EAAgB,EACvBC,EAAgBC,EAAyB,EACzCC,EAAoBT,EAAqB,EAC/C,OAAKK,EAiBAE,EAsBJI,EAAAA,KAAC,MAAI,CAAAC,UAAU,2DACdC,SAAA,CAACC,EAAA,IAAAC,EAAA,CAAKC,GAAG,wEACRH,SAAAC,EAAA,IAACG,GAAKC,KAAK,UAAUC,KAAK,KAAM,CAAA,CACjC,CAAA,EACAL,EAAA,IAACC,EAAA,CACAC,GAAG,sEACHI,OAAO,SACPC,IAAI,sBACJR,SAAA,cAAA,CAED,CAAA,CACD,CAAA,EA/BCF,EAAAA,KAAC,MAAI,CAAAC,UAAU,2DACdC,SAAA,CAAAF,EAAA,KAACI,EAAA,CACAC,GAAIP,EACJG,UAAU,oCAEVC,SAAA,CAAAC,EAAA,IAACG,EAAK,CAAAC,KAAK,UAAUC,KAAK,KAAM,CAAA,EAAE,iBAAA,EAEnC,EAAQ,WACP,OAAK,CAAAN,SAAA,CAAA,iCAC0B,UAC9BE,EAAK,CAAAC,GAAG,WAAWJ,UAAU,YAAYC,SAE1C,iBAAA,CAAA,EAAO,GAAA,CAER,CAAA,CAAA,CACD,CAAA,EAhCAF,EAAAA,KAAC,MAAI,CAAAC,UAAU,2DACdC,SAAA,CAAAF,EAAA,KAACI,EAAK,CAAAC,GAAG,SAASJ,UAAU,2CAC3BC,SAAA,CAAAC,EAAA,IAACG,EAAK,CAAAC,KAAK,UAAUC,KAAK,KAAM,CAAA,EAAE,OAAA,EAEnC,EAAQ,WACP,OAAK,CAAAN,SAAA,CAAA,iCAC0B,UAC9BE,EAAK,CAAAC,GAAG,WAAWJ,UAAU,YAAYC,SAE1C,iBAAA,CAAA,EAAO,GAAA,CAER,CAAA,CAAA,CACD,CAAA,CAsCH,CAEA,SAAwBS,GAAe,CAErC,OAAAX,EAAAA,KAAC,MAAI,CAAAC,UAAU,kFACdC,SAAA,CAAAC,EAAAA,IAACJ,EAAW,CAAA,CAAA,SACX,IAAE,CAAAG,SAAA,CAAA,MACE,IACJC,EAAAA,IAACC,EAAA,CACAK,OAAO,SACPC,IAAI,sBACJT,UAAU,YACVI,GAAG,iCACHH,SAAA,+BAAA,CAED,EAAQ,IAAI,iLAAA,CAIb,CAAA,EACCC,EAAA,IAAA,IAAA,CACAD,SAACF,EAAA,KAAA,QAAA,CAAMC,UAAU,UAAUC,SAAA,CAAA,kLAGY,IACtCC,EAAAA,IAACC,EAAA,CACAC,GAAG,yBACHI,OAAO,SACPC,IAAI,sBACJT,UAAU,YACVC,SAAA,MAED,CAAA,EAAO,GAAA,CAER,CAAA,CACD,CAAA,CAAA,CACD,CAAA,CAEF"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as e,h as d}from"./discord-BU7RzE6-.js";import"./index-Dsusf_Av.js";import"./misc-2sBiisF5.js";import"./components-5arJTWsS.js";import"./user-DNSnhqGn.js";import"./workshop-config-DchzGYJM.js";export{e as default,d as handle};
|
|
2
|
-
//# sourceMappingURL=discord-ut4t-aMQ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discord-ut4t-aMQ.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|