ryugi-artifacts 1.31.4 → 1.31.6
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 +79 -29
- package/dist/server.cjs +287 -247
- package/dist/viewer/CloudDocument--a8-nXso.js +1 -0
- package/dist/viewer/CloudLiveDocument-Dn7hsd9J.js +1 -0
- package/dist/viewer/{DocumentLayout-CoaWyJ8o.js → DocumentLayout-CyTmvIv_.js} +12 -12
- package/dist/viewer/DocumentPage-BjkBiEX-.css +1 -0
- package/dist/viewer/DocumentPage-CNXMmV9l.js +1 -0
- package/dist/viewer/{useSandboxFrame-DiOdLOg3.js → RailSwitch-D4FON4Vr.js} +8 -8
- package/dist/viewer/{abnfDiagram-VCTEODGH-V-HUdHOR.js → abnfDiagram-VCTEODGH-BU-Q5nRu.js} +1 -1
- package/dist/viewer/{ar-SA-G6X2FPQ2-DQ0iM0EN.js → ar-SA-G6X2FPQ2-Bym-z3Gy.js} +1 -1
- package/dist/viewer/{architectureDiagram-5GKGNRK7-BR7YqPnS.js → architectureDiagram-5GKGNRK7-hBXFocSt.js} +1 -1
- package/dist/viewer/{az-AZ-76LH7QW2-BZhhIHTR.js → az-AZ-76LH7QW2-DptPViJZ.js} +1 -1
- package/dist/viewer/{bg-BG-XCXSNQG7-CQon9Ha7.js → bg-BG-XCXSNQG7-BCAH5UjV.js} +1 -1
- package/dist/viewer/{blockDiagram-I7D4REHJ-2rr9DBaj.js → blockDiagram-I7D4REHJ-CQMZg8Nz.js} +1 -1
- package/dist/viewer/{bn-BD-2XOGV67Q-oMzz5AyV.js → bn-BD-2XOGV67Q-CQ103rTG.js} +1 -1
- package/dist/viewer/{c4Diagram-7LVT6UL2-BLeiPlMV.js → c4Diagram-7LVT6UL2-Wmb5uWym.js} +1 -1
- package/dist/viewer/{ca-ES-6MX7JW3Y-Cna6kdsT.js → ca-ES-6MX7JW3Y-QZjpbZoN.js} +1 -1
- package/dist/viewer/{chunk-4HAMMTFA-CjyXxW0j.js → chunk-4HAMMTFA-DApjFb3D.js} +1 -1
- package/dist/viewer/{chunk-EIO257PC-BLuvNuM3.js → chunk-EIO257PC-CWVuL_0r.js} +1 -1
- package/dist/viewer/{chunk-GMAD6QVW-B73OQhVp.js → chunk-GMAD6QVW-CsJibQuL.js} +1 -1
- package/dist/viewer/{chunk-GVQU2GXP-DKQ5qiuo.js → chunk-GVQU2GXP-DYTi7tYA.js} +1 -1
- package/dist/viewer/{chunk-IMKFNOWR-Cezt1GsL.js → chunk-IMKFNOWR-CWeDJlP4.js} +1 -1
- package/dist/viewer/{chunk-L3NEJ4N5-C-84XODC.js → chunk-L3NEJ4N5-TdTMGSnz.js} +1 -1
- package/dist/viewer/{chunk-OSK3NFVY-BAIU7jCA.js → chunk-OSK3NFVY-DmS4WZvt.js} +1 -1
- package/dist/viewer/{chunk-PWAF6VOD-n-gQe1QG.js → chunk-PWAF6VOD-CgqqcZ7Z.js} +1 -1
- package/dist/viewer/{chunk-SHT3W25Y-GBpOdXrL.js → chunk-SHT3W25Y-CO2CRBJI.js} +1 -1
- package/dist/viewer/{chunk-SVP7TREG-sSvXNpK2.js → chunk-SVP7TREG-CdURcuTQ.js} +1 -1
- package/dist/viewer/{chunk-TICWLB2K-CsBBxqeq.js → chunk-TICWLB2K--5oOkN7m.js} +1 -1
- package/dist/viewer/{classDiagram-ZZMXUADV-x8Bacm1h.js → classDiagram-ZZMXUADV-DeIP4NkP.js} +1 -1
- package/dist/viewer/{classDiagram-v2-VYDZK3BY-x8Bacm1h.js → classDiagram-v2-VYDZK3BY-DeIP4NkP.js} +1 -1
- package/dist/viewer/{cs-CZ-2BRQDIVT-DTbO_wNP.js → cs-CZ-2BRQDIVT-N2YztnjI.js} +1 -1
- package/dist/viewer/{cynefinDiagram-5FMLGOSQ-BAxRDxAh.js → cynefinDiagram-5FMLGOSQ-BqdKqwqw.js} +1 -1
- package/dist/viewer/{da-DK-5WZEPLOC-gh43GvJ3.js → da-DK-5WZEPLOC-CClTezxe.js} +1 -1
- package/dist/viewer/{dagre-GXQ25YYZ-B5Z9Ox26.js → dagre-GXQ25YYZ-DhmSGUk2.js} +1 -1
- package/dist/viewer/{de-DE-XR44H4JA-Dtwy2_La.js → de-DE-XR44H4JA-CLPa1jFU.js} +1 -1
- package/dist/viewer/{diagram-S7CK7UJ4-DF5PCIpV.js → diagram-S7CK7UJ4-rnc6tcUb.js} +1 -1
- package/dist/viewer/{diagram-UQ7AKVKN-Ce5zDPFC.js → diagram-UQ7AKVKN-CZG1zSha.js} +1 -1
- package/dist/viewer/{diagram-VX7I27RA-RUhzpCJg.js → diagram-VX7I27RA-esJGj2aD.js} +1 -1
- package/dist/viewer/{diagram-Z3DM3KII-C-TBa6Fl.js → diagram-Z3DM3KII-rMa1oT-N.js} +1 -1
- package/dist/viewer/{dist-C9jaXMxM.js → dist-0R8oZhgF.js} +1 -1
- package/dist/viewer/{dist-pIluIDrQ.js → dist-1wqDUqVM.js} +1 -1
- package/dist/viewer/{dist-D-k2wLgF.js → dist-B13oEVXf.js} +1 -1
- package/dist/viewer/{dist-7PnLKlq_.js → dist-B40UUbgw.js} +1 -1
- package/dist/viewer/{dist-Cyy67cae.js → dist-BMEAkBHE.js} +1 -1
- package/dist/viewer/{dist-CbJw7Hmx.js → dist-BQp88HM1.js} +1 -1
- package/dist/viewer/{dist-DlPv2tBz.js → dist-Bew_q9_H.js} +1 -1
- package/dist/viewer/{dist-CQCY9lrr.js → dist-C55eUDGb.js} +1 -1
- package/dist/viewer/{dist-DDAAPJmv.js → dist-C6czRr4c.js} +1 -1
- package/dist/viewer/{dist-DpWG9pfC.js → dist-CC9VKgjG.js} +4 -4
- package/dist/viewer/{dist-By5kxfOe.js → dist-CJ7QItR6.js} +1 -1
- package/dist/viewer/{dist-B84AnNmg.js → dist-CY2TkmE9.js} +1 -1
- package/dist/viewer/{dist-DqoaTJ1R.js → dist-CvCVEZHM.js} +1 -1
- package/dist/viewer/{dist-DN2KzIr5.js → dist-D-6apRFO.js} +1 -1
- package/dist/viewer/{dist-BjTvkeHe.js → dist-D6BaZXlD.js} +1 -1
- package/dist/viewer/{dist-dQ0_FCjz.js → dist-D78xEVNA.js} +1 -1
- package/dist/viewer/{dist-M2XMA2Pz.js → dist-DHALLG2c.js} +1 -1
- package/dist/viewer/{dist-CwTOAwWG.js → dist-DabEZ184.js} +1 -1
- package/dist/viewer/{dist-B7NVPGeP.js → dist-Dd3TTld7.js} +1 -1
- package/dist/viewer/{dist-dxkbB17f.js → dist-Ded9oFKo.js} +1 -1
- package/dist/viewer/{dist-AkIqU1Dz.js → dist-Wtk9y4QC.js} +1 -1
- package/dist/viewer/{dist-BWfLj92W.js → dist-cf3dK6JU.js} +1 -1
- package/dist/viewer/{dist-D19U_UOY.js → dist-txabnobd.js} +1 -1
- package/dist/viewer/{dist-E6DtvB3t.js → dist-vfTnUsvv.js} +1 -1
- package/dist/viewer/{ebnfDiagram-PWID7BFC-W6W8wGx4.js → ebnfDiagram-PWID7BFC-9giBRT9V.js} +1 -1
- package/dist/viewer/{el-GR-BZB4AONW-Dv4Rs_Df.js → el-GR-BZB4AONW-DiytE3HK.js} +1 -1
- package/dist/viewer/{en-B4ZKOASM-BHmDnV1n.js → en-B4ZKOASM-BnlX_3m1.js} +1 -1
- package/dist/viewer/{erDiagram-RLTQ6QDP-k_44u2lM.js → erDiagram-RLTQ6QDP-BFc3pr17.js} +1 -1
- package/dist/viewer/{es-ES-U4NZUMDT-D-vQ062d.js → es-ES-U4NZUMDT-BLZs9ryR.js} +1 -1
- package/dist/viewer/{eu-ES-A7QVB2H4-DYJjnf7k.js → eu-ES-A7QVB2H4-Do47CF4f.js} +1 -1
- package/dist/viewer/{fa-IR-HGAKTJCU-CeG9eVdo.js → fa-IR-HGAKTJCU-BZbWTobm.js} +1 -1
- package/dist/viewer/{fi-FI-Z5N7JZ37-BYhHYWe_.js → fi-FI-Z5N7JZ37-Bj1DZkcY.js} +1 -1
- package/dist/viewer/flowDiagram-HODETNUW-DJKmbPSM.js +1 -0
- package/dist/viewer/{fr-FR-RHASNOE6-HTwRpYPq.js → fr-FR-RHASNOE6-BwL6w642.js} +1 -1
- package/dist/viewer/{ganttDiagram-EL5Y4UJY-BaG9O0Mo.js → ganttDiagram-EL5Y4UJY-tkthcHqs.js} +1 -1
- package/dist/viewer/{gl-ES-HMX3MZ6V--twqMfjm.js → gl-ES-HMX3MZ6V-ConDt0TV.js} +1 -1
- package/dist/viewer/{he-IL-6SHJWFNN-DjEE_S2c.js → he-IL-6SHJWFNN-BlAXOFv0.js} +1 -1
- package/dist/viewer/{hi-IN-IWLTKZ5I-P609s9r1.js → hi-IN-IWLTKZ5I-D3eaYVhg.js} +1 -1
- package/dist/viewer/{hu-HU-A5ZG7DT2-DnDDq-09.js → hu-HU-A5ZG7DT2-DZRZmO8U.js} +1 -1
- package/dist/viewer/{id-ID-SAP4L64H-wXuUsbid.js → id-ID-SAP4L64H-CpfVDf1D.js} +1 -1
- package/dist/viewer/{image-GAAHSSAO-Z7fqDf9l.js → image-GAAHSSAO-CTiY9gHI.js} +1 -1
- package/dist/viewer/index.html +1 -1
- package/dist/viewer/index.js +9 -9
- package/dist/viewer/index2.css +16 -4
- package/dist/viewer/{infoDiagram-27XIBGKW-Dc7UJxEe.js → infoDiagram-27XIBGKW-nrTZd6ja.js} +1 -1
- package/dist/viewer/{ishikawaDiagram-5VMMS53U-HVSpaNcP.js → ishikawaDiagram-5VMMS53U-Qt3RnGXG.js} +1 -1
- package/dist/viewer/{it-IT-JPQ66NNP-Dz_ldq9W.js → it-IT-JPQ66NNP-D-9al1qd.js} +1 -1
- package/dist/viewer/{ja-JP-DBVTYXUO-D_Y3Qx6n.js → ja-JP-DBVTYXUO--8rpiAjQ.js} +1 -1
- package/dist/viewer/{journeyDiagram-3NMN7TZE-CZA_wgT3.js → journeyDiagram-3NMN7TZE-gleUhig1.js} +1 -1
- package/dist/viewer/{kaa-6HZHGXH3-Bg28G59N.js → kaa-6HZHGXH3-BISHy72m.js} +1 -1
- package/dist/viewer/{kab-KAB-ZGHBKWFO-CjKTOitL.js → kab-KAB-ZGHBKWFO-rqflrdnE.js} +1 -1
- package/dist/viewer/{kanban-definition-UXKFOSKX-DOrdOxZf.js → kanban-definition-UXKFOSKX-DHYX9Sne.js} +1 -1
- package/dist/viewer/{kk-KZ-P5N5QNE5-DDt5JOBa.js → kk-KZ-P5N5QNE5-CxsofODM.js} +1 -1
- package/dist/viewer/{km-KH-HSX4SM5Z-1GGv3vFQ.js → km-KH-HSX4SM5Z-CY7KPsg8.js} +1 -1
- package/dist/viewer/{ko-KR-MTYHY66A-DBC6a0Fk.js → ko-KR-MTYHY66A-Mo8X-aCW.js} +1 -1
- package/dist/viewer/{ku-TR-6OUDTVRD-D5PzWCFN.js → ku-TR-6OUDTVRD-XdGOo6AM.js} +1 -1
- package/dist/viewer/{lt-LT-XHIRWOB4-BMt-7WWM.js → lt-LT-XHIRWOB4-BTJg8sWT.js} +1 -1
- package/dist/viewer/{lv-LV-5QDEKY6T-Dzce_YpG.js → lv-LV-5QDEKY6T-BKlFEfuS.js} +1 -1
- package/dist/viewer/{mindmap-definition-YA3MSWOX-Bd2YON6d.js → mindmap-definition-YA3MSWOX-BmwdHmpO.js} +1 -1
- package/dist/viewer/{mr-IN-CRQNXWMA-UoxyeJGh.js → mr-IN-CRQNXWMA-D0AQrCA2.js} +1 -1
- package/dist/viewer/{my-MM-5M5IBNSE-DuhFAvGA.js → my-MM-5M5IBNSE-NjpzYQsO.js} +1 -1
- package/dist/viewer/{nb-NO-T6EIAALU-D2HesCV7.js → nb-NO-T6EIAALU-BzWm7B-O.js} +1 -1
- package/dist/viewer/{nl-NL-IS3SIHDZ-D-7LDwui.js → nl-NL-IS3SIHDZ-T8_DslA8.js} +1 -1
- package/dist/viewer/{nn-NO-6E72VCQL-CSp296dk.js → nn-NO-6E72VCQL-BTszDvP-.js} +1 -1
- package/dist/viewer/{oc-FR-POXYY2M6-07HaLB9l.js → oc-FR-POXYY2M6-hpKPsf_6.js} +1 -1
- package/dist/viewer/{pa-IN-N4M65BXN-CwctqD6c.js → pa-IN-N4M65BXN-DFhI5C_f.js} +1 -1
- package/dist/viewer/{pegDiagram-XKGWAZYB-CRD0uqB1.js → pegDiagram-XKGWAZYB-DqketQBQ.js} +1 -1
- package/dist/viewer/percentages-BXMCSKIN-BE-dJ5Ph.js +1 -0
- package/dist/viewer/{pieDiagram-E7YTZNPT-Cw74ebj0.js → pieDiagram-E7YTZNPT-CswNjFwQ.js} +1 -1
- package/dist/viewer/{pl-PL-T2D74RX3-BxJKeX_1.js → pl-PL-T2D74RX3-D558twE2.js} +1 -1
- package/dist/viewer/{prod-C-6zSFxv.js → prod-QHcKCKFc.js} +8 -8
- package/dist/viewer/{pt-BR-5N22H2LF-C4_Reldi.js → pt-BR-5N22H2LF-DSx6pGlq.js} +1 -1
- package/dist/viewer/{pt-PT-UZXXM6DQ-CQ3gFzQH.js → pt-PT-UZXXM6DQ-DmOAYnAV.js} +1 -1
- package/dist/viewer/{quadrantDiagram-AXDQQJYC-DwieeaHN.js → quadrantDiagram-AXDQQJYC-Du4WujoN.js} +1 -1
- package/dist/viewer/{railroadDiagram-O6MQD6OU-DuQ49o4K.js → railroadDiagram-O6MQD6OU-DtPojk0V.js} +1 -1
- package/dist/viewer/{requirementDiagram-BXWQKSXE-Dlq9-j8c.js → requirementDiagram-BXWQKSXE-DPfOYGEZ.js} +1 -1
- package/dist/viewer/{ro-RO-JPDTUUEW-BVKmnDvM.js → ro-RO-JPDTUUEW-CqQXLoRW.js} +1 -1
- package/dist/viewer/{ru-RU-B4JR7IUQ-CCxHHLrA.js → ru-RU-B4JR7IUQ-J649-Rol.js} +1 -1
- package/dist/viewer/{sequenceDiagram-WJ2MYXX4-DBhcNj5A.js → sequenceDiagram-WJ2MYXX4-BCzPC46m.js} +1 -1
- package/dist/viewer/{si-LK-N5RQ5JYF-DkOlkhdA.js → si-LK-N5RQ5JYF-BtnJyPI4.js} +1 -1
- package/dist/viewer/{sk-SK-C5VTKIMK-Bi4Uprlv.js → sk-SK-C5VTKIMK-Dd4ukPQm.js} +1 -1
- package/dist/viewer/{sl-SI-NN7IZMDC-BGuRxttK.js → sl-SI-NN7IZMDC-CfLEfkKK.js} +1 -1
- package/dist/viewer/{stateDiagram-D77RDMKH-DXKpxIuA.js → stateDiagram-D77RDMKH-rJOQf35n.js} +1 -1
- package/dist/viewer/{stateDiagram-v2-MP3YSRHH-CBJWpsr9.js → stateDiagram-v2-MP3YSRHH-2Xy4p5Ky.js} +1 -1
- package/dist/viewer/subset-shared.chunk-D9kegQAo.js +1 -0
- package/dist/viewer/{subset-worker.chunk-Cz-rQHpj.js → subset-worker.chunk-VHwqqTOg.js} +1 -1
- package/dist/viewer/{sv-SE-XGPEYMSR-Del5jLMP.js → sv-SE-XGPEYMSR-6aSxoBco.js} +1 -1
- package/dist/viewer/{swimlanes-42K2YHIH-tHu8NwKc.js → swimlanes-42K2YHIH-v4Asr9Gq.js} +1 -1
- package/dist/viewer/{swimlanesDiagram-VR7AAH4N-QGW4zvRm.js → swimlanesDiagram-VR7AAH4N-ELa654QB.js} +1 -1
- package/dist/viewer/{ta-IN-2NMHFXQM-BPvWkb6U.js → ta-IN-2NMHFXQM-CFXGYN1q.js} +1 -1
- package/dist/viewer/{th-TH-HPSO5L25-CLDQIXWf.js → th-TH-HPSO5L25-DE3snqCF.js} +1 -1
- package/dist/viewer/{timeline-definition-24CTP7MA-Deed7SMe.js → timeline-definition-24CTP7MA-BAcffnfw.js} +1 -1
- package/dist/viewer/{tr-TR-DEFEU3FU-CKhIwM-a.js → tr-TR-DEFEU3FU-B4xo5NFF.js} +1 -1
- package/dist/viewer/{uk-UA-QMV73CPH-ArQZWzCO.js → uk-UA-QMV73CPH-6G-hcLK9.js} +1 -1
- package/dist/viewer/{vennDiagram-4TSXK5OY-DTsTOAD0.js → vennDiagram-4TSXK5OY-X6DsLJAg.js} +1 -1
- package/dist/viewer/{vi-VN-M7AON7JQ-BlPxrRvf.js → vi-VN-M7AON7JQ-1UrXvj_c.js} +1 -1
- package/dist/viewer/{wardleyDiagram-VM6X3IG4-fftHN4D7.js → wardleyDiagram-VM6X3IG4-C6d-EQap.js} +1 -1
- package/dist/viewer/{xychartDiagram-S5SC5T6Z-DVVUiHF6.js → xychartDiagram-S5SC5T6Z-CsXmXjQH.js} +1 -1
- package/dist/viewer/{zh-CN-LNUGB5OW-DpNT6DDj.js → zh-CN-LNUGB5OW-t5_YfMiv.js} +1 -1
- package/dist/viewer/{zh-HK-E62DVLB3-BlLwOVyy.js → zh-HK-E62DVLB3-DJLNgDSD.js} +1 -1
- package/dist/viewer/{zh-TW-RAJ6MFWO-CV_K9CZh.js → zh-TW-RAJ6MFWO-CxK5BbTi.js} +1 -1
- package/package.json +1 -1
- package/dist/viewer/CloudDocument-DI8rTqBL.js +0 -1
- package/dist/viewer/CloudLiveDocument-DAfaRpMU.js +0 -1
- package/dist/viewer/DocumentPage-B5t36jZf.js +0 -1
- package/dist/viewer/DocumentPage-RHTp39ah.css +0 -1
- package/dist/viewer/flowDiagram-HODETNUW-C3rwBhGN.js +0 -1
- package/dist/viewer/percentages-BXMCSKIN-9jDDhvw6.js +0 -1
- package/dist/viewer/subset-shared.chunk-ek8LNSV8.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.history-view,.history-panel,.history-sheet{font:13px/1.6 var(--lobe-font-family);color:var(--lobe-color-text)}.history-view [hidden],.history-panel [hidden]{display:none!important}.history-view button,.history-panel button,.history-sheet button{font:inherit;color:inherit;cursor:pointer}.history-view button:focus-visible,.history-panel button:focus-visible,.history-sheet button:focus-visible{outline:2px solid var(--lobe-color-info);outline-offset:2px}.history-view button:disabled,.history-panel button:disabled,.history-sheet button:disabled{opacity:.35;cursor:default}.history-icon{background:0 0;border:0;border-radius:6px;flex:none;place-items:center;width:26px;height:26px;padding:0;display:grid;color:var(--lobe-color-text-secondary)!important}.history-icon:hover:not(:disabled){background:var(--lobe-color-fill-tertiary);color:var(--lobe-color-text)!important}.history-filter{border:1px solid var(--lobe-color-border-secondary);white-space:nowrap;background:0 0;border-radius:6px;padding:2px 8px;font-size:11px!important}.history-filter[aria-pressed=true]{background:var(--lobe-color-fill-tertiary);border-color:var(--lobe-color-border)}.history-count{text-align:right;min-width:34px;color:var(--lobe-color-text-secondary);font-variant-numeric:tabular-nums;font-size:11px}.history-button{border:1px solid var(--lobe-color-border);background:var(--lobe-color-bg-container);border-radius:6px;padding:4px 12px;font-size:12px!important}.history-quiet{background:0 0;border:0;border-radius:6px;padding:4px 8px;color:var(--lobe-color-text-secondary)!important;font-size:12px!important}.history-panel{scrollbar-width:thin;max-height:calc(100dvh - 108px);padding-bottom:16px;font-size:12px;position:sticky;top:84px;overflow:auto}.history-panel-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.history-panel-head h2{margin:0;font-size:14px;font-weight:600}.history-update{background:var(--lobe-color-info-bg);color:var(--lobe-color-info-text);border-radius:6px;align-items:center;gap:8px;margin-bottom:12px;padding:8px 10px;font-size:12px;display:flex}.history-update span{flex:1;min-width:0}.history-update button{white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-weight:600;display:flex;color:inherit!important}.history-compare{border-bottom:1px solid var(--lobe-color-border-secondary);padding-bottom:14px}.history-compare dl{grid-template-columns:22px minmax(0,1fr);align-items:baseline;row-gap:4px;margin:0;display:grid}.history-compare dt{color:var(--lobe-color-text-secondary);font-size:11px}.history-compare dd{white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;gap:6px;min-width:0;margin:0;display:flex;overflow:hidden}.history-compare dd strong{font-weight:600}.history-compare dd span{color:var(--lobe-color-text-secondary)}.history-controls{font-variant-numeric:tabular-nums;align-items:center;gap:6px;margin-top:12px;display:flex}.history-plus{color:var(--lobe-color-success-text);font-size:11px}.history-minus{color:var(--lobe-color-error-text);font-size:11px}.history-spacer{flex:1}.history-timeline{margin:4px 0 0;padding:0;list-style:none}.history-node{--dot:19px;position:relative}.history-node[data-day]{--dot:53px}.history-node:before,.history-node:after{content:"";background:var(--lobe-color-border-secondary);width:1px;position:absolute;left:9px}.history-node:before{height:var(--dot);top:0}.history-node:after{top:var(--dot);bottom:0}.history-node:first-child:before,.history-node:last-child:after{display:none}.history-node[data-upper=in]:before,.history-node[data-lower=in]:after{background:var(--lobe-color-text)}.history-day{box-sizing:border-box;height:34px;color:var(--lobe-color-text-secondary);padding:12px 0 0 28px;font-size:11px;font-weight:600}.history-row{position:relative}.history-dot{z-index:1;box-sizing:border-box;border:1.5px solid var(--lobe-color-text-quaternary);background:var(--lobe-color-bg-container);border-radius:50%;width:8px;height:8px;position:absolute;top:19px;left:9.5px;transform:translate(-50%,-50%)}.history-node[data-state=latest] .history-dot{background:var(--lobe-color-text);border:0;width:9px;height:9px}.history-node[data-state=range] .history-dot{background:var(--lobe-color-text-secondary);border:0;width:7px;height:7px}.history-node[data-state=selected] .history-dot{border:2.5px solid var(--lobe-color-text);width:12px;height:12px}.history-select{box-sizing:border-box;text-align:left;background:0 0;border:0;border-radius:6px;width:100%;padding:8px 40px 8px 28px;display:block}.history-select:hover{background:var(--lobe-color-fill-quaternary)}.history-node[data-state=selected] .history-select{background:var(--lobe-color-fill-tertiary)}.history-line{align-items:center;gap:8px;min-width:0;display:flex}.history-line strong{font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.history-line span:not(.history-tag){color:var(--lobe-color-text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.history-tag{border:1px solid var(--lobe-color-border);color:var(--lobe-color-text-secondary);border-radius:4px;flex:none;padding:0 5px;font-size:10px;line-height:16px}.history-tag.history-start{background:var(--lobe-color-text);color:var(--lobe-color-bg-container);border-color:#0000}.history-meta{color:var(--lobe-color-text-secondary);font-variant-numeric:tabular-nums;margin-top:2px;font-size:11px;display:block}.history-changed{color:var(--lobe-color-text)}.history-expand{width:28px;height:28px;position:absolute;top:9px;right:6px}.history-expand svg{transition:transform .12s}.history-expand[aria-expanded=true] svg{transform:rotate(90deg)}.history-raw{flex-direction:column;padding:2px 6px 8px 28px;display:flex}.history-raw button{box-sizing:border-box;text-align:left;background:0 0;border:0;border-radius:4px;align-items:baseline;gap:10px;width:100%;padding:4px 6px;font-size:11px;display:flex}.history-raw button:hover,.history-raw button[aria-current=true]{background:var(--lobe-color-fill-tertiary)}.history-raw span{color:var(--lobe-color-text-secondary);font-variant-numeric:tabular-nums;flex:none}.history-raw code{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--lobe-color-text-secondary);font-size:10px;overflow:hidden}.history-more{border:1px solid var(--lobe-color-border-secondary);background:0 0;border-radius:6px;width:100%;margin-block:12px;padding:8px;font-size:12px;display:block}.history-end{border-top:1px solid var(--lobe-color-border-secondary);color:var(--lobe-color-text-secondary);margin:18px 0 0;padding-top:12px;font-size:11px;line-height:1.7}.history-waiting p{border-bottom:1px solid var(--lobe-color-border-secondary);flex-direction:column;margin:0;padding:12px 0 14px;display:flex}.history-waiting p strong{font-weight:600}.history-waiting p span{color:var(--lobe-color-text-secondary);font-size:11px}.history-skeleton{flex-direction:column;gap:22px;margin-top:22px;padding-left:28px;display:flex}.history-skeleton span{background:var(--lobe-color-fill-tertiary);border-radius:5px;height:10px}.history-failure{border-bottom:1px solid var(--lobe-color-border-secondary);flex-direction:column;gap:10px;padding:14px 0 16px;display:flex}.history-failure strong{color:var(--lobe-color-error-text);align-items:center;gap:8px;font-weight:600;display:flex}.history-failure code{background:var(--lobe-color-fill-tertiary);overflow-wrap:anywhere;border-radius:6px;padding:8px 10px;font-size:11px}.history-failure>span{color:var(--lobe-color-text-secondary)}.history-actions{gap:8px;display:flex}.history-strip{z-index:5;border-bottom:1px solid var(--lobe-color-border-secondary);background:var(--lobe-color-bg-container);align-items:center;gap:4px;margin-bottom:8px;padding:6px 0;font-size:12px;display:flex;position:sticky;top:52px}.history-pick{text-align:left;background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start;min-width:0;padding:2px 0;display:flex}.history-pick span{color:var(--lobe-color-text-secondary);font-size:11px}.history-pick strong{white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;align-items:center;gap:4px;max-width:100%;font-weight:600;display:flex;overflow:hidden}.history-view .history-update{margin-block:8px}.history-content{padding:12px 16px 28px}.history-content>h1{margin:0 0 32px;font-size:24px;font-weight:700;line-height:1.35}.history-note{background:var(--lobe-color-fill-tertiary);color:var(--lobe-color-text-secondary);border-radius:6px;margin:0 0 28px;padding:10px 14px;font-size:12px}.history-hunk{min-width:0;scroll-margin-top:120px}.history-hunk:not(.history-equal){outline-offset:4px;border-radius:8px;outline:2px solid #0000;margin:14px 0 20px}.history-hunk[data-current]{outline-color:color-mix(in srgb,var(--lobe-color-info) 35%,transparent)}.history-caption{color:var(--lobe-color-text-secondary);font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;margin-bottom:6px;font-size:11px;line-height:1.5;display:flex}.history-kind{color:var(--lobe-color-text);font-weight:600}.history-insert .history-kind{color:var(--lobe-color-success-text)}.history-delete .history-kind{color:var(--lobe-color-error-text)}.history-before,.history-after,.history-merged{border-radius:6px;padding:8px 12px;position:relative}.history-before+.history-after{margin-top:2px}.history-before{background:color-mix(in srgb,var(--lobe-color-error-text) 8%,var(--lobe-color-bg-container))}.history-after{background:color-mix(in srgb,var(--lobe-color-success-text) 8%,var(--lobe-color-bg-container))}.history-merged{background:var(--lobe-color-fill-quaternary)}.history-before:before,.history-after:before,.history-merged:before{text-align:center;width:16px;font:700 13px/1.75 ui-monospace,SFMono-Regular,Menlo,monospace;position:absolute;top:8px;left:-26px}.history-before:before{content:"−";color:var(--lobe-color-error-text)}.history-after:before{content:"+";color:var(--lobe-color-success-text)}.history-merged:before{content:"±";color:var(--lobe-color-text-secondary)}.history-fold{background:0 0;border:0;align-items:center;gap:10px;width:100%;margin:4px 0 18px;padding:4px 0;display:flex;color:var(--lobe-color-text-secondary)!important;font-size:11px!important}.history-fold:before,.history-fold:after{content:"";border-top:1px dashed var(--lobe-color-border);flex:1}.history-message{text-align:center;color:var(--lobe-color-text-secondary);padding:36px 12px;font-size:13px}.history-message>button{border:1px solid var(--lobe-color-border-secondary);background:0 0;border-radius:6px;margin:15px auto;padding:5px 12px;display:block}.history-hunk .rich-content,.history-hunk [class*=richContent]{max-width:100%;font-size:14px;line-height:1.75}.history-hunk .rich-content>:first-child{margin-top:0}.history-hunk .rich-content>:last-child{margin-bottom:0}.history-hunk .rich-content>.rich-heading-h1{font-size:24px;line-height:1.35}.history-hunk .rich-content>.rich-heading-h2{font-size:20px;line-height:1.4}.history-hunk .rich-content>.rich-heading-h3{font-size:17px;line-height:1.45}.history-hunk pre{white-space:pre-wrap;overflow-wrap:anywhere}.history-hunk table,.history-hunk img{max-width:100%}.history-sheet{z-index:30;position:fixed;inset:0}.history-sheet-head{justify-content:space-between;align-items:center;padding:6px 8px 8px 20px;display:flex}.history-sheet-head>span{flex-direction:column;display:flex}.history-sheet-head strong{font-size:15px;font-weight:600}.history-sheet-head small{color:var(--lobe-color-text-secondary);font-size:12px}.history-sheet-head button{background:0 0;border:0;min-height:44px;padding:0 12px;font-size:14px}.history-sheet-body{padding:0 12px 24px}.history-sheet .history-select{min-height:56px}@media (width<=1100px){.history-before:before,.history-after:before,.history-merged:before{float:left;width:auto;margin-right:8px;display:inline-block;position:static}}@media (width<=640px){.history-strip .history-icon{width:44px;height:44px}.history-hunk table{font-size:12px}.history-hunk{overflow-x:auto}.history-hunk .rich-content,.history-hunk [class*=richContent]{font-size:16px}}
|
|
@@ -0,0 +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,Na as i,Qr as a,S as o,b as s,m as c,mi as l,o as u,p as d,pi as f,s as p,t as m,u as h,v as g,x as _,yi as v}from"./RailSwitch-D4FON4Vr.js";import{$ as y,A as b,B as x,C as S,D as ee,F as C,G as w,H as te,I as T,J as E,Jn as D,K as O,L as k,M as A,N as j,O as ne,P as re,Q as ie,R as M,S as ae,T as N,U as P,V as F,W as I,X as oe,Y as L,Z as se,_ as ce,a as le,b as R,c as ue,d as z,et as de,g as fe,h as pe,i as me,j as he,l as ge,m as _e,n as ve,nt as B,o as ye,p as be,q as V,qn as xe,r as Se,rt as Ce,s as we,t as Te,tt as Ee,u as De,v as Oe,w as ke,x as Ae,y as je,z as Me}from"./DocumentLayout-CyTmvIv_.js";import{a as Ne,c as Pe,d as Fe,f as Ie,g as Le,h as Re,i as ze,l as Be,m as Ve,n as He,o as Ue,r as We,s as Ge,u as Ke}from"./index.js";var qe={name:`message-square`,size:24,node:[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]};qe.node;var Je=v(qe),Ye={name:`rotate-cw`,size:24,node:[[`path`,{d:`M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8`,key:`1p45f6`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}]]};Ye.node;var Xe=v(Ye),H=e(t(),1);function Ze({streaming:e,pending:t,agentActiveAt:n,now:r}){if(e)return{kind:`editing`};if(t===0)return{kind:`idle`};if(n===void 0)return{kind:`working`,pending:t,idleMs:null};let i=Math.max(0,r-n);return i>3e5?{kind:`stale`,pending:t,idleMs:i}:{kind:`working`,pending:t,idleMs:i}}function Qe(e){return e<6e4?`${Math.floor(e/1e3)} 秒`:e<36e5?`${Math.floor(e/6e4)} 分钟`:`${Math.floor(e/36e5)} 小时`}function $e(e,t,n){switch(e.kind){case`editing`:return`${t} 正在编辑${n?` ${n}`:``}`;case`idle`:return null;case`working`:{let n=`${t} 还有 ${e.pending} 节待写`;return e.idleMs===null?n:`${n} · ${e.idleMs<1e4?`刚刚`:`${Qe(e.idleMs)}前`}更新`}case`stale`:return`${t} ${Qe(e.idleMs)}没有更新 · 还有 ${e.pending} 节待写`}}async function et(e){await new Promise(e=>setTimeout(e,0));let t=[...e.getAllChanges().values()].flat().sort((e,t)=>e.lamport-t.lamport||e.peer.localeCompare(t.peer)||e.counter-t.counter),n=e.shallowSinceFrontiers(),r=e.frontiersToVV(n),i=[],a=[];try{for(let n of t){r.setLast({peer:n.peer,counter:n.counter+n.length-1});let t={id:`${n.counter}@${n.peer}`,change:n,frontiers:e.vvToFrontiers(r)};i.push(t);let o=n.message===`human`?`human`:n.message?.startsWith(`agent:`)?`agent`:n.message?.startsWith(`session `)?`session`:`unknown`,s=a.at(-1),c=s?.entries.at(-1)?.change;s&&c&&o!==`unknown`&&s.source===o&&c.peer===n.peer&&c.timestamp>0&&n.timestamp>=c.timestamp&&n.timestamp-c.timestamp<=60?(s.entries.push(t),s.id=t.id):a.push({id:t.id,source:o,entries:[t]}),i.length%200==0&&await new Promise(e=>setTimeout(e,0))}}finally{r.free()}return{entries:i,groups:a.reverse(),shallow:n.length>0}}function tt(e,t,n){let r=e.fork(),i;try{r.checkout(t);let e=r.getTree(fe).roots();if(e.length!==1)throw Error(`此版本的文档内容不可用`);let a=O({nodes:n,editable:!1,onError:e=>{throw e}});i=ce(a,r);let o=e[0].children()??[],s=new Map,c=(e,t)=>{s.set(e.id,t),e.children()?.forEach(e=>c(e,t))};return o.forEach(e=>c(e,e.id)),{value:a.getEditorState().toJSON(),ids:o.map(e=>e.id),owners:s}}finally{i?.dispose(),r.free()}}var nt=/^cid:(\d+@\d+):Map$/;function rt(e,t,n){let r=new Map(n.flatMap(e=>[...e.owners])),i=e.getTree(fe),a=new Map,o=new Map(t.map((e,t)=>[e,t])),s=(e,t)=>{let n=a.get(e);(!n||o.get(n)<o.get(t))&&a.set(e,t)};for(let n of t){let{peer:t,counter:i,length:a}=n.change;for(let o of e.getChangedContainersIn({peer:t,counter:i},a)){let t=e.getContainerById(o);for(;t;){let e=nt.exec(t.id)?.[1],i=e&&r.get(e);if(i){s(i,n);break}t=t.parent()}}}let c=e=>e&&t.find(({change:t})=>t.peer===e.peer&&t.counter<=e.counter&&e.counter<t.counter+t.length);for(let e of new Set(r.values())){if(!i.isNodeDeleted(e))continue;let t=c(i.getNodeByID(e)?.getLastMoveId());t&&s(e,t)}return a}var it=5e4,at=`background-color: color-mix(in srgb, var(--rc-alert-caution) 22%, transparent); text-decoration: line-through;`,ot=`background-color: color-mix(in srgb, var(--rc-alert-tip) 22%, transparent);`;function U(e){let t=e;return t.type===`heading`?`heading:${t.tag}`:t.type===`list`?`list:${t.listType}`:t.type||`unknown`}function W(e,t){return JSON.stringify(e)===JSON.stringify(t)}function G(e){let t=e;return t.type===`text`&&typeof t.text==`string`}function K(e){let t=e;return Array.isArray(t.children)?t.children:null}function st(e,t){let n=typeof e==`string`?e.trim():``;return n?`${n}${n.endsWith(`;`)?``:`;`} ${t}`:t}function q(e,t,n){let{style:r}=e;return n===`delete`?r=st(r,at):n===`insert`&&(r=st(r,ot)),{...e,text:t,style:r}}function J(e,t){return{...e,children:t}}function Y(e,t){if(G(e))return q(e,e.text,t);let n=K(e);return n?J(e,n.map(e=>Y(e,t))):e}function ct(e){return Array.from(e).reverse().join(``)}function lt(e){let t=[];for(let n of e){if(!n.text)continue;let e=t.at(-1);e&&e.kind===n.kind?e.text+=n.text:t.push({...n})}return t}function ut(e,t){let n=e.length,r=t.length;if(n===0&&r===0)return[];if(n===0)return[{kind:`insert`,text:t.join(``)}];if(r===0)return[{kind:`delete`,text:e.join(``)}];if(n*r>it)return[{kind:`delete`,text:e.join(``)},{kind:`insert`,text:t.join(``)}];let i=Array.from({length:n+1},()=>Array.from({length:r+1}).fill(0));for(let a=1;a<=n;a++)for(let n=1;n<=r;n++)e[a-1]===t[n-1]?i[a][n]=i[a-1][n-1]+1:i[a][n]=Math.max(i[a-1][n],i[a][n-1]);let a=[],o=n,s=r;for(;o>0&&s>0;)if(e[o-1]===t[s-1]){let t=a.at(-1);t&&t.kind===`equal`?t.text+=e[o-1]:a.push({kind:`equal`,text:e[o-1]}),o--,s--}else if(i[o-1][s]>=i[o][s-1]){let t=a.at(-1);t&&t.kind===`delete`?t.text+=e[o-1]:a.push({kind:`delete`,text:e[o-1]}),o--}else{let e=a.at(-1);e&&e.kind===`insert`?e.text+=t[s-1]:a.push({kind:`insert`,text:t[s-1]}),s--}for(;o>0;){let t=a.at(-1);t&&t.kind===`delete`?t.text+=e[o-1]:a.push({kind:`delete`,text:e[o-1]}),o--}for(;s>0;){let e=a.at(-1);e&&e.kind===`insert`?e.text+=t[s-1]:a.push({kind:`insert`,text:t[s-1]}),s--}return lt(a.reverse().map(e=>({kind:e.kind,text:ct(e.text)})))}function dt(e,t){let n=Array.from(e),r=Array.from(t),i=0;for(;i<n.length&&i<r.length&&n[i]===r[i];)i++;let a=n.length-1,o=r.length-1;for(;a>=i&&o>=i&&n[a]===r[o];)a--,o--;let s=[];return i>0&&s.push({kind:`equal`,text:n.slice(0,i).join(``)}),s.push(...ut(n.slice(i,a+1),r.slice(i,o+1))),a<n.length-1&&s.push({kind:`equal`,text:n.slice(a+1).join(``)}),lt(s)}function ft(e,t){let n=dt(e.text,t.text),r=[],i=[],a=!1;for(let o of n)o.text&&(o.kind===`equal`?(r.push(q(e,o.text)),i.push(q(t,o.text))):(a=!0,o.kind===`delete`?r.push(q(e,o.text,`delete`)):i.push(q(t,o.text,`insert`))));return{oldNodes:r.length>0?r:[e],newNodes:i.length>0?i:[t],changed:a}}function pt(e,t){let n=e.length,r=t.length,i=Array.from({length:n+1},()=>Array.from({length:r+1}).fill(0));for(let a=1;a<=n;a++)for(let n=1;n<=r;n++){let r=Math.max(i[a-1][n],i[a][n-1]);if(U(e[a-1])===U(t[n-1])){let o=W(e[a-1],t[n-1])?2:1;i[a][n]=Math.max(r,i[a-1][n-1]+o)}else i[a][n]=r}let a=[],o=n,s=r;for(;o>0&&s>0;){if(U(e[o-1])===U(t[s-1])){let n=W(e[o-1],t[s-1]),r=n?2:1;if(i[o][s]===i[o-1][s-1]+r){a.push(n?{kind:`equal`,node:e[o-1]}:{kind:`modify`,oldNode:e[o-1],newNode:t[s-1]}),o--,s--;continue}}i[o-1][s]>=i[o][s-1]?(a.push({kind:`delete`,node:e[o-1]}),o--):(a.push({kind:`insert`,node:t[s-1]}),s--)}for(;o>0;)a.push({kind:`delete`,node:e[--o]});for(;s>0;)a.push({kind:`insert`,node:t[--s]});return a.reverse(),a}function mt(e,t){let n=pt(e,t),r=[],i=[],a=!1;for(let e of n)switch(e.kind){case`equal`:r.push(e.node),i.push(e.node);break;case`delete`:a=!0,r.push(Y(e.node,`delete`));break;case`insert`:a=!0,i.push(Y(e.node,`insert`));break;case`modify`:{if(a=!0,G(e.oldNode)&&G(e.newNode)){let t=ft(e.oldNode,e.newNode);r.push(...t.oldNodes),i.push(...t.newNodes);break}let t=ht(e.oldNode,e.newNode);t?(r.push(t.oldNode),i.push(t.newNode)):(r.push(Y(e.oldNode,`delete`)),i.push(Y(e.newNode,`insert`)));break}}return{oldChildren:r,newChildren:i,changed:a}}function ht(e,t){if(U(e)!==U(t))return null;if(W(e,t))return{oldNode:e,newNode:t,changed:!1};let n=K(e),r=K(t);if(!n||!r)return null;let i=mt(n,r);return i.changed?{oldNode:J(e,i.oldChildren),newNode:J(t,i.newChildren),changed:!0}:{oldNode:e,newNode:t,changed:!1}}function gt(e,t){let n=ht(e,t);return n?{oldNode:n.oldNode,newNode:n.newNode}:{oldNode:Y(e,`delete`),newNode:Y(t,`insert`)}}function _t(e,t){let n=dt(e.text,t.text),r=[];for(let i of n)i.text&&(i.kind===`equal`?r.push(q(t,i.text)):i.kind===`delete`?r.push(q(e,i.text,`delete`)):r.push(q(t,i.text,`insert`)));return r}function vt(e,t){let n=pt(e,t),r=[];for(let e of n)switch(e.kind){case`equal`:r.push(e.node);break;case`delete`:r.push(Y(e.node,`delete`));break;case`insert`:r.push(Y(e.node,`insert`));break;case`modify`:{if(G(e.oldNode)&&G(e.newNode)){r.push(..._t(e.oldNode,e.newNode));break}let t=K(e.oldNode),n=K(e.newNode);t&&n?r.push(J(e.newNode,vt(t,n))):(r.push(Y(e.oldNode,`delete`)),r.push(Y(e.newNode,`insert`)));break}}return r}function yt(e,t){if(U(e)!==U(t))return Y(t,`insert`);if(W(e,t))return t;let n=K(e),r=K(t);return!n||!r?Y(t,`insert`):J(t,vt(n,r))}function bt(e,t){let n=pt(e.root.children,t.root.children),r=[];for(let e of n)switch(e.kind){case`equal`:{let t=r.at(-1);t&&t.type===`equal`?t.nodes.push(e.node):r.push({type:`equal`,nodes:[e.node]});break}case`modify`:{let t=gt(e.oldNode,e.newNode);r.push({type:`delete`,nodes:[t.oldNode]},{type:`insert`,nodes:[t.newNode]})}break;case`delete`:r.push({type:`delete`,nodes:[Y(e.node,`delete`)]});break;case`insert`:r.push({type:`insert`,nodes:[Y(e.node,`insert`)]})}return r}function xt(e){let t={...e};if(t.$){let{blockId:e,...n}=t.$;Object.keys(n).length?t.$=n:delete t.$}return t.children&&=t.children.map(xt),t}function St(e,t){let{children:n,text:r,...i}=e,{children:a,text:o,...s}=t;return JSON.stringify(i)!==JSON.stringify(s)||!!(n&&a&&Et(n,a).some(e=>e.kind===`modify`&&St(e.old[0],e.current[0])))}function Ct(e){let t=e;return t.type===`dynamic`||t.type===`pending`?{type:`paragraph`,version:1,direction:null,format:``,indent:0,children:[{type:`text`,version:1,text:t.type===`dynamic`?`动态内容(历史中不运行)\n${t.url}\n高度:${t.initialHeight??320}px\n${JSON.stringify(t.props??{})}`:`待完成:${t.intent??``}`,format:0,detail:0,mode:`normal`,style:``}]}:t.children?{...t,children:t.children.map(Ct)}:t}function wt(e){return Tt(e.map(Ct))}function Tt(e){return{root:{type:`root`,version:1,direction:null,format:``,indent:0,children:e}}}function Et(e,t){let n=bt(Tt(e),Tt(t)),r=[],i=0,a=0;for(let o=0;o<n.length;o++){let s=n[o];if(s.type===`equal`){r.push({kind:`equal`,old:e.slice(i,i+s.nodes.length),current:t.slice(a,a+s.nodes.length),oldIndex:i,newIndex:a}),i+=s.nodes.length,a+=s.nodes.length;continue}let c=0,l=0;for(;o<n.length&&n[o].type!==`equal`;){let e=n[o++];e.type===`delete`?c+=e.nodes.length:l+=e.nodes.length}o--;for(let n=0;n<Math.max(c,l);n++){let o=n<c?[e[i+n]]:[],s=n<l?[t[a+n]]:[];r.push({kind:o.length&&s.length?`modify`:o.length?`delete`:`insert`,old:o,current:s,oldIndex:o.length?i+n:void 0,newIndex:s.length?a+n:void 0})}i+=c,a+=l}return r}function Dt(e,t){return Et(e.root.children.map(xt),t.root.children.map(xt)).map(e=>{let t={oldIndex:e.oldIndex,newIndex:e.newIndex};if(e.kind===`modify`){let n=e.old[0],r=e.current[0];return n.type===r.type&&!St(n,r)?{kind:`modify`,value:wt([yt(n,r)]),...t}:{kind:`modify`,before:wt(e.old),value:wt(e.current),...t}}let n=e.kind===`delete`?e.old:e.current;return{kind:e.kind,value:wt(e.kind===`equal`?n:n.map(t=>Y(t,e.kind))),...t}})}function Ot(e){let t=O(e);return t._headless=!0,[`registerDecoratorListener`,`registerRootListener`,`registerMutationListener`,`getRootElement`,`setRootElement`,`getElementByKey`,`focus`,`blur`].forEach(e=>{t[e]=()=>{(function(e,...t){throw function(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);return n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}(e,...t)})(439,e)}}),t}var X=n();function kt({text:e}){let t=(0,H.useRef)(null),n=(0,H.useRef)(null);return(0,H.useEffect)(()=>{let r=t.current;if(!r)return;let i=r.parentNode;if(!i)return;let a=n.current;return!a||a.parentNode!==i?(a=document.createComment(e),i.insertBefore(a,r),n.current=a):a.data!==e&&(a.data=e),()=>{n.current?.parentNode&&n.current.parentNode.removeChild(n.current),n.current=null}},[e]),(0,X.jsx)(`template`,{suppressHydrationWarning:!0,"data-rich-comment-anchor":``,ref:t})}var Z=e=>`${B[e]} ${Ce[e]}`,At={h1:Z(`headingH1`),h2:Z(`headingH2`),h3:Z(`headingH3`),h4:Z(`headingH4`),h5:Z(`headingH5`),h6:Z(`headingH6`)};function jt(e){return e.toLowerCase().trim().replaceAll(/[^\s\w\u3000-\u9FFF\uAC00-\uD7AF\uFF00-\uFFEF-]/g,``).replaceAll(/[\s_]+/g,`-`).replaceAll(/^-+|-+$/g,``)}function Mt(e){return e.type===`comment`?``:e.text?e.text:e.children?e.children.map(Mt).join(``):``}var Nt=/^["'«‘“‹「『"']/,Pt=/["'»’”›」』"']$/;function Ft(e,t,n,r,i){switch(e.type){case`root`:return(0,X.jsx)(X.Fragment,{children:n});case`paragraph`:{let r=e.format?{textAlign:e.format}:void 0;return(0,X.jsx)(`p`,{className:Z(`paragraph`),style:r,children:n??(0,X.jsx)(`br`,{})},t)}case`heading`:{let a=e.tag,o=jt(i||Mt(e)),s=o;if(o){let e=r.get(o);e===void 0?r.set(o,1):(s=`${o}-${e}`,r.set(o,e+1))}return(0,X.jsxs)(a,{className:At[a],id:s||void 0,children:[s&&(0,X.jsx)(`a`,{className:Z(`headingAnchor`),href:`#${s}`,tabIndex:0,children:(0,X.jsx)(D,{"aria-hidden":!0,size:14,strokeWidth:2})}),n]},t)}case`rich-quote`:case`quote`:{let r=(i||Mt(e)).trim(),a=Nt.test(r),o=Pt.test(r),s=e.attribution;return(0,X.jsxs)(`blockquote`,{className:Z(`quote`),"data-no-close-quote":o?``:void 0,"data-no-open-quote":a?``:void 0,children:[n,s&&(0,X.jsxs)(`footer`,{className:Z(`quoteAttribution`),children:[`— `,s]})]},t)}case`list`:{let r=e.listType===`number`?`ol`:`ul`,i=e.listType===`number`?Z(`listOl`):e.listType===`check`?`${Z(`checklist`)} ${Z(`listUl`)}`:Z(`listUl`);return(0,X.jsx)(r,{className:i,start:e.start===1?void 0:e.start,children:n},t)}case`listitem`:{let r=e.checked!==void 0,i=e.children?.some(e=>e.type===`list`),a=typeof e.value==`number`&&e.value>1?e.value:void 0,o;return o=i?Z(`listNestedItem`):r?e.checked?`${Z(`listItem`)} ${Z(`listItemChecked`)}`:`${Z(`listItem`)} ${Z(`listItemUnchecked`)}`:Z(`listItem`),(0,X.jsx)(`li`,{className:o,value:a,children:n},t)}case`link`:return(0,X.jsxs)(`a`,{className:Z(`link`),href:e.url,rel:e.rel||`noopener`,target:e.target||`_blank`,children:[(0,X.jsx)(b,{href:e.url}),n]},t);case`autolink`:return(0,X.jsxs)(`a`,{className:Z(`link`),href:e.url,rel:`noopener`,target:`_blank`,children:[(0,X.jsx)(b,{href:e.url}),n]},t);case`horizontalrule`:return(0,X.jsx)(`hr`,{className:Z(`hr`)},t);case`table`:return(0,X.jsx)(`div`,{className:Z(`tableScrollableWrapper`),children:(0,X.jsx)(`table`,{className:Z(`table`),children:n})},t);case`tablerow`:return(0,X.jsx)(`tr`,{children:n},t);case`tablecell`:{let r=e.headerState?`th`:`td`,i=e.headerState?Z(`tableCellHeader`):Z(`tableCell`);return(0,X.jsx)(r,{className:i,colSpan:e.colSpan>1?e.colSpan:void 0,children:n},t)}case`details`:{let r=e.summary||``;return(0,X.jsxs)(`details`,{className:`${T.details} ${k.details}`,open:e.open||void 0,children:[(0,X.jsxs)(`summary`,{className:`${T.summary} ${k.summary}`,children:[(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`${T.chevron} ${k.chevron}`,children:(0,X.jsx)(`svg`,{fill:`none`,height:`20`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`1.5`,viewBox:`0 0 20 20`,width:`20`,children:(0,X.jsx)(`path`,{d:`M8 6L12 10L8 14`})})}),(0,X.jsx)(`span`,{className:`${T.summaryText} ${k.summaryText}`,children:r})]}),(0,X.jsx)(`div`,{className:`${T.content} ${k.content}`,children:n})]},t)}case`spoiler`:return(0,X.jsx)(`span`,{className:Z(`spoiler`),role:`button`,tabIndex:0,children:n},t);case`tag`:return(0,X.jsx)(`span`,{className:Z(`tag`),style:{backgroundColor:te(e.text)},children:e.text},t);case`comment`:return(0,X.jsx)(kt,{text:e.text??``},t);case`ruby`:return(0,H.createElement)(de,{key:t,rendererKey:`Ruby`,defaultRenderer:ne,props:{reading:e.reading??``,children:n}});case`code`:return(0,X.jsx)(`pre`,{className:`rich-code-block`,children:(0,X.jsx)(`code`,{children:n})},t);case`code-highlight`:return(0,X.jsx)(`span`,{children:e.text},t);case`linebreak`:return(0,X.jsx)(`br`,{},t);case`tab`:return(0,X.jsx)(`span`,{children:` `},t);default:return null}}var It=e=>`${B[e]} ${Ce[e]}`,Lt=[[1,`textBold`],[2,`textItalic`],[4,`textStrikethrough`],[8,`textUnderline`],[16,`textCode`],[32,`textSubscript`],[64,`textSuperscript`],[128,`textHighlight`]];function Rt(e){let t={};for(let n of e.split(`;`)){let e=n.indexOf(`:`);if(e===-1)continue;let r=n.slice(0,e).trim(),i=n.slice(e+1).trim();if(!r||!i)continue;let a=r.replaceAll(/-([a-z])/g,(e,t)=>t.toUpperCase());t[a]=i}return t}function zt(e,t){let n=e.text,r=e.format||0;for(let[e,i]of Lt)r&e&&(n=(0,X.jsx)(`span`,{className:It(i),children:n},`${t}-${e}`));return e.style&&(n=(0,X.jsx)(`span`,{style:Rt(e.style),children:n},t)),n}function Bt(e){let t={},n=new Set,r={},i=1;function a(e){if(e.type===`footnote`&&e.identifier){let t=e.identifier;n.has(t)||(n.add(t),r[t]=i++)}if(e.type===`footnote-section`&&e.definitions&&Object.assign(t,e.definitions),e.children)for(let t of e.children)a(t);if(e.root&&a(e.root),e.content&&typeof e.content==`object`&&e.content.root&&a(e.content),e.cells&&Array.isArray(e.cells))for(let t of e.cells)t&&t.root&&a(t)}a(e);for(let e of n)e in t||(t[e]=``);return{definitions:t,displayNumberMap:r}}var Vt=e=>`${B.alert} ${Ce.alert} rich-alert-${e}`;function Ht(e,t,n){switch(e.type){case`alert-quote`:return(0,H.createElement)(`div`,{key:t,className:Vt(e.alertType)},n);case`banner`:return(0,H.createElement)(`div`,{key:t,className:`rich-banner rich-banner-${e.bannerType}`},n);case`grid-container`:return(0,H.createElement)(`div`,{key:t,className:`${M.container} ${Me.container}`},n);default:return(0,H.isValidElement)(n)?(0,H.cloneElement)(n,{key:t}):n}}function Ut(e,t,n){return(0,H.isValidElement)(e)&&typeof e.type==`string`?(0,H.cloneElement)(e,{"data-block-id":t}):(0,X.jsx)(`div`,{className:`rich-block-anchor`,"data-block-id":t,children:e},`${n}-block-anchor`)}function Wt(e,t,n,r){return t?(r.blockAnchor??Ut)(e,t,n):e}function Gt(e,t,n,r,i,a,o){let s=e.getKey?e.getKey():i,{builtinNodeOverrides:c}=o;if(typeof e.decorate==`function`){let r=null;try{r=e.decorate(t,n)}catch{}if(r!=null){let t=e.exportJSON?e.exportJSON():{},n=c?.[t.type];return Wt(n?n(t,s,[r],()=>Ht(t,s,r)):Ht(t,s,r),a,s,o)}}let l=e.exportJSON?e.exportJSON():{};if(l.type===`text`){let e=c?.text;return e?e(l,s,null,()=>zt(l,s)):zt(l,s)}let u=typeof e.getChildren==`function`?e.getChildren():[];Array.isArray(l.children)&&l.children.length===0&&u.length>0&&(l.children=u.map(e=>({type:typeof e.getType==`function`?e.getType():e.__type})));let d=null;u.length>0&&(d=u.map((e,i)=>Gt(e,t,n,r,`${s}-${i}`,void 0,o)));let f=e.getTextContent?e.getTextContent():void 0,p=c?.[l.type];return Wt(p?p(l,s,d,()=>Ft(l,s,d,r,f)):Ft(l,s,d,r,f),a,s,o)}function Kt(e,t,n){let r=Ot({nodes:t,theme:F,editable:!1,onError:e=>{console.error(`[RichRenderer]`,e)}}),i={namespace:`ssr`,theme:F},a=A(e),o=r.parseEditorState(a);r.setEditorState(o);let s=Bt(a),c=a.root?.children,l=null;return o.read(()=>{let e=w(),t=new Map,a=e.getChildren().map((e,a)=>Gt(e,r,i,t,`ssr-${a}`,c?.[a]?.$?.blockId,n));l=(0,X.jsx)(X.Fragment,{children:a})}),{content:l,footnoteData:s,renderNestedContent:e=>{let r=Ot({nodes:t,theme:F,editable:!1,onError:e=>{console.error(`[RichRenderer:nested]`,e)}}),i={namespace:`ssr-nested`,theme:F},a=A(e),o=r.parseEditorState(a);r.setEditorState(o);let s=null,c=a.root?.children;return o.read(()=>{let e=w(),t=new Map,a=e.getChildren().map((e,a)=>Gt(e,r,i,t,`nested-${a}`,c?.[a]?.$?.blockId,n));s=(0,X.jsx)(X.Fragment,{children:a})}),s}}}function qt({value:e,variant:t=`article`,theme:n=`light`,className:r,style:i,as:a=`div`,nested:o=!1,rendererConfig:s,extraNodes:c,builtinNodeOverrides:l,blockAnchor:u}){let d=Ee(t),f=P(),{content:p,footnoteData:m,renderNestedContent:h}=(0,H.useMemo)(()=>Kt(e,c?[...C,...c]:C,{blockAnchor:u,builtinNodeOverrides:l}),[u,l,c,e]),g=[`rich-content`,d,r].filter(Boolean).join(` `),_=typeof a==`string`?{suppressHydrationWarning:!0,className:g,"data-rich-nested":o?`true`:void 0,"data-theme":n}:{};return(0,X.jsx)(j,{className:d,theme:n,children:(0,X.jsx)(re,{colorScheme:n,children:(0,X.jsx)(y,{config:s,mode:`renderer`,variant:t,children:(0,X.jsx)(oe,{definitions:m.definitions,displayNumberMap:m.displayNumberMap,children:(0,X.jsx)(x,{value:f??h,children:(0,X.jsx)(a,{..._,style:i,children:p})})})})})})}var Jt=[S],Yt=864e5,Xt=e=>String(e).padStart(2,`0`),Zt=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime();function Qt(e,t=Date.now()){if(!(e>0))return`时间未记录`;let n=new Date(e*1e3),r=new Date(t),i=Math.round((Zt(r)-Zt(n))/Yt);if(i===0)return`今天`;if(i===1)return`昨天`;let a=`${n.getMonth()+1}月${n.getDate()}日`;return n.getFullYear()===r.getFullYear()?a:`${n.getFullYear()}年${a}`}function $t(e,t=!1){if(!(e>0))return`--:--`;let n=new Date(e*1e3),r=`${Xt(n.getHours())}:${Xt(n.getMinutes())}`;return t?`${r}:${Xt(n.getSeconds())}`:r}function Q(e){return e>0?`${Qt(e)} ${$t(e)}`:`时间未记录`}var en={human:`浏览器编辑`,agent:`Agent 编辑`,session:`会话开始`,unknown:`未标记编辑`};function tn(e){let{session:t,selected:n}=e;return t&&n?t.history.groups.find(e=>e.entries.includes(n)):void 0}function nn(e){return e.session?.history.entries.at(-1)?.change.timestamp??0}function rn({model:e}){let{count:t,changeIndex:n,loading:r}=e;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`span`,{role:`status`,"aria-live":`polite`,className:`history-count`,children:[t?n+1:0,` / `,t]}),(0,X.jsx)(`button`,{type:`button`,className:`history-icon`,"aria-label":`上一处变更`,disabled:n===0||r,onClick:()=>e.navigate(-1),children:(0,X.jsx)(Le,{size:14,"aria-hidden":`true`})}),(0,X.jsx)(`button`,{type:`button`,className:`history-icon`,"aria-label":`下一处变更`,disabled:n>=t-1||r,onClick:()=>e.navigate(1),children:(0,X.jsx)(l,{size:14,"aria-hidden":`true`})})]})}function an({model:e}){return(0,X.jsx)(`button`,{type:`button`,className:`history-filter`,"aria-pressed":e.onlyChanges,onClick:e.toggleOnly,children:`仅看变更`})}function on({model:e}){return e.pending?(0,X.jsxs)(`div`,{className:`history-update`,role:`status`,children:[(0,X.jsx)(`span`,{children:e.streaming?`等待本轮编辑完成…`:`文档有新内容,对比仍停在 ${$t(nn(e))}`}),(0,X.jsxs)(`button`,{type:`button`,disabled:e.streaming||e.loading,onClick:e.refresh,children:[(0,X.jsx)(Xe,{size:12,"aria-hidden":`true`}),`更新对比`]})]}):null}function sn({model:e}){let{selected:t,blocks:n,count:r}=e,i=tn(e),a=n.filter(e=>e.kind===`insert`||e.kind===`modify`).length,o=n.filter(e=>e.kind===`delete`||e.kind===`modify`).length;return(0,X.jsxs)(`section`,{className:`history-compare`,"aria-label":`对比范围`,children:[(0,X.jsxs)(`dl`,{children:[(0,X.jsx)(`dt`,{children:`从`}),(0,X.jsxs)(`dd`,{children:[(0,X.jsx)(`strong`,{children:t?Q(t.change.timestamp):`选择时间点`}),i?(0,X.jsx)(`span`,{children:en[i.source]}):null]}),(0,X.jsx)(`dt`,{children:`到`}),(0,X.jsxs)(`dd`,{children:[(0,X.jsx)(`strong`,{children:`最新版本`}),(0,X.jsx)(`span`,{children:Q(nn(e))})]})]}),(0,X.jsxs)(`div`,{className:`history-controls`,children:[(0,X.jsxs)(`span`,{children:[r,` 处变更`]}),(0,X.jsxs)(`span`,{className:`history-plus`,children:[`+`,a]}),(0,X.jsxs)(`span`,{className:`history-minus`,children:[`−`,o]}),(0,X.jsx)(`span`,{className:`history-spacer`}),(0,X.jsx)(an,{model:e}),(0,X.jsx)(rn,{model:e})]})]})}function cn({model:e}){let[t,n]=(0,H.useState)(50),[r,i]=(0,H.useState)(()=>new Set),{session:a,selected:o,blocks:s}=e;if(!a)return null;let{groups:c,entries:l,shallow:u}=a.history,d=c.findIndex(e=>o!==null&&e.entries.includes(o)),p=new Map;for(let e of s)e.group&&p.set(e.group,(p.get(e.group)??0)+1);let m=c.slice(0,t),h=e=>Qt(e.entries.at(-1).change.timestamp),g=e=>i(t=>{let n=new Set(t);return n.delete(e)||n.add(e),n});return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`ol`,{className:`history-timeline`,"aria-label":`历史时间线`,children:m.map((t,n)=>{let i=t.entries.at(-1),a=h(t),s=n===0||a!==h(m[n-1]),c=n===d?`selected`:n===0?`latest`:n<d?`range`:`outside`,l=r.has(t.id),u=n<d?p.get(t):void 0;return(0,X.jsxs)(`li`,{className:`history-node`,"data-state":c,"data-upper":n<=d?`in`:`out`,"data-lower":n<d?`in`:`out`,"data-day":s?``:void 0,children:[s?(0,X.jsx)(`div`,{className:`history-day`,children:a}):null,(0,X.jsxs)(`div`,{className:`history-row`,children:[(0,X.jsx)(`span`,{className:`history-dot`,"aria-hidden":`true`}),(0,X.jsxs)(`button`,{type:`button`,className:`history-select`,"aria-current":c===`selected`?`true`:void 0,onClick:()=>e.select(i),children:[(0,X.jsxs)(`span`,{className:`history-line`,children:[(0,X.jsx)(`strong`,{children:$t(i.change.timestamp)}),(0,X.jsx)(`span`,{children:en[t.source]}),c===`latest`?(0,X.jsx)(`span`,{className:`history-tag`,children:`最新`}):null,c===`selected`?(0,X.jsx)(`span`,{className:`history-tag history-start`,children:`对比起点`}):null]}),(0,X.jsxs)(`span`,{className:`history-meta`,children:[t.entries.length,` 次提交`,u?(0,X.jsxs)(`span`,{className:`history-changed`,children:[` · `,u,` 处变更`]}):null]})]}),(0,X.jsx)(`button`,{type:`button`,className:`history-icon history-expand`,"aria-label":l?`收起原始提交`:`展开原始提交`,"aria-expanded":l,onClick:()=>g(t.id),children:(0,X.jsx)(f,{size:14,"aria-hidden":`true`})})]}),l?(0,X.jsx)(`div`,{className:`history-raw`,children:[...t.entries].reverse().map(t=>(0,X.jsxs)(`button`,{type:`button`,title:t.change.message,"aria-current":t===o?`true`:void 0,onClick:()=>e.select(t),children:[(0,X.jsx)(`span`,{children:$t(t.change.timestamp,!0)}),(0,X.jsx)(`code`,{children:t.change.message||`未标记编辑`})]},t.id))}):null]},t.id)})}),t<c.length?(0,X.jsx)(`button`,{type:`button`,className:`history-more`,onClick:()=>n(e=>e+50),children:`加载更早记录`}):(0,X.jsxs)(`p`,{className:`history-end`,children:[u?`更早历史未保留`:`已到最早记录`,` · `,c.length,` 段编辑 · `,l.length,` 次提交`,(0,X.jsx)(`br`,{}),`时间来自编辑设备,按因果顺序排列`]})]})}function ln({streaming:e}){return(0,X.jsxs)(`div`,{className:`history-waiting`,children:[(0,X.jsx)(`p`,{role:`status`,children:e?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`strong`,{children:`Agent 正在编辑`}),(0,X.jsx)(`span`,{children:`本轮编辑完成后再读取历史,避免对比到半截内容`})]}):(0,X.jsx)(`strong`,{children:`正在加载历史…`})}),(0,X.jsx)(`div`,{className:`history-skeleton`,"aria-hidden":`true`,children:[150,130,160,120].map(e=>(0,X.jsx)(`span`,{style:{width:e}},e))})]})}function un({model:e}){return(0,X.jsxs)(`div`,{role:`alert`,className:`history-failure`,children:[(0,X.jsxs)(`strong`,{children:[(0,X.jsx)(Re,{size:15,"aria-hidden":`true`}),`无法读取历史`]}),(0,X.jsx)(`code`,{children:e.error}),(0,X.jsx)(`span`,{children:`文档本身没有受影响,可以继续阅读与评论。`}),(0,X.jsxs)(`span`,{className:`history-actions`,children:[(0,X.jsx)(`button`,{type:`button`,className:`history-button`,disabled:e.streaming,onClick:e.refresh,children:`重试`}),(0,X.jsx)(`button`,{type:`button`,className:`history-quiet`,onClick:e.close,children:`回到评论`})]})]})}function dn({model:e}){return(0,X.jsxs)(`aside`,{className:`history-panel`,"aria-label":`历史记录`,children:[(0,X.jsxs)(`header`,{className:`history-panel-head`,children:[(0,X.jsx)(`h2`,{children:`历史记录`}),(0,X.jsx)(`button`,{type:`button`,className:`history-icon`,"aria-label":`关闭历史,回到评论`,onClick:e.close,children:(0,X.jsx)(a,{size:14,"aria-hidden":`true`})})]}),(0,X.jsx)(on,{model:e}),e.error?(0,X.jsx)(un,{model:e}):e.session?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(sn,{model:e}),(0,X.jsx)(cn,{model:e})]}):(0,X.jsx)(ln,{streaming:e.streaming})]})}function fn({model:e,onDismiss:t}){let n=(0,H.useRef)(null);(0,H.useEffect)(()=>{let e=document.activeElement,t=n.current,r=()=>[...t?.querySelectorAll(`button:not(:disabled), a[href], input:not(:disabled), [tabindex="0"]`)??[]];r()[0]?.focus();let i=e=>{if(e.key!==`Tab`)return;let t=r();e.shiftKey&&document.activeElement===t[0]?(e.preventDefault(),t.at(-1)?.focus()):!e.shiftKey&&document.activeElement===t.at(-1)&&(e.preventDefault(),t[0]?.focus())};return t?.addEventListener(`keydown`,i),()=>{t?.removeEventListener(`keydown`,i),e?.focus()}},[]);let r=(0,X.jsxs)(`div`,{className:`history-sheet-head`,children:[(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`strong`,{children:`选择对比起点`}),(0,X.jsxs)(`small`,{children:[`与最新版本 · `,Q(nn(e)),` 比较`]})]}),(0,X.jsx)(`button`,{type:`button`,onClick:t,children:`完成`})]});return(0,X.jsx)(`div`,{ref:n,className:`history-sheet`,role:`dialog`,"aria-modal":`true`,"aria-label":`选择对比起点`,children:(0,X.jsx)(Ge,{snaps:[0,.85],snap:.85,onSnap:e=>{e===0&&t()},onScrim:t,header:r,children:(0,X.jsx)(`div`,{className:`history-sheet-body`,children:(0,X.jsx)(cn,{model:e})})})})}var pn=[ke,ee,...Jt],mn={[E]:ae,[L]:Ae,[se]:R,[ie]:_e},hn={insert:`新增`,delete:`删除`,modify:`修改`};function gn({model:e,theme:t,title:n,narrow:r,bodyRef:i,onPick:a}){let{session:o,selected:s,blocks:c,count:u,changeIndex:d,loading:f,error:p,streaming:m,onlyChanges:h}=e,g=e=>(0,X.jsx)(qt,{value:e,variant:`article`,theme:t,extraNodes:pn,rendererConfig:mn}),_=-1;return(0,X.jsxs)(`div`,{className:`history-view`,children:[r?(0,X.jsxs)(`div`,{className:`history-strip`,children:[(0,X.jsxs)(`button`,{type:`button`,className:`history-pick`,onClick:a,children:[(0,X.jsx)(`span`,{children:`对比起点 · 点按切换`}),(0,X.jsxs)(`strong`,{children:[s?Q(s.change.timestamp):`选择时间点`,` → 最新`,(0,X.jsx)(l,{size:12,"aria-hidden":`true`})]})]}),(0,X.jsx)(an,{model:e}),(0,X.jsx)(rn,{model:e})]}):null,r?(0,X.jsx)(on,{model:e}):null,p?r?(0,X.jsxs)(`div`,{role:`alert`,className:`history-message`,children:[`无法读取历史:`,p,(0,X.jsx)(`button`,{type:`button`,disabled:m,onClick:e.refresh,children:`重试`})]}):(0,X.jsx)(`p`,{className:`history-message`,children:`历史暂不可读,详情见右侧。`}):f||!o?(0,X.jsx)(`div`,{role:`status`,className:`history-message`,children:m?`等待本轮编辑完成…`:`正在计算差异…`}):(0,X.jsxs)(`div`,{ref:i,"aria-label":`差异正文`,className:`history-content`,children:[o.latest.value.root.children.some(e=>e.type===`heading`&&e.tag===`h1`)?null:(0,X.jsx)(`h1`,{children:n}),u?null:(0,X.jsx)(`p`,{role:`status`,className:`history-note`,children:`与所选时间点没有差异。选择更早的记录查看修改。`}),c.map((t,n)=>{if(t.kind===`equal`)return h?(0,X.jsx)(`button`,{type:`button`,className:`history-fold`,onClick:e.showAll,children:(0,X.jsxs)(`span`,{children:[t.value.root.children.length,` 段未改动 · 展开`]})},n):(0,X.jsx)(`section`,{className:`history-hunk history-equal`,children:g(t.value)},n);_++;let r=t.before?null:t.kind===`insert`?`history-after`:t.kind===`delete`?`history-before`:`history-merged`;return(0,X.jsxs)(`section`,{"data-history-change":``,"data-current":_===d?``:void 0,className:`history-hunk history-${t.kind}`,children:[(0,X.jsxs)(`div`,{className:`history-caption`,children:[(0,X.jsx)(`span`,{className:`history-kind`,children:hn[t.kind]}),t.author?(0,X.jsxs)(`span`,{children:[Q(t.author.change.timestamp),t.group?` · ${en[t.group.source]}`:``]}):null]}),t.before?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`history-before`,children:g(t.before)}),(0,X.jsx)(`div`,{className:`history-after`,children:g(t.value)})]}):(0,X.jsx)(`div`,{className:r,children:g(t.value)})]},n)}),(0,X.jsx)(`p`,{className:`history-end`,children:`已到本次对比末尾。媒体资源未做历史归档,同一地址的文件可能已更新。`})]})]})}var _n=e=>JSON.stringify(e.frontiers()),vn=(e,t)=>t===void 0?void 0:e[t];function yn({doc:e,nodes:t,streaming:n,theme:r,title:i,open:a,onClose:o}){let[s,l]=(0,H.useState)(null),[u,d]=(0,H.useState)(null),f=(0,H.useRef)(null),p=(0,H.useRef)(null),m=(0,H.useRef)(0),[h,g]=(0,H.useState)(!0),[_,v]=(0,H.useState)(null),[y,b]=(0,H.useState)(!1),[x,S]=(0,H.useState)([]),[ee,C]=(0,H.useState)(!1),[w,te]=(0,H.useState)(0),[T,E]=(0,H.useState)(!1),D=c(`(max-width: 1100px)`),O=(0,H.useRef)(null),k=(0,H.useCallback)(async()=>{if(!e)return;let n=++m.current;g(!0),v(null);let r=e.fork();try{let i=await et(r),a=tt(r,r.frontiers(),t);if(m.current!==n){r.free();return}let o=p.current;p.current=r;let s=(f.current&&i.entries.find(e=>e.id===f.current.id))??i.groups[1]?.entries.at(-1)??i.entries[0]??null;f.current=s,d(s),l({doc:r,history:i,latest:a}),b(_n(e)!==_n(r)),o?.free()}catch(e){r.free(),m.current===n&&v(e.message)}finally{m.current===n&&g(!1)}},[e,t]);if((0,H.useEffect)(()=>{if(a)return()=>{m.current++,p.current?.free(),p.current=null,f.current=null,l(null),d(null),S([]),b(!1),v(null),g(!0),E(!1),C(!1)}},[a,e]),(0,H.useEffect)(()=>{a&&!n&&!p.current&&k()},[a,k,n]),(0,H.useEffect)(()=>{if(a&&e)return e.subscribe(()=>b(p.current!==null&&_n(e)!==_n(p.current)))},[e,a]),(0,H.useEffect)(()=>{if(!a)return;let e=e=>{e.key===`Escape`&&(T?E(!1):o())};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[a,o,T]),(0,H.useEffect)(()=>{if(!s||!u)return;let e=!1;g(!0);let n=setTimeout(()=>{try{let n=tt(s.doc,u.frontiers,t),{entries:r,groups:i}=s.history,a=rt(s.doc,r.slice(r.indexOf(u)+1),[n,s.latest]),o=new Map(i.flatMap(e=>e.entries.map(t=>[t,e]))),c=Dt(n.value,s.latest.value).map(e=>{if(e.kind===`equal`)return e;let t=[vn(s.latest.ids,e.newIndex),vn(n.ids,e.oldIndex)].map(e=>e&&a.get(e)).find(Boolean);return t?{...e,author:t,group:o.get(t)}:e});e||(S(c),te(0),v(null))}catch(t){e||v(t.message)}finally{e||g(!1)}},0);return()=>{e=!0,clearTimeout(n)}},[s,u,t]),!a||!e)return null;let A=x.filter(e=>e.kind!==`equal`).length,j={session:s,selected:u,blocks:x,count:A,changeIndex:w,loading:h,error:_,pending:y,streaming:n,onlyChanges:ee,select:e=>{f.current=e,d(e),E(!1)},navigate:e=>{let t=Math.max(0,Math.min(A-1,w+e));te(t),O.current?.querySelectorAll(`[data-history-change]`)[t]?.scrollIntoView?.({block:`center`,behavior:`instant`})},toggleOnly:()=>C(e=>!e),showAll:()=>C(!1),refresh:()=>void k(),close:o};return{content:(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(gn,{model:j,theme:r,title:i,narrow:D,bodyRef:O,onPick:()=>E(!0)}),D&&T?(0,X.jsx)(fn,{model:j,onDismiss:()=>E(!1)}):null]}),panel:D?null:(0,X.jsx)(dn,{model:j})}}function bn({left:e,top:t,quote:n,initial:r,restored:i,leaving:a,onChange:o,onSubmit:s,onCancel:c,ref:l}){return(0,X.jsx)(`div`,{ref:l,...{0:{className:`x10l6tqk x1u8a7rm xj6ak53 xowlrko xllfotl xatqbsq x1u6ievf`},1:{className:`x10l6tqk x1u8a7rm xj6ak53 x1u6ievf xxp0q0x x12l1aco xn0cd8s x47corl`}}[!!a|0],style:{left:e,top:t},children:(0,X.jsxs)(ve,{active:!0,children:[(0,X.jsxs)(`div`,{className:`x78zum5 x1pha0wt x167g77z xz9dl7a x1hr3lfm xqfszdh x1j6dyjg`,children:[(0,X.jsxs)(`span`,{className:`x98rzlu xeuugli xb3r6kr xuxw1ft xlyipyv xddlp02`,children:[`“`,n,`”`]}),i?(0,X.jsx)(`span`,{className:`x2lah0s x7zghnd`,children:`已恢复上次的草稿`}):null]}),(0,X.jsx)(g,{autoFocus:!0,initial:r,placeholder:`写下你的问题或意见…`,onChange:o,onSubmit:s,onCancel:c})]})})}function xn({left:e,top:t,onComment:n,onCopy:r,ref:i}){return(0,X.jsxs)(`div`,{ref:i,className:`x10l6tqk x1u8a7rm x78zum5 x6s0dn4 x195vfkc xc9qbxq x9f619 x9ms5i6 xmkeg23 x1y0btm7 xgcsv5v x1q4ynmn x12ilycc x1d5q07e xi1bcxy x773k2o xa3vuyk`,style:{left:e,top:t},onMouseDown:e=>e.preventDefault(),children:[n?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`button`,{type:`button`,onClick:n,className:`x78zum5 x6s0dn4 x17d4w8g x1fgtraw xt970qd x1awh872 xc342km xu4hgxq xjbqb8w xj0l527 x2230gt xo2rkog xqfszdh xfifm61 xk50ysn x1ypdohk x1de99jn xaatb59 x1y3gkto x1uczgqu x1fkwv27`,children:[(0,X.jsx)(Je,{size:14,className:`x2lah0s x17nrqe2`}),`评论`]}),(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`x2lah0s x1i1rx1s xlup9mm xj3msbq xcn5yip`})]}):null,(0,X.jsx)(`button`,{type:`button`,onClick:r,className:`x78zum5 x6s0dn4 x17d4w8g x1fgtraw xt970qd x1awh872 xc342km xu4hgxq xjbqb8w xj0l527 x2230gt xqfszdh xfifm61 xk50ysn x1ypdohk x1de99jn xaatb59 x1y3gkto x1uczgqu x1fkwv27 x1bo0w0s`,children:`复制`})]})}var Sn=(e,t)=>`${e}\n${t}`;function Cn(){let e=new Map;return{save(t,n){n.trim()?e.set(t,n):e.delete(t)},take(t){return e.get(t)??``}}}function wn(e){let t=(0,H.useMemo)(Cn,[]),[n,r]=(0,H.useState)(null),[i,a]=(0,H.useState)(!1),o=(0,H.useRef)(``),s=(0,H.useRef)(0),c=(0,H.useRef)(null),l=(0,H.useRef)(null);le(i?null:n?.target.range??null);let u=(0,H.useCallback)(n=>{window.clearTimeout(s.current);let i=t.take(Sn(n.blockId,n.quote));o.current=i,a(!1),r({target:n,initial:i}),window.getSelection()?.removeAllRanges(),e()},[t,e]),d=(0,H.useCallback)(e=>{n&&(t.save(Sn(n.target.blockId,n.target.quote),e?o.current:``),a(!0),s.current=window.setTimeout(()=>{r(null),a(!1)},120))},[n,t]);return(0,H.useEffect)(()=>{if(!n||i)return;let e=e=>{let t=e.target;c.current?.contains(t)||l.current?.contains(t)||d(!0)};return document.addEventListener(`pointerdown`,e,!0),()=>document.removeEventListener(`pointerdown`,e,!0)},[n,i,d]),(0,H.useEffect)(()=>()=>window.clearTimeout(s.current),[]),{draft:n,leaving:i,restored:!!n?.initial,open:u,close:d,onText:e=>{o.current=e},panelRef:c,toolbarRef:l}}function Tn(e){return{left:e.offsetLeft,right:Math.min(e.offsetLeft+e.offsetWidth,window.innerWidth-16)}}function En({editor:e,threads:t,actions:n,agent:r,canComment:i,selection:a,clearSelection:o,onCreate:s,onMain:c,history:l,children:u}){let d=wn(o),{draft:f}=d;return(0,X.jsx)(Te,{editor:e,threads:t,actions:n,agent:r,onMain:c,history:l,overlay:e=>(0,X.jsxs)(X.Fragment,{children:[a&&!f?(0,X.jsx)(xn,{ref:d.toolbarRef,...ge(a,Tn(e),128,36,8),onComment:i?()=>d.open(a):void 0,onCopy:()=>{navigator.clipboard?.writeText(a.quote),window.getSelection()?.removeAllRanges(),o()}}):null,f?(0,X.jsx)(bn,{ref:d.panelRef,...ue(f.target,Tn(e),340,8),quote:f.target.quote,initial:f.initial,restored:d.restored,leaving:d.leaving,onChange:d.onText,onSubmit:e=>s(f.target,e).then(e=>(e&&d.close(!1),e)),onCancel:()=>d.close(!0)},`${f.target.blockId}:${f.target.quote}`):null]}),children:u})}function Dn({id:e,title:t,activity:n,agentSection:r,offline:i,openComments:a,cloud:o,compact:s=!1,onDone:c,agent:l=`Agent`,history:d}){let f=$e(n,l,r);return u(e,o?{...t?{title:t}:{},online:o.online,comments:a,activity:f,activityTone:n.kind===`stale`?`warning`:n.kind===`working`?`quiet`:`live`,retrying:i,reason:o.reason,history:d?.available,historyOpen:d?.open}:null)&&!s?null:(0,X.jsxs)(`header`,{...{0:{className:`x7wzq59 x13vifvy x1n327nk xdd8jsf x78zum5 x6s0dn4 x1v2ro7d x4l9tsp x1rozbrz xqfszdh`},1:{className:`x7wzq59 x13vifvy x1n327nk xdd8jsf x78zum5 x6s0dn4 x1rozbrz xqfszdh x1hr3lfm x883omv`}}[!!s|0],children:[s?null:(0,X.jsxs)(`span`,{className:`xddlp02 xfifm61 xuxw1ft`,children:[`document / `,(0,X.jsx)(`span`,{className:`xo2rkog x1s688f`,children:e})]}),f?(0,X.jsxs)(`span`,{...{0:{className:`x78zum5 x6s0dn4 x17d4w8g xj8oexa x1awh872 x1e6avla xlssvyo x19ay2w6 x1j6dyjg xuxw1ft xeuugli xb3r6kr xlyipyv`},2:{className:`x78zum5 x6s0dn4 x17d4w8g xj8oexa x1awh872 x1e6avla x1j6dyjg xuxw1ft xeuugli xb3r6kr xlyipyv xahzvm9 x1bo0w0s`},1:{className:`x78zum5 x6s0dn4 x17d4w8g xj8oexa x1awh872 x1e6avla x1j6dyjg xuxw1ft xeuugli xb3r6kr xlyipyv xqdcvd7 x7zghnd`},3:{className:`x78zum5 x6s0dn4 x17d4w8g xj8oexa x1awh872 x1e6avla x1j6dyjg xuxw1ft xeuugli xb3r6kr xlyipyv xqdcvd7 x7zghnd`}}[(n.kind===`working`)<<1|n.kind===`stale`],children:[n.kind===`stale`?null:(0,X.jsx)(`i`,{className:`x1v4s8kt xols6we x16rqkct xtwfq29`}),f]}):null,i?(0,X.jsx)(`span`,{className:`x78zum5 x6s0dn4 x17d4w8g xj8oexa x1awh872 x1e6avla x1j6dyjg xuxw1ft xeuugli xb3r6kr xlyipyv xqdcvd7 x7zghnd`,children:`未同步,正在重试`}):null,d?.open?(0,X.jsxs)(`span`,{className:`x78zum5 x6s0dn4 x17d4w8g xj8oexa x1awh872 x1e6avla x1j6dyjg xuxw1ft xeuugli xb3r6kr xlyipyv xahzvm9 x1bo0w0s`,children:[(0,X.jsx)(Ve,{size:11,"aria-hidden":`true`}),`只读 · 正在对比历史`]}):null,o?.reason&&!s?(0,X.jsx)(`span`,{className:`xb3r6kr xddlp02 xfifm61 xuxw1ft xlyipyv`,children:o.reason}):null,(0,X.jsx)(`span`,{className:`x98rzlu`}),o?(0,X.jsxs)(`span`,{className:`x78zum5 x6s0dn4 x17d4w8g x1bo0w0s xfifm61 xuxw1ft`,children:[(0,X.jsx)(`i`,{...{0:{className:`xci0xqf x1hagigm x16rqkct xxwmxtg`},1:{className:`xci0xqf x1hagigm x16rqkct xux1nz0`}}[!!o.online|0]}),o.online?`电脑在线`:`电脑离线`]}):null,d?(0,X.jsx)(m,{comments:a,open:d.open,available:d.available,onComments:d.close,onHistory:d.toggle}):null,c?(0,X.jsx)(`button`,{type:`button`,onClick:c,className:`x12ulsxz xaope02 xc342km x1kogg8i x19ckca5 xs0jrwl xqfszdh x4z9k3i x1s688f x1ypdohk`,children:`完成`}):o||s?null:(0,X.jsx)(Fe,{artifact:`document/${e}`})]})}function On(e,t,n){let[r,i]=t<=n?[t,n]:[n,t];return{blockIds:e.slice(r,i+1).flatMap(e=>e.id?[e.id]:[]).slice(0,Be.blockIds),heading:e.slice(0,r+1).filter(e=>e.heading).pop()?.text??``}}var kn=crypto.randomUUID(),An=300,jn={quote:``,blockIds:[],heading:``};function Mn(e){let t=window.getSelection(),n=e.getRootElement();if(!t||t.isCollapsed||!n?.contains(t.anchorNode)||!n.contains(t.focusNode))return jn;let r=t.toString().trim().slice(0,Be.quote);return r?e.read(()=>{let e=w().getChildren(),n=t=>{let n=t&&I(t)?.getTopLevelElement();return n?e.findIndex(e=>e.is(n)):-1},i=n(t.anchorNode),a=n(t.focusNode);if(i<0||a<0)return{...jn,quote:r};let o=e.map(e=>({id:V(e,he)||``,heading:e.getType()===`heading`,text:e.getTextContent().slice(0,Be.heading)}));return{quote:r,...On(o,i,a)}}):jn}function Nn(e,t,n,r){let i=(0,H.useRef)(jn);(0,H.useEffect)(()=>{if(!e)return;let n=0,a=()=>{let n=Mn(e);JSON.stringify(n)!==JSON.stringify(i.current)&&(i.current=n,r({type:`selection`,artifact:t,tab:kn,human:!0,...n}))},o=()=>{clearTimeout(n),n=window.setTimeout(a,An)};return document.addEventListener(`selectionchange`,o),()=>{clearTimeout(n),document.removeEventListener(`selectionchange`,o)}},[e,t,r]),(0,H.useEffect)(()=>{n&&i.current.quote&&r({type:`selection`,artifact:t,tab:kn,human:!1,...i.current})},[n,t,r])}var Pn=[`pending`],Fn=`x-ryugi-document-features`,In=e=>{let t=``;for(let n=0;n<e.length;n+=32768)t+=String.fromCharCode(...e.subarray(n,n+32768));return btoa(t)};function Ln({id:e,channel:t,send:n}){let r=(t,n,r)=>fetch(`/api/document/${e}/${t}`,{method:`POST`,headers:{"Content-Type":r,[Fn]:Pn.join(`,`)},body:n});return{artifact:`document/${e}`,channel:t,send:n,async meta(){let t=await fetch(`/api/artifacts/document/${e}`,{cache:`no-store`});return t.ok?await t.json():null},async state(){let t=await fetch(`/api/document/${e}/state`,{cache:`no-store`}),n=await t.json();if(!t.ok||!n.snapshot)throw Error(n.error??`load failed (${t.status})`);return n},async update(e){let t=await r(`update`,e,`application/octet-stream`);if(!t.ok)throw Error(`update failed (${t.status})`)},async comment(e){let t=await r(`comments`,JSON.stringify(e),`application/json`);if(!t.ok)throw Error(`comment failed (${t.status})`);return(await t.json()).comments}}}function Rn(e){let t=N(),n=(e.connect??ze)({url:e.url,artifact:e.artifact,WebSocket:e.WebSocket,retryMs:e.retryMs,onPresence:e.onPresence,onEvent:e=>t.emit(e),onOnline:()=>t.emit({type:`open`})});return{artifact:e.artifact,channel:t,close:n.close,async meta(){let t=await n.request({op:`meta`});return/^https?:\/\//.test(t.contentBase??``)?t:{...t,contentBase:e.contentBase}},state:()=>n.request({op:`state`}),async update(e){await n.request({op:`update`,bytes:In(e),features:Pn})},async comment(e){return(await n.request({op:`comment`,comment:e})).comments},send(e){let{type:t}=e;t===`selection`?n.request({op:`selection`,selection:e}).catch(()=>{}):(t===`loaded`||t===`runtime-error`)&&n.request({op:`client`,message:e}).catch(()=>{})}}}function zn(e){let t=(0,H.useMemo)(N,[]),n=`document/${e}`,{live:r,send:i}=Ie(e=>{e.artifact===n&&t.emit(e)},()=>t.emit({type:`open`}));return{transport:(0,H.useMemo)(()=>Ln({id:e,channel:t,send:i}),[e,t,i]),live:r}}function Bn(e,t){let[n,r]=(0,H.useState)(null),[i,a]=(0,H.useState)(null);return(0,H.useEffect)(()=>{let n=Rn({url:He(e),artifact:`document/${e}`,contentBase:t,onPresence:a,connect:t=>We({...t,cloudId:e,known:Ne()})});return r(n),()=>{n.close(),r(null),a(null)}},[e,t]),{transport:n,presence:i}}var Vn={count:0,firstKey:null},Hn=e=>e.read(()=>{let e=w().getChildren().filter(e=>e.getType()===`pending`).map(e=>e.getKey());return{count:e.length,firstKey:e[0]??null}});function Un(e){let[t,n]=(0,H.useState)(Vn);return(0,H.useEffect)(()=>{if(!e){n(Vn);return}let t=e=>n(t=>t.count===e.count&&t.firstKey===e.firstKey?t:e);return t(Hn(e.getEditorState())),e.registerUpdateListener(({editorState:e})=>t(Hn(e)))},[e]),t}function Wn(e,t=15e3){let[n,r]=(0,H.useState)(()=>Date.now());return(0,H.useEffect)(()=>{if(!e)return;r(Date.now());let n=setInterval(()=>r(Date.now()),t);return()=>clearInterval(n)},[e,t]),n}function Gn({left:e,top:t,placement:n,canComment:r,canEdit:i,onComment:a,onEdit:o}){let s=(0,H.useRef)(null),c=[r?{label:`评论`,Icon:Je,run:a,primary:!0}:null,i?{label:`改字`,Icon:xe,run:o,primary:!1}:null].filter(e=>e!==null);return(0,H.useLayoutEffect)(()=>{h(s.current,[{opacity:0,transform:`scale(0.96)`},{opacity:1,transform:`none`}],{duration:160,easing:p})},[]),c.length===0?null:(0,X.jsxs)(`div`,{ref:s,"data-edit-menu":!0,"data-placement":n,...{0:{className:`x10l6tqk x1u8a7rm x78zum5 xdt5ytf x1cy8zhl`},1:{className:`x10l6tqk x1u8a7rm x78zum5 x1cy8zhl x3ieub6`}}[n===`above`|0],style:{left:e,top:t,transformOrigin:n===`above`?`22px 100%`:`22px 0`},onMouseDown:e=>e.preventDefault(),children:[(0,X.jsx)(`span`,{className:`xsmyaan x1kpxq89 xyqm7xq x1qp53xl x1cum3z5 xf6xdpg x1158fpu`}),(0,X.jsx)(`div`,{className:`x78zum5 xn3w4p2 xfn1xvj x4pepcl xf6xdpg x1dam6yx`,children:c.map(({label:e,Icon:t,run:n,primary:r})=>(0,X.jsxs)(`button`,{type:`button`,onClick:n,...{0:{className:`x78zum5 x6s0dn4 x17d4w8g xn3w4p2 xt970qd xaope02 xc342km x1q4ynmn xjbqb8w x116urgp xqirfc3 xqfszdh xif65rj x1ypdohk`},1:{className:`x78zum5 x6s0dn4 x17d4w8g xn3w4p2 xt970qd xaope02 xc342km x1q4ynmn xjbqb8w x116urgp xqfszdh xif65rj x1ypdohk xfungia x1s688f`}}[!!r|0],children:[(0,X.jsx)(t,{size:16,"aria-hidden":!0}),e]},e))})]})}var Kn={state:{kmuXW:`x2lah0s`,kGuDYH:`xfifm61`,$$css:!0},waitingAgent:{kMwMTN:`x7zghnd`,$$css:!0},answered:{kMwMTN:`xh0clw4`,$$css:!0},resolved:{kMwMTN:`xddlp02`,$$css:!0}},qn=e=>new Date(e).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`});function Jn({thread:e,agent:t=`Agent`,actions:n,active:a=!1,offline:o=!1}){let c=r(e),l=e.status===`resolved`,u=l?{label:`已解决`,tone:Kn.resolved}:c===`agent`?{label:`等 ${t} 回复`,tone:Kn.waitingAgent}:c===`human`?{label:`${t} 已回复`,tone:Kn.answered}:null;return(0,X.jsxs)(`div`,{"data-thread":e.id,...{0:{className:`xxlmvz2 x178xt8z x13fuv20 xxu5053 xqfszdh xo2rkog`},1:{className:`xxlmvz2 x178xt8z x13fuv20 xxu5053 xqfszdh xo2rkog xggygye`}}[!!a|0],children:[(0,X.jsxs)(`div`,{className:`x78zum5 x1pha0wt x167g77z x1lqa7cf x1vo0akb x19ypqd9 x13ym6ox x4z9k3i`,children:[(0,X.jsx)(`span`,{className:`x98rzlu xeuugli xb3r6kr xuxw1ft xlyipyv x1bo0w0s`,children:e.anchor.quote||`整段`}),u?(0,X.jsx)(`span`,{...i(Kn.state,u.tone),children:u.label}):null]}),l&&!a?null:e.messages.map(e=>{let{label:t,initial:n}=_(e);return(0,X.jsxs)(`div`,{className:`x14vqqas`,children:[(0,X.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x167g77z x4z9k3i x1s688f`,children:[(0,X.jsx)(s,{human:e.author===`human`,initial:n,name:e.name,src:e.avatar}),t,(0,X.jsx)(`span`,{className:`xddlp02 xo1l8bm xfifm61`,children:qn(e.editedAt??e.at)})]}),(0,X.jsx)(`div`,{...{0:{className:`x1gslohp xxpkpgd x1jvydc1 x1dbl2gt x126k92a xj0a0fe`},1:{className:`x1gslohp xxpkpgd x1jvydc1 x1dbl2gt x126k92a xj0a0fe xc7n51q`}}[!!e.deleted|0],children:e.deleted?`已删除`:e.text})]},e.id)}),n?(0,X.jsxs)(`div`,{className:`x78zum5 x6s0dn4 xou54vl x1anpbxc xxpkpgd`,children:[l?null:(0,X.jsx)(`div`,{className:`x98rzlu xeuugli x1qyh8g1 xso031l x1q0q8m5 x1iz93xd`,children:(0,X.jsx)(g,{placeholder:`回复…`,onSubmit:t=>n.reply(e.id,t)})}),o?null:(0,X.jsx)(`button`,{type:`button`,onClick:()=>l?n.reopen(e.id):n.resolve(e.id),className:`x2lah0s x1gg8mnh xt970qd xdqyycr x1w5wx5t xc342km xjbqb8w x1bo0w0s xqfszdh x4z9k3i x1ypdohk`,children:l?`重新打开`:`解决`})]}):null]})}var $=.5,Yn=e=>e===78?$:e;function Xn({threads:e,agent:t=`Agent`,actions:n,offline:i,draft:a,onCreate:o,onCancelDraft:s,activeId:c,snap:l,onSnap:u}){let d=(0,H.useRef)(null),f=e.filter(e=>!e.messages.every(e=>e.deleted)),m=f.filter(e=>r(e)===`agent`).length,_=i?`电脑离线,暂时不能评论`:m>0?`${m} 条等 ${t} 回复`:null;return(0,H.useEffect)(()=>{let e=c?d.current?.querySelector(`[data-thread="${CSS.escape(c)}"]`):null,t=e?.closest(`[data-sheet-body]`);e&&t&&(t.scrollTo({top:t.scrollTop+e.getBoundingClientRect().top-t.getBoundingClientRect().top-8,behavior:`smooth`}),h(e,[{backgroundColor:`rgba(232, 194, 74, 0.24)`},{backgroundColor:`transparent`}],{duration:600,delay:250,easing:p}))},[c]),(0,X.jsx)(Ge,{snaps:[78,$,1],snap:l,onSnap:u,onScrim:()=>u($),header:(0,X.jsxs)(`span`,{className:`x78zum5 x1pha0wt x17d4w8g xu0aao5 x17qtykl xwib8y2 xqfszdh x1jvydc1 x1s688f`,children:[`评论 `,f.length,_?(0,X.jsxs)(`span`,{className:`xddlp02 xfifm61 xo1l8bm`,children:[`· `,_]}):null]}),children:(0,X.jsxs)(`div`,{ref:d,className:`x17qtykl xwxc41k`,children:[a&&n?(0,X.jsxs)(`div`,{className:`x10dr8xq xqfszdh`,children:[(0,X.jsxs)(`div`,{className:`x78zum5 x1pha0wt x167g77z x4z9k3i`,children:[(0,X.jsx)(`span`,{className:`x98rzlu xeuugli x1lqa7cf x1vo0akb x19ypqd9 x13ym6ox xb3r6kr xuxw1ft xlyipyv x1bo0w0s`,children:a.quote}),(0,X.jsx)(`button`,{type:`button`,onClick:s,className:`x1717udv xc342km xjbqb8w xddlp02 x4z9k3i x1ypdohk`,children:`取消`})]}),(0,X.jsx)(`div`,{className:`x1xmf6yo x1qyh8g1 xso031l x1q0q8m5 x1iz93xd`,children:(0,X.jsx)(g,{autoFocus:!0,placeholder:`写给 agent 的评论…`,onSubmit:e=>o(a,e).then(e=>(e&&s(),e))})})]}):null,f.length===0&&!a?(0,X.jsx)(`div`,{className:`xr9q8rw xddlp02 xqfszdh x4z9k3i x2b8uid`,children:`还没有评论。选中文字就能评论。`}):null,f.map(e=>(0,X.jsx)(Jn,{thread:e,agent:t,actions:n,active:e.id===c,offline:i},e.id))]})})}var Zn=52;function Qn({editor:e,threads:t,actions:n,agent:r,canComment:i,canEdit:a,offline:o,selection:s,clearSelection:c,onCreate:l,onEdit:u,onMain:d,history:f,children:p}){let[m,h]=(0,H.useState)(null),[g,_]=(0,H.useState)(null),[v,y]=(0,H.useState)(78),[b,x]=(0,H.useState)(null),S=me(e,t,m);ye(S,t,g),le(b?.range??null);let ee=()=>{window.getSelection()?.removeAllRanges(),c()};return(0,X.jsxs)(`main`,{ref:e=>{h(e),d?.(e)},className:`x1n2onr6 x1cnzs8 x17qtykl x1ffnkcp`,children:[(0,X.jsxs)(`article`,{onClick:e=>{let t=Se(S,e.clientX,e.clientY);_(t),t&&y(Yn)},children:[f?.content,(0,X.jsx)(`div`,{hidden:!!f,children:p})]}),s&&!b&&!f?(0,X.jsx)(Gn,{...we(s,{left:8,right:(m?.clientWidth??0)-8},170,44,{top:m?.getBoundingClientRect().top??0,height:window.innerHeight,reserved:Pe(v,window.innerHeight-Zn)}),canComment:i,canEdit:a,onComment:()=>{x(s),y($),ee()},onEdit:()=>{u(s),c()}}):null,(0,X.jsx)(`div`,{hidden:!!f,className:`xixxii4 x1ozmhy9 xu96u03 x3m8u43 x1ey2m1c x1355qak x47corl`,children:(0,X.jsx)(Xn,{threads:t,agent:r,actions:n,offline:o,draft:b,onCreate:l,onCancelDraft:()=>x(null),activeId:g,snap:v,onSnap:y})})]})}var $n=200;function er(e,t){let[n,r]=(0,H.useState)(null);return(0,H.useEffect)(()=>{if(!e||!t)return;let n=0,i=()=>{let n=window.getSelection(),i=e.getRootElement();if(!n||n.isCollapsed||n.rangeCount===0||!i?.contains(n.anchorNode)){r(null);return}let a=n.toString().trim(),o=e.read(()=>{let e=n.anchorNode&&I(n.anchorNode)?.getTopLevelElement(),t=n.focusNode&&I(n.focusNode)?.getTopLevelElement();return!e||!t||!e.is(t)?null:V(e,he)||null});if(!o||!a){r(null);return}let s=n.getRangeAt(0),c=[...s.getClientRects()],l=c[0]??s.getBoundingClientRect(),u=c.at(-1)??l,d=t.getBoundingClientRect();r({blockId:o,quote:a.slice(0,500),left:l.left-d.left,bottom:u.bottom-d.top,top:l.top-d.top,right:u.right-d.left,range:s.cloneRange()})},a=()=>{clearTimeout(n),n=window.setTimeout(i,$n)};return document.addEventListener(`selectionchange`,a),()=>{clearTimeout(n),document.removeEventListener(`selectionchange`,a)}},[e,t]),[n,()=>r(null)]}var tr=[...C.filter(e=>!z.some(t=>t.getType()===(`getType`in e?e.getType():e.replace.getType()))),...z];function nr(){let e=(0,H.useMemo)(()=>window.matchMedia(`(prefers-color-scheme: dark)`),[]),[t,n]=(0,H.useState)(e.matches);return(0,H.useEffect)(()=>{let t=()=>n(e.matches);return e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)},[e]),t}function rr(e){(0,H.useEffect)(()=>{if(!e)return;let t=document.createElement(`base`);return t.href=e,document.head.prepend(t),()=>t.remove()},[e])}function ir({id:e}){let{transport:t,live:n}=zn(e);return(0,X.jsx)(ar,{id:e,transport:t,live:n})}function ar({id:e,transport:t,live:n,cloud:r,fallback:i}){let[a,s]=(0,H.useState)(null),[l,u]=(0,H.useState)(null),[f,p]=(0,H.useState)(o),[m,h]=(0,H.useState)(null),[g,_]=(0,H.useState)(!1),[v,y]=(0,H.useState)(void 0),[b,x]=(0,H.useState)(0),S=(0,H.useCallback)(e=>{e!==void 0&&x(e-Date.now())},[]),[ee,C]=(0,H.useState)(null),[w,te]=(0,H.useState)(!1),[T,E]=(0,H.useState)(!1),D=!r||r.online&&!w,O=T&&D;(0,H.useEffect)(()=>{D||E(!1)},[D]),(0,H.useEffect)(()=>{if(!r)return;let t=t=>{t.source===window.parent&&t.origin===location.origin&&t.data?.type===`ryugi:document-history`&&t.data.id===e&&(t.data.action===`close`?E(!1):t.data.action===`toggle`&&D&&E(e=>!e))};return window.addEventListener(`message`,t),()=>window.removeEventListener(`message`,t)},[e,r,D]);let[k,A]=(0,H.useState)(null),[j,ne]=(0,H.useState)(null),re=nr(),{artifact:ie,channel:M}=t,ae=!r||r.online,N=!r||r.canEdit,P=c(d),[F,I]=(0,H.useState)(!1),oe=P?F&&N:N,L=(0,H.useCallback)(async()=>{let e=await t.meta();e&&s(e)},[t]),se=i!=null;(0,H.useEffect)(()=>{let e=!1;return(async()=>{try{await L();let n=await t.state();if(e)return;let r=new Oe;r.setRecordTimestamp(!0),r.setChangeMergeInterval(20),r.import(pe(n.snapshot)),_(!!n.streaming),y(n.agentActiveAt),S(n.now),p(n.comments??o());let i=se?{left:window.scrollX,top:window.scrollY,behavior:`instant`}:null;u(r),i&&requestAnimationFrame(()=>{e||window.scrollTo(i)})}catch(t){e||h(t.message)}})(),()=>{e=!0}},[t,L,S,se]),(0,H.useEffect)(()=>M.subscribe(e=>{e.type===`change`?L():e.type===`doc-status`?(_(e.streaming),y(e.agentActiveAt),S(e.now)):e.type===`doc-comments`&&p(e.comments)}),[M,L,S]),(0,H.useEffect)(()=>{k?.setEditable(oe&&!O)},[k,oe,O]),(0,H.useEffect)(()=>{N||I(!1)},[N]);let ce=(0,H.useCallback)(e=>{_(!!e.streaming),y(e.agentActiveAt),S(e.now),e.comments&&p(e.comments)},[S]);rr(a?.contentBase),Nn(k,ie,n&&!O,t.send);let le=(0,H.useMemo)(()=>({artifact:ie,contentBase:a?.contentBase??``,channel:M,send:t.send}),[ie,a?.contentBase,M,t]);(0,H.useEffect)(()=>{document.title=a?.title||e},[a?.title,e]),Ke(`document`);let R=Un(k),ue=Wn(R.count>0&&!g),z=Ze({streaming:g,pending:R.count,agentActiveAt:v,now:ue+b}),de=a?.agent??`Agent`,fe=(0,H.useMemo)(()=>({nextKey:R.firstKey,agent:de,activity:z.kind}),[R.firstKey,de,z.kind]),me=f.threads.filter(e=>e.status===`open`).length,[he,ge]=er(k,j),_e=(0,H.useCallback)(()=>E(!1),[]),ve=yn({doc:l,nodes:tr,streaming:g,theme:re?`dark`:`light`,title:a?.title||e,open:O,onClose:_e}),B=(0,H.useCallback)(async e=>{try{return p(await t.comment(e)),!0}catch{return!1}},[t]),ye=(0,H.useMemo)(()=>({reply:(e,t)=>B({op:`reply`,threadId:e,text:t}),edit:(e,t,n)=>void B({op:`edit`,threadId:e,messageId:t,text:n}),remove:(e,t)=>void B({op:`delete`,threadId:e,messageId:t}),resolve:e=>void B({op:`resolve`,threadId:e}),reopen:e=>void B({op:`reopen`,threadId:e})}),[B]),V=(0,H.useCallback)((e,t)=>B({op:`create`,blockId:e.blockId,quote:e.quote,text:t}),[B]),xe=(0,H.useCallback)(e=>{if(!k)return;k.setEditable(!0),I(!0),k.getRootElement()?.focus({preventScroll:!0});let t=window.getSelection();t?.removeAllRanges(),t?.addRange(e.range)},[k]);if(m)return(0,X.jsx)(`div`,{className:`x1o8uwn5 x2b8uid x1bo0w0s xqfszdh xif65rj`,children:m});if(!l)return i??(0,X.jsx)(`div`,{className:`x1o8uwn5 x2b8uid x1bo0w0s xqfszdh xif65rj`,children:`Loading…`});let Se=(0,X.jsx)(je.Provider,{value:le,children:(0,X.jsx)(be.Provider,{value:fe,children:(0,X.jsx)(De,{transport:t,agent:a?.agent,doc:l,theme:re?`dark`:`light`,onAgentSection:C,onOffline:te,onState:ce,onEditorReady:A})})});return(0,X.jsxs)(`div`,{className:`x1us19tq x1rozbrz xo2rkog`,className:`ryugi-doc ${{className:`x1us19tq x1rozbrz xo2rkog`}.className??``}`,children:[(0,X.jsx)(Dn,{id:e,title:a?.title||e,agent:a?.agent,activity:z,agentSection:ee,offline:w,openComments:me,cloud:r,compact:P,onDone:P&&F?()=>I(!1):void 0,history:{available:D,open:O,toggle:()=>E(e=>!e),close:_e}}),P?(0,X.jsx)(Qn,{editor:k,threads:f.threads,actions:ye,agent:a?.agent,canComment:ae,canEdit:N,offline:!(!r||r.online),selection:F?null:he,clearSelection:ge,onCreate:V,onEdit:xe,onMain:ne,history:ve,children:Se}):(0,X.jsx)(En,{editor:k,threads:f.threads,actions:ye,agent:a?.agent,canComment:ae,selection:he,clearSelection:ge,onCreate:V,onMain:ne,history:ve,children:Se}),(0,X.jsx)(Ue,{warnings:a?.warnings??[]})]})}export{ar as DocumentView,ir as default,Bn as t};
|