ryugi-artifacts 1.43.0 → 1.44.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/dist/cli.cjs +662 -335
- package/dist/server.cjs +128 -80
- package/dist/viewer/{ArtboardLayout-7_rmu60e.js → ArtboardLayout-v5QCVEaH.js} +1 -1
- package/dist/viewer/{ArtifactList-CC5-1ZFP.js → ArtifactList-mxXh57SU.js} +1 -1
- package/dist/viewer/{AutoPublishPrompt-B2D53_Kz.js → AutoPublishPrompt-COIe6yz0.js} +1 -1
- package/dist/viewer/{Canvas-13klENDh.js → Canvas-DIlI-OTY.js} +1 -1
- package/dist/viewer/{DocumentLayout-DZ-2_UTn.js → DocumentLayout-CarX1EiV.js} +2 -2
- package/dist/viewer/{DocumentPage-BcgERMV0.js → DocumentPage-BgoMJYd6.js} +1 -1
- package/dist/viewer/{HtmlLayout-CtlWM446.js → HtmlLayout-BmYAOIJ4.js} +1 -1
- package/dist/viewer/{MenuRoot-CwCVByOp.js → MenuRoot-CCLU8wQR.js} +1 -1
- package/dist/viewer/{PopoverPopup-BA537pRU.js → PopoverPopup-By2qMtdn.js} +1 -1
- package/dist/viewer/{PreviewLayout-C5OKA9J4.js → PreviewLayout-Dzkz7UOF.js} +2 -2
- package/dist/viewer/{Select-D2-94UGe.js → Select-CpRtuH5I.js} +1 -1
- package/dist/viewer/{SnapshotDocument-kHyl0dKv.js → SnapshotDocument-D0Lkq1g9.js} +1 -1
- package/dist/viewer/{ThreadView-Qlz9Ufo7.js → ThreadView-CmAxKSZ7.js} +1 -1
- package/dist/viewer/{TooltipPopup-Cpm4Cwxn.js → TooltipPopup-CdpS4tTR.js} +1 -1
- package/dist/viewer/{WarningsBadge-BtRPiCiS.js → WarningsBadge-xIuKcdGp.js} +1 -1
- package/dist/viewer/{abnfDiagram-VCTEODGH-Cc589tRO.js → abnfDiagram-VCTEODGH-vYXwOi2L.js} +1 -1
- package/dist/viewer/{ar-SA-G6X2FPQ2-qNPFpNYG.js → ar-SA-G6X2FPQ2-9GXzPlrK.js} +1 -1
- package/dist/viewer/{architecture-7GRP2DOG-BizmpjHH.js → architecture-7GRP2DOG-Dy3GJfSN.js} +1 -1
- package/dist/viewer/{architectureDiagram-5GKGNRK7-BuHdaFmM.js → architectureDiagram-5GKGNRK7-1EQ6eTro.js} +1 -1
- package/dist/viewer/{az-AZ-76LH7QW2-CbXvPy4A.js → az-AZ-76LH7QW2-B6E08k0L.js} +1 -1
- package/dist/viewer/{bg-BG-XCXSNQG7-DcRkeEZa.js → bg-BG-XCXSNQG7-CT75Hh8J.js} +1 -1
- package/dist/viewer/{blockDiagram-I7D4REHJ-BjZAhqNZ.js → blockDiagram-I7D4REHJ-Bots_bLJ.js} +1 -1
- package/dist/viewer/{bn-BD-2XOGV67Q-CYG0oQ07.js → bn-BD-2XOGV67Q-CdBG2RJk.js} +1 -1
- package/dist/viewer/{c4Diagram-7LVT6UL2-Dw9Lqcc4.js → c4Diagram-7LVT6UL2-C7DksWh5.js} +1 -1
- package/dist/viewer/{ca-ES-6MX7JW3Y-DZg7oXog.js → ca-ES-6MX7JW3Y-DDc1wD41.js} +1 -1
- package/dist/viewer/channel-ByZrhKcD.js +1 -0
- package/dist/viewer/{channel-CgSk2sDt.js → channel-CK8VjRfv.js} +4 -4
- package/dist/viewer/{chunk-4HAMMTFA-CmIOM_4n.js → chunk-4HAMMTFA-CFwFBnb7.js} +1 -1
- package/dist/viewer/{chunk-75Z2AOVW-Bk3gHz3u.js → chunk-75Z2AOVW-Ckcf4HXf.js} +1 -1
- package/dist/viewer/{chunk-DU6HZSFF-Z871Xxjd.js → chunk-DU6HZSFF-DSkKm1Sg.js} +1 -1
- package/dist/viewer/{chunk-EIO257PC-BowPlGMj.js → chunk-EIO257PC-Cp5jHH2B.js} +1 -1
- package/dist/viewer/{chunk-F27PBJKO-Da_Uy85s.js → chunk-F27PBJKO-CGR7FwkE.js} +1 -1
- package/dist/viewer/{chunk-GMAD6QVW-D99eqSu1.js → chunk-GMAD6QVW-CrVyThKY.js} +1 -1
- package/dist/viewer/{chunk-GVQU2GXP-DpHE-JHS.js → chunk-GVQU2GXP-DeN7DWg4.js} +1 -1
- package/dist/viewer/{chunk-IMKFNOWR-DNlzjXm8.js → chunk-IMKFNOWR-fh_OFrpb.js} +1 -1
- package/dist/viewer/{chunk-L3NEJ4N5-CwGjxbjF.js → chunk-L3NEJ4N5-B5ku2yKH.js} +1 -1
- package/dist/viewer/{chunk-OSK3NFVY-B4adwKZF.js → chunk-OSK3NFVY-BZxVtLcj.js} +1 -1
- package/dist/viewer/{chunk-P2QGCYS3-CR8elxW8.js → chunk-P2QGCYS3-vj5npGX4.js} +1 -1
- package/dist/viewer/{chunk-POPQ4Y6H-D5X5fYtJ.js → chunk-POPQ4Y6H-y6gZTjTL.js} +1 -1
- package/dist/viewer/{chunk-PWAF6VOD-C52ljaIH.js → chunk-PWAF6VOD-C5U8QIrG.js} +1 -1
- package/dist/viewer/{chunk-SHT3W25Y-Bqd2yIYA.js → chunk-SHT3W25Y-CrNt-vdk.js} +1 -1
- package/dist/viewer/{chunk-SVP7TREG-B-2E6atr.js → chunk-SVP7TREG-B4H37B9Z.js} +1 -1
- package/dist/viewer/{chunk-TICWLB2K-C4hY4B9O.js → chunk-TICWLB2K-DYoGsdJA.js} +1 -1
- package/dist/viewer/classDiagram-ZZMXUADV-G09oZdI0.js +1 -0
- package/dist/viewer/classDiagram-v2-VYDZK3BY-G09oZdI0.js +1 -0
- package/dist/viewer/{cs-CZ-2BRQDIVT-DmUu99ZE.js → cs-CZ-2BRQDIVT-DgBiVbuw.js} +1 -1
- package/dist/viewer/{cynefin-OW5HDTMX-CNpCyJlF.js → cynefin-OW5HDTMX-bvMkVO6w.js} +1 -1
- package/dist/viewer/{cynefinDiagram-5FMLGOSQ-D_E8exI5.js → cynefinDiagram-5FMLGOSQ-CjPrZzrG.js} +1 -1
- package/dist/viewer/{da-DK-5WZEPLOC-DrcqQnR5.js → da-DK-5WZEPLOC-D-yGNnLN.js} +1 -1
- package/dist/viewer/{dagre-GXQ25YYZ-B-hQNnoj.js → dagre-GXQ25YYZ-CuRrD3a3.js} +1 -1
- package/dist/viewer/{de-DE-XR44H4JA-BwGQ1Bu3.js → de-DE-XR44H4JA-Bgx9Q_D-.js} +1 -1
- package/dist/viewer/{diagram-S7CK7UJ4-DyrrPPnW.js → diagram-S7CK7UJ4-d9huVCZC.js} +1 -1
- package/dist/viewer/{diagram-UQ7AKVKN-DFdvde_8.js → diagram-UQ7AKVKN-Dw0NgQU7.js} +1 -1
- package/dist/viewer/{diagram-VSXAHHWV-BDdvfK3v.js → diagram-VSXAHHWV-BO48ZPAa.js} +1 -1
- package/dist/viewer/{diagram-VX7I27RA-Bv2wKJgk.js → diagram-VX7I27RA-CjjLbqAT.js} +1 -1
- package/dist/viewer/{diagram-Z3DM3KII-DVbVVBJH.js → diagram-Z3DM3KII-CqSQfWgq.js} +1 -1
- package/dist/viewer/{dist-DL1gyV3R.js → dist-96ICyKY0.js} +1 -1
- package/dist/viewer/{dist-DRMtu_-x.js → dist-BICCa23f.js} +1 -1
- package/dist/viewer/{dist-gv6IdArU.js → dist-BQJ_hgBh.js} +1 -1
- package/dist/viewer/{dist-DJjmFLDp.js → dist-BdwcfhMg.js} +1 -1
- package/dist/viewer/{dist-nHjoUtlT.js → dist-BohmHXvo.js} +1 -1
- package/dist/viewer/{dist-Cp67yPvp.js → dist-Bq5yGCvS.js} +1 -1
- package/dist/viewer/{dist-BpMGGlEV.js → dist-Bsxu0shl.js} +4 -4
- package/dist/viewer/{dist-C1no3jCb.js → dist-C8DkAQYd.js} +1 -1
- package/dist/viewer/{dist-B_G83rKD.js → dist-CACUOSsz.js} +1 -1
- package/dist/viewer/{dist-3KIsZmwj.js → dist-CFmM2XV7.js} +1 -1
- package/dist/viewer/{dist-C-Ceo6Fq.js → dist-CGDckSlK.js} +1 -1
- package/dist/viewer/{dist-BLMq_PiX.js → dist-CNKIbzP5.js} +1 -1
- package/dist/viewer/{dist-CLaYa349.js → dist-CoNkk-jP.js} +1 -1
- package/dist/viewer/{dist-DDjqhgMa.js → dist-Ct9Rv4Nb.js} +1 -1
- package/dist/viewer/{dist-Cs9q7OJl.js → dist-DFqgUaXc.js} +1 -1
- package/dist/viewer/{dist-Dril0ai0.js → dist-DHvxE90p.js} +1 -1
- package/dist/viewer/{dist-BfMsz_Mq.js → dist-DRVN9BoJ.js} +1 -1
- package/dist/viewer/{dist-Ks19j7-h.js → dist-DbTvrrue.js} +1 -1
- package/dist/viewer/{dist-DJtATNMP.js → dist-DeTBwAKa.js} +1 -1
- package/dist/viewer/{dist-BqBGd2fX.js → dist-DwmGeZQ2.js} +1 -1
- package/dist/viewer/{dist-Dbb4bImq.js → dist-PKCsW6uh.js} +1 -1
- package/dist/viewer/{dist-DpiVIFsv.js → dist-f6pfIPrl.js} +1 -1
- package/dist/viewer/{dist-2N6kKX64.js → dist-iWGU90nm.js} +1 -1
- package/dist/viewer/{dist-b6M4YQd0.js → dist-tEmP_1dP.js} +1 -1
- package/dist/viewer/{ebnfDiagram-PWID7BFC-BPZEgIKG.js → ebnfDiagram-PWID7BFC-DUuSLOwC.js} +1 -1
- package/dist/viewer/{el-GR-BZB4AONW-BHX9PTvB.js → el-GR-BZB4AONW-DBGnJY6B.js} +1 -1
- package/dist/viewer/{en-B4ZKOASM-ChdJoy_X.js → en-B4ZKOASM-ChYtA4ee.js} +1 -1
- package/dist/viewer/{erDiagram-RLTQ6QDP-teAVgmCA.js → erDiagram-RLTQ6QDP-6atcXUph.js} +1 -1
- package/dist/viewer/{es-ES-U4NZUMDT-DGRmVt9a.js → es-ES-U4NZUMDT-CktGk8Tg.js} +1 -1
- package/dist/viewer/{eu-ES-A7QVB2H4-6SSWUUs4.js → eu-ES-A7QVB2H4-CFlNXwf5.js} +1 -1
- package/dist/viewer/{eventmodeling-NTZA5JFV-B1I1Mylr.js → eventmodeling-NTZA5JFV-C5ZVZEiz.js} +1 -1
- package/dist/viewer/{fa-IR-HGAKTJCU-B_-FrT72.js → fa-IR-HGAKTJCU-CQRMDqXN.js} +1 -1
- package/dist/viewer/{fi-FI-Z5N7JZ37-C7SiOzZ-.js → fi-FI-Z5N7JZ37-CHKM1WB9.js} +1 -1
- package/dist/viewer/flowDiagram-HODETNUW-B9-KDJxc.js +1 -0
- package/dist/viewer/{fr-FR-RHASNOE6-B_QvfKMB.js → fr-FR-RHASNOE6-CUyuT7p6.js} +1 -1
- package/dist/viewer/{ganttDiagram-EL5Y4UJY-BMv_Q37E.js → ganttDiagram-EL5Y4UJY-DD2E-HAj.js} +1 -1
- package/dist/viewer/{gitGraph-4MIJSDKK-Bu1dbHFU.js → gitGraph-4MIJSDKK-BLvljQme.js} +1 -1
- package/dist/viewer/{gitGraphDiagram-WWUBYQGX-DUZ8_32F.js → gitGraphDiagram-WWUBYQGX-B0qzhOb6.js} +1 -1
- package/dist/viewer/{gl-ES-HMX3MZ6V-CmXVsVrw.js → gl-ES-HMX3MZ6V-CwJG5tWR.js} +1 -1
- package/dist/viewer/{he-IL-6SHJWFNN-8kv-3A3Y.js → he-IL-6SHJWFNN-_DosmhM7.js} +1 -1
- package/dist/viewer/{hi-IN-IWLTKZ5I-CvpAemRq.js → hi-IN-IWLTKZ5I-CrW9_EjK.js} +1 -1
- package/dist/viewer/{hu-HU-A5ZG7DT2-DOiAQ3qh.js → hu-HU-A5ZG7DT2-Dczvo59m.js} +1 -1
- package/dist/viewer/{id-ID-SAP4L64H-BK_k3fGY.js → id-ID-SAP4L64H-iSPag4VQ.js} +1 -1
- package/dist/viewer/{image-GAAHSSAO-WbKWFRU6.js → image-GAAHSSAO-BVJuAdML.js} +1 -1
- package/dist/viewer/{imperative-DfjHJwB9.js → imperative-_CkvZv3L.js} +1 -1
- package/dist/viewer/index.html +3 -3
- package/dist/viewer/index.js +3 -3
- package/dist/viewer/{info-A6RAGUB7-BVW83dCy.js → info-A6RAGUB7-Bhn0w0ii.js} +1 -1
- package/dist/viewer/{infoDiagram-27XIBGKW-C7TxtcWL.js → infoDiagram-27XIBGKW-BVSbmxC-.js} +1 -1
- package/dist/viewer/{ishikawaDiagram-5VMMS53U-BT-yQVRc.js → ishikawaDiagram-5VMMS53U-DdsbHCoI.js} +1 -1
- package/dist/viewer/{it-IT-JPQ66NNP-BNsEQmLq.js → it-IT-JPQ66NNP-8-_iFasU.js} +1 -1
- package/dist/viewer/{itemEquality-Dx2kxFQI.js → itemEquality-C3XfrMi2.js} +1 -1
- package/dist/viewer/{ja-JP-DBVTYXUO-jEL5Zohm.js → ja-JP-DBVTYXUO-irdMOHqC.js} +1 -1
- package/dist/viewer/{journeyDiagram-3NMN7TZE-D56mmWU7.js → journeyDiagram-3NMN7TZE-Cse6N-5p.js} +1 -1
- package/dist/viewer/{kaa-6HZHGXH3-B6pyJXZH.js → kaa-6HZHGXH3-DSu-PtX5.js} +1 -1
- package/dist/viewer/{kab-KAB-ZGHBKWFO-CLlf3rfz.js → kab-KAB-ZGHBKWFO-Bjc7u2yG.js} +1 -1
- package/dist/viewer/{kanban-definition-UXKFOSKX-hi8MCy0F.js → kanban-definition-UXKFOSKX-CdmNcOy5.js} +1 -1
- package/dist/viewer/{kk-KZ-P5N5QNE5-D-GnQDUN.js → kk-KZ-P5N5QNE5-CjQwQASw.js} +1 -1
- package/dist/viewer/{km-KH-HSX4SM5Z-CvlRaq6r.js → km-KH-HSX4SM5Z-CMslZbL1.js} +1 -1
- package/dist/viewer/{ko-KR-MTYHY66A-mYkZX31W.js → ko-KR-MTYHY66A-DBdzdGrw.js} +1 -1
- package/dist/viewer/{ku-TR-6OUDTVRD-CeXiI7eX.js → ku-TR-6OUDTVRD-C3zBzgJI.js} +1 -1
- package/dist/viewer/{lt-LT-XHIRWOB4-DNl9HTRS.js → lt-LT-XHIRWOB4-DWVw-ffO.js} +1 -1
- package/dist/viewer/{lv-LV-5QDEKY6T-_QejX_-F.js → lv-LV-5QDEKY6T-Zl3V2KMV.js} +1 -1
- package/dist/viewer/{mermaid-parser.core-8H71iLKg.js → mermaid-parser.core-CJFJTtR4.js} +3 -3
- package/dist/viewer/{mindmap-definition-YA3MSWOX-DDgO7tS-.js → mindmap-definition-YA3MSWOX-9mWYfj6-.js} +1 -1
- package/dist/viewer/{mr-IN-CRQNXWMA-OIHNnnu8.js → mr-IN-CRQNXWMA-D9aX0Bdo.js} +1 -1
- package/dist/viewer/{my-MM-5M5IBNSE-DYrw8pYH.js → my-MM-5M5IBNSE-SPXzrrJR.js} +1 -1
- package/dist/viewer/{nb-NO-T6EIAALU-DMd3Sg5d.js → nb-NO-T6EIAALU-C8h-KZrY.js} +1 -1
- package/dist/viewer/{nl-NL-IS3SIHDZ-D9AJQvsb.js → nl-NL-IS3SIHDZ-BflXY5YN.js} +1 -1
- package/dist/viewer/{nn-NO-6E72VCQL-DNeLg3d9.js → nn-NO-6E72VCQL-CFWc1uPu.js} +1 -1
- package/dist/viewer/{oc-FR-POXYY2M6-D6JMp-_j.js → oc-FR-POXYY2M6-BHz8giUr.js} +1 -1
- package/dist/viewer/{pa-IN-N4M65BXN-g5Vjsxo8.js → pa-IN-N4M65BXN-KYWN5LeG.js} +1 -1
- package/dist/viewer/{packet-AYTQ26CC-Dgk7eBb9.js → packet-AYTQ26CC-DrNZHDt7.js} +1 -1
- package/dist/viewer/{pegDiagram-XKGWAZYB-CVIwfqJt.js → pegDiagram-XKGWAZYB-DPszelm4.js} +1 -1
- package/dist/viewer/percentages-BXMCSKIN-BgOWZqvL.js +1 -0
- package/dist/viewer/{pie-WAS4IAKB-DS_tuosA.js → pie-WAS4IAKB-J0UiOL4B.js} +1 -1
- package/dist/viewer/{pieDiagram-E7YTZNPT-4vQIT90F.js → pieDiagram-E7YTZNPT-ClDIExzM.js} +1 -1
- package/dist/viewer/{pl-PL-T2D74RX3-CHeYNLpa.js → pl-PL-T2D74RX3-DhMivhiU.js} +1 -1
- package/dist/viewer/preview.html +4 -4
- package/dist/viewer/preview.js +1 -1
- package/dist/viewer/{prod-DiBc1897.js → prod-itzLn3X0.js} +8 -8
- package/dist/viewer/{pt-BR-5N22H2LF-taNFaSz0.js → pt-BR-5N22H2LF-gkkaKj42.js} +1 -1
- package/dist/viewer/{pt-PT-UZXXM6DQ-CsmK_jBH.js → pt-PT-UZXXM6DQ-NWnJTvgF.js} +1 -1
- package/dist/viewer/{quadrantDiagram-AXDQQJYC-BeirbPa5.js → quadrantDiagram-AXDQQJYC-CYy8PwM3.js} +1 -1
- package/dist/viewer/{radar-RG4KPBEZ-BsCRiS0D.js → radar-RG4KPBEZ-DQrCAAlO.js} +1 -1
- package/dist/viewer/{railroad-74A4TZTK--zO8tvea.js → railroad-74A4TZTK-Bie2KVo4.js} +1 -1
- package/dist/viewer/{railroad-abnf-HS5TGJTU-BZWetNTH.js → railroad-abnf-HS5TGJTU-CqHzfM_H.js} +1 -1
- package/dist/viewer/{railroad-ebnf-LZEXJU2U-Bdr-nXDi.js → railroad-ebnf-LZEXJU2U-Ba93pI_q.js} +1 -1
- package/dist/viewer/{railroad-peg-WCYAUIDC-5QbqtFhr.js → railroad-peg-WCYAUIDC-oFmY9M6i.js} +1 -1
- package/dist/viewer/{railroadDiagram-O6MQD6OU-CEc9eC2b.js → railroadDiagram-O6MQD6OU-Bl287Huh.js} +1 -1
- package/dist/viewer/{requirementDiagram-BXWQKSXE-gHO3OQpd.js → requirementDiagram-BXWQKSXE-C7qjeIWt.js} +1 -1
- package/dist/viewer/{ro-RO-JPDTUUEW-URJMRk3q.js → ro-RO-JPDTUUEW-Ci-CRtV_.js} +1 -1
- package/dist/viewer/{ru-RU-B4JR7IUQ-DI6p8dtR.js → ru-RU-B4JR7IUQ-BPm31ic_.js} +1 -1
- package/dist/viewer/{sankeyDiagram-P5KCCOFB-BKwmk90Q.js → sankeyDiagram-P5KCCOFB-CSV23yCW.js} +1 -1
- package/dist/viewer/{selection-BUarVaVG.js → selection-DiNkp8_u.js} +1 -1
- package/dist/viewer/{sequenceDiagram-WJ2MYXX4-DNRtNYaC.js → sequenceDiagram-WJ2MYXX4-BbxTUdX6.js} +1 -1
- package/dist/viewer/{si-LK-N5RQ5JYF-CC3Wbwwt.js → si-LK-N5RQ5JYF-7zJDxmel.js} +1 -1
- package/dist/viewer/{sk-SK-C5VTKIMK-D4qIYJZm.js → sk-SK-C5VTKIMK-BNbR9mTT.js} +1 -1
- package/dist/viewer/{sl-SI-NN7IZMDC-BrX9Kjyd.js → sl-SI-NN7IZMDC-Dzy-6Up_.js} +1 -1
- package/dist/viewer/{stateDiagram-D77RDMKH-DFHhwDaw.js → stateDiagram-D77RDMKH-hpVLVGhL.js} +1 -1
- package/dist/viewer/stateDiagram-v2-MP3YSRHH-BH2KXEBo.js +1 -0
- package/dist/viewer/subset-shared.chunk-Czwfa2VQ.js +1 -0
- package/dist/viewer/{subset-worker.chunk-D_1PjTiM.js → subset-worker.chunk-Dgy8sQUD.js} +1 -1
- package/dist/viewer/{sv-SE-XGPEYMSR-CrLXWvFy.js → sv-SE-XGPEYMSR-C5bggny3.js} +1 -1
- package/dist/viewer/{swimlanes-42K2YHIH-DzGUJWU-.js → swimlanes-42K2YHIH-BRqXz7nV.js} +1 -1
- package/dist/viewer/swimlanesDiagram-VR7AAH4N-Blx0nEYQ.js +8 -0
- package/dist/viewer/{ta-IN-2NMHFXQM-BjEs1VFY.js → ta-IN-2NMHFXQM-Pw1wRofq.js} +1 -1
- package/dist/viewer/{th-TH-HPSO5L25-Cg6PzVXI.js → th-TH-HPSO5L25-Nz-UqtdD.js} +1 -1
- package/dist/viewer/{timeline-definition-24CTP7MA-CIpmMJhg.js → timeline-definition-24CTP7MA-Dp3nP8rd.js} +1 -1
- package/dist/viewer/{tr-TR-DEFEU3FU-DCEAv9nq.js → tr-TR-DEFEU3FU-DTlGCmld.js} +1 -1
- package/dist/viewer/{treeView-Q6P3EWNA-DHjfLsjZ.js → treeView-Q6P3EWNA-z3dPnkjZ.js} +1 -1
- package/dist/viewer/{treemap-WGGIJYW6-COOVf8-Y.js → treemap-WGGIJYW6-DeaU4Gxo.js} +1 -1
- package/dist/viewer/{type-icons-BonbxUGw.js → type-icons-BhI8cIWS.js} +1 -1
- package/dist/viewer/{uk-UA-QMV73CPH-DMWYOkg6.js → uk-UA-QMV73CPH-Bx9vPanC.js} +1 -1
- package/dist/viewer/useSystemTheme-Dzqcdh-y.js +64 -0
- package/dist/viewer/{useTranslation-Ci5tOdAN.js → useTranslation-B4Q9Bc_u.js} +1 -1
- package/dist/viewer/{useTypeFavicon-B--Z-Uwv.js → useTypeFavicon-B01CcUw4.js} +1 -1
- package/dist/viewer/{vennDiagram-4TSXK5OY-BWDC-eE0.js → vennDiagram-4TSXK5OY-B2g-6QAa.js} +1 -1
- package/dist/viewer/{vi-VN-M7AON7JQ-CVj2nFN-.js → vi-VN-M7AON7JQ-DvU5fCQK.js} +1 -1
- package/dist/viewer/{view-D0Odcpdb.js → view-R1KProyl.js} +1 -1
- package/dist/viewer/{wardley-WFR3VGLG-CDlPWlPO.js → wardley-WFR3VGLG-hhWao6Ek.js} +1 -1
- package/dist/viewer/{wardleyDiagram-VM6X3IG4-C9yxtxg6.js → wardleyDiagram-VM6X3IG4-pFu6p_Rn.js} +1 -1
- package/dist/viewer/{xychartDiagram-S5SC5T6Z-Dv4UxBWo.js → xychartDiagram-S5SC5T6Z-GC8fXUaM.js} +1 -1
- package/dist/viewer/{zh-CN-LNUGB5OW-i7Vn4Pqy.js → zh-CN-LNUGB5OW-LWpPfppU.js} +1 -1
- package/dist/viewer/{zh-HK-E62DVLB3-Cm16SoeD.js → zh-HK-E62DVLB3-BQrPpETb.js} +1 -1
- package/dist/viewer/{zh-TW-RAJ6MFWO-Lambeacv.js → zh-TW-RAJ6MFWO-O2w99mPI.js} +1 -1
- package/dist/viewer-lib/{Canvas-BdS1Xa5w.js → Canvas-Gv8uEhbb.js} +1 -1
- package/dist/viewer-lib/core.js +3 -3
- package/dist/viewer-lib/{ids-Crgtnwo0.js → ids-CJH3rRXm.js} +38 -38
- package/dist/viewer-lib/index.js +1002 -1002
- package/dist/viewer-lib/types/src/shared/ids.d.ts +3 -0
- package/package.json +1 -1
- package/dist/viewer/channel-DGerhKw9.js +0 -1
- package/dist/viewer/classDiagram-ZZMXUADV-DWXc-S98.js +0 -1
- package/dist/viewer/classDiagram-v2-VYDZK3BY-DWXc-S98.js +0 -1
- package/dist/viewer/flowDiagram-HODETNUW-DWhovppS.js +0 -1
- package/dist/viewer/percentages-BXMCSKIN-NLhw_fz5.js +0 -1
- package/dist/viewer/stateDiagram-v2-MP3YSRHH-D8ViYn3V.js +0 -1
- package/dist/viewer/subset-shared.chunk-Bx9OralH.js +0 -1
- package/dist/viewer/swimlanesDiagram-VR7AAH4N-Clea06qq.js +0 -8
- package/dist/viewer/useSystemTheme-BVZLLsnc.js +0 -64
package/dist/server.cjs
CHANGED
|
@@ -5191,8 +5191,14 @@ var import_node_fs = __toESM(require("node:fs"), 1);
|
|
|
5191
5191
|
var import_node_path = __toESM(require("node:path"), 1);
|
|
5192
5192
|
|
|
5193
5193
|
// src/shared/ids.ts
|
|
5194
|
-
var
|
|
5194
|
+
var SLUG_SOURCE = "[a-z0-9][a-z0-9-]*";
|
|
5195
|
+
var ADDRESS_SOURCE = "(?:[A-Za-z0-9_-]{21}|[a-f0-9]{32})";
|
|
5196
|
+
var ARTIFACT_LOCATOR_SOURCE = `(?:${SLUG_SOURCE}|${ADDRESS_SOURCE})`;
|
|
5197
|
+
var ID_PATTERN = new RegExp(`^${SLUG_SOURCE}$`);
|
|
5198
|
+
var ADDRESS_PATTERN = new RegExp(`^${ADDRESS_SOURCE}$`);
|
|
5195
5199
|
var isArtifactId = (id2) => ID_PATTERN.test(id2);
|
|
5200
|
+
var isArtifactAddress = (id2) => ADDRESS_PATTERN.test(id2);
|
|
5201
|
+
var isArtifactLocator = (id2) => ID_PATTERN.test(id2) || ADDRESS_PATTERN.test(id2);
|
|
5196
5202
|
var isArtifactType = (type) => ARTIFACT_TYPES.includes(type);
|
|
5197
5203
|
|
|
5198
5204
|
// src/server/artifacts.ts
|
|
@@ -5228,9 +5234,9 @@ function resolveArtifactDir(root, type, id2) {
|
|
|
5228
5234
|
return null;
|
|
5229
5235
|
}
|
|
5230
5236
|
}
|
|
5231
|
-
function artifactKeyOf(relative) {
|
|
5237
|
+
function artifactKeyOf(relative, isId2 = isArtifactId) {
|
|
5232
5238
|
const [type, id2] = relative.split("/");
|
|
5233
|
-
if (!type || !id2 || !isArtifactType(type) || !
|
|
5239
|
+
if (!type || !id2 || !isArtifactType(type) || !isId2(id2)) return null;
|
|
5234
5240
|
return { type, id: id2 };
|
|
5235
5241
|
}
|
|
5236
5242
|
function artifactSignature(dir, type) {
|
|
@@ -5265,9 +5271,87 @@ function artifactSignature(dir, type) {
|
|
|
5265
5271
|
}
|
|
5266
5272
|
|
|
5267
5273
|
// src/server/artifact-address.ts
|
|
5268
|
-
var import_node_crypto2 = __toESM(require("node:crypto"), 1);
|
|
5269
5274
|
var import_node_fs2 = __toESM(require("node:fs"), 1);
|
|
5270
5275
|
var import_node_path2 = __toESM(require("node:path"), 1);
|
|
5276
|
+
|
|
5277
|
+
// node_modules/.pnpm/nanoid@5.1.16/node_modules/nanoid/index.js
|
|
5278
|
+
var import_node_crypto2 = require("node:crypto");
|
|
5279
|
+
|
|
5280
|
+
// node_modules/.pnpm/nanoid@5.1.16/node_modules/nanoid/url-alphabet/index.js
|
|
5281
|
+
var urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
|
|
5282
|
+
|
|
5283
|
+
// node_modules/.pnpm/nanoid@5.1.16/node_modules/nanoid/index.js
|
|
5284
|
+
var POOL_SIZE_MULTIPLIER = 128;
|
|
5285
|
+
var pool;
|
|
5286
|
+
var poolOffset;
|
|
5287
|
+
function fillPool(bytes) {
|
|
5288
|
+
if (bytes < 0) throw new RangeError("Wrong ID size");
|
|
5289
|
+
try {
|
|
5290
|
+
if (!pool || pool.length < bytes) {
|
|
5291
|
+
pool = Buffer.allocUnsafe(bytes * POOL_SIZE_MULTIPLIER);
|
|
5292
|
+
import_node_crypto2.webcrypto.getRandomValues(pool);
|
|
5293
|
+
poolOffset = 0;
|
|
5294
|
+
} else if (poolOffset + bytes > pool.length) {
|
|
5295
|
+
import_node_crypto2.webcrypto.getRandomValues(pool);
|
|
5296
|
+
poolOffset = 0;
|
|
5297
|
+
}
|
|
5298
|
+
} catch (e5) {
|
|
5299
|
+
pool = void 0;
|
|
5300
|
+
throw e5;
|
|
5301
|
+
}
|
|
5302
|
+
poolOffset += bytes;
|
|
5303
|
+
}
|
|
5304
|
+
function random(bytes) {
|
|
5305
|
+
fillPool(bytes |= 0);
|
|
5306
|
+
return pool.subarray(poolOffset - bytes, poolOffset);
|
|
5307
|
+
}
|
|
5308
|
+
function customRandom(alphabet, defaultSize, getRandom) {
|
|
5309
|
+
let safeByteCutoff = 256 - 256 % alphabet.length;
|
|
5310
|
+
if (safeByteCutoff === 256) {
|
|
5311
|
+
let mask = alphabet.length - 1;
|
|
5312
|
+
return (size = defaultSize) => {
|
|
5313
|
+
if (!size) return "";
|
|
5314
|
+
let id2 = "";
|
|
5315
|
+
while (true) {
|
|
5316
|
+
let bytes = getRandom(size);
|
|
5317
|
+
let i6 = size;
|
|
5318
|
+
while (i6--) {
|
|
5319
|
+
id2 += alphabet[bytes[i6] & mask];
|
|
5320
|
+
if (id2.length >= size) return id2;
|
|
5321
|
+
}
|
|
5322
|
+
}
|
|
5323
|
+
};
|
|
5324
|
+
}
|
|
5325
|
+
let step = Math.ceil(1.6 * 256 * defaultSize / safeByteCutoff);
|
|
5326
|
+
return (size = defaultSize) => {
|
|
5327
|
+
if (!size) return "";
|
|
5328
|
+
let id2 = "";
|
|
5329
|
+
while (true) {
|
|
5330
|
+
let bytes = getRandom(step);
|
|
5331
|
+
let i6 = step;
|
|
5332
|
+
while (i6--) {
|
|
5333
|
+
if (bytes[i6] < safeByteCutoff) {
|
|
5334
|
+
id2 += alphabet[bytes[i6] % alphabet.length];
|
|
5335
|
+
if (id2.length >= size) return id2;
|
|
5336
|
+
}
|
|
5337
|
+
}
|
|
5338
|
+
}
|
|
5339
|
+
};
|
|
5340
|
+
}
|
|
5341
|
+
function customAlphabet(alphabet, size = 21) {
|
|
5342
|
+
return customRandom(alphabet, size, random);
|
|
5343
|
+
}
|
|
5344
|
+
function nanoid(size = 21) {
|
|
5345
|
+
fillPool(size |= 0);
|
|
5346
|
+
let id2 = "";
|
|
5347
|
+
for (let i6 = poolOffset - size; i6 < poolOffset; i6++) {
|
|
5348
|
+
id2 += urlAlphabet[pool[i6] & 63];
|
|
5349
|
+
}
|
|
5350
|
+
return id2;
|
|
5351
|
+
}
|
|
5352
|
+
|
|
5353
|
+
// src/server/artifact-address.ts
|
|
5354
|
+
var newArtifactId = customAlphabet("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz", 21);
|
|
5271
5355
|
function artifactId(dir) {
|
|
5272
5356
|
const file = import_node_path2.default.join(dir, ".artifact-id");
|
|
5273
5357
|
let id2;
|
|
@@ -5275,7 +5359,7 @@ function artifactId(dir) {
|
|
|
5275
5359
|
id2 = import_node_fs2.default.readFileSync(file, "utf8").trim();
|
|
5276
5360
|
} catch (err) {
|
|
5277
5361
|
if (err.code !== "ENOENT") throw err;
|
|
5278
|
-
id2 =
|
|
5362
|
+
id2 = newArtifactId();
|
|
5279
5363
|
try {
|
|
5280
5364
|
import_node_fs2.default.writeFileSync(file, `${id2}
|
|
5281
5365
|
`, { flag: "wx" });
|
|
@@ -5284,7 +5368,7 @@ function artifactId(dir) {
|
|
|
5284
5368
|
return artifactId(dir);
|
|
5285
5369
|
}
|
|
5286
5370
|
}
|
|
5287
|
-
if (
|
|
5371
|
+
if (!isArtifactAddress(id2)) throw new Error(`Invalid artifact ID in ${file}`);
|
|
5288
5372
|
return id2;
|
|
5289
5373
|
}
|
|
5290
5374
|
function artifactPath(root, type, slug) {
|
|
@@ -5351,7 +5435,7 @@ function readDocument(dir, id2) {
|
|
|
5351
5435
|
}
|
|
5352
5436
|
|
|
5353
5437
|
// node_modules/.pnpm/nanoid@6.0.2/node_modules/nanoid/url-alphabet/index.js
|
|
5354
|
-
var
|
|
5438
|
+
var urlAlphabet2 = "57X6y3wQZNzYjJB2L_10pxbackgroundhimselfUTF-8DEMOGRAPHICSVqvt4KW9";
|
|
5355
5439
|
|
|
5356
5440
|
// node_modules/.pnpm/nanoid@6.0.2/node_modules/nanoid/index.js
|
|
5357
5441
|
var GET_RANDOM_LIMIT = 65536;
|
|
@@ -5363,14 +5447,14 @@ function fillRandom(buffer) {
|
|
|
5363
5447
|
from = to3;
|
|
5364
5448
|
}
|
|
5365
5449
|
}
|
|
5366
|
-
function
|
|
5450
|
+
function random2(bytes) {
|
|
5367
5451
|
bytes |= 0;
|
|
5368
5452
|
if (bytes < 0) throw new RangeError("Wrong ID size");
|
|
5369
5453
|
let buffer = Buffer.allocUnsafe(bytes);
|
|
5370
5454
|
fillRandom(buffer);
|
|
5371
5455
|
return buffer;
|
|
5372
5456
|
}
|
|
5373
|
-
function
|
|
5457
|
+
function customRandom2(alphabet, defaultSize, getRandom) {
|
|
5374
5458
|
let safeByteCutoff = 256 - 256 % alphabet.length;
|
|
5375
5459
|
if (safeByteCutoff === 256) {
|
|
5376
5460
|
let mask = alphabet.length - 1;
|
|
@@ -5404,13 +5488,13 @@ function customRandom(alphabet, defaultSize, getRandom) {
|
|
|
5404
5488
|
};
|
|
5405
5489
|
}
|
|
5406
5490
|
var POOL_MAX = GET_RANDOM_LIMIT / 2;
|
|
5407
|
-
function
|
|
5491
|
+
function customAlphabet2(alphabet, defaultSize = 21) {
|
|
5408
5492
|
if (typeof alphabet !== "string" || !alphabet || alphabet.length > 256) {
|
|
5409
|
-
return
|
|
5493
|
+
return customRandom2(alphabet, defaultSize, random2);
|
|
5410
5494
|
}
|
|
5411
5495
|
for (let i6 = 0; i6 < alphabet.length; i6++) {
|
|
5412
5496
|
if (alphabet.charCodeAt(i6) > 255) {
|
|
5413
|
-
return
|
|
5497
|
+
return customRandom2(alphabet, defaultSize, random2);
|
|
5414
5498
|
}
|
|
5415
5499
|
}
|
|
5416
5500
|
let charCodes = Uint8Array.from(alphabet, (str) => {
|
|
@@ -5457,7 +5541,7 @@ function customAlphabet(alphabet, defaultSize = 21) {
|
|
|
5457
5541
|
return pool2.substring(poolOffset2 - size, poolOffset2);
|
|
5458
5542
|
};
|
|
5459
5543
|
}
|
|
5460
|
-
var
|
|
5544
|
+
var nanoid2 = customAlphabet2(urlAlphabet2);
|
|
5461
5545
|
|
|
5462
5546
|
// node_modules/.pnpm/@haklex+rich-litexml@0.58.0_typescript@5.9.3/node_modules/@haklex/rich-litexml/dist/src-CwO17cE7.js
|
|
5463
5547
|
var impl = null;
|
|
@@ -5603,11 +5687,11 @@ function registerBuiltinReaders(registry2) {
|
|
|
5603
5687
|
}));
|
|
5604
5688
|
}
|
|
5605
5689
|
var idAlphabet = "abcdefghijklmnopqrstuvwxyz0123456789";
|
|
5606
|
-
var makePollIdSuffix =
|
|
5607
|
-
var makeOptionIdSuffix =
|
|
5608
|
-
var makeChatParticipantId =
|
|
5609
|
-
var makeChatMessageId =
|
|
5610
|
-
var makeStepId =
|
|
5690
|
+
var makePollIdSuffix = customAlphabet2(idAlphabet, 10);
|
|
5691
|
+
var makeOptionIdSuffix = customAlphabet2(idAlphabet, 6);
|
|
5692
|
+
var makeChatParticipantId = customAlphabet2(idAlphabet, 6);
|
|
5693
|
+
var makeChatMessageId = customAlphabet2(idAlphabet, 8);
|
|
5694
|
+
var makeStepId = customAlphabet2(idAlphabet, 8);
|
|
5611
5695
|
function extractBlockId(el2) {
|
|
5612
5696
|
const id2 = el2.getAttribute("id");
|
|
5613
5697
|
return id2 ? { $: { blockId: id2 } } : {};
|
|
@@ -17610,42 +17694,6 @@ setPrototypeOf(Document4, Document2).prototype = Document2.prototype;
|
|
|
17610
17694
|
// node_modules/.pnpm/@haklex+rich-litexml@0.58.0_typescript@5.9.3/node_modules/@haklex/rich-litexml/dist/node.mjs
|
|
17611
17695
|
registerParseHTML((html) => parseHTML2(html).document);
|
|
17612
17696
|
|
|
17613
|
-
// node_modules/.pnpm/nanoid@5.1.16/node_modules/nanoid/index.js
|
|
17614
|
-
var import_node_crypto3 = require("node:crypto");
|
|
17615
|
-
|
|
17616
|
-
// node_modules/.pnpm/nanoid@5.1.16/node_modules/nanoid/url-alphabet/index.js
|
|
17617
|
-
var urlAlphabet2 = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
|
|
17618
|
-
|
|
17619
|
-
// node_modules/.pnpm/nanoid@5.1.16/node_modules/nanoid/index.js
|
|
17620
|
-
var POOL_SIZE_MULTIPLIER = 128;
|
|
17621
|
-
var pool;
|
|
17622
|
-
var poolOffset;
|
|
17623
|
-
function fillPool(bytes) {
|
|
17624
|
-
if (bytes < 0) throw new RangeError("Wrong ID size");
|
|
17625
|
-
try {
|
|
17626
|
-
if (!pool || pool.length < bytes) {
|
|
17627
|
-
pool = Buffer.allocUnsafe(bytes * POOL_SIZE_MULTIPLIER);
|
|
17628
|
-
import_node_crypto3.webcrypto.getRandomValues(pool);
|
|
17629
|
-
poolOffset = 0;
|
|
17630
|
-
} else if (poolOffset + bytes > pool.length) {
|
|
17631
|
-
import_node_crypto3.webcrypto.getRandomValues(pool);
|
|
17632
|
-
poolOffset = 0;
|
|
17633
|
-
}
|
|
17634
|
-
} catch (e5) {
|
|
17635
|
-
pool = void 0;
|
|
17636
|
-
throw e5;
|
|
17637
|
-
}
|
|
17638
|
-
poolOffset += bytes;
|
|
17639
|
-
}
|
|
17640
|
-
function nanoid2(size = 21) {
|
|
17641
|
-
fillPool(size |= 0);
|
|
17642
|
-
let id2 = "";
|
|
17643
|
-
for (let i6 = poolOffset - size; i6 < poolOffset; i6++) {
|
|
17644
|
-
id2 += urlAlphabet2[pool[i6] & 63];
|
|
17645
|
-
}
|
|
17646
|
-
return id2;
|
|
17647
|
-
}
|
|
17648
|
-
|
|
17649
17697
|
// src/shared/dynamic.ts
|
|
17650
17698
|
var DYNAMIC_URL = /^assets\/[\w-][\w.-]*\.html$/;
|
|
17651
17699
|
|
|
@@ -17820,8 +17868,8 @@ function stampBlockIds(state) {
|
|
|
17820
17868
|
seen.add(id2);
|
|
17821
17869
|
return block;
|
|
17822
17870
|
}
|
|
17823
|
-
let fresh =
|
|
17824
|
-
while (seen.has(fresh)) fresh =
|
|
17871
|
+
let fresh = nanoid(8);
|
|
17872
|
+
while (seen.has(fresh)) fresh = nanoid(8);
|
|
17825
17873
|
seen.add(fresh);
|
|
17826
17874
|
return { ...block, $: { ...block.$, blockId: fresh } };
|
|
17827
17875
|
});
|
|
@@ -17838,7 +17886,7 @@ function boxDrawingDiagrams(state) {
|
|
|
17838
17886
|
}
|
|
17839
17887
|
|
|
17840
17888
|
// src/server/board-comments.ts
|
|
17841
|
-
var
|
|
17889
|
+
var import_node_crypto3 = __toESM(require("node:crypto"), 1);
|
|
17842
17890
|
var import_node_fs9 = __toESM(require("node:fs"), 1);
|
|
17843
17891
|
var import_node_path8 = __toESM(require("node:path"), 1);
|
|
17844
17892
|
|
|
@@ -18578,10 +18626,10 @@ var documentRules = {
|
|
|
18578
18626
|
agent: applyAgentOp
|
|
18579
18627
|
};
|
|
18580
18628
|
var noNames = { human: () => void 0, agent: () => void 0 };
|
|
18581
|
-
function createCommentStore(file, names = noNames, now = () => (/* @__PURE__ */ new Date()).toISOString(), newId = () =>
|
|
18629
|
+
function createCommentStore(file, names = noNames, now = () => (/* @__PURE__ */ new Date()).toISOString(), newId = () => nanoid(10)) {
|
|
18582
18630
|
return createStore(file, documentRules, names, now, newId);
|
|
18583
18631
|
}
|
|
18584
|
-
function createStore(file, rules, names = noNames, now = () => (/* @__PURE__ */ new Date()).toISOString(), newId = () =>
|
|
18632
|
+
function createStore(file, rules, names = noNames, now = () => (/* @__PURE__ */ new Date()).toISOString(), newId = () => nanoid(10)) {
|
|
18585
18633
|
let current = rules.empty();
|
|
18586
18634
|
let lastSeen = null;
|
|
18587
18635
|
let warnings = [];
|
|
@@ -18701,7 +18749,7 @@ function fileHash(dir, relative) {
|
|
|
18701
18749
|
const stamp2 = `${stat.size}:${stat.mtimeMs}`;
|
|
18702
18750
|
const cached = hashCache.get(file);
|
|
18703
18751
|
if (cached?.stamp === stamp2) return cached.hash;
|
|
18704
|
-
const hash =
|
|
18752
|
+
const hash = import_node_crypto3.default.createHash("sha1").update(import_node_fs9.default.readFileSync(file)).digest("hex").slice(0, 12);
|
|
18705
18753
|
hashCache.set(file, { stamp: stamp2, hash });
|
|
18706
18754
|
return hash;
|
|
18707
18755
|
} catch {
|
|
@@ -89174,7 +89222,7 @@ function injectRuntime(html, options = {}) {
|
|
|
89174
89222
|
}
|
|
89175
89223
|
|
|
89176
89224
|
// src/server/http.ts
|
|
89177
|
-
var
|
|
89225
|
+
var import_node_crypto4 = __toESM(require("node:crypto"), 1);
|
|
89178
89226
|
var import_node_fs11 = __toESM(require("node:fs"), 1);
|
|
89179
89227
|
var import_node_path11 = __toESM(require("node:path"), 1);
|
|
89180
89228
|
var MIME2 = {
|
|
@@ -89200,11 +89248,11 @@ var MIME2 = {
|
|
|
89200
89248
|
".webm": "video/webm"
|
|
89201
89249
|
};
|
|
89202
89250
|
var mimeOf = (file) => MIME2[import_node_path11.default.extname(file).toLowerCase()] ?? "application/octet-stream";
|
|
89203
|
-
var randomToken = () =>
|
|
89251
|
+
var randomToken = () => import_node_crypto4.default.randomBytes(24).toString("base64url");
|
|
89204
89252
|
function safeEqual(a5, b6) {
|
|
89205
89253
|
const ab = Buffer.from(a5);
|
|
89206
89254
|
const bb = Buffer.from(b6);
|
|
89207
|
-
return ab.length === bb.length &&
|
|
89255
|
+
return ab.length === bb.length && import_node_crypto4.default.timingSafeEqual(ab, bb);
|
|
89208
89256
|
}
|
|
89209
89257
|
function parseCookies(header) {
|
|
89210
89258
|
const cookies = {};
|
|
@@ -89719,7 +89767,7 @@ function createRelayClient(options) {
|
|
|
89719
89767
|
}
|
|
89720
89768
|
|
|
89721
89769
|
// src/server/ws.ts
|
|
89722
|
-
var
|
|
89770
|
+
var import_node_crypto5 = __toESM(require("node:crypto"), 1);
|
|
89723
89771
|
var WS_MAGIC = "258EAFA5-E914-47DA-95CA-C5AB0DC85B11";
|
|
89724
89772
|
var OPCODE_TEXT = 1;
|
|
89725
89773
|
var OPCODE_CLOSE = 8;
|
|
@@ -89727,7 +89775,7 @@ var OPCODE_PING = 9;
|
|
|
89727
89775
|
var OPCODE_PONG = 10;
|
|
89728
89776
|
var MAX_CLIENT_FRAME = 8 * 1024 * 1024;
|
|
89729
89777
|
function acceptKey(clientKey) {
|
|
89730
|
-
return
|
|
89778
|
+
return import_node_crypto5.default.createHash("sha1").update(clientKey + WS_MAGIC).digest("base64");
|
|
89731
89779
|
}
|
|
89732
89780
|
function encodeFrame(opcode, payload) {
|
|
89733
89781
|
const len = payload.length;
|
|
@@ -89866,7 +89914,7 @@ function hostIdFor(credentialsFile2) {
|
|
|
89866
89914
|
}
|
|
89867
89915
|
|
|
89868
89916
|
// src/server/avatars.ts
|
|
89869
|
-
var
|
|
89917
|
+
var import_node_crypto6 = require("node:crypto");
|
|
89870
89918
|
var AVATAR_ROUTE = /^\/api\/avatar\/([a-z]+)\/([^/]+)$/;
|
|
89871
89919
|
var MAX_BYTES = 512 * 1024;
|
|
89872
89920
|
var TIMEOUT_MS = 5e3;
|
|
@@ -89875,7 +89923,7 @@ var SOURCES = {
|
|
|
89875
89923
|
gravatar: { valid: /^[0-9a-f]{64}$/, url: (id2) => `https://gravatar.com/avatar/${id2}?s=64&d=404` }
|
|
89876
89924
|
};
|
|
89877
89925
|
var githubAvatar = (login) => `/api/avatar/github/${login}`;
|
|
89878
|
-
var gravatarAvatar = (email) => `/api/avatar/gravatar/${(0,
|
|
89926
|
+
var gravatarAvatar = (email) => `/api/avatar/gravatar/${(0, import_node_crypto6.createHash)("sha256").update(email.trim().toLowerCase()).digest("hex")}`;
|
|
89879
89927
|
function createAvatars(fetchImpl = fetch) {
|
|
89880
89928
|
const cache = /* @__PURE__ */ new Map();
|
|
89881
89929
|
const fetchAvatar = async (url) => {
|
|
@@ -89907,7 +89955,7 @@ function createAvatars(fetchImpl = fetch) {
|
|
|
89907
89955
|
}
|
|
89908
89956
|
|
|
89909
89957
|
// src/server/cloud.ts
|
|
89910
|
-
var
|
|
89958
|
+
var import_node_crypto7 = __toESM(require("node:crypto"), 1);
|
|
89911
89959
|
|
|
89912
89960
|
// src/shared/brand.ts
|
|
89913
89961
|
var RYUGI_MARK_VIEWBOX = "0 0 512 512";
|
|
@@ -90329,7 +90377,7 @@ function createCloudRoutes(options) {
|
|
|
90329
90377
|
const state = randomToken();
|
|
90330
90378
|
const verifier = randomToken();
|
|
90331
90379
|
pendingStates.set(state, { expires: now + LOGIN_STATE_TTL_MS, verifier });
|
|
90332
|
-
const challenge =
|
|
90380
|
+
const challenge = import_node_crypto7.default.createHash("sha256").update(verifier).digest("base64url");
|
|
90333
90381
|
return `${origin}/auth/cli?port=${options.port()}&state=${state}&challenge=${challenge}`;
|
|
90334
90382
|
};
|
|
90335
90383
|
const cloudFetch = async (method, path24, body) => {
|
|
@@ -90413,7 +90461,7 @@ function createCloudRoutes(options) {
|
|
|
90413
90461
|
} catch (err) {
|
|
90414
90462
|
throw new CloudRefused(413, err.message);
|
|
90415
90463
|
}
|
|
90416
|
-
const sha = (data) =>
|
|
90464
|
+
const sha = (data) => import_node_crypto7.default.createHash("sha256").update(data).digest("hex");
|
|
90417
90465
|
const hashed = withCloudRuntime(ref.type, packed).map((file) => ({ ...file, hash: sha(file.data) }));
|
|
90418
90466
|
const content = { title: inspected.title, payload: inspected.payload, files: hashed.map(({ path: path24, hash }) => ({ path: path24, hash })) };
|
|
90419
90467
|
const fingerprint = sha(JSON.stringify({ title: inspected.title, payload: fingerprintPayload(inspected.payload), files: packed.map((file) => ({ path: file.path, hash: sha(file.data) })) }));
|
|
@@ -91022,7 +91070,7 @@ function renderThumbnail(artifact, value) {
|
|
|
91022
91070
|
}
|
|
91023
91071
|
|
|
91024
91072
|
// src/server/viewer-page.ts
|
|
91025
|
-
var
|
|
91073
|
+
var import_node_crypto8 = require("node:crypto");
|
|
91026
91074
|
var escapeHtml2 = (value) => value.replace(/[&<>"']/g, (ch) => ({ "&": "&", "<": "<", ">": ">", '"': """, "'": "'" })[ch]);
|
|
91027
91075
|
function viewerPage(template, page) {
|
|
91028
91076
|
const locale = page.locale ?? "en";
|
|
@@ -91044,12 +91092,12 @@ function viewerPage(template, page) {
|
|
|
91044
91092
|
}
|
|
91045
91093
|
var INLINE_SCRIPT = /<script\b(?![^>]*\bsrc=)[^>]*>([\s\S]*?)<\/script>/gi;
|
|
91046
91094
|
function allowInlineScripts(csp, html) {
|
|
91047
|
-
const hashes = [...html.matchAll(INLINE_SCRIPT)].map(([, body]) => `'sha256-${(0,
|
|
91095
|
+
const hashes = [...html.matchAll(INLINE_SCRIPT)].map(([, body]) => `'sha256-${(0, import_node_crypto8.createHash)("sha256").update(body).digest("base64")}'`);
|
|
91048
91096
|
return hashes.length ? csp.replace(/script-src [^;]*/, (directive) => `${directive} ${hashes.join(" ")}`) : csp;
|
|
91049
91097
|
}
|
|
91050
91098
|
|
|
91051
91099
|
// src/server/auto-publish.ts
|
|
91052
|
-
var
|
|
91100
|
+
var import_node_crypto9 = __toESM(require("node:crypto"), 1);
|
|
91053
91101
|
var import_node_fs21 = __toESM(require("node:fs"), 1);
|
|
91054
91102
|
var IDLE_MS = 5 * 60 * 1e3;
|
|
91055
91103
|
var MAX_WAIT_MS = 15 * 60 * 1e3;
|
|
@@ -91084,7 +91132,7 @@ function createAutoPublisher(options) {
|
|
|
91084
91132
|
const failures = /* @__PURE__ */ new Map();
|
|
91085
91133
|
const save = () => writeJsonAtomic(options.stateFile, { dirty: [...dirty], notice, paused });
|
|
91086
91134
|
const raise = (kind, message, upgradeUrl) => {
|
|
91087
|
-
if (notice?.kind !== kind) notice = { id:
|
|
91135
|
+
if (notice?.kind !== kind) notice = { id: import_node_crypto9.default.randomUUID(), kind, message, ...upgradeUrl ? { upgradeUrl } : {} };
|
|
91088
91136
|
};
|
|
91089
91137
|
let idleTimer = null;
|
|
91090
91138
|
let maxTimer = null;
|
|
@@ -91292,7 +91340,7 @@ var CLOSE_FLUSH_MS = 5e3;
|
|
|
91292
91340
|
var DIRECT_RELAY_ROUTE = /^\/relay\/a\/([A-Za-z0-9_-]{1,64})$/;
|
|
91293
91341
|
var SHELL_ROUTE = new RegExp(`^/(?:(${ARTIFACT_TYPES.join("|")})/([^/]+)/?)?$`);
|
|
91294
91342
|
var API_ARTIFACT_ROUTE = /^\/api\/artifacts\/([^/]+)\/([^/]+)$/;
|
|
91295
|
-
var PREVIEW_ROUTE =
|
|
91343
|
+
var PREVIEW_ROUTE = new RegExp(`^/preview/(artboard|document|html)/${ARTIFACT_LOCATOR_SOURCE}/?$`);
|
|
91296
91344
|
var API_PREVIEW_ROUTE = /^\/api\/preview\/([^/]+)\/([^/]+)$/;
|
|
91297
91345
|
var API_THUMBNAIL_ROUTE = /^\/api\/thumbnail\/([^/]+)\/([^/]+)\.svg$/;
|
|
91298
91346
|
var API_DOCUMENT_ROUTE = /^\/api\/document\/([^/]+)\/(state|update|comments)$/;
|
|
@@ -91793,7 +91841,7 @@ async function startArtifactsServer(options) {
|
|
|
91793
91841
|
}
|
|
91794
91842
|
const thumbnailMatch = API_THUMBNAIL_ROUTE.exec(pathname);
|
|
91795
91843
|
if (thumbnailMatch) {
|
|
91796
|
-
const requested = artifactKeyOf(`${thumbnailMatch[1]}/${thumbnailMatch[2]}
|
|
91844
|
+
const requested = artifactKeyOf(`${thumbnailMatch[1]}/${thumbnailMatch[2]}`, isArtifactLocator);
|
|
91797
91845
|
let resolved = null;
|
|
91798
91846
|
try {
|
|
91799
91847
|
resolved = requested && resolveArtifactAddress(root, requested.type, requested.id);
|
|
@@ -91896,7 +91944,7 @@ async function startArtifactsServer(options) {
|
|
|
91896
91944
|
return;
|
|
91897
91945
|
}
|
|
91898
91946
|
if (SHELL_ROUTE.test(pathname) || PREVIEW_ROUTE.test(pathname) || pathname === "/index.html") {
|
|
91899
|
-
const requested = artifactKeyOf(pathname.replace(/^\/(?:preview\/)?/, "").replace(/\/$/, ""));
|
|
91947
|
+
const requested = artifactKeyOf(pathname.replace(/^\/(?:preview\/)?/, "").replace(/\/$/, ""), isArtifactLocator);
|
|
91900
91948
|
const resolved = requested && resolveArtifactAddress(root, requested.type, requested.id);
|
|
91901
91949
|
const ref = resolved ?? requested;
|
|
91902
91950
|
const dir = resolved?.dir;
|
|
@@ -92326,7 +92374,7 @@ function openReady(payload) {
|
|
|
92326
92374
|
}
|
|
92327
92375
|
|
|
92328
92376
|
// src/server/registry.ts
|
|
92329
|
-
var
|
|
92377
|
+
var import_node_crypto10 = __toESM(require("node:crypto"), 1);
|
|
92330
92378
|
var import_node_fs26 = __toESM(require("node:fs"), 1);
|
|
92331
92379
|
var import_node_os = __toESM(require("node:os"), 1);
|
|
92332
92380
|
var import_node_path22 = __toESM(require("node:path"), 1);
|
|
@@ -92335,7 +92383,7 @@ function registryDir(env = process.env, platform = process.platform, uid = proce
|
|
|
92335
92383
|
if (platform === "win32") return import_node_path22.default.join(tmpdir, "ryugi", "servers");
|
|
92336
92384
|
return `/tmp/ryugi-${uid}/servers`;
|
|
92337
92385
|
}
|
|
92338
|
-
var fileFor = (dir, project) => import_node_path22.default.join(dir, `${
|
|
92386
|
+
var fileFor = (dir, project) => import_node_path22.default.join(dir, `${import_node_crypto10.default.createHash("sha256").update(project).digest("hex").slice(0, 16)}.json`);
|
|
92339
92387
|
function verifyDir(dir) {
|
|
92340
92388
|
if (process.platform === "win32") return;
|
|
92341
92389
|
for (const target of [import_node_path22.default.dirname(dir), dir]) {
|
|
@@ -92380,7 +92428,7 @@ function touchEntry(dir, entry) {
|
|
|
92380
92428
|
}
|
|
92381
92429
|
|
|
92382
92430
|
// package.json
|
|
92383
|
-
var version = "1.
|
|
92431
|
+
var version = "1.44.0";
|
|
92384
92432
|
|
|
92385
92433
|
// src/server/main.ts
|
|
92386
92434
|
async function main() {
|