@band-app/server 0.36.0 → 0.38.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/assets/TerminalPanel-CddLlPAX.js +1 -0
- package/dist/client/assets/{_basePickBy-D1cW8RfA.js → _basePickBy-Mr2ui_ok.js} +1 -1
- package/dist/client/assets/{_baseUniq-DCImWVn2.js → _baseUniq-BbCun8O9.js} +1 -1
- package/dist/client/assets/{arc-Jv1JrzDM.js → arc-D72GLVnK.js} +1 -1
- package/dist/client/assets/{architectureDiagram-VXUJARFQ-DJTHV1y7.js → architectureDiagram-VXUJARFQ-CtL_pV38.js} +1 -1
- package/dist/client/assets/{blockDiagram-VD42YOAC-Cj_bRlht.js → blockDiagram-VD42YOAC-DqyIIG7r.js} +1 -1
- package/dist/client/assets/{c4Diagram-YG6GDRKO-xPUaEy7L.js → c4Diagram-YG6GDRKO-nrzjw8-Z.js} +1 -1
- package/dist/client/assets/channel-CLpfxzfv.js +1 -0
- package/dist/client/assets/{chunk-4BX2VUAB-DWHXL8Ea.js → chunk-4BX2VUAB-CxMLZjJR.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-Bd7QCFS0.js → chunk-55IACEB6-mmYFV3uk.js} +1 -1
- package/dist/client/assets/{chunk-B4BG7PRW-By14k0HA.js → chunk-B4BG7PRW-D5v9xl9X.js} +1 -1
- package/dist/client/assets/{chunk-DI55MBZ5-D6pCQEj8.js → chunk-DI55MBZ5-D265fj7U.js} +1 -1
- package/dist/client/assets/{chunk-FMBD7UC4-DYeXE4xT.js → chunk-FMBD7UC4-Dup-9g-C.js} +1 -1
- package/dist/client/assets/{chunk-QN33PNHL-DcLmw7kN.js → chunk-QN33PNHL-C-rWtyk3.js} +1 -1
- package/dist/client/assets/{chunk-QZHKN3VN-CRzbN_tm.js → chunk-QZHKN3VN-DFPCO41y.js} +1 -1
- package/dist/client/assets/{chunk-TZMSLE5B-B75f53t3.js → chunk-TZMSLE5B-DsmBPBDj.js} +1 -1
- package/dist/client/assets/classDiagram-2ON5EDUG-CHqpXULX.js +1 -0
- package/dist/client/assets/classDiagram-v2-WZHVMYZB-CHqpXULX.js +1 -0
- package/dist/client/assets/clone-kZf8-x5k.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-BkAK4OL7.js → cose-bilkent-S5V4N54A-CCWn4YDT.js} +1 -1
- package/dist/client/assets/{dagre-6UL2VRFP-DncmS6YY.js → dagre-6UL2VRFP-CnSoXX5n.js} +1 -1
- package/dist/client/assets/{diagram-PSM6KHXK-Cn4L1emn.js → diagram-PSM6KHXK-D9Zqn5kT.js} +1 -1
- package/dist/client/assets/{diagram-QEK2KX5R-PfH1MBS7.js → diagram-QEK2KX5R-B22XMhhn.js} +1 -1
- package/dist/client/assets/{diagram-S2PKOQOG-DIyYe2yo.js → diagram-S2PKOQOG-CtPm91f8.js} +1 -1
- package/dist/client/assets/{erDiagram-Q2GNP2WA-DWSS5ilU.js → erDiagram-Q2GNP2WA-Ctgsmx_B.js} +1 -1
- package/dist/client/assets/{flowDiagram-NV44I4VS-D8sgfoe8.js → flowDiagram-NV44I4VS-BCt5r11U.js} +1 -1
- package/dist/client/assets/{ganttDiagram-JELNMOA3-CY0uwMQo.js → ganttDiagram-JELNMOA3-P1o9TA7p.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-V2S2FVAM-C5HEaqeu.js → gitGraphDiagram-V2S2FVAM-CxVbFEsr.js} +1 -1
- package/dist/client/assets/{graph-CHdAVft2.js → graph-HCBV9xMB.js} +1 -1
- package/dist/client/assets/{highlighted-body-B3W2YXNL-fz7u7Bcv.js → highlighted-body-B3W2YXNL-Gaqu4_Bi.js} +1 -1
- package/dist/client/assets/{index-xQGEDauU.js → index-B8S7APPC.js} +1 -1
- package/dist/client/assets/{index-BooiqIu5.js → index-B9QUYOAR.js} +1 -1
- package/dist/client/assets/{index-Ru2Dc5A_.js → index-BQlNjJ1Y.js} +1 -1
- package/dist/client/assets/{index-Clbffg3I.js → index-BR7y3Gjm.js} +1 -1
- package/dist/client/assets/{index-DQOFyUau.js → index-Bl-ZW84y.js} +1 -1
- package/dist/client/assets/{index-8d72uArR.js → index-BsNWuo_5.js} +1 -1
- package/dist/client/assets/{index-Dz2ryCk3.js → index-C6aNqpcf.js} +1 -1
- package/dist/client/assets/{index-D-HgfXJR.js → index-CfHnPAjk.js} +1 -1
- package/dist/client/assets/{index-DMwXny-D.js → index-CnoZP7Fs.js} +1 -1
- package/dist/client/assets/{index-D6YofG76.js → index-D05HI19D.js} +1 -1
- package/dist/client/assets/{index-DZYkmDwN.js → index-D854qjw6.js} +1 -1
- package/dist/client/assets/{index-DWJFPU_5.js → index-DIJ2_F70.js} +1 -1
- package/dist/client/assets/{index-CrBImo8f.js → index-Gh5XAQRT.js} +1 -1
- package/dist/client/assets/{infoDiagram-HS3SLOUP-D0hp75aO.js → infoDiagram-HS3SLOUP-CmsTlZB8.js} +1 -1
- package/dist/client/assets/{journeyDiagram-XKPGCS4Q-91HWCjRU.js → journeyDiagram-XKPGCS4Q-D-GI9JIi.js} +1 -1
- package/dist/client/assets/{kanban-definition-3W4ZIXB7-BzioXfF6.js → kanban-definition-3W4ZIXB7-55Qs5mRI.js} +1 -1
- package/dist/client/assets/{layout-DfQbFp33.js → layout-B2VqN6hx.js} +1 -1
- package/dist/client/assets/{main-Dqe_6Q3-.js → main-BYGBqn5C.js} +253 -248
- package/dist/client/assets/main-uTpkFvkD.css +1 -0
- package/dist/client/assets/{mindmap-definition-VGOIOE7T-C_jxHaxD.js → mindmap-definition-VGOIOE7T-5E-mnLiw.js} +1 -1
- package/dist/client/assets/{pieDiagram-ADFJNKIX-Kn_LfuP0.js → pieDiagram-ADFJNKIX--iuEHqnb.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-AYHSOK5B-CbeGV886.js → quadrantDiagram-AYHSOK5B-DuZPB3Et.js} +1 -1
- package/dist/client/assets/{requirementDiagram-UZGBJVZJ-COoa_fat.js → requirementDiagram-UZGBJVZJ-CZiE6M78.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-TZEHDZUN-TXccJBqI.js → sankeyDiagram-TZEHDZUN-Dp81iX-I.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-WL72ISMW-Llnk43Jx.js → sequenceDiagram-WL72ISMW-BHT8ZcM2.js} +1 -1
- package/dist/client/assets/{stateDiagram-FKZM4ZOC-DsQWz-Kg.js → stateDiagram-FKZM4ZOC-15v8J55n.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-4FDKWEC3-DKjPuiuj.js +1 -0
- package/dist/client/assets/{timeline-definition-IT6M3QCI-B16mbiqF.js → timeline-definition-IT6M3QCI-C4Y7a-dk.js} +1 -1
- package/dist/client/assets/{treemap-GDKQZRPO-CN_Il1TD.js → treemap-GDKQZRPO-1nZ3vFhH.js} +1 -1
- package/dist/client/assets/{workspace._workspaceId-CXgdRFSq.js → workspace._workspaceId-BflC9g6E.js} +1 -1
- package/dist/client/assets/{workspace._workspaceId-DJz9r6Bk.js → workspace._workspaceId-FEoumKx5.js} +1 -1
- package/dist/client/assets/{xychartDiagram-PRI3JC2R-RSssrHeJ.js → xychartDiagram-PRI3JC2R-Cdm6l1QL.js} +1 -1
- package/dist/openapi.json +118 -44
- package/dist/server/assets/{TerminalPanel-BE1IBqp5.js → TerminalPanel-DFfLVpnD.js} +6 -6
- package/dist/server/assets/{_basePickBy-CHo3_xmm.js → _basePickBy-BJp7LAxW.js} +2 -2
- package/dist/server/assets/{_baseUniq-CSupPFs6.js → _baseUniq-C6AsZ3Xv.js} +1 -1
- package/dist/server/assets/_tanstack-start-manifest_v-CY2brxDW.js +4 -0
- package/dist/server/assets/{arc-D44kAr9U.js → arc-CdG8tMD4.js} +1 -1
- package/dist/server/assets/{architecture-7HQA4BMR-vXckakYr.js → architecture-7HQA4BMR-DAiqr3_e.js} +6 -6
- package/dist/server/assets/{architectureDiagram-VXUJARFQ-CR2ITyvh.js → architectureDiagram-VXUJARFQ-B5KfJFud.js} +6 -6
- package/dist/server/assets/{blockDiagram-VD42YOAC-DEeR9cDU.js → blockDiagram-VD42YOAC-DHqCP2b4.js} +6 -6
- package/dist/server/assets/{c4Diagram-YG6GDRKO-DBRRCTXb.js → c4Diagram-YG6GDRKO-BxUADYG0.js} +2 -2
- package/dist/server/assets/{channel-C5tRsfJG.js → channel-AccynRMn.js} +1 -1
- package/dist/server/assets/{chunk-4BX2VUAB-bf7NCd3y.js → chunk-4BX2VUAB-Dr1erjpr.js} +1 -1
- package/dist/server/assets/{chunk-55IACEB6-DWdn6VWI.js → chunk-55IACEB6-Bp9fy_-K.js} +1 -1
- package/dist/server/assets/{chunk-B4BG7PRW-Dkh6IKnk.js → chunk-B4BG7PRW-DIekCOU0.js} +4 -4
- package/dist/server/assets/{chunk-DI55MBZ5-DBWVZkkA.js → chunk-DI55MBZ5-DdsSqZAU.js} +3 -3
- package/dist/server/assets/{chunk-FMBD7UC4-BdS42WOu.js → chunk-FMBD7UC4-yK1qgpi7.js} +1 -1
- package/dist/server/assets/{chunk-QN33PNHL-B8Ct7vG8.js → chunk-QN33PNHL-BbG6vBLZ.js} +1 -1
- package/dist/server/assets/{chunk-QZHKN3VN-B9nHGxsX.js → chunk-QZHKN3VN-x8T6uBe6.js} +1 -1
- package/dist/server/assets/{chunk-TZMSLE5B-BlzccDyU.js → chunk-TZMSLE5B-DLaeAZ2i.js} +1 -1
- package/dist/server/assets/{classDiagram-v2-WZHVMYZB-Chmrw_oF.js → classDiagram-2ON5EDUG-Dm_cGVOP.js} +5 -5
- package/dist/server/assets/{classDiagram-2ON5EDUG-Chmrw_oF.js → classDiagram-v2-WZHVMYZB-Dm_cGVOP.js} +5 -5
- package/dist/server/assets/{clone-aEnx_Sae.js → clone-CORmWwEs.js} +1 -1
- package/dist/server/assets/{cose-bilkent-S5V4N54A-Bc5NoQXq.js → cose-bilkent-S5V4N54A-BfBG7OY2.js} +1 -1
- package/dist/server/assets/{dagre-6UL2VRFP-H_kNmEPM.js → dagre-6UL2VRFP-LXGdLIDl.js} +6 -6
- package/dist/server/assets/{diagram-PSM6KHXK-BcsANBT1.js → diagram-PSM6KHXK-Dq-nGhg0.js} +7 -7
- package/dist/server/assets/{diagram-QEK2KX5R-k-zPaYMJ.js → diagram-QEK2KX5R-rd29zHZp.js} +6 -6
- package/dist/server/assets/{diagram-S2PKOQOG-DjbSY-6m.js → diagram-S2PKOQOG-pULTY82u.js} +6 -6
- package/dist/server/assets/{erDiagram-Q2GNP2WA-CydybEEO.js → erDiagram-Q2GNP2WA-BB0T0Xnn.js} +4 -4
- package/dist/server/assets/{flowDiagram-NV44I4VS-tA99onXp.js → flowDiagram-NV44I4VS-DpODroRz.js} +5 -5
- package/dist/server/assets/{ganttDiagram-JELNMOA3-DsJKSbMm.js → ganttDiagram-JELNMOA3-Cv3UNeb8.js} +1 -1
- package/dist/server/assets/{gitGraph-G5XIXVHT-BNHu-oQ-.js → gitGraph-G5XIXVHT-Gi_FOXtP.js} +6 -6
- package/dist/server/assets/{gitGraphDiagram-V2S2FVAM-CzPNHl73.js → gitGraphDiagram-V2S2FVAM-BJPLdwXn.js} +7 -7
- package/dist/server/assets/{graph-BnMaPr50.js → graph-DZvAvEGU.js} +2 -2
- package/dist/server/assets/{highlighted-body-B3W2YXNL-BdiOjvlf.js → highlighted-body-B3W2YXNL-BpysDJ-x.js} +1 -1
- package/dist/server/assets/{index-Z2HsI7K-.js → index-1E-3f8Qq.js} +1 -1
- package/dist/server/assets/{index-BDjoQgaj.js → index-BERXawHP.js} +1 -1
- package/dist/server/assets/{index-C1sJw8Wd.js → index-BN_8r_Ld.js} +1 -1
- package/dist/server/assets/{index-BcHVcca2.js → index-C3lgs4G4.js} +1 -1
- package/dist/server/assets/{index-CGb2LUtT.js → index-CKDVINR-.js} +1 -1
- package/dist/server/assets/{index-DKZU081P.js → index-CSCKMAKA.js} +1 -1
- package/dist/server/assets/{index-BuEcvcgH.js → index-ChLbrNFl.js} +1 -1
- package/dist/server/assets/{index-CPWcRp4N.js → index-ChPBr3vZ.js} +1 -1
- package/dist/server/assets/{index-BbZG02I3.js → index-CzlCSrfR.js} +1 -1
- package/dist/server/assets/{index-CvQ9Ebcc.js → index-D1exxtRP.js} +1 -1
- package/dist/server/assets/{index-BdUQ01QB.js → index-U-1MZOIQ.js} +1 -1
- package/dist/server/assets/{index-DYrcmtj8.js → index-Y0CJ6FO8.js} +1 -1
- package/dist/server/assets/{index-B5Ou6PeY.js → index-iqainN_h.js} +1 -1
- package/dist/server/assets/{info-VBDWY6EO-C24hC3ph.js → info-VBDWY6EO-Ba8HLWBX.js} +6 -6
- package/dist/server/assets/{infoDiagram-HS3SLOUP-CSvzttKw.js → infoDiagram-HS3SLOUP-BYfrlW-j.js} +5 -5
- package/dist/server/assets/{journeyDiagram-XKPGCS4Q-Bb7ADiou.js → journeyDiagram-XKPGCS4Q-VV4qbZDl.js} +4 -4
- package/dist/server/assets/{kanban-definition-3W4ZIXB7-BCi9DXfZ.js → kanban-definition-3W4ZIXB7-TtjjtFt_.js} +2 -2
- package/dist/server/assets/{layout-CBoh_yzS.js → layout-CxNf3z_2.js} +4 -4
- package/dist/server/assets/{mermaid-3ZIDBTTL-DrE5sAWk.js → mermaid-3ZIDBTTL-ChndXjXw.js} +1 -1
- package/dist/server/assets/{mermaid-parser.core-C6_1Cugd.js → mermaid-parser.core-nvqu-aiP.js} +11 -11
- package/dist/server/assets/{mindmap-definition-VGOIOE7T-yqPdoOIb.js → mindmap-definition-VGOIOE7T-DME5Y_pR.js} +3 -3
- package/dist/server/assets/{packet-DYOGHKS2-DJmc50nE.js → packet-DYOGHKS2-Bt1WHvgh.js} +6 -6
- package/dist/server/assets/{pie-VRWISCQL-CvrR2-yk.js → pie-VRWISCQL-WTXmin9S.js} +6 -6
- package/dist/server/assets/{pieDiagram-ADFJNKIX-CFOW6PnN.js → pieDiagram-ADFJNKIX-CUbwYVab.js} +7 -7
- package/dist/server/assets/{quadrantDiagram-AYHSOK5B-3A-aZNyC.js → quadrantDiagram-AYHSOK5B-BB6u0IN3.js} +1 -1
- package/dist/server/assets/{radar-ZZBFDIW7-Cfbkh5bz.js → radar-ZZBFDIW7-BWKvWMhz.js} +6 -6
- package/dist/server/assets/{requirementDiagram-UZGBJVZJ-Dlll26uf.js → requirementDiagram-UZGBJVZJ-BLRtjxGN.js} +3 -3
- package/dist/server/assets/{router-B261twKF.js → router-BjXwm096.js} +1518 -885
- package/dist/server/assets/{sankeyDiagram-TZEHDZUN-BQaOXs3v.js → sankeyDiagram-TZEHDZUN-BF1Ts-tv.js} +1 -1
- package/dist/server/assets/{sequenceDiagram-WL72ISMW-BCAnfOwu.js → sequenceDiagram-WL72ISMW-DB8euEl-.js} +3 -3
- package/dist/server/assets/{stateDiagram-FKZM4ZOC-BqJZtxdF.js → stateDiagram-FKZM4ZOC-CgrYrlDa.js} +8 -8
- package/dist/server/assets/{stateDiagram-v2-4FDKWEC3-1ifEjgYq.js → stateDiagram-v2-4FDKWEC3-Ch28pf2n.js} +4 -4
- package/dist/server/assets/{timeline-definition-IT6M3QCI-CAWbczQG.js → timeline-definition-IT6M3QCI-jW-suedf.js} +2 -2
- package/dist/server/assets/{treemap-GDKQZRPO-BK5fWRQl.js → treemap-GDKQZRPO-ClNoljcd.js} +6 -6
- package/dist/server/assets/{workspace._workspaceId-C895SrvA.js → workspace._workspaceId-CBpMR_kd.js} +1 -1
- package/dist/server/assets/{workspace._workspaceId-DJjGZFKN.js → workspace._workspaceId-CD0MjjsK.js} +1 -1
- package/dist/server/assets/{xychartDiagram-PRI3JC2R-DfSubvZj.js → xychartDiagram-PRI3JC2R-BKGpeSar.js} +1 -1
- package/dist/server/server.js +2 -2
- package/dist/start-server.mjs +677 -421
- package/package.json +5 -5
- package/dist/client/assets/TerminalPanel-6-rt7Tzp.js +0 -1
- package/dist/client/assets/channel-BObJvFJf.js +0 -1
- package/dist/client/assets/classDiagram-2ON5EDUG-B4j3Xs8O.js +0 -1
- package/dist/client/assets/classDiagram-v2-WZHVMYZB-B4j3Xs8O.js +0 -1
- package/dist/client/assets/clone-D1oJjm-k.js +0 -1
- package/dist/client/assets/main-CXgf0iaP.css +0 -1
- package/dist/client/assets/stateDiagram-v2-4FDKWEC3-BZgMRt9_.js +0 -1
- package/dist/server/assets/_tanstack-start-manifest_v-Cnfw-Mtl.js +0 -4
|
@@ -1226,7 +1226,7 @@ const createLucideIcon = (iconName, iconNode) => {
|
|
|
1226
1226
|
Component.displayName = toPascalCase(iconName);
|
|
1227
1227
|
return Component;
|
|
1228
1228
|
};
|
|
1229
|
-
const __iconNode$
|
|
1229
|
+
const __iconNode$1E = [
|
|
1230
1230
|
[
|
|
1231
1231
|
"path",
|
|
1232
1232
|
{
|
|
@@ -1235,45 +1235,40 @@ const __iconNode$1G = [
|
|
|
1235
1235
|
}
|
|
1236
1236
|
]
|
|
1237
1237
|
];
|
|
1238
|
-
const Activity = createLucideIcon("activity", __iconNode$
|
|
1239
|
-
const __iconNode$
|
|
1238
|
+
const Activity = createLucideIcon("activity", __iconNode$1E);
|
|
1239
|
+
const __iconNode$1D = [
|
|
1240
1240
|
["path", { d: "M12 17V3", key: "1cwfxf" }],
|
|
1241
1241
|
["path", { d: "m6 11 6 6 6-6", key: "12ii2o" }],
|
|
1242
1242
|
["path", { d: "M19 21H5", key: "150jfl" }]
|
|
1243
1243
|
];
|
|
1244
|
-
const ArrowDownToLine = createLucideIcon("arrow-down-to-line", __iconNode$
|
|
1245
|
-
const __iconNode$
|
|
1244
|
+
const ArrowDownToLine = createLucideIcon("arrow-down-to-line", __iconNode$1D);
|
|
1245
|
+
const __iconNode$1C = [
|
|
1246
1246
|
["path", { d: "M12 5v14", key: "s699le" }],
|
|
1247
1247
|
["path", { d: "m19 12-7 7-7-7", key: "1idqje" }]
|
|
1248
1248
|
];
|
|
1249
|
-
const ArrowDown = createLucideIcon("arrow-down", __iconNode$
|
|
1250
|
-
const __iconNode$
|
|
1249
|
+
const ArrowDown = createLucideIcon("arrow-down", __iconNode$1C);
|
|
1250
|
+
const __iconNode$1B = [
|
|
1251
1251
|
["path", { d: "m12 19-7-7 7-7", key: "1l729n" }],
|
|
1252
1252
|
["path", { d: "M19 12H5", key: "x3x0zl" }]
|
|
1253
1253
|
];
|
|
1254
|
-
const ArrowLeft = createLucideIcon("arrow-left", __iconNode$
|
|
1255
|
-
const __iconNode$
|
|
1254
|
+
const ArrowLeft = createLucideIcon("arrow-left", __iconNode$1B);
|
|
1255
|
+
const __iconNode$1A = [
|
|
1256
1256
|
["path", { d: "M5 12h14", key: "1ays0h" }],
|
|
1257
1257
|
["path", { d: "m12 5 7 7-7 7", key: "xquz4c" }]
|
|
1258
1258
|
];
|
|
1259
|
-
const ArrowRight = createLucideIcon("arrow-right", __iconNode$
|
|
1260
|
-
const __iconNode$
|
|
1259
|
+
const ArrowRight = createLucideIcon("arrow-right", __iconNode$1A);
|
|
1260
|
+
const __iconNode$1z = [
|
|
1261
1261
|
["path", { d: "m18 9-6-6-6 6", key: "kcunyi" }],
|
|
1262
1262
|
["path", { d: "M12 3v14", key: "7cf3v8" }],
|
|
1263
1263
|
["path", { d: "M5 21h14", key: "11awu3" }]
|
|
1264
1264
|
];
|
|
1265
|
-
const ArrowUpFromLine = createLucideIcon("arrow-up-from-line", __iconNode$
|
|
1266
|
-
const __iconNode$
|
|
1267
|
-
["path", { d: "m5 12 7-7 7 7", key: "hav0vg" }],
|
|
1268
|
-
["path", { d: "M12 19V5", key: "x0mq9r" }]
|
|
1269
|
-
];
|
|
1270
|
-
const ArrowUp = createLucideIcon("arrow-up", __iconNode$1A);
|
|
1271
|
-
const __iconNode$1z = [
|
|
1265
|
+
const ArrowUpFromLine = createLucideIcon("arrow-up-from-line", __iconNode$1z);
|
|
1266
|
+
const __iconNode$1y = [
|
|
1272
1267
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1273
1268
|
["path", { d: "M4.929 4.929 19.07 19.071", key: "196cmz" }]
|
|
1274
1269
|
];
|
|
1275
|
-
const Ban = createLucideIcon("ban", __iconNode$
|
|
1276
|
-
const __iconNode$
|
|
1270
|
+
const Ban = createLucideIcon("ban", __iconNode$1y);
|
|
1271
|
+
const __iconNode$1x = [
|
|
1277
1272
|
["path", { d: "M12 8V4H8", key: "hb8ula" }],
|
|
1278
1273
|
["rect", { width: "16", height: "12", x: "4", y: "8", rx: "2", key: "enze0r" }],
|
|
1279
1274
|
["path", { d: "M2 14h2", key: "vft8re" }],
|
|
@@ -1281,8 +1276,8 @@ const __iconNode$1y = [
|
|
|
1281
1276
|
["path", { d: "M15 13v2", key: "1xurst" }],
|
|
1282
1277
|
["path", { d: "M9 13v2", key: "rq6x2g" }]
|
|
1283
1278
|
];
|
|
1284
|
-
const Bot = createLucideIcon("bot", __iconNode$
|
|
1285
|
-
const __iconNode$
|
|
1279
|
+
const Bot = createLucideIcon("bot", __iconNode$1x);
|
|
1280
|
+
const __iconNode$1w = [
|
|
1286
1281
|
["path", { d: "M12 18V5", key: "adv99a" }],
|
|
1287
1282
|
["path", { d: "M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4", key: "1e3is1" }],
|
|
1288
1283
|
["path", { d: "M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5", key: "1gqd8o" }],
|
|
@@ -1292,56 +1287,56 @@ const __iconNode$1x = [
|
|
|
1292
1287
|
["path", { d: "M6 18a4 4 0 0 1-2-7.464", key: "k1g0md" }],
|
|
1293
1288
|
["path", { d: "M6.003 5.125a4 4 0 0 0-2.526 5.77", key: "q97ue3" }]
|
|
1294
1289
|
];
|
|
1295
|
-
const Brain = createLucideIcon("brain", __iconNode$
|
|
1296
|
-
const __iconNode$
|
|
1290
|
+
const Brain = createLucideIcon("brain", __iconNode$1w);
|
|
1291
|
+
const __iconNode$1v = [
|
|
1297
1292
|
["path", { d: "m2 16 4.039-9.69a.5.5 0 0 1 .923 0L11 16", key: "d5nyq2" }],
|
|
1298
1293
|
["path", { d: "M22 9v7", key: "pvm9v3" }],
|
|
1299
1294
|
["path", { d: "M3.304 13h6.392", key: "1q3zxz" }],
|
|
1300
1295
|
["circle", { cx: "18.5", cy: "12.5", r: "3.5", key: "z97x68" }]
|
|
1301
1296
|
];
|
|
1302
|
-
const CaseSensitive = createLucideIcon("case-sensitive", __iconNode$
|
|
1303
|
-
const __iconNode$
|
|
1297
|
+
const CaseSensitive = createLucideIcon("case-sensitive", __iconNode$1v);
|
|
1298
|
+
const __iconNode$1u = [
|
|
1304
1299
|
["path", { d: "M3 3v16a2 2 0 0 0 2 2h16", key: "c24i48" }],
|
|
1305
1300
|
["path", { d: "M18 17V9", key: "2bz60n" }],
|
|
1306
1301
|
["path", { d: "M13 17V5", key: "1frdt8" }],
|
|
1307
1302
|
["path", { d: "M8 17v-3", key: "17ska0" }]
|
|
1308
1303
|
];
|
|
1309
|
-
const ChartColumn = createLucideIcon("chart-column", __iconNode$
|
|
1310
|
-
const __iconNode$
|
|
1311
|
-
const Check = createLucideIcon("check", __iconNode$
|
|
1312
|
-
const __iconNode$
|
|
1313
|
-
const ChevronDown = createLucideIcon("chevron-down", __iconNode$
|
|
1314
|
-
const __iconNode$
|
|
1315
|
-
const ChevronLeft = createLucideIcon("chevron-left", __iconNode$
|
|
1316
|
-
const __iconNode$
|
|
1317
|
-
const ChevronRight = createLucideIcon("chevron-right", __iconNode$
|
|
1318
|
-
const __iconNode$
|
|
1319
|
-
const ChevronUp = createLucideIcon("chevron-up", __iconNode$
|
|
1320
|
-
const __iconNode$
|
|
1304
|
+
const ChartColumn = createLucideIcon("chart-column", __iconNode$1u);
|
|
1305
|
+
const __iconNode$1t = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
|
|
1306
|
+
const Check = createLucideIcon("check", __iconNode$1t);
|
|
1307
|
+
const __iconNode$1s = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
|
|
1308
|
+
const ChevronDown = createLucideIcon("chevron-down", __iconNode$1s);
|
|
1309
|
+
const __iconNode$1r = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
|
|
1310
|
+
const ChevronLeft = createLucideIcon("chevron-left", __iconNode$1r);
|
|
1311
|
+
const __iconNode$1q = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
|
|
1312
|
+
const ChevronRight = createLucideIcon("chevron-right", __iconNode$1q);
|
|
1313
|
+
const __iconNode$1p = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
|
|
1314
|
+
const ChevronUp = createLucideIcon("chevron-up", __iconNode$1p);
|
|
1315
|
+
const __iconNode$1o = [
|
|
1321
1316
|
["path", { d: "m7 20 5-5 5 5", key: "13a0gw" }],
|
|
1322
1317
|
["path", { d: "m7 4 5 5 5-5", key: "1kwcof" }]
|
|
1323
1318
|
];
|
|
1324
|
-
const ChevronsDownUp = createLucideIcon("chevrons-down-up", __iconNode$
|
|
1325
|
-
const __iconNode$
|
|
1319
|
+
const ChevronsDownUp = createLucideIcon("chevrons-down-up", __iconNode$1o);
|
|
1320
|
+
const __iconNode$1n = [
|
|
1326
1321
|
["path", { d: "M10.88 21.94 15.46 14", key: "xkve6t" }],
|
|
1327
1322
|
["path", { d: "M21.17 8H12", key: "19dcdn" }],
|
|
1328
1323
|
["path", { d: "M3.95 6.06 8.54 14", key: "g8jz9m" }],
|
|
1329
1324
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1330
1325
|
["circle", { cx: "12", cy: "12", r: "4", key: "4exip2" }]
|
|
1331
1326
|
];
|
|
1332
|
-
const Chromium = createLucideIcon("chromium", __iconNode$
|
|
1333
|
-
const __iconNode$
|
|
1327
|
+
const Chromium = createLucideIcon("chromium", __iconNode$1n);
|
|
1328
|
+
const __iconNode$1m = [
|
|
1334
1329
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1335
1330
|
["line", { x1: "12", x2: "12", y1: "8", y2: "12", key: "1pkeuh" }],
|
|
1336
1331
|
["line", { x1: "12", x2: "12.01", y1: "16", y2: "16", key: "4dfq90" }]
|
|
1337
1332
|
];
|
|
1338
|
-
const CircleAlert = createLucideIcon("circle-alert", __iconNode$
|
|
1339
|
-
const __iconNode$
|
|
1333
|
+
const CircleAlert = createLucideIcon("circle-alert", __iconNode$1m);
|
|
1334
|
+
const __iconNode$1l = [
|
|
1340
1335
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1341
1336
|
["path", { d: "m9 12 2 2 4-4", key: "dzmm74" }]
|
|
1342
1337
|
];
|
|
1343
|
-
const CircleCheck = createLucideIcon("circle-check", __iconNode$
|
|
1344
|
-
const __iconNode$
|
|
1338
|
+
const CircleCheck = createLucideIcon("circle-check", __iconNode$1l);
|
|
1339
|
+
const __iconNode$1k = [
|
|
1345
1340
|
["path", { d: "M10.1 2.182a10 10 0 0 1 3.8 0", key: "5ilxe3" }],
|
|
1346
1341
|
["path", { d: "M13.9 21.818a10 10 0 0 1-3.8 0", key: "11zvb9" }],
|
|
1347
1342
|
["path", { d: "M17.609 3.721a10 10 0 0 1 2.69 2.7", key: "1iw5b2" }],
|
|
@@ -1351,42 +1346,47 @@ const __iconNode$1l = [
|
|
|
1351
1346
|
["path", { d: "M3.721 6.391a10 10 0 0 1 2.7-2.69", key: "1mcia2" }],
|
|
1352
1347
|
["path", { d: "M6.391 20.279a10 10 0 0 1-2.69-2.7", key: "1fvljs" }]
|
|
1353
1348
|
];
|
|
1354
|
-
const CircleDashed = createLucideIcon("circle-dashed", __iconNode$
|
|
1355
|
-
const __iconNode$
|
|
1349
|
+
const CircleDashed = createLucideIcon("circle-dashed", __iconNode$1k);
|
|
1350
|
+
const __iconNode$1j = [
|
|
1356
1351
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1357
1352
|
["path", { d: "M8 12h8", key: "1wcyev" }]
|
|
1358
1353
|
];
|
|
1359
|
-
const CircleMinus = createLucideIcon("circle-minus", __iconNode$
|
|
1360
|
-
const __iconNode$
|
|
1354
|
+
const CircleMinus = createLucideIcon("circle-minus", __iconNode$1j);
|
|
1355
|
+
const __iconNode$1i = [
|
|
1361
1356
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1362
1357
|
["line", { x1: "9", x2: "15", y1: "15", y2: "9", key: "1dfufj" }]
|
|
1363
1358
|
];
|
|
1364
|
-
const CircleSlash = createLucideIcon("circle-slash", __iconNode$
|
|
1365
|
-
const __iconNode$
|
|
1359
|
+
const CircleSlash = createLucideIcon("circle-slash", __iconNode$1i);
|
|
1360
|
+
const __iconNode$1h = [
|
|
1361
|
+
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1362
|
+
["rect", { x: "9", y: "9", width: "6", height: "6", rx: "1", key: "1ssd4o" }]
|
|
1363
|
+
];
|
|
1364
|
+
const CircleStop = createLucideIcon("circle-stop", __iconNode$1h);
|
|
1365
|
+
const __iconNode$1g = [
|
|
1366
1366
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1367
1367
|
["path", { d: "m15 9-6 6", key: "1uzhvr" }],
|
|
1368
1368
|
["path", { d: "m9 9 6 6", key: "z0biqf" }]
|
|
1369
1369
|
];
|
|
1370
|
-
const CircleX = createLucideIcon("circle-x", __iconNode$
|
|
1371
|
-
const __iconNode$
|
|
1372
|
-
const Circle = createLucideIcon("circle", __iconNode$
|
|
1373
|
-
const __iconNode$
|
|
1370
|
+
const CircleX = createLucideIcon("circle-x", __iconNode$1g);
|
|
1371
|
+
const __iconNode$1f = [["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]];
|
|
1372
|
+
const Circle = createLucideIcon("circle", __iconNode$1f);
|
|
1373
|
+
const __iconNode$1e = [
|
|
1374
1374
|
["rect", { width: "8", height: "4", x: "8", y: "2", rx: "1", ry: "1", key: "tgr4d6" }],
|
|
1375
1375
|
["path", { d: "M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2", key: "4jdomd" }],
|
|
1376
1376
|
["path", { d: "M16 4h2a2 2 0 0 1 2 2v4", key: "3hqy98" }],
|
|
1377
1377
|
["path", { d: "M21 14H11", key: "1bme5i" }],
|
|
1378
1378
|
["path", { d: "m15 10-4 4 4 4", key: "5dvupr" }]
|
|
1379
1379
|
];
|
|
1380
|
-
const ClipboardCopy = createLucideIcon("clipboard-copy", __iconNode$
|
|
1381
|
-
const __iconNode$
|
|
1380
|
+
const ClipboardCopy = createLucideIcon("clipboard-copy", __iconNode$1e);
|
|
1381
|
+
const __iconNode$1d = [
|
|
1382
1382
|
["path", { d: "M11 14h10", key: "1w8e9d" }],
|
|
1383
1383
|
["path", { d: "M16 4h2a2 2 0 0 1 2 2v1.344", key: "1e62lh" }],
|
|
1384
1384
|
["path", { d: "m17 18 4-4-4-4", key: "z2g111" }],
|
|
1385
1385
|
["path", { d: "M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 1.793-1.113", key: "bjbb7m" }],
|
|
1386
1386
|
["rect", { x: "8", y: "2", width: "8", height: "4", rx: "1", key: "ublpy" }]
|
|
1387
1387
|
];
|
|
1388
|
-
const ClipboardPaste = createLucideIcon("clipboard-paste", __iconNode$
|
|
1389
|
-
const __iconNode$
|
|
1388
|
+
const ClipboardPaste = createLucideIcon("clipboard-paste", __iconNode$1d);
|
|
1389
|
+
const __iconNode$1c = [
|
|
1390
1390
|
["rect", { width: "8", height: "4", x: "8", y: "2", rx: "1", ry: "1", key: "tgr4d6" }],
|
|
1391
1391
|
[
|
|
1392
1392
|
"path",
|
|
@@ -1396,36 +1396,30 @@ const __iconNode$1e = [
|
|
|
1396
1396
|
}
|
|
1397
1397
|
]
|
|
1398
1398
|
];
|
|
1399
|
-
const Clipboard = createLucideIcon("clipboard", __iconNode$
|
|
1400
|
-
const __iconNode$
|
|
1399
|
+
const Clipboard = createLucideIcon("clipboard", __iconNode$1c);
|
|
1400
|
+
const __iconNode$1b = [
|
|
1401
1401
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1402
1402
|
["path", { d: "M12 6v6l4 2", key: "mmk7yg" }]
|
|
1403
1403
|
];
|
|
1404
|
-
const Clock = createLucideIcon("clock", __iconNode$
|
|
1405
|
-
const __iconNode$
|
|
1406
|
-
["path", { d: "m18 16 4-4-4-4", key: "1inbqp" }],
|
|
1407
|
-
["path", { d: "m6 8-4 4 4 4", key: "15zrgr" }],
|
|
1408
|
-
["path", { d: "m14.5 4-5 16", key: "e7oirm" }]
|
|
1409
|
-
];
|
|
1410
|
-
const CodeXml = createLucideIcon("code-xml", __iconNode$1c);
|
|
1411
|
-
const __iconNode$1b = [
|
|
1404
|
+
const Clock = createLucideIcon("clock", __iconNode$1b);
|
|
1405
|
+
const __iconNode$1a = [
|
|
1412
1406
|
["path", { d: "m16 18 6-6-6-6", key: "eg8j8" }],
|
|
1413
1407
|
["path", { d: "m8 6-6 6 6 6", key: "ppft3o" }]
|
|
1414
1408
|
];
|
|
1415
|
-
const Code = createLucideIcon("code", __iconNode$
|
|
1416
|
-
const __iconNode$
|
|
1409
|
+
const Code = createLucideIcon("code", __iconNode$1a);
|
|
1410
|
+
const __iconNode$19 = [
|
|
1417
1411
|
["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
|
|
1418
1412
|
["path", { d: "M12 3v18", key: "108xh3" }]
|
|
1419
1413
|
];
|
|
1420
|
-
const Columns2 = createLucideIcon("columns-2", __iconNode$
|
|
1421
|
-
const __iconNode$
|
|
1414
|
+
const Columns2 = createLucideIcon("columns-2", __iconNode$19);
|
|
1415
|
+
const __iconNode$18 = [
|
|
1422
1416
|
[
|
|
1423
1417
|
"path",
|
|
1424
1418
|
{ d: "M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3", key: "11bfej" }
|
|
1425
1419
|
]
|
|
1426
1420
|
];
|
|
1427
|
-
const Command$1 = createLucideIcon("command", __iconNode$
|
|
1428
|
-
const __iconNode$
|
|
1421
|
+
const Command$1 = createLucideIcon("command", __iconNode$18);
|
|
1422
|
+
const __iconNode$17 = [
|
|
1429
1423
|
["path", { d: "M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5", key: "laymnq" }],
|
|
1430
1424
|
["path", { d: "M8.5 8.5v.01", key: "ue8clq" }],
|
|
1431
1425
|
["path", { d: "M16 15.5v.01", key: "14dtrp" }],
|
|
@@ -1433,31 +1427,36 @@ const __iconNode$18 = [
|
|
|
1433
1427
|
["path", { d: "M11 17v.01", key: "1hyl5a" }],
|
|
1434
1428
|
["path", { d: "M7 14v.01", key: "uct60s" }]
|
|
1435
1429
|
];
|
|
1436
|
-
const Cookie = createLucideIcon("cookie", __iconNode$
|
|
1437
|
-
const __iconNode$
|
|
1430
|
+
const Cookie = createLucideIcon("cookie", __iconNode$17);
|
|
1431
|
+
const __iconNode$16 = [
|
|
1438
1432
|
["rect", { width: "14", height: "14", x: "8", y: "8", rx: "2", ry: "2", key: "17jyea" }],
|
|
1439
1433
|
["path", { d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2", key: "zix9uf" }]
|
|
1440
1434
|
];
|
|
1441
|
-
const Copy = createLucideIcon("copy", __iconNode$
|
|
1442
|
-
const __iconNode$
|
|
1435
|
+
const Copy = createLucideIcon("copy", __iconNode$16);
|
|
1436
|
+
const __iconNode$15 = [
|
|
1437
|
+
["path", { d: "M20 4v7a4 4 0 0 1-4 4H4", key: "6o5b7l" }],
|
|
1438
|
+
["path", { d: "m9 10-5 5 5 5", key: "1kshq7" }]
|
|
1439
|
+
];
|
|
1440
|
+
const CornerDownLeft = createLucideIcon("corner-down-left", __iconNode$15);
|
|
1441
|
+
const __iconNode$14 = [
|
|
1443
1442
|
["path", { d: "M12 15V3", key: "m9g1x1" }],
|
|
1444
1443
|
["path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4", key: "ih7n3h" }],
|
|
1445
1444
|
["path", { d: "m7 10 5 5 5-5", key: "brsn70" }]
|
|
1446
1445
|
];
|
|
1447
|
-
const Download = createLucideIcon("download", __iconNode$
|
|
1448
|
-
const __iconNode$
|
|
1446
|
+
const Download = createLucideIcon("download", __iconNode$14);
|
|
1447
|
+
const __iconNode$13 = [
|
|
1449
1448
|
["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }],
|
|
1450
1449
|
["circle", { cx: "12", cy: "5", r: "1", key: "gxeob9" }],
|
|
1451
1450
|
["circle", { cx: "12", cy: "19", r: "1", key: "lyex9k" }]
|
|
1452
1451
|
];
|
|
1453
|
-
const EllipsisVertical = createLucideIcon("ellipsis-vertical", __iconNode$
|
|
1454
|
-
const __iconNode$
|
|
1452
|
+
const EllipsisVertical = createLucideIcon("ellipsis-vertical", __iconNode$13);
|
|
1453
|
+
const __iconNode$12 = [
|
|
1455
1454
|
["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }],
|
|
1456
1455
|
["circle", { cx: "19", cy: "12", r: "1", key: "1wjl8i" }],
|
|
1457
1456
|
["circle", { cx: "5", cy: "12", r: "1", key: "1pcz8c" }]
|
|
1458
1457
|
];
|
|
1459
|
-
const Ellipsis = createLucideIcon("ellipsis", __iconNode$
|
|
1460
|
-
const __iconNode$
|
|
1458
|
+
const Ellipsis = createLucideIcon("ellipsis", __iconNode$12);
|
|
1459
|
+
const __iconNode$11 = [
|
|
1461
1460
|
["path", { d: "m15 15 6 6", key: "1s409w" }],
|
|
1462
1461
|
["path", { d: "m15 9 6-6", key: "ko1vev" }],
|
|
1463
1462
|
["path", { d: "M21 16v5h-5", key: "1ck2sf" }],
|
|
@@ -1467,14 +1466,14 @@ const __iconNode$13 = [
|
|
|
1467
1466
|
["path", { d: "M3 8V3h5", key: "1ln10m" }],
|
|
1468
1467
|
["path", { d: "M9 9 3 3", key: "v551iv" }]
|
|
1469
1468
|
];
|
|
1470
|
-
const Expand = createLucideIcon("expand", __iconNode$
|
|
1471
|
-
const __iconNode$
|
|
1469
|
+
const Expand = createLucideIcon("expand", __iconNode$11);
|
|
1470
|
+
const __iconNode$10 = [
|
|
1472
1471
|
["path", { d: "M15 3h6v6", key: "1q9fwt" }],
|
|
1473
1472
|
["path", { d: "M10 14 21 3", key: "gplh6r" }],
|
|
1474
1473
|
["path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6", key: "a6xqqp" }]
|
|
1475
1474
|
];
|
|
1476
|
-
const ExternalLink$1 = createLucideIcon("external-link", __iconNode$
|
|
1477
|
-
const __iconNode
|
|
1475
|
+
const ExternalLink$1 = createLucideIcon("external-link", __iconNode$10);
|
|
1476
|
+
const __iconNode$$ = [
|
|
1478
1477
|
[
|
|
1479
1478
|
"path",
|
|
1480
1479
|
{
|
|
@@ -1484,8 +1483,8 @@ const __iconNode$11 = [
|
|
|
1484
1483
|
],
|
|
1485
1484
|
["circle", { cx: "12", cy: "12", r: "3", key: "1v7zrd" }]
|
|
1486
1485
|
];
|
|
1487
|
-
const Eye = createLucideIcon("eye", __iconNode
|
|
1488
|
-
const __iconNode$
|
|
1486
|
+
const Eye = createLucideIcon("eye", __iconNode$$);
|
|
1487
|
+
const __iconNode$_ = [
|
|
1489
1488
|
[
|
|
1490
1489
|
"path",
|
|
1491
1490
|
{
|
|
@@ -1496,8 +1495,8 @@ const __iconNode$10 = [
|
|
|
1496
1495
|
["path", { d: "M12 9v4", key: "juzpu7" }],
|
|
1497
1496
|
["path", { d: "M12 17h.01", key: "p32p05" }]
|
|
1498
1497
|
];
|
|
1499
|
-
const FileExclamationPoint = createLucideIcon("file-exclamation-point", __iconNode$
|
|
1500
|
-
const __iconNode
|
|
1498
|
+
const FileExclamationPoint = createLucideIcon("file-exclamation-point", __iconNode$_);
|
|
1499
|
+
const __iconNode$Z = [
|
|
1501
1500
|
[
|
|
1502
1501
|
"path",
|
|
1503
1502
|
{
|
|
@@ -1509,8 +1508,8 @@ const __iconNode$$ = [
|
|
|
1509
1508
|
["path", { d: "M2 15h10", key: "jfw4w8" }],
|
|
1510
1509
|
["path", { d: "m9 18 3-3-3-3", key: "112psh" }]
|
|
1511
1510
|
];
|
|
1512
|
-
const FileInput = createLucideIcon("file-input", __iconNode
|
|
1513
|
-
const __iconNode$
|
|
1511
|
+
const FileInput = createLucideIcon("file-input", __iconNode$Z);
|
|
1512
|
+
const __iconNode$Y = [
|
|
1514
1513
|
[
|
|
1515
1514
|
"path",
|
|
1516
1515
|
{
|
|
@@ -1522,8 +1521,8 @@ const __iconNode$_ = [
|
|
|
1522
1521
|
["path", { d: "M9 15h6", key: "cctwl0" }],
|
|
1523
1522
|
["path", { d: "M12 18v-6", key: "17g6i2" }]
|
|
1524
1523
|
];
|
|
1525
|
-
const FilePlus = createLucideIcon("file-plus", __iconNode$
|
|
1526
|
-
const __iconNode$
|
|
1524
|
+
const FilePlus = createLucideIcon("file-plus", __iconNode$Y);
|
|
1525
|
+
const __iconNode$X = [
|
|
1527
1526
|
[
|
|
1528
1527
|
"path",
|
|
1529
1528
|
{
|
|
@@ -1533,8 +1532,8 @@ const __iconNode$Z = [
|
|
|
1533
1532
|
],
|
|
1534
1533
|
["path", { d: "M14 2v5a1 1 0 0 0 1 1h5", key: "wfsgrz" }]
|
|
1535
1534
|
];
|
|
1536
|
-
const File$1 = createLucideIcon("file", __iconNode$
|
|
1537
|
-
const __iconNode$
|
|
1535
|
+
const File$1 = createLucideIcon("file", __iconNode$X);
|
|
1536
|
+
const __iconNode$W = [
|
|
1538
1537
|
["path", { d: "M2 12h6", key: "1wqiqv" }],
|
|
1539
1538
|
["path", { d: "M22 12h-6", key: "1eg9hc" }],
|
|
1540
1539
|
["path", { d: "M12 2v2", key: "tus03m" }],
|
|
@@ -1544,8 +1543,8 @@ const __iconNode$Y = [
|
|
|
1544
1543
|
["path", { d: "m19 9-3 3 3 3", key: "12ol22" }],
|
|
1545
1544
|
["path", { d: "m5 15 3-3-3-3", key: "1kdhjc" }]
|
|
1546
1545
|
];
|
|
1547
|
-
const FoldHorizontal = createLucideIcon("fold-horizontal", __iconNode$
|
|
1548
|
-
const __iconNode$
|
|
1546
|
+
const FoldHorizontal = createLucideIcon("fold-horizontal", __iconNode$W);
|
|
1547
|
+
const __iconNode$V = [
|
|
1549
1548
|
[
|
|
1550
1549
|
"path",
|
|
1551
1550
|
{
|
|
@@ -1554,8 +1553,8 @@ const __iconNode$X = [
|
|
|
1554
1553
|
}
|
|
1555
1554
|
]
|
|
1556
1555
|
];
|
|
1557
|
-
const FolderOpen = createLucideIcon("folder-open", __iconNode$
|
|
1558
|
-
const __iconNode$
|
|
1556
|
+
const FolderOpen = createLucideIcon("folder-open", __iconNode$V);
|
|
1557
|
+
const __iconNode$U = [
|
|
1559
1558
|
["path", { d: "M12 10v6", key: "1bos4e" }],
|
|
1560
1559
|
["path", { d: "M9 13h6", key: "1uhe8q" }],
|
|
1561
1560
|
[
|
|
@@ -1566,8 +1565,8 @@ const __iconNode$W = [
|
|
|
1566
1565
|
}
|
|
1567
1566
|
]
|
|
1568
1567
|
];
|
|
1569
|
-
const FolderPlus = createLucideIcon("folder-plus", __iconNode$
|
|
1570
|
-
const __iconNode$
|
|
1568
|
+
const FolderPlus = createLucideIcon("folder-plus", __iconNode$U);
|
|
1569
|
+
const __iconNode$T = [
|
|
1571
1570
|
[
|
|
1572
1571
|
"path",
|
|
1573
1572
|
{
|
|
@@ -1576,40 +1575,40 @@ const __iconNode$V = [
|
|
|
1576
1575
|
}
|
|
1577
1576
|
]
|
|
1578
1577
|
];
|
|
1579
|
-
const Folder = createLucideIcon("folder", __iconNode$
|
|
1580
|
-
const __iconNode$
|
|
1578
|
+
const Folder = createLucideIcon("folder", __iconNode$T);
|
|
1579
|
+
const __iconNode$S = [
|
|
1581
1580
|
["path", { d: "M15 6a9 9 0 0 0-9 9V3", key: "1cii5b" }],
|
|
1582
1581
|
["circle", { cx: "18", cy: "6", r: "3", key: "1h7g24" }],
|
|
1583
1582
|
["circle", { cx: "6", cy: "18", r: "3", key: "fqmcym" }]
|
|
1584
1583
|
];
|
|
1585
|
-
const GitBranch = createLucideIcon("git-branch", __iconNode$
|
|
1586
|
-
const __iconNode$
|
|
1584
|
+
const GitBranch = createLucideIcon("git-branch", __iconNode$S);
|
|
1585
|
+
const __iconNode$R = [
|
|
1587
1586
|
["circle", { cx: "18", cy: "18", r: "3", key: "1xkwt0" }],
|
|
1588
1587
|
["circle", { cx: "6", cy: "6", r: "3", key: "1lh9wr" }],
|
|
1589
1588
|
["path", { d: "M13 6h3a2 2 0 0 1 2 2v7", key: "1yeb86" }],
|
|
1590
1589
|
["path", { d: "M11 18H8a2 2 0 0 1-2-2V9", key: "19pyzm" }]
|
|
1591
1590
|
];
|
|
1592
|
-
const GitCompare = createLucideIcon("git-compare", __iconNode$
|
|
1593
|
-
const __iconNode$
|
|
1591
|
+
const GitCompare = createLucideIcon("git-compare", __iconNode$R);
|
|
1592
|
+
const __iconNode$Q = [
|
|
1594
1593
|
["circle", { cx: "18", cy: "18", r: "3", key: "1xkwt0" }],
|
|
1595
1594
|
["circle", { cx: "6", cy: "6", r: "3", key: "1lh9wr" }],
|
|
1596
1595
|
["path", { d: "M6 21V9a9 9 0 0 0 9 9", key: "7kw0sc" }]
|
|
1597
1596
|
];
|
|
1598
|
-
const GitMerge = createLucideIcon("git-merge", __iconNode$
|
|
1599
|
-
const __iconNode$
|
|
1597
|
+
const GitMerge = createLucideIcon("git-merge", __iconNode$Q);
|
|
1598
|
+
const __iconNode$P = [
|
|
1600
1599
|
["circle", { cx: "18", cy: "18", r: "3", key: "1xkwt0" }],
|
|
1601
1600
|
["circle", { cx: "6", cy: "6", r: "3", key: "1lh9wr" }],
|
|
1602
1601
|
["path", { d: "M13 6h3a2 2 0 0 1 2 2v7", key: "1yeb86" }],
|
|
1603
1602
|
["line", { x1: "6", x2: "6", y1: "9", y2: "21", key: "rroup" }]
|
|
1604
1603
|
];
|
|
1605
|
-
const GitPullRequest = createLucideIcon("git-pull-request", __iconNode$
|
|
1606
|
-
const __iconNode$
|
|
1604
|
+
const GitPullRequest = createLucideIcon("git-pull-request", __iconNode$P);
|
|
1605
|
+
const __iconNode$O = [
|
|
1607
1606
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1608
1607
|
["path", { d: "M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20", key: "13o1zl" }],
|
|
1609
1608
|
["path", { d: "M2 12h20", key: "9i4pu4" }]
|
|
1610
1609
|
];
|
|
1611
|
-
const Globe = createLucideIcon("globe", __iconNode$
|
|
1612
|
-
const __iconNode$
|
|
1610
|
+
const Globe = createLucideIcon("globe", __iconNode$O);
|
|
1611
|
+
const __iconNode$N = [
|
|
1613
1612
|
["circle", { cx: "12", cy: "9", r: "1", key: "124mty" }],
|
|
1614
1613
|
["circle", { cx: "19", cy: "9", r: "1", key: "1ruzo2" }],
|
|
1615
1614
|
["circle", { cx: "5", cy: "9", r: "1", key: "1a8b28" }],
|
|
@@ -1617,14 +1616,14 @@ const __iconNode$P = [
|
|
|
1617
1616
|
["circle", { cx: "19", cy: "15", r: "1", key: "1a92ep" }],
|
|
1618
1617
|
["circle", { cx: "5", cy: "15", r: "1", key: "5r1jwy" }]
|
|
1619
1618
|
];
|
|
1620
|
-
const GripHorizontal = createLucideIcon("grip-horizontal", __iconNode$
|
|
1621
|
-
const __iconNode$
|
|
1619
|
+
const GripHorizontal = createLucideIcon("grip-horizontal", __iconNode$N);
|
|
1620
|
+
const __iconNode$M = [
|
|
1622
1621
|
["path", { d: "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8", key: "1357e3" }],
|
|
1623
1622
|
["path", { d: "M3 3v5h5", key: "1xhq8a" }],
|
|
1624
1623
|
["path", { d: "M12 7v5l4 2", key: "1fdv2h" }]
|
|
1625
1624
|
];
|
|
1626
|
-
const History = createLucideIcon("history", __iconNode$
|
|
1627
|
-
const __iconNode$
|
|
1625
|
+
const History = createLucideIcon("history", __iconNode$M);
|
|
1626
|
+
const __iconNode$L = [
|
|
1628
1627
|
["path", { d: "M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8", key: "5wwlr5" }],
|
|
1629
1628
|
[
|
|
1630
1629
|
"path",
|
|
@@ -1634,8 +1633,8 @@ const __iconNode$N = [
|
|
|
1634
1633
|
}
|
|
1635
1634
|
]
|
|
1636
1635
|
];
|
|
1637
|
-
const House = createLucideIcon("house", __iconNode$
|
|
1638
|
-
const __iconNode$
|
|
1636
|
+
const House = createLucideIcon("house", __iconNode$L);
|
|
1637
|
+
const __iconNode$K = [
|
|
1639
1638
|
["line", { x1: "2", x2: "22", y1: "2", y2: "22", key: "a6p6uj" }],
|
|
1640
1639
|
["path", { d: "M10.41 10.41a2 2 0 1 1-2.83-2.83", key: "1bzlo9" }],
|
|
1641
1640
|
["line", { x1: "13.5", x2: "6", y1: "13.5", y2: "21", key: "1q0aeu" }],
|
|
@@ -1649,42 +1648,42 @@ const __iconNode$M = [
|
|
|
1649
1648
|
],
|
|
1650
1649
|
["path", { d: "M21 15V5a2 2 0 0 0-2-2H9", key: "43el77" }]
|
|
1651
1650
|
];
|
|
1652
|
-
const ImageOff = createLucideIcon("image-off", __iconNode$
|
|
1653
|
-
const __iconNode$
|
|
1651
|
+
const ImageOff = createLucideIcon("image-off", __iconNode$K);
|
|
1652
|
+
const __iconNode$J = [
|
|
1654
1653
|
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
1655
1654
|
["path", { d: "M12 16v-4", key: "1dtifu" }],
|
|
1656
1655
|
["path", { d: "M12 8h.01", key: "e9boi3" }]
|
|
1657
1656
|
];
|
|
1658
|
-
const Info$1 = createLucideIcon("info", __iconNode$
|
|
1659
|
-
const __iconNode$
|
|
1657
|
+
const Info$1 = createLucideIcon("info", __iconNode$J);
|
|
1658
|
+
const __iconNode$I = [
|
|
1660
1659
|
["path", { d: "M9 17H7A5 5 0 0 1 7 7h2", key: "8i5ue5" }],
|
|
1661
1660
|
["path", { d: "M15 7h2a5 5 0 1 1 0 10h-2", key: "1b9ql8" }],
|
|
1662
1661
|
["line", { x1: "8", x2: "16", y1: "12", y2: "12", key: "1jonct" }]
|
|
1663
1662
|
];
|
|
1664
|
-
const Link2 = createLucideIcon("link-2", __iconNode$
|
|
1665
|
-
const __iconNode$
|
|
1663
|
+
const Link2 = createLucideIcon("link-2", __iconNode$I);
|
|
1664
|
+
const __iconNode$H = [
|
|
1666
1665
|
["path", { d: "M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71", key: "1cjeqo" }],
|
|
1667
1666
|
["path", { d: "M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71", key: "19qd67" }]
|
|
1668
1667
|
];
|
|
1669
|
-
const Link = createLucideIcon("link", __iconNode$
|
|
1670
|
-
const __iconNode$
|
|
1668
|
+
const Link = createLucideIcon("link", __iconNode$H);
|
|
1669
|
+
const __iconNode$G = [
|
|
1671
1670
|
["path", { d: "M16 5H3", key: "m91uny" }],
|
|
1672
1671
|
["path", { d: "M11 12H3", key: "51ecnj" }],
|
|
1673
1672
|
["path", { d: "M16 19H3", key: "zzsher" }],
|
|
1674
1673
|
["path", { d: "M21 12h-6", key: "bt1uis" }]
|
|
1675
1674
|
];
|
|
1676
|
-
const ListMinus = createLucideIcon("list-minus", __iconNode$
|
|
1677
|
-
const __iconNode$
|
|
1675
|
+
const ListMinus = createLucideIcon("list-minus", __iconNode$G);
|
|
1676
|
+
const __iconNode$F = [
|
|
1678
1677
|
["path", { d: "M13 5h8", key: "a7qcls" }],
|
|
1679
1678
|
["path", { d: "M13 12h8", key: "h98zly" }],
|
|
1680
1679
|
["path", { d: "M13 19h8", key: "c3s6r1" }],
|
|
1681
1680
|
["path", { d: "m3 17 2 2 4-4", key: "1jhpwq" }],
|
|
1682
1681
|
["rect", { x: "3", y: "4", width: "6", height: "6", rx: "1", key: "cif1o7" }]
|
|
1683
1682
|
];
|
|
1684
|
-
const ListTodo = createLucideIcon("list-todo", __iconNode$
|
|
1685
|
-
const __iconNode$
|
|
1686
|
-
const LoaderCircle = createLucideIcon("loader-circle", __iconNode$
|
|
1687
|
-
const __iconNode$
|
|
1683
|
+
const ListTodo = createLucideIcon("list-todo", __iconNode$F);
|
|
1684
|
+
const __iconNode$E = [["path", { d: "M21 12a9 9 0 1 1-6.219-8.56", key: "13zald" }]];
|
|
1685
|
+
const LoaderCircle = createLucideIcon("loader-circle", __iconNode$E);
|
|
1686
|
+
const __iconNode$D = [
|
|
1688
1687
|
["path", { d: "M12 2v4", key: "3427ic" }],
|
|
1689
1688
|
["path", { d: "m16.2 7.8 2.9-2.9", key: "r700ao" }],
|
|
1690
1689
|
["path", { d: "M18 12h4", key: "wj9ykh" }],
|
|
@@ -1694,15 +1693,15 @@ const __iconNode$F = [
|
|
|
1694
1693
|
["path", { d: "M2 12h4", key: "j09sii" }],
|
|
1695
1694
|
["path", { d: "m4.9 4.9 2.9 2.9", key: "giyufr" }]
|
|
1696
1695
|
];
|
|
1697
|
-
const Loader = createLucideIcon("loader", __iconNode$
|
|
1698
|
-
const __iconNode$
|
|
1696
|
+
const Loader = createLucideIcon("loader", __iconNode$D);
|
|
1697
|
+
const __iconNode$C = [
|
|
1699
1698
|
["path", { d: "M15 3h6v6", key: "1q9fwt" }],
|
|
1700
1699
|
["path", { d: "m21 3-7 7", key: "1l2asr" }],
|
|
1701
1700
|
["path", { d: "m3 21 7-7", key: "tjx5ai" }],
|
|
1702
1701
|
["path", { d: "M9 21H3v-6", key: "wtvkvv" }]
|
|
1703
1702
|
];
|
|
1704
|
-
const Maximize2 = createLucideIcon("maximize-2", __iconNode$
|
|
1705
|
-
const __iconNode$
|
|
1703
|
+
const Maximize2 = createLucideIcon("maximize-2", __iconNode$C);
|
|
1704
|
+
const __iconNode$B = [
|
|
1706
1705
|
[
|
|
1707
1706
|
"path",
|
|
1708
1707
|
{
|
|
@@ -1711,37 +1710,27 @@ const __iconNode$D = [
|
|
|
1711
1710
|
}
|
|
1712
1711
|
]
|
|
1713
1712
|
];
|
|
1714
|
-
const MessageSquare = createLucideIcon("message-square", __iconNode$
|
|
1715
|
-
const __iconNode$
|
|
1713
|
+
const MessageSquare = createLucideIcon("message-square", __iconNode$B);
|
|
1714
|
+
const __iconNode$A = [
|
|
1716
1715
|
["path", { d: "m14 10 7-7", key: "oa77jy" }],
|
|
1717
1716
|
["path", { d: "M20 10h-6V4", key: "mjg0md" }],
|
|
1718
1717
|
["path", { d: "m3 21 7-7", key: "tjx5ai" }],
|
|
1719
1718
|
["path", { d: "M4 14h6v6", key: "rmj7iw" }]
|
|
1720
1719
|
];
|
|
1721
|
-
const Minimize2 = createLucideIcon("minimize-2", __iconNode$
|
|
1722
|
-
const __iconNode$
|
|
1723
|
-
const Minus = createLucideIcon("minus", __iconNode$
|
|
1724
|
-
const __iconNode$
|
|
1720
|
+
const Minimize2 = createLucideIcon("minimize-2", __iconNode$A);
|
|
1721
|
+
const __iconNode$z = [["path", { d: "M5 12h14", key: "1ays0h" }]];
|
|
1722
|
+
const Minus = createLucideIcon("minus", __iconNode$z);
|
|
1723
|
+
const __iconNode$y = [
|
|
1725
1724
|
["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
|
|
1726
1725
|
["path", { d: "M9 3v18", key: "fh3hqa" }]
|
|
1727
1726
|
];
|
|
1728
|
-
const PanelLeft = createLucideIcon("panel-left", __iconNode$
|
|
1729
|
-
const __iconNode$
|
|
1727
|
+
const PanelLeft = createLucideIcon("panel-left", __iconNode$y);
|
|
1728
|
+
const __iconNode$x = [
|
|
1730
1729
|
["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
|
|
1731
1730
|
["path", { d: "M15 3v18", key: "14nvp0" }]
|
|
1732
1731
|
];
|
|
1733
|
-
const PanelRight = createLucideIcon("panel-right", __iconNode$
|
|
1734
|
-
const __iconNode$
|
|
1735
|
-
[
|
|
1736
|
-
"path",
|
|
1737
|
-
{
|
|
1738
|
-
d: "m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",
|
|
1739
|
-
key: "1miecu"
|
|
1740
|
-
}
|
|
1741
|
-
]
|
|
1742
|
-
];
|
|
1743
|
-
const Paperclip = createLucideIcon("paperclip", __iconNode$y);
|
|
1744
|
-
const __iconNode$x = [
|
|
1732
|
+
const PanelRight = createLucideIcon("panel-right", __iconNode$x);
|
|
1733
|
+
const __iconNode$w = [
|
|
1745
1734
|
[
|
|
1746
1735
|
"path",
|
|
1747
1736
|
{
|
|
@@ -1751,8 +1740,8 @@ const __iconNode$x = [
|
|
|
1751
1740
|
],
|
|
1752
1741
|
["path", { d: "m15 5 4 4", key: "1mk7zo" }]
|
|
1753
1742
|
];
|
|
1754
|
-
const Pencil = createLucideIcon("pencil", __iconNode$
|
|
1755
|
-
const __iconNode$
|
|
1743
|
+
const Pencil = createLucideIcon("pencil", __iconNode$w);
|
|
1744
|
+
const __iconNode$v = [
|
|
1756
1745
|
["path", { d: "M12 17v5", key: "bb1du9" }],
|
|
1757
1746
|
["path", { d: "M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89", key: "znwnzq" }],
|
|
1758
1747
|
["path", { d: "m2 2 20 20", key: "1ooewy" }],
|
|
@@ -1764,8 +1753,8 @@ const __iconNode$w = [
|
|
|
1764
1753
|
}
|
|
1765
1754
|
]
|
|
1766
1755
|
];
|
|
1767
|
-
const PinOff = createLucideIcon("pin-off", __iconNode$
|
|
1768
|
-
const __iconNode$
|
|
1756
|
+
const PinOff = createLucideIcon("pin-off", __iconNode$v);
|
|
1757
|
+
const __iconNode$u = [
|
|
1769
1758
|
["path", { d: "M12 17v5", key: "bb1du9" }],
|
|
1770
1759
|
[
|
|
1771
1760
|
"path",
|
|
@@ -1775,8 +1764,8 @@ const __iconNode$v = [
|
|
|
1775
1764
|
}
|
|
1776
1765
|
]
|
|
1777
1766
|
];
|
|
1778
|
-
const Pin = createLucideIcon("pin", __iconNode$
|
|
1779
|
-
const __iconNode$
|
|
1767
|
+
const Pin = createLucideIcon("pin", __iconNode$u);
|
|
1768
|
+
const __iconNode$t = [
|
|
1780
1769
|
[
|
|
1781
1770
|
"path",
|
|
1782
1771
|
{
|
|
@@ -1785,27 +1774,27 @@ const __iconNode$u = [
|
|
|
1785
1774
|
}
|
|
1786
1775
|
]
|
|
1787
1776
|
];
|
|
1788
|
-
const Play = createLucideIcon("play", __iconNode$
|
|
1789
|
-
const __iconNode$
|
|
1777
|
+
const Play = createLucideIcon("play", __iconNode$t);
|
|
1778
|
+
const __iconNode$s = [
|
|
1790
1779
|
["path", { d: "M5 12h14", key: "1ays0h" }],
|
|
1791
1780
|
["path", { d: "M12 5v14", key: "s699le" }]
|
|
1792
1781
|
];
|
|
1793
|
-
const Plus = createLucideIcon("plus", __iconNode$
|
|
1794
|
-
const __iconNode$
|
|
1782
|
+
const Plus = createLucideIcon("plus", __iconNode$s);
|
|
1783
|
+
const __iconNode$r = [
|
|
1795
1784
|
["path", { d: "M21 12a9 9 0 0 0-9-9 9.75 9.75 0 0 0-6.74 2.74L3 8", key: "14sxne" }],
|
|
1796
1785
|
["path", { d: "M3 3v5h5", key: "1xhq8a" }],
|
|
1797
1786
|
["path", { d: "M3 12a9 9 0 0 0 9 9 9.75 9.75 0 0 0 6.74-2.74L21 16", key: "1hlbsb" }],
|
|
1798
1787
|
["path", { d: "M16 16h5v5", key: "ccwih5" }]
|
|
1799
1788
|
];
|
|
1800
|
-
const RefreshCcw = createLucideIcon("refresh-ccw", __iconNode$
|
|
1801
|
-
const __iconNode$
|
|
1789
|
+
const RefreshCcw = createLucideIcon("refresh-ccw", __iconNode$r);
|
|
1790
|
+
const __iconNode$q = [
|
|
1802
1791
|
["path", { d: "M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8", key: "v9h5vc" }],
|
|
1803
1792
|
["path", { d: "M21 3v5h-5", key: "1q7to0" }],
|
|
1804
1793
|
["path", { d: "M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16", key: "3uifl3" }],
|
|
1805
1794
|
["path", { d: "M8 16H3v5", key: "1cv678" }]
|
|
1806
1795
|
];
|
|
1807
|
-
const RefreshCw = createLucideIcon("refresh-cw", __iconNode$
|
|
1808
|
-
const __iconNode$
|
|
1796
|
+
const RefreshCw = createLucideIcon("refresh-cw", __iconNode$q);
|
|
1797
|
+
const __iconNode$p = [
|
|
1809
1798
|
["path", { d: "M17 3v10", key: "15fgeh" }],
|
|
1810
1799
|
["path", { d: "m12.67 5.5 8.66 5", key: "1gpheq" }],
|
|
1811
1800
|
["path", { d: "m12.67 10.5 8.66-5", key: "1dkfa6" }],
|
|
@@ -1814,23 +1803,23 @@ const __iconNode$q = [
|
|
|
1814
1803
|
{ d: "M9 17a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2v-2z", key: "swwfx4" }
|
|
1815
1804
|
]
|
|
1816
1805
|
];
|
|
1817
|
-
const Regex = createLucideIcon("regex", __iconNode$
|
|
1818
|
-
const __iconNode$
|
|
1806
|
+
const Regex = createLucideIcon("regex", __iconNode$p);
|
|
1807
|
+
const __iconNode$o = [
|
|
1819
1808
|
["path", { d: "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8", key: "1357e3" }],
|
|
1820
1809
|
["path", { d: "M3 3v5h5", key: "1xhq8a" }]
|
|
1821
1810
|
];
|
|
1822
|
-
const RotateCcw = createLucideIcon("rotate-ccw", __iconNode$
|
|
1823
|
-
const __iconNode$
|
|
1811
|
+
const RotateCcw = createLucideIcon("rotate-ccw", __iconNode$o);
|
|
1812
|
+
const __iconNode$n = [
|
|
1824
1813
|
["path", { d: "M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8", key: "1p45f6" }],
|
|
1825
1814
|
["path", { d: "M21 3v5h-5", key: "1q7to0" }]
|
|
1826
1815
|
];
|
|
1827
|
-
const RotateCw = createLucideIcon("rotate-cw", __iconNode$
|
|
1828
|
-
const __iconNode$
|
|
1816
|
+
const RotateCw = createLucideIcon("rotate-cw", __iconNode$n);
|
|
1817
|
+
const __iconNode$m = [
|
|
1829
1818
|
["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
|
|
1830
1819
|
["path", { d: "M3 12h18", key: "1i2n21" }]
|
|
1831
1820
|
];
|
|
1832
|
-
const Rows2 = createLucideIcon("rows-2", __iconNode$
|
|
1833
|
-
const __iconNode$
|
|
1821
|
+
const Rows2 = createLucideIcon("rows-2", __iconNode$m);
|
|
1822
|
+
const __iconNode$l = [
|
|
1834
1823
|
[
|
|
1835
1824
|
"path",
|
|
1836
1825
|
{
|
|
@@ -1841,28 +1830,15 @@ const __iconNode$m = [
|
|
|
1841
1830
|
["path", { d: "M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7", key: "1ydtos" }],
|
|
1842
1831
|
["path", { d: "M7 3v4a1 1 0 0 0 1 1h7", key: "t51u73" }]
|
|
1843
1832
|
];
|
|
1844
|
-
const Save = createLucideIcon("save", __iconNode$
|
|
1845
|
-
const __iconNode$
|
|
1833
|
+
const Save = createLucideIcon("save", __iconNode$l);
|
|
1834
|
+
const __iconNode$k = [
|
|
1846
1835
|
["circle", { cx: "6", cy: "6", r: "3", key: "1lh9wr" }],
|
|
1847
1836
|
["path", { d: "M8.12 8.12 12 12", key: "1alkpv" }],
|
|
1848
1837
|
["path", { d: "M20 4 8.12 15.88", key: "xgtan2" }],
|
|
1849
1838
|
["circle", { cx: "6", cy: "18", r: "3", key: "fqmcym" }],
|
|
1850
1839
|
["path", { d: "M14.8 14.8 20 20", key: "ptml3r" }]
|
|
1851
1840
|
];
|
|
1852
|
-
const Scissors = createLucideIcon("scissors", __iconNode$
|
|
1853
|
-
const __iconNode$k = [
|
|
1854
|
-
["path", { d: "M15 12h-5", key: "r7krc0" }],
|
|
1855
|
-
["path", { d: "M15 8h-5", key: "1khuty" }],
|
|
1856
|
-
["path", { d: "M19 17V5a2 2 0 0 0-2-2H4", key: "zz82l3" }],
|
|
1857
|
-
[
|
|
1858
|
-
"path",
|
|
1859
|
-
{
|
|
1860
|
-
d: "M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",
|
|
1861
|
-
key: "1ph1d7"
|
|
1862
|
-
}
|
|
1863
|
-
]
|
|
1864
|
-
];
|
|
1865
|
-
const ScrollText = createLucideIcon("scroll-text", __iconNode$k);
|
|
1841
|
+
const Scissors = createLucideIcon("scissors", __iconNode$k);
|
|
1866
1842
|
const __iconNode$j = [
|
|
1867
1843
|
["path", { d: "m21 21-4.34-4.34", key: "14j7rj" }],
|
|
1868
1844
|
["circle", { cx: "11", cy: "11", r: "8", key: "4ej97u" }]
|
|
@@ -7782,7 +7758,7 @@ var Anchor2$1 = MenuAnchor;
|
|
|
7782
7758
|
var Portal$3 = MenuPortal;
|
|
7783
7759
|
var Content2$5 = MenuContent;
|
|
7784
7760
|
var Group = MenuGroup;
|
|
7785
|
-
var Label$
|
|
7761
|
+
var Label$4 = MenuLabel;
|
|
7786
7762
|
var Item2$2 = MenuItem;
|
|
7787
7763
|
var CheckboxItem = MenuCheckboxItem;
|
|
7788
7764
|
var RadioGroup = MenuRadioGroup;
|
|
@@ -7949,7 +7925,7 @@ var ContextMenuLabel$1 = reactExports.forwardRef(
|
|
|
7949
7925
|
(props, forwardedRef) => {
|
|
7950
7926
|
const { __scopeContextMenu, ...labelProps } = props;
|
|
7951
7927
|
const menuScope = useMenuScope$1(__scopeContextMenu);
|
|
7952
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
7928
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Label$4, { ...menuScope, ...labelProps, ref: forwardedRef });
|
|
7953
7929
|
}
|
|
7954
7930
|
);
|
|
7955
7931
|
ContextMenuLabel$1.displayName = LABEL_NAME$2;
|
|
@@ -8204,7 +8180,7 @@ var DropdownMenuLabel$1 = reactExports.forwardRef(
|
|
|
8204
8180
|
(props, forwardedRef) => {
|
|
8205
8181
|
const { __scopeDropdownMenu, ...labelProps } = props;
|
|
8206
8182
|
const menuScope = useMenuScope(__scopeDropdownMenu);
|
|
8207
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
8183
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Label$4, { ...menuScope, ...labelProps, ref: forwardedRef });
|
|
8208
8184
|
}
|
|
8209
8185
|
);
|
|
8210
8186
|
DropdownMenuLabel$1.displayName = LABEL_NAME$1;
|
|
@@ -8318,7 +8294,7 @@ var Sub2 = DropdownMenuSub$1;
|
|
|
8318
8294
|
var SubTrigger2 = DropdownMenuSubTrigger$1;
|
|
8319
8295
|
var SubContent2 = DropdownMenuSubContent$1;
|
|
8320
8296
|
var NAME = "Label";
|
|
8321
|
-
var Label$
|
|
8297
|
+
var Label$3 = reactExports.forwardRef((props, forwardedRef) => {
|
|
8322
8298
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
8323
8299
|
Primitive.label,
|
|
8324
8300
|
{
|
|
@@ -8333,8 +8309,8 @@ var Label$2 = reactExports.forwardRef((props, forwardedRef) => {
|
|
|
8333
8309
|
}
|
|
8334
8310
|
);
|
|
8335
8311
|
});
|
|
8336
|
-
Label$
|
|
8337
|
-
var Root$2 = Label$
|
|
8312
|
+
Label$3.displayName = NAME;
|
|
8313
|
+
var Root$2 = Label$3;
|
|
8338
8314
|
function clamp$2(value, [min2, max2]) {
|
|
8339
8315
|
return Math.min(max2, Math.max(min2, value));
|
|
8340
8316
|
}
|
|
@@ -14487,6 +14463,9 @@ function Input({ className, type: type2, ...props }) {
|
|
|
14487
14463
|
}
|
|
14488
14464
|
);
|
|
14489
14465
|
}
|
|
14466
|
+
const POPPER_MAX_HEIGHT = "max-h-[min(var(--popper-max-height,100dvh),calc(var(--radix-popper-available-height)/var(--app-zoom,1)))]";
|
|
14467
|
+
const POPPER_MAX_WIDTH = "max-w-[calc(var(--radix-popper-available-width)/var(--app-zoom,1))]";
|
|
14468
|
+
const POPPER_TRIGGER_WIDTH = "min-w-[calc(var(--radix-popper-anchor-width)/var(--app-zoom,1))]";
|
|
14490
14469
|
function Popover({ ...props }) {
|
|
14491
14470
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(Root2$1, { "data-slot": "popover", ...props });
|
|
14492
14471
|
}
|
|
@@ -14509,7 +14488,9 @@ function PopoverContent({
|
|
|
14509
14488
|
align,
|
|
14510
14489
|
sideOffset,
|
|
14511
14490
|
className: cn$2(
|
|
14512
|
-
"ease-out duration-150 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border border-border bg-popover p-4 text-popover-foreground shadow-md outline-hidden data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
14491
|
+
"ease-out duration-150 z-50 w-72 origin-(--radix-popover-content-transform-origin) overflow-y-auto rounded-md border border-border bg-popover p-4 text-popover-foreground shadow-md outline-hidden data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
14492
|
+
POPPER_MAX_HEIGHT,
|
|
14493
|
+
POPPER_MAX_WIDTH,
|
|
14513
14494
|
className
|
|
14514
14495
|
),
|
|
14515
14496
|
...props
|
|
@@ -14932,10 +14913,10 @@ const DIALOG_CONTENT_VARIANTS = {
|
|
|
14932
14913
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0",
|
|
14933
14914
|
// Mobile (< lg): bottom drawer
|
|
14934
14915
|
"inset-x-0 bottom-0 w-full max-w-none rounded-t-2xl border border-b-0 p-6",
|
|
14935
|
-
"max-h-[calc(100dvh-env(safe-area-inset-top)-1.5rem)]",
|
|
14916
|
+
"max-h-[calc(100dvh/var(--app-zoom,1)-env(safe-area-inset-top)-1.5rem)]",
|
|
14936
14917
|
"max-lg:data-[state=open]:slide-in-from-bottom max-lg:data-[state=closed]:slide-out-to-bottom",
|
|
14937
14918
|
// Desktop (lg+): revert to the centred modal
|
|
14938
|
-
"lg:inset-auto lg:top-[50%] lg:left-[50%] lg:bottom-auto lg:w-full lg:max-w-lg lg:max-h-[85vh] lg:translate-x-[-50%] lg:translate-y-[-50%] lg:rounded-lg lg:border-b",
|
|
14919
|
+
"lg:inset-auto lg:top-[50%] lg:left-[50%] lg:bottom-auto lg:w-full lg:max-w-lg lg:max-h-[calc(85vh/var(--app-zoom,1))] lg:translate-x-[-50%] lg:translate-y-[-50%] lg:rounded-lg lg:border-b",
|
|
14939
14920
|
"lg:data-[state=open]:zoom-in-95 lg:data-[state=closed]:zoom-out-95"
|
|
14940
14921
|
].join(" "),
|
|
14941
14922
|
"command-palette": [
|
|
@@ -14951,13 +14932,13 @@ const DIALOG_CONTENT_VARIANTS = {
|
|
|
14951
14932
|
// floats at `bottom: var(--kb-inset)` (keyboard height; 0 when closed) so
|
|
14952
14933
|
// the input clears the on-screen keyboard — see `useKeyboardInset`.
|
|
14953
14934
|
"inset-x-0 bottom-[var(--kb-inset,0px)] w-full max-w-none rounded-t-2xl border border-b-0",
|
|
14954
|
-
"max-h-[calc(100dvh-var(--kb-inset,0px)-env(safe-area-inset-top)-1.5rem)]",
|
|
14935
|
+
"max-h-[calc(100dvh/var(--app-zoom,1)-var(--kb-inset,0px)-env(safe-area-inset-top)-1.5rem)]",
|
|
14955
14936
|
"max-lg:[&_[data-slot=command]]:flex-col-reverse",
|
|
14956
14937
|
"max-lg:[&_[cmdk-input-wrapper]]:border-t max-lg:[&_[cmdk-input-wrapper]]:border-b-0",
|
|
14957
14938
|
"max-lg:data-[state=open]:slide-in-from-bottom max-lg:data-[state=closed]:slide-out-to-bottom",
|
|
14958
14939
|
// Desktop (lg+): anchored in the upper third by its TOP edge — no
|
|
14959
14940
|
// `translate-y`, so the input never moves as the list grows downward.
|
|
14960
|
-
"lg:inset-x-auto lg:bottom-auto lg:top-[12vh] lg:left-1/2 lg:w-full lg:max-w-lg lg:max-h-[70vh] lg:-translate-x-1/2 lg:rounded-lg lg:border"
|
|
14941
|
+
"lg:inset-x-auto lg:bottom-auto lg:top-[calc(12vh/var(--app-zoom,1))] lg:left-1/2 lg:w-full lg:max-w-lg lg:max-h-[calc(70vh/var(--app-zoom,1))] lg:-translate-x-1/2 lg:rounded-lg lg:border"
|
|
14961
14942
|
].join(" ")
|
|
14962
14943
|
};
|
|
14963
14944
|
const keyboardInsetHolders = /* @__PURE__ */ new Set();
|
|
@@ -15219,7 +15200,8 @@ function ContextMenuContent({
|
|
|
15219
15200
|
if (event.button === 2) event.stopPropagation();
|
|
15220
15201
|
},
|
|
15221
15202
|
className: cn$2(
|
|
15222
|
-
"ease-out duration-150 z-50
|
|
15203
|
+
"ease-out duration-150 z-50 min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md dark:text-neutral-50 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
15204
|
+
POPPER_MAX_HEIGHT,
|
|
15223
15205
|
className
|
|
15224
15206
|
),
|
|
15225
15207
|
...props
|
|
@@ -15281,7 +15263,9 @@ function ContextMenuSubContent({
|
|
|
15281
15263
|
{
|
|
15282
15264
|
"data-slot": "context-menu-sub-content",
|
|
15283
15265
|
className: cn$2(
|
|
15284
|
-
"ease-out duration-150 z-50 min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-lg dark:text-neutral-50 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
15266
|
+
"ease-out duration-150 z-50 min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-lg dark:text-neutral-50 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
15267
|
+
POPPER_MAX_HEIGHT,
|
|
15268
|
+
POPPER_MAX_WIDTH,
|
|
15285
15269
|
className
|
|
15286
15270
|
),
|
|
15287
15271
|
...props
|
|
@@ -15350,7 +15334,8 @@ function DropdownMenuContent({
|
|
|
15350
15334
|
"data-slot": "dropdown-menu-content",
|
|
15351
15335
|
sideOffset,
|
|
15352
15336
|
className: cn$2(
|
|
15353
|
-
"ease-out duration-150 z-50
|
|
15337
|
+
"ease-out duration-150 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md dark:text-neutral-50 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
15338
|
+
POPPER_MAX_HEIGHT,
|
|
15354
15339
|
className
|
|
15355
15340
|
),
|
|
15356
15341
|
...props
|
|
@@ -15476,7 +15461,9 @@ function DropdownMenuSubContent({
|
|
|
15476
15461
|
{
|
|
15477
15462
|
"data-slot": "dropdown-menu-sub-content",
|
|
15478
15463
|
className: cn$2(
|
|
15479
|
-
"ease-out duration-150 z-50
|
|
15464
|
+
"ease-out duration-150 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-lg dark:text-neutral-50 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
15465
|
+
POPPER_MAX_HEIGHT,
|
|
15466
|
+
POPPER_MAX_WIDTH,
|
|
15480
15467
|
className
|
|
15481
15468
|
),
|
|
15482
15469
|
...props
|
|
@@ -15496,7 +15483,7 @@ function Textarea({ className, ...props }) {
|
|
|
15496
15483
|
}
|
|
15497
15484
|
);
|
|
15498
15485
|
}
|
|
15499
|
-
function Label$
|
|
15486
|
+
function Label$2({ className, ...props }) {
|
|
15500
15487
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
15501
15488
|
Root$2,
|
|
15502
15489
|
{
|
|
@@ -15603,7 +15590,8 @@ function SelectContent({
|
|
|
15603
15590
|
// Mirror DropdownMenuContent so dropdowns and selects render
|
|
15604
15591
|
// identically (popover surface, explicit border-border so the
|
|
15605
15592
|
// outline doesn't fall back to currentColor).
|
|
15606
|
-
"ease-out duration-150 relative z-50
|
|
15593
|
+
"ease-out duration-150 relative z-50 min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-hidden rounded-md border border-border bg-popover text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
15594
|
+
position2 === "popper" && POPPER_MAX_HEIGHT,
|
|
15607
15595
|
position2 === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
|
|
15608
15596
|
className
|
|
15609
15597
|
),
|
|
@@ -15612,10 +15600,7 @@ function SelectContent({
|
|
|
15612
15600
|
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
15613
15601
|
Viewport$1,
|
|
15614
15602
|
{
|
|
15615
|
-
className: cn$2(
|
|
15616
|
-
"p-1",
|
|
15617
|
-
position2 === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"
|
|
15618
|
-
),
|
|
15603
|
+
className: cn$2("p-1", position2 === "popper" && ["w-full", POPPER_TRIGGER_WIDTH]),
|
|
15619
15604
|
children: children2
|
|
15620
15605
|
}
|
|
15621
15606
|
)
|
|
@@ -21022,7 +21007,7 @@ function AddProjectDialog({ open: open2, onOpenChange, defaultLabel }) {
|
|
|
21022
21007
|
/* @__PURE__ */ jsxRuntimeExports.jsx(DialogDescription, { children: "Add a folder to manage its workspaces. Git repositories enable branches and PRs; plain folders work too, with a single implicit workspace." })
|
|
21023
21008
|
] }),
|
|
21024
21009
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "grid gap-3 py-4", children: [
|
|
21025
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
21010
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { htmlFor: "project-path", children: "Folder path" }),
|
|
21026
21011
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex gap-2", children: [
|
|
21027
21012
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
21028
21013
|
Input,
|
|
@@ -32126,7 +32111,7 @@ function bindHandler(plugin22, handler) {
|
|
|
32126
32111
|
}
|
|
32127
32112
|
function computeHandlers(plugins2) {
|
|
32128
32113
|
let result = /* @__PURE__ */ Object.create(null);
|
|
32129
|
-
function
|
|
32114
|
+
function record2(type2) {
|
|
32130
32115
|
return result[type2] || (result[type2] = { observers: [], handlers: [] });
|
|
32131
32116
|
}
|
|
32132
32117
|
for (let plugin22 of plugins2) {
|
|
@@ -32135,19 +32120,19 @@ function computeHandlers(plugins2) {
|
|
|
32135
32120
|
for (let type2 in handlers2) {
|
|
32136
32121
|
let f2 = handlers2[type2];
|
|
32137
32122
|
if (f2)
|
|
32138
|
-
|
|
32123
|
+
record2(type2).handlers.push(bindHandler(plugin22.value, f2));
|
|
32139
32124
|
}
|
|
32140
32125
|
if (observers2)
|
|
32141
32126
|
for (let type2 in observers2) {
|
|
32142
32127
|
let f2 = observers2[type2];
|
|
32143
32128
|
if (f2)
|
|
32144
|
-
|
|
32129
|
+
record2(type2).observers.push(bindHandler(plugin22.value, f2));
|
|
32145
32130
|
}
|
|
32146
32131
|
}
|
|
32147
32132
|
for (let type2 in handlers$1)
|
|
32148
|
-
|
|
32133
|
+
record2(type2).handlers.push(handlers$1[type2]);
|
|
32149
32134
|
for (let type2 in observers)
|
|
32150
|
-
|
|
32135
|
+
record2(type2).observers.push(observers[type2]);
|
|
32151
32136
|
return result;
|
|
32152
32137
|
}
|
|
32153
32138
|
const PendingKeys = [
|
|
@@ -33996,15 +33981,15 @@ function findPosition({ total, ranges }, ratio) {
|
|
|
33996
33981
|
}
|
|
33997
33982
|
}
|
|
33998
33983
|
function findFraction(structure, pos) {
|
|
33999
|
-
let
|
|
33984
|
+
let counted2 = 0;
|
|
34000
33985
|
for (let { from: from2, to: to2 } of structure.ranges) {
|
|
34001
33986
|
if (pos <= to2) {
|
|
34002
|
-
|
|
33987
|
+
counted2 += pos - from2;
|
|
34003
33988
|
break;
|
|
34004
33989
|
}
|
|
34005
|
-
|
|
33990
|
+
counted2 += to2 - from2;
|
|
34006
33991
|
}
|
|
34007
|
-
return
|
|
33992
|
+
return counted2 / structure.total;
|
|
34008
33993
|
}
|
|
34009
33994
|
function find$2(array2, f2) {
|
|
34010
33995
|
for (let val of array2)
|
|
@@ -34676,8 +34661,8 @@ class DOMObserver {
|
|
|
34676
34661
|
if (records.length)
|
|
34677
34662
|
this.queue = [];
|
|
34678
34663
|
let from2 = -1, to2 = -1, typeOver = false;
|
|
34679
|
-
for (let
|
|
34680
|
-
let range2 = this.readMutation(
|
|
34664
|
+
for (let record2 of records) {
|
|
34665
|
+
let range2 = this.readMutation(record2);
|
|
34681
34666
|
if (!range2)
|
|
34682
34667
|
continue;
|
|
34683
34668
|
if (range2.typeOver)
|
|
@@ -39961,7 +39946,7 @@ function getStyleTags(node2) {
|
|
|
39961
39946
|
return rule || null;
|
|
39962
39947
|
}
|
|
39963
39948
|
const t$1 = Tag.define;
|
|
39964
|
-
const comment$5 = t$1(), name$1 = t$1(), typeName = t$1(name$1), propertyName = t$1(name$1), literal = t$1(), string$2 = t$1(literal), number$
|
|
39949
|
+
const comment$5 = t$1(), name$1 = t$1(), typeName = t$1(name$1), propertyName = t$1(name$1), literal = t$1(), string$2 = t$1(literal), number$5 = t$1(literal), content$2 = t$1(), heading$3 = t$1(content$2), keyword = t$1(), operator = t$1(), punctuation$1 = t$1(), bracket = t$1(punctuation$1), meta = t$1();
|
|
39965
39950
|
const tags$2 = {
|
|
39966
39951
|
/**
|
|
39967
39952
|
A comment.
|
|
@@ -40042,15 +40027,15 @@ const tags$2 = {
|
|
|
40042
40027
|
/**
|
|
40043
40028
|
A number [literal](#highlight.tags.literal).
|
|
40044
40029
|
*/
|
|
40045
|
-
number: number$
|
|
40030
|
+
number: number$5,
|
|
40046
40031
|
/**
|
|
40047
40032
|
An integer [number](#highlight.tags.number) literal.
|
|
40048
40033
|
*/
|
|
40049
|
-
integer: t$1(number$
|
|
40034
|
+
integer: t$1(number$5),
|
|
40050
40035
|
/**
|
|
40051
40036
|
A floating-point [number](#highlight.tags.number) literal.
|
|
40052
40037
|
*/
|
|
40053
|
-
float: t$1(number$
|
|
40038
|
+
float: t$1(number$5),
|
|
40054
40039
|
/**
|
|
40055
40040
|
A boolean [literal](#highlight.tags.literal).
|
|
40056
40041
|
*/
|
|
@@ -46207,41 +46192,41 @@ async function loadLanguage(lang) {
|
|
|
46207
46192
|
(m2) => m2.javascript({ jsx: true, typescript: true })
|
|
46208
46193
|
);
|
|
46209
46194
|
case "python":
|
|
46210
|
-
return import("./index-
|
|
46195
|
+
return import("./index-CSCKMAKA.js").then((m2) => m2.python());
|
|
46211
46196
|
case "html":
|
|
46212
46197
|
return Promise.resolve().then(() => index$2).then((m2) => m2.html());
|
|
46213
46198
|
case "css":
|
|
46214
46199
|
return Promise.resolve().then(() => index$4).then((m2) => m2.css());
|
|
46215
46200
|
case "scss":
|
|
46216
46201
|
case "sass":
|
|
46217
|
-
return import("./index-
|
|
46202
|
+
return import("./index-BN_8r_Ld.js").then((m2) => m2.sass());
|
|
46218
46203
|
case "less":
|
|
46219
|
-
return import("./index-
|
|
46204
|
+
return import("./index-ChPBr3vZ.js").then((m2) => m2.less());
|
|
46220
46205
|
case "json":
|
|
46221
46206
|
case "jsonc":
|
|
46222
|
-
return import("./index-
|
|
46207
|
+
return import("./index-D1exxtRP.js").then((m2) => m2.json());
|
|
46223
46208
|
case "markdown":
|
|
46224
46209
|
case "mdx":
|
|
46225
46210
|
return Promise.resolve().then(() => index$1).then((m2) => m2.markdown());
|
|
46226
46211
|
case "xml":
|
|
46227
|
-
return import("./index-
|
|
46212
|
+
return import("./index-CzlCSrfR.js").then((m2) => m2.xml());
|
|
46228
46213
|
case "yaml":
|
|
46229
|
-
return import("./index-
|
|
46214
|
+
return import("./index-CKDVINR-.js").then((m2) => m2.yaml());
|
|
46230
46215
|
case "sql":
|
|
46231
|
-
return import("./index-
|
|
46216
|
+
return import("./index-Y0CJ6FO8.js").then((m2) => m2.sql());
|
|
46232
46217
|
case "rust":
|
|
46233
|
-
return import("./index-
|
|
46218
|
+
return import("./index-1E-3f8Qq.js").then((m2) => m2.rust());
|
|
46234
46219
|
case "go":
|
|
46235
|
-
return import("./index-
|
|
46220
|
+
return import("./index-U-1MZOIQ.js").then((m2) => m2.go());
|
|
46236
46221
|
case "java":
|
|
46237
|
-
return import("./index-
|
|
46222
|
+
return import("./index-BERXawHP.js").then((m2) => m2.java());
|
|
46238
46223
|
case "kotlin":
|
|
46239
|
-
return import("./index-
|
|
46224
|
+
return import("./index-BERXawHP.js").then((m2) => m2.java());
|
|
46240
46225
|
case "c":
|
|
46241
46226
|
case "cpp":
|
|
46242
|
-
return import("./index-
|
|
46227
|
+
return import("./index-C3lgs4G4.js").then((m2) => m2.cpp());
|
|
46243
46228
|
case "php":
|
|
46244
|
-
return import("./index-
|
|
46229
|
+
return import("./index-ChLbrNFl.js").then((m2) => m2.php());
|
|
46245
46230
|
// Legacy modes via StreamLanguage
|
|
46246
46231
|
case "bash":
|
|
46247
46232
|
case "fish":
|
|
@@ -49924,11 +49909,11 @@ class Parse2 {
|
|
|
49924
49909
|
}
|
|
49925
49910
|
}
|
|
49926
49911
|
if (!newStacks.length) {
|
|
49927
|
-
let
|
|
49928
|
-
if (
|
|
49912
|
+
let finished2 = stopped && findFinished(stopped);
|
|
49913
|
+
if (finished2) {
|
|
49929
49914
|
if (verbose)
|
|
49930
|
-
console.log("Finish with " + this.stackID(
|
|
49931
|
-
return this.stackToTree(
|
|
49915
|
+
console.log("Finish with " + this.stackID(finished2));
|
|
49916
|
+
return this.stackToTree(finished2);
|
|
49932
49917
|
}
|
|
49933
49918
|
if (this.parser.strict) {
|
|
49934
49919
|
if (verbose && stopped)
|
|
@@ -49939,11 +49924,11 @@ class Parse2 {
|
|
|
49939
49924
|
this.recovering = 5;
|
|
49940
49925
|
}
|
|
49941
49926
|
if (this.recovering && stopped) {
|
|
49942
|
-
let
|
|
49943
|
-
if (
|
|
49927
|
+
let finished2 = this.stoppedAt != null && stopped[0].pos > this.stoppedAt ? stopped[0] : this.runRecovery(stopped, stoppedTokens, newStacks);
|
|
49928
|
+
if (finished2) {
|
|
49944
49929
|
if (verbose)
|
|
49945
|
-
console.log("Force-finish " + this.stackID(
|
|
49946
|
-
return this.stackToTree(
|
|
49930
|
+
console.log("Force-finish " + this.stackID(finished2));
|
|
49931
|
+
return this.stackToTree(finished2.forceAll());
|
|
49947
49932
|
}
|
|
49948
49933
|
}
|
|
49949
49934
|
if (this.recovering) {
|
|
@@ -50072,7 +50057,7 @@ class Parse2 {
|
|
|
50072
50057
|
}
|
|
50073
50058
|
}
|
|
50074
50059
|
runRecovery(stacks, tokens, newStacks) {
|
|
50075
|
-
let
|
|
50060
|
+
let finished2 = null, restarted = false;
|
|
50076
50061
|
for (let i2 = 0; i2 < stacks.length; i2++) {
|
|
50077
50062
|
let stack = stacks[i2], token2 = tokens[i2 << 1], tokenEnd = tokens[(i2 << 1) + 1];
|
|
50078
50063
|
let base2 = verbose ? this.stackID(stack) + " -> " : "";
|
|
@@ -50111,11 +50096,11 @@ class Parse2 {
|
|
|
50111
50096
|
if (verbose)
|
|
50112
50097
|
console.log(base2 + this.stackID(stack) + ` (via recover-delete ${this.parser.getName(token2)})`);
|
|
50113
50098
|
pushStackDedup(stack, newStacks);
|
|
50114
|
-
} else if (!
|
|
50115
|
-
|
|
50099
|
+
} else if (!finished2 || finished2.score < force.score) {
|
|
50100
|
+
finished2 = force;
|
|
50116
50101
|
}
|
|
50117
50102
|
}
|
|
50118
|
-
return
|
|
50103
|
+
return finished2;
|
|
50119
50104
|
}
|
|
50120
50105
|
// Convert the stack's buffer to a syntax tree.
|
|
50121
50106
|
stackToTree(stack) {
|
|
@@ -53349,10 +53334,10 @@ function renumberList(after, doc2, changes, offset2 = 0) {
|
|
|
53349
53334
|
}
|
|
53350
53335
|
}
|
|
53351
53336
|
function normalizeIndent(content2, state2) {
|
|
53352
|
-
let
|
|
53353
|
-
if (!
|
|
53337
|
+
let blank2 = /^[ \t]*/.exec(content2)[0].length;
|
|
53338
|
+
if (!blank2 || state2.facet(indentUnit) != " ")
|
|
53354
53339
|
return content2;
|
|
53355
|
-
let col = countColumn(content2, 4,
|
|
53340
|
+
let col = countColumn(content2, 4, blank2);
|
|
53356
53341
|
let space2 = "";
|
|
53357
53342
|
for (let i2 = col; i2 > 0; ) {
|
|
53358
53343
|
if (i2 >= 4) {
|
|
@@ -53363,7 +53348,7 @@ function normalizeIndent(content2, state2) {
|
|
|
53363
53348
|
i2--;
|
|
53364
53349
|
}
|
|
53365
53350
|
}
|
|
53366
|
-
return space2 + content2.slice(
|
|
53351
|
+
return space2 + content2.slice(blank2);
|
|
53367
53352
|
}
|
|
53368
53353
|
const insertNewlineContinueMarkupCommand = (config2 = {}) => ({ state: state2, dispatch: dispatch2 }) => {
|
|
53369
53354
|
let tree = syntaxTree(state2), { doc: doc2 } = state2;
|
|
@@ -54802,10 +54787,13 @@ class TableEditor {
|
|
|
54802
54787
|
this.menu = { el: menu, close: close2 };
|
|
54803
54788
|
host.appendChild(menu);
|
|
54804
54789
|
const hostRect = host.getBoundingClientRect();
|
|
54790
|
+
const scale = host.offsetWidth > 0 ? hostRect.width / host.offsetWidth : 1;
|
|
54791
|
+
const hostWidth = host.offsetWidth;
|
|
54805
54792
|
const width = menu.offsetWidth;
|
|
54806
|
-
let left = (alignEnd ? anchor2.right
|
|
54807
|
-
|
|
54808
|
-
|
|
54793
|
+
let left = ((alignEnd ? anchor2.right : anchor2.left) - hostRect.left) / scale;
|
|
54794
|
+
if (alignEnd) left -= width;
|
|
54795
|
+
const top2 = (anchor2.bottom - hostRect.top) / scale + 4;
|
|
54796
|
+
if (left + width > hostWidth - 8) left = Math.max(8, hostWidth - width - 8);
|
|
54809
54797
|
menu.style.left = `${left}px`;
|
|
54810
54798
|
menu.style.top = `${top2}px`;
|
|
54811
54799
|
buttons.find((b2) => !b2.disabled)?.focus();
|
|
@@ -56543,17 +56531,17 @@ function CommandPaletteDialog({ open: open2, onOpenChange, commands }) {
|
|
|
56543
56531
|
) });
|
|
56544
56532
|
}
|
|
56545
56533
|
const obstructions = /* @__PURE__ */ new Set();
|
|
56546
|
-
const listeners$
|
|
56534
|
+
const listeners$4 = /* @__PURE__ */ new Set();
|
|
56547
56535
|
function changed() {
|
|
56548
|
-
for (const listener2 of listeners$
|
|
56536
|
+
for (const listener2 of listeners$4) listener2();
|
|
56549
56537
|
}
|
|
56550
56538
|
function toastObstructions() {
|
|
56551
56539
|
return obstructions;
|
|
56552
56540
|
}
|
|
56553
56541
|
function subscribeToastObstructions(listener2) {
|
|
56554
|
-
listeners$
|
|
56542
|
+
listeners$4.add(listener2);
|
|
56555
56543
|
return () => {
|
|
56556
|
-
listeners$
|
|
56544
|
+
listeners$4.delete(listener2);
|
|
56557
56545
|
};
|
|
56558
56546
|
}
|
|
56559
56547
|
function useToastObstruction() {
|
|
@@ -59712,11 +59700,11 @@ function useRect(element2, measure, fallbackRect2) {
|
|
|
59712
59700
|
if (!element2) {
|
|
59713
59701
|
return;
|
|
59714
59702
|
}
|
|
59715
|
-
for (const
|
|
59703
|
+
for (const record2 of records) {
|
|
59716
59704
|
const {
|
|
59717
59705
|
type: type2,
|
|
59718
59706
|
target
|
|
59719
|
-
} =
|
|
59707
|
+
} = record2;
|
|
59720
59708
|
if (type2 === "childList" && target instanceof HTMLElement && target.contains(element2)) {
|
|
59721
59709
|
measureRect();
|
|
59722
59710
|
break;
|
|
@@ -61957,7 +61945,7 @@ function NewWorkspaceDialog({ projectName, open: open2, onOpenChange }) {
|
|
|
61957
61945
|
] })
|
|
61958
61946
|
] }),
|
|
61959
61947
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "grid gap-3 py-4", children: [
|
|
61960
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
61948
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { htmlFor: "branch-name", children: "Branch name" }),
|
|
61961
61949
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
61962
61950
|
Input,
|
|
61963
61951
|
{
|
|
@@ -61976,7 +61964,7 @@ function NewWorkspaceDialog({ projectName, open: open2, onOpenChange }) {
|
|
|
61976
61964
|
/* @__PURE__ */ jsxRuntimeExports.jsx("code", { children: slug })
|
|
61977
61965
|
] }),
|
|
61978
61966
|
slugError && /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-xs text-destructive", children: slugError }),
|
|
61979
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
61967
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { htmlFor: "base-branch", children: "Base branch (optional)" }),
|
|
61980
61968
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
61981
61969
|
Input,
|
|
61982
61970
|
{
|
|
@@ -61989,7 +61977,7 @@ function NewWorkspaceDialog({ projectName, open: open2, onOpenChange }) {
|
|
|
61989
61977
|
spellCheck: false
|
|
61990
61978
|
}
|
|
61991
61979
|
),
|
|
61992
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
61980
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { htmlFor: "initial-prompt", children: "Initial prompt (optional)" }),
|
|
61993
61981
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
61994
61982
|
Textarea,
|
|
61995
61983
|
{
|
|
@@ -62130,13 +62118,15 @@ function pullRequestTone(pr2, ciState) {
|
|
|
62130
62118
|
}
|
|
62131
62119
|
}
|
|
62132
62120
|
const TONE_CLASS = {
|
|
62133
|
-
failure: "text-red-600 dark:text-red-400",
|
|
62134
|
-
pending: "text-yellow-700 dark:text-yellow-400",
|
|
62135
|
-
success: "text-green-700 dark:text-green-400",
|
|
62136
|
-
neutral: "text-muted-foreground",
|
|
62137
|
-
merged: "text-violet-600 dark:text-violet-400",
|
|
62138
|
-
closed: "text-muted-foreground line-through"
|
|
62139
|
-
};
|
|
62121
|
+
failure: "text-red-600 border-red-600/40 bg-red-500/10 dark:text-red-400 dark:border-red-400/40",
|
|
62122
|
+
pending: "text-yellow-700 border-yellow-600/50 bg-yellow-500/10 dark:text-yellow-400 dark:border-yellow-400/40",
|
|
62123
|
+
success: "text-green-700 border-green-600/40 bg-green-500/10 dark:text-green-400 dark:border-green-400/40",
|
|
62124
|
+
neutral: "text-muted-foreground border-border bg-muted/50",
|
|
62125
|
+
merged: "text-violet-600 border-violet-600/40 bg-violet-500/10 dark:text-violet-400 dark:border-violet-400/40",
|
|
62126
|
+
closed: "text-muted-foreground border-border bg-muted/50 line-through"
|
|
62127
|
+
};
|
|
62128
|
+
const TAG_CLASS = "inline-flex items-center rounded border px-1 py-px leading-none";
|
|
62129
|
+
const NUMBER_CLASS = `${TAG_CLASS} text-[11px] font-semibold tabular-nums`;
|
|
62140
62130
|
function statusLabel(pr2, ciState) {
|
|
62141
62131
|
if (pr2.state === "merged") return "Merged";
|
|
62142
62132
|
if (pr2.state === "closed") return "Closed";
|
|
@@ -62198,7 +62188,7 @@ function PullRequestBadge({ pr: pr2, ciState, onOpenChecks }) {
|
|
|
62198
62188
|
"aria-expanded": open2,
|
|
62199
62189
|
"data-testid": "workspace-card__pr-badge",
|
|
62200
62190
|
"data-tone": tone,
|
|
62201
|
-
className: `shrink-0
|
|
62191
|
+
className: `shrink-0 outline-none hover:underline focus-visible:ring-2 focus-visible:ring-ring ${NUMBER_CLASS} ${TONE_CLASS[tone]}`,
|
|
62202
62192
|
onPointerEnter: (e3) => {
|
|
62203
62193
|
if (e3.pointerType !== "touch") setOpenAfter(true, OPEN_DELAY_MS);
|
|
62204
62194
|
},
|
|
@@ -62273,7 +62263,8 @@ function PullRequestBadge({ pr: pr2, ciState, onOpenChecks }) {
|
|
|
62273
62263
|
"span",
|
|
62274
62264
|
{
|
|
62275
62265
|
"data-testid": "pr-popover__number",
|
|
62276
|
-
|
|
62266
|
+
"data-tone": tone,
|
|
62267
|
+
className: `${NUMBER_CLASS} ${TONE_CLASS[tone]}`,
|
|
62277
62268
|
children: [
|
|
62278
62269
|
"#",
|
|
62279
62270
|
pr2.number
|
|
@@ -62284,7 +62275,7 @@ function PullRequestBadge({ pr: pr2, ciState, onOpenChecks }) {
|
|
|
62284
62275
|
"span",
|
|
62285
62276
|
{
|
|
62286
62277
|
"data-testid": "pr-popover__draft",
|
|
62287
|
-
className:
|
|
62278
|
+
className: `${TAG_CLASS} border-border text-[10px] font-medium text-muted-foreground`,
|
|
62288
62279
|
children: "Draft"
|
|
62289
62280
|
}
|
|
62290
62281
|
),
|
|
@@ -62693,11 +62684,11 @@ function SortableProject({
|
|
|
62693
62684
|
}
|
|
62694
62685
|
),
|
|
62695
62686
|
labels.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsxs(Sub3, { children: [
|
|
62696
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs(SubTrigger3, { children: [
|
|
62687
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(SubTrigger3, { "data-testid": "project-list__action--set-label", children: [
|
|
62697
62688
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Tag$1, {}),
|
|
62698
62689
|
"Set label"
|
|
62699
62690
|
] }),
|
|
62700
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Portal3, { children: /* @__PURE__ */ jsxRuntimeExports.jsxs(SubContent3, { children: [
|
|
62691
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Portal3, { children: /* @__PURE__ */ jsxRuntimeExports.jsxs(SubContent3, { "data-testid": "project-list__label-submenu", children: [
|
|
62701
62692
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(Item3, { onClick: () => updateProjectLabel(project.name, null), children: [
|
|
62702
62693
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "flex-1", children: "None" }),
|
|
62703
62694
|
!project.label && /* @__PURE__ */ jsxRuntimeExports.jsx(Check, { className: "size-3" })
|
|
@@ -65126,44 +65117,6 @@ function useRestartTerminalDaemon() {
|
|
|
65126
65117
|
}
|
|
65127
65118
|
});
|
|
65128
65119
|
}
|
|
65129
|
-
const EXPERIMENTAL_FLAG_KEYS = {
|
|
65130
|
-
contextMeter: "band.experimental.context-meter"
|
|
65131
|
-
};
|
|
65132
|
-
function readFlag(key2) {
|
|
65133
|
-
if (typeof window === "undefined") return false;
|
|
65134
|
-
return window.localStorage.getItem(key2) === "true";
|
|
65135
|
-
}
|
|
65136
|
-
function writeFlag(key2, value) {
|
|
65137
|
-
if (typeof window === "undefined") return;
|
|
65138
|
-
window.localStorage.setItem(key2, value ? "true" : "false");
|
|
65139
|
-
window.dispatchEvent(new CustomEvent("band:experimental-flag-change", { detail: { key: key2 } }));
|
|
65140
|
-
}
|
|
65141
|
-
function useExperimentalFlag(key2) {
|
|
65142
|
-
const [enabled, setEnabled] = reactExports.useState(() => readFlag(key2));
|
|
65143
|
-
reactExports.useEffect(() => {
|
|
65144
|
-
const sync = (e3) => {
|
|
65145
|
-
if (e3 instanceof CustomEvent && e3.detail?.key !== key2) return;
|
|
65146
|
-
setEnabled(readFlag(key2));
|
|
65147
|
-
};
|
|
65148
|
-
window.addEventListener("band:experimental-flag-change", sync);
|
|
65149
|
-
window.addEventListener("storage", sync);
|
|
65150
|
-
return () => {
|
|
65151
|
-
window.removeEventListener("band:experimental-flag-change", sync);
|
|
65152
|
-
window.removeEventListener("storage", sync);
|
|
65153
|
-
};
|
|
65154
|
-
}, [key2]);
|
|
65155
|
-
const set2 = reactExports.useCallback(
|
|
65156
|
-
(value) => {
|
|
65157
|
-
writeFlag(key2, value);
|
|
65158
|
-
setEnabled(value);
|
|
65159
|
-
},
|
|
65160
|
-
[key2]
|
|
65161
|
-
);
|
|
65162
|
-
return [enabled, set2];
|
|
65163
|
-
}
|
|
65164
|
-
function useExperimentalContextMeter() {
|
|
65165
|
-
return useExperimentalFlag(EXPERIMENTAL_FLAG_KEYS.contextMeter);
|
|
65166
|
-
}
|
|
65167
65120
|
function RestartTerminalDaemonDialog({ open: open2, onOpenChange, onConfirm, busy }) {
|
|
65168
65121
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(Dialog, { open: open2, onOpenChange: (next2) => !busy && onOpenChange(next2), children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
65169
65122
|
DialogContent,
|
|
@@ -65244,7 +65197,7 @@ function SettingsRow({
|
|
|
65244
65197
|
className
|
|
65245
65198
|
}) {
|
|
65246
65199
|
const labelBlock = (label || description) && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "min-w-0 flex-1 space-y-1", children: [
|
|
65247
|
-
label ? /* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
65200
|
+
label ? /* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { htmlFor, className: "text-sm font-medium leading-tight text-foreground", children: label }) : null,
|
|
65248
65201
|
description ? /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-xs leading-snug text-muted-foreground", children: description }) : null
|
|
65249
65202
|
] });
|
|
65250
65203
|
if (variant === "stacked") {
|
|
@@ -65481,7 +65434,6 @@ function SettingsPage({ open: open2, onOpenChange }) {
|
|
|
65481
65434
|
settings.usagePollingEnabled ?? true
|
|
65482
65435
|
);
|
|
65483
65436
|
const [agentModels, setAgentModels] = reactExports.useState({});
|
|
65484
|
-
const [contextMeterEnabled, setContextMeterEnabled] = useExperimentalContextMeter();
|
|
65485
65437
|
const adapter2 = useAdapter();
|
|
65486
65438
|
const mergeAgentModels = reactExports.useCallback(
|
|
65487
65439
|
(agentId, patch2) => setAgentModels((prev2) => ({
|
|
@@ -65706,7 +65658,7 @@ function SettingsPage({ open: open2, onOpenChange }) {
|
|
|
65706
65658
|
DialogContent,
|
|
65707
65659
|
{
|
|
65708
65660
|
variant: "bottom-sheet",
|
|
65709
|
-
className: "flex flex-col gap-0 overflow-hidden p-0 lg:h-[80vh] lg:max-w-2xl",
|
|
65661
|
+
className: "flex flex-col gap-0 overflow-hidden p-0 lg:h-[calc(80vh/var(--app-zoom,1))] lg:max-w-2xl",
|
|
65710
65662
|
children: [
|
|
65711
65663
|
/* @__PURE__ */ jsxRuntimeExports.jsx(DialogHeader, { className: "px-6 pt-6 pb-4 shrink-0", children: /* @__PURE__ */ jsxRuntimeExports.jsx(DialogTitle, { children: "Settings" }) }),
|
|
65712
65664
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1 min-h-0 overflow-y-auto", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col gap-6 px-6 pb-6", children: [
|
|
@@ -66025,22 +65977,6 @@ function SettingsPage({ open: open2, onOpenChange }) {
|
|
|
66025
65977
|
)
|
|
66026
65978
|
}
|
|
66027
65979
|
),
|
|
66028
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
66029
|
-
SettingsRow,
|
|
66030
|
-
{
|
|
66031
|
-
htmlFor: "agents-context-meter",
|
|
66032
|
-
label: "Context window meter",
|
|
66033
|
-
description: "Show a context-usage donut next to the session-history button in the chat input. Token counting accuracy varies by agent — disable if numbers look wrong.",
|
|
66034
|
-
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
66035
|
-
Switch,
|
|
66036
|
-
{
|
|
66037
|
-
id: "agents-context-meter",
|
|
66038
|
-
checked: contextMeterEnabled,
|
|
66039
|
-
onCheckedChange: setContextMeterEnabled
|
|
66040
|
-
}
|
|
66041
|
-
)
|
|
66042
|
-
}
|
|
66043
|
-
),
|
|
66044
65980
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Accordion, { type: "multiple", className: "w-full", children: KNOWN_AGENTS.map((known) => {
|
|
66045
65981
|
const agent = codingAgents.find((a2) => a2.type === known.type);
|
|
66046
65982
|
const enabled = !!agent;
|
|
@@ -66108,7 +66044,7 @@ function SettingsPage({ open: open2, onOpenChange }) {
|
|
|
66108
66044
|
] }),
|
|
66109
66045
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(AccordionContent, { className: "space-y-2.5 px-4 pb-3 pl-11", children: [
|
|
66110
66046
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-1", children: [
|
|
66111
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
66047
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { className: "text-xs text-muted-foreground", children: "Command" }),
|
|
66112
66048
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
66113
66049
|
Input,
|
|
66114
66050
|
{
|
|
@@ -66126,7 +66062,7 @@ function SettingsPage({ open: open2, onOpenChange }) {
|
|
|
66126
66062
|
] }),
|
|
66127
66063
|
agent && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-1", children: [
|
|
66128
66064
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-between gap-2", children: [
|
|
66129
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs(Label$
|
|
66065
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(Label$2, { className: "text-xs text-muted-foreground", children: [
|
|
66130
66066
|
"Models ",
|
|
66131
66067
|
models.length > 0 && `(${models.length})`
|
|
66132
66068
|
] }),
|
|
@@ -66188,7 +66124,7 @@ function SettingsPage({ open: open2, onOpenChange }) {
|
|
|
66188
66124
|
] })
|
|
66189
66125
|
] }),
|
|
66190
66126
|
agent && models.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-1", children: [
|
|
66191
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
66127
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { className: "text-xs text-muted-foreground", children: "Default model" }),
|
|
66192
66128
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
66193
66129
|
Select,
|
|
66194
66130
|
{
|
|
@@ -66533,7 +66469,7 @@ function DashboardShell({
|
|
|
66533
66469
|
if (!(e3.metaKey || e3.ctrlKey) || e3.altKey || e3.shiftKey) return;
|
|
66534
66470
|
if (e3.key < "0" || e3.key > "9") return;
|
|
66535
66471
|
const target = e3.target;
|
|
66536
|
-
if (target) {
|
|
66472
|
+
if (target && !e3.metaKey) {
|
|
66537
66473
|
const tag2 = target.tagName;
|
|
66538
66474
|
if (tag2 === "INPUT" || tag2 === "TEXTAREA" || tag2 === "SELECT" || target.isContentEditable) {
|
|
66539
66475
|
return;
|
|
@@ -70324,7 +70260,7 @@ function ImagePreview$1({ src, alt }) {
|
|
|
70324
70260
|
{
|
|
70325
70261
|
src,
|
|
70326
70262
|
alt,
|
|
70327
|
-
className: "max-h-[70vh] max-w-full object-contain",
|
|
70263
|
+
className: "max-h-[calc(70vh/var(--app-zoom,1))] max-w-full object-contain",
|
|
70328
70264
|
onError: () => setError(true),
|
|
70329
70265
|
onLoad: (e3) => {
|
|
70330
70266
|
const img = e3.currentTarget;
|
|
@@ -71035,10 +70971,10 @@ function FileViewer({
|
|
|
71035
70971
|
] })
|
|
71036
70972
|
);
|
|
71037
70973
|
}
|
|
71038
|
-
function resolveRelativePath(dir,
|
|
70974
|
+
function resolveRelativePath(dir, relative2) {
|
|
71039
70975
|
let decoded;
|
|
71040
70976
|
try {
|
|
71041
|
-
decoded = decodeURIComponent(
|
|
70977
|
+
decoded = decodeURIComponent(relative2);
|
|
71042
70978
|
} catch {
|
|
71043
70979
|
return null;
|
|
71044
70980
|
}
|
|
@@ -78516,7 +78452,7 @@ function fixPrompt(branch, review, failing) {
|
|
|
78516
78452
|
"Read the failing job logs (for example with `gh run view <run-id> --log-failed`), fix the causes, run the relevant checks locally, and push the fix."
|
|
78517
78453
|
].join("\n");
|
|
78518
78454
|
}
|
|
78519
|
-
function useNow(ticking) {
|
|
78455
|
+
function useNow$1(ticking) {
|
|
78520
78456
|
const [now2, setNow] = reactExports.useState(() => Date.now());
|
|
78521
78457
|
reactExports.useEffect(() => {
|
|
78522
78458
|
if (!ticking) return;
|
|
@@ -78535,7 +78471,7 @@ function ChecksSection({
|
|
|
78535
78471
|
}) {
|
|
78536
78472
|
const host = useClientPluginHost();
|
|
78537
78473
|
const [open2, setOpen] = reactExports.useState(true);
|
|
78538
|
-
const now2 = useNow(visible && open2 && checks2.checks.some(isCountingUp));
|
|
78474
|
+
const now2 = useNow$1(visible && open2 && checks2.checks.some(isCountingUp));
|
|
78539
78475
|
const [fixState, setFixState] = reactExports.useState("idle");
|
|
78540
78476
|
const [fixError, setFixError] = reactExports.useState(null);
|
|
78541
78477
|
if (checks2.checks.length === 0) {
|
|
@@ -79327,7 +79263,7 @@ function SectionHeader({
|
|
|
79327
79263
|
actions,
|
|
79328
79264
|
onViewAll
|
|
79329
79265
|
}) {
|
|
79330
|
-
const
|
|
79266
|
+
const Chevron2 = collapsed ? ChevronRight : ChevronDown;
|
|
79331
79267
|
return (
|
|
79332
79268
|
// The icon actions appear on hover or keyboard focus, as in VS Code, so a
|
|
79333
79269
|
// narrow panel keeps room for the label; devices without hover always
|
|
@@ -79342,7 +79278,7 @@ function SectionHeader({
|
|
|
79342
79278
|
"data-testid": "changes-section__toggle",
|
|
79343
79279
|
className: "flex h-full min-w-0 flex-1 items-center gap-1 text-left text-[11px] font-semibold tracking-wide text-muted-foreground uppercase",
|
|
79344
79280
|
children: [
|
|
79345
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
79281
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Chevron2, { className: "size-3.5 shrink-0" }),
|
|
79346
79282
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "truncate", children: SECTION_LABELS[section] }),
|
|
79347
79283
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
79348
79284
|
"span",
|
|
@@ -79675,7 +79611,7 @@ const CommitRow = reactExports.memo(function CommitRow2({
|
|
|
79675
79611
|
const { commit } = row2;
|
|
79676
79612
|
const visibleRefs = commit.refs.slice(0, 2);
|
|
79677
79613
|
const hiddenRefs = commit.refs.slice(2);
|
|
79678
|
-
const
|
|
79614
|
+
const Chevron2 = expanded ? ChevronDown : ChevronRight;
|
|
79679
79615
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
79680
79616
|
"button",
|
|
79681
79617
|
{
|
|
@@ -79690,7 +79626,7 @@ ${commit.sha.slice(0, 7)} · ${commit.author}`,
|
|
|
79690
79626
|
children: [
|
|
79691
79627
|
/* @__PURE__ */ jsxRuntimeExports.jsx(CommitGraphSlice, { row: row2 }),
|
|
79692
79628
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "flex min-w-0 items-center gap-1", children: [
|
|
79693
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
79629
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Chevron2, { className: "size-3 shrink-0 text-muted-foreground" }),
|
|
79694
79630
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "truncate text-foreground", children: commit.subject })
|
|
79695
79631
|
] }),
|
|
79696
79632
|
commit.refs.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "flex shrink-0 items-center gap-1 overflow-hidden", children: [
|
|
@@ -79897,7 +79833,7 @@ function CommitsPanel({
|
|
|
79897
79833
|
void reloadHistory();
|
|
79898
79834
|
}, [collapsed, toggleCollapsed, refetchSignature, reloadHistory]);
|
|
79899
79835
|
const count2 = rows.length;
|
|
79900
|
-
const
|
|
79836
|
+
const Chevron2 = collapsed ? ChevronRight : ChevronDown;
|
|
79901
79837
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative shrink-0 border-t border-border", "data-testid": "commits-panel", children: [
|
|
79902
79838
|
!collapsed && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
79903
79839
|
"div",
|
|
@@ -79917,7 +79853,7 @@ function CommitsPanel({
|
|
|
79917
79853
|
"data-testid": "commits-panel__toggle",
|
|
79918
79854
|
className: "flex h-full min-w-0 flex-1 items-center gap-1 text-left text-[11px] font-semibold tracking-wide text-muted-foreground uppercase",
|
|
79919
79855
|
children: [
|
|
79920
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
79856
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Chevron2, { className: "size-3.5 shrink-0" }),
|
|
79921
79857
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: "Commits" }),
|
|
79922
79858
|
pages && /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
79923
79859
|
"span",
|
|
@@ -80147,7 +80083,7 @@ function CheckMark({ visible }) {
|
|
|
80147
80083
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(Check, { className: visible ? "size-3.5" : "size-3.5 invisible" });
|
|
80148
80084
|
}
|
|
80149
80085
|
const states = /* @__PURE__ */ new Map();
|
|
80150
|
-
const listeners$
|
|
80086
|
+
const listeners$3 = /* @__PURE__ */ new Map();
|
|
80151
80087
|
const EMPTY_STATE = Object.freeze({ openFilePath: null });
|
|
80152
80088
|
function getPerWorkspaceState(workspaceId) {
|
|
80153
80089
|
return states.get(workspaceId) ?? EMPTY_STATE;
|
|
@@ -80157,19 +80093,19 @@ function setPerWorkspaceState(workspaceId, patch2) {
|
|
|
80157
80093
|
const next2 = { ...prev2, ...patch2 };
|
|
80158
80094
|
if (prev2.currentFile === next2.currentFile && prev2.openFilePath === next2.openFilePath) return;
|
|
80159
80095
|
states.set(workspaceId, next2);
|
|
80160
|
-
const set2 = listeners$
|
|
80096
|
+
const set2 = listeners$3.get(workspaceId);
|
|
80161
80097
|
if (set2) for (const cb of set2) cb();
|
|
80162
80098
|
}
|
|
80163
80099
|
function subscribePerWorkspaceState(workspaceId, cb) {
|
|
80164
|
-
let set2 = listeners$
|
|
80100
|
+
let set2 = listeners$3.get(workspaceId);
|
|
80165
80101
|
if (!set2) {
|
|
80166
80102
|
set2 = /* @__PURE__ */ new Set();
|
|
80167
|
-
listeners$
|
|
80103
|
+
listeners$3.set(workspaceId, set2);
|
|
80168
80104
|
}
|
|
80169
80105
|
set2.add(cb);
|
|
80170
80106
|
return () => {
|
|
80171
80107
|
set2?.delete(cb);
|
|
80172
|
-
if (set2 && set2.size === 0) listeners$
|
|
80108
|
+
if (set2 && set2.size === 0) listeners$3.delete(workspaceId);
|
|
80173
80109
|
};
|
|
80174
80110
|
}
|
|
80175
80111
|
function clearPerWorkspaceState(workspaceId) {
|
|
@@ -96344,10 +96280,11 @@ function createTerminalOutputQueue(write2) {
|
|
|
96344
96280
|
flush() {
|
|
96345
96281
|
if (state2.overflowed) return false;
|
|
96346
96282
|
if (!pending$1.delete(state2)) return true;
|
|
96347
|
-
|
|
96348
|
-
state2.chunks
|
|
96349
|
-
|
|
96350
|
-
|
|
96283
|
+
while (canWriteForeground(state2)) writeForeground(state2);
|
|
96284
|
+
if (state2.chunks.length > 0) {
|
|
96285
|
+
foregroundPending.add(state2);
|
|
96286
|
+
scheduleForegroundDrain();
|
|
96287
|
+
}
|
|
96351
96288
|
return true;
|
|
96352
96289
|
},
|
|
96353
96290
|
clear() {
|
|
@@ -96989,6 +96926,12 @@ function createEntry(terminalId, opts) {
|
|
|
96989
96926
|
term.unicode.activeVersion = "11";
|
|
96990
96927
|
const fit = new XFitAddon();
|
|
96991
96928
|
term.loadAddon(fit);
|
|
96929
|
+
let lastFitBox = null;
|
|
96930
|
+
const fitToBox = () => {
|
|
96931
|
+
fit.fit();
|
|
96932
|
+
lastFitBox = liveContainer ? { width: liveContainer.clientWidth, height: liveContainer.clientHeight } : null;
|
|
96933
|
+
};
|
|
96934
|
+
const boxResizedSinceFit = () => !lastFitBox || !liveContainer || liveContainer.clientWidth !== lastFitBox.width || liveContainer.clientHeight !== lastFitBox.height;
|
|
96992
96935
|
term.loadAddon(new XWebLinksAddon((_event, uri) => openExternalUrl(uri)));
|
|
96993
96936
|
const fileLinkProviderDisposable = term.registerLinkProvider(
|
|
96994
96937
|
createTerminalFileLinkProvider(term, (filename) => {
|
|
@@ -97406,7 +97349,7 @@ function createEntry(terminalId, opts) {
|
|
|
97406
97349
|
};
|
|
97407
97350
|
const fittedDims = () => {
|
|
97408
97351
|
if (!attached || !hostIsVisible()) return null;
|
|
97409
|
-
|
|
97352
|
+
fitToBox();
|
|
97410
97353
|
if (term.cols <= 0 || term.rows <= 0) return null;
|
|
97411
97354
|
return { cols: term.cols, rows: term.rows };
|
|
97412
97355
|
};
|
|
@@ -97430,7 +97373,7 @@ function createEntry(terminalId, opts) {
|
|
|
97430
97373
|
reconcileRafId = requestAnimationFrame(() => {
|
|
97431
97374
|
reconcileRafId = null;
|
|
97432
97375
|
if (!attached || !hostIsVisible()) return;
|
|
97433
|
-
|
|
97376
|
+
fitToBox();
|
|
97434
97377
|
sendPtyResize();
|
|
97435
97378
|
});
|
|
97436
97379
|
};
|
|
@@ -97454,7 +97397,7 @@ function createEntry(terminalId, opts) {
|
|
|
97454
97397
|
webglAddon = null;
|
|
97455
97398
|
attachWebGL();
|
|
97456
97399
|
}
|
|
97457
|
-
|
|
97400
|
+
fitToBox();
|
|
97458
97401
|
};
|
|
97459
97402
|
const handleDprChange = () => {
|
|
97460
97403
|
const currentDpr = window.devicePixelRatio;
|
|
@@ -97473,7 +97416,8 @@ function createEntry(terminalId, opts) {
|
|
|
97473
97416
|
}
|
|
97474
97417
|
if (awaitingReplay) return;
|
|
97475
97418
|
const dprChanged = handleDprChange();
|
|
97476
|
-
if (!dprChanged
|
|
97419
|
+
if (!dprChanged && !boxResizedSinceFit()) return;
|
|
97420
|
+
if (!dprChanged) fitToBox();
|
|
97477
97421
|
sendPtyResize();
|
|
97478
97422
|
});
|
|
97479
97423
|
resizeObserver.observe(wrapper);
|
|
@@ -97499,12 +97443,13 @@ function createEntry(terminalId, opts) {
|
|
|
97499
97443
|
if (!attached || !hostIsVisible()) return;
|
|
97500
97444
|
const dprChanged = handleDprChange();
|
|
97501
97445
|
if (!dprChanged) {
|
|
97502
|
-
|
|
97446
|
+
const rebuild = webglSuspect && useWebGL;
|
|
97447
|
+
if (rebuild) {
|
|
97503
97448
|
webglAddon?.dispose();
|
|
97504
97449
|
webglAddon = null;
|
|
97505
97450
|
attachWebGL();
|
|
97506
97451
|
}
|
|
97507
|
-
|
|
97452
|
+
if (webglSuspect || boxResizedSinceFit()) fitToBox();
|
|
97508
97453
|
}
|
|
97509
97454
|
webglSuspect = false;
|
|
97510
97455
|
if (term.rows > 0) term.refresh(0, term.rows - 1);
|
|
@@ -97582,7 +97527,15 @@ function createEntry(terminalId, opts) {
|
|
|
97582
97527
|
scheduleParkingPass();
|
|
97583
97528
|
if (attachOpts?.autoFocus) autoFocusPending = true;
|
|
97584
97529
|
if (wrapper.parentElement !== container) container.appendChild(wrapper);
|
|
97585
|
-
|
|
97530
|
+
if (hostIsVisible()) {
|
|
97531
|
+
if (repairRafId !== null) {
|
|
97532
|
+
cancelAnimationFrame(repairRafId);
|
|
97533
|
+
repairRafId = null;
|
|
97534
|
+
}
|
|
97535
|
+
repairAndFit();
|
|
97536
|
+
} else {
|
|
97537
|
+
scheduleRepair();
|
|
97538
|
+
}
|
|
97586
97539
|
},
|
|
97587
97540
|
detach() {
|
|
97588
97541
|
if (destroyed) return;
|
|
@@ -97818,7 +97771,7 @@ function reconcileTerminalWorkspaces(validWorkspaceIds, activeWorkspaceId) {
|
|
|
97818
97771
|
function hasTerminal(terminalId) {
|
|
97819
97772
|
return getCache().has(terminalId);
|
|
97820
97773
|
}
|
|
97821
|
-
const DEFAULT_OPTIONS = {
|
|
97774
|
+
const DEFAULT_OPTIONS$1 = {
|
|
97822
97775
|
caseSensitive: false,
|
|
97823
97776
|
wholeWord: false,
|
|
97824
97777
|
regex: false
|
|
@@ -97826,7 +97779,7 @@ const DEFAULT_OPTIONS = {
|
|
|
97826
97779
|
function useBrowserFindInPage(webview) {
|
|
97827
97780
|
const [isOpen, setIsOpen] = reactExports.useState(false);
|
|
97828
97781
|
const [query, setQuery] = reactExports.useState("");
|
|
97829
|
-
const [options, setOptions] = reactExports.useState(DEFAULT_OPTIONS);
|
|
97782
|
+
const [options, setOptions] = reactExports.useState(DEFAULT_OPTIONS$1);
|
|
97830
97783
|
const [matchInfo, setMatchInfo] = reactExports.useState(null);
|
|
97831
97784
|
const searchBarRef = reactExports.useRef(null);
|
|
97832
97785
|
const webviewRef = reactExports.useRef(webview);
|
|
@@ -98080,13 +98033,13 @@ function useBrowserPaneControls(args) {
|
|
|
98080
98033
|
};
|
|
98081
98034
|
}
|
|
98082
98035
|
let hosts = /* @__PURE__ */ new Set();
|
|
98083
|
-
const listeners$
|
|
98036
|
+
const listeners$2 = /* @__PURE__ */ new Set();
|
|
98084
98037
|
let bootstrapped = false;
|
|
98085
98038
|
function setHosts(updater) {
|
|
98086
98039
|
const next2 = updater(hosts);
|
|
98087
98040
|
if (next2 === hosts) return;
|
|
98088
98041
|
hosts = next2;
|
|
98089
|
-
for (const cb of listeners$
|
|
98042
|
+
for (const cb of listeners$2) cb();
|
|
98090
98043
|
}
|
|
98091
98044
|
function addHost(raw2) {
|
|
98092
98045
|
const h2 = raw2.toLowerCase();
|
|
@@ -98114,18 +98067,18 @@ function bootstrap() {
|
|
|
98114
98067
|
console.error("browser_get_overridden_hosts failed:", err);
|
|
98115
98068
|
});
|
|
98116
98069
|
}
|
|
98117
|
-
function subscribe(cb) {
|
|
98070
|
+
function subscribe$1(cb) {
|
|
98118
98071
|
bootstrap();
|
|
98119
|
-
listeners$
|
|
98072
|
+
listeners$2.add(cb);
|
|
98120
98073
|
return () => {
|
|
98121
|
-
listeners$
|
|
98074
|
+
listeners$2.delete(cb);
|
|
98122
98075
|
};
|
|
98123
98076
|
}
|
|
98124
98077
|
function getSnapshot() {
|
|
98125
98078
|
return hosts;
|
|
98126
98079
|
}
|
|
98127
98080
|
function useOverriddenHosts() {
|
|
98128
|
-
const currentHosts = reactExports.useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
|
|
98081
|
+
const currentHosts = reactExports.useSyncExternalStore(subscribe$1, getSnapshot, getSnapshot);
|
|
98129
98082
|
const isOverriddenHost = reactExports.useCallback(
|
|
98130
98083
|
(currentUrl) => {
|
|
98131
98084
|
if (!currentUrl) return false;
|
|
@@ -100782,7 +100735,7 @@ let powers = 0;
|
|
|
100782
100735
|
const boolean = increment();
|
|
100783
100736
|
const booleanish = increment();
|
|
100784
100737
|
const overloadedBoolean = increment();
|
|
100785
|
-
const number$
|
|
100738
|
+
const number$4 = increment();
|
|
100786
100739
|
const spaceSeparated = increment();
|
|
100787
100740
|
const commaSeparated = increment();
|
|
100788
100741
|
const commaOrSpaceSeparated = increment();
|
|
@@ -100795,7 +100748,7 @@ const types$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
|
|
|
100795
100748
|
booleanish,
|
|
100796
100749
|
commaOrSpaceSeparated,
|
|
100797
100750
|
commaSeparated,
|
|
100798
|
-
number: number$
|
|
100751
|
+
number: number$4,
|
|
100799
100752
|
overloadedBoolean,
|
|
100800
100753
|
spaceSeparated
|
|
100801
100754
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
@@ -100861,9 +100814,9 @@ const aria$1 = create$2({
|
|
|
100861
100814
|
ariaAutoComplete: null,
|
|
100862
100815
|
ariaBusy: booleanish,
|
|
100863
100816
|
ariaChecked: booleanish,
|
|
100864
|
-
ariaColCount: number$
|
|
100865
|
-
ariaColIndex: number$
|
|
100866
|
-
ariaColSpan: number$
|
|
100817
|
+
ariaColCount: number$4,
|
|
100818
|
+
ariaColIndex: number$4,
|
|
100819
|
+
ariaColSpan: number$4,
|
|
100867
100820
|
ariaControls: spaceSeparated,
|
|
100868
100821
|
ariaCurrent: null,
|
|
100869
100822
|
ariaDescribedBy: spaceSeparated,
|
|
@@ -100880,7 +100833,7 @@ const aria$1 = create$2({
|
|
|
100880
100833
|
ariaKeyShortcuts: null,
|
|
100881
100834
|
ariaLabel: null,
|
|
100882
100835
|
ariaLabelledBy: spaceSeparated,
|
|
100883
|
-
ariaLevel: number$
|
|
100836
|
+
ariaLevel: number$4,
|
|
100884
100837
|
ariaLive: null,
|
|
100885
100838
|
ariaModal: booleanish,
|
|
100886
100839
|
ariaMultiLine: booleanish,
|
|
@@ -100888,21 +100841,21 @@ const aria$1 = create$2({
|
|
|
100888
100841
|
ariaOrientation: null,
|
|
100889
100842
|
ariaOwns: spaceSeparated,
|
|
100890
100843
|
ariaPlaceholder: null,
|
|
100891
|
-
ariaPosInSet: number$
|
|
100844
|
+
ariaPosInSet: number$4,
|
|
100892
100845
|
ariaPressed: booleanish,
|
|
100893
100846
|
ariaReadOnly: booleanish,
|
|
100894
100847
|
ariaRelevant: null,
|
|
100895
100848
|
ariaRequired: booleanish,
|
|
100896
100849
|
ariaRoleDescription: spaceSeparated,
|
|
100897
|
-
ariaRowCount: number$
|
|
100898
|
-
ariaRowIndex: number$
|
|
100899
|
-
ariaRowSpan: number$
|
|
100850
|
+
ariaRowCount: number$4,
|
|
100851
|
+
ariaRowIndex: number$4,
|
|
100852
|
+
ariaRowSpan: number$4,
|
|
100900
100853
|
ariaSelected: booleanish,
|
|
100901
|
-
ariaSetSize: number$
|
|
100854
|
+
ariaSetSize: number$4,
|
|
100902
100855
|
ariaSort: null,
|
|
100903
|
-
ariaValueMax: number$
|
|
100904
|
-
ariaValueMin: number$
|
|
100905
|
-
ariaValueNow: number$
|
|
100856
|
+
ariaValueMax: number$4,
|
|
100857
|
+
ariaValueMin: number$4,
|
|
100858
|
+
ariaValueNow: number$4,
|
|
100906
100859
|
ariaValueText: null,
|
|
100907
100860
|
role: null
|
|
100908
100861
|
},
|
|
@@ -100948,13 +100901,13 @@ const html$7 = create$2({
|
|
|
100948
100901
|
checked: boolean,
|
|
100949
100902
|
cite: null,
|
|
100950
100903
|
className: spaceSeparated,
|
|
100951
|
-
cols: number$
|
|
100904
|
+
cols: number$4,
|
|
100952
100905
|
colSpan: null,
|
|
100953
100906
|
content: null,
|
|
100954
100907
|
contentEditable: booleanish,
|
|
100955
100908
|
controls: boolean,
|
|
100956
100909
|
controlsList: spaceSeparated,
|
|
100957
|
-
coords: number$
|
|
100910
|
+
coords: number$4 | commaSeparated,
|
|
100958
100911
|
crossOrigin: null,
|
|
100959
100912
|
data: null,
|
|
100960
100913
|
dateTime: null,
|
|
@@ -100976,9 +100929,9 @@ const html$7 = create$2({
|
|
|
100976
100929
|
formNoValidate: boolean,
|
|
100977
100930
|
formTarget: null,
|
|
100978
100931
|
headers: spaceSeparated,
|
|
100979
|
-
height: number$
|
|
100932
|
+
height: number$4,
|
|
100980
100933
|
hidden: overloadedBoolean,
|
|
100981
|
-
high: number$
|
|
100934
|
+
high: number$4,
|
|
100982
100935
|
href: null,
|
|
100983
100936
|
hrefLang: null,
|
|
100984
100937
|
htmlFor: spaceSeparated,
|
|
@@ -101003,14 +100956,14 @@ const html$7 = create$2({
|
|
|
101003
100956
|
list: null,
|
|
101004
100957
|
loading: null,
|
|
101005
100958
|
loop: boolean,
|
|
101006
|
-
low: number$
|
|
100959
|
+
low: number$4,
|
|
101007
100960
|
manifest: null,
|
|
101008
100961
|
max: null,
|
|
101009
|
-
maxLength: number$
|
|
100962
|
+
maxLength: number$4,
|
|
101010
100963
|
media: null,
|
|
101011
100964
|
method: null,
|
|
101012
100965
|
min: null,
|
|
101013
|
-
minLength: number$
|
|
100966
|
+
minLength: number$4,
|
|
101014
100967
|
multiple: boolean,
|
|
101015
100968
|
muted: boolean,
|
|
101016
100969
|
name: null,
|
|
@@ -101106,7 +101059,7 @@ const html$7 = create$2({
|
|
|
101106
101059
|
onWaiting: null,
|
|
101107
101060
|
onWheel: null,
|
|
101108
101061
|
open: boolean,
|
|
101109
|
-
optimum: number$
|
|
101062
|
+
optimum: number$4,
|
|
101110
101063
|
pattern: null,
|
|
101111
101064
|
ping: spaceSeparated,
|
|
101112
101065
|
placeholder: null,
|
|
@@ -101121,8 +101074,8 @@ const html$7 = create$2({
|
|
|
101121
101074
|
rel: spaceSeparated,
|
|
101122
101075
|
required: boolean,
|
|
101123
101076
|
reversed: boolean,
|
|
101124
|
-
rows: number$
|
|
101125
|
-
rowSpan: number$
|
|
101077
|
+
rows: number$4,
|
|
101078
|
+
rowSpan: number$4,
|
|
101126
101079
|
sandbox: spaceSeparated,
|
|
101127
101080
|
scope: null,
|
|
101128
101081
|
scoped: boolean,
|
|
@@ -101132,19 +101085,19 @@ const html$7 = create$2({
|
|
|
101132
101085
|
shadowRootDelegatesFocus: boolean,
|
|
101133
101086
|
shadowRootMode: null,
|
|
101134
101087
|
shape: null,
|
|
101135
|
-
size: number$
|
|
101088
|
+
size: number$4,
|
|
101136
101089
|
sizes: null,
|
|
101137
101090
|
slot: null,
|
|
101138
|
-
span: number$
|
|
101091
|
+
span: number$4,
|
|
101139
101092
|
spellCheck: booleanish,
|
|
101140
101093
|
src: null,
|
|
101141
101094
|
srcDoc: null,
|
|
101142
101095
|
srcLang: null,
|
|
101143
101096
|
srcSet: null,
|
|
101144
|
-
start: number$
|
|
101097
|
+
start: number$4,
|
|
101145
101098
|
step: null,
|
|
101146
101099
|
style: null,
|
|
101147
|
-
tabIndex: number$
|
|
101100
|
+
tabIndex: number$4,
|
|
101148
101101
|
target: null,
|
|
101149
101102
|
title: null,
|
|
101150
101103
|
translate: null,
|
|
@@ -101152,7 +101105,7 @@ const html$7 = create$2({
|
|
|
101152
101105
|
typeMustMatch: boolean,
|
|
101153
101106
|
useMap: null,
|
|
101154
101107
|
value: booleanish,
|
|
101155
|
-
width: number$
|
|
101108
|
+
width: number$4,
|
|
101156
101109
|
wrap: null,
|
|
101157
101110
|
writingSuggestions: null,
|
|
101158
101111
|
// Legacy.
|
|
@@ -101169,11 +101122,11 @@ const html$7 = create$2({
|
|
|
101169
101122
|
// `<body>`. Use CSS `background-image` instead
|
|
101170
101123
|
bgColor: null,
|
|
101171
101124
|
// `<body>` and table elements. Use CSS `background-color` instead
|
|
101172
|
-
border: number$
|
|
101125
|
+
border: number$4,
|
|
101173
101126
|
// `<table>`. Use CSS `border-width` instead,
|
|
101174
101127
|
borderColor: null,
|
|
101175
101128
|
// `<table>`. Use CSS `border-color` instead,
|
|
101176
|
-
bottomMargin: number$
|
|
101129
|
+
bottomMargin: number$4,
|
|
101177
101130
|
// `<body>`
|
|
101178
101131
|
cellPadding: null,
|
|
101179
101132
|
// `<table>`
|
|
@@ -101207,9 +101160,9 @@ const html$7 = create$2({
|
|
|
101207
101160
|
// `<table>`
|
|
101208
101161
|
frameBorder: null,
|
|
101209
101162
|
// `<iframe>`. Use CSS `border` instead
|
|
101210
|
-
hSpace: number$
|
|
101163
|
+
hSpace: number$4,
|
|
101211
101164
|
// `<img>` and `<object>`
|
|
101212
|
-
leftMargin: number$
|
|
101165
|
+
leftMargin: number$4,
|
|
101213
101166
|
// `<body>`
|
|
101214
101167
|
link: null,
|
|
101215
101168
|
// `<body>`. Use CSS `a:link {color: *}` instead
|
|
@@ -101217,9 +101170,9 @@ const html$7 = create$2({
|
|
|
101217
101170
|
// `<frame>`, `<iframe>`, and `<img>`. Use an `<a>`
|
|
101218
101171
|
lowSrc: null,
|
|
101219
101172
|
// `<img>`. Use a `<picture>`
|
|
101220
|
-
marginHeight: number$
|
|
101173
|
+
marginHeight: number$4,
|
|
101221
101174
|
// `<body>`
|
|
101222
|
-
marginWidth: number$
|
|
101175
|
+
marginWidth: number$4,
|
|
101223
101176
|
// `<body>`
|
|
101224
101177
|
noResize: boolean,
|
|
101225
101178
|
// `<frame>`
|
|
@@ -101237,7 +101190,7 @@ const html$7 = create$2({
|
|
|
101237
101190
|
// `<isindex>`
|
|
101238
101191
|
rev: null,
|
|
101239
101192
|
// `<link>`
|
|
101240
|
-
rightMargin: number$
|
|
101193
|
+
rightMargin: number$4,
|
|
101241
101194
|
// `<body>`
|
|
101242
101195
|
rules: null,
|
|
101243
101196
|
// `<table>`
|
|
@@ -101251,7 +101204,7 @@ const html$7 = create$2({
|
|
|
101251
101204
|
// `<table>`
|
|
101252
101205
|
text: null,
|
|
101253
101206
|
// `<body>`. Use CSS `color` instead
|
|
101254
|
-
topMargin: number$
|
|
101207
|
+
topMargin: number$4,
|
|
101255
101208
|
// `<body>`
|
|
101256
101209
|
valueType: null,
|
|
101257
101210
|
// `<param>`
|
|
@@ -101261,7 +101214,7 @@ const html$7 = create$2({
|
|
|
101261
101214
|
// Several. Use CSS `vertical-align` instead
|
|
101262
101215
|
vLink: null,
|
|
101263
101216
|
// `<body>`. Use CSS `a:visited {color}` instead
|
|
101264
|
-
vSpace: number$
|
|
101217
|
+
vSpace: number$4,
|
|
101265
101218
|
// `<img>` and `<object>`
|
|
101266
101219
|
// Non-standard Properties.
|
|
101267
101220
|
allowTransparency: null,
|
|
@@ -101271,7 +101224,7 @@ const html$7 = create$2({
|
|
|
101271
101224
|
disableRemotePlayback: boolean,
|
|
101272
101225
|
prefix: null,
|
|
101273
101226
|
property: null,
|
|
101274
|
-
results: number$
|
|
101227
|
+
results: number$4,
|
|
101275
101228
|
security: null,
|
|
101276
101229
|
unselectable: null
|
|
101277
101230
|
},
|
|
@@ -101456,27 +101409,27 @@ const svg$3 = create$2({
|
|
|
101456
101409
|
},
|
|
101457
101410
|
properties: {
|
|
101458
101411
|
about: commaOrSpaceSeparated,
|
|
101459
|
-
accentHeight: number$
|
|
101412
|
+
accentHeight: number$4,
|
|
101460
101413
|
accumulate: null,
|
|
101461
101414
|
additive: null,
|
|
101462
101415
|
alignmentBaseline: null,
|
|
101463
|
-
alphabetic: number$
|
|
101464
|
-
amplitude: number$
|
|
101416
|
+
alphabetic: number$4,
|
|
101417
|
+
amplitude: number$4,
|
|
101465
101418
|
arabicForm: null,
|
|
101466
|
-
ascent: number$
|
|
101419
|
+
ascent: number$4,
|
|
101467
101420
|
attributeName: null,
|
|
101468
101421
|
attributeType: null,
|
|
101469
|
-
azimuth: number$
|
|
101422
|
+
azimuth: number$4,
|
|
101470
101423
|
bandwidth: null,
|
|
101471
101424
|
baselineShift: null,
|
|
101472
101425
|
baseFrequency: null,
|
|
101473
101426
|
baseProfile: null,
|
|
101474
101427
|
bbox: null,
|
|
101475
101428
|
begin: null,
|
|
101476
|
-
bias: number$
|
|
101429
|
+
bias: number$4,
|
|
101477
101430
|
by: null,
|
|
101478
101431
|
calcMode: null,
|
|
101479
|
-
capHeight: number$
|
|
101432
|
+
capHeight: number$4,
|
|
101480
101433
|
className: spaceSeparated,
|
|
101481
101434
|
clip: null,
|
|
101482
101435
|
clipPath: null,
|
|
@@ -101497,26 +101450,26 @@ const svg$3 = create$2({
|
|
|
101497
101450
|
d: null,
|
|
101498
101451
|
dataType: null,
|
|
101499
101452
|
defaultAction: null,
|
|
101500
|
-
descent: number$
|
|
101501
|
-
diffuseConstant: number$
|
|
101453
|
+
descent: number$4,
|
|
101454
|
+
diffuseConstant: number$4,
|
|
101502
101455
|
direction: null,
|
|
101503
101456
|
display: null,
|
|
101504
101457
|
dur: null,
|
|
101505
|
-
divisor: number$
|
|
101458
|
+
divisor: number$4,
|
|
101506
101459
|
dominantBaseline: null,
|
|
101507
101460
|
download: boolean,
|
|
101508
101461
|
dx: null,
|
|
101509
101462
|
dy: null,
|
|
101510
101463
|
edgeMode: null,
|
|
101511
101464
|
editable: null,
|
|
101512
|
-
elevation: number$
|
|
101465
|
+
elevation: number$4,
|
|
101513
101466
|
enableBackground: null,
|
|
101514
101467
|
end: null,
|
|
101515
101468
|
event: null,
|
|
101516
|
-
exponent: number$
|
|
101469
|
+
exponent: number$4,
|
|
101517
101470
|
externalResourcesRequired: null,
|
|
101518
101471
|
fill: null,
|
|
101519
|
-
fillOpacity: number$
|
|
101472
|
+
fillOpacity: number$4,
|
|
101520
101473
|
fillRule: null,
|
|
101521
101474
|
filter: null,
|
|
101522
101475
|
filterRes: null,
|
|
@@ -101546,27 +101499,27 @@ const svg$3 = create$2({
|
|
|
101546
101499
|
gradientTransform: null,
|
|
101547
101500
|
gradientUnits: null,
|
|
101548
101501
|
handler: null,
|
|
101549
|
-
hanging: number$
|
|
101502
|
+
hanging: number$4,
|
|
101550
101503
|
hatchContentUnits: null,
|
|
101551
101504
|
hatchUnits: null,
|
|
101552
101505
|
height: null,
|
|
101553
101506
|
href: null,
|
|
101554
101507
|
hrefLang: null,
|
|
101555
|
-
horizAdvX: number$
|
|
101556
|
-
horizOriginX: number$
|
|
101557
|
-
horizOriginY: number$
|
|
101508
|
+
horizAdvX: number$4,
|
|
101509
|
+
horizOriginX: number$4,
|
|
101510
|
+
horizOriginY: number$4,
|
|
101558
101511
|
id: null,
|
|
101559
|
-
ideographic: number$
|
|
101512
|
+
ideographic: number$4,
|
|
101560
101513
|
imageRendering: null,
|
|
101561
101514
|
initialVisibility: null,
|
|
101562
101515
|
in: null,
|
|
101563
101516
|
in2: null,
|
|
101564
|
-
intercept: number$
|
|
101565
|
-
k: number$
|
|
101566
|
-
k1: number$
|
|
101567
|
-
k2: number$
|
|
101568
|
-
k3: number$
|
|
101569
|
-
k4: number$
|
|
101517
|
+
intercept: number$4,
|
|
101518
|
+
k: number$4,
|
|
101519
|
+
k1: number$4,
|
|
101520
|
+
k2: number$4,
|
|
101521
|
+
k3: number$4,
|
|
101522
|
+
k4: number$4,
|
|
101570
101523
|
kernelMatrix: commaOrSpaceSeparated,
|
|
101571
101524
|
kernelUnitLength: null,
|
|
101572
101525
|
keyPoints: null,
|
|
@@ -101580,7 +101533,7 @@ const svg$3 = create$2({
|
|
|
101580
101533
|
lengthAdjust: null,
|
|
101581
101534
|
letterSpacing: null,
|
|
101582
101535
|
lightingColor: null,
|
|
101583
|
-
limitingConeAngle: number$
|
|
101536
|
+
limitingConeAngle: number$4,
|
|
101584
101537
|
local: null,
|
|
101585
101538
|
markerEnd: null,
|
|
101586
101539
|
markerMid: null,
|
|
@@ -101596,7 +101549,7 @@ const svg$3 = create$2({
|
|
|
101596
101549
|
media: null,
|
|
101597
101550
|
mediaCharacterEncoding: null,
|
|
101598
101551
|
mediaContentEncodings: null,
|
|
101599
|
-
mediaSize: number$
|
|
101552
|
+
mediaSize: number$4,
|
|
101600
101553
|
mediaTime: null,
|
|
101601
101554
|
method: null,
|
|
101602
101555
|
min: null,
|
|
@@ -101702,12 +101655,12 @@ const svg$3 = create$2({
|
|
|
101702
101655
|
origin: null,
|
|
101703
101656
|
overflow: null,
|
|
101704
101657
|
overlay: null,
|
|
101705
|
-
overlinePosition: number$
|
|
101706
|
-
overlineThickness: number$
|
|
101658
|
+
overlinePosition: number$4,
|
|
101659
|
+
overlineThickness: number$4,
|
|
101707
101660
|
paintOrder: null,
|
|
101708
101661
|
panose1: null,
|
|
101709
101662
|
path: null,
|
|
101710
|
-
pathLength: number$
|
|
101663
|
+
pathLength: number$4,
|
|
101711
101664
|
patternContentUnits: null,
|
|
101712
101665
|
patternTransform: null,
|
|
101713
101666
|
patternUnits: null,
|
|
@@ -101717,9 +101670,9 @@ const svg$3 = create$2({
|
|
|
101717
101670
|
playbackOrder: null,
|
|
101718
101671
|
pointerEvents: null,
|
|
101719
101672
|
points: null,
|
|
101720
|
-
pointsAtX: number$
|
|
101721
|
-
pointsAtY: number$
|
|
101722
|
-
pointsAtZ: number$
|
|
101673
|
+
pointsAtX: number$4,
|
|
101674
|
+
pointsAtY: number$4,
|
|
101675
|
+
pointsAtZ: number$4,
|
|
101723
101676
|
preserveAlpha: null,
|
|
101724
101677
|
preserveAspectRatio: null,
|
|
101725
101678
|
primitiveUnits: null,
|
|
@@ -101751,8 +101704,8 @@ const svg$3 = create$2({
|
|
|
101751
101704
|
side: null,
|
|
101752
101705
|
slope: null,
|
|
101753
101706
|
snapshotTime: null,
|
|
101754
|
-
specularConstant: number$
|
|
101755
|
-
specularExponent: number$
|
|
101707
|
+
specularConstant: number$4,
|
|
101708
|
+
specularExponent: number$4,
|
|
101756
101709
|
spreadMethod: null,
|
|
101757
101710
|
spacing: null,
|
|
101758
101711
|
startOffset: null,
|
|
@@ -101762,30 +101715,30 @@ const svg$3 = create$2({
|
|
|
101762
101715
|
stitchTiles: null,
|
|
101763
101716
|
stopColor: null,
|
|
101764
101717
|
stopOpacity: null,
|
|
101765
|
-
strikethroughPosition: number$
|
|
101766
|
-
strikethroughThickness: number$
|
|
101718
|
+
strikethroughPosition: number$4,
|
|
101719
|
+
strikethroughThickness: number$4,
|
|
101767
101720
|
string: null,
|
|
101768
101721
|
stroke: null,
|
|
101769
101722
|
strokeDashArray: commaOrSpaceSeparated,
|
|
101770
101723
|
strokeDashOffset: null,
|
|
101771
101724
|
strokeLineCap: null,
|
|
101772
101725
|
strokeLineJoin: null,
|
|
101773
|
-
strokeMiterLimit: number$
|
|
101774
|
-
strokeOpacity: number$
|
|
101726
|
+
strokeMiterLimit: number$4,
|
|
101727
|
+
strokeOpacity: number$4,
|
|
101775
101728
|
strokeWidth: null,
|
|
101776
101729
|
style: null,
|
|
101777
|
-
surfaceScale: number$
|
|
101730
|
+
surfaceScale: number$4,
|
|
101778
101731
|
syncBehavior: null,
|
|
101779
101732
|
syncBehaviorDefault: null,
|
|
101780
101733
|
syncMaster: null,
|
|
101781
101734
|
syncTolerance: null,
|
|
101782
101735
|
syncToleranceDefault: null,
|
|
101783
101736
|
systemLanguage: commaOrSpaceSeparated,
|
|
101784
|
-
tabIndex: number$
|
|
101737
|
+
tabIndex: number$4,
|
|
101785
101738
|
tableValues: null,
|
|
101786
101739
|
target: null,
|
|
101787
|
-
targetX: number$
|
|
101788
|
-
targetY: number$
|
|
101740
|
+
targetX: number$4,
|
|
101741
|
+
targetY: number$4,
|
|
101789
101742
|
textAnchor: null,
|
|
101790
101743
|
textDecoration: null,
|
|
101791
101744
|
textRendering: null,
|
|
@@ -101800,22 +101753,22 @@ const svg$3 = create$2({
|
|
|
101800
101753
|
transformOrigin: null,
|
|
101801
101754
|
u1: null,
|
|
101802
101755
|
u2: null,
|
|
101803
|
-
underlinePosition: number$
|
|
101804
|
-
underlineThickness: number$
|
|
101756
|
+
underlinePosition: number$4,
|
|
101757
|
+
underlineThickness: number$4,
|
|
101805
101758
|
unicode: null,
|
|
101806
101759
|
unicodeBidi: null,
|
|
101807
101760
|
unicodeRange: null,
|
|
101808
|
-
unitsPerEm: number$
|
|
101761
|
+
unitsPerEm: number$4,
|
|
101809
101762
|
values: null,
|
|
101810
|
-
vAlphabetic: number$
|
|
101811
|
-
vMathematical: number$
|
|
101763
|
+
vAlphabetic: number$4,
|
|
101764
|
+
vMathematical: number$4,
|
|
101812
101765
|
vectorEffect: null,
|
|
101813
|
-
vHanging: number$
|
|
101814
|
-
vIdeographic: number$
|
|
101766
|
+
vHanging: number$4,
|
|
101767
|
+
vIdeographic: number$4,
|
|
101815
101768
|
version: null,
|
|
101816
|
-
vertAdvY: number$
|
|
101817
|
-
vertOriginX: number$
|
|
101818
|
-
vertOriginY: number$
|
|
101769
|
+
vertAdvY: number$4,
|
|
101770
|
+
vertOriginX: number$4,
|
|
101771
|
+
vertOriginY: number$4,
|
|
101819
101772
|
viewBox: null,
|
|
101820
101773
|
viewTarget: null,
|
|
101821
101774
|
visibility: null,
|
|
@@ -101827,7 +101780,7 @@ const svg$3 = create$2({
|
|
|
101827
101780
|
x1: null,
|
|
101828
101781
|
x2: null,
|
|
101829
101782
|
xChannelSelector: null,
|
|
101830
|
-
xHeight: number$
|
|
101783
|
+
xHeight: number$4,
|
|
101831
101784
|
y: null,
|
|
101832
101785
|
y1: null,
|
|
101833
101786
|
y2: null,
|
|
@@ -102031,13 +101984,13 @@ function isChild(value) {
|
|
|
102031
101984
|
return true;
|
|
102032
101985
|
}
|
|
102033
101986
|
if (typeof value.type !== "string") return false;
|
|
102034
|
-
const
|
|
101987
|
+
const record2 = (
|
|
102035
101988
|
/** @type {Record<string, unknown>} */
|
|
102036
101989
|
value
|
|
102037
101990
|
);
|
|
102038
101991
|
const keys2 = Object.keys(value);
|
|
102039
101992
|
for (const key2 of keys2) {
|
|
102040
|
-
const value2 =
|
|
101993
|
+
const value2 = record2[key2];
|
|
102041
101994
|
if (value2 && typeof value2 === "object") {
|
|
102042
101995
|
if (!Array.isArray(value2)) return true;
|
|
102043
101996
|
const list2 = (
|
|
@@ -111575,11 +111528,11 @@ function gfmFootnoteToMarkdown(options) {
|
|
|
111575
111528
|
return value;
|
|
111576
111529
|
}
|
|
111577
111530
|
}
|
|
111578
|
-
function mapExceptFirst(line2, index2,
|
|
111579
|
-
return index2 === 0 ? line2 : mapAll(line2, index2,
|
|
111531
|
+
function mapExceptFirst(line2, index2, blank2) {
|
|
111532
|
+
return index2 === 0 ? line2 : mapAll(line2, index2, blank2);
|
|
111580
111533
|
}
|
|
111581
|
-
function mapAll(line2, index2,
|
|
111582
|
-
return (
|
|
111534
|
+
function mapAll(line2, index2, blank2) {
|
|
111535
|
+
return (blank2 ? "" : " ") + line2;
|
|
111583
111536
|
}
|
|
111584
111537
|
const constructsWithoutStrikethrough = [
|
|
111585
111538
|
"autolink",
|
|
@@ -111782,8 +111735,8 @@ function blockquote$1(node2, _2, state2, info2) {
|
|
|
111782
111735
|
exit2();
|
|
111783
111736
|
return value;
|
|
111784
111737
|
}
|
|
111785
|
-
function map$3(line2, _2,
|
|
111786
|
-
return ">" + (
|
|
111738
|
+
function map$3(line2, _2, blank2) {
|
|
111739
|
+
return ">" + (blank2 ? "" : " ") + line2;
|
|
111787
111740
|
}
|
|
111788
111741
|
function patternInScope(stack, pattern) {
|
|
111789
111742
|
return listInScope(stack, pattern.inConstruct, true) && !listInScope(stack, pattern.notInConstruct, false);
|
|
@@ -111898,8 +111851,8 @@ function code$2(node2, _2, state2, info2) {
|
|
|
111898
111851
|
exit2();
|
|
111899
111852
|
return value;
|
|
111900
111853
|
}
|
|
111901
|
-
function map$2(line2, _2,
|
|
111902
|
-
return (
|
|
111854
|
+
function map$2(line2, _2, blank2) {
|
|
111855
|
+
return (blank2 ? "" : " ") + line2;
|
|
111903
111856
|
}
|
|
111904
111857
|
function checkQuote(state2) {
|
|
111905
111858
|
const marker = state2.options.quote || '"';
|
|
@@ -112517,11 +112470,11 @@ function listItem$1(node2, parent, state2, info2) {
|
|
|
112517
112470
|
);
|
|
112518
112471
|
exit2();
|
|
112519
112472
|
return value;
|
|
112520
|
-
function map2(line2, index2,
|
|
112473
|
+
function map2(line2, index2, blank2) {
|
|
112521
112474
|
if (index2) {
|
|
112522
|
-
return (
|
|
112475
|
+
return (blank2 ? "" : " ".repeat(size2)) + line2;
|
|
112523
112476
|
}
|
|
112524
|
-
return (
|
|
112477
|
+
return (blank2 ? bullet2 : bullet2 + " ".repeat(size2 - bullet2.length)) + line2;
|
|
112525
112478
|
}
|
|
112526
112479
|
}
|
|
112527
112480
|
function paragraph$1(node2, _2, state2, info2) {
|
|
@@ -125442,7 +125395,7 @@ var tn = f$5("block", "before:content-[counter(line)]", "before:inline-block", "
|
|
|
125442
125395
|
var et$1 = ({ className: e3, language: t2, style: o3, isIncomplete: n2, ...s2 }) => jsxRuntimeExports.jsx("div", { className: f$5("my-4 flex w-full flex-col gap-2 rounded-xl border border-border bg-sidebar p-2", e3), "data-incomplete": n2 || void 0, "data-language": t2, "data-streamdown": "code-block", style: { contentVisibility: "auto", containIntrinsicSize: "auto 200px", ...o3 }, ...s2 });
|
|
125443
125396
|
var Se$1 = reactExports.createContext({ code: "" }), de$2 = () => reactExports.useContext(Se$1);
|
|
125444
125397
|
var ot$1 = ({ language: e3 }) => jsxRuntimeExports.jsx("div", { className: "flex h-8 items-center text-muted-foreground text-xs", "data-language": e3, "data-streamdown": "code-block-header", children: jsxRuntimeExports.jsx("span", { className: "ml-1 font-mono lowercase", children: e3 }) });
|
|
125445
|
-
var cn = /\n+$/, dn = reactExports.lazy(() => import("./highlighted-body-B3W2YXNL-
|
|
125398
|
+
var cn = /\n+$/, dn = reactExports.lazy(() => import("./highlighted-body-B3W2YXNL-BpysDJ-x.js").then((e3) => ({ default: e3.HighlightedCodeBlockBody }))), rt = ({ code: e3, language: t2, className: o3, children: n2, isIncomplete: s2 = false, ...r2 }) => {
|
|
125446
125399
|
let i2 = reactExports.useMemo(() => e3.replace(cn, ""), [e3]), c2 = reactExports.useMemo(() => ({ bg: "transparent", fg: "inherit", tokens: i2.split(`
|
|
125447
125400
|
`).map((a2) => [{ content: a2, color: "inherit", bgColor: "transparent", htmlStyle: {}, offset: 0 }]) }), [i2]);
|
|
125448
125401
|
return jsxRuntimeExports.jsx(Se$1.Provider, { value: { code: e3 }, children: jsxRuntimeExports.jsxs(et$1, { isIncomplete: s2, language: t2, children: [jsxRuntimeExports.jsx(ot$1, { language: t2 }), n2 ? jsxRuntimeExports.jsx("div", { className: "pointer-events-none sticky top-2 z-10 -mt-10 flex h-8 items-center justify-end", children: jsxRuntimeExports.jsx("div", { className: "pointer-events-auto flex shrink-0 items-center gap-2 rounded-md border border-sidebar bg-sidebar/80 px-1.5 py-1 supports-[backdrop-filter]:bg-sidebar/70 supports-[backdrop-filter]:backdrop-blur", "data-streamdown": "code-block-actions", children: n2 }) }) : null, jsxRuntimeExports.jsx(reactExports.Suspense, { fallback: jsxRuntimeExports.jsx(Qe$1, { className: o3, language: t2, result: c2, ...r2 }), children: jsxRuntimeExports.jsx(dn, { className: o3, code: i2, language: t2, raw: c2, ...r2 }) })] }) });
|
|
@@ -125764,7 +125717,7 @@ var Dt = ({ children: e3, className: t2, onDownload: o3, onError: n2 }) => {
|
|
|
125764
125717
|
}, []), jsxRuntimeExports.jsxs("div", { className: "relative", ref: i2, children: [jsxRuntimeExports.jsx("button", { className: f$5("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50", t2), disabled: c2, onClick: () => r2(!s2), title: "Download table", type: "button", children: e3 != null ? e3 : jsxRuntimeExports.jsx(Z$2, { size: 14 }) }), s2 ? jsxRuntimeExports.jsxs("div", { className: "absolute top-full right-0 z-10 mt-1 min-w-[120px] overflow-hidden rounded-md border border-border bg-background shadow-lg", children: [jsxRuntimeExports.jsx("button", { className: "w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40", onClick: () => a2("csv"), title: "Download table as CSV", type: "button", children: "CSV" }), jsxRuntimeExports.jsx("button", { className: "w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40", onClick: () => a2("markdown"), title: "Download table as Markdown", type: "button", children: "Markdown" })] }) : null] });
|
|
125765
125718
|
};
|
|
125766
125719
|
var Vt = ({ children: e3, className: t2, showControls: o3, ...n2 }) => jsxRuntimeExports.jsxs("div", { className: "my-4 flex flex-col gap-2 rounded-lg border border-border bg-sidebar p-2", "data-streamdown": "table-wrapper", children: [o3 ? jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-end gap-1", children: [jsxRuntimeExports.jsx(Ht, {}), jsxRuntimeExports.jsx(Dt, {})] }) : null, jsxRuntimeExports.jsx("div", { className: "border-collapse overflow-x-auto overscroll-y-auto rounded-md border border-border bg-background", children: jsxRuntimeExports.jsx("table", { className: f$5("w-full divide-y divide-border", t2), "data-streamdown": "table", ...n2, children: e3 }) })] });
|
|
125767
|
-
var Jn = reactExports.lazy(() => import("./mermaid-3ZIDBTTL-
|
|
125720
|
+
var Jn = reactExports.lazy(() => import("./mermaid-3ZIDBTTL-ChndXjXw.js").then((e3) => ({ default: e3.Mermaid }))), Kn = /language-([^\s]+)/;
|
|
125768
125721
|
function ke$1(e3, t2) {
|
|
125769
125722
|
if (!(e3 != null && e3.position || t2 != null && t2.position)) return true;
|
|
125770
125723
|
if (!(e3 != null && e3.position && (t2 != null && t2.position))) return false;
|
|
@@ -126566,16 +126519,12 @@ ${fence}
|
|
|
126566
126519
|
window.addEventListener("band:chat-insert", handler);
|
|
126567
126520
|
return () => window.removeEventListener("band:chat-insert", handler);
|
|
126568
126521
|
}, []);
|
|
126569
|
-
return /* @__PURE__ */ jsxRuntimeExports.
|
|
126522
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126570
126523
|
"form",
|
|
126571
126524
|
{
|
|
126572
126525
|
autoComplete: "off",
|
|
126573
126526
|
"data-testid": "prompt-input__form",
|
|
126574
|
-
className: cn$2(
|
|
126575
|
-
"relative flex w-full flex-col rounded-md border-2 border-white/20 bg-muted/50 p-2 shadow-sm",
|
|
126576
|
-
isDragging && "border-primary/50 bg-primary/5",
|
|
126577
|
-
className
|
|
126578
|
-
),
|
|
126527
|
+
className: cn$2("relative flex w-full flex-col gap-1", className),
|
|
126579
126528
|
onSubmit: handleSubmit,
|
|
126580
126529
|
onDragOver: handleDragOver,
|
|
126581
126530
|
onDragLeave: handleDragLeave,
|
|
@@ -126583,31 +126532,35 @@ ${fence}
|
|
|
126583
126532
|
onPaste: handlePaste,
|
|
126584
126533
|
ref: formRef,
|
|
126585
126534
|
...props,
|
|
126586
|
-
children:
|
|
126587
|
-
|
|
126588
|
-
|
|
126589
|
-
|
|
126590
|
-
|
|
126591
|
-
|
|
126592
|
-
|
|
126593
|
-
|
|
126594
|
-
|
|
126595
|
-
|
|
126596
|
-
|
|
126597
|
-
|
|
126598
|
-
|
|
126599
|
-
|
|
126600
|
-
|
|
126601
|
-
|
|
126602
|
-
|
|
126603
|
-
|
|
126604
|
-
|
|
126535
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126536
|
+
PromptInputContext.Provider,
|
|
126537
|
+
{
|
|
126538
|
+
value: {
|
|
126539
|
+
addFiles,
|
|
126540
|
+
fileEntries,
|
|
126541
|
+
removeFile,
|
|
126542
|
+
isDragging,
|
|
126543
|
+
hasContent: hasText || fileEntries.length > 0,
|
|
126544
|
+
onTextChange: handleInputChange,
|
|
126545
|
+
inputValue,
|
|
126546
|
+
textareaRef,
|
|
126547
|
+
setTextareaValue,
|
|
126548
|
+
commandHint,
|
|
126549
|
+
setCommandHint
|
|
126550
|
+
},
|
|
126551
|
+
children: children2
|
|
126552
|
+
}
|
|
126553
|
+
)
|
|
126605
126554
|
}
|
|
126606
126555
|
);
|
|
126607
126556
|
};
|
|
126608
126557
|
const PromptInputContext = reactExports.createContext({
|
|
126609
126558
|
addFiles: () => {
|
|
126610
126559
|
},
|
|
126560
|
+
fileEntries: [],
|
|
126561
|
+
removeFile: () => {
|
|
126562
|
+
},
|
|
126563
|
+
isDragging: false,
|
|
126611
126564
|
hasContent: false,
|
|
126612
126565
|
onTextChange: () => {
|
|
126613
126566
|
},
|
|
@@ -126622,11 +126575,34 @@ const PromptInputContext = reactExports.createContext({
|
|
|
126622
126575
|
function usePromptInputContext() {
|
|
126623
126576
|
return reactExports.useContext(PromptInputContext);
|
|
126624
126577
|
}
|
|
126578
|
+
const PromptInputBody = ({
|
|
126579
|
+
className,
|
|
126580
|
+
children: children2,
|
|
126581
|
+
...props
|
|
126582
|
+
}) => {
|
|
126583
|
+
const { fileEntries, removeFile, isDragging } = reactExports.useContext(PromptInputContext);
|
|
126584
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
126585
|
+
"div",
|
|
126586
|
+
{
|
|
126587
|
+
"data-testid": "prompt-input__body",
|
|
126588
|
+
className: cn$2(
|
|
126589
|
+
"flex w-full flex-col rounded-lg border border-border bg-muted/50 p-1 shadow-sm transition-colors focus-within:border-foreground/30",
|
|
126590
|
+
isDragging && "border-primary/50 bg-primary/5",
|
|
126591
|
+
className
|
|
126592
|
+
),
|
|
126593
|
+
...props,
|
|
126594
|
+
children: [
|
|
126595
|
+
fileEntries.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(PromptInputFiles, { entries: fileEntries, onRemove: removeFile }),
|
|
126596
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex min-w-0 items-end gap-1", children: children2 })
|
|
126597
|
+
]
|
|
126598
|
+
}
|
|
126599
|
+
);
|
|
126600
|
+
};
|
|
126625
126601
|
function PromptInputFiles({
|
|
126626
126602
|
entries: entries2,
|
|
126627
126603
|
onRemove: onRemove2
|
|
126628
126604
|
}) {
|
|
126629
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "mb-
|
|
126605
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "mb-1 flex flex-wrap gap-2 px-1 pt-1", children: entries2.map((entry) => /* @__PURE__ */ jsxRuntimeExports.jsx(FilePreview, { file: entry.file, onRemove: () => onRemove2(entry.id) }, entry.id)) });
|
|
126630
126606
|
}
|
|
126631
126607
|
function FilePreview({ file: file2, onRemove: onRemove2 }) {
|
|
126632
126608
|
const isImage2 = file2.type.startsWith("image/");
|
|
@@ -126662,7 +126638,7 @@ function formatFileSize(bytes) {
|
|
|
126662
126638
|
const PromptInputActions = ({ className, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126663
126639
|
"div",
|
|
126664
126640
|
{
|
|
126665
|
-
className: cn$2("flex w-full min-w-0 items-center justify-between gap-1", className),
|
|
126641
|
+
className: cn$2("flex w-full min-w-0 items-center justify-between gap-1 px-0.5", className),
|
|
126666
126642
|
...props
|
|
126667
126643
|
}
|
|
126668
126644
|
);
|
|
@@ -126697,9 +126673,10 @@ const PromptInputAttach = ({ className, ...props }) => {
|
|
|
126697
126673
|
"inline-flex shrink-0 items-center justify-center rounded-md px-1.5 py-1 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",
|
|
126698
126674
|
className
|
|
126699
126675
|
),
|
|
126676
|
+
"aria-label": "Attach files",
|
|
126700
126677
|
onClick: () => fileInputRef.current?.click(),
|
|
126701
126678
|
...props,
|
|
126702
|
-
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126679
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(Plus, { className: "size-4" })
|
|
126703
126680
|
}
|
|
126704
126681
|
)
|
|
126705
126682
|
] });
|
|
@@ -126759,7 +126736,7 @@ const PromptInputTextarea = ({
|
|
|
126759
126736
|
window.addEventListener("band:focus-chat", handler);
|
|
126760
126737
|
return () => window.removeEventListener("band:focus-chat", handler);
|
|
126761
126738
|
}, [textareaRef]);
|
|
126762
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126739
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative min-w-0 flex-1", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126763
126740
|
"textarea",
|
|
126764
126741
|
{
|
|
126765
126742
|
ref: textareaRef,
|
|
@@ -126769,10 +126746,11 @@ const PromptInputTextarea = ({
|
|
|
126769
126746
|
spellCheck: false,
|
|
126770
126747
|
writingsuggestions: "false",
|
|
126771
126748
|
className: cn$2(
|
|
126772
|
-
"min-h-[
|
|
126749
|
+
"block min-h-[40px] lg:min-h-[32px] max-h-48 w-full resize-none overflow-y-auto bg-transparent px-2 py-2 lg:py-1.5 text-base lg:text-sm outline-none placeholder:text-muted-foreground field-sizing-content",
|
|
126773
126750
|
className
|
|
126774
126751
|
),
|
|
126775
126752
|
name: "message",
|
|
126753
|
+
rows: 1,
|
|
126776
126754
|
onCompositionEnd: () => setIsComposing(false),
|
|
126777
126755
|
onCompositionStart: () => setIsComposing(true),
|
|
126778
126756
|
onInput: (e3) => onTextChange(e3.currentTarget.value),
|
|
@@ -126798,16 +126776,16 @@ const PromptInputSubmit = ({
|
|
|
126798
126776
|
type: "button",
|
|
126799
126777
|
"data-testid": "prompt-input__stop-button",
|
|
126800
126778
|
"aria-label": "Stop generation",
|
|
126801
|
-
className: "inline-flex size-8 lg:size-7 shrink-0 items-center justify-center rounded-
|
|
126779
|
+
className: "inline-flex size-8 lg:size-7 shrink-0 items-center justify-center rounded-md text-foreground transition-colors hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
|
|
126802
126780
|
onClick: onStop,
|
|
126803
|
-
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126781
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(CircleStop, { className: "size-4 lg:size-3.5" })
|
|
126804
126782
|
}
|
|
126805
126783
|
) : isSubmitting && !hasContent2 ? /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126806
126784
|
"button",
|
|
126807
126785
|
{
|
|
126808
126786
|
type: "button",
|
|
126809
126787
|
className: cn$2(
|
|
126810
|
-
"inline-flex size-8 lg:size-7 shrink-0 items-center justify-center rounded-
|
|
126788
|
+
"inline-flex size-8 lg:size-7 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-colors",
|
|
126811
126789
|
className
|
|
126812
126790
|
),
|
|
126813
126791
|
disabled: true,
|
|
@@ -126819,14 +126797,18 @@ const PromptInputSubmit = ({
|
|
|
126819
126797
|
{
|
|
126820
126798
|
type: "submit",
|
|
126821
126799
|
"data-testid": "prompt-input__submit-button",
|
|
126800
|
+
"aria-label": "Send message",
|
|
126822
126801
|
disabled: !hasContent2,
|
|
126823
126802
|
className: cn$2(
|
|
126824
|
-
"inline-flex size-8 lg:size-7 shrink-0 items-center justify-center rounded-
|
|
126825
|
-
hasContent2 ?
|
|
126803
|
+
"inline-flex size-8 lg:size-7 shrink-0 items-center justify-center rounded-md transition-colors",
|
|
126804
|
+
hasContent2 ? cn$2(
|
|
126805
|
+
"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
|
|
126806
|
+
isBusy ? "text-primary" : "text-foreground"
|
|
126807
|
+
) : "text-muted-foreground",
|
|
126826
126808
|
className
|
|
126827
126809
|
),
|
|
126828
126810
|
...props,
|
|
126829
|
-
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126811
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(CornerDownLeft, { className: "size-4 lg:size-3.5" })
|
|
126830
126812
|
}
|
|
126831
126813
|
) });
|
|
126832
126814
|
};
|
|
@@ -127689,12 +127671,12 @@ function mergeObjects(target, ...sources) {
|
|
|
127689
127671
|
});
|
|
127690
127672
|
return target;
|
|
127691
127673
|
}
|
|
127692
|
-
function basename$
|
|
127674
|
+
function basename$2(path2) {
|
|
127693
127675
|
const idx = ~path2.lastIndexOf("/") || ~path2.lastIndexOf("\\");
|
|
127694
127676
|
if (idx === 0) {
|
|
127695
127677
|
return path2;
|
|
127696
127678
|
} else if (~idx === path2.length - 1) {
|
|
127697
|
-
return basename$
|
|
127679
|
+
return basename$2(path2.substring(0, path2.length - 1));
|
|
127698
127680
|
} else {
|
|
127699
127681
|
return path2.substr(~idx + 1);
|
|
127700
127682
|
}
|
|
@@ -128643,7 +128625,7 @@ var Rule2 = class {
|
|
|
128643
128625
|
this._contentNameIsCapturing = RegexSource.hasCaptures(this._contentName);
|
|
128644
128626
|
}
|
|
128645
128627
|
get debugName() {
|
|
128646
|
-
const location2 = this.$location ? `${basename$
|
|
128628
|
+
const location2 = this.$location ? `${basename$2(this.$location.filename)}:${this.$location.line}` : "unknown";
|
|
128647
128629
|
return `${this.constructor.name}#${this.id} @ ${location2}`;
|
|
128648
128630
|
}
|
|
128649
128631
|
getName(lineText, captureIndices) {
|
|
@@ -160111,7 +160093,7 @@ function bisector(f2) {
|
|
|
160111
160093
|
function zero$1() {
|
|
160112
160094
|
return 0;
|
|
160113
160095
|
}
|
|
160114
|
-
function number$
|
|
160096
|
+
function number$3(x2) {
|
|
160115
160097
|
return x2 === null ? NaN : +x2;
|
|
160116
160098
|
}
|
|
160117
160099
|
function* numbers(values2, valueof) {
|
|
@@ -160125,7 +160107,7 @@ function* numbers(values2, valueof) {
|
|
|
160125
160107
|
}
|
|
160126
160108
|
const ascendingBisect = bisector(ascending$1);
|
|
160127
160109
|
const bisectRight = ascendingBisect.right;
|
|
160128
|
-
bisector(number$
|
|
160110
|
+
bisector(number$3).center;
|
|
160129
160111
|
class InternMap extends Map {
|
|
160130
160112
|
constructor(entries2, key2 = keyof) {
|
|
160131
160113
|
super();
|
|
@@ -160307,7 +160289,7 @@ function quantile$1(values2, p2, valueof) {
|
|
|
160307
160289
|
var n2, i2 = (n2 - 1) * p2, i0 = Math.floor(i2), value0 = max$1(quickselect(values2, i0).subarray(0, i0 + 1)), value1 = min$1(values2.subarray(i0 + 1));
|
|
160308
160290
|
return value0 + (value1 - value0) * (i2 - i0);
|
|
160309
160291
|
}
|
|
160310
|
-
function quantileSorted(values2, p2, valueof = number$
|
|
160292
|
+
function quantileSorted(values2, p2, valueof = number$3) {
|
|
160311
160293
|
if (!(n2 = values2.length) || isNaN(p2 = +p2)) return;
|
|
160312
160294
|
if (p2 <= 0 || n2 < 2) return +valueof(values2[0], 0, values2);
|
|
160313
160295
|
if (p2 >= 1) return +valueof(values2[n2 - 1], n2 - 1, values2);
|
|
@@ -161652,14 +161634,14 @@ function piecewise(interpolate2, values2) {
|
|
|
161652
161634
|
return I2[i3](t2 - i3);
|
|
161653
161635
|
};
|
|
161654
161636
|
}
|
|
161655
|
-
var frame = 0, timeout$1 = 0, interval = 0, pokeDelay = 1e3, taskHead, taskTail, clockLast = 0, clockNow = 0, clockSkew = 0, clock = typeof performance === "object" && performance.now ? performance : Date, setFrame = typeof window === "object" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(f2) {
|
|
161637
|
+
var frame = 0, timeout$1 = 0, interval = 0, pokeDelay = 1e3, taskHead, taskTail, clockLast = 0, clockNow$1 = 0, clockSkew = 0, clock = typeof performance === "object" && performance.now ? performance : Date, setFrame = typeof window === "object" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(f2) {
|
|
161656
161638
|
setTimeout(f2, 17);
|
|
161657
161639
|
};
|
|
161658
161640
|
function now() {
|
|
161659
|
-
return clockNow || (setFrame(clearNow), clockNow = clock.now() + clockSkew);
|
|
161641
|
+
return clockNow$1 || (setFrame(clearNow), clockNow$1 = clock.now() + clockSkew);
|
|
161660
161642
|
}
|
|
161661
161643
|
function clearNow() {
|
|
161662
|
-
clockNow = 0;
|
|
161644
|
+
clockNow$1 = 0;
|
|
161663
161645
|
}
|
|
161664
161646
|
function Timer() {
|
|
161665
161647
|
this._call = this._time = this._next = null;
|
|
@@ -161696,20 +161678,20 @@ function timerFlush() {
|
|
|
161696
161678
|
++frame;
|
|
161697
161679
|
var t2 = taskHead, e3;
|
|
161698
161680
|
while (t2) {
|
|
161699
|
-
if ((e3 = clockNow - t2._time) >= 0) t2._call.call(void 0, e3);
|
|
161681
|
+
if ((e3 = clockNow$1 - t2._time) >= 0) t2._call.call(void 0, e3);
|
|
161700
161682
|
t2 = t2._next;
|
|
161701
161683
|
}
|
|
161702
161684
|
--frame;
|
|
161703
161685
|
}
|
|
161704
161686
|
function wake() {
|
|
161705
|
-
clockNow = (clockLast = clock.now()) + clockSkew;
|
|
161687
|
+
clockNow$1 = (clockLast = clock.now()) + clockSkew;
|
|
161706
161688
|
frame = timeout$1 = 0;
|
|
161707
161689
|
try {
|
|
161708
161690
|
timerFlush();
|
|
161709
161691
|
} finally {
|
|
161710
161692
|
frame = 0;
|
|
161711
161693
|
nap();
|
|
161712
|
-
clockNow = 0;
|
|
161694
|
+
clockNow$1 = 0;
|
|
161713
161695
|
}
|
|
161714
161696
|
}
|
|
161715
161697
|
function poke() {
|
|
@@ -161733,7 +161715,7 @@ function nap() {
|
|
|
161733
161715
|
function sleep(time2) {
|
|
161734
161716
|
if (frame) return;
|
|
161735
161717
|
if (timeout$1) timeout$1 = clearTimeout(timeout$1);
|
|
161736
|
-
var delay = time2 - clockNow;
|
|
161718
|
+
var delay = time2 - clockNow$1;
|
|
161737
161719
|
if (delay > 24) {
|
|
161738
161720
|
if (time2 < Infinity) timeout$1 = setTimeout(wake, time2 - clock.now() - clockSkew);
|
|
161739
161721
|
if (interval) interval = clearInterval(interval);
|
|
@@ -162809,7 +162791,7 @@ function constants$1(x2) {
|
|
|
162809
162791
|
return x2;
|
|
162810
162792
|
};
|
|
162811
162793
|
}
|
|
162812
|
-
function number$
|
|
162794
|
+
function number$2(x2) {
|
|
162813
162795
|
return +x2;
|
|
162814
162796
|
}
|
|
162815
162797
|
var unit = [0, 1];
|
|
@@ -162870,7 +162852,7 @@ function transformer$2() {
|
|
|
162870
162852
|
return clamp2(untransform((input || (input = piecewise2(range2, domain2.map(transform2), interpolateNumber)))(y4)));
|
|
162871
162853
|
};
|
|
162872
162854
|
scale.domain = function(_2) {
|
|
162873
|
-
return arguments.length ? (domain2 = Array.from(_2, number$
|
|
162855
|
+
return arguments.length ? (domain2 = Array.from(_2, number$2), rescale()) : domain2.slice();
|
|
162874
162856
|
};
|
|
162875
162857
|
scale.range = function(_2) {
|
|
162876
162858
|
return arguments.length ? (range2 = Array.from(_2), rescale()) : range2.slice();
|
|
@@ -162980,7 +162962,7 @@ function identity$2(domain2) {
|
|
|
162980
162962
|
}
|
|
162981
162963
|
scale.invert = scale;
|
|
162982
162964
|
scale.domain = scale.range = function(_2) {
|
|
162983
|
-
return arguments.length ? (domain2 = Array.from(_2, number$
|
|
162965
|
+
return arguments.length ? (domain2 = Array.from(_2, number$2), scale) : domain2.slice();
|
|
162984
162966
|
};
|
|
162985
162967
|
scale.unknown = function(_2) {
|
|
162986
162968
|
return arguments.length ? (unknown2 = _2, scale) : unknown2;
|
|
@@ -162988,7 +162970,7 @@ function identity$2(domain2) {
|
|
|
162988
162970
|
scale.copy = function() {
|
|
162989
162971
|
return identity$2(domain2).unknown(unknown2);
|
|
162990
162972
|
};
|
|
162991
|
-
domain2 = arguments.length ? Array.from(domain2, number$
|
|
162973
|
+
domain2 = arguments.length ? Array.from(domain2, number$2) : [0, 1];
|
|
162992
162974
|
return linearish(scale);
|
|
162993
162975
|
}
|
|
162994
162976
|
function nice(domain2, interval2) {
|
|
@@ -163188,7 +163170,7 @@ function radial() {
|
|
|
163188
163170
|
return arguments.length ? (squared.domain(_2), scale) : squared.domain();
|
|
163189
163171
|
};
|
|
163190
163172
|
scale.range = function(_2) {
|
|
163191
|
-
return arguments.length ? (squared.range((range2 = Array.from(_2, number$
|
|
163173
|
+
return arguments.length ? (squared.range((range2 = Array.from(_2, number$2)).map(square)), scale) : range2.slice();
|
|
163192
163174
|
};
|
|
163193
163175
|
scale.rangeRound = function(_2) {
|
|
163194
163176
|
return scale.range(_2).round(true);
|
|
@@ -164173,7 +164155,7 @@ function defaultLocale(definition2) {
|
|
|
164173
164155
|
function date(t2) {
|
|
164174
164156
|
return new Date(t2);
|
|
164175
164157
|
}
|
|
164176
|
-
function number(t2) {
|
|
164158
|
+
function number$1(t2) {
|
|
164177
164159
|
return t2 instanceof Date ? +t2 : +/* @__PURE__ */ new Date(+t2);
|
|
164178
164160
|
}
|
|
164179
164161
|
function calendar(ticks2, tickInterval, year, month, week, day, hour, minute, second2, format2) {
|
|
@@ -164186,7 +164168,7 @@ function calendar(ticks2, tickInterval, year, month, week, day, hour, minute, se
|
|
|
164186
164168
|
return new Date(invert2(y4));
|
|
164187
164169
|
};
|
|
164188
164170
|
scale.domain = function(_2) {
|
|
164189
|
-
return arguments.length ? domain2(Array.from(_2, number)) : domain2().map(date);
|
|
164171
|
+
return arguments.length ? domain2(Array.from(_2, number$1)) : domain2().map(date);
|
|
164190
164172
|
};
|
|
164191
164173
|
scale.ticks = function(interval2) {
|
|
164192
164174
|
var d2 = domain2();
|
|
@@ -178645,12 +178627,12 @@ var registerDefaultLayoutLoaders = /* @__PURE__ */ __name(() => {
|
|
|
178645
178627
|
registerLayoutLoaders([
|
|
178646
178628
|
{
|
|
178647
178629
|
name: "dagre",
|
|
178648
|
-
loader: /* @__PURE__ */ __name(async () => await import("./dagre-6UL2VRFP-
|
|
178630
|
+
loader: /* @__PURE__ */ __name(async () => await import("./dagre-6UL2VRFP-LXGdLIDl.js"), "loader")
|
|
178649
178631
|
},
|
|
178650
178632
|
...[
|
|
178651
178633
|
{
|
|
178652
178634
|
name: "cose-bilkent",
|
|
178653
|
-
loader: /* @__PURE__ */ __name(async () => await import("./cose-bilkent-S5V4N54A-
|
|
178635
|
+
loader: /* @__PURE__ */ __name(async () => await import("./cose-bilkent-S5V4N54A-BfBG7OY2.js"), "loader")
|
|
178654
178636
|
}
|
|
178655
178637
|
]
|
|
178656
178638
|
]);
|
|
@@ -179089,7 +179071,7 @@ var detector = /* @__PURE__ */ __name((txt) => {
|
|
|
179089
179071
|
return /^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(txt);
|
|
179090
179072
|
}, "detector");
|
|
179091
179073
|
var loader = /* @__PURE__ */ __name(async () => {
|
|
179092
|
-
const { diagram: diagram2 } = await import("./c4Diagram-YG6GDRKO-
|
|
179074
|
+
const { diagram: diagram2 } = await import("./c4Diagram-YG6GDRKO-BxUADYG0.js");
|
|
179093
179075
|
return { id, diagram: diagram2 };
|
|
179094
179076
|
}, "loader");
|
|
179095
179077
|
var plugin = {
|
|
@@ -179106,7 +179088,7 @@ var detector2 = /* @__PURE__ */ __name((txt, config2) => {
|
|
|
179106
179088
|
return /^\s*graph/.test(txt);
|
|
179107
179089
|
}, "detector");
|
|
179108
179090
|
var loader2 = /* @__PURE__ */ __name(async () => {
|
|
179109
|
-
const { diagram: diagram2 } = await import("./flowDiagram-NV44I4VS-
|
|
179091
|
+
const { diagram: diagram2 } = await import("./flowDiagram-NV44I4VS-DpODroRz.js");
|
|
179110
179092
|
return { id: id2, diagram: diagram2 };
|
|
179111
179093
|
}, "loader");
|
|
179112
179094
|
var plugin2 = {
|
|
@@ -179129,7 +179111,7 @@ var detector3 = /* @__PURE__ */ __name((txt, config2) => {
|
|
|
179129
179111
|
return /^\s*flowchart/.test(txt);
|
|
179130
179112
|
}, "detector");
|
|
179131
179113
|
var loader3 = /* @__PURE__ */ __name(async () => {
|
|
179132
|
-
const { diagram: diagram2 } = await import("./flowDiagram-NV44I4VS-
|
|
179114
|
+
const { diagram: diagram2 } = await import("./flowDiagram-NV44I4VS-DpODroRz.js");
|
|
179133
179115
|
return { id: id3, diagram: diagram2 };
|
|
179134
179116
|
}, "loader");
|
|
179135
179117
|
var plugin3 = {
|
|
@@ -179143,7 +179125,7 @@ var detector4 = /* @__PURE__ */ __name((txt) => {
|
|
|
179143
179125
|
return /^\s*erDiagram/.test(txt);
|
|
179144
179126
|
}, "detector");
|
|
179145
179127
|
var loader4 = /* @__PURE__ */ __name(async () => {
|
|
179146
|
-
const { diagram: diagram2 } = await import("./erDiagram-Q2GNP2WA-
|
|
179128
|
+
const { diagram: diagram2 } = await import("./erDiagram-Q2GNP2WA-BB0T0Xnn.js");
|
|
179147
179129
|
return { id: id4, diagram: diagram2 };
|
|
179148
179130
|
}, "loader");
|
|
179149
179131
|
var plugin4 = {
|
|
@@ -179157,7 +179139,7 @@ var detector5 = /* @__PURE__ */ __name((txt) => {
|
|
|
179157
179139
|
return /^\s*gitGraph/.test(txt);
|
|
179158
179140
|
}, "detector");
|
|
179159
179141
|
var loader5 = /* @__PURE__ */ __name(async () => {
|
|
179160
|
-
const { diagram: diagram2 } = await import("./gitGraphDiagram-V2S2FVAM-
|
|
179142
|
+
const { diagram: diagram2 } = await import("./gitGraphDiagram-V2S2FVAM-BJPLdwXn.js");
|
|
179161
179143
|
return { id: id5, diagram: diagram2 };
|
|
179162
179144
|
}, "loader");
|
|
179163
179145
|
var plugin5 = {
|
|
@@ -179171,7 +179153,7 @@ var detector6 = /* @__PURE__ */ __name((txt) => {
|
|
|
179171
179153
|
return /^\s*gantt/.test(txt);
|
|
179172
179154
|
}, "detector");
|
|
179173
179155
|
var loader6 = /* @__PURE__ */ __name(async () => {
|
|
179174
|
-
const { diagram: diagram2 } = await import("./ganttDiagram-JELNMOA3-
|
|
179156
|
+
const { diagram: diagram2 } = await import("./ganttDiagram-JELNMOA3-Cv3UNeb8.js");
|
|
179175
179157
|
return { id: id6, diagram: diagram2 };
|
|
179176
179158
|
}, "loader");
|
|
179177
179159
|
var plugin6 = {
|
|
@@ -179185,7 +179167,7 @@ var detector7 = /* @__PURE__ */ __name((txt) => {
|
|
|
179185
179167
|
return /^\s*info/.test(txt);
|
|
179186
179168
|
}, "detector");
|
|
179187
179169
|
var loader7 = /* @__PURE__ */ __name(async () => {
|
|
179188
|
-
const { diagram: diagram2 } = await import("./infoDiagram-HS3SLOUP-
|
|
179170
|
+
const { diagram: diagram2 } = await import("./infoDiagram-HS3SLOUP-BYfrlW-j.js");
|
|
179189
179171
|
return { id: id7, diagram: diagram2 };
|
|
179190
179172
|
}, "loader");
|
|
179191
179173
|
var info = {
|
|
@@ -179198,7 +179180,7 @@ var detector8 = /* @__PURE__ */ __name((txt) => {
|
|
|
179198
179180
|
return /^\s*pie/.test(txt);
|
|
179199
179181
|
}, "detector");
|
|
179200
179182
|
var loader8 = /* @__PURE__ */ __name(async () => {
|
|
179201
|
-
const { diagram: diagram2 } = await import("./pieDiagram-ADFJNKIX-
|
|
179183
|
+
const { diagram: diagram2 } = await import("./pieDiagram-ADFJNKIX-CUbwYVab.js");
|
|
179202
179184
|
return { id: id8, diagram: diagram2 };
|
|
179203
179185
|
}, "loader");
|
|
179204
179186
|
var pie = {
|
|
@@ -179211,7 +179193,7 @@ var detector9 = /* @__PURE__ */ __name((txt) => {
|
|
|
179211
179193
|
return /^\s*quadrantChart/.test(txt);
|
|
179212
179194
|
}, "detector");
|
|
179213
179195
|
var loader9 = /* @__PURE__ */ __name(async () => {
|
|
179214
|
-
const { diagram: diagram2 } = await import("./quadrantDiagram-AYHSOK5B-
|
|
179196
|
+
const { diagram: diagram2 } = await import("./quadrantDiagram-AYHSOK5B-BB6u0IN3.js");
|
|
179215
179197
|
return { id: id9, diagram: diagram2 };
|
|
179216
179198
|
}, "loader");
|
|
179217
179199
|
var plugin7 = {
|
|
@@ -179225,7 +179207,7 @@ var detector10 = /* @__PURE__ */ __name((txt) => {
|
|
|
179225
179207
|
return /^\s*xychart(-beta)?/.test(txt);
|
|
179226
179208
|
}, "detector");
|
|
179227
179209
|
var loader10 = /* @__PURE__ */ __name(async () => {
|
|
179228
|
-
const { diagram: diagram2 } = await import("./xychartDiagram-PRI3JC2R-
|
|
179210
|
+
const { diagram: diagram2 } = await import("./xychartDiagram-PRI3JC2R-BKGpeSar.js");
|
|
179229
179211
|
return { id: id10, diagram: diagram2 };
|
|
179230
179212
|
}, "loader");
|
|
179231
179213
|
var plugin8 = {
|
|
@@ -179239,7 +179221,7 @@ var detector11 = /* @__PURE__ */ __name((txt) => {
|
|
|
179239
179221
|
return /^\s*requirement(Diagram)?/.test(txt);
|
|
179240
179222
|
}, "detector");
|
|
179241
179223
|
var loader11 = /* @__PURE__ */ __name(async () => {
|
|
179242
|
-
const { diagram: diagram2 } = await import("./requirementDiagram-UZGBJVZJ-
|
|
179224
|
+
const { diagram: diagram2 } = await import("./requirementDiagram-UZGBJVZJ-BLRtjxGN.js");
|
|
179243
179225
|
return { id: id11, diagram: diagram2 };
|
|
179244
179226
|
}, "loader");
|
|
179245
179227
|
var plugin9 = {
|
|
@@ -179253,7 +179235,7 @@ var detector12 = /* @__PURE__ */ __name((txt) => {
|
|
|
179253
179235
|
return /^\s*sequenceDiagram/.test(txt);
|
|
179254
179236
|
}, "detector");
|
|
179255
179237
|
var loader12 = /* @__PURE__ */ __name(async () => {
|
|
179256
|
-
const { diagram: diagram2 } = await import("./sequenceDiagram-WL72ISMW-
|
|
179238
|
+
const { diagram: diagram2 } = await import("./sequenceDiagram-WL72ISMW-DB8euEl-.js");
|
|
179257
179239
|
return { id: id12, diagram: diagram2 };
|
|
179258
179240
|
}, "loader");
|
|
179259
179241
|
var plugin10 = {
|
|
@@ -179270,7 +179252,7 @@ var detector13 = /* @__PURE__ */ __name((txt, config2) => {
|
|
|
179270
179252
|
return /^\s*classDiagram/.test(txt);
|
|
179271
179253
|
}, "detector");
|
|
179272
179254
|
var loader13 = /* @__PURE__ */ __name(async () => {
|
|
179273
|
-
const { diagram: diagram2 } = await import("./classDiagram-2ON5EDUG-
|
|
179255
|
+
const { diagram: diagram2 } = await import("./classDiagram-2ON5EDUG-Dm_cGVOP.js");
|
|
179274
179256
|
return { id: id13, diagram: diagram2 };
|
|
179275
179257
|
}, "loader");
|
|
179276
179258
|
var plugin11 = {
|
|
@@ -179287,7 +179269,7 @@ var detector14 = /* @__PURE__ */ __name((txt, config2) => {
|
|
|
179287
179269
|
return /^\s*classDiagram-v2/.test(txt);
|
|
179288
179270
|
}, "detector");
|
|
179289
179271
|
var loader14 = /* @__PURE__ */ __name(async () => {
|
|
179290
|
-
const { diagram: diagram2 } = await import("./classDiagram-v2-WZHVMYZB-
|
|
179272
|
+
const { diagram: diagram2 } = await import("./classDiagram-v2-WZHVMYZB-Dm_cGVOP.js");
|
|
179291
179273
|
return { id: id14, diagram: diagram2 };
|
|
179292
179274
|
}, "loader");
|
|
179293
179275
|
var plugin12 = {
|
|
@@ -179304,7 +179286,7 @@ var detector15 = /* @__PURE__ */ __name((txt, config2) => {
|
|
|
179304
179286
|
return /^\s*stateDiagram/.test(txt);
|
|
179305
179287
|
}, "detector");
|
|
179306
179288
|
var loader15 = /* @__PURE__ */ __name(async () => {
|
|
179307
|
-
const { diagram: diagram2 } = await import("./stateDiagram-FKZM4ZOC-
|
|
179289
|
+
const { diagram: diagram2 } = await import("./stateDiagram-FKZM4ZOC-CgrYrlDa.js");
|
|
179308
179290
|
return { id: id15, diagram: diagram2 };
|
|
179309
179291
|
}, "loader");
|
|
179310
179292
|
var plugin13 = {
|
|
@@ -179324,7 +179306,7 @@ var detector16 = /* @__PURE__ */ __name((txt, config2) => {
|
|
|
179324
179306
|
return false;
|
|
179325
179307
|
}, "detector");
|
|
179326
179308
|
var loader16 = /* @__PURE__ */ __name(async () => {
|
|
179327
|
-
const { diagram: diagram2 } = await import("./stateDiagram-v2-4FDKWEC3-
|
|
179309
|
+
const { diagram: diagram2 } = await import("./stateDiagram-v2-4FDKWEC3-Ch28pf2n.js");
|
|
179328
179310
|
return { id: id16, diagram: diagram2 };
|
|
179329
179311
|
}, "loader");
|
|
179330
179312
|
var plugin14 = {
|
|
@@ -179338,7 +179320,7 @@ var detector17 = /* @__PURE__ */ __name((txt) => {
|
|
|
179338
179320
|
return /^\s*journey/.test(txt);
|
|
179339
179321
|
}, "detector");
|
|
179340
179322
|
var loader17 = /* @__PURE__ */ __name(async () => {
|
|
179341
|
-
const { diagram: diagram2 } = await import("./journeyDiagram-XKPGCS4Q-
|
|
179323
|
+
const { diagram: diagram2 } = await import("./journeyDiagram-XKPGCS4Q-VV4qbZDl.js");
|
|
179342
179324
|
return { id: id17, diagram: diagram2 };
|
|
179343
179325
|
}, "loader");
|
|
179344
179326
|
var plugin15 = {
|
|
@@ -179405,7 +179387,7 @@ var detector18 = /* @__PURE__ */ __name((txt, config2 = {}) => {
|
|
|
179405
179387
|
return false;
|
|
179406
179388
|
}, "detector");
|
|
179407
179389
|
var loader18 = /* @__PURE__ */ __name(async () => {
|
|
179408
|
-
const { diagram: diagram2 } = await import("./flowDiagram-NV44I4VS-
|
|
179390
|
+
const { diagram: diagram2 } = await import("./flowDiagram-NV44I4VS-DpODroRz.js");
|
|
179409
179391
|
return { id: id18, diagram: diagram2 };
|
|
179410
179392
|
}, "loader");
|
|
179411
179393
|
var plugin16 = {
|
|
@@ -179419,7 +179401,7 @@ var detector19 = /* @__PURE__ */ __name((txt) => {
|
|
|
179419
179401
|
return /^\s*timeline/.test(txt);
|
|
179420
179402
|
}, "detector");
|
|
179421
179403
|
var loader19 = /* @__PURE__ */ __name(async () => {
|
|
179422
|
-
const { diagram: diagram2 } = await import("./timeline-definition-IT6M3QCI-
|
|
179404
|
+
const { diagram: diagram2 } = await import("./timeline-definition-IT6M3QCI-jW-suedf.js");
|
|
179423
179405
|
return { id: id19, diagram: diagram2 };
|
|
179424
179406
|
}, "loader");
|
|
179425
179407
|
var plugin17 = {
|
|
@@ -179433,7 +179415,7 @@ var detector20 = /* @__PURE__ */ __name((txt) => {
|
|
|
179433
179415
|
return /^\s*mindmap/.test(txt);
|
|
179434
179416
|
}, "detector");
|
|
179435
179417
|
var loader20 = /* @__PURE__ */ __name(async () => {
|
|
179436
|
-
const { diagram: diagram2 } = await import("./mindmap-definition-VGOIOE7T-
|
|
179418
|
+
const { diagram: diagram2 } = await import("./mindmap-definition-VGOIOE7T-DME5Y_pR.js");
|
|
179437
179419
|
return { id: id20, diagram: diagram2 };
|
|
179438
179420
|
}, "loader");
|
|
179439
179421
|
var plugin18 = {
|
|
@@ -179447,7 +179429,7 @@ var detector21 = /* @__PURE__ */ __name((txt) => {
|
|
|
179447
179429
|
return /^\s*kanban/.test(txt);
|
|
179448
179430
|
}, "detector");
|
|
179449
179431
|
var loader21 = /* @__PURE__ */ __name(async () => {
|
|
179450
|
-
const { diagram: diagram2 } = await import("./kanban-definition-3W4ZIXB7-
|
|
179432
|
+
const { diagram: diagram2 } = await import("./kanban-definition-3W4ZIXB7-TtjjtFt_.js");
|
|
179451
179433
|
return { id: id21, diagram: diagram2 };
|
|
179452
179434
|
}, "loader");
|
|
179453
179435
|
var plugin19 = {
|
|
@@ -179461,7 +179443,7 @@ var detector22 = /* @__PURE__ */ __name((txt) => {
|
|
|
179461
179443
|
return /^\s*sankey(-beta)?/.test(txt);
|
|
179462
179444
|
}, "detector");
|
|
179463
179445
|
var loader22 = /* @__PURE__ */ __name(async () => {
|
|
179464
|
-
const { diagram: diagram2 } = await import("./sankeyDiagram-TZEHDZUN-
|
|
179446
|
+
const { diagram: diagram2 } = await import("./sankeyDiagram-TZEHDZUN-BF1Ts-tv.js");
|
|
179465
179447
|
return { id: id22, diagram: diagram2 };
|
|
179466
179448
|
}, "loader");
|
|
179467
179449
|
var plugin20 = {
|
|
@@ -179475,7 +179457,7 @@ var detector23 = /* @__PURE__ */ __name((txt) => {
|
|
|
179475
179457
|
return /^\s*packet(-beta)?/.test(txt);
|
|
179476
179458
|
}, "detector");
|
|
179477
179459
|
var loader23 = /* @__PURE__ */ __name(async () => {
|
|
179478
|
-
const { diagram: diagram2 } = await import("./diagram-S2PKOQOG-
|
|
179460
|
+
const { diagram: diagram2 } = await import("./diagram-S2PKOQOG-pULTY82u.js");
|
|
179479
179461
|
return { id: id23, diagram: diagram2 };
|
|
179480
179462
|
}, "loader");
|
|
179481
179463
|
var packet = {
|
|
@@ -179488,7 +179470,7 @@ var detector24 = /* @__PURE__ */ __name((txt) => {
|
|
|
179488
179470
|
return /^\s*radar-beta/.test(txt);
|
|
179489
179471
|
}, "detector");
|
|
179490
179472
|
var loader24 = /* @__PURE__ */ __name(async () => {
|
|
179491
|
-
const { diagram: diagram2 } = await import("./diagram-QEK2KX5R-
|
|
179473
|
+
const { diagram: diagram2 } = await import("./diagram-QEK2KX5R-rd29zHZp.js");
|
|
179492
179474
|
return { id: id24, diagram: diagram2 };
|
|
179493
179475
|
}, "loader");
|
|
179494
179476
|
var radar = {
|
|
@@ -179501,7 +179483,7 @@ var detector25 = /* @__PURE__ */ __name((txt) => {
|
|
|
179501
179483
|
return /^\s*block(-beta)?/.test(txt);
|
|
179502
179484
|
}, "detector");
|
|
179503
179485
|
var loader25 = /* @__PURE__ */ __name(async () => {
|
|
179504
|
-
const { diagram: diagram2 } = await import("./blockDiagram-VD42YOAC-
|
|
179486
|
+
const { diagram: diagram2 } = await import("./blockDiagram-VD42YOAC-DHqCP2b4.js");
|
|
179505
179487
|
return { id: id25, diagram: diagram2 };
|
|
179506
179488
|
}, "loader");
|
|
179507
179489
|
var plugin21 = {
|
|
@@ -179515,7 +179497,7 @@ var detector26 = /* @__PURE__ */ __name((txt) => {
|
|
|
179515
179497
|
return /^\s*architecture/.test(txt);
|
|
179516
179498
|
}, "detector");
|
|
179517
179499
|
var loader26 = /* @__PURE__ */ __name(async () => {
|
|
179518
|
-
const { diagram: diagram2 } = await import("./architectureDiagram-VXUJARFQ-
|
|
179500
|
+
const { diagram: diagram2 } = await import("./architectureDiagram-VXUJARFQ-B5KfJFud.js");
|
|
179519
179501
|
return { id: id26, diagram: diagram2 };
|
|
179520
179502
|
}, "loader");
|
|
179521
179503
|
var architecture = {
|
|
@@ -179529,7 +179511,7 @@ var detector27 = /* @__PURE__ */ __name((txt) => {
|
|
|
179529
179511
|
return /^\s*treemap/.test(txt);
|
|
179530
179512
|
}, "detector");
|
|
179531
179513
|
var loader27 = /* @__PURE__ */ __name(async () => {
|
|
179532
|
-
const { diagram: diagram2 } = await import("./diagram-PSM6KHXK-
|
|
179514
|
+
const { diagram: diagram2 } = await import("./diagram-PSM6KHXK-Dq-nGhg0.js");
|
|
179533
179515
|
return { id: id27, diagram: diagram2 };
|
|
179534
179516
|
}, "loader");
|
|
179535
179517
|
var treemap = {
|
|
@@ -180373,7 +180355,7 @@ function FilePreviewOverlay({ open: open2, onOpenChange, part }) {
|
|
|
180373
180355
|
{
|
|
180374
180356
|
className: cn$2(
|
|
180375
180357
|
"fixed inset-0 z-50 flex flex-col outline-none",
|
|
180376
|
-
"h-[100dvh] w-
|
|
180358
|
+
"h-[calc(100dvh/var(--app-zoom,1))] w-[calc(100vw/var(--app-zoom,1))]",
|
|
180377
180359
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0",
|
|
180378
180360
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0"
|
|
180379
180361
|
),
|
|
@@ -180836,6 +180818,171 @@ function TaskStatusIcon({ status }) {
|
|
|
180836
180818
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(Circle, { className: "size-3 shrink-0 text-muted-foreground" });
|
|
180837
180819
|
}
|
|
180838
180820
|
}
|
|
180821
|
+
function blank(entry) {
|
|
180822
|
+
return entry.kind === "text" && !entry.text.trim();
|
|
180823
|
+
}
|
|
180824
|
+
function groupEntries(entries2) {
|
|
180825
|
+
const parts = [];
|
|
180826
|
+
let run2 = [];
|
|
180827
|
+
const flush = () => {
|
|
180828
|
+
const first = run2.findIndex((e3) => e3.kind === "tool");
|
|
180829
|
+
let last = run2.length - 1;
|
|
180830
|
+
while (last >= 0 && run2[last].kind !== "tool") last--;
|
|
180831
|
+
const tools = run2.filter((e3) => e3.kind === "tool");
|
|
180832
|
+
if (tools.length < 2) {
|
|
180833
|
+
for (const entry of run2) parts.push({ kind: "entry", entry });
|
|
180834
|
+
} else {
|
|
180835
|
+
for (const entry of run2.slice(0, first)) parts.push({ kind: "entry", entry });
|
|
180836
|
+
parts.push({
|
|
180837
|
+
kind: "tools",
|
|
180838
|
+
id: `group-${tools[0].id}`,
|
|
180839
|
+
entries: run2.slice(first, last + 1).filter((e3) => !blank(e3)),
|
|
180840
|
+
tools
|
|
180841
|
+
});
|
|
180842
|
+
for (const entry of run2.slice(last + 1)) parts.push({ kind: "entry", entry });
|
|
180843
|
+
}
|
|
180844
|
+
run2 = [];
|
|
180845
|
+
};
|
|
180846
|
+
for (const entry of entries2) {
|
|
180847
|
+
if (entry.kind === "tool" || entry.kind === "thought" || blank(entry)) {
|
|
180848
|
+
run2.push(entry);
|
|
180849
|
+
} else {
|
|
180850
|
+
flush();
|
|
180851
|
+
parts.push({ kind: "entry", entry });
|
|
180852
|
+
}
|
|
180853
|
+
}
|
|
180854
|
+
flush();
|
|
180855
|
+
return parts;
|
|
180856
|
+
}
|
|
180857
|
+
function toolState(entry) {
|
|
180858
|
+
if (entry.status === "failed") return "error";
|
|
180859
|
+
if (entry.status === "pending" || entry.status === "in_progress") return "in-progress";
|
|
180860
|
+
return "complete";
|
|
180861
|
+
}
|
|
180862
|
+
function toolDuration(tools) {
|
|
180863
|
+
let start2 = Number.POSITIVE_INFINITY;
|
|
180864
|
+
let end = Number.NEGATIVE_INFINITY;
|
|
180865
|
+
for (const t2 of tools) {
|
|
180866
|
+
if (t2.startedAt === void 0 || t2.endedAt === void 0) return void 0;
|
|
180867
|
+
start2 = Math.min(start2, t2.startedAt);
|
|
180868
|
+
end = Math.max(end, t2.endedAt);
|
|
180869
|
+
}
|
|
180870
|
+
return end > start2 ? end - start2 : void 0;
|
|
180871
|
+
}
|
|
180872
|
+
function formatToolDuration(ms) {
|
|
180873
|
+
if (Math.round(ms) < 1e3) return `${Math.round(ms)}ms`;
|
|
180874
|
+
const tenths = Math.round(ms / 100);
|
|
180875
|
+
if (tenths < 100) return `${(tenths / 10).toFixed(1)}s`;
|
|
180876
|
+
const seconds = Math.round(ms / 1e3);
|
|
180877
|
+
if (seconds < 60) return `${seconds}s`;
|
|
180878
|
+
return `${Math.floor(seconds / 60)}m ${seconds % 60}s`;
|
|
180879
|
+
}
|
|
180880
|
+
function record(value) {
|
|
180881
|
+
return value !== null && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
180882
|
+
}
|
|
180883
|
+
function basename$1(path2) {
|
|
180884
|
+
return path2.split("/").filter(Boolean).pop() ?? path2;
|
|
180885
|
+
}
|
|
180886
|
+
function pathInTitle(entry) {
|
|
180887
|
+
const path2 = entry.locations[0]?.path;
|
|
180888
|
+
if (!path2) return void 0;
|
|
180889
|
+
const segments = path2.split("/");
|
|
180890
|
+
for (let i2 = 0; i2 < segments.length; i2++) {
|
|
180891
|
+
const tail2 = segments.slice(i2).join("/");
|
|
180892
|
+
if (tail2 && entry.title.includes(tail2)) return tail2;
|
|
180893
|
+
}
|
|
180894
|
+
return void 0;
|
|
180895
|
+
}
|
|
180896
|
+
function shellDescription(entry) {
|
|
180897
|
+
const description = record(entry.rawInput)?.description;
|
|
180898
|
+
return typeof description === "string" && description.trim() ? description.trim() : void 0;
|
|
180899
|
+
}
|
|
180900
|
+
function describeTool(entry) {
|
|
180901
|
+
const description = shellDescription(entry);
|
|
180902
|
+
if (description) {
|
|
180903
|
+
return toolState(entry) === "error" ? { text: `Failed to ${description[0].toLowerCase()}${description.slice(1)}` } : { text: description };
|
|
180904
|
+
}
|
|
180905
|
+
return { text: entry.title, highlight: pathInTitle(entry) };
|
|
180906
|
+
}
|
|
180907
|
+
function fileNamed(verb, noun = "file") {
|
|
180908
|
+
return {
|
|
180909
|
+
one: (entry) => {
|
|
180910
|
+
const path2 = entry.locations[0]?.path;
|
|
180911
|
+
return path2 ? `${verb} ${basename$1(path2)}` : `${verb} 1 ${noun}`;
|
|
180912
|
+
},
|
|
180913
|
+
many: (n2) => `${verb} ${n2} ${noun}s`
|
|
180914
|
+
};
|
|
180915
|
+
}
|
|
180916
|
+
const counted = (verb, noun) => ({
|
|
180917
|
+
one: () => `${verb} 1 ${noun}`,
|
|
180918
|
+
many: (n2) => `${verb} ${n2} ${noun}s`
|
|
180919
|
+
});
|
|
180920
|
+
const PHRASES = {
|
|
180921
|
+
execute: counted("ran", "command"),
|
|
180922
|
+
read: fileNamed("read"),
|
|
180923
|
+
edit: fileNamed("edited"),
|
|
180924
|
+
delete: fileNamed("deleted"),
|
|
180925
|
+
move: fileNamed("moved"),
|
|
180926
|
+
search: { one: () => "ran 1 search", many: (n2) => `ran ${n2} searches` },
|
|
180927
|
+
fetch: counted("fetched", "page"),
|
|
180928
|
+
think: counted("ran", "task")
|
|
180929
|
+
};
|
|
180930
|
+
const OTHER = counted("used", "tool");
|
|
180931
|
+
function summarizeTools(tools) {
|
|
180932
|
+
const byPhrase = /* @__PURE__ */ new Map();
|
|
180933
|
+
for (const tool of tools) {
|
|
180934
|
+
const phrase = tool.toolKind && PHRASES[tool.toolKind] || OTHER;
|
|
180935
|
+
const list2 = byPhrase.get(phrase);
|
|
180936
|
+
if (list2) list2.push(tool);
|
|
180937
|
+
else byPhrase.set(phrase, [tool]);
|
|
180938
|
+
}
|
|
180939
|
+
const clauses = [...byPhrase].map(([phrase, list2]) => {
|
|
180940
|
+
const text2 = list2.length === 1 ? phrase.one(list2[0]) : phrase.many(list2.length);
|
|
180941
|
+
const failed = list2.filter((t2) => toolState(t2) === "error").length;
|
|
180942
|
+
return failed > 0 ? `${text2} (${failed} failed)` : text2;
|
|
180943
|
+
});
|
|
180944
|
+
const line2 = clauses.join(", ");
|
|
180945
|
+
return line2[0].toUpperCase() + line2.slice(1);
|
|
180946
|
+
}
|
|
180947
|
+
const OUTPUT_LIMIT = 2e4;
|
|
180948
|
+
const FENCE_OPEN = /^```[\w-]*\n/;
|
|
180949
|
+
const FENCE_CLOSE = /\n?```\s*$/;
|
|
180950
|
+
const EXIT_LINE = /^Exit code (\d+)\n?/;
|
|
180951
|
+
function number(value) {
|
|
180952
|
+
return typeof value === "number" && Number.isFinite(value) ? value : void 0;
|
|
180953
|
+
}
|
|
180954
|
+
function rawOutputText(raw2) {
|
|
180955
|
+
if (typeof raw2 === "string") return raw2;
|
|
180956
|
+
const out = record(raw2);
|
|
180957
|
+
if (!out) return "";
|
|
180958
|
+
for (const key2 of ["formatted_output", "aggregated_output", "output"]) {
|
|
180959
|
+
if (typeof out[key2] === "string") return out[key2];
|
|
180960
|
+
}
|
|
180961
|
+
return [out.stdout, out.stderr].filter((s2) => typeof s2 === "string" && s2).join("\n");
|
|
180962
|
+
}
|
|
180963
|
+
function shellRun(entry) {
|
|
180964
|
+
if (entry.toolKind !== "execute") return null;
|
|
180965
|
+
const input = record(entry.rawInput);
|
|
180966
|
+
const cmd2 = input?.command;
|
|
180967
|
+
const command2 = typeof cmd2 === "string" ? cmd2 : Array.isArray(cmd2) && cmd2.every((c2) => typeof c2 === "string") ? cmd2.join(" ") : entry.title;
|
|
180968
|
+
const texts = entry.content.flatMap(
|
|
180969
|
+
(c2) => c2.type === "content" && c2.content.type === "text" ? [c2.content.text] : []
|
|
180970
|
+
);
|
|
180971
|
+
let output = (texts.length > 0 ? texts.join("\n") : rawOutputText(entry.rawOutput)).slice(
|
|
180972
|
+
0,
|
|
180973
|
+
OUTPUT_LIMIT + 64
|
|
180974
|
+
);
|
|
180975
|
+
if (FENCE_OPEN.test(output)) output = output.replace(FENCE_OPEN, "").replace(FENCE_CLOSE, "");
|
|
180976
|
+
if (output === shellDescription(entry)) output = "";
|
|
180977
|
+
const raw2 = record(entry.rawOutput);
|
|
180978
|
+
let exitCode = number(raw2?.exit_code) ?? number(raw2?.exitCode);
|
|
180979
|
+
const exitLine = EXIT_LINE.exec(output);
|
|
180980
|
+
if (exitLine) {
|
|
180981
|
+
exitCode ??= Number(exitLine[1]);
|
|
180982
|
+
output = output.slice(exitLine[0].length);
|
|
180983
|
+
}
|
|
180984
|
+
return { command: command2, exitCode, output: output.trimEnd() };
|
|
180985
|
+
}
|
|
180839
180986
|
const MAX_CELLS = 4e5;
|
|
180840
180987
|
const CONTEXT = 3;
|
|
180841
180988
|
function rawDiff(oldLines, newLines) {
|
|
@@ -180925,26 +181072,6 @@ const ToolOutput = ({ className, output, errorText, ...props }) => {
|
|
|
180925
181072
|
)
|
|
180926
181073
|
] });
|
|
180927
181074
|
};
|
|
180928
|
-
function statusOf(entry) {
|
|
180929
|
-
if (entry.status === "failed") return "error";
|
|
180930
|
-
if (entry.status === "pending" || entry.status === "in_progress") return "in-progress";
|
|
180931
|
-
return "complete";
|
|
180932
|
-
}
|
|
180933
|
-
function StatusDot({ status }) {
|
|
180934
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
180935
|
-
"span",
|
|
180936
|
-
{
|
|
180937
|
-
"data-testid": "tool-call__status-dot",
|
|
180938
|
-
"data-status": status,
|
|
180939
|
-
className: cn$2(
|
|
180940
|
-
"size-2 shrink-0 rounded-full",
|
|
180941
|
-
status === "error" && "bg-red-500",
|
|
180942
|
-
status === "in-progress" && "animate-pulse bg-orange-500",
|
|
180943
|
-
status === "complete" && "bg-green-500"
|
|
180944
|
-
)
|
|
180945
|
-
}
|
|
180946
|
-
);
|
|
180947
|
-
}
|
|
180948
181075
|
function shortPath(path2, cwd) {
|
|
180949
181076
|
return cwd && path2.startsWith(`${cwd}/`) ? path2.slice(cwd.length + 1) : path2;
|
|
180950
181077
|
}
|
|
@@ -180994,51 +181121,154 @@ function Diff({
|
|
|
180994
181121
|
}
|
|
180995
181122
|
);
|
|
180996
181123
|
}
|
|
180997
|
-
|
|
180998
|
-
|
|
181124
|
+
function Chevron({ openClass }) {
|
|
181125
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(ChevronRight, { className: cn$2("size-3.5 shrink-0 transition-transform", openClass) });
|
|
181126
|
+
}
|
|
181127
|
+
function ToolRow({
|
|
181128
|
+
tools,
|
|
181129
|
+
testId,
|
|
181130
|
+
children: children2
|
|
181131
|
+
}) {
|
|
181132
|
+
const ms = toolDuration(tools);
|
|
181133
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "group/tool-row flex max-w-full min-w-0 items-center gap-1.5 text-sm", children: [
|
|
181134
|
+
children2,
|
|
181135
|
+
ms !== void 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
181136
|
+
"span",
|
|
181137
|
+
{
|
|
181138
|
+
"data-testid": testId,
|
|
181139
|
+
className: "shrink-0 tabular-nums text-muted-foreground/70 opacity-0 transition-opacity group-hover/tool-row:opacity-100 group-has-[:focus-visible]/tool-row:opacity-100 [@media(hover:none)]:opacity-100",
|
|
181140
|
+
children: formatToolDuration(ms)
|
|
181141
|
+
}
|
|
181142
|
+
)
|
|
181143
|
+
] });
|
|
181144
|
+
}
|
|
181145
|
+
function Label$1({ label }) {
|
|
181146
|
+
const at2 = label.highlight ? label.text.indexOf(label.highlight) : -1;
|
|
181147
|
+
if (!label.highlight || at2 < 0) return /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: label.text });
|
|
181148
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
|
|
181149
|
+
label.text.slice(0, at2),
|
|
181150
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-foreground", children: label.highlight }),
|
|
181151
|
+
label.text.slice(at2 + label.highlight.length)
|
|
181152
|
+
] });
|
|
181153
|
+
}
|
|
181154
|
+
function ShellDetails({ entry, failed }) {
|
|
181155
|
+
const run2 = reactExports.useMemo(() => shellRun(entry), [entry]);
|
|
181156
|
+
if (!run2) return null;
|
|
181157
|
+
const showExit = run2.exitCode !== void 0 && (failed || run2.exitCode !== 0);
|
|
181158
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: cn$2("space-y-2 font-mono text-xs", failed && "text-red-400"), children: [
|
|
181159
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
181160
|
+
"pre",
|
|
181161
|
+
{
|
|
181162
|
+
"data-testid": "tool-call__command",
|
|
181163
|
+
className: "overflow-x-auto whitespace-pre-wrap rounded-md border border-border/40 bg-muted/30 px-3 py-2 text-foreground",
|
|
181164
|
+
children: [
|
|
181165
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "select-none text-muted-foreground", children: "$ " }),
|
|
181166
|
+
run2.command
|
|
181167
|
+
]
|
|
181168
|
+
}
|
|
181169
|
+
),
|
|
181170
|
+
showExit && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { "data-testid": "tool-call__exit-code", children: [
|
|
181171
|
+
"Exit code ",
|
|
181172
|
+
run2.exitCode
|
|
181173
|
+
] }),
|
|
181174
|
+
run2.output && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
181175
|
+
"pre",
|
|
181176
|
+
{
|
|
181177
|
+
"data-testid": "tool-call__output",
|
|
181178
|
+
className: cn$2(
|
|
181179
|
+
"max-h-80 overflow-auto whitespace-pre-wrap",
|
|
181180
|
+
!failed && "text-muted-foreground"
|
|
181181
|
+
),
|
|
181182
|
+
children: run2.output.slice(0, OUTPUT_LIMIT)
|
|
181183
|
+
}
|
|
181184
|
+
)
|
|
181185
|
+
] });
|
|
181186
|
+
}
|
|
181187
|
+
function ToolDetails({ entry, cwd }) {
|
|
180999
181188
|
const diffs = entry.content.filter((c2) => c2.type === "diff");
|
|
181000
181189
|
const texts = entry.content.flatMap(
|
|
181001
181190
|
(c2) => c2.type === "content" && c2.content.type === "text" ? [c2.content.text] : []
|
|
181002
181191
|
);
|
|
181003
|
-
const paths = [.../* @__PURE__ */ new Set([...diffs.map((d2) => d2.path), ...entry.locations.map((l4) => l4.path)])];
|
|
181004
181192
|
const prose = entry.toolKind === "switch_mode" || entry.toolKind === "think";
|
|
181005
|
-
|
|
181193
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
|
|
181194
|
+
diffs.map((d2) => /* @__PURE__ */ jsxRuntimeExports.jsx(Diff, { path: d2.path, oldText: d2.oldText, newText: d2.newText, cwd }, d2.path)),
|
|
181195
|
+
texts.map(
|
|
181196
|
+
(text2, i2) => prose ? (
|
|
181197
|
+
// biome-ignore lint/suspicious/noArrayIndexKey: content blocks have no id
|
|
181198
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MessageResponse, { children: text2 }, i2)
|
|
181199
|
+
) : (
|
|
181200
|
+
// biome-ignore lint/suspicious/noArrayIndexKey: content blocks have no id
|
|
181201
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ToolOutput, { output: text2.slice(0, 2e4), errorText: void 0 }, i2)
|
|
181202
|
+
)
|
|
181203
|
+
),
|
|
181204
|
+
diffs.length === 0 && texts.length === 0 && entry.rawInput !== void 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(ToolInput, { input: entry.rawInput }),
|
|
181205
|
+
diffs.length === 0 && texts.length === 0 && entry.rawOutput !== void 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(ToolOutput, { output: entry.rawOutput, errorText: void 0 })
|
|
181206
|
+
] });
|
|
181207
|
+
}
|
|
181208
|
+
const ToolCall = reactExports.memo(function ToolCall2({ entry, cwd }) {
|
|
181209
|
+
const state2 = toolState(entry);
|
|
181210
|
+
const failed = state2 === "error";
|
|
181211
|
+
const shell = entry.toolKind === "execute";
|
|
181212
|
+
const hasBody = shell || entry.content.some(
|
|
181213
|
+
(c2) => c2.type === "diff" || c2.type === "content" && c2.content.type === "text"
|
|
181214
|
+
) || entry.rawInput !== void 0 || entry.rawOutput !== void 0;
|
|
181006
181215
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
181007
181216
|
Collapsible,
|
|
181008
181217
|
{
|
|
181009
181218
|
"data-testid": "tool-call__container",
|
|
181010
|
-
"data-status":
|
|
181011
|
-
className: "group not-prose w-full
|
|
181219
|
+
"data-status": state2,
|
|
181220
|
+
className: "group/tool-call not-prose w-full min-w-0",
|
|
181012
181221
|
children: [
|
|
181013
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
181222
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ToolRow, { tools: [entry], testId: "tool-call__duration", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
181014
181223
|
CollapsibleTrigger,
|
|
181015
181224
|
{
|
|
181016
|
-
className:
|
|
181225
|
+
className: cn$2(
|
|
181226
|
+
"flex min-w-0 items-center gap-1.5 text-left",
|
|
181227
|
+
failed ? "text-red-400" : "text-muted-foreground",
|
|
181228
|
+
hasBody && (failed ? "hover:text-red-300" : "hover:text-foreground")
|
|
181229
|
+
),
|
|
181017
181230
|
disabled: !hasBody,
|
|
181018
181231
|
children: [
|
|
181019
|
-
/* @__PURE__ */ jsxRuntimeExports.
|
|
181020
|
-
|
|
181021
|
-
|
|
181022
|
-
|
|
181023
|
-
|
|
181024
|
-
|
|
181232
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
181233
|
+
"span",
|
|
181234
|
+
{
|
|
181235
|
+
"data-testid": "tool-call__label",
|
|
181236
|
+
className: cn$2("truncate", state2 === "in-progress" && "tool-shimmer"),
|
|
181237
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(Label$1, { label: describeTool(entry) })
|
|
181238
|
+
}
|
|
181239
|
+
),
|
|
181240
|
+
hasBody && /* @__PURE__ */ jsxRuntimeExports.jsx(Chevron, { openClass: "group-data-[state=open]/tool-call:rotate-90" })
|
|
181025
181241
|
]
|
|
181026
181242
|
}
|
|
181027
|
-
),
|
|
181028
|
-
/* @__PURE__ */ jsxRuntimeExports.
|
|
181029
|
-
|
|
181030
|
-
|
|
181031
|
-
|
|
181032
|
-
|
|
181033
|
-
|
|
181034
|
-
|
|
181035
|
-
|
|
181036
|
-
|
|
181037
|
-
|
|
181038
|
-
|
|
181039
|
-
|
|
181040
|
-
|
|
181041
|
-
|
|
181243
|
+
) }),
|
|
181244
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(CollapsibleContent, { className: "mt-2 space-y-3 text-popover-foreground", children: shell ? /* @__PURE__ */ jsxRuntimeExports.jsx(ShellDetails, { entry, failed }) : /* @__PURE__ */ jsxRuntimeExports.jsx(ToolDetails, { entry, cwd }) })
|
|
181245
|
+
]
|
|
181246
|
+
}
|
|
181247
|
+
);
|
|
181248
|
+
});
|
|
181249
|
+
const ToolGroup = reactExports.memo(function ToolGroup2({
|
|
181250
|
+
tools,
|
|
181251
|
+
children: children2
|
|
181252
|
+
}) {
|
|
181253
|
+
const running = tools.some((t2) => toolState(t2) === "in-progress");
|
|
181254
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
181255
|
+
Collapsible,
|
|
181256
|
+
{
|
|
181257
|
+
"data-testid": "tool-group__container",
|
|
181258
|
+
className: "group/tool-group not-prose w-full min-w-0",
|
|
181259
|
+
children: [
|
|
181260
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ToolRow, { tools, testId: "tool-group__duration", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
181261
|
+
CollapsibleTrigger,
|
|
181262
|
+
{
|
|
181263
|
+
"data-testid": "tool-group__summary",
|
|
181264
|
+
className: "flex min-w-0 items-center gap-1.5 text-left text-muted-foreground hover:text-foreground",
|
|
181265
|
+
children: [
|
|
181266
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: cn$2("truncate", running && "tool-shimmer"), children: summarizeTools(tools) }),
|
|
181267
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Chevron, { openClass: "group-data-[state=open]/tool-group:rotate-90" })
|
|
181268
|
+
]
|
|
181269
|
+
}
|
|
181270
|
+
) }),
|
|
181271
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(CollapsibleContent, { className: "mt-2 divide-y divide-border/40 overflow-hidden rounded-lg border border-border/40 [&>*]:px-3 [&>*]:py-2", children: children2 })
|
|
181042
181272
|
]
|
|
181043
181273
|
}
|
|
181044
181274
|
);
|
|
@@ -181104,6 +181334,342 @@ function withResolvedDefaults(models, currentModel, effort, resolved) {
|
|
|
181104
181334
|
effortLabel: effort.currentValue === DEFAULT_ID ? levelName ?? "Default" : void 0
|
|
181105
181335
|
};
|
|
181106
181336
|
}
|
|
181337
|
+
const UNITS = [
|
|
181338
|
+
["year", 365 * 24 * 3600],
|
|
181339
|
+
["month", 30 * 24 * 3600],
|
|
181340
|
+
["week", 7 * 24 * 3600],
|
|
181341
|
+
["day", 24 * 3600],
|
|
181342
|
+
["hour", 3600],
|
|
181343
|
+
["minute", 60]
|
|
181344
|
+
];
|
|
181345
|
+
const relative = new Intl.RelativeTimeFormat(void 0, { numeric: "always" });
|
|
181346
|
+
function timeAgo(ms, now2) {
|
|
181347
|
+
const seconds = Math.max(0, Math.round((now2 - ms) / 1e3));
|
|
181348
|
+
for (const [unit2, size2] of UNITS) {
|
|
181349
|
+
if (seconds >= size2) return relative.format(-Math.floor(seconds / size2), unit2);
|
|
181350
|
+
}
|
|
181351
|
+
return "just now";
|
|
181352
|
+
}
|
|
181353
|
+
const TICK_MS = 3e4;
|
|
181354
|
+
let clockNow = Date.now();
|
|
181355
|
+
const listeners$1 = /* @__PURE__ */ new Set();
|
|
181356
|
+
let clockTimer;
|
|
181357
|
+
function subscribe(listener2) {
|
|
181358
|
+
listeners$1.add(listener2);
|
|
181359
|
+
if (clockTimer === void 0) {
|
|
181360
|
+
clockNow = Date.now();
|
|
181361
|
+
clockTimer = window.setInterval(() => {
|
|
181362
|
+
clockNow = Date.now();
|
|
181363
|
+
for (const l4 of listeners$1) l4();
|
|
181364
|
+
}, TICK_MS);
|
|
181365
|
+
}
|
|
181366
|
+
return () => {
|
|
181367
|
+
listeners$1.delete(listener2);
|
|
181368
|
+
if (listeners$1.size === 0) {
|
|
181369
|
+
window.clearInterval(clockTimer);
|
|
181370
|
+
clockTimer = void 0;
|
|
181371
|
+
}
|
|
181372
|
+
};
|
|
181373
|
+
}
|
|
181374
|
+
function useNow() {
|
|
181375
|
+
return reactExports.useSyncExternalStore(
|
|
181376
|
+
subscribe,
|
|
181377
|
+
() => clockNow,
|
|
181378
|
+
() => clockNow
|
|
181379
|
+
);
|
|
181380
|
+
}
|
|
181381
|
+
function MessageActions({
|
|
181382
|
+
text: text2,
|
|
181383
|
+
createdAt,
|
|
181384
|
+
align
|
|
181385
|
+
}) {
|
|
181386
|
+
const [copied, setCopied] = reactExports.useState(false);
|
|
181387
|
+
const now2 = useNow();
|
|
181388
|
+
reactExports.useEffect(() => {
|
|
181389
|
+
if (!copied) return;
|
|
181390
|
+
const timer2 = window.setTimeout(() => setCopied(false), 1500);
|
|
181391
|
+
return () => window.clearTimeout(timer2);
|
|
181392
|
+
}, [copied]);
|
|
181393
|
+
if (!text2 && createdAt === void 0) return null;
|
|
181394
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
181395
|
+
"div",
|
|
181396
|
+
{
|
|
181397
|
+
"data-testid": "message-actions",
|
|
181398
|
+
className: cn$2(
|
|
181399
|
+
"flex items-center gap-2 text-xs text-muted-foreground opacity-0 transition-opacity",
|
|
181400
|
+
"group-hover:opacity-100 focus-within:opacity-100 [@media(hover:none)]:opacity-100",
|
|
181401
|
+
align === "end" && "justify-end"
|
|
181402
|
+
),
|
|
181403
|
+
children: [
|
|
181404
|
+
text2 && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
181405
|
+
"button",
|
|
181406
|
+
{
|
|
181407
|
+
type: "button",
|
|
181408
|
+
"aria-label": copied ? "Copied" : "Copy message",
|
|
181409
|
+
onClick: () => {
|
|
181410
|
+
void writeClipboardText(text2).then((ok2) => setCopied(ok2));
|
|
181411
|
+
},
|
|
181412
|
+
className: "rounded p-1 hover:bg-accent hover:text-foreground",
|
|
181413
|
+
children: copied ? /* @__PURE__ */ jsxRuntimeExports.jsx(Check, { className: "size-3.5" }) : /* @__PURE__ */ jsxRuntimeExports.jsx(Copy, { className: "size-3.5" })
|
|
181414
|
+
}
|
|
181415
|
+
),
|
|
181416
|
+
createdAt !== void 0 && /* @__PURE__ */ jsxRuntimeExports.jsxs(Tooltip$1, { children: [
|
|
181417
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntimeExports.jsx("time", { "data-testid": "message-actions__time", dateTime: new Date(createdAt).toISOString(), children: timeAgo(createdAt, now2) }) }),
|
|
181418
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(TooltipContent, { children: new Date(createdAt).toLocaleString() })
|
|
181419
|
+
] })
|
|
181420
|
+
]
|
|
181421
|
+
}
|
|
181422
|
+
);
|
|
181423
|
+
}
|
|
181424
|
+
const CHAT_FIND_TEXT_ATTR = "data-chat-find-text";
|
|
181425
|
+
const DEFAULT_OPTIONS = { caseSensitive: false, wholeWord: false, regex: false };
|
|
181426
|
+
function buildFindRegex(query, options) {
|
|
181427
|
+
if (!query) return null;
|
|
181428
|
+
let source = options.regex ? query : query.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
181429
|
+
if (options.wholeWord) source = `\\b(?:${source})\\b`;
|
|
181430
|
+
try {
|
|
181431
|
+
return new RegExp(source, options.caseSensitive ? "g" : "gi");
|
|
181432
|
+
} catch {
|
|
181433
|
+
return null;
|
|
181434
|
+
}
|
|
181435
|
+
}
|
|
181436
|
+
function matchSpans(text2, re2) {
|
|
181437
|
+
const spans = [];
|
|
181438
|
+
re2.lastIndex = 0;
|
|
181439
|
+
for (let m2 = re2.exec(text2); m2; m2 = re2.exec(text2)) {
|
|
181440
|
+
if (m2[0] === "") {
|
|
181441
|
+
re2.lastIndex += 1;
|
|
181442
|
+
continue;
|
|
181443
|
+
}
|
|
181444
|
+
spans.push([m2.index, m2.index + m2[0].length]);
|
|
181445
|
+
}
|
|
181446
|
+
return spans;
|
|
181447
|
+
}
|
|
181448
|
+
function messageFindText(message) {
|
|
181449
|
+
if (message.role === "user") return message.text;
|
|
181450
|
+
return message.entries.flatMap((e3) => e3.kind === "text" ? [e3.text] : []).join("\n");
|
|
181451
|
+
}
|
|
181452
|
+
function rangesInRow(row2, re2) {
|
|
181453
|
+
const ranges = [];
|
|
181454
|
+
for (const scope of row2.querySelectorAll(`[${CHAT_FIND_TEXT_ATTR}]`)) {
|
|
181455
|
+
const walker = document.createTreeWalker(scope, NodeFilter.SHOW_TEXT);
|
|
181456
|
+
const nodes = [];
|
|
181457
|
+
const starts = [];
|
|
181458
|
+
let text2 = "";
|
|
181459
|
+
for (let node2 = walker.nextNode(); node2; node2 = walker.nextNode()) {
|
|
181460
|
+
nodes.push(node2);
|
|
181461
|
+
starts.push(text2.length);
|
|
181462
|
+
text2 += node2.data;
|
|
181463
|
+
}
|
|
181464
|
+
let cursor = 0;
|
|
181465
|
+
const locate = (offset2, end) => {
|
|
181466
|
+
while (cursor < nodes.length - 1 && (end ? starts[cursor + 1] < offset2 : starts[cursor + 1] <= offset2)) {
|
|
181467
|
+
cursor += 1;
|
|
181468
|
+
}
|
|
181469
|
+
return [nodes[cursor], offset2 - starts[cursor]];
|
|
181470
|
+
};
|
|
181471
|
+
for (const [start2, end] of matchSpans(text2, re2)) {
|
|
181472
|
+
const range2 = document.createRange();
|
|
181473
|
+
range2.setStart(...locate(start2, false));
|
|
181474
|
+
range2.setEnd(...locate(end, true));
|
|
181475
|
+
ranges.push(range2);
|
|
181476
|
+
}
|
|
181477
|
+
}
|
|
181478
|
+
return ranges;
|
|
181479
|
+
}
|
|
181480
|
+
const paneRanges = /* @__PURE__ */ new Map();
|
|
181481
|
+
function paintHighlights() {
|
|
181482
|
+
if (typeof CSS === "undefined" || !("highlights" in CSS)) return;
|
|
181483
|
+
const all2 = [];
|
|
181484
|
+
const current2 = [];
|
|
181485
|
+
for (const pane of paneRanges.values()) {
|
|
181486
|
+
all2.push(...pane.all);
|
|
181487
|
+
if (pane.current) current2.push(pane.current);
|
|
181488
|
+
}
|
|
181489
|
+
CSS.highlights.set("chat-find", new Highlight(...all2));
|
|
181490
|
+
CSS.highlights.set("chat-find-current", new Highlight(...current2));
|
|
181491
|
+
}
|
|
181492
|
+
function useChatFind({
|
|
181493
|
+
messages,
|
|
181494
|
+
scrollEl,
|
|
181495
|
+
listRef,
|
|
181496
|
+
onBeforeScroll,
|
|
181497
|
+
onClose
|
|
181498
|
+
}) {
|
|
181499
|
+
const paneId = reactExports.useId();
|
|
181500
|
+
const [isOpen, setIsOpen] = reactExports.useState(false);
|
|
181501
|
+
const [query, setQuery] = reactExports.useState("");
|
|
181502
|
+
const [options, setOptions] = reactExports.useState(DEFAULT_OPTIONS);
|
|
181503
|
+
const [current2, setCurrent] = reactExports.useState(null);
|
|
181504
|
+
const searchBarRef = reactExports.useRef(null);
|
|
181505
|
+
const revealRef = reactExports.useRef(false);
|
|
181506
|
+
const regex2 = reactExports.useMemo(
|
|
181507
|
+
() => isOpen ? buildFindRegex(query, options) : null,
|
|
181508
|
+
[isOpen, query, options]
|
|
181509
|
+
);
|
|
181510
|
+
const countCache = reactExports.useRef(/* @__PURE__ */ new WeakMap());
|
|
181511
|
+
const matches2 = reactExports.useMemo(() => {
|
|
181512
|
+
const out = [];
|
|
181513
|
+
if (!regex2) return out;
|
|
181514
|
+
messages.forEach((message, messageIndex) => {
|
|
181515
|
+
let cached = countCache.current.get(message);
|
|
181516
|
+
if (cached?.re !== regex2) {
|
|
181517
|
+
cached = { re: regex2, count: matchSpans(messageFindText(message), regex2).length };
|
|
181518
|
+
countCache.current.set(message, cached);
|
|
181519
|
+
}
|
|
181520
|
+
for (let occurrence = 0; occurrence < cached.count; occurrence++) {
|
|
181521
|
+
out.push({ messageIndex, messageId: message.id, occurrence });
|
|
181522
|
+
}
|
|
181523
|
+
});
|
|
181524
|
+
return out;
|
|
181525
|
+
}, [messages, regex2]);
|
|
181526
|
+
const matchesRef = reactExports.useRef(matches2);
|
|
181527
|
+
matchesRef.current = matches2;
|
|
181528
|
+
reactExports.useEffect(() => {
|
|
181529
|
+
if (!regex2) return;
|
|
181530
|
+
const found = matchesRef.current;
|
|
181531
|
+
let firstVisible = Number.POSITIVE_INFINITY;
|
|
181532
|
+
if (scrollEl) {
|
|
181533
|
+
const top2 = scrollEl.getBoundingClientRect().top;
|
|
181534
|
+
for (const row2 of scrollEl.querySelectorAll("[data-index]")) {
|
|
181535
|
+
if (row2.getBoundingClientRect().bottom > top2) {
|
|
181536
|
+
firstVisible = Math.min(firstVisible, Number(row2.dataset.index));
|
|
181537
|
+
}
|
|
181538
|
+
}
|
|
181539
|
+
}
|
|
181540
|
+
const next2 = found.findIndex((m2) => m2.messageIndex >= firstVisible);
|
|
181541
|
+
const start2 = found[next2 === -1 ? found.length - 1 : next2];
|
|
181542
|
+
setCurrent(start2 ? { messageId: start2.messageId, occurrence: start2.occurrence } : null);
|
|
181543
|
+
revealRef.current = true;
|
|
181544
|
+
}, [regex2, scrollEl]);
|
|
181545
|
+
const lastIndexRef = reactExports.useRef(0);
|
|
181546
|
+
const currentIndex = reactExports.useMemo(() => {
|
|
181547
|
+
if (matches2.length === 0) return -1;
|
|
181548
|
+
const found = current2 ? matches2.findIndex(
|
|
181549
|
+
(m2) => m2.messageId === current2.messageId && m2.occurrence === current2.occurrence
|
|
181550
|
+
) : -1;
|
|
181551
|
+
return found !== -1 ? found : Math.min(lastIndexRef.current, matches2.length - 1);
|
|
181552
|
+
}, [matches2, current2]);
|
|
181553
|
+
lastIndexRef.current = Math.max(0, currentIndex);
|
|
181554
|
+
const currentMatch = currentIndex === -1 ? void 0 : matches2[currentIndex];
|
|
181555
|
+
const currentMatchRef = reactExports.useRef(currentMatch);
|
|
181556
|
+
currentMatchRef.current = currentMatch;
|
|
181557
|
+
const currentKey = currentMatch ? `${currentMatch.messageId}:${currentMatch.occurrence}` : "";
|
|
181558
|
+
const repaint = reactExports.useCallback(() => {
|
|
181559
|
+
if (!regex2 || !scrollEl) {
|
|
181560
|
+
paneRanges.delete(paneId);
|
|
181561
|
+
paintHighlights();
|
|
181562
|
+
return;
|
|
181563
|
+
}
|
|
181564
|
+
const currentMatch2 = currentMatchRef.current;
|
|
181565
|
+
const all2 = [];
|
|
181566
|
+
let currentRange = null;
|
|
181567
|
+
let targetMounted = false;
|
|
181568
|
+
for (const row2 of scrollEl.querySelectorAll("[data-index]")) {
|
|
181569
|
+
const ranges = rangesInRow(row2, regex2);
|
|
181570
|
+
all2.push(...ranges);
|
|
181571
|
+
if (currentMatch2 && Number(row2.dataset.index) === currentMatch2.messageIndex) {
|
|
181572
|
+
targetMounted = true;
|
|
181573
|
+
currentRange = ranges[Math.min(currentMatch2.occurrence, ranges.length - 1)] ?? null;
|
|
181574
|
+
}
|
|
181575
|
+
}
|
|
181576
|
+
paneRanges.set(paneId, { all: all2, current: currentRange });
|
|
181577
|
+
paintHighlights();
|
|
181578
|
+
if (!revealRef.current || !currentMatch2) return;
|
|
181579
|
+
if (!targetMounted) {
|
|
181580
|
+
onBeforeScroll?.();
|
|
181581
|
+
listRef.current?.scrollToIndex(currentMatch2.messageIndex);
|
|
181582
|
+
return;
|
|
181583
|
+
}
|
|
181584
|
+
revealRef.current = false;
|
|
181585
|
+
if (!currentRange) return;
|
|
181586
|
+
const box = currentRange.getBoundingClientRect();
|
|
181587
|
+
const view = scrollEl.getBoundingClientRect();
|
|
181588
|
+
if (box.top < view.top || box.bottom > view.bottom) {
|
|
181589
|
+
onBeforeScroll?.();
|
|
181590
|
+
scrollEl.scrollTop += box.top - view.top - view.height / 2;
|
|
181591
|
+
}
|
|
181592
|
+
}, [regex2, scrollEl, paneId, listRef, onBeforeScroll]);
|
|
181593
|
+
reactExports.useEffect(() => {
|
|
181594
|
+
const raf = requestAnimationFrame(repaint);
|
|
181595
|
+
return () => cancelAnimationFrame(raf);
|
|
181596
|
+
}, [currentKey, repaint]);
|
|
181597
|
+
reactExports.useEffect(() => {
|
|
181598
|
+
let raf = requestAnimationFrame(repaint);
|
|
181599
|
+
if (!regex2 || !scrollEl) return () => cancelAnimationFrame(raf);
|
|
181600
|
+
const schedule2 = () => {
|
|
181601
|
+
cancelAnimationFrame(raf);
|
|
181602
|
+
raf = requestAnimationFrame(repaint);
|
|
181603
|
+
};
|
|
181604
|
+
const observer = new MutationObserver(schedule2);
|
|
181605
|
+
observer.observe(scrollEl, { childList: true, subtree: true, characterData: true });
|
|
181606
|
+
scrollEl.addEventListener("scroll", schedule2, { passive: true });
|
|
181607
|
+
return () => {
|
|
181608
|
+
cancelAnimationFrame(raf);
|
|
181609
|
+
observer.disconnect();
|
|
181610
|
+
scrollEl.removeEventListener("scroll", schedule2);
|
|
181611
|
+
};
|
|
181612
|
+
}, [repaint, regex2, scrollEl]);
|
|
181613
|
+
reactExports.useEffect(
|
|
181614
|
+
() => () => {
|
|
181615
|
+
paneRanges.delete(paneId);
|
|
181616
|
+
paintHighlights();
|
|
181617
|
+
},
|
|
181618
|
+
[paneId]
|
|
181619
|
+
);
|
|
181620
|
+
const open2 = reactExports.useCallback(() => {
|
|
181621
|
+
setIsOpen(true);
|
|
181622
|
+
requestAnimationFrame(() => {
|
|
181623
|
+
searchBarRef.current?.focus();
|
|
181624
|
+
searchBarRef.current?.select();
|
|
181625
|
+
});
|
|
181626
|
+
}, []);
|
|
181627
|
+
const close2 = reactExports.useCallback(() => {
|
|
181628
|
+
setIsOpen(false);
|
|
181629
|
+
onClose?.();
|
|
181630
|
+
}, [onClose]);
|
|
181631
|
+
const step = reactExports.useCallback(
|
|
181632
|
+
(delta) => {
|
|
181633
|
+
const found = matchesRef.current;
|
|
181634
|
+
if (found.length === 0) return;
|
|
181635
|
+
const next2 = found[(lastIndexRef.current + delta + found.length) % found.length];
|
|
181636
|
+
setCurrent({ messageId: next2.messageId, occurrence: next2.occurrence });
|
|
181637
|
+
revealRef.current = true;
|
|
181638
|
+
requestAnimationFrame(repaint);
|
|
181639
|
+
},
|
|
181640
|
+
[repaint]
|
|
181641
|
+
);
|
|
181642
|
+
const findNext = reactExports.useCallback(() => step(1), [step]);
|
|
181643
|
+
const findPrevious = reactExports.useCallback(() => step(-1), [step]);
|
|
181644
|
+
const onKeyDown = reactExports.useCallback(
|
|
181645
|
+
(e3) => {
|
|
181646
|
+
if (e3.key.toLowerCase() !== "f" || e3.shiftKey || e3.altKey) return;
|
|
181647
|
+
const mod = isMacPlatform() ? e3.metaKey && !e3.ctrlKey : e3.ctrlKey && !e3.metaKey;
|
|
181648
|
+
if (!mod) return;
|
|
181649
|
+
e3.preventDefault();
|
|
181650
|
+
e3.stopPropagation();
|
|
181651
|
+
open2();
|
|
181652
|
+
},
|
|
181653
|
+
[open2]
|
|
181654
|
+
);
|
|
181655
|
+
return {
|
|
181656
|
+
isOpen,
|
|
181657
|
+
open: open2,
|
|
181658
|
+
close: close2,
|
|
181659
|
+
query,
|
|
181660
|
+
setQuery,
|
|
181661
|
+
options,
|
|
181662
|
+
setOptions,
|
|
181663
|
+
matchInfo: regex2 ? {
|
|
181664
|
+
total: matches2.length,
|
|
181665
|
+
current: currentIndex + 1
|
|
181666
|
+
} : query ? { total: 0, current: 0 } : void 0,
|
|
181667
|
+
findNext,
|
|
181668
|
+
findPrevious,
|
|
181669
|
+
searchBarRef,
|
|
181670
|
+
onKeyDown
|
|
181671
|
+
};
|
|
181672
|
+
}
|
|
181107
181673
|
const CHAT_EVENT_TYPES = [
|
|
181108
181674
|
"update",
|
|
181109
181675
|
"prompt",
|
|
@@ -181184,7 +181750,8 @@ function mapEntries(messages, change2, scope = "all") {
|
|
|
181184
181750
|
});
|
|
181185
181751
|
return changed2 ? next2 : messages;
|
|
181186
181752
|
}
|
|
181187
|
-
|
|
181753
|
+
const finished = (status) => status === "completed" || status === "failed";
|
|
181754
|
+
function applyUpdate(state2, update, eventId, createdAt) {
|
|
181188
181755
|
switch (update.sessionUpdate) {
|
|
181189
181756
|
case "agent_message_chunk":
|
|
181190
181757
|
case "agent_thought_chunk": {
|
|
@@ -181216,6 +181783,11 @@ function applyUpdate(state2, update, eventId) {
|
|
|
181216
181783
|
};
|
|
181217
181784
|
}
|
|
181218
181785
|
case "tool_call": {
|
|
181786
|
+
const at2 = findTool(state2.messages, update.toolCallId);
|
|
181787
|
+
const message = at2 ? state2.messages[at2[0]] : void 0;
|
|
181788
|
+
const prev2 = at2 && message?.role === "assistant" ? message.entries[at2[1]] : void 0;
|
|
181789
|
+
const existing = prev2?.kind === "tool" ? prev2 : void 0;
|
|
181790
|
+
const startedAt = existing?.startedAt ?? createdAt;
|
|
181219
181791
|
const entry = {
|
|
181220
181792
|
kind: "tool",
|
|
181221
181793
|
id: update.toolCallId,
|
|
@@ -181226,9 +181798,10 @@ function applyUpdate(state2, update, eventId) {
|
|
|
181226
181798
|
content: update.content ?? [],
|
|
181227
181799
|
locations: update.locations ?? [],
|
|
181228
181800
|
rawInput: update.rawInput,
|
|
181229
|
-
rawOutput: update.rawOutput
|
|
181801
|
+
rawOutput: update.rawOutput,
|
|
181802
|
+
startedAt,
|
|
181803
|
+
endedAt: finished(update.status) ? existing?.endedAt ?? createdAt : void 0
|
|
181230
181804
|
};
|
|
181231
|
-
const at2 = findTool(state2.messages, update.toolCallId);
|
|
181232
181805
|
if (at2) {
|
|
181233
181806
|
return {
|
|
181234
181807
|
...state2,
|
|
@@ -181251,7 +181824,8 @@ function applyUpdate(state2, update, eventId) {
|
|
|
181251
181824
|
sessionUpdate: "tool_call",
|
|
181252
181825
|
title: update.title ?? update.name ?? "Tool call"
|
|
181253
181826
|
},
|
|
181254
|
-
eventId
|
|
181827
|
+
eventId,
|
|
181828
|
+
createdAt
|
|
181255
181829
|
);
|
|
181256
181830
|
}
|
|
181257
181831
|
return {
|
|
@@ -181269,7 +181843,8 @@ function applyUpdate(state2, update, eventId) {
|
|
|
181269
181843
|
content: update.content ?? e3.content,
|
|
181270
181844
|
locations: update.locations ?? e3.locations,
|
|
181271
181845
|
rawInput: update.rawInput !== void 0 ? update.rawInput : e3.rawInput,
|
|
181272
|
-
rawOutput: update.rawOutput !== void 0 ? update.rawOutput : e3.rawOutput
|
|
181846
|
+
rawOutput: update.rawOutput !== void 0 ? update.rawOutput : e3.rawOutput,
|
|
181847
|
+
endedAt: e3.endedAt ?? (finished(update.status) ? createdAt : void 0)
|
|
181273
181848
|
} : e3
|
|
181274
181849
|
)
|
|
181275
181850
|
)
|
|
@@ -181292,9 +181867,9 @@ function applyUpdate(state2, update, eventId) {
|
|
|
181292
181867
|
} : state2;
|
|
181293
181868
|
case "usage_update": {
|
|
181294
181869
|
if (!state2.session) return state2;
|
|
181295
|
-
const
|
|
181296
|
-
const
|
|
181297
|
-
return { ...state2, session: { ...state2.session, usage
|
|
181870
|
+
const cost = update.cost ?? state2.session.usage?.cost ?? null;
|
|
181871
|
+
const usage = { used: update.used, size: update.size, cost };
|
|
181872
|
+
return { ...state2, session: { ...state2.session, usage } };
|
|
181298
181873
|
}
|
|
181299
181874
|
case "session_info_update":
|
|
181300
181875
|
return state2.session && update.title !== void 0 ? { ...state2, session: { ...state2.session, title: update.title ?? null } } : state2;
|
|
@@ -181312,7 +181887,7 @@ function applyUpdate(state2, update, eventId) {
|
|
|
181312
181887
|
return state2;
|
|
181313
181888
|
}
|
|
181314
181889
|
}
|
|
181315
|
-
function settle(messages, failed) {
|
|
181890
|
+
function settle(messages, failed, endedAt) {
|
|
181316
181891
|
return mapEntries(
|
|
181317
181892
|
messages,
|
|
181318
181893
|
(e3) => {
|
|
@@ -181320,7 +181895,7 @@ function settle(messages, failed) {
|
|
|
181320
181895
|
return { ...e3, answer: "cancelled" };
|
|
181321
181896
|
}
|
|
181322
181897
|
if (failed && e3.kind === "tool" && (e3.status === "pending" || e3.status === "in_progress")) {
|
|
181323
|
-
return { ...e3, status: "failed" };
|
|
181898
|
+
return { ...e3, status: "failed", endedAt: e3.endedAt ?? endedAt };
|
|
181324
181899
|
}
|
|
181325
181900
|
return e3;
|
|
181326
181901
|
},
|
|
@@ -181340,7 +181915,14 @@ function transcriptReducer(state2, action) {
|
|
|
181340
181915
|
...state2,
|
|
181341
181916
|
messages: [
|
|
181342
181917
|
...state2.messages,
|
|
181343
|
-
{
|
|
181918
|
+
{
|
|
181919
|
+
role: "user",
|
|
181920
|
+
id: action.id,
|
|
181921
|
+
text: action.text,
|
|
181922
|
+
files: action.files,
|
|
181923
|
+
pending: true,
|
|
181924
|
+
...action.createdAt !== void 0 && { createdAt: action.createdAt }
|
|
181925
|
+
}
|
|
181344
181926
|
],
|
|
181345
181927
|
status: "submitting",
|
|
181346
181928
|
taskRunning: true,
|
|
@@ -181396,13 +181978,23 @@ function transcriptReducer(state2, action) {
|
|
|
181396
181978
|
return state2;
|
|
181397
181979
|
}
|
|
181398
181980
|
const lastEventId = action.eventId > 0 ? Math.max(state2.lastEventId ?? 0, action.eventId) : state2.lastEventId;
|
|
181399
|
-
const next2 = applyLogged(state2, action);
|
|
181981
|
+
const next2 = stampNew(state2.messages, applyLogged(state2, action), action.createdAt);
|
|
181400
181982
|
return next2 === state2 && lastEventId === state2.lastEventId ? state2 : { ...next2, lastEventId };
|
|
181401
181983
|
}
|
|
181984
|
+
function stampNew(before, state2, createdAt) {
|
|
181985
|
+
if (createdAt === void 0 || state2.messages === before) return state2;
|
|
181986
|
+
let messages = state2.messages;
|
|
181987
|
+
for (let i2 = before.length; i2 < messages.length; i2++) {
|
|
181988
|
+
if (messages[i2].createdAt !== void 0) continue;
|
|
181989
|
+
if (messages === state2.messages) messages = messages.slice();
|
|
181990
|
+
messages[i2] = { ...messages[i2], createdAt };
|
|
181991
|
+
}
|
|
181992
|
+
return messages === state2.messages ? state2 : { ...state2, messages };
|
|
181993
|
+
}
|
|
181402
181994
|
function applyLogged(state2, event) {
|
|
181403
181995
|
switch (event.type) {
|
|
181404
181996
|
case "update":
|
|
181405
|
-
return applyUpdate(state2, event.update, event.eventId);
|
|
181997
|
+
return applyUpdate(state2, event.update, event.eventId, event.createdAt);
|
|
181406
181998
|
case "prompt": {
|
|
181407
181999
|
const pending2 = state2.messages.findIndex(
|
|
181408
182000
|
(m2) => m2.role === "user" && m2.pending && m2.text === event.text
|
|
@@ -181411,7 +182003,12 @@ function applyLogged(state2, event) {
|
|
|
181411
182003
|
const messages = state2.messages.slice();
|
|
181412
182004
|
const m2 = messages[pending2];
|
|
181413
182005
|
if (m2.role === "user")
|
|
181414
|
-
messages[pending2] = {
|
|
182006
|
+
messages[pending2] = {
|
|
182007
|
+
...m2,
|
|
182008
|
+
files: event.files ?? m2.files,
|
|
182009
|
+
pending: false,
|
|
182010
|
+
createdAt: event.createdAt ?? m2.createdAt
|
|
182011
|
+
};
|
|
181415
182012
|
return { ...state2, messages };
|
|
181416
182013
|
}
|
|
181417
182014
|
return {
|
|
@@ -181432,7 +182029,7 @@ function applyLogged(state2, event) {
|
|
|
181432
182029
|
};
|
|
181433
182030
|
case "turn-ended": {
|
|
181434
182031
|
const failed = event.error !== void 0 || event.stopReason === "cancelled";
|
|
181435
|
-
let messages = settle(state2.messages, failed);
|
|
182032
|
+
let messages = settle(state2.messages, failed, event.createdAt);
|
|
181436
182033
|
const notice = event.error ? { level: "error", text: event.error } : event.stopReason ? STOP_NOTICES[event.stopReason] : void 0;
|
|
181437
182034
|
if (notice) {
|
|
181438
182035
|
messages = addEntry(messages, event.eventId, {
|
|
@@ -181441,15 +182038,13 @@ function applyLogged(state2, event) {
|
|
|
181441
182038
|
...notice
|
|
181442
182039
|
});
|
|
181443
182040
|
}
|
|
181444
|
-
const cost = event.usage?.costUsd;
|
|
181445
182041
|
return {
|
|
181446
182042
|
...state2,
|
|
181447
182043
|
messages,
|
|
181448
182044
|
taskRunning: false,
|
|
181449
182045
|
pendingSend: false,
|
|
181450
182046
|
status: event.error ? "error" : "idle",
|
|
181451
|
-
errorMessage: event.error
|
|
181452
|
-
session: state2.session && cost !== void 0 ? { ...state2.session, costUsd: cost } : state2.session
|
|
182047
|
+
errorMessage: event.error
|
|
181453
182048
|
};
|
|
181454
182049
|
}
|
|
181455
182050
|
case "permission":
|
|
@@ -181488,7 +182083,6 @@ function applyLogged(state2, event) {
|
|
|
181488
182083
|
source: "live",
|
|
181489
182084
|
commands: [],
|
|
181490
182085
|
usage: null,
|
|
181491
|
-
costUsd: null,
|
|
181492
182086
|
title: null
|
|
181493
182087
|
},
|
|
181494
182088
|
source: "live",
|
|
@@ -181652,7 +182246,13 @@ function useChatSubscription(opts) {
|
|
|
181652
182246
|
const wireFiles = files && files.length > 0 ? await Promise.all(files.map(fileToWirePart)) : void 0;
|
|
181653
182247
|
const willQueue = busyRef.current;
|
|
181654
182248
|
if (!willQueue) {
|
|
181655
|
-
dispatch2({
|
|
182249
|
+
dispatch2({
|
|
182250
|
+
type: "local-send",
|
|
182251
|
+
id: `pending-${++localId}`,
|
|
182252
|
+
text: text2,
|
|
182253
|
+
files: wireFiles,
|
|
182254
|
+
createdAt: Date.now()
|
|
182255
|
+
});
|
|
181656
182256
|
}
|
|
181657
182257
|
const res = await fetch(`/api/chats/${encodeURIComponent(chatId)}/messages`, {
|
|
181658
182258
|
method: "POST",
|
|
@@ -183150,7 +183750,8 @@ function VirtualizedMessageList({
|
|
|
183150
183750
|
getKey,
|
|
183151
183751
|
renderItem,
|
|
183152
183752
|
estimateSize = 220,
|
|
183153
|
-
overscan = 5
|
|
183753
|
+
overscan = 5,
|
|
183754
|
+
listRef
|
|
183154
183755
|
}) {
|
|
183155
183756
|
const { scrollRef, scrollToBottom } = useStickToBottomContext();
|
|
183156
183757
|
const [revealed, setRevealed] = reactExports.useState(false);
|
|
@@ -183213,6 +183814,11 @@ function VirtualizedMessageList({
|
|
|
183213
183814
|
virtualizer.scrollToIndex(newIndex, { align: "start" });
|
|
183214
183815
|
}
|
|
183215
183816
|
}, [items]);
|
|
183817
|
+
reactExports.useImperativeHandle(
|
|
183818
|
+
listRef,
|
|
183819
|
+
() => ({ scrollToIndex: (index2) => virtualizer.scrollToIndex(index2, { align: "center" }) }),
|
|
183820
|
+
[virtualizer]
|
|
183821
|
+
);
|
|
183216
183822
|
const virtualItems = virtualizer.getVirtualItems();
|
|
183217
183823
|
const totalSize = virtualizer.getTotalSize();
|
|
183218
183824
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
@@ -183383,7 +183989,6 @@ function ChatView({
|
|
|
183383
183989
|
}) {
|
|
183384
183990
|
const [initialSessionCleared, setInitialSessionCleared] = reactExports.useState(false);
|
|
183385
183991
|
const composerObstructionRef = useToastObstruction();
|
|
183386
|
-
const [contextMeterEnabled] = useExperimentalContextMeter();
|
|
183387
183992
|
const sentinelRef = reactExports.useRef(null);
|
|
183388
183993
|
const stickyContextRef = reactExports.useRef(null);
|
|
183389
183994
|
const prevVisibleRef = reactExports.useRef(visible);
|
|
@@ -183590,6 +184195,19 @@ function ChatView({
|
|
|
183590
184195
|
},
|
|
183591
184196
|
[optimisticQueue, queue, workspaceId, chatId]
|
|
183592
184197
|
);
|
|
184198
|
+
const listRef = reactExports.useRef(null);
|
|
184199
|
+
const rootRef = reactExports.useRef(null);
|
|
184200
|
+
const stopStickToBottom = reactExports.useCallback(() => stickyContextRef.current?.stopScroll?.(), []);
|
|
184201
|
+
const focusComposer = reactExports.useCallback(() => {
|
|
184202
|
+
rootRef.current?.querySelector("[data-band-leaf-focus]")?.focus();
|
|
184203
|
+
}, []);
|
|
184204
|
+
const find2 = useChatFind({
|
|
184205
|
+
messages,
|
|
184206
|
+
scrollEl,
|
|
184207
|
+
listRef,
|
|
184208
|
+
onBeforeScroll: stopStickToBottom,
|
|
184209
|
+
onClose: focusComposer
|
|
184210
|
+
});
|
|
183593
184211
|
const getMessageKey = reactExports.useCallback((message) => message.id, []);
|
|
183594
184212
|
const messagesRef = reactExports.useRef(messages);
|
|
183595
184213
|
messagesRef.current = messages;
|
|
@@ -183614,7 +184232,7 @@ function ChatView({
|
|
|
183614
184232
|
const renderEntry = reactExports.useCallback((entry) => {
|
|
183615
184233
|
switch (entry.kind) {
|
|
183616
184234
|
case "text":
|
|
183617
|
-
return entry.text.trim() ? /* @__PURE__ */ jsxRuntimeExports.jsx(MessageResponse, { children: entry.text }, entry.id) : null;
|
|
184235
|
+
return entry.text.trim() ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { "data-chat-find-text": "", children: /* @__PURE__ */ jsxRuntimeExports.jsx(MessageResponse, { children: entry.text }) }, entry.id) : null;
|
|
183618
184236
|
case "thought":
|
|
183619
184237
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("details", { className: "group/thought text-muted-foreground", children: [
|
|
183620
184238
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("summary", { className: "flex cursor-pointer list-none items-center gap-1.5 text-xs", children: [
|
|
@@ -183682,15 +184300,25 @@ function ChatView({
|
|
|
183682
184300
|
entering = true;
|
|
183683
184301
|
}
|
|
183684
184302
|
if (message.role === "user") {
|
|
183685
|
-
return /* @__PURE__ */ jsxRuntimeExports.
|
|
184303
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
183686
184304
|
Message,
|
|
183687
184305
|
{
|
|
183688
184306
|
from: "user",
|
|
183689
184307
|
className: cn$2(entering && "chat-message-enter", message.pending && "opacity-80"),
|
|
183690
|
-
children:
|
|
183691
|
-
|
|
183692
|
-
|
|
183693
|
-
|
|
184308
|
+
children: [
|
|
184309
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(MessageContent, { children: [
|
|
184310
|
+
message.files?.map((file2) => /* @__PURE__ */ jsxRuntimeExports.jsx(MessageFilePart, { part: { type: "file", ...file2 } }, file2.url)),
|
|
184311
|
+
message.text.trim() && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { "data-chat-find-text": "", children: /* @__PURE__ */ jsxRuntimeExports.jsx(MessageResponse, { children: message.text }) })
|
|
184312
|
+
] }),
|
|
184313
|
+
!message.pending && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184314
|
+
MessageActions,
|
|
184315
|
+
{
|
|
184316
|
+
text: message.text.trim(),
|
|
184317
|
+
createdAt: message.createdAt,
|
|
184318
|
+
align: "end"
|
|
184319
|
+
}
|
|
184320
|
+
)
|
|
184321
|
+
]
|
|
183694
184322
|
}
|
|
183695
184323
|
);
|
|
183696
184324
|
}
|
|
@@ -183699,10 +184327,16 @@ function ChatView({
|
|
|
183699
184327
|
);
|
|
183700
184328
|
const showThinking = isLastMessage && isStreaming && !waiting;
|
|
183701
184329
|
if (message.entries.length === 0 && !showThinking) return null;
|
|
183702
|
-
|
|
183703
|
-
|
|
183704
|
-
|
|
183705
|
-
|
|
184330
|
+
const copyText = message.entries.flatMap((e3) => e3.kind === "text" && e3.text.trim() ? [e3.text.trim()] : []).join("\n\n");
|
|
184331
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(Message, { from: "assistant", className: entering ? "chat-message-enter" : void 0, children: [
|
|
184332
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(MessageContent, { children: [
|
|
184333
|
+
groupEntries(message.entries).map(
|
|
184334
|
+
(part) => part.kind === "entry" ? renderEntry(part.entry) : /* @__PURE__ */ jsxRuntimeExports.jsx(ToolGroup, { tools: part.tools, children: part.entries.map(renderEntry) }, part.id)
|
|
184335
|
+
),
|
|
184336
|
+
showThinking && /* @__PURE__ */ jsxRuntimeExports.jsx(ThinkingIndicator, {})
|
|
184337
|
+
] }),
|
|
184338
|
+
!(isLastMessage && isStreaming) && /* @__PURE__ */ jsxRuntimeExports.jsx(MessageActions, { text: copyText, createdAt: message.createdAt, align: "start" })
|
|
184339
|
+
] });
|
|
183706
184340
|
},
|
|
183707
184341
|
[isStreaming, renderEntry]
|
|
183708
184342
|
);
|
|
@@ -183717,171 +184351,191 @@ function ChatView({
|
|
|
183717
184351
|
return (
|
|
183718
184352
|
// Scope every `band-file:` link clicked inside this chat to *this*
|
|
183719
184353
|
// workspace (issue #539).
|
|
183720
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(FileLinkWorkspaceProvider, { workspaceId, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
183721
|
-
|
|
183722
|
-
|
|
183723
|
-
|
|
183724
|
-
|
|
183725
|
-
|
|
183726
|
-
|
|
183727
|
-
|
|
183728
|
-
|
|
183729
|
-
|
|
183730
|
-
|
|
183731
|
-
|
|
183732
|
-
] })
|
|
183733
|
-
}
|
|
183734
|
-
),
|
|
183735
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs(ConversationContent, { children: [
|
|
183736
|
-
hasMore && !loadingHistory && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: sentinelRef, className: "h-px w-full shrink-0", "aria-hidden": "true" }),
|
|
183737
|
-
messages.length === 0 && !subscription.isConnected && /* @__PURE__ */ jsxRuntimeExports.jsx(ConversationSkeleton, {}),
|
|
183738
|
-
messages.length === 0 && subscription.isConnected && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
183739
|
-
ConversationEmptyState,
|
|
183740
|
-
{
|
|
183741
|
-
"data-testid": "chat-pane__empty-state",
|
|
183742
|
-
icon: agentType ? /* @__PURE__ */ jsxRuntimeExports.jsx(AgentIcon, { type: agentType, className: "size-8" }) : /* @__PURE__ */ jsxRuntimeExports.jsx(Bot, { className: "size-8" }),
|
|
183743
|
-
title: workspaceName,
|
|
183744
|
-
description: "Send a message to start coding"
|
|
183745
|
-
}
|
|
183746
|
-
),
|
|
183747
|
-
messages.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
183748
|
-
VirtualizedMessageList,
|
|
184354
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(FileLinkWorkspaceProvider, { workspaceId, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
184355
|
+
"div",
|
|
184356
|
+
{
|
|
184357
|
+
ref: rootRef,
|
|
184358
|
+
"data-chat-pane": "",
|
|
184359
|
+
"data-testid": "chat-pane",
|
|
184360
|
+
tabIndex: -1,
|
|
184361
|
+
onKeyDown: find2.onKeyDown,
|
|
184362
|
+
className: "relative flex min-h-0 flex-1 flex-col outline-none",
|
|
184363
|
+
children: [
|
|
184364
|
+
find2.isOpen && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184365
|
+
SearchBar,
|
|
183749
184366
|
{
|
|
183750
|
-
|
|
183751
|
-
|
|
183752
|
-
|
|
184367
|
+
ref: find2.searchBarRef,
|
|
184368
|
+
variant: "floating",
|
|
184369
|
+
query: find2.query,
|
|
184370
|
+
onQueryChange: find2.setQuery,
|
|
184371
|
+
options: find2.options,
|
|
184372
|
+
onOptionsChange: find2.setOptions,
|
|
184373
|
+
placeholder: "Find in chat",
|
|
184374
|
+
matchInfo: find2.matchInfo,
|
|
184375
|
+
onNext: find2.findNext,
|
|
184376
|
+
onPrevious: find2.findPrevious,
|
|
184377
|
+
onClose: find2.close
|
|
183753
184378
|
}
|
|
183754
184379
|
),
|
|
183755
|
-
|
|
183756
|
-
|
|
183757
|
-
|
|
183758
|
-
|
|
183759
|
-
|
|
183760
|
-
|
|
183761
|
-
|
|
183762
|
-
|
|
183763
|
-
|
|
183764
|
-
|
|
184380
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(Conversation, { className: "min-h-0 flex-1", contextRef: stickyContextRef, children: [
|
|
184381
|
+
loadingOlder && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184382
|
+
"output",
|
|
184383
|
+
{
|
|
184384
|
+
className: "pointer-events-none absolute inset-x-0 top-2 z-10 flex justify-center",
|
|
184385
|
+
"aria-busy": "true",
|
|
184386
|
+
"aria-label": "Loading older messages",
|
|
184387
|
+
"data-testid": "chat-pane__loading-older",
|
|
184388
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "flex items-center gap-2 rounded-full bg-background/90 px-3 py-1 text-xs text-muted-foreground shadow-sm", children: [
|
|
184389
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(LoaderCircle, { className: "size-3.5 animate-spin" }),
|
|
184390
|
+
"Loading earlier messages…"
|
|
184391
|
+
] })
|
|
184392
|
+
}
|
|
184393
|
+
),
|
|
184394
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(ConversationContent, { children: [
|
|
184395
|
+
hasMore && !loadingHistory && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: sentinelRef, className: "h-px w-full shrink-0", "aria-hidden": "true" }),
|
|
184396
|
+
messages.length === 0 && !subscription.isConnected && /* @__PURE__ */ jsxRuntimeExports.jsx(ConversationSkeleton, {}),
|
|
184397
|
+
messages.length === 0 && subscription.isConnected && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184398
|
+
ConversationEmptyState,
|
|
184399
|
+
{
|
|
184400
|
+
"data-testid": "chat-pane__empty-state",
|
|
184401
|
+
icon: agentType ? /* @__PURE__ */ jsxRuntimeExports.jsx(AgentIcon, { type: agentType, className: "size-8" }) : /* @__PURE__ */ jsxRuntimeExports.jsx(Bot, { className: "size-8" }),
|
|
184402
|
+
title: workspaceName,
|
|
184403
|
+
description: "Send a message to start coding"
|
|
184404
|
+
}
|
|
184405
|
+
),
|
|
184406
|
+
messages.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184407
|
+
VirtualizedMessageList,
|
|
184408
|
+
{
|
|
184409
|
+
items: messages,
|
|
184410
|
+
getKey: getMessageKey,
|
|
184411
|
+
renderItem: renderMessageItem,
|
|
184412
|
+
listRef
|
|
184413
|
+
}
|
|
184414
|
+
),
|
|
184415
|
+
isStreaming && (!messages.length || messages[messages.length - 1].role === "user") && // No assistant-message testid on the standalone placeholder.
|
|
184416
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Message, { from: "assistant", "data-testid": void 0, children: /* @__PURE__ */ jsxRuntimeExports.jsx(MessageContent, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(ThinkingIndicator, {}) }) }),
|
|
184417
|
+
queuedMessagesView.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184418
|
+
DndContext,
|
|
183765
184419
|
{
|
|
183766
|
-
|
|
183767
|
-
|
|
183768
|
-
|
|
183769
|
-
|
|
184420
|
+
sensors: dndSensors,
|
|
184421
|
+
collisionDetection: closestCenter,
|
|
184422
|
+
onDragEnd: handleReorderQueued,
|
|
184423
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184424
|
+
SortableContext,
|
|
183770
184425
|
{
|
|
183771
|
-
|
|
183772
|
-
|
|
183773
|
-
|
|
183774
|
-
|
|
183775
|
-
|
|
183776
|
-
|
|
183777
|
-
|
|
183778
|
-
|
|
184426
|
+
items: queuedMessagesView.map((m2) => m2.id),
|
|
184427
|
+
strategy: verticalListSortingStrategy,
|
|
184428
|
+
children: queuedMessagesView.map((m2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184429
|
+
QueuedMessageBubble,
|
|
184430
|
+
{
|
|
184431
|
+
id: m2.id,
|
|
184432
|
+
text: m2.text,
|
|
184433
|
+
files: m2.files,
|
|
184434
|
+
onCancel: () => handleCancelQueued(m2.id),
|
|
184435
|
+
onEdit: (newText) => handleEditQueued(m2.id, newText)
|
|
184436
|
+
},
|
|
184437
|
+
m2.id
|
|
184438
|
+
))
|
|
184439
|
+
}
|
|
184440
|
+
)
|
|
183779
184441
|
}
|
|
183780
184442
|
)
|
|
184443
|
+
] }),
|
|
184444
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ConversationScrollButton, {})
|
|
184445
|
+
] }),
|
|
184446
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
184447
|
+
"div",
|
|
184448
|
+
{
|
|
184449
|
+
ref: composerObstructionRef,
|
|
184450
|
+
"data-testid": "chat-pane__composer",
|
|
184451
|
+
className: "mx-auto w-full max-w-3xl shrink-0 px-3 lg:px-4 pt-2 pb-2 lg:pb-4",
|
|
184452
|
+
children: [
|
|
184453
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(TaskListWidget, { plan, workspaceId }),
|
|
184454
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
184455
|
+
PromptInput,
|
|
184456
|
+
{
|
|
184457
|
+
onSubmit: handleSubmit,
|
|
184458
|
+
draftKey: workspaceId,
|
|
184459
|
+
visible,
|
|
184460
|
+
wsActive,
|
|
184461
|
+
workspaceId,
|
|
184462
|
+
chatId,
|
|
184463
|
+
children: [
|
|
184464
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(SlashCommandSuggestions, { skills }),
|
|
184465
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(FileMentionSuggestions, { workspaceId }),
|
|
184466
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(PromptInputBody, { children: [
|
|
184467
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184468
|
+
PromptInputTextarea,
|
|
184469
|
+
{
|
|
184470
|
+
placeholder: "Type a message...",
|
|
184471
|
+
"data-band-leaf-focus": "",
|
|
184472
|
+
"data-testid": "chat__composer",
|
|
184473
|
+
onEscape: handleEscape,
|
|
184474
|
+
onPreviousMessage: getLastUserMessage,
|
|
184475
|
+
onShiftTab: () => window.dispatchEvent(new CustomEvent("band:toggle-mode"))
|
|
184476
|
+
}
|
|
184477
|
+
),
|
|
184478
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184479
|
+
PromptInputSubmit,
|
|
184480
|
+
{
|
|
184481
|
+
status: status === "submitting" ? "submitted" : status === "idle" ? "ready" : status,
|
|
184482
|
+
onStop: handleStop
|
|
184483
|
+
}
|
|
184484
|
+
)
|
|
184485
|
+
] }),
|
|
184486
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(PromptInputActions, { children: [
|
|
184487
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex min-w-0 items-center gap-0.5", children: [
|
|
184488
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(PromptInputAttach, {}),
|
|
184489
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184490
|
+
SessionHistoryMenu,
|
|
184491
|
+
{
|
|
184492
|
+
workspaceId,
|
|
184493
|
+
chatId,
|
|
184494
|
+
activeSessionId: currentSessionId,
|
|
184495
|
+
onSelectSession: handleSelectSession,
|
|
184496
|
+
onNewSession: handleNewSession
|
|
184497
|
+
}
|
|
184498
|
+
),
|
|
184499
|
+
pickers.modes.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184500
|
+
ModeMenu,
|
|
184501
|
+
{
|
|
184502
|
+
modes: pickers.modes,
|
|
184503
|
+
selected: pickers.mode,
|
|
184504
|
+
onSelect: handleModeSelect
|
|
184505
|
+
}
|
|
184506
|
+
)
|
|
184507
|
+
] }),
|
|
184508
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex min-w-0 items-center gap-0.5", children: [
|
|
184509
|
+
(pickers.models.length > 0 || pickers.effort || pickers.fast || pickers.others.length > 0) && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184510
|
+
ModelSettingsMenu,
|
|
184511
|
+
{
|
|
184512
|
+
models: pickers.models,
|
|
184513
|
+
selectedModel: pickers.model,
|
|
184514
|
+
groupByProvider: agentType === "opencode",
|
|
184515
|
+
onSelectModel: handleModelSelect,
|
|
184516
|
+
effort: pickers.effort,
|
|
184517
|
+
effortLabel: pickers.effortLabel,
|
|
184518
|
+
fast: pickers.fast,
|
|
184519
|
+
others: pickers.others,
|
|
184520
|
+
onConfig: handleConfig,
|
|
184521
|
+
modelsDisabled: isStreaming,
|
|
184522
|
+
pending: pendingConfig > 0
|
|
184523
|
+
}
|
|
184524
|
+
),
|
|
184525
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ContextMeter, { usage: session?.usage ?? null })
|
|
184526
|
+
] })
|
|
184527
|
+
] })
|
|
184528
|
+
]
|
|
184529
|
+
}
|
|
184530
|
+
)
|
|
184531
|
+
]
|
|
183781
184532
|
}
|
|
183782
184533
|
)
|
|
183783
|
-
]
|
|
183784
|
-
|
|
183785
|
-
|
|
183786
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
183787
|
-
"div",
|
|
183788
|
-
{
|
|
183789
|
-
ref: composerObstructionRef,
|
|
183790
|
-
"data-testid": "chat-pane__composer",
|
|
183791
|
-
className: "mx-auto w-full max-w-3xl shrink-0 px-3 lg:px-4 pt-2 pb-2 lg:pb-4",
|
|
183792
|
-
children: [
|
|
183793
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(TaskListWidget, { plan, workspaceId }),
|
|
183794
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
183795
|
-
PromptInput,
|
|
183796
|
-
{
|
|
183797
|
-
onSubmit: handleSubmit,
|
|
183798
|
-
draftKey: workspaceId,
|
|
183799
|
-
visible,
|
|
183800
|
-
wsActive,
|
|
183801
|
-
workspaceId,
|
|
183802
|
-
chatId,
|
|
183803
|
-
children: [
|
|
183804
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(SlashCommandSuggestions, { skills }),
|
|
183805
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(FileMentionSuggestions, { workspaceId }),
|
|
183806
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
183807
|
-
PromptInputTextarea,
|
|
183808
|
-
{
|
|
183809
|
-
placeholder: "Type a message...",
|
|
183810
|
-
"data-band-leaf-focus": "",
|
|
183811
|
-
"data-testid": "chat__composer",
|
|
183812
|
-
onEscape: handleEscape,
|
|
183813
|
-
onPreviousMessage: getLastUserMessage,
|
|
183814
|
-
onShiftTab: () => window.dispatchEvent(new CustomEvent("band:toggle-mode"))
|
|
183815
|
-
}
|
|
183816
|
-
),
|
|
183817
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs(PromptInputActions, { children: [
|
|
183818
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex min-w-0 items-center gap-0.5", children: [
|
|
183819
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(PromptInputAttach, {}),
|
|
183820
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
183821
|
-
SessionHistoryMenu,
|
|
183822
|
-
{
|
|
183823
|
-
workspaceId,
|
|
183824
|
-
chatId,
|
|
183825
|
-
activeSessionId: currentSessionId,
|
|
183826
|
-
onSelectSession: handleSelectSession,
|
|
183827
|
-
onNewSession: handleNewSession
|
|
183828
|
-
}
|
|
183829
|
-
),
|
|
183830
|
-
contextMeterEnabled && /* @__PURE__ */ jsxRuntimeExports.jsx(ContextMeter, { usage: session?.usage ?? null, costUsd: session?.costUsd ?? null }),
|
|
183831
|
-
pickers.modes.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
183832
|
-
ModeMenu,
|
|
183833
|
-
{
|
|
183834
|
-
modes: pickers.modes,
|
|
183835
|
-
selected: pickers.mode,
|
|
183836
|
-
onSelect: handleModeSelect
|
|
183837
|
-
}
|
|
183838
|
-
)
|
|
183839
|
-
] }),
|
|
183840
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex min-w-0 items-center gap-0.5", children: [
|
|
183841
|
-
(pickers.models.length > 0 || pickers.effort || pickers.fast || pickers.others.length > 0) && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
183842
|
-
ModelSettingsMenu,
|
|
183843
|
-
{
|
|
183844
|
-
models: pickers.models,
|
|
183845
|
-
selectedModel: pickers.model,
|
|
183846
|
-
groupByProvider: agentType === "opencode",
|
|
183847
|
-
onSelectModel: handleModelSelect,
|
|
183848
|
-
effort: pickers.effort,
|
|
183849
|
-
effortLabel: pickers.effortLabel,
|
|
183850
|
-
fast: pickers.fast,
|
|
183851
|
-
others: pickers.others,
|
|
183852
|
-
onConfig: handleConfig,
|
|
183853
|
-
modelsDisabled: isStreaming,
|
|
183854
|
-
pending: pendingConfig > 0
|
|
183855
|
-
}
|
|
183856
|
-
),
|
|
183857
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
183858
|
-
PromptInputSubmit,
|
|
183859
|
-
{
|
|
183860
|
-
status: status === "submitting" ? "submitted" : status === "idle" ? "ready" : status,
|
|
183861
|
-
onStop: handleStop
|
|
183862
|
-
}
|
|
183863
|
-
)
|
|
183864
|
-
] })
|
|
183865
|
-
] })
|
|
183866
|
-
]
|
|
183867
|
-
}
|
|
183868
|
-
)
|
|
183869
|
-
]
|
|
183870
|
-
}
|
|
183871
|
-
)
|
|
183872
|
-
] }) })
|
|
184534
|
+
]
|
|
184535
|
+
}
|
|
184536
|
+
) })
|
|
183873
184537
|
);
|
|
183874
184538
|
}
|
|
183875
|
-
function ModeIcon({ modeId, className }) {
|
|
183876
|
-
switch (modeId) {
|
|
183877
|
-
case "plan":
|
|
183878
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(ScrollText, { className });
|
|
183879
|
-
case "edit":
|
|
183880
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(CodeXml, { className });
|
|
183881
|
-
default:
|
|
183882
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(ChevronDown, { className });
|
|
183883
|
-
}
|
|
183884
|
-
}
|
|
183885
184539
|
function ModeMenu({
|
|
183886
184540
|
modes,
|
|
183887
184541
|
selected,
|
|
@@ -183890,21 +184544,18 @@ function ModeMenu({
|
|
|
183890
184544
|
const current2 = modes.find((m2) => m2.id === selected) ?? modes[0];
|
|
183891
184545
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs(DropdownMenu, { children: [
|
|
183892
184546
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(Tooltip$1, { children: [
|
|
183893
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntimeExports.jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntimeExports.
|
|
184547
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntimeExports.jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
183894
184548
|
"button",
|
|
183895
184549
|
{
|
|
183896
184550
|
type: "button",
|
|
183897
184551
|
"data-testid": "chat-pane__mode-menu",
|
|
183898
184552
|
className: "inline-flex min-w-0 items-center gap-1 rounded-md px-1.5 py-1 text-xs font-medium text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",
|
|
183899
|
-
children:
|
|
183900
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(ModeIcon, { modeId: current2?.id ?? "", className: "size-3 shrink-0" }),
|
|
183901
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "truncate", children: current2?.name ?? "Mode" })
|
|
183902
|
-
]
|
|
184553
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "truncate", children: current2?.name ?? "Mode" })
|
|
183903
184554
|
}
|
|
183904
184555
|
) }) }),
|
|
183905
184556
|
/* @__PURE__ */ jsxRuntimeExports.jsx(TooltipContent, { children: "⇧Tab" })
|
|
183906
184557
|
] }),
|
|
183907
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(DropdownMenuContent, { align: "start", className: "min-w-[140px]", children: modes.map((mode) => /* @__PURE__ */ jsxRuntimeExports.
|
|
184558
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(DropdownMenuContent, { align: "start", className: "min-w-[140px]", children: modes.map((mode) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
183908
184559
|
DropdownMenuItem,
|
|
183909
184560
|
{
|
|
183910
184561
|
onClick: () => onSelect(mode.id),
|
|
@@ -183912,13 +184563,10 @@ function ModeMenu({
|
|
|
183912
184563
|
"flex items-start gap-2",
|
|
183913
184564
|
mode.id === (selected ?? modes[0]?.id) ? "bg-accent" : ""
|
|
183914
184565
|
),
|
|
183915
|
-
children: [
|
|
183916
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
183917
|
-
/* @__PURE__ */ jsxRuntimeExports.
|
|
183918
|
-
|
|
183919
|
-
mode.description && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-xs text-muted-foreground", children: mode.description })
|
|
183920
|
-
] })
|
|
183921
|
-
]
|
|
184566
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col gap-0.5", children: [
|
|
184567
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm font-medium", children: mode.name }),
|
|
184568
|
+
mode.description && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-xs text-muted-foreground", children: mode.description })
|
|
184569
|
+
] })
|
|
183922
184570
|
},
|
|
183923
184571
|
mode.id
|
|
183924
184572
|
)) })
|
|
@@ -183964,7 +184612,7 @@ function ModelSettingsMenu({
|
|
|
183964
184612
|
}
|
|
183965
184613
|
),
|
|
183966
184614
|
fastOn && /* @__PURE__ */ jsxRuntimeExports.jsx(Zap, { "aria-label": "Fast mode on", className: "size-3 shrink-0" }),
|
|
183967
|
-
pending2
|
|
184615
|
+
pending2 && /* @__PURE__ */ jsxRuntimeExports.jsx(LoaderCircle, { className: "size-3 shrink-0 animate-spin text-muted-foreground" })
|
|
183968
184616
|
]
|
|
183969
184617
|
}
|
|
183970
184618
|
) }),
|
|
@@ -184052,7 +184700,7 @@ function ModelSettingsMenu({
|
|
|
184052
184700
|
/* @__PURE__ */ jsxRuntimeExports.jsx(DropdownMenuPortal, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184053
184701
|
DropdownMenuSubContent,
|
|
184054
184702
|
{
|
|
184055
|
-
className: "w-64
|
|
184703
|
+
className: "w-64 [--popper-max-height:400px]",
|
|
184056
184704
|
"data-testid": "chat-pane__model-menu-more-models-content",
|
|
184057
184705
|
sideOffset: submenuOffset,
|
|
184058
184706
|
children: groupByProvider ? /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
@@ -184113,7 +184761,7 @@ function ProviderModelItems({
|
|
|
184113
184761
|
/* @__PURE__ */ jsxRuntimeExports.jsx(DropdownMenuPortal, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184114
184762
|
DropdownMenuSubContent,
|
|
184115
184763
|
{
|
|
184116
|
-
className: "w-64
|
|
184764
|
+
className: "w-64 [--popper-max-height:400px]",
|
|
184117
184765
|
"data-testid": `chat-pane__model-menu-provider--${group.id}-content`,
|
|
184118
184766
|
sideOffset,
|
|
184119
184767
|
children: group.models.map((model) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
@@ -184200,10 +184848,11 @@ function formatTokens$1(n2) {
|
|
|
184200
184848
|
}
|
|
184201
184849
|
const DONUT_RADIUS = 9;
|
|
184202
184850
|
const DONUT_CIRCUMFERENCE = 2 * Math.PI * DONUT_RADIUS;
|
|
184203
|
-
function
|
|
184204
|
-
|
|
184205
|
-
|
|
184206
|
-
}
|
|
184851
|
+
function formatCost(cost) {
|
|
184852
|
+
const digits = cost.amount < 1 ? 3 : 2;
|
|
184853
|
+
return cost.currency === "USD" ? `$${cost.amount.toFixed(digits)}` : `${cost.amount.toFixed(digits)} ${cost.currency}`;
|
|
184854
|
+
}
|
|
184855
|
+
function ContextMeter({ usage }) {
|
|
184207
184856
|
const pct = usage && usage.size > 0 ? Math.min(100, usage.used / usage.size * 100) : 0;
|
|
184208
184857
|
const pctRounded = Math.round(pct);
|
|
184209
184858
|
const danger = pct >= 85;
|
|
@@ -184225,7 +184874,7 @@ function ContextMeter({
|
|
|
184225
184874
|
onPointerLeave: (e3) => {
|
|
184226
184875
|
if (e3.pointerType === "mouse") setOpen(false);
|
|
184227
184876
|
},
|
|
184228
|
-
children: /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { viewBox: "0 0 24 24", className: "size-
|
|
184877
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { viewBox: "0 0 24 24", className: "size-4 -rotate-90 shrink-0", "aria-hidden": "true", children: [
|
|
184229
184878
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
184230
184879
|
"circle",
|
|
184231
184880
|
{
|
|
@@ -184266,8 +184915,8 @@ function ContextMeter({
|
|
|
184266
184915
|
className: "w-auto p-2",
|
|
184267
184916
|
side: "top",
|
|
184268
184917
|
align: "end",
|
|
184269
|
-
children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-0.5 text-xs", children: [
|
|
184270
|
-
usage ? /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
|
|
184918
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { "data-testid": "chat-pane__context-meter-details", className: "space-y-0.5 text-xs", children: [
|
|
184919
|
+
usage ? /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { "data-testid": "chat-pane__context-meter-usage", children: [
|
|
184271
184920
|
"Context: ",
|
|
184272
184921
|
usage.used.toLocaleString(),
|
|
184273
184922
|
" / ",
|
|
@@ -184276,9 +184925,9 @@ function ContextMeter({
|
|
|
184276
184925
|
pctRounded,
|
|
184277
184926
|
"%)"
|
|
184278
184927
|
] }) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: "No usage reported yet" }),
|
|
184279
|
-
|
|
184280
|
-
"Cost:
|
|
184281
|
-
|
|
184928
|
+
usage?.cost && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { "data-testid": "chat-pane__context-meter-cost", children: [
|
|
184929
|
+
"Cost: ",
|
|
184930
|
+
formatCost(usage.cost)
|
|
184282
184931
|
] })
|
|
184283
184932
|
] })
|
|
184284
184933
|
}
|
|
@@ -196539,28 +197188,12 @@ function MultiWorkspacePanelHost({ emptyState, children: children2 }) {
|
|
|
196539
197188
|
const [mounted, setMounted] = reactExports.useState(() => /* @__PURE__ */ new Set());
|
|
196540
197189
|
const pathname = useRouterState({ select: (s2) => s2.location.pathname });
|
|
196541
197190
|
const activeWorkspaceId = parseWorkspaceFromPath(pathname);
|
|
196542
|
-
const wrapperRef = reactExports.useRef(null);
|
|
196543
|
-
const prevWorkspaceIdRef = reactExports.useRef(activeWorkspaceId);
|
|
196544
197191
|
if (activeWorkspaceId && !mounted.has(activeWorkspaceId)) {
|
|
196545
197192
|
setMounted((prev2) => {
|
|
196546
197193
|
if (prev2.has(activeWorkspaceId)) return prev2;
|
|
196547
197194
|
return new Set(prev2).add(activeWorkspaceId);
|
|
196548
197195
|
});
|
|
196549
197196
|
}
|
|
196550
|
-
reactExports.useLayoutEffect(() => {
|
|
196551
|
-
const prev2 = prevWorkspaceIdRef.current;
|
|
196552
|
-
prevWorkspaceIdRef.current = activeWorkspaceId;
|
|
196553
|
-
if (!prev2 || !activeWorkspaceId || prev2 === activeWorkspaceId) return;
|
|
196554
|
-
const el = wrapperRef.current;
|
|
196555
|
-
if (!el) return;
|
|
196556
|
-
el.style.transition = "none";
|
|
196557
|
-
el.style.opacity = "0.6";
|
|
196558
|
-
const raf = requestAnimationFrame(() => {
|
|
196559
|
-
el.style.transition = "opacity 140ms cubic-bezier(0.23, 1, 0.32, 1)";
|
|
196560
|
-
el.style.opacity = "1";
|
|
196561
|
-
});
|
|
196562
|
-
return () => cancelAnimationFrame(raf);
|
|
196563
|
-
}, [activeWorkspaceId]);
|
|
196564
197197
|
const { projects, isLoading, error } = useProjects();
|
|
196565
197198
|
reactExports.useEffect(() => {
|
|
196566
197199
|
if (isLoading || error) return;
|
|
@@ -196595,7 +197228,7 @@ function MultiWorkspacePanelHost({ emptyState, children: children2 }) {
|
|
|
196595
197228
|
}
|
|
196596
197229
|
lastMountedRef.current = mounted;
|
|
196597
197230
|
}, [mounted]);
|
|
196598
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
|
|
197231
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative h-full w-full", children: [
|
|
196599
197232
|
!activeWorkspaceId && emptyState,
|
|
196600
197233
|
Array.from(mounted, (workspaceId) => {
|
|
196601
197234
|
const isActive = workspaceId === activeWorkspaceId;
|
|
@@ -196939,7 +197572,7 @@ function SharedDockviewLayout() {
|
|
|
196939
197572
|
e3.preventDefault();
|
|
196940
197573
|
setSearchFilesOpen(true);
|
|
196941
197574
|
} else if (key2 === "f" && !e3.shiftKey && !e3.altKey) {
|
|
196942
|
-
if (terminalFocused) return;
|
|
197575
|
+
if (terminalFocused || document.activeElement?.closest("[data-chat-pane]")) return;
|
|
196943
197576
|
e3.preventDefault();
|
|
196944
197577
|
const fn2 = ws ? findInFileRegistry.current.get(ws) : void 0;
|
|
196945
197578
|
if (fn2) fn2();
|
|
@@ -197164,7 +197797,7 @@ function SharedDockviewLayout() {
|
|
|
197164
197797
|
] });
|
|
197165
197798
|
}
|
|
197166
197799
|
const TerminalPanel = reactExports.lazy(
|
|
197167
|
-
() => import("./TerminalPanel-
|
|
197800
|
+
() => import("./TerminalPanel-DFfLVpnD.js").then((m2) => ({ default: m2.TerminalPanel }))
|
|
197168
197801
|
);
|
|
197169
197802
|
const nestedTheme = {
|
|
197170
197803
|
name: "band",
|
|
@@ -198329,9 +198962,9 @@ function FileLeaf({ params, api: api2 }) {
|
|
|
198329
198962
|
const chosen = await pickSaveFile({ content: content2, defaultPath: workspacePath ?? void 0 });
|
|
198330
198963
|
if (!chosen) return null;
|
|
198331
198964
|
const chosenPosix = chosen.replace(/\\/g, "/");
|
|
198332
|
-
const
|
|
198333
|
-
const isExternal =
|
|
198334
|
-
const newPath =
|
|
198965
|
+
const relative2 = workspacePath != null ? pathInside(workspacePath, chosenPosix) : null;
|
|
198966
|
+
const isExternal = relative2 === null;
|
|
198967
|
+
const newPath = relative2 ?? chosenPosix;
|
|
198335
198968
|
const actions = getWorkspaceLeafActions(workspaceIdRaw);
|
|
198336
198969
|
removeFileTabState(workspaceIdRaw, filePathRaw);
|
|
198337
198970
|
actions?.openFile(newPath, { external: isExternal, preview: false });
|
|
@@ -198793,7 +199426,7 @@ function SectionDiffFile({
|
|
|
198793
199426
|
}),
|
|
198794
199427
|
enabled: nearViewport && (section !== "branch" || !!mergeBase)
|
|
198795
199428
|
});
|
|
198796
|
-
const
|
|
199429
|
+
const Chevron2 = collapsed ? ChevronRight : ChevronDown;
|
|
198797
199430
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
198798
199431
|
"div",
|
|
198799
199432
|
{
|
|
@@ -198810,7 +199443,7 @@ function SectionDiffFile({
|
|
|
198810
199443
|
"aria-expanded": !collapsed,
|
|
198811
199444
|
className: "flex min-w-0 flex-1 items-center gap-1.5 text-left",
|
|
198812
199445
|
children: [
|
|
198813
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
199446
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Chevron2, { className: "size-3.5 shrink-0 text-muted-foreground" }),
|
|
198814
199447
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "truncate font-medium", title: entry.path, children: entry.oldPath ? `${entry.oldPath} → ${entry.path}` : entry.path }),
|
|
198815
199448
|
!!entry.additions && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "shrink-0 text-green-600 dark:text-green-400", children: [
|
|
198816
199449
|
"+",
|
|
@@ -201455,7 +202088,7 @@ function CronjobDialog({
|
|
|
201455
202088
|
] }),
|
|
201456
202089
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col gap-4 py-2", children: [
|
|
201457
202090
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
201458
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
202091
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { htmlFor: "cj-name", children: "Name" }),
|
|
201459
202092
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
201460
202093
|
Input,
|
|
201461
202094
|
{
|
|
@@ -201467,7 +202100,7 @@ function CronjobDialog({
|
|
|
201467
202100
|
)
|
|
201468
202101
|
] }),
|
|
201469
202102
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
201470
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
202103
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { htmlFor: "cj-prompt", children: "Prompt" }),
|
|
201471
202104
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
201472
202105
|
Textarea,
|
|
201473
202106
|
{
|
|
@@ -201480,7 +202113,7 @@ function CronjobDialog({
|
|
|
201480
202113
|
)
|
|
201481
202114
|
] }),
|
|
201482
202115
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
201483
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
202116
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { htmlFor: "cj-cron", children: "Cron Expression" }),
|
|
201484
202117
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
201485
202118
|
Input,
|
|
201486
202119
|
{
|
|
@@ -201495,7 +202128,7 @@ function CronjobDialog({
|
|
|
201495
202128
|
] }),
|
|
201496
202129
|
!editingJob && /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
|
|
201497
202130
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
201498
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
202131
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { children: "Scope" }),
|
|
201499
202132
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(Select, { value: scope, onValueChange: (v2) => setScope(v2), children: [
|
|
201500
202133
|
/* @__PURE__ */ jsxRuntimeExports.jsx(SelectTrigger, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(SelectValue, {}) }),
|
|
201501
202134
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(SelectContent, { children: [
|
|
@@ -201505,7 +202138,7 @@ function CronjobDialog({
|
|
|
201505
202138
|
] })
|
|
201506
202139
|
] }),
|
|
201507
202140
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
201508
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
202141
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { children: "Project" }),
|
|
201509
202142
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(Select, { value: selectedProject, onValueChange: handleProjectChange, children: [
|
|
201510
202143
|
/* @__PURE__ */ jsxRuntimeExports.jsx(SelectTrigger, { "data-testid": "cronjobs__project-select", children: /* @__PURE__ */ jsxRuntimeExports.jsx(SelectValue, { placeholder: "Select a project" }) }),
|
|
201511
202144
|
/* @__PURE__ */ jsxRuntimeExports.jsx(SelectContent, { children: projects.map((p2) => /* @__PURE__ */ jsxRuntimeExports.jsxs(SelectItem, { value: p2.name, children: [
|
|
@@ -201523,7 +202156,7 @@ function CronjobDialog({
|
|
|
201523
202156
|
] })
|
|
201524
202157
|
] }),
|
|
201525
202158
|
scope === "workspace" && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
201526
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
202159
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { children: "Workspace" }),
|
|
201527
202160
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
201528
202161
|
Select,
|
|
201529
202162
|
{
|
|
@@ -201545,7 +202178,7 @@ function CronjobDialog({
|
|
|
201545
202178
|
] }),
|
|
201546
202179
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-3", children: [
|
|
201547
202180
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Switch, { checked: enabled, onCheckedChange: setEnabled, id: "cj-enabled" }),
|
|
201548
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
202181
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { htmlFor: "cj-enabled", children: "Enabled" })
|
|
201549
202182
|
] }),
|
|
201550
202183
|
submitError && /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-sm text-destructive", children: submitError })
|
|
201551
202184
|
] }),
|
|
@@ -221322,7 +221955,7 @@ function ReportsPageContent() {
|
|
|
221322
221955
|
/* @__PURE__ */ jsxRuntimeExports.jsx(SelectContent, { children: PERIOD_OPTIONS.map((opt) => /* @__PURE__ */ jsxRuntimeExports.jsx(SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
221323
221956
|
] }),
|
|
221324
221957
|
period2 === "custom" && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
221325
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
221958
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { className: "text-xs text-muted-foreground", htmlFor: "reports-from", children: "From" }),
|
|
221326
221959
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
221327
221960
|
Input,
|
|
221328
221961
|
{
|
|
@@ -221334,7 +221967,7 @@ function ReportsPageContent() {
|
|
|
221334
221967
|
"data-testid": "reports__custom-from"
|
|
221335
221968
|
}
|
|
221336
221969
|
),
|
|
221337
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$
|
|
221970
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Label$2, { className: "text-xs text-muted-foreground", htmlFor: "reports-to", children: "To" }),
|
|
221338
221971
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
221339
221972
|
Input,
|
|
221340
221973
|
{
|
|
@@ -223817,18 +224450,18 @@ function ToolbarOverflowProvider({ children: children2 }) {
|
|
|
223817
224450
|
);
|
|
223818
224451
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs(ToolbarOverflowContext.Provider, { value, children: [
|
|
223819
224452
|
children2,
|
|
223820
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Dialog, { open: showTasksDialog, onOpenChange: setShowTasksDialog, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(DialogContent, { className: "sm:max-w-6xl h-[80vh] flex flex-col p-0 gap-0", children: [
|
|
224453
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Dialog, { open: showTasksDialog, onOpenChange: setShowTasksDialog, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(DialogContent, { className: "sm:max-w-6xl h-[calc(80vh/var(--app-zoom,1))] flex flex-col p-0 gap-0", children: [
|
|
223821
224454
|
/* @__PURE__ */ jsxRuntimeExports.jsx(DialogHeader, { className: "px-6 pt-6 pb-4 border-b border-border/50 shrink-0", children: /* @__PURE__ */ jsxRuntimeExports.jsx(DialogTitle, { children: "Tasks" }) }),
|
|
223822
224455
|
/* @__PURE__ */ jsxRuntimeExports.jsx(TasksPageContent, {})
|
|
223823
224456
|
] }) }),
|
|
223824
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Dialog, { open: showCronjobsDialog, onOpenChange: setShowCronjobsDialog, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(DialogContent, { className: "sm:max-w-6xl h-[80vh] flex flex-col p-0 gap-0", children: [
|
|
224457
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Dialog, { open: showCronjobsDialog, onOpenChange: setShowCronjobsDialog, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(DialogContent, { className: "sm:max-w-6xl h-[calc(80vh/var(--app-zoom,1))] flex flex-col p-0 gap-0", children: [
|
|
223825
224458
|
/* @__PURE__ */ jsxRuntimeExports.jsx(DialogHeader, { className: "px-6 pt-6 pb-4 border-b border-border/50 shrink-0", children: /* @__PURE__ */ jsxRuntimeExports.jsx(DialogTitle, { children: "Cronjobs" }) }),
|
|
223826
224459
|
/* @__PURE__ */ jsxRuntimeExports.jsx(CronjobsPageContent, {})
|
|
223827
224460
|
] }) }),
|
|
223828
224461
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Dialog, { open: showReportsDialog, onOpenChange: setShowReportsDialog, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
223829
224462
|
DialogContent,
|
|
223830
224463
|
{
|
|
223831
|
-
className: "sm:max-w-6xl h-[80vh] flex flex-col p-0 gap-0",
|
|
224464
|
+
className: "sm:max-w-6xl h-[calc(80vh/var(--app-zoom,1))] flex flex-col p-0 gap-0",
|
|
223832
224465
|
"data-testid": "reports-dialog",
|
|
223833
224466
|
children: [
|
|
223834
224467
|
/* @__PURE__ */ jsxRuntimeExports.jsx(DialogHeader, { className: "px-6 pt-6 pb-4 border-b border-border/50 shrink-0", children: /* @__PURE__ */ jsxRuntimeExports.jsx(DialogTitle, { children: "Usage" }) }),
|
|
@@ -223839,7 +224472,7 @@ function ToolbarOverflowProvider({ children: children2 }) {
|
|
|
223839
224472
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Dialog, { open: showResourcesDialog, onOpenChange: setShowResourcesDialog, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
223840
224473
|
DialogContent,
|
|
223841
224474
|
{
|
|
223842
|
-
className: "sm:max-w-6xl h-[80vh] flex flex-col p-0 gap-0",
|
|
224475
|
+
className: "sm:max-w-6xl h-[calc(80vh/var(--app-zoom,1))] flex flex-col p-0 gap-0",
|
|
223843
224476
|
"data-testid": "resources-dialog",
|
|
223844
224477
|
children: [
|
|
223845
224478
|
/* @__PURE__ */ jsxRuntimeExports.jsx(DialogHeader, { className: "px-6 pt-6 pb-4 border-b border-border/50 shrink-0", children: /* @__PURE__ */ jsxRuntimeExports.jsx(DialogTitle, { children: "Resources" }) }),
|
|
@@ -224784,12 +225417,12 @@ function RootLayout() {
|
|
|
224784
225417
|
] })
|
|
224785
225418
|
] });
|
|
224786
225419
|
}
|
|
224787
|
-
const $$splitComponentImporter$1 = () => import("./index-
|
|
225420
|
+
const $$splitComponentImporter$1 = () => import("./index-iqainN_h.js");
|
|
224788
225421
|
const Route$1 = createFileRoute("/")({
|
|
224789
225422
|
component: lazyRouteComponent($$splitComponentImporter$1, "component")
|
|
224790
225423
|
});
|
|
224791
|
-
const $$splitNotFoundComponentImporter = () => import("./workspace._workspaceId-
|
|
224792
|
-
const $$splitComponentImporter = () => import("./workspace._workspaceId-
|
|
225424
|
+
const $$splitNotFoundComponentImporter = () => import("./workspace._workspaceId-CBpMR_kd.js");
|
|
225425
|
+
const $$splitComponentImporter = () => import("./workspace._workspaceId-CD0MjjsK.js");
|
|
224793
225426
|
const Route2 = createFileRoute("/workspace/$workspaceId")({
|
|
224794
225427
|
component: lazyRouteComponent($$splitComponentImporter, "component"),
|
|
224795
225428
|
// Bookmarks / shared links from before route unification (`/workspace/$id/changes`,
|
|
@@ -224957,11 +225590,11 @@ export {
|
|
|
224957
225590
|
writeClipboardText as bS,
|
|
224958
225591
|
readClipboardText as bT,
|
|
224959
225592
|
ArrowLeft as bU,
|
|
224960
|
-
|
|
224961
|
-
|
|
224962
|
-
|
|
224963
|
-
|
|
224964
|
-
|
|
225593
|
+
ArrowDown as bV,
|
|
225594
|
+
ArrowRight as bW,
|
|
225595
|
+
ClipboardCopy as bX,
|
|
225596
|
+
ClipboardPaste as bY,
|
|
225597
|
+
CornerDownLeft as bZ,
|
|
224965
225598
|
useSettingsQuery as b_,
|
|
224966
225599
|
positionEdgeLabel as ba,
|
|
224967
225600
|
insertEdgeLabel as bb,
|