ryugi-artifacts 1.9.1 → 1.10.1
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 +16 -9
- package/dist/server.cjs +23 -3
- package/dist/viewer/{CloudDocument-Dguokp_6.js → CloudDocument-DHt_mVdQ.js} +1 -1
- package/dist/viewer/{DocumentEditor-rRoUyzj5.js → DocumentEditor-CHFJtV6u.js} +3 -3
- package/dist/viewer/{DocumentPage-C0_SVGNv.js → DocumentPage-BXx7LR6z.js} +1 -1
- package/dist/viewer/{abnfDiagram-VCTEODGH-Cd62lXYi.js → abnfDiagram-VCTEODGH-BKXyb30x.js} +1 -1
- package/dist/viewer/{ar-SA-G6X2FPQ2-k4wcXC0w.js → ar-SA-G6X2FPQ2-DWH_0Nc0.js} +1 -1
- package/dist/viewer/{architectureDiagram-5GKGNRK7-BqGRfF7K.js → architectureDiagram-5GKGNRK7-Br5ECgf8.js} +1 -1
- package/dist/viewer/{az-AZ-76LH7QW2-DjkRWALq.js → az-AZ-76LH7QW2-DY75JeQW.js} +1 -1
- package/dist/viewer/{bg-BG-XCXSNQG7-CUOyMSFg.js → bg-BG-XCXSNQG7-Cd-bEECG.js} +1 -1
- package/dist/viewer/{blockDiagram-I7D4REHJ-DLj9e678.js → blockDiagram-I7D4REHJ-CTH9upeW.js} +1 -1
- package/dist/viewer/{bn-BD-2XOGV67Q-CPw_5I7i.js → bn-BD-2XOGV67Q-CfbWlT53.js} +1 -1
- package/dist/viewer/{c4Diagram-7LVT6UL2-D9FPioA_.js → c4Diagram-7LVT6UL2-DgZfuMeF.js} +1 -1
- package/dist/viewer/{ca-ES-6MX7JW3Y-Bl_ggxy-.js → ca-ES-6MX7JW3Y-CLIaflNg.js} +1 -1
- package/dist/viewer/{chunk-4HAMMTFA-B8CHZ2iu.js → chunk-4HAMMTFA-CXiyiTB-.js} +1 -1
- package/dist/viewer/{chunk-EIO257PC-BkhwQy9u.js → chunk-EIO257PC-DvI6F0lF.js} +1 -1
- package/dist/viewer/{chunk-GMAD6QVW-BIxPNzf_.js → chunk-GMAD6QVW-DCsgamdS.js} +1 -1
- package/dist/viewer/{chunk-GVQU2GXP-BcbkZdgL.js → chunk-GVQU2GXP-2NZqPFtv.js} +1 -1
- package/dist/viewer/{chunk-IMKFNOWR-BlVm2eW6.js → chunk-IMKFNOWR-B9IRlq7P.js} +1 -1
- package/dist/viewer/{chunk-L3NEJ4N5-DPP-Uqzz.js → chunk-L3NEJ4N5-QKDFaTVm.js} +1 -1
- package/dist/viewer/{chunk-OSK3NFVY-DvWBYW0M.js → chunk-OSK3NFVY-DpbM8rcj.js} +1 -1
- package/dist/viewer/{chunk-PWAF6VOD-Df9WdVJL.js → chunk-PWAF6VOD-Bp-CfFnY.js} +1 -1
- package/dist/viewer/{chunk-SHT3W25Y-BSCi7YG7.js → chunk-SHT3W25Y-BXaFpk6r.js} +1 -1
- package/dist/viewer/{chunk-SVP7TREG-Bxv2fp8X.js → chunk-SVP7TREG-CpvjdRHD.js} +1 -1
- package/dist/viewer/{chunk-TICWLB2K-MSpOEdcV.js → chunk-TICWLB2K-DUvtcxvB.js} +1 -1
- package/dist/viewer/{classDiagram-ZZMXUADV-YWXPsH1o.js → classDiagram-ZZMXUADV-BgeDN30p.js} +1 -1
- package/dist/viewer/{classDiagram-v2-VYDZK3BY-YWXPsH1o.js → classDiagram-v2-VYDZK3BY-BgeDN30p.js} +1 -1
- package/dist/viewer/{cs-CZ-2BRQDIVT-VpdA_B_0.js → cs-CZ-2BRQDIVT-B_o7TPRB.js} +1 -1
- package/dist/viewer/{cynefinDiagram-5FMLGOSQ-CCIqA18s.js → cynefinDiagram-5FMLGOSQ-DCfCzgsP.js} +1 -1
- package/dist/viewer/{da-DK-5WZEPLOC-Bikfnz1b.js → da-DK-5WZEPLOC-BcLjBVYf.js} +1 -1
- package/dist/viewer/{dagre-GXQ25YYZ-DeVnyw6S.js → dagre-GXQ25YYZ-BnL1_QU_.js} +1 -1
- package/dist/viewer/{de-DE-XR44H4JA-5nJunltn.js → de-DE-XR44H4JA-CCBDQBto.js} +1 -1
- package/dist/viewer/{diagram-S7CK7UJ4-rcnT6Csv.js → diagram-S7CK7UJ4-BK7CeHHZ.js} +1 -1
- package/dist/viewer/{diagram-UQ7AKVKN-D6yGL_te.js → diagram-UQ7AKVKN-D06sIWn7.js} +1 -1
- package/dist/viewer/{diagram-VX7I27RA-BVBGylbn.js → diagram-VX7I27RA-CY1O2QMA.js} +1 -1
- package/dist/viewer/{diagram-Z3DM3KII-DnsHEfda.js → diagram-Z3DM3KII-Bg9lKHEK.js} +1 -1
- package/dist/viewer/{dist-s3i70bod.js → dist-4M2bYUhK.js} +1 -1
- package/dist/viewer/{dist-C_2nvGGH.js → dist-BB6fXftQ.js} +1 -1
- package/dist/viewer/{dist-Bn3GpIIQ.js → dist-BKQS4oZT.js} +1 -1
- package/dist/viewer/{dist-CNSswqVs.js → dist-BSBxzegz.js} +1 -1
- package/dist/viewer/{dist-C46f_skK.js → dist-BXB2TAHE.js} +1 -1
- package/dist/viewer/{dist-CyR9uUsj.js → dist-BYN4XKEs.js} +1 -1
- package/dist/viewer/{dist-bznEISxg.js → dist-Bb1Wk54R.js} +1 -1
- package/dist/viewer/{dist-BGR5ezDy.js → dist-BeeLtE2S.js} +1 -1
- package/dist/viewer/{dist-CjSSDaiM.js → dist-BvnWP3lg.js} +1 -1
- package/dist/viewer/{dist-CPg9Exib.js → dist-Bz-iQm67.js} +1 -1
- package/dist/viewer/{dist-BSqmGdSf.js → dist-CKMNXGID.js} +1 -1
- package/dist/viewer/{dist-C2UdEldV.js → dist-CQdETbGE.js} +1 -1
- package/dist/viewer/{dist-BPa5yz1M.js → dist-CiXzYSpU.js} +1 -1
- package/dist/viewer/{dist-oPn-5997.js → dist-Cl3n8BFA.js} +1 -1
- package/dist/viewer/{dist-DU3q2qgP.js → dist-D1ACrMdh.js} +1 -1
- package/dist/viewer/{dist-DeqL7hkG.js → dist-D9PK6O8F.js} +1 -1
- package/dist/viewer/{dist-DOLGlCIF.js → dist-DDTbFLmu.js} +1 -1
- package/dist/viewer/{dist-gtpBaWjz.js → dist-DnTqWTTv.js} +1 -1
- package/dist/viewer/{dist-CWy1mEqq.js → dist-Dw_wKUU5.js} +1 -1
- package/dist/viewer/{dist-JNndX187.js → dist-FOMQkx7X.js} +1 -1
- package/dist/viewer/{dist-rkIdnkmY.js → dist-OXspFvEC.js} +4 -4
- package/dist/viewer/{dist-DRJfWmsE.js → dist-bcOEMCGl.js} +1 -1
- package/dist/viewer/{dist-DlPVPwB6.js → dist-cUpTa-Uh.js} +1 -1
- package/dist/viewer/{dist-DOpcb4fi.js → dist-lV9fiGs_.js} +1 -1
- package/dist/viewer/{ebnfDiagram-PWID7BFC-c_bXfo9C.js → ebnfDiagram-PWID7BFC-CFUPr1vp.js} +1 -1
- package/dist/viewer/{el-GR-BZB4AONW-DuM6nGWb.js → el-GR-BZB4AONW-CVOj_203.js} +1 -1
- package/dist/viewer/{en-B4ZKOASM-Cr7s3JvY.js → en-B4ZKOASM-xcE-p-P5.js} +1 -1
- package/dist/viewer/{erDiagram-RLTQ6QDP-B-DgtUd4.js → erDiagram-RLTQ6QDP-CW5ExLmG.js} +1 -1
- package/dist/viewer/{es-ES-U4NZUMDT-DNvSsfqo.js → es-ES-U4NZUMDT-BD-VL6tu.js} +1 -1
- package/dist/viewer/{eu-ES-A7QVB2H4-NECtmtc_.js → eu-ES-A7QVB2H4-Gag31Aik.js} +1 -1
- package/dist/viewer/{fa-IR-HGAKTJCU-fp_dFFfn.js → fa-IR-HGAKTJCU-DIO_YvTH.js} +1 -1
- package/dist/viewer/{fi-FI-Z5N7JZ37-uZ8T0uZ2.js → fi-FI-Z5N7JZ37-DwFVnCWv.js} +1 -1
- package/dist/viewer/flowDiagram-HODETNUW-DszSfwJG.js +1 -0
- package/dist/viewer/{fr-FR-RHASNOE6-DYF69T_L.js → fr-FR-RHASNOE6-CTGrn4Lq.js} +1 -1
- package/dist/viewer/{ganttDiagram-EL5Y4UJY-C7nYK4VV.js → ganttDiagram-EL5Y4UJY-tIiuAPS3.js} +1 -1
- package/dist/viewer/{gl-ES-HMX3MZ6V-Cjlf8qDo.js → gl-ES-HMX3MZ6V-DgyAx5Eh.js} +1 -1
- package/dist/viewer/{he-IL-6SHJWFNN-B44gxQ_q.js → he-IL-6SHJWFNN-CV7tgyfd.js} +1 -1
- package/dist/viewer/{hi-IN-IWLTKZ5I-DHRyKjrX.js → hi-IN-IWLTKZ5I-BTX7qk-7.js} +1 -1
- package/dist/viewer/{hu-HU-A5ZG7DT2-B0x2fwF-.js → hu-HU-A5ZG7DT2-Bf8lG6GO.js} +1 -1
- package/dist/viewer/{id-ID-SAP4L64H-Xxsnu-eK.js → id-ID-SAP4L64H-BMiHNhQ_.js} +1 -1
- package/dist/viewer/{image-GAAHSSAO-DmsBDNOK.js → image-GAAHSSAO-DC81--KY.js} +1 -1
- package/dist/viewer/index.js +3 -3
- package/dist/viewer/index2.css +44 -8
- package/dist/viewer/{infoDiagram-27XIBGKW-OPdlHu-j.js → infoDiagram-27XIBGKW-DaC21Ho7.js} +1 -1
- package/dist/viewer/{ishikawaDiagram-5VMMS53U-3fyfjNAh.js → ishikawaDiagram-5VMMS53U-DXsEGUUM.js} +1 -1
- package/dist/viewer/{it-IT-JPQ66NNP-B0X8yQyS.js → it-IT-JPQ66NNP-CDMVpI8a.js} +1 -1
- package/dist/viewer/{ja-JP-DBVTYXUO-CnhqD0fK.js → ja-JP-DBVTYXUO-BgPgpy7d.js} +1 -1
- package/dist/viewer/{journeyDiagram-3NMN7TZE-BD_Ll3Bo.js → journeyDiagram-3NMN7TZE-C5NRobjI.js} +1 -1
- package/dist/viewer/{kaa-6HZHGXH3-BzhTyhLc.js → kaa-6HZHGXH3-vnOCKrxh.js} +1 -1
- package/dist/viewer/{kab-KAB-ZGHBKWFO-DGiUv22x.js → kab-KAB-ZGHBKWFO-D4LB6KXX.js} +1 -1
- package/dist/viewer/{kanban-definition-UXKFOSKX-BspaC3q1.js → kanban-definition-UXKFOSKX-CsjtKl-L.js} +1 -1
- package/dist/viewer/{kk-KZ-P5N5QNE5-DH8jyrO_.js → kk-KZ-P5N5QNE5-BP_XWuCc.js} +1 -1
- package/dist/viewer/{km-KH-HSX4SM5Z-CTtH-yq7.js → km-KH-HSX4SM5Z-CEYOCLBr.js} +1 -1
- package/dist/viewer/{ko-KR-MTYHY66A-kp3bbs3q.js → ko-KR-MTYHY66A-CyS8rGmN.js} +1 -1
- package/dist/viewer/{ku-TR-6OUDTVRD-CniHyrQH.js → ku-TR-6OUDTVRD-CZEI2eeP.js} +1 -1
- package/dist/viewer/{lt-LT-XHIRWOB4-C5_ErQjQ.js → lt-LT-XHIRWOB4-B-tk-idA.js} +1 -1
- package/dist/viewer/{lv-LV-5QDEKY6T-DH2pmwSL.js → lv-LV-5QDEKY6T-B30P9wrz.js} +1 -1
- package/dist/viewer/{mindmap-definition-YA3MSWOX-gbG6Nf0i.js → mindmap-definition-YA3MSWOX-CGSSNg6n.js} +1 -1
- package/dist/viewer/{mr-IN-CRQNXWMA-4I7m5ob-.js → mr-IN-CRQNXWMA-CPLqe4RO.js} +1 -1
- package/dist/viewer/{my-MM-5M5IBNSE-0nHUTGbL.js → my-MM-5M5IBNSE-BtyoXNpw.js} +1 -1
- package/dist/viewer/{nb-NO-T6EIAALU-DfqC7CQ7.js → nb-NO-T6EIAALU-DOUQaPHk.js} +1 -1
- package/dist/viewer/{nl-NL-IS3SIHDZ-Bjzz0r--.js → nl-NL-IS3SIHDZ-DT6ODAQa.js} +1 -1
- package/dist/viewer/{nn-NO-6E72VCQL-m2jjAc9n.js → nn-NO-6E72VCQL-RCduo5Sc.js} +1 -1
- package/dist/viewer/{oc-FR-POXYY2M6-CAVYt9Ft.js → oc-FR-POXYY2M6-DvwhHG9T.js} +1 -1
- package/dist/viewer/{pa-IN-N4M65BXN-CrcUCfFF.js → pa-IN-N4M65BXN-BJl99Scg.js} +1 -1
- package/dist/viewer/{pegDiagram-XKGWAZYB-MIcAh6C6.js → pegDiagram-XKGWAZYB-CJIWNZ91.js} +1 -1
- package/dist/viewer/percentages-BXMCSKIN-CgcrUqaP.js +1 -0
- package/dist/viewer/{pieDiagram-E7YTZNPT-mI3-_ikZ.js → pieDiagram-E7YTZNPT--z74XM8J.js} +1 -1
- package/dist/viewer/{pl-PL-T2D74RX3-CGPvBMhq.js → pl-PL-T2D74RX3-DUVBpjqD.js} +1 -1
- package/dist/viewer/{prod-DdQVR1xL.js → prod-BQakraPZ.js} +8 -8
- package/dist/viewer/{pt-BR-5N22H2LF-jUQJyEPF.js → pt-BR-5N22H2LF-CwvNc6uy.js} +1 -1
- package/dist/viewer/{pt-PT-UZXXM6DQ-4quEbcoT.js → pt-PT-UZXXM6DQ-BwnvpmWW.js} +1 -1
- package/dist/viewer/{quadrantDiagram-AXDQQJYC-qOr_Ag5n.js → quadrantDiagram-AXDQQJYC-D4SXsUJb.js} +1 -1
- package/dist/viewer/{railroadDiagram-O6MQD6OU-C8uzuX6Z.js → railroadDiagram-O6MQD6OU-CulJtFua.js} +1 -1
- package/dist/viewer/{requirementDiagram-BXWQKSXE-Dz0j-_Ul.js → requirementDiagram-BXWQKSXE-De2_bwHz.js} +1 -1
- package/dist/viewer/{ro-RO-JPDTUUEW-Fux6vqWg.js → ro-RO-JPDTUUEW-BHw0NmtR.js} +1 -1
- package/dist/viewer/{ru-RU-B4JR7IUQ-Dfr69XLN.js → ru-RU-B4JR7IUQ-B5DITxLM.js} +1 -1
- package/dist/viewer/{sequenceDiagram-WJ2MYXX4-DJU5fD19.js → sequenceDiagram-WJ2MYXX4-BHhjwzjx.js} +1 -1
- package/dist/viewer/{si-LK-N5RQ5JYF-Cb-bjtRn.js → si-LK-N5RQ5JYF-Dk53K3_l.js} +1 -1
- package/dist/viewer/{sk-SK-C5VTKIMK-CohdnzY8.js → sk-SK-C5VTKIMK-DB7JApvw.js} +1 -1
- package/dist/viewer/{sl-SI-NN7IZMDC-DHVdRHE2.js → sl-SI-NN7IZMDC-Di7xgnf6.js} +1 -1
- package/dist/viewer/{stateDiagram-D77RDMKH-Rooio_TB.js → stateDiagram-D77RDMKH-BrWLOECJ.js} +1 -1
- package/dist/viewer/{stateDiagram-v2-MP3YSRHH-DU1T3Lmf.js → stateDiagram-v2-MP3YSRHH-VaRx6koB.js} +1 -1
- package/dist/viewer/subset-shared.chunk-C8H8FPgN.js +1 -0
- package/dist/viewer/{subset-worker.chunk-Zq5HEGfq.js → subset-worker.chunk-GBtIwk6d.js} +1 -1
- package/dist/viewer/{sv-SE-XGPEYMSR-BU075tJ9.js → sv-SE-XGPEYMSR-DyLkhaQV.js} +1 -1
- package/dist/viewer/{swimlanes-42K2YHIH-BBJBvoSV.js → swimlanes-42K2YHIH-DamcOoFI.js} +1 -1
- package/dist/viewer/{swimlanesDiagram-VR7AAH4N-NfEcSN_S.js → swimlanesDiagram-VR7AAH4N-DPUeEhpY.js} +1 -1
- package/dist/viewer/{ta-IN-2NMHFXQM-D5U6fuX5.js → ta-IN-2NMHFXQM-CjzoVft2.js} +1 -1
- package/dist/viewer/{th-TH-HPSO5L25-5svbXPdz.js → th-TH-HPSO5L25-PA2-rOov.js} +1 -1
- package/dist/viewer/{timeline-definition-24CTP7MA-B0TrCHZJ.js → timeline-definition-24CTP7MA-BwUS-0eI.js} +1 -1
- package/dist/viewer/{tr-TR-DEFEU3FU-CtJIUVOL.js → tr-TR-DEFEU3FU-DbeH_D3-.js} +1 -1
- package/dist/viewer/{uk-UA-QMV73CPH-BUwW5t5R.js → uk-UA-QMV73CPH-CBoUNzCs.js} +1 -1
- package/dist/viewer/{vennDiagram-4TSXK5OY-I1KbtT6m.js → vennDiagram-4TSXK5OY-Ck_qiwQI.js} +1 -1
- package/dist/viewer/{vi-VN-M7AON7JQ-CEi077aa.js → vi-VN-M7AON7JQ-cdHSeyaj.js} +1 -1
- package/dist/viewer/{wardleyDiagram-VM6X3IG4-BBsUCECp.js → wardleyDiagram-VM6X3IG4-BgrIRqXb.js} +1 -1
- package/dist/viewer/{xychartDiagram-S5SC5T6Z-CVMwOWKp.js → xychartDiagram-S5SC5T6Z-B_1sg7JQ.js} +1 -1
- package/dist/viewer/{zh-CN-LNUGB5OW-BSFQBwv1.js → zh-CN-LNUGB5OW-BEaNhGg0.js} +1 -1
- package/dist/viewer/{zh-HK-E62DVLB3-C_UX1aQ7.js → zh-HK-E62DVLB3-DLSw7IIq.js} +1 -1
- package/dist/viewer/{zh-TW-RAJ6MFWO-BvBIQhnc.js → zh-TW-RAJ6MFWO-CqVqPKzO.js} +1 -1
- package/package.json +1 -1
- package/dist/viewer/flowDiagram-HODETNUW-QbMFIBc7.js +0 -1
- package/dist/viewer/percentages-BXMCSKIN-I1K7WJgu.js +0 -1
- package/dist/viewer/subset-shared.chunk-CrkhCoQF.js +0 -1
package/dist/cli.cjs
CHANGED
|
@@ -64,6 +64,7 @@ function projectPaths(dir) {
|
|
|
64
64
|
lock: import_node_path.default.join(state, "start.lock")
|
|
65
65
|
};
|
|
66
66
|
}
|
|
67
|
+
var invocation = () => process.env.RYUGI_ARTIFACTS_COMMAND || "ryugi-artifacts";
|
|
67
68
|
var ARTIFACT_PATTERN = /^(artboard|document|html)\/[a-z0-9][a-z0-9-]*$/;
|
|
68
69
|
var ARTIFACT_ERROR = "--artifact must be <type>/<id>: type artboard, document or html, id of lowercase letters, digits and hyphens";
|
|
69
70
|
|
|
@@ -148,9 +149,14 @@ function commandLine(pid) {
|
|
|
148
149
|
const line = full.stdout.split("\n").slice(1).join(" ").trim();
|
|
149
150
|
return line ? line.split(/\s+/) : null;
|
|
150
151
|
}
|
|
152
|
+
var isNodeImage = (tasklistLine) => /^"node\.exe"/i.test(tasklistLine.trim());
|
|
153
|
+
function windowsNodeAt(pid) {
|
|
154
|
+
const result = (0, import_node_child_process.spawnSync)("tasklist", ["/FI", `PID eq ${pid}`, "/FO", "CSV", "/NH"], { encoding: "utf8", windowsHide: true });
|
|
155
|
+
return result.status === 0 && isNodeImage(result.stdout);
|
|
156
|
+
}
|
|
151
157
|
function hasServerId(pid, id) {
|
|
152
158
|
if (!alive(pid)) return false;
|
|
153
|
-
if (process.platform === "win32") return
|
|
159
|
+
if (process.platform === "win32") return windowsNodeAt(pid);
|
|
154
160
|
return commandLine(pid)?.includes(`--artifacts-server-id=${id}`) ?? false;
|
|
155
161
|
}
|
|
156
162
|
function parentOf(pid) {
|
|
@@ -230,7 +236,7 @@ function recordAgent(paths) {
|
|
|
230
236
|
if (Object.keys(markers).length) import_node_fs3.default.writeFileSync(paths.agent, `${JSON.stringify(markers)}
|
|
231
237
|
`);
|
|
232
238
|
}
|
|
233
|
-
async function replace(pid) {
|
|
239
|
+
async function replace(pid, paths) {
|
|
234
240
|
try {
|
|
235
241
|
process.kill(pid, "SIGTERM");
|
|
236
242
|
} catch {
|
|
@@ -241,7 +247,7 @@ async function replace(pid) {
|
|
|
241
247
|
} catch {
|
|
242
248
|
}
|
|
243
249
|
if (await waitForExit(pid, 2e3)) return;
|
|
244
|
-
throw new CliError(`The running server (pid ${pid}) is on another release and did not stop; stop it with
|
|
250
|
+
throw new CliError(`The running server (pid ${pid}) is on another release and did not stop; stop it with \`${invocation()} stop --project-dir ${paths.project}\` and retry`);
|
|
245
251
|
}
|
|
246
252
|
function serverEnv(paths, options) {
|
|
247
253
|
const env = { ...process.env, ARTIFACTS_ROOT: paths.root, ARTIFACTS_HOST: options.host, ARTIFACTS_URL_HOST: options.urlHost, ARTIFACTS_OPEN: options.open ? "1" : "0" };
|
|
@@ -249,6 +255,7 @@ function serverEnv(paths, options) {
|
|
|
249
255
|
if (options.idleTimeoutMinutes) env.ARTIFACTS_IDLE_TIMEOUT_MS = String(Number(options.idleTimeoutMinutes) * 6e4);
|
|
250
256
|
delete env.RYUGI_ARTIFACTS_OWNER;
|
|
251
257
|
delete env.RYUGI_ARTIFACTS_VERSION;
|
|
258
|
+
delete env.RYUGI_ARTIFACTS_COMMAND;
|
|
252
259
|
return env;
|
|
253
260
|
}
|
|
254
261
|
async function start(options, emit) {
|
|
@@ -282,7 +289,7 @@ async function start(options, emit) {
|
|
|
282
289
|
emit(withLink(JSON.parse(info), options.artifact, true));
|
|
283
290
|
return 0;
|
|
284
291
|
}
|
|
285
|
-
await replace(running);
|
|
292
|
+
await replace(running, paths);
|
|
286
293
|
}
|
|
287
294
|
registerOwner(paths);
|
|
288
295
|
recordAgent(paths);
|
|
@@ -326,7 +333,7 @@ async function start(options, emit) {
|
|
|
326
333
|
const started = lines.find((line) => line.includes('"server-started"'));
|
|
327
334
|
if (started) {
|
|
328
335
|
for (let check = 0; check < 20; check++) {
|
|
329
|
-
if (!alive(child.pid)) throw new CliError(`Server started but was killed. Retry in a persistent terminal with:
|
|
336
|
+
if (!alive(child.pid)) throw new CliError(`Server started but was killed. Retry in a persistent terminal with: ${invocation()} start --project-dir ${paths.project}${options.artifact ? ` --artifact ${options.artifact}` : ""} --host ${options.host} --url-host ${options.urlHost} --foreground`);
|
|
330
337
|
await sleep(100);
|
|
331
338
|
}
|
|
332
339
|
emit(withLink(JSON.parse(started), options.artifact, false));
|
|
@@ -346,7 +353,7 @@ async function start(options, emit) {
|
|
|
346
353
|
}
|
|
347
354
|
|
|
348
355
|
// src/cli/publish.ts
|
|
349
|
-
var
|
|
356
|
+
var notRunning = (project) => `No artifacts server is running for this project. Start it with \`${invocation()} start --project-dir ${project}\`, then run this again.`;
|
|
350
357
|
async function publish(options, emit) {
|
|
351
358
|
if (options.action === "publish" || options.action === "unpublish") {
|
|
352
359
|
if (!options.artifact) throw new CliError("--artifact <type>/<id> is required");
|
|
@@ -358,7 +365,7 @@ async function publish(options, emit) {
|
|
|
358
365
|
try {
|
|
359
366
|
info = JSON.parse(readText(paths.info) ?? "");
|
|
360
367
|
} catch {
|
|
361
|
-
throw new CliError(
|
|
368
|
+
throw new CliError(notRunning(paths.project));
|
|
362
369
|
}
|
|
363
370
|
const base = new URL(info.url);
|
|
364
371
|
const key = base.searchParams.get("key") ?? "";
|
|
@@ -372,7 +379,7 @@ async function publish(options, emit) {
|
|
|
372
379
|
body: body ? JSON.stringify(body) : void 0
|
|
373
380
|
});
|
|
374
381
|
} catch {
|
|
375
|
-
throw new CliError(
|
|
382
|
+
throw new CliError(notRunning(paths.project));
|
|
376
383
|
}
|
|
377
384
|
const json = await res.json().catch(() => ({}));
|
|
378
385
|
if (res.status === 401) throw new CliError("", { type: "login-required", url: json.loginUrl, message: "Open url to sign in to the Ryugi cloud, then run the same command again." }, 2);
|
|
@@ -569,7 +576,7 @@ async function main(argv) {
|
|
|
569
576
|
}, emit);
|
|
570
577
|
}
|
|
571
578
|
if (command === "--version" || command === "-v") {
|
|
572
|
-
console.log("1.
|
|
579
|
+
console.log("1.10.1");
|
|
573
580
|
return 0;
|
|
574
581
|
}
|
|
575
582
|
if (command === "--help" || command === "-h") {
|
package/dist/server.cjs
CHANGED
|
@@ -1975,6 +1975,16 @@ function structuralWarnings(raw) {
|
|
|
1975
1975
|
if (raw.building !== void 0 && typeof raw.building !== "boolean") {
|
|
1976
1976
|
warnings.push('"building" must be a boolean');
|
|
1977
1977
|
}
|
|
1978
|
+
if (raw.writing !== void 0 && (typeof raw.writing !== "string" || !raw.writing)) {
|
|
1979
|
+
warnings.push('"writing" must be a board id');
|
|
1980
|
+
}
|
|
1981
|
+
if (isObject2(raw.notes)) {
|
|
1982
|
+
for (const [id2, note] of Object.entries(raw.notes)) {
|
|
1983
|
+
if (isObject2(note) && note.color !== void 0 && (typeof note.color !== "string" || !/^#(?:[\da-f]{3}|[\da-f]{6})$/i.test(note.color))) {
|
|
1984
|
+
warnings.push(`note "${id2}" color must be #RGB or #RRGGBB`);
|
|
1985
|
+
}
|
|
1986
|
+
}
|
|
1987
|
+
}
|
|
1978
1988
|
if (isObject2(raw.boards)) {
|
|
1979
1989
|
for (const [id2, board] of Object.entries(raw.boards)) {
|
|
1980
1990
|
if (isObject2(board) && board.interactive !== void 0 && typeof board.interactive !== "boolean") {
|
|
@@ -2083,6 +2093,9 @@ function validateCanvas(raw, fileExists, options = {}) {
|
|
|
2083
2093
|
warnings.push(`activePage "${canvas.activePage}" is not a page`);
|
|
2084
2094
|
}
|
|
2085
2095
|
const target = canvas.focus?.target;
|
|
2096
|
+
if (canvas.writing !== void 0 && !canvas.boards[canvas.writing]) {
|
|
2097
|
+
warnings.push(`writing target "${canvas.writing}" is not a board`);
|
|
2098
|
+
}
|
|
2086
2099
|
if (target !== void 0 && !canvas.boards[target] && !canvas.groups?.[target] && !canvas.notes?.[target]) {
|
|
2087
2100
|
warnings.push(`focus target "${target}" is not a board, group or note`);
|
|
2088
2101
|
}
|
|
@@ -83771,12 +83784,14 @@ async function createDocumentSession(options) {
|
|
|
83771
83784
|
setOutcome({ kind: "rejected", message: messageOf(err) });
|
|
83772
83785
|
return;
|
|
83773
83786
|
}
|
|
83774
|
-
const
|
|
83787
|
+
const fallback = lastGoodText ?? serializeDocument(editor.getEditorState().toJSON());
|
|
83788
|
+
const queued = streaming > 0;
|
|
83775
83789
|
lastGoodText = text2;
|
|
83776
83790
|
streaming += 1;
|
|
83777
83791
|
emit({ type: "status", outcome, streaming: true });
|
|
83778
83792
|
playing = playing.then(async () => {
|
|
83779
83793
|
try {
|
|
83794
|
+
const baseText = queued ? fallback : closestBase(written, text2, fallback);
|
|
83780
83795
|
const { stats, steps } = prepareAgentEdit(baseText, text2, target);
|
|
83781
83796
|
for (const step of steps) {
|
|
83782
83797
|
applyStep(step);
|
|
@@ -85686,12 +85701,13 @@ async function startArtifactsServer(options) {
|
|
|
85686
85701
|
for (const socket of clients) socket.write(frame);
|
|
85687
85702
|
};
|
|
85688
85703
|
const avatars = createAvatars(options.fetch);
|
|
85704
|
+
const names = commentNames({ agentFile: import_node_path16.default.join(stateDir, "agent"), projectDir: import_node_path16.default.resolve(root, "../.."), cloud: options.cloud });
|
|
85689
85705
|
const documents = createDocumentRegistry({
|
|
85690
85706
|
root,
|
|
85691
85707
|
stateDir,
|
|
85692
85708
|
timing: options.documentTiming,
|
|
85693
85709
|
broadcast,
|
|
85694
|
-
names
|
|
85710
|
+
names,
|
|
85695
85711
|
onWarningsChange: (id2) => {
|
|
85696
85712
|
const dir = resolveArtifactDir(root, "document", id2);
|
|
85697
85713
|
if (!dir) return;
|
|
@@ -85708,6 +85724,9 @@ async function startArtifactsServer(options) {
|
|
|
85708
85724
|
const payload = readArtifact(dir, ref, runtimeOf(ref, dir));
|
|
85709
85725
|
const reasons = [...payload.warnings];
|
|
85710
85726
|
if ("pending" in payload) reasons.push(...payload.pending.map((board) => `board ${board} is still being written`));
|
|
85727
|
+
if ("canvas" in payload && payload.canvas?.writing && !payload.pending.includes(payload.canvas.writing)) {
|
|
85728
|
+
reasons.push(`board ${payload.canvas.writing} is still being written`);
|
|
85729
|
+
}
|
|
85711
85730
|
if (session?.streaming()) reasons.push("the document is still being written");
|
|
85712
85731
|
const title = titleOf(payload, ref);
|
|
85713
85732
|
let published = null;
|
|
@@ -85849,7 +85868,7 @@ async function startArtifactsServer(options) {
|
|
|
85849
85868
|
return;
|
|
85850
85869
|
}
|
|
85851
85870
|
const ref = artifactKeyOf(`${type}/${id2}`);
|
|
85852
|
-
sendJson(res, 200, { ...readArtifact(dir, ref, runtimeOf(ref, dir)), contentBase: `${contentPrefix}${type}/${id2}/` });
|
|
85871
|
+
sendJson(res, 200, { ...readArtifact(dir, ref, runtimeOf(ref, dir)), ...ref.type !== "html" ? { agent: names.agent() } : {}, contentBase: `${contentPrefix}${type}/${id2}/` });
|
|
85853
85872
|
};
|
|
85854
85873
|
const serveList = (res) => {
|
|
85855
85874
|
const { artifacts, warnings } = listArtifacts(root);
|
|
@@ -86199,6 +86218,7 @@ function openReady(payload) {
|
|
|
86199
86218
|
if (!canvas || payload.warnings.length > 0) return false;
|
|
86200
86219
|
const boards = Object.entries(canvas.boards);
|
|
86201
86220
|
if (boards.length === 0) return false;
|
|
86221
|
+
if (canvas.building === true) return true;
|
|
86202
86222
|
const pending = new Set(payload.pending);
|
|
86203
86223
|
const ready = (id2) => {
|
|
86204
86224
|
const board = canvas.boards[id2];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-COiEfhsA.js";import{n as t,t as n}from"./jsx-runtime-CldxteV5.js";import{c as r,l as i,n as a,o,r as s,s as c}from"./DocumentEditor-
|
|
1
|
+
import{i as e}from"./rolldown-runtime-COiEfhsA.js";import{n as t,t as n}from"./jsx-runtime-CldxteV5.js";import{c as r,l as i,n as a,o,r as s,s as c}from"./DocumentEditor-CHFJtV6u.js";var l=e(t(),1),u=n();function d(){let e=(0,l.useMemo)(()=>window.matchMedia(`(prefers-color-scheme: dark)`),[]),[t,n]=(0,l.useState)(e.matches);return(0,l.useEffect)(()=>{let t=()=>n(e.matches);return e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)},[e]),t}function f({id:e,state:t,contentBase:n}){let f=d(),p=(0,l.useMemo)(()=>({artifact:`cloud/${e}`,contentBase:n,channel:c(),send:()=>void 0}),[e,n]);return(0,l.useEffect)(()=>{let e=document.createElement(`base`);return e.href=n,document.head.prepend(e),()=>e.remove()},[n]),(0,u.jsx)(`div`,{className:`x1us19tq x1rozbrz xo2rkog`,className:`ryugi-doc ${{className:`x1us19tq x1rozbrz xo2rkog`}.className??``}`,children:(0,u.jsx)(`article`,{className:`xrgej4m xvueqy4 x1axd487 x4l9tsp`,children:(0,u.jsx)(o.Provider,{value:p,children:(0,u.jsx)(i,{variant:`article`,theme:f?`dark`:`light`,initialValue:t,extraNodes:a,rendererConfig:s,onEditorReady:e=>e?.setEditable(!1),children:(0,u.jsx)(r,{})})})})})}export{f as default};
|