local-operator-ui 0.24.0 → 0.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/out/main/index.js +178 -14
- package/out/preload/index.js +51 -0
- package/out/renderer/assets/{_basePickBy-CwObVhcu.js → _basePickBy-DoNdsg5T.js} +1 -1
- package/out/renderer/assets/{_baseUniq-CKcvO8DZ.js → _baseUniq-CoibNQAD.js} +1 -1
- package/out/renderer/assets/{agent-details-page-CP-jkp7A.js → agent-details-page-BM4zDGYu.js} +1 -1
- package/out/renderer/assets/{agent-hub-page-C2aosea2.js → agent-hub-page-CFE4uUAt.js} +1 -1
- package/out/renderer/assets/{agents-page-DGQCSEiN.js → agents-page-D799_Amn.js} +2 -2
- package/out/renderer/assets/{arc-tT6anrd5.js → arc-Cj2iYoCg.js} +1 -1
- package/out/renderer/assets/{architectureDiagram-IEHRJDOE-CXNEoeHU.js → architectureDiagram-IEHRJDOE-KrV-vSSa.js} +1 -1
- package/out/renderer/assets/{arrow-left-DP3nO5vd.js → arrow-left-q4TRrNyq.js} +1 -1
- package/out/renderer/assets/{blockDiagram-JOT3LUYC-BSa-VPyg.js → blockDiagram-JOT3LUYC-Df6pDgEx.js} +1 -1
- package/out/renderer/assets/{browser-page-C7b_Br3V.js → browser-page-CLYONBaS.js} +1 -1
- package/out/renderer/assets/{c4Diagram-VJAJSXHY-Bg2gUTmZ.js → c4Diagram-VJAJSXHY-BVN6qT8a.js} +1 -1
- package/out/renderer/assets/channel-rutBf-Jk.js +1 -0
- package/out/renderer/assets/{chunk-4BMEZGHF-rhelWbhx.js → chunk-4BMEZGHF-BejZ_nyP.js} +1 -1
- package/out/renderer/assets/{chunk-A2AXSNBT-CEnBlAvB.js → chunk-A2AXSNBT-Dvmo1N75.js} +1 -1
- package/out/renderer/assets/{chunk-AEK57VVT-BakCCuT_.js → chunk-AEK57VVT-C-82VDDz.js} +1 -1
- package/out/renderer/assets/{chunk-D6G4REZN-syZWRzxO.js → chunk-D6G4REZN-DKsNw0Ex.js} +1 -1
- package/out/renderer/assets/{chunk-RZ5BOZE2-B04g2Fvh.js → chunk-RZ5BOZE2-DMt2JPsW.js} +1 -1
- package/out/renderer/assets/{chunk-XZIHB7SX-DCrY3ido.js → chunk-XZIHB7SX-DNG3JUvH.js} +1 -1
- package/out/renderer/assets/classDiagram-GIVACNV2-U2a69Wcq.js +1 -0
- package/out/renderer/assets/classDiagram-v2-COTLJTTW-U2a69Wcq.js +1 -0
- package/out/renderer/assets/clone-DAVEg1KS.js +1 -0
- package/out/renderer/assets/{compact-pagination-D3hP611h.js → compact-pagination-mQgprp_u.js} +1 -1
- package/out/renderer/assets/{dagre-OKDRZEBW-B5D0Uh-m.js → dagre-OKDRZEBW-lSCTlWxT.js} +1 -1
- package/out/renderer/assets/{diagram-SSKATNLV-CeAOV54d.js → diagram-SSKATNLV-nD4ymC_6.js} +1 -1
- package/out/renderer/assets/{diagram-VNBRO52H-CL4Yd4b7.js → diagram-VNBRO52H-Cg7T__9y.js} +1 -1
- package/out/renderer/assets/{erDiagram-Q7BY3M3F-BRmLFud9.js → erDiagram-Q7BY3M3F-CxRWzdnz.js} +1 -1
- package/out/renderer/assets/{flowDiagram-4HSFHLVR-T92MmEnu.js → flowDiagram-4HSFHLVR-DXpCv_Jj.js} +1 -1
- package/out/renderer/assets/{ganttDiagram-APWFNJXF-B1PruB4z.js → ganttDiagram-APWFNJXF-7GnVcg50.js} +1 -1
- package/out/renderer/assets/{gitGraphDiagram-7IBYFJ6S-Cgq73e4-.js → gitGraphDiagram-7IBYFJ6S-c_F0batK.js} +1 -1
- package/out/renderer/assets/{graph-pm6zbXLf.js → graph-D7SKwIHV.js} +1 -1
- package/out/renderer/assets/icon-BOBHgcVR.css +1 -0
- package/out/renderer/assets/{index-ubUWwrdk.js → index-C9PXzKcM.js} +1 -1
- package/out/renderer/assets/{index-4a5t798a.js → index-DCbYOn58.js} +1 -1
- package/out/renderer/assets/{index-DXyMo3l_.js → index-DVpZx5bQ.js} +349 -349
- package/out/renderer/assets/{infoDiagram-PH2N3AL5-kNTi6SDn.js → infoDiagram-PH2N3AL5-CkBK4mKw.js} +1 -1
- package/out/renderer/assets/{installer-B4Wp1OYo.js → installer-B8aRlHMm.js} +1 -1
- package/out/renderer/assets/{journeyDiagram-U35MCT3I-CGb_mWQ-.js → journeyDiagram-U35MCT3I-DOP_vcVj.js} +1 -1
- package/out/renderer/assets/{kanban-definition-NDS4AKOZ-B617t0Ix.js → kanban-definition-NDS4AKOZ-Cqlk5CfS.js} +1 -1
- package/out/renderer/assets/{layout-CauoJ-o0.js → layout-Q9EOEPeJ.js} +1 -1
- package/out/renderer/assets/{legacy-agents-page-CXlkEHSc.js → legacy-agents-page-4FlrsC_-.js} +1 -1
- package/out/renderer/assets/{mermaid.core-KPZTEy4t.js → mermaid.core-DusUPS3m.js} +5 -5
- package/out/renderer/assets/{mindmap-definition-ALO5MXBD-Dr9eisNR.js → mindmap-definition-ALO5MXBD-D9LEgOC1.js} +1 -1
- package/out/renderer/assets/{page-header-BGC9nn5P.js → page-header-E6dQzCNG.js} +1 -1
- package/out/renderer/assets/{parseISO-C7JqZQIV.js → parseISO-DcM7sCOE.js} +1 -1
- package/out/renderer/assets/{pieDiagram-IB7DONF6-BW6eF1pG.js → pieDiagram-IB7DONF6-D4zuD970.js} +1 -1
- package/out/renderer/assets/{quadrantDiagram-7GDLP6J5-DfdNEUM6.js → quadrantDiagram-7GDLP6J5-otQZupuD.js} +1 -1
- package/out/renderer/assets/{radar-MK3ICKWK-D7pINtkJ.js → radar-MK3ICKWK-BqbgjUWl.js} +1 -1
- package/out/renderer/assets/{radient-auth-buttons-DGE7qjYU.js → radient-auth-buttons-D6nz-MAf.js} +1 -1
- package/out/renderer/assets/{requirementDiagram-KVF5MWMF-c_1yWNLX.js → requirementDiagram-KVF5MWMF-BZ5cqRuL.js} +1 -1
- package/out/renderer/assets/{sankeyDiagram-QLVOVGJD-DrhH2PVW.js → sankeyDiagram-QLVOVGJD-gaFfM0N3.js} +1 -1
- package/out/renderer/assets/{schedules-page-Dv2SBtN5.js → schedules-page-DLZeHC22.js} +1 -1
- package/out/renderer/assets/{sequenceDiagram-X6HHIX6F-BkjZFMxU.js → sequenceDiagram-X6HHIX6F-DjOP83pX.js} +1 -1
- package/out/renderer/assets/{settings-page-B-DRCLaD.js → settings-page-CZKUbUmk.js} +1 -1
- package/out/renderer/assets/{shield-check-BkekGG6a.js → shield-check-CUWADg7Y.js} +1 -1
- package/out/renderer/assets/{square-pen-DCerMUfT.js → square-pen-BFfkEYdr.js} +1 -1
- package/out/renderer/assets/{stateDiagram-DGXRK772-CXnOwmRo.js → stateDiagram-DGXRK772-BF2gd-7x.js} +1 -1
- package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-CBKEzmZ4.js +1 -0
- package/out/renderer/assets/{timeline-definition-BDJGKUSR-BltcMkR5.js → timeline-definition-BDJGKUSR-DH2vcjvX.js} +1 -1
- package/out/renderer/assets/{use-agent-like-mutation-DQsdECwD.js → use-agent-like-mutation-C-SB1Z3H.js} +1 -1
- package/out/renderer/assets/{xychartDiagram-VJFVF3MP-C_Pj_Ki_.js → xychartDiagram-VJFVF3MP-owIgstRn.js} +1 -1
- package/out/renderer/index.html +3 -3
- package/out/renderer/installer.html +4 -4
- package/package.json +8 -4
- package/out/renderer/assets/channel-Bl6RThgl.js +0 -1
- package/out/renderer/assets/classDiagram-GIVACNV2-BVD9sSip.js +0 -1
- package/out/renderer/assets/classDiagram-v2-COTLJTTW-BVD9sSip.js +0 -1
- package/out/renderer/assets/clone-CmNSmjpd.js +0 -1
- package/out/renderer/assets/icon-3H5rqhcf.css +0 -1
- package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-VnQV0ByK.js +0 -1
- /package/out/renderer/assets/{icon-1lzWk9mU.js → icon-Cj67f9xD.js} +0 -0
package/out/main/index.js
CHANGED
|
@@ -3342,6 +3342,19 @@ function didUpgradeLand(input) {
|
|
|
3342
3342
|
}
|
|
3343
3343
|
return before.trim() !== after.trim();
|
|
3344
3344
|
}
|
|
3345
|
+
const launchEnv = {
|
|
3346
|
+
...process.env
|
|
3347
|
+
};
|
|
3348
|
+
const LOG_DIR_ENV = "LOCAL_OPERATOR_LOG_DIR";
|
|
3349
|
+
function logDirOverride(value) {
|
|
3350
|
+
const requested = value?.trim();
|
|
3351
|
+
if (requested === void 0 || requested === "") return null;
|
|
3352
|
+
if (requested.startsWith("/")) return requested;
|
|
3353
|
+
console.warn(
|
|
3354
|
+
`[logger] ${LOG_DIR_ENV}=${requested} is not an absolute path; the default log directory is used instead`
|
|
3355
|
+
);
|
|
3356
|
+
return null;
|
|
3357
|
+
}
|
|
3345
3358
|
var LogFileType = /* @__PURE__ */ ((LogFileType2) => {
|
|
3346
3359
|
LogFileType2["INSTALLER"] = "backend-installer.log";
|
|
3347
3360
|
LogFileType2["BACKEND"] = "backend-service.log";
|
|
@@ -3354,27 +3367,31 @@ class Logger {
|
|
|
3354
3367
|
logPath;
|
|
3355
3368
|
loggers;
|
|
3356
3369
|
/**
|
|
3357
|
-
*
|
|
3370
|
+
* The app's own log directory, unchanged: the platform's user-level location
|
|
3371
|
+
* for this app's data. Split out of the constructor so that the launch's
|
|
3372
|
+
* override (`LOG_DIR_ENV`, see `./log-dir`) is the ONE thing that can move it,
|
|
3373
|
+
* and so the path is composed the same way whichever branch the platform takes.
|
|
3358
3374
|
*/
|
|
3359
|
-
|
|
3375
|
+
static defaultLogPath() {
|
|
3360
3376
|
if (process.platform === "win32") {
|
|
3361
|
-
|
|
3362
|
-
}
|
|
3363
|
-
|
|
3377
|
+
return path$1.join(electron.app.getPath("userData"), "logs");
|
|
3378
|
+
}
|
|
3379
|
+
if (process.platform === "darwin") {
|
|
3380
|
+
return path$1.join(
|
|
3364
3381
|
electron.app.getPath("home"),
|
|
3365
3382
|
"Library",
|
|
3366
3383
|
"Application Support",
|
|
3367
3384
|
"Local Operator",
|
|
3368
3385
|
"logs"
|
|
3369
3386
|
);
|
|
3370
|
-
} else {
|
|
3371
|
-
this.logPath = path$1.join(
|
|
3372
|
-
electron.app.getPath("home"),
|
|
3373
|
-
".config",
|
|
3374
|
-
"local-operator",
|
|
3375
|
-
"logs"
|
|
3376
|
-
);
|
|
3377
3387
|
}
|
|
3388
|
+
return path$1.join(electron.app.getPath("home"), ".config", "local-operator", "logs");
|
|
3389
|
+
}
|
|
3390
|
+
/**
|
|
3391
|
+
* Private constructor to enforce singleton pattern
|
|
3392
|
+
*/
|
|
3393
|
+
constructor() {
|
|
3394
|
+
this.logPath = logDirOverride(launchEnv[LOG_DIR_ENV]) ?? Logger.defaultLogPath();
|
|
3378
3395
|
if (!fs.existsSync(this.logPath)) {
|
|
3379
3396
|
fs.mkdirSync(this.logPath, { recursive: true });
|
|
3380
3397
|
}
|
|
@@ -14024,6 +14041,116 @@ class DesktopNotifier {
|
|
|
14024
14041
|
notification.show();
|
|
14025
14042
|
}
|
|
14026
14043
|
}
|
|
14044
|
+
const DEV_DRIVER_ENV = "LOCAL_OPERATOR_UI_DEV_DRIVER";
|
|
14045
|
+
const DEV_DRIVER_OUT_ENV = "LOCAL_OPERATOR_UI_DEV_DRIVER_OUT";
|
|
14046
|
+
const DEV_DRIVER_ARG = "--lo-dev-driver";
|
|
14047
|
+
const DEV_DRIVER_CAPTURE = "dev-driver-capture";
|
|
14048
|
+
const DEV_DRIVER_FACTS = "dev-driver-facts";
|
|
14049
|
+
const TRUTHY = /* @__PURE__ */ new Set(["1", "true"]);
|
|
14050
|
+
function readOptIn(env) {
|
|
14051
|
+
const raw = env[DEV_DRIVER_ENV];
|
|
14052
|
+
if (raw === void 0 || raw.trim() === "")
|
|
14053
|
+
return { asked: false, value: null };
|
|
14054
|
+
return { asked: true, value: raw.trim() };
|
|
14055
|
+
}
|
|
14056
|
+
function resolveDevDriverArming(input) {
|
|
14057
|
+
const off = (problems = []) => ({
|
|
14058
|
+
armed: false,
|
|
14059
|
+
outDir: null,
|
|
14060
|
+
problems
|
|
14061
|
+
});
|
|
14062
|
+
const optIn = readOptIn(input.env);
|
|
14063
|
+
if (!optIn.asked) return off();
|
|
14064
|
+
if (!TRUTHY.has(optIn.value.toLowerCase())) {
|
|
14065
|
+
return off([
|
|
14066
|
+
`${DEV_DRIVER_ENV}=${optIn.value} is not an opt-in (accepted: 1, true); the renderer dev driver stayed off`
|
|
14067
|
+
]);
|
|
14068
|
+
}
|
|
14069
|
+
if (input.windowMode !== "headless" && input.windowMode !== "inactive") {
|
|
14070
|
+
return off([
|
|
14071
|
+
`the renderer dev driver refused to arm in a "${input.windowMode}" window; it never raises one, so use --window-mode=headless (or inactive)`
|
|
14072
|
+
]);
|
|
14073
|
+
}
|
|
14074
|
+
const outDir = input.env[DEV_DRIVER_OUT_ENV]?.trim() ?? "";
|
|
14075
|
+
if (outDir === "" || !outDir.startsWith("/")) {
|
|
14076
|
+
return off([
|
|
14077
|
+
`${DEV_DRIVER_ENV} was set but ${DEV_DRIVER_OUT_ENV} is ${outDir === "" ? "missing" : `"${outDir}"`}; an absolute frames directory is required, so the driver did not arm`
|
|
14078
|
+
]);
|
|
14079
|
+
}
|
|
14080
|
+
return { armed: true, outDir, problems: [] };
|
|
14081
|
+
}
|
|
14082
|
+
function devDriverArgument(outDir) {
|
|
14083
|
+
return `${DEV_DRIVER_ARG}=${outDir}`;
|
|
14084
|
+
}
|
|
14085
|
+
function describeDevDriverArming(arming) {
|
|
14086
|
+
if (arming.armed) {
|
|
14087
|
+
return `[dev-driver] ARMED; frames are written to ${arming.outDir}`;
|
|
14088
|
+
}
|
|
14089
|
+
if (arming.problems.length === 0) return null;
|
|
14090
|
+
return `[dev-driver] not armed: ${arming.problems.join("; ")}`;
|
|
14091
|
+
}
|
|
14092
|
+
const FRAME_LABEL = /^[a-z0-9][a-z0-9_-]{0,63}$/;
|
|
14093
|
+
function registerDevDriverIPC(options) {
|
|
14094
|
+
const { window, expectedUrl, outDir, identity } = options;
|
|
14095
|
+
fs.mkdirSync(outDir, { recursive: true });
|
|
14096
|
+
const frames = [];
|
|
14097
|
+
function authorize(event) {
|
|
14098
|
+
const owner = window();
|
|
14099
|
+
if (!owner || owner.isDestroyed() || event.sender !== owner.webContents || event.senderFrame !== owner.webContents.mainFrame || !trustedDesktopFrame(event.senderFrame.url, expectedUrl)) {
|
|
14100
|
+
throw new Error("This window cannot use the dev driver.");
|
|
14101
|
+
}
|
|
14102
|
+
return owner;
|
|
14103
|
+
}
|
|
14104
|
+
electron.ipcMain.handle(DEV_DRIVER_FACTS, (event) => {
|
|
14105
|
+
const owner = authorize(event);
|
|
14106
|
+
const bounds = owner.getContentBounds();
|
|
14107
|
+
return {
|
|
14108
|
+
...identity,
|
|
14109
|
+
title: owner.getTitle(),
|
|
14110
|
+
windowSize: {
|
|
14111
|
+
width: owner.getBounds().width,
|
|
14112
|
+
height: owner.getBounds().height
|
|
14113
|
+
},
|
|
14114
|
+
contentBounds: {
|
|
14115
|
+
width: bounds.width,
|
|
14116
|
+
height: bounds.height
|
|
14117
|
+
},
|
|
14118
|
+
visible: owner.isVisible(),
|
|
14119
|
+
focused: owner.isFocused(),
|
|
14120
|
+
minimized: owner.isMinimized(),
|
|
14121
|
+
frames: [...frames],
|
|
14122
|
+
outDir
|
|
14123
|
+
};
|
|
14124
|
+
});
|
|
14125
|
+
electron.ipcMain.handle(DEV_DRIVER_CAPTURE, async (event, label) => {
|
|
14126
|
+
const owner = authorize(event);
|
|
14127
|
+
if (typeof label !== "string" || !FRAME_LABEL.test(label)) {
|
|
14128
|
+
throw new Error(
|
|
14129
|
+
"Invalid frame label: lowercase letters, digits, dash and underscore only."
|
|
14130
|
+
);
|
|
14131
|
+
}
|
|
14132
|
+
const image2 = await owner.webContents.capturePage();
|
|
14133
|
+
const png = image2.toPNG();
|
|
14134
|
+
const file = path$1.join(outDir, `${label}.png`);
|
|
14135
|
+
fs.writeFileSync(file, png);
|
|
14136
|
+
frames.push(label);
|
|
14137
|
+
const size = image2.getSize();
|
|
14138
|
+
return {
|
|
14139
|
+
label,
|
|
14140
|
+
path: file,
|
|
14141
|
+
bytes: png.byteLength,
|
|
14142
|
+
pixels: { width: size.width, height: size.height },
|
|
14143
|
+
// The CSS viewport at capture time, read from the page rather than
|
|
14144
|
+
// derived from the window: a `BrowserWindow` size includes the
|
|
14145
|
+
// platform's window chrome, so 1380x900 is a 1380x872 viewport on
|
|
14146
|
+
// macOS and a frame labelled from the window would overstate it.
|
|
14147
|
+
viewport: await owner.webContents.executeJavaScript(
|
|
14148
|
+
"({ width: window.innerWidth, height: window.innerHeight, devicePixelRatio: window.devicePixelRatio })",
|
|
14149
|
+
true
|
|
14150
|
+
)
|
|
14151
|
+
};
|
|
14152
|
+
});
|
|
14153
|
+
}
|
|
14027
14154
|
const lastPickedDirectory = /* @__PURE__ */ new Map();
|
|
14028
14155
|
function withRememberedDirectory(kind, options, fallbackDirectory) {
|
|
14029
14156
|
if (options.defaultPath) return options;
|
|
@@ -17225,8 +17352,19 @@ function createWindow(initialSession = null, openCatalogue = false) {
|
|
|
17225
17352
|
* no single conversation to name, and "no flag at all" already means
|
|
17226
17353
|
* "restore what you had open" — so it needs a flag of its own rather than
|
|
17227
17354
|
* sharing that absence.
|
|
17355
|
+
*
|
|
17356
|
+
* AND the renderer dev driver's arming entry, which is the other thing this
|
|
17357
|
+
* app puts in a renderer's argv — usually absent, because it is present only
|
|
17358
|
+
* in a launch that opted in. See `devDriverWebPreferences` above and
|
|
17359
|
+
* `src/main/dev-driver.ts` for what arms a run and what the entry is read by.
|
|
17360
|
+
*
|
|
17361
|
+
* WHY ONE SPREAD AND NOT TWO: both sources write `additionalArguments`, so a
|
|
17362
|
+
* second spread REPLACES the first's array rather than adding to it — and
|
|
17363
|
+
* either one alone still produces a well-formed window, so the loss would be
|
|
17364
|
+
* silent. `rendererArgumentFlags` below concatenates them, and is `{}` when
|
|
17365
|
+
* neither applies, so "adds no option at all" stays literally true.
|
|
17228
17366
|
*/
|
|
17229
|
-
...
|
|
17367
|
+
...rendererArgumentFlags(initialSession, openCatalogue)
|
|
17230
17368
|
}
|
|
17231
17369
|
});
|
|
17232
17370
|
if (initialSession) holdPresentUntilConversation(mainWindow2, initialSession);
|
|
@@ -17330,7 +17468,7 @@ const reportBackendFailure = (message, fileType) => {
|
|
|
17330
17468
|
electron.dialog.showErrorBox("Backend Error", message);
|
|
17331
17469
|
};
|
|
17332
17470
|
const windowLaunch = resolveWindowLaunchPlan({
|
|
17333
|
-
env:
|
|
17471
|
+
env: launchEnv,
|
|
17334
17472
|
argv: process.argv
|
|
17335
17473
|
});
|
|
17336
17474
|
for (const problem of windowLaunch.problems) {
|
|
@@ -17340,6 +17478,13 @@ for (const problem of windowLaunch.problems) {
|
|
|
17340
17478
|
if (windowLaunch.mode !== "normal") {
|
|
17341
17479
|
console.log(`[window-mode] ${describeWindowLaunch(windowLaunch)}`);
|
|
17342
17480
|
}
|
|
17481
|
+
const devDriverArming = resolveDevDriverArming({
|
|
17482
|
+
env: launchEnv,
|
|
17483
|
+
windowMode: windowLaunch.mode
|
|
17484
|
+
});
|
|
17485
|
+
const devDriverLine = describeDevDriverArming(devDriverArming);
|
|
17486
|
+
if (devDriverLine) console.log(devDriverLine);
|
|
17487
|
+
const devDriverWebPreferences = devDriverArming.armed && devDriverArming.outDir ? { additionalArguments: [devDriverArgument(devDriverArming.outDir)] } : {};
|
|
17343
17488
|
let mainWindow = null;
|
|
17344
17489
|
let activeUpdateService = null;
|
|
17345
17490
|
const launchTarget = readLaunchTarget(process.argv);
|
|
@@ -17352,6 +17497,13 @@ function launchArgumentFlags(initialSession, openCatalogue) {
|
|
|
17352
17497
|
if (openCatalogue) return { additionalArguments: [OPEN_CATALOGUE_FLAG] };
|
|
17353
17498
|
return {};
|
|
17354
17499
|
}
|
|
17500
|
+
function rendererArgumentFlags(initialSession, openCatalogue) {
|
|
17501
|
+
const flags = [
|
|
17502
|
+
...launchArgumentFlags(initialSession, openCatalogue).additionalArguments ?? [],
|
|
17503
|
+
...devDriverWebPreferences.additionalArguments ?? []
|
|
17504
|
+
];
|
|
17505
|
+
return flags.length > 0 ? { additionalArguments: flags } : {};
|
|
17506
|
+
}
|
|
17355
17507
|
let queuedSession = null;
|
|
17356
17508
|
let viewerRecord = null;
|
|
17357
17509
|
let viewerEndpoint = null;
|
|
@@ -17563,6 +17715,18 @@ electron.app.whenReady().then(async () => {
|
|
|
17563
17715
|
desktopNotifier,
|
|
17564
17716
|
(sessionId2) => viewerRecord?.releaseSession(sessionId2)
|
|
17565
17717
|
);
|
|
17718
|
+
if (devDriverArming.armed && devDriverArming.outDir) {
|
|
17719
|
+
registerDevDriverIPC({
|
|
17720
|
+
window: () => mainWindow,
|
|
17721
|
+
expectedUrl: rendererUrl,
|
|
17722
|
+
outDir: devDriverArming.outDir,
|
|
17723
|
+
identity: {
|
|
17724
|
+
windowMode: windowLaunch.mode,
|
|
17725
|
+
appVersion: electron.app.getVersion(),
|
|
17726
|
+
platform: process.platform
|
|
17727
|
+
}
|
|
17728
|
+
});
|
|
17729
|
+
}
|
|
17566
17730
|
electron.ipcMain.handle("open-file", async (_, filePath) => {
|
|
17567
17731
|
try {
|
|
17568
17732
|
await electron.shell.openPath(filePath);
|
package/out/preload/index.js
CHANGED
|
@@ -104,6 +104,56 @@ function readLaunchTarget(argv) {
|
|
|
104
104
|
if (argv.includes(OPEN_CATALOGUE_FLAG)) return { kind: "catalogue" };
|
|
105
105
|
return { kind: "restore" };
|
|
106
106
|
}
|
|
107
|
+
const DEV_DRIVER_ARG = "--lo-dev-driver";
|
|
108
|
+
const DEV_DRIVER_CAPTURE = "dev-driver-capture";
|
|
109
|
+
const DEV_DRIVER_FACTS = "dev-driver-facts";
|
|
110
|
+
const DEV_DRIVER_WORLD_KEY = "__loDevDriver";
|
|
111
|
+
function readDevDriverArgument(argv) {
|
|
112
|
+
const prefix = `${DEV_DRIVER_ARG}=`;
|
|
113
|
+
const match = argv.find((entry) => entry.startsWith(prefix));
|
|
114
|
+
if (match === void 0) return null;
|
|
115
|
+
const outDir = match.slice(prefix.length);
|
|
116
|
+
if (outDir === "" || !outDir.startsWith("/")) return null;
|
|
117
|
+
return { outDir };
|
|
118
|
+
}
|
|
119
|
+
function armedArgument() {
|
|
120
|
+
const parsed = readDevDriverArgument(process.argv);
|
|
121
|
+
return parsed === null ? null : { armed: true, outDir: parsed.outDir };
|
|
122
|
+
}
|
|
123
|
+
function installDevDriverBridge() {
|
|
124
|
+
const armed = armedArgument();
|
|
125
|
+
if (!armed) return false;
|
|
126
|
+
const scenes = /* @__PURE__ */ new Map();
|
|
127
|
+
const bridge = {
|
|
128
|
+
armed: true,
|
|
129
|
+
outDir: armed.outDir,
|
|
130
|
+
verbs: () => [...scenes.keys()].sort(),
|
|
131
|
+
install: (verbs) => {
|
|
132
|
+
const registered = [];
|
|
133
|
+
for (const [name, fn] of Object.entries(verbs ?? {})) {
|
|
134
|
+
if (typeof fn !== "function") {
|
|
135
|
+
throw new Error(`dev driver verb "${name}" is not a function`);
|
|
136
|
+
}
|
|
137
|
+
scenes.set(name, fn);
|
|
138
|
+
registered.push(name);
|
|
139
|
+
}
|
|
140
|
+
return registered.sort();
|
|
141
|
+
},
|
|
142
|
+
call: (name, payload) => {
|
|
143
|
+
const fn = scenes.get(name);
|
|
144
|
+
if (!fn) {
|
|
145
|
+
throw new Error(
|
|
146
|
+
`no dev driver verb "${name}" (have: ${[...scenes.keys()].sort().join(", ") || "none yet"})`
|
|
147
|
+
);
|
|
148
|
+
}
|
|
149
|
+
return fn(payload);
|
|
150
|
+
},
|
|
151
|
+
capture: (label) => electron.ipcRenderer.invoke(DEV_DRIVER_CAPTURE, label),
|
|
152
|
+
facts: () => electron.ipcRenderer.invoke(DEV_DRIVER_FACTS)
|
|
153
|
+
};
|
|
154
|
+
electron.contextBridge.exposeInMainWorld(DEV_DRIVER_WORLD_KEY, bridge);
|
|
155
|
+
return true;
|
|
156
|
+
}
|
|
107
157
|
const api = {
|
|
108
158
|
desktop: {
|
|
109
159
|
request: (request) => electron.ipcRenderer.invoke("desktop-request", request),
|
|
@@ -551,3 +601,4 @@ if (process.contextIsolated) {
|
|
|
551
601
|
window.electron = electronAPI;
|
|
552
602
|
window.api = api;
|
|
553
603
|
}
|
|
604
|
+
installDevDriverBridge();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as o,c as b,g as v,k as O,h as P,j as p,l as w,m as A,n as x,t as c,o as N}from"./_baseUniq-
|
|
1
|
+
import{e as o,c as b,g as v,k as O,h as P,j as p,l as w,m as A,n as x,t as c,o as N}from"./_baseUniq-CoibNQAD.js";import{as as g,aa as y,at as E,au as F,av as M,aw as I,ax as _,ay as $,az as B,aA as T}from"./mermaid.core-DusUPS3m.js";var S=/\s/;function z(n){for(var r=n.length;r--&&S.test(n.charAt(r)););return r}var G=/^\s+/;function H(n){return n&&n.slice(0,z(n)+1).replace(G,"")}var m=NaN,L=/^[-+]0x[0-9a-f]+$/i,R=/^0b[01]+$/i,q=/^0o[0-7]+$/i,C=parseInt;function K(n){if(typeof n=="number")return n;if(o(n))return m;if(g(n)){var r=typeof n.valueOf=="function"?n.valueOf():n;n=g(r)?r+"":r}if(typeof n!="string")return n===0?n:+n;n=H(n);var t=R.test(n);return t||q.test(n)?C(n.slice(2),t?2:8):L.test(n)?m:+n}var W=1/0,X=17976931348623157e292;function Y(n){if(!n)return n===0?n:0;if(n=K(n),n===W||n===-1/0){var r=n<0?-1:1;return r*X}return n===n?n:0}function D(n){var r=Y(n),t=r%1;return r===r?t?r-t:r:0}function fn(n){var r=n==null?0:n.length;return r?b(n):[]}var l=Object.prototype,J=l.hasOwnProperty,dn=y(function(n,r){n=Object(n);var t=-1,e=r.length,a=e>2?r[2]:void 0;for(a&&E(r[0],r[1],a)&&(e=1);++t<e;)for(var f=r[t],i=F(f),s=-1,d=i.length;++s<d;){var u=i[s],h=n[u];(h===void 0||M(h,l[u])&&!J.call(n,u))&&(n[u]=f[u])}return n});function un(n){var r=n==null?0:n.length;return r?n[r-1]:void 0}function Q(n){return function(r,t,e){var a=Object(r);if(!I(r)){var f=v(t);r=O(r),t=function(s){return f(a[s],s,a)}}var i=n(r,t,e);return i>-1?a[f?r[i]:i]:void 0}}var U=Math.max;function Z(n,r,t){var e=n==null?0:n.length;if(!e)return-1;var a=t==null?0:D(t);return a<0&&(a=U(e+a,0)),P(n,v(r),a)}var hn=Q(Z);function V(n,r){var t=-1,e=I(n)?Array(n.length):[];return p(n,function(a,f,i){e[++t]=r(a,f,i)}),e}function gn(n,r){var t=_(n)?w:V;return t(n,v(r))}var j=Object.prototype,k=j.hasOwnProperty;function nn(n,r){return n!=null&&k.call(n,r)}function vn(n,r){return n!=null&&A(n,r,nn)}function rn(n,r){return n<r}function tn(n,r,t){for(var e=-1,a=n.length;++e<a;){var f=n[e],i=r(f);if(i!=null&&(s===void 0?i===i&&!o(i):t(i,s)))var s=i,d=f}return d}function mn(n){return n&&n.length?tn(n,$,rn):void 0}function an(n,r,t,e){if(!g(n))return n;r=x(r,n);for(var a=-1,f=r.length,i=f-1,s=n;s!=null&&++a<f;){var d=c(r[a]),u=t;if(d==="__proto__"||d==="constructor"||d==="prototype")return n;if(a!=i){var h=s[d];u=void 0,u===void 0&&(u=g(h)?h:B(r[a+1])?[]:{})}T(s,d,u),s=s[d]}return n}function on(n,r,t){for(var e=-1,a=r.length,f={};++e<a;){var i=r[e],s=N(n,i);t(s,i)&&an(f,x(i,n),s)}return f}export{rn as a,tn as b,V as c,on as d,mn as e,fn as f,hn as g,vn as h,dn as i,D as j,un as l,gn as m,Y as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{aH as S,aI as Rn,ax as T,aJ as w,aK as xn,aL as Mn,aw as sn,aM as mn,aN as un,aO as x,au as U,aP as Cn,aQ as on,aR as Fn,aS as E,aF as gn,aT as R,as as ln,aU as Dn,aV as D,aW as Gn,aX as Un,aY as _,aA as Nn,aZ as Bn,av as Kn,a_ as X,a$ as Hn,b0 as jn,az as Yn,ay as cn,aD as Zn,b1 as m}from"./mermaid.core-KPZTEy4t.js";var qn="[object Symbol]";function N(n){return typeof n=="symbol"||S(n)&&Rn(n)==qn}function dn(n,r){for(var e=-1,t=n==null?0:n.length,a=Array(t);++e<t;)a[e]=r(n[e],e,n);return a}var J=w?w.prototype:void 0,Q=J?J.toString:void 0;function pn(n){if(typeof n=="string")return n;if(T(n))return dn(n,pn)+"";if(N(n))return Q?Q.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function Xn(){}function An(n,r){for(var e=-1,t=n==null?0:n.length;++e<t&&r(n[e],e,n)!==!1;);return n}function Jn(n,r,e,t){for(var a=n.length,i=e+-1;++i<a;)if(r(n[i],i,n))return i;return-1}function Qn(n){return n!==n}function Wn(n,r,e){for(var t=e-1,a=n.length;++t<a;)if(n[t]===r)return t;return-1}function zn(n,r,e){return r===r?Wn(n,r,e):Jn(n,Qn,e)}function Vn(n,r){var e=n==null?0:n.length;return!!e&&zn(n,r,0)>-1}function $(n){return sn(n)?xn(n):Mn(n)}var kn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,nr=/^\w*$/;function B(n,r){if(T(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||N(n)?!0:nr.test(n)||!kn.test(n)||r!=null&&n in Object(r)}var rr=500;function er(n){var r=mn(n,function(t){return e.size===rr&&e.clear(),t}),e=r.cache;return r}var tr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ir=/\\(\\)?/g,ar=er(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(tr,function(e,t,a,i){r.push(a?i.replace(ir,"$1"):t||e)}),r});function fr(n){return n==null?"":pn(n)}function yn(n,r){return T(n)?n:B(n,r)?[n]:ar(fr(n))}function M(n){if(typeof n=="string"||N(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function bn(n,r){r=yn(r,n);for(var e=0,t=r.length;n!=null&&e<t;)n=n[M(r[e++])];return e&&e==t?n:void 0}function sr(n,r,e){var t=n==null?void 0:bn(n,r);return t===void 0?e:t}function K(n,r){for(var e=-1,t=r.length,a=n.length;++e<t;)n[a+e]=r[e];return n}var W=w?w.isConcatSpreadable:void 0;function ur(n){return T(n)||un(n)||!!(W&&n&&n[W])}function Ot(n,r,e,t,a){var i=-1,f=n.length;for(e||(e=ur),a||(a=[]);++i<f;){var s=n[i];e(s)?K(a,s):t||(a[a.length]=s)}return a}function or(n,r,e,t){var a=-1,i=n==null?0:n.length;for(t&&i&&(e=n[++a]);++a<i;)e=r(e,n[a],a,n);return e}function gr(n,r){return n&&x(r,$(r),n)}function lr(n,r){return n&&x(r,U(r),n)}function Tn(n,r){for(var e=-1,t=n==null?0:n.length,a=0,i=[];++e<t;){var f=n[e];r(f,e,n)&&(i[a++]=f)}return i}function hn(){return[]}var cr=Object.prototype,dr=cr.propertyIsEnumerable,z=Object.getOwnPropertySymbols,H=z?function(n){return n==null?[]:(n=Object(n),Tn(z(n),function(r){return dr.call(n,r)}))}:hn;function pr(n,r){return x(n,H(n),r)}var Ar=Object.getOwnPropertySymbols,wn=Ar?function(n){for(var r=[];n;)K(r,H(n)),n=Cn(n);return r}:hn;function yr(n,r){return x(n,wn(n),r)}function On(n,r,e){var t=r(n);return T(n)?t:K(t,e(n))}function G(n){return On(n,$,H)}function br(n){return On(n,U,wn)}var Tr=Object.prototype,hr=Tr.hasOwnProperty;function wr(n){var r=n.length,e=new n.constructor(r);return r&&typeof n[0]=="string"&&hr.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function Or(n,r){var e=r?on(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}var $r=/\w*$/;function _r(n){var r=new n.constructor(n.source,$r.exec(n));return r.lastIndex=n.lastIndex,r}var V=w?w.prototype:void 0,k=V?V.valueOf:void 0;function Sr(n){return k?Object(k.call(n)):{}}var Er="[object Boolean]",Ir="[object Date]",Pr="[object Map]",vr="[object Number]",Lr="[object RegExp]",Rr="[object Set]",xr="[object String]",Mr="[object Symbol]",mr="[object ArrayBuffer]",Cr="[object DataView]",Fr="[object Float32Array]",Dr="[object Float64Array]",Gr="[object Int8Array]",Ur="[object Int16Array]",Nr="[object Int32Array]",Br="[object Uint8Array]",Kr="[object Uint8ClampedArray]",Hr="[object Uint16Array]",jr="[object Uint32Array]";function Yr(n,r,e){var t=n.constructor;switch(r){case mr:return on(n);case Er:case Ir:return new t(+n);case Cr:return Or(n,e);case Fr:case Dr:case Gr:case Ur:case Nr:case Br:case Kr:case Hr:case jr:return Fn(n,e);case Pr:return new t;case vr:case xr:return new t(n);case Lr:return _r(n);case Rr:return new t;case Mr:return Sr(n)}}var Zr="[object Map]";function qr(n){return S(n)&&E(n)==Zr}var nn=R&&R.isMap,Xr=nn?gn(nn):qr,Jr="[object Set]";function Qr(n){return S(n)&&E(n)==Jr}var rn=R&&R.isSet,Wr=rn?gn(rn):Qr,zr=1,Vr=2,kr=4,$n="[object Arguments]",ne="[object Array]",re="[object Boolean]",ee="[object Date]",te="[object Error]",_n="[object Function]",ie="[object GeneratorFunction]",ae="[object Map]",fe="[object Number]",Sn="[object Object]",se="[object RegExp]",ue="[object Set]",oe="[object String]",ge="[object Symbol]",le="[object WeakMap]",ce="[object ArrayBuffer]",de="[object DataView]",pe="[object Float32Array]",Ae="[object Float64Array]",ye="[object Int8Array]",be="[object Int16Array]",Te="[object Int32Array]",he="[object Uint8Array]",we="[object Uint8ClampedArray]",Oe="[object Uint16Array]",$e="[object Uint32Array]",g={};g[$n]=g[ne]=g[ce]=g[de]=g[re]=g[ee]=g[pe]=g[Ae]=g[ye]=g[be]=g[Te]=g[ae]=g[fe]=g[Sn]=g[se]=g[ue]=g[oe]=g[ge]=g[he]=g[we]=g[Oe]=g[$e]=!0;g[te]=g[_n]=g[le]=!1;function C(n,r,e,t,a,i){var f,s=r&zr,u=r&Vr,d=r&kr;if(f!==void 0)return f;if(!ln(n))return n;var l=T(n);if(l){if(f=wr(n),!s)return Dn(n,f)}else{var o=E(n),c=o==_n||o==ie;if(D(n))return Gn(n,s);if(o==Sn||o==$n||c&&!a){if(f=u||c?{}:Un(n),!s)return u?yr(n,lr(f,n)):pr(n,gr(f,n))}else{if(!g[o])return a?n:{};f=Yr(n,o,s)}}i||(i=new _);var h=i.get(n);if(h)return h;i.set(n,f),Wr(n)?n.forEach(function(p){f.add(C(p,r,e,p,n,i))}):Xr(n)&&n.forEach(function(p,A){f.set(A,C(p,r,e,A,n,i))});var y=d?u?br:G:u?U:$,b=l?void 0:y(n);return An(b||n,function(p,A){b&&(A=p,p=n[A]),Nn(f,A,C(p,r,e,A,n,i))}),f}var _e="__lodash_hash_undefined__";function Se(n){return this.__data__.set(n,_e),this}function Ee(n){return this.__data__.has(n)}function I(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new Bn;++r<e;)this.add(n[r])}I.prototype.add=I.prototype.push=Se;I.prototype.has=Ee;function Ie(n,r){for(var e=-1,t=n==null?0:n.length;++e<t;)if(r(n[e],e,n))return!0;return!1}function En(n,r){return n.has(r)}var Pe=1,ve=2;function In(n,r,e,t,a,i){var f=e&Pe,s=n.length,u=r.length;if(s!=u&&!(f&&u>s))return!1;var d=i.get(n),l=i.get(r);if(d&&l)return d==r&&l==n;var o=-1,c=!0,h=e&ve?new I:void 0;for(i.set(n,r),i.set(r,n);++o<s;){var y=n[o],b=r[o];if(t)var p=f?t(b,y,o,r,n,i):t(y,b,o,n,r,i);if(p!==void 0){if(p)continue;c=!1;break}if(h){if(!Ie(r,function(A,O){if(!En(h,O)&&(y===A||a(y,A,e,t,i)))return h.push(O)})){c=!1;break}}else if(!(y===b||a(y,b,e,t,i))){c=!1;break}}return i.delete(n),i.delete(r),c}function Le(n){var r=-1,e=Array(n.size);return n.forEach(function(t,a){e[++r]=[a,t]}),e}function j(n){var r=-1,e=Array(n.size);return n.forEach(function(t){e[++r]=t}),e}var Re=1,xe=2,Me="[object Boolean]",me="[object Date]",Ce="[object Error]",Fe="[object Map]",De="[object Number]",Ge="[object RegExp]",Ue="[object Set]",Ne="[object String]",Be="[object Symbol]",Ke="[object ArrayBuffer]",He="[object DataView]",en=w?w.prototype:void 0,F=en?en.valueOf:void 0;function je(n,r,e,t,a,i,f){switch(e){case He:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case Ke:return!(n.byteLength!=r.byteLength||!i(new X(n),new X(r)));case Me:case me:case De:return Kn(+n,+r);case Ce:return n.name==r.name&&n.message==r.message;case Ge:case Ne:return n==r+"";case Fe:var s=Le;case Ue:var u=tℜif(s||(s=j),n.size!=r.size&&!u)return!1;var d=f.get(n);if(d)return d==r;t|=xe,f.set(n,r);var l=In(s(n),s(r),t,a,i,f);return f.delete(n),l;case Be:if(F)return F.call(n)==F.call(r)}return!1}var Ye=1,Ze=Object.prototype,qe=Ze.hasOwnProperty;function Xe(n,r,e,t,a,i){var f=e&Ye,s=G(n),u=s.length,d=G(r),l=d.length;if(u!=l&&!f)return!1;for(var o=u;o--;){var c=s[o];if(!(f?c in r:qe.call(r,c)))return!1}var h=i.get(n),y=i.get(r);if(h&&y)return h==r&&y==n;var b=!0;i.set(n,r),i.set(r,n);for(var p=f;++o<u;){c=s[o];var A=n[c],O=r[c];if(t)var q=f?t(O,A,c,r,n,i):t(A,O,c,n,r,i);if(!(q===void 0?A===O||a(A,O,e,t,i):q)){b=!1;break}p||(p=c=="constructor")}if(b&&!p){var P=n.constructor,v=r.constructor;P!=v&&"constructor"in n&&"constructor"in r&&!(typeof P=="function"&&P instanceof P&&typeof v=="function"&&v instanceof v)&&(b=!1)}return i.delete(n),i.delete(r),b}var Je=1,tn="[object Arguments]",an="[object Array]",L="[object Object]",Qe=Object.prototype,fn=Qe.hasOwnProperty;function We(n,r,e,t,a,i){var f=T(n),s=T(r),u=f?an:E(n),d=s?an:E(r);u=u==tn?L:u,d=d==tn?L:d;var l=u==L,o=d==L,c=u==d;if(c&&D(n)){if(!D(r))return!1;f=!0,l=!1}if(c&&!l)return i||(i=new _),f||Hn(n)?In(n,r,e,t,a,i):je(n,r,u,e,t,a,i);if(!(e&Je)){var h=l&&fn.call(n,"__wrapped__"),y=o&&fn.call(r,"__wrapped__");if(h||y){var b=h?n.value():n,p=y?r.value():r;return i||(i=new _),a(b,p,e,t,i)}}return c?(i||(i=new _),Xe(n,r,e,t,a,i)):!1}function Y(n,r,e,t,a){return n===r?!0:n==null||r==null||!S(n)&&!S(r)?n!==n&&r!==r:We(n,r,e,t,Y,a)}var ze=1,Ve=2;function ke(n,r,e,t){var a=e.length,i=a;if(n==null)return!i;for(n=Object(n);a--;){var f=e[a];if(f[2]?f[1]!==n[f[0]]:!(f[0]in n))return!1}for(;++a<i;){f=e[a];var s=f[0],u=n[s],d=f[1];if(f[2]){if(u===void 0&&!(s in n))return!1}else{var l=new _,o;if(!(o===void 0?Y(d,u,ze|Ve,t,l):o))return!1}}return!0}function Pn(n){return n===n&&!ln(n)}function nt(n){for(var r=$(n),e=r.length;e--;){var t=r[e],a=n[t];r[e]=[t,a,Pn(a)]}return r}function vn(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function rt(n){var r=nt(n);return r.length==1&&r[0][2]?vn(r[0][0],r[0][1]):function(e){return e===n||ke(e,n,r)}}function et(n,r){return n!=null&&r in Object(n)}function tt(n,r,e){r=yn(r,n);for(var t=-1,a=r.length,i=!1;++t<a;){var f=M(r[t]);if(!(i=n!=null&&e(n,f)))break;n=n[f]}return i||++t!=a?i:(a=n==null?0:n.length,!!a&&jn(a)&&Yn(f,a)&&(T(n)||un(n)))}function it(n,r){return n!=null&&tt(n,r,et)}var at=1,ft=2;function st(n,r){return B(n)&&Pn(r)?vn(M(n),r):function(e){var t=sr(e,n);return t===void 0&&t===r?it(e,n):Y(r,t,at|ft)}}function ut(n){return function(r){return r?.[n]}}function ot(n){return function(r){return bn(r,n)}}function gt(n){return B(n)?ut(M(n)):ot(n)}function Ln(n){return typeof n=="function"?n:n==null?cn:typeof n=="object"?T(n)?st(n[0],n[1]):rt(n):gt(n)}function lt(n,r){return n&&Zn(n,r,$)}function ct(n,r){return function(e,t){if(e==null)return e;if(!sn(e))return n(e,t);for(var a=e.length,i=-1,f=Object(e);++i<a&&t(f[i],i,f)!==!1;);return e}}var Z=ct(lt);function dt(n){return typeof n=="function"?n:cn}function $t(n,r){var e=T(n)?An:Z;return e(n,dt(r))}function pt(n,r){var e=[];return Z(n,function(t,a,i){r(t,a,i)&&e.push(t)}),e}function _t(n,r){var e=T(n)?Tn:pt;return e(n,Ln(r))}function At(n,r){return dn(r,function(e){return n[e]})}function St(n){return n==null?[]:At(n,$(n))}function Et(n){return n===void 0}function yt(n,r,e,t,a){return a(n,function(i,f,s){e=t?(t=!1,i):r(e,i,f,s)}),e}function It(n,r,e){var t=T(n)?or:yt,a=arguments.length<3;return t(n,Ln(r),e,a,Z)}var bt=1/0,Tt=m&&1/j(new m([,-0]))[1]==bt?function(n){return new m(n)}:Xn,ht=200;function Pt(n,r,e){var t=-1,a=Vn,i=n.length,f=!0,s=[],u=s;if(i>=ht){var d=r?null:Tt(n);if(d)return j(d);f=!1,a=En,u=new I}else u=r?[]:s;n:for(;++t<i;){var l=n[t],o=r?r(l):l;if(l=l!==0?l:0,f&&o===o){for(var c=u.length;c--;)if(u[c]===o)continue n;r&&u.push(o),s.push(l)}else a(u,o,e)||(u!==s&&u.push(o),s.push(l))}return s}export{Tn as A,pt as B,Ie as C,Xn as D,I as S,Pt as a,C as b,Ot as c,$t as d,N as e,_t as f,Ln as g,Jn as h,Et as i,Z as j,$ as k,dn as l,tt as m,yn as n,bn as o,dt as p,lt as q,It as r,it as s,M as t,fr as u,St as v,Vn as w,En as x,zn as y,br as z};
|
|
1
|
+
import{aH as S,aI as Rn,ax as T,aJ as w,aK as xn,aL as Mn,aw as sn,aM as mn,aN as un,aO as x,au as U,aP as Cn,aQ as on,aR as Fn,aS as E,aF as gn,aT as R,as as ln,aU as Dn,aV as D,aW as Gn,aX as Un,aY as _,aA as Nn,aZ as Bn,av as Kn,a_ as X,a$ as Hn,b0 as jn,az as Yn,ay as cn,aD as Zn,b1 as m}from"./mermaid.core-DusUPS3m.js";var qn="[object Symbol]";function N(n){return typeof n=="symbol"||S(n)&&Rn(n)==qn}function dn(n,r){for(var e=-1,t=n==null?0:n.length,a=Array(t);++e<t;)a[e]=r(n[e],e,n);return a}var J=w?w.prototype:void 0,Q=J?J.toString:void 0;function pn(n){if(typeof n=="string")return n;if(T(n))return dn(n,pn)+"";if(N(n))return Q?Q.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function Xn(){}function An(n,r){for(var e=-1,t=n==null?0:n.length;++e<t&&r(n[e],e,n)!==!1;);return n}function Jn(n,r,e,t){for(var a=n.length,i=e+-1;++i<a;)if(r(n[i],i,n))return i;return-1}function Qn(n){return n!==n}function Wn(n,r,e){for(var t=e-1,a=n.length;++t<a;)if(n[t]===r)return t;return-1}function zn(n,r,e){return r===r?Wn(n,r,e):Jn(n,Qn,e)}function Vn(n,r){var e=n==null?0:n.length;return!!e&&zn(n,r,0)>-1}function $(n){return sn(n)?xn(n):Mn(n)}var kn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,nr=/^\w*$/;function B(n,r){if(T(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||N(n)?!0:nr.test(n)||!kn.test(n)||r!=null&&n in Object(r)}var rr=500;function er(n){var r=mn(n,function(t){return e.size===rr&&e.clear(),t}),e=r.cache;return r}var tr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ir=/\\(\\)?/g,ar=er(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(tr,function(e,t,a,i){r.push(a?i.replace(ir,"$1"):t||e)}),r});function fr(n){return n==null?"":pn(n)}function yn(n,r){return T(n)?n:B(n,r)?[n]:ar(fr(n))}function M(n){if(typeof n=="string"||N(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function bn(n,r){r=yn(r,n);for(var e=0,t=r.length;n!=null&&e<t;)n=n[M(r[e++])];return e&&e==t?n:void 0}function sr(n,r,e){var t=n==null?void 0:bn(n,r);return t===void 0?e:t}function K(n,r){for(var e=-1,t=r.length,a=n.length;++e<t;)n[a+e]=r[e];return n}var W=w?w.isConcatSpreadable:void 0;function ur(n){return T(n)||un(n)||!!(W&&n&&n[W])}function Ot(n,r,e,t,a){var i=-1,f=n.length;for(e||(e=ur),a||(a=[]);++i<f;){var s=n[i];e(s)?K(a,s):t||(a[a.length]=s)}return a}function or(n,r,e,t){var a=-1,i=n==null?0:n.length;for(t&&i&&(e=n[++a]);++a<i;)e=r(e,n[a],a,n);return e}function gr(n,r){return n&&x(r,$(r),n)}function lr(n,r){return n&&x(r,U(r),n)}function Tn(n,r){for(var e=-1,t=n==null?0:n.length,a=0,i=[];++e<t;){var f=n[e];r(f,e,n)&&(i[a++]=f)}return i}function hn(){return[]}var cr=Object.prototype,dr=cr.propertyIsEnumerable,z=Object.getOwnPropertySymbols,H=z?function(n){return n==null?[]:(n=Object(n),Tn(z(n),function(r){return dr.call(n,r)}))}:hn;function pr(n,r){return x(n,H(n),r)}var Ar=Object.getOwnPropertySymbols,wn=Ar?function(n){for(var r=[];n;)K(r,H(n)),n=Cn(n);return r}:hn;function yr(n,r){return x(n,wn(n),r)}function On(n,r,e){var t=r(n);return T(n)?t:K(t,e(n))}function G(n){return On(n,$,H)}function br(n){return On(n,U,wn)}var Tr=Object.prototype,hr=Tr.hasOwnProperty;function wr(n){var r=n.length,e=new n.constructor(r);return r&&typeof n[0]=="string"&&hr.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function Or(n,r){var e=r?on(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}var $r=/\w*$/;function _r(n){var r=new n.constructor(n.source,$r.exec(n));return r.lastIndex=n.lastIndex,r}var V=w?w.prototype:void 0,k=V?V.valueOf:void 0;function Sr(n){return k?Object(k.call(n)):{}}var Er="[object Boolean]",Ir="[object Date]",Pr="[object Map]",vr="[object Number]",Lr="[object RegExp]",Rr="[object Set]",xr="[object String]",Mr="[object Symbol]",mr="[object ArrayBuffer]",Cr="[object DataView]",Fr="[object Float32Array]",Dr="[object Float64Array]",Gr="[object Int8Array]",Ur="[object Int16Array]",Nr="[object Int32Array]",Br="[object Uint8Array]",Kr="[object Uint8ClampedArray]",Hr="[object Uint16Array]",jr="[object Uint32Array]";function Yr(n,r,e){var t=n.constructor;switch(r){case mr:return on(n);case Er:case Ir:return new t(+n);case Cr:return Or(n,e);case Fr:case Dr:case Gr:case Ur:case Nr:case Br:case Kr:case Hr:case jr:return Fn(n,e);case Pr:return new t;case vr:case xr:return new t(n);case Lr:return _r(n);case Rr:return new t;case Mr:return Sr(n)}}var Zr="[object Map]";function qr(n){return S(n)&&E(n)==Zr}var nn=R&&R.isMap,Xr=nn?gn(nn):qr,Jr="[object Set]";function Qr(n){return S(n)&&E(n)==Jr}var rn=R&&R.isSet,Wr=rn?gn(rn):Qr,zr=1,Vr=2,kr=4,$n="[object Arguments]",ne="[object Array]",re="[object Boolean]",ee="[object Date]",te="[object Error]",_n="[object Function]",ie="[object GeneratorFunction]",ae="[object Map]",fe="[object Number]",Sn="[object Object]",se="[object RegExp]",ue="[object Set]",oe="[object String]",ge="[object Symbol]",le="[object WeakMap]",ce="[object ArrayBuffer]",de="[object DataView]",pe="[object Float32Array]",Ae="[object Float64Array]",ye="[object Int8Array]",be="[object Int16Array]",Te="[object Int32Array]",he="[object Uint8Array]",we="[object Uint8ClampedArray]",Oe="[object Uint16Array]",$e="[object Uint32Array]",g={};g[$n]=g[ne]=g[ce]=g[de]=g[re]=g[ee]=g[pe]=g[Ae]=g[ye]=g[be]=g[Te]=g[ae]=g[fe]=g[Sn]=g[se]=g[ue]=g[oe]=g[ge]=g[he]=g[we]=g[Oe]=g[$e]=!0;g[te]=g[_n]=g[le]=!1;function C(n,r,e,t,a,i){var f,s=r&zr,u=r&Vr,d=r&kr;if(f!==void 0)return f;if(!ln(n))return n;var l=T(n);if(l){if(f=wr(n),!s)return Dn(n,f)}else{var o=E(n),c=o==_n||o==ie;if(D(n))return Gn(n,s);if(o==Sn||o==$n||c&&!a){if(f=u||c?{}:Un(n),!s)return u?yr(n,lr(f,n)):pr(n,gr(f,n))}else{if(!g[o])return a?n:{};f=Yr(n,o,s)}}i||(i=new _);var h=i.get(n);if(h)return h;i.set(n,f),Wr(n)?n.forEach(function(p){f.add(C(p,r,e,p,n,i))}):Xr(n)&&n.forEach(function(p,A){f.set(A,C(p,r,e,A,n,i))});var y=d?u?br:G:u?U:$,b=l?void 0:y(n);return An(b||n,function(p,A){b&&(A=p,p=n[A]),Nn(f,A,C(p,r,e,A,n,i))}),f}var _e="__lodash_hash_undefined__";function Se(n){return this.__data__.set(n,_e),this}function Ee(n){return this.__data__.has(n)}function I(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new Bn;++r<e;)this.add(n[r])}I.prototype.add=I.prototype.push=Se;I.prototype.has=Ee;function Ie(n,r){for(var e=-1,t=n==null?0:n.length;++e<t;)if(r(n[e],e,n))return!0;return!1}function En(n,r){return n.has(r)}var Pe=1,ve=2;function In(n,r,e,t,a,i){var f=e&Pe,s=n.length,u=r.length;if(s!=u&&!(f&&u>s))return!1;var d=i.get(n),l=i.get(r);if(d&&l)return d==r&&l==n;var o=-1,c=!0,h=e&ve?new I:void 0;for(i.set(n,r),i.set(r,n);++o<s;){var y=n[o],b=r[o];if(t)var p=f?t(b,y,o,r,n,i):t(y,b,o,n,r,i);if(p!==void 0){if(p)continue;c=!1;break}if(h){if(!Ie(r,function(A,O){if(!En(h,O)&&(y===A||a(y,A,e,t,i)))return h.push(O)})){c=!1;break}}else if(!(y===b||a(y,b,e,t,i))){c=!1;break}}return i.delete(n),i.delete(r),c}function Le(n){var r=-1,e=Array(n.size);return n.forEach(function(t,a){e[++r]=[a,t]}),e}function j(n){var r=-1,e=Array(n.size);return n.forEach(function(t){e[++r]=t}),e}var Re=1,xe=2,Me="[object Boolean]",me="[object Date]",Ce="[object Error]",Fe="[object Map]",De="[object Number]",Ge="[object RegExp]",Ue="[object Set]",Ne="[object String]",Be="[object Symbol]",Ke="[object ArrayBuffer]",He="[object DataView]",en=w?w.prototype:void 0,F=en?en.valueOf:void 0;function je(n,r,e,t,a,i,f){switch(e){case He:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case Ke:return!(n.byteLength!=r.byteLength||!i(new X(n),new X(r)));case Me:case me:case De:return Kn(+n,+r);case Ce:return n.name==r.name&&n.message==r.message;case Ge:case Ne:return n==r+"";case Fe:var s=Le;case Ue:var u=tℜif(s||(s=j),n.size!=r.size&&!u)return!1;var d=f.get(n);if(d)return d==r;t|=xe,f.set(n,r);var l=In(s(n),s(r),t,a,i,f);return f.delete(n),l;case Be:if(F)return F.call(n)==F.call(r)}return!1}var Ye=1,Ze=Object.prototype,qe=Ze.hasOwnProperty;function Xe(n,r,e,t,a,i){var f=e&Ye,s=G(n),u=s.length,d=G(r),l=d.length;if(u!=l&&!f)return!1;for(var o=u;o--;){var c=s[o];if(!(f?c in r:qe.call(r,c)))return!1}var h=i.get(n),y=i.get(r);if(h&&y)return h==r&&y==n;var b=!0;i.set(n,r),i.set(r,n);for(var p=f;++o<u;){c=s[o];var A=n[c],O=r[c];if(t)var q=f?t(O,A,c,r,n,i):t(A,O,c,n,r,i);if(!(q===void 0?A===O||a(A,O,e,t,i):q)){b=!1;break}p||(p=c=="constructor")}if(b&&!p){var P=n.constructor,v=r.constructor;P!=v&&"constructor"in n&&"constructor"in r&&!(typeof P=="function"&&P instanceof P&&typeof v=="function"&&v instanceof v)&&(b=!1)}return i.delete(n),i.delete(r),b}var Je=1,tn="[object Arguments]",an="[object Array]",L="[object Object]",Qe=Object.prototype,fn=Qe.hasOwnProperty;function We(n,r,e,t,a,i){var f=T(n),s=T(r),u=f?an:E(n),d=s?an:E(r);u=u==tn?L:u,d=d==tn?L:d;var l=u==L,o=d==L,c=u==d;if(c&&D(n)){if(!D(r))return!1;f=!0,l=!1}if(c&&!l)return i||(i=new _),f||Hn(n)?In(n,r,e,t,a,i):je(n,r,u,e,t,a,i);if(!(e&Je)){var h=l&&fn.call(n,"__wrapped__"),y=o&&fn.call(r,"__wrapped__");if(h||y){var b=h?n.value():n,p=y?r.value():r;return i||(i=new _),a(b,p,e,t,i)}}return c?(i||(i=new _),Xe(n,r,e,t,a,i)):!1}function Y(n,r,e,t,a){return n===r?!0:n==null||r==null||!S(n)&&!S(r)?n!==n&&r!==r:We(n,r,e,t,Y,a)}var ze=1,Ve=2;function ke(n,r,e,t){var a=e.length,i=a;if(n==null)return!i;for(n=Object(n);a--;){var f=e[a];if(f[2]?f[1]!==n[f[0]]:!(f[0]in n))return!1}for(;++a<i;){f=e[a];var s=f[0],u=n[s],d=f[1];if(f[2]){if(u===void 0&&!(s in n))return!1}else{var l=new _,o;if(!(o===void 0?Y(d,u,ze|Ve,t,l):o))return!1}}return!0}function Pn(n){return n===n&&!ln(n)}function nt(n){for(var r=$(n),e=r.length;e--;){var t=r[e],a=n[t];r[e]=[t,a,Pn(a)]}return r}function vn(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function rt(n){var r=nt(n);return r.length==1&&r[0][2]?vn(r[0][0],r[0][1]):function(e){return e===n||ke(e,n,r)}}function et(n,r){return n!=null&&r in Object(n)}function tt(n,r,e){r=yn(r,n);for(var t=-1,a=r.length,i=!1;++t<a;){var f=M(r[t]);if(!(i=n!=null&&e(n,f)))break;n=n[f]}return i||++t!=a?i:(a=n==null?0:n.length,!!a&&jn(a)&&Yn(f,a)&&(T(n)||un(n)))}function it(n,r){return n!=null&&tt(n,r,et)}var at=1,ft=2;function st(n,r){return B(n)&&Pn(r)?vn(M(n),r):function(e){var t=sr(e,n);return t===void 0&&t===r?it(e,n):Y(r,t,at|ft)}}function ut(n){return function(r){return r?.[n]}}function ot(n){return function(r){return bn(r,n)}}function gt(n){return B(n)?ut(M(n)):ot(n)}function Ln(n){return typeof n=="function"?n:n==null?cn:typeof n=="object"?T(n)?st(n[0],n[1]):rt(n):gt(n)}function lt(n,r){return n&&Zn(n,r,$)}function ct(n,r){return function(e,t){if(e==null)return e;if(!sn(e))return n(e,t);for(var a=e.length,i=-1,f=Object(e);++i<a&&t(f[i],i,f)!==!1;);return e}}var Z=ct(lt);function dt(n){return typeof n=="function"?n:cn}function $t(n,r){var e=T(n)?An:Z;return e(n,dt(r))}function pt(n,r){var e=[];return Z(n,function(t,a,i){r(t,a,i)&&e.push(t)}),e}function _t(n,r){var e=T(n)?Tn:pt;return e(n,Ln(r))}function At(n,r){return dn(r,function(e){return n[e]})}function St(n){return n==null?[]:At(n,$(n))}function Et(n){return n===void 0}function yt(n,r,e,t,a){return a(n,function(i,f,s){e=t?(t=!1,i):r(e,i,f,s)}),e}function It(n,r,e){var t=T(n)?or:yt,a=arguments.length<3;return t(n,Ln(r),e,a,Z)}var bt=1/0,Tt=m&&1/j(new m([,-0]))[1]==bt?function(n){return new m(n)}:Xn,ht=200;function Pt(n,r,e){var t=-1,a=Vn,i=n.length,f=!0,s=[],u=s;if(i>=ht){var d=r?null:Tt(n);if(d)return j(d);f=!1,a=En,u=new I}else u=r?[]:s;n:for(;++t<i;){var l=n[t],o=r?r(l):l;if(l=l!==0?l:0,f&&o===o){for(var c=u.length;c--;)if(u[c]===o)continue n;r&&u.push(o),s.push(l)}else a(u,o,e)||(u!==s&&u.push(o),s.push(l))}return s}export{Tn as A,pt as B,Ie as C,Xn as D,I as S,Pt as a,C as b,Ot as c,$t as d,N as e,_t as f,Ln as g,Jn as h,Et as i,Z as j,$ as k,dn as l,tt as m,yn as n,bn as o,dt as p,lt as q,It as r,it as s,M as t,fr as u,St as v,Vn as w,En as x,zn as y,br as z};
|
package/out/renderer/assets/{agent-details-page-CP-jkp7A.js → agent-details-page-BM4zDGYu.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as J,r as S,j as e,L as X,T as B,B as c,S as L,b as R,d as F,e as q,f as x,X as Z,g as j,c as U}from"./icon-
|
|
1
|
+
import{a as J,r as S,j as e,L as X,T as B,B as c,S as L,b as R,d as F,e as q,f as x,X as Z,g as j,c as U}from"./icon-Cj67f9xD.js";import{g as $,ap as V,f as E,a9 as f,ab as P,aq as _,ar as M,as as ee,at as te,au as se,av as ae,aw as Q,ax as W,ay as ne,h as H,az as ie,aA as re,u as oe,aB as le,aC as ce,aD as de,aE as me,B as ue,aF as xe,aG as he,aH as ge,aI as je,aJ as O,aK as fe,aL as ye,aM as pe}from"./index-DVpZx5bQ.js";import{S as be}from"./square-pen-BFfkEYdr.js";import{u as we,a as ve,b as Ce,c as Ne}from"./use-agent-like-mutation-C-SB1Z3H.js";import{A as Ae}from"./arrow-left-q4TRrNyq.js";/**
|
|
2
2
|
* @license lucide-react v0.507.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as p,j as e,c as j,r as m,S as y}from"./icon-
|
|
1
|
+
import{a as p,j as e,c as j,r as m,S as y}from"./icon-Cj67f9xD.js";import{C as k}from"./compact-pagination-mQgprp_u.js";import{P as v}from"./page-header-E6dQzCNG.js";import{a9 as b,al as A,am as h,an as L,ao as N}from"./index-DVpZx5bQ.js";import{u as C,a as P,b as w,c as M}from"./use-agent-like-mutation-C-SB1Z3H.js";/**
|
|
2
2
|
* @license lucide-react v0.507.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./legacy-agents-page-
|
|
2
|
-
import{u as O,a as Q,b as J,d as V,c as W,e as G,f as H,g as X,B as Y,U as Z,P as ee,_ as te,h as $,i as z,j as U}from"./index-DXyMo3l_.js";import{j as e,r as n,B as u,c as P}from"./icon-1lzWk9mU.js";const ae=n.lazy(()=>te(()=>import("./legacy-agents-page-CXlkEHSc.js"),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url).then(t=>({default:t.LegacyAgentsPage}))),d="w-full rounded-md border border-control bg-surface px-3 py-2 text-body-sm text-ink";function T({profile:t,creating:v,onSaved:g}){const[r,k]=n.useState(!1),[o,m]=n.useState(v),[p,b]=n.useState(t?.name??""),[x,C]=n.useState(t?.kind??"role"),[h,y]=n.useState(t?.description??""),[j,S]=n.useState(t?.instructions??""),[_,D]=n.useState(t?.tools?.join(", ")??""),[I,N]=n.useState(t?.effort??"inherit"),[R,L]=n.useState(t?.delegate??!1),[f,a]=n.useState(!1),[c,l]=n.useState(null),i=n.useRef(null),w=$(),E=v||r,K=async s=>{if(s.preventDefault(),f)return;const M={kind:x,description:h,instructions:j,tools:_.split(",").map(q=>q.trim()).filter(Boolean),effort:I,delegate:R},A=JSON.stringify({name:p,fields:M,fresh:E});if(i.current&&i.current.body!==A){l("The previous save has not been confirmed. Retry it unchanged or reload the profile to reconcile before editing again.");return}i.current??={id:crypto.randomUUID(),body:A},a(!0),l(null);try{const q=await U({op:E?"profiles.create":"profiles.update",requestId:i.current.id,name:p,fields:M});i.current=null,m(!1),g(q.name)}catch(q){l(q instanceof Error?q.message:"Profile could not be saved.")}finally{a(!1)}},F=async()=>{if(!(!t||f)){a(!0),l(null);try{const s=await U({op:"profiles.install",name:t.name,requestId:crypto.randomUUID()});m(!1),k(!1),i.current=null,b(s.name),C(s.kind),y(s.description??""),S(s.instructions??""),D(s.tools?.join(", ")??""),N(s.effort??"inherit"),L(s.delegate??!1),g(s.name)}catch(s){l(s instanceof Error?s.message:"Profile could not be installed.")}finally{a(!1)}}};return e.jsxs("div",{className:"max-w-3xl space-y-6",children:[e.jsxs("header",{children:[e.jsx("h1",{className:"text-title",children:E?r?"Extend agent":"Create agent":t?.name}),e.jsx("p",{className:"mt-2 text-body-sm text-ink-muted",children:"Reusable instructions shared by agent commands, subagents and teams. Chats remain separate."})]}),t&&!E&&e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsxs("span",{className:"text-meta text-ink-muted",children:[t.source==="builtin"?"Built-in":t.source==="installed"?"Installed":"Custom",t.divergent_fields?.length?" · Modified":""," ·"," ",t.kind]}),t.source==="builtin"?e.jsx(u,{variant:"outline",onClick:F,disabled:f,children:"Install"}):e.jsx(u,{variant:"outline",onClick:()=>m(!0),children:"Edit"}),e.jsx(u,{variant:"outline",onClick:()=>{k(!0),m(!0),b(""),i.current=null},children:"Extend"}),e.jsx(u,{onClick:()=>{z.getState().stageDraft({kind:"agent",name:t.name}),w("/chat")},children:"New chat"})]}),c&&e.jsx("p",{role:"alert",className:"text-body-sm text-danger",children:c}),!o&&t?.source==="builtin"&&e.jsx("p",{id:"builtin-readonly",className:"text-body-sm text-ink-muted",children:"Built-in agents are read-only. Install this one to edit it, or Extend it to start a separate agent from its instructions."}),e.jsxs("form",{onSubmit:K,className:"space-y-4",children:[e.jsxs("fieldset",{disabled:!o||f,className:"space-y-4",children:[e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Name"}),e.jsx("input",{className:d,value:p,disabled:!E,required:!0,"aria-describedby":t?.source==="builtin"?"builtin-readonly":void 0,onChange:s=>b(s.target.value)})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Kind"}),e.jsxs("select",{className:d,value:x,disabled:!E,onChange:s=>C(s.target.value),children:[e.jsx("option",{value:"role",children:"Role"}),e.jsx("option",{value:"specialist",children:"Specialist"})]})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"When to use this agent"}),e.jsx("input",{className:d,value:h,maxLength:8e3,onChange:s=>y(s.target.value)})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Instructions"}),e.jsx("textarea",{className:P(d,"min-h-52"),value:j,required:!0,maxLength:8e3,onChange:s=>S(s.target.value)})]}),x==="role"&&e.jsxs(e.Fragment,{children:[e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Allowed tools"}),e.jsx("input",{className:d,value:_,onChange:s=>D(s.target.value),placeholder:"All tools when empty; otherwise comma-separated names"})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Effort tier"}),e.jsx("input",{className:d,value:I,onChange:s=>N(s.target.value),"aria-describedby":"effort-help"}),e.jsx("span",{id:"effort-help",className:"text-meta text-ink-muted",children:"Use inherit, or a tier configured in backend settings. Unsupported tiers are rejected before saving."})]}),e.jsxs("label",{className:"flex items-center gap-2 text-body-sm",children:[e.jsx("input",{type:"checkbox",checked:R,onChange:s=>L(s.target.checked)}),"May delegate to subagents"]})]})]}),o&&e.jsx(u,{type:"submit",disabled:f,children:f?"Saving…":E?"Create agent":"Save changes"})]}),!o&&t?.packaged_instructions&&t.divergent_fields?.length?e.jsxs("details",{className:"text-body-sm",children:[e.jsx("summary",{children:"Compare packaged instructions"}),e.jsx("pre",{className:"mt-2 whitespace-pre-wrap text-body-sm text-ink-muted",children:t.packaged_instructions})]}):null]})}function B({team:t,onSaved:v}){const[g,r]=n.useState(t?.name??""),[k,o]=n.useState(t?.description??""),[m,p]=n.useState(t?.manager??"manager"),[b,x]=n.useState((t?.members??[]).map(a=>({...a,key:crypto.randomUUID()}))),[C,h]=n.useState(t?.instructions??""),[y,j]=n.useState(t?.project??""),[S,_]=n.useState(!1),[D,I]=n.useState(null),N=n.useRef(null),R=$(),L=async a=>{if(a.preventDefault(),S)return;const c={name:g,description:k,manager:m,members:b.map(({key:i,...w})=>w),instructions:C,project:y},l=JSON.stringify(c);if(N.current&&N.current.body!==l){I("The previous save has not been confirmed. Reload the team before changing that request.");return}N.current??={id:crypto.randomUUID(),body:l},_(!0),I(null);try{const i=t?await U({op:"teams.update",name:t.name,requestId:N.current.id,fields:c}):await U({op:"teams.create",requestId:N.current.id,fields:c});N.current=null,v(i.name)}catch(i){I(i instanceof Error?i.message:"Team could not be saved.")}finally{_(!1)}},f=(a,c)=>x(l=>l.map((i,w)=>w===a?{...i,...c}:i));return e.jsxs("div",{className:"max-w-3xl space-y-6",children:[e.jsxs("header",{children:[e.jsx("h1",{className:"text-title",children:t?t.name:"Create team"}),e.jsx("p",{className:"mt-2 text-body-sm text-ink-muted",children:"The manager leads the chat. Members retain their own instructions and start only when delegated work."})]}),t&&e.jsx(u,{onClick:()=>{z.getState().stageDraft({kind:"team",name:t.name}),R("/chat")},children:"New team chat"}),D&&e.jsx("p",{role:"alert",className:"text-body-sm text-danger",children:D}),e.jsxs("form",{onSubmit:L,className:"space-y-4",children:[e.jsxs("fieldset",{disabled:S,className:"space-y-4",children:[e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Name"}),e.jsx("input",{className:d,required:!0,maxLength:64,value:g,onChange:a=>r(a.target.value)})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Description"}),e.jsx("input",{className:d,value:k,onChange:a=>o(a.target.value)})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Manager agent"}),e.jsx("input",{className:d,required:!0,value:m,onChange:a=>p(a.target.value)})]}),e.jsxs("section",{className:"space-y-2",children:[e.jsx("h2",{className:"text-heading",children:"Members"}),b.map((a,c)=>e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("input",{className:P(d,"w-48 flex-1"),"aria-label":`Member ${c+1} name`,required:!0,value:a.role,onChange:l=>f(c,{role:l.target.value})}),e.jsxs("select",{className:P(d,"w-32"),"aria-label":`Member ${c+1} kind`,value:a.kind,onChange:l=>f(c,{kind:l.target.value}),children:[e.jsx("option",{value:"agent",children:"Agent"}),e.jsx("option",{value:"team",children:"Nested team"})]}),e.jsx("input",{className:P(d,"w-20"),"aria-label":`Member ${c+1} count`,type:"number",min:1,max:16,value:a.count,onChange:l=>f(c,{count:Number(l.target.value)})}),e.jsx(u,{type:"button",variant:"ghost",onClick:()=>x(l=>l.filter((i,w)=>w!==c)),children:"Remove"})]},a.key)),e.jsx(u,{type:"button",variant:"outline",onClick:()=>x(a=>[...a,{role:"",count:1,kind:"agent",key:crypto.randomUUID()}]),children:"Add member"})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Collaboration instructions"}),e.jsx("textarea",{className:P(d,"min-h-36"),maxLength:8e3,value:C,onChange:a=>h(a.target.value)})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Project brief"}),e.jsx("textarea",{className:P(d,"min-h-36"),maxLength:8e3,value:y,onChange:a=>j(a.target.value)})]})]}),e.jsx(u,{type:"submit",disabled:S,children:S?"Saving…":t?"Save team":"Create team"})]})]})}function re(){const{agentId:t}=O(),[v,g]=Q(),r=v.get("kind")==="team"||v.get("create")==="team",k=v.has("create"),o=v.get("name"),m=J(),p=V(m.data,r?"team_catalogue":"profile_catalogue"),b=W(p&&!r),x=G(p&&r),C=H(),h=X({queryKey:["desktop",r?"team":"profile",o],enabled:p&&!!o&&!k,queryFn:()=>U({op:r?"teams.get":"profiles.get",name:o??""}),retry:!1}),y=async j=>{await C.invalidateQueries({queryKey:["desktop"]}),g({kind:r?"team":"agent",name:j})};return t?e.jsx(n.Suspense,{fallback:e.jsx("p",{className:"p-6 text-body",children:"Loading saved agent…"}),children:e.jsx(ae,{})}):e.jsxs("div",{className:"flex h-full min-h-0 bg-canvas text-ink",children:[e.jsxs("aside",{className:"flex w-64 shrink-0 flex-col gap-4 border-r border-hairline bg-surface p-4",children:[e.jsx("h1",{className:"text-heading",children:"Agents and teams"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(u,{variant:r?"ghost":"outline",onClick:()=>g({kind:"agent"}),children:[e.jsx(Y,{className:"size-4"}),"Agents"]}),e.jsxs(u,{variant:r?"outline":"ghost",onClick:()=>g({kind:"team"}),children:[e.jsx(Z,{className:"size-4"}),"Teams"]})]}),e.jsxs(u,{variant:"outline",disabled:!p,onClick:()=>g({create:r?"team":"agent"}),children:[e.jsx(ee,{className:"size-4"}),r?"Create team":"Create agent"]}),e.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto",children:(r?x.data:b.data)?.map(j=>e.jsx("button",{type:"button",className:P("flex h-8 w-full items-center rounded-md px-2 text-left text-body-sm hover:bg-elevated",j.name===o&&"bg-accent-wash"),onClick:()=>g({kind:r?"team":"agent",name:j.name}),children:e.jsx("span",{className:"truncate",children:j.name})},j.name))})]}),e.jsx("main",{className:"min-w-0 flex-1 overflow-auto p-6",children:p?b.error||x.error||h.error?e.jsxs("div",{role:"alert",children:[e.jsx("p",{className:"text-danger",children:b.error?.message||x.error?.message||h.error?.message}),e.jsx(u,{variant:"outline",onClick:()=>{b.refetch(),x.refetch(),h.refetch()},children:"Retry"})]}):k?r?e.jsx(B,{onSaved:y},"create-team"):e.jsx(T,{creating:!0,onSaved:y},"create-agent"):o&&h.isLoading?e.jsx("p",{"aria-live":"polite",children:"Loading details…"}):o&&h.data?r?e.jsx(B,{team:h.data,onSaved:y},o):e.jsx(T,{profile:h.data,creating:!1,onSaved:y},`${o}:${h.data.source}`):e.jsxs("div",{children:[e.jsx("h2",{className:"text-title",children:r?"Reusable teams":"Reusable agents"}),e.jsx("p",{className:"mt-2 text-body text-ink-muted",children:"Select a definition to view or edit it. A new chat does not change its definition."})]}):e.jsxs("div",{"aria-live":"polite",className:"space-y-3 text-body-sm",children:[e.jsx("p",{children:m.isLoading?"Connecting to the backend…":m.error?m.error.message:"Update the backend to manage reusable agents and teams. Saved chats are unchanged."}),e.jsx(u,{variant:"outline",onClick:()=>void m.refetch(),children:"Retry connection"})]})})]})}export{re as AgentsPage};
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./legacy-agents-page-4FlrsC_-.js","./icon-Cj67f9xD.js","./icon-BOBHgcVR.css","./page-header-E6dQzCNG.js","./index-DVpZx5bQ.js","./index-aW0Bo_1a.css","./radient-auth-buttons-D6nz-MAf.js","./compact-pagination-mQgprp_u.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{u as O,a as Q,b as J,d as V,c as W,e as G,f as H,g as X,B as Y,U as Z,P as ee,_ as te,h as $,i as z,j as U}from"./index-DVpZx5bQ.js";import{j as e,r as n,B as u,c as P}from"./icon-Cj67f9xD.js";const ae=n.lazy(()=>te(()=>import("./legacy-agents-page-4FlrsC_-.js"),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url).then(t=>({default:t.LegacyAgentsPage}))),d="w-full rounded-md border border-control bg-surface px-3 py-2 text-body-sm text-ink";function T({profile:t,creating:v,onSaved:g}){const[r,k]=n.useState(!1),[o,m]=n.useState(v),[p,b]=n.useState(t?.name??""),[x,C]=n.useState(t?.kind??"role"),[h,y]=n.useState(t?.description??""),[j,S]=n.useState(t?.instructions??""),[_,D]=n.useState(t?.tools?.join(", ")??""),[I,N]=n.useState(t?.effort??"inherit"),[R,L]=n.useState(t?.delegate??!1),[f,a]=n.useState(!1),[c,l]=n.useState(null),i=n.useRef(null),w=$(),E=v||r,K=async s=>{if(s.preventDefault(),f)return;const M={kind:x,description:h,instructions:j,tools:_.split(",").map(q=>q.trim()).filter(Boolean),effort:I,delegate:R},A=JSON.stringify({name:p,fields:M,fresh:E});if(i.current&&i.current.body!==A){l("The previous save has not been confirmed. Retry it unchanged or reload the profile to reconcile before editing again.");return}i.current??={id:crypto.randomUUID(),body:A},a(!0),l(null);try{const q=await U({op:E?"profiles.create":"profiles.update",requestId:i.current.id,name:p,fields:M});i.current=null,m(!1),g(q.name)}catch(q){l(q instanceof Error?q.message:"Profile could not be saved.")}finally{a(!1)}},F=async()=>{if(!(!t||f)){a(!0),l(null);try{const s=await U({op:"profiles.install",name:t.name,requestId:crypto.randomUUID()});m(!1),k(!1),i.current=null,b(s.name),C(s.kind),y(s.description??""),S(s.instructions??""),D(s.tools?.join(", ")??""),N(s.effort??"inherit"),L(s.delegate??!1),g(s.name)}catch(s){l(s instanceof Error?s.message:"Profile could not be installed.")}finally{a(!1)}}};return e.jsxs("div",{className:"max-w-3xl space-y-6",children:[e.jsxs("header",{children:[e.jsx("h1",{className:"text-title",children:E?r?"Extend agent":"Create agent":t?.name}),e.jsx("p",{className:"mt-2 text-body-sm text-ink-muted",children:"Reusable instructions shared by agent commands, subagents and teams. Chats remain separate."})]}),t&&!E&&e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsxs("span",{className:"text-meta text-ink-muted",children:[t.source==="builtin"?"Built-in":t.source==="installed"?"Installed":"Custom",t.divergent_fields?.length?" · Modified":""," ·"," ",t.kind]}),t.source==="builtin"?e.jsx(u,{variant:"outline",onClick:F,disabled:f,children:"Install"}):e.jsx(u,{variant:"outline",onClick:()=>m(!0),children:"Edit"}),e.jsx(u,{variant:"outline",onClick:()=>{k(!0),m(!0),b(""),i.current=null},children:"Extend"}),e.jsx(u,{onClick:()=>{z.getState().stageDraft({kind:"agent",name:t.name}),w("/chat")},children:"New chat"})]}),c&&e.jsx("p",{role:"alert",className:"text-body-sm text-danger",children:c}),!o&&t?.source==="builtin"&&e.jsx("p",{id:"builtin-readonly",className:"text-body-sm text-ink-muted",children:"Built-in agents are read-only. Install this one to edit it, or Extend it to start a separate agent from its instructions."}),e.jsxs("form",{onSubmit:K,className:"space-y-4",children:[e.jsxs("fieldset",{disabled:!o||f,className:"space-y-4",children:[e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Name"}),e.jsx("input",{className:d,value:p,disabled:!E,required:!0,"aria-describedby":t?.source==="builtin"?"builtin-readonly":void 0,onChange:s=>b(s.target.value)})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Kind"}),e.jsxs("select",{className:d,value:x,disabled:!E,onChange:s=>C(s.target.value),children:[e.jsx("option",{value:"role",children:"Role"}),e.jsx("option",{value:"specialist",children:"Specialist"})]})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"When to use this agent"}),e.jsx("input",{className:d,value:h,maxLength:8e3,onChange:s=>y(s.target.value)})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Instructions"}),e.jsx("textarea",{className:P(d,"min-h-52"),value:j,required:!0,maxLength:8e3,onChange:s=>S(s.target.value)})]}),x==="role"&&e.jsxs(e.Fragment,{children:[e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Allowed tools"}),e.jsx("input",{className:d,value:_,onChange:s=>D(s.target.value),placeholder:"All tools when empty; otherwise comma-separated names"})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Effort tier"}),e.jsx("input",{className:d,value:I,onChange:s=>N(s.target.value),"aria-describedby":"effort-help"}),e.jsx("span",{id:"effort-help",className:"text-meta text-ink-muted",children:"Use inherit, or a tier configured in backend settings. Unsupported tiers are rejected before saving."})]}),e.jsxs("label",{className:"flex items-center gap-2 text-body-sm",children:[e.jsx("input",{type:"checkbox",checked:R,onChange:s=>L(s.target.checked)}),"May delegate to subagents"]})]})]}),o&&e.jsx(u,{type:"submit",disabled:f,children:f?"Saving…":E?"Create agent":"Save changes"})]}),!o&&t?.packaged_instructions&&t.divergent_fields?.length?e.jsxs("details",{className:"text-body-sm",children:[e.jsx("summary",{children:"Compare packaged instructions"}),e.jsx("pre",{className:"mt-2 whitespace-pre-wrap text-body-sm text-ink-muted",children:t.packaged_instructions})]}):null]})}function B({team:t,onSaved:v}){const[g,r]=n.useState(t?.name??""),[k,o]=n.useState(t?.description??""),[m,p]=n.useState(t?.manager??"manager"),[b,x]=n.useState((t?.members??[]).map(a=>({...a,key:crypto.randomUUID()}))),[C,h]=n.useState(t?.instructions??""),[y,j]=n.useState(t?.project??""),[S,_]=n.useState(!1),[D,I]=n.useState(null),N=n.useRef(null),R=$(),L=async a=>{if(a.preventDefault(),S)return;const c={name:g,description:k,manager:m,members:b.map(({key:i,...w})=>w),instructions:C,project:y},l=JSON.stringify(c);if(N.current&&N.current.body!==l){I("The previous save has not been confirmed. Reload the team before changing that request.");return}N.current??={id:crypto.randomUUID(),body:l},_(!0),I(null);try{const i=t?await U({op:"teams.update",name:t.name,requestId:N.current.id,fields:c}):await U({op:"teams.create",requestId:N.current.id,fields:c});N.current=null,v(i.name)}catch(i){I(i instanceof Error?i.message:"Team could not be saved.")}finally{_(!1)}},f=(a,c)=>x(l=>l.map((i,w)=>w===a?{...i,...c}:i));return e.jsxs("div",{className:"max-w-3xl space-y-6",children:[e.jsxs("header",{children:[e.jsx("h1",{className:"text-title",children:t?t.name:"Create team"}),e.jsx("p",{className:"mt-2 text-body-sm text-ink-muted",children:"The manager leads the chat. Members retain their own instructions and start only when delegated work."})]}),t&&e.jsx(u,{onClick:()=>{z.getState().stageDraft({kind:"team",name:t.name}),R("/chat")},children:"New team chat"}),D&&e.jsx("p",{role:"alert",className:"text-body-sm text-danger",children:D}),e.jsxs("form",{onSubmit:L,className:"space-y-4",children:[e.jsxs("fieldset",{disabled:S,className:"space-y-4",children:[e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Name"}),e.jsx("input",{className:d,required:!0,maxLength:64,value:g,onChange:a=>r(a.target.value)})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Description"}),e.jsx("input",{className:d,value:k,onChange:a=>o(a.target.value)})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Manager agent"}),e.jsx("input",{className:d,required:!0,value:m,onChange:a=>p(a.target.value)})]}),e.jsxs("section",{className:"space-y-2",children:[e.jsx("h2",{className:"text-heading",children:"Members"}),b.map((a,c)=>e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("input",{className:P(d,"w-48 flex-1"),"aria-label":`Member ${c+1} name`,required:!0,value:a.role,onChange:l=>f(c,{role:l.target.value})}),e.jsxs("select",{className:P(d,"w-32"),"aria-label":`Member ${c+1} kind`,value:a.kind,onChange:l=>f(c,{kind:l.target.value}),children:[e.jsx("option",{value:"agent",children:"Agent"}),e.jsx("option",{value:"team",children:"Nested team"})]}),e.jsx("input",{className:P(d,"w-20"),"aria-label":`Member ${c+1} count`,type:"number",min:1,max:16,value:a.count,onChange:l=>f(c,{count:Number(l.target.value)})}),e.jsx(u,{type:"button",variant:"ghost",onClick:()=>x(l=>l.filter((i,w)=>w!==c)),children:"Remove"})]},a.key)),e.jsx(u,{type:"button",variant:"outline",onClick:()=>x(a=>[...a,{role:"",count:1,kind:"agent",key:crypto.randomUUID()}]),children:"Add member"})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Collaboration instructions"}),e.jsx("textarea",{className:P(d,"min-h-36"),maxLength:8e3,value:C,onChange:a=>h(a.target.value)})]}),e.jsxs("label",{className:"block space-y-1 text-body-sm",children:[e.jsx("span",{children:"Project brief"}),e.jsx("textarea",{className:P(d,"min-h-36"),maxLength:8e3,value:y,onChange:a=>j(a.target.value)})]})]}),e.jsx(u,{type:"submit",disabled:S,children:S?"Saving…":t?"Save team":"Create team"})]})]})}function re(){const{agentId:t}=O(),[v,g]=Q(),r=v.get("kind")==="team"||v.get("create")==="team",k=v.has("create"),o=v.get("name"),m=J(),p=V(m.data,r?"team_catalogue":"profile_catalogue"),b=W(p&&!r),x=G(p&&r),C=H(),h=X({queryKey:["desktop",r?"team":"profile",o],enabled:p&&!!o&&!k,queryFn:()=>U({op:r?"teams.get":"profiles.get",name:o??""}),retry:!1}),y=async j=>{await C.invalidateQueries({queryKey:["desktop"]}),g({kind:r?"team":"agent",name:j})};return t?e.jsx(n.Suspense,{fallback:e.jsx("p",{className:"p-6 text-body",children:"Loading saved agent…"}),children:e.jsx(ae,{})}):e.jsxs("div",{className:"flex h-full min-h-0 bg-canvas text-ink",children:[e.jsxs("aside",{className:"flex w-64 shrink-0 flex-col gap-4 border-r border-hairline bg-surface p-4",children:[e.jsx("h1",{className:"text-heading",children:"Agents and teams"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(u,{variant:r?"ghost":"outline",onClick:()=>g({kind:"agent"}),children:[e.jsx(Y,{className:"size-4"}),"Agents"]}),e.jsxs(u,{variant:r?"outline":"ghost",onClick:()=>g({kind:"team"}),children:[e.jsx(Z,{className:"size-4"}),"Teams"]})]}),e.jsxs(u,{variant:"outline",disabled:!p,onClick:()=>g({create:r?"team":"agent"}),children:[e.jsx(ee,{className:"size-4"}),r?"Create team":"Create agent"]}),e.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto",children:(r?x.data:b.data)?.map(j=>e.jsx("button",{type:"button",className:P("flex h-8 w-full items-center rounded-md px-2 text-left text-body-sm hover:bg-elevated",j.name===o&&"bg-accent-wash"),onClick:()=>g({kind:r?"team":"agent",name:j.name}),children:e.jsx("span",{className:"truncate",children:j.name})},j.name))})]}),e.jsx("main",{className:"min-w-0 flex-1 overflow-auto p-6",children:p?b.error||x.error||h.error?e.jsxs("div",{role:"alert",children:[e.jsx("p",{className:"text-danger",children:b.error?.message||x.error?.message||h.error?.message}),e.jsx(u,{variant:"outline",onClick:()=>{b.refetch(),x.refetch(),h.refetch()},children:"Retry"})]}):k?r?e.jsx(B,{onSaved:y},"create-team"):e.jsx(T,{creating:!0,onSaved:y},"create-agent"):o&&h.isLoading?e.jsx("p",{"aria-live":"polite",children:"Loading details…"}):o&&h.data?r?e.jsx(B,{team:h.data,onSaved:y},o):e.jsx(T,{profile:h.data,creating:!1,onSaved:y},`${o}:${h.data.source}`):e.jsxs("div",{children:[e.jsx("h2",{className:"text-title",children:r?"Reusable teams":"Reusable agents"}),e.jsx("p",{className:"mt-2 text-body text-ink-muted",children:"Select a definition to view or edit it. A new chat does not change its definition."})]}):e.jsxs("div",{"aria-live":"polite",className:"space-y-3 text-body-sm",children:[e.jsx("p",{children:m.isLoading?"Connecting to the backend…":m.error?m.error.message:"Update the backend to manage reusable agents and teams. Saved chats are unchanged."}),e.jsx(u,{variant:"outline",onClick:()=>void m.refetch(),children:"Retry connection"})]})})]})}export{re as AgentsPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{w as ln,p as rn,k as G,s as q,l as k,m as un,n as y,t as tn,o as K,q as _,r as an,v as o,x as sn,y as on,z as fn}from"./index-
|
|
1
|
+
import{w as ln,p as rn,k as G,s as q,l as k,m as un,n as y,t as tn,o as K,q as _,r as an,v as o,x as sn,y as on,z as fn}from"./index-DVpZx5bQ.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function mn(l){return l.endAngle}function pn(l){return l&&l.padAngle}function dn(l,h,E,z,v,A,B,r){var I=E-l,s=z-h,n=B-v,m=r-A,u=m*I-n*s;if(!(u*u<y))return u=(n*(h-A)-m*(l-v))/u,[l+u*I,h+u*s]}function V(l,h,E,z,v,A,B){var r=l-E,I=h-z,s=(B?A:-A)/K(r*r+I*I),n=s*I,m=-s*r,u=l+n,i=h+m,f=E+n,c=z+m,C=(u+f)/2,t=(i+c)/2,p=f-u,g=c-i,R=p*p+g*g,T=v-A,P=u*c-f*i,O=(g<0?-1:1)*K(on(0,T*T*R-P*P)),S=(P*g-p*O)/R,j=(-P*p-g*O)/R,w=(P*g+p*O)/R,d=(-P*p+g*O)/R,x=S-C,e=j-t,a=w-C,F=d-t;return x*x+e*e>a*a+F*F&&(S=w,j=d),{cx:S,cy:j,x01:-n,y01:-m,x11:S*(v/T-1),y11:j*(v/T-1)}}function hn(){var l=cn,h=yn,E=k(0),z=null,v=gn,A=mn,B=pn,r=null,I=ln(s);function s(){var n,m,u=+l.apply(this,arguments),i=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=A.apply(this,arguments)-un,C=an(c-f),t=c>f;if(r||(r=n=I()),i<u&&(m=i,i=u,u=m),!(i>y))r.moveTo(0,0);else if(C>tn-y)r.moveTo(i*G(f),i*q(f)),r.arc(0,0,i,f,c,!t),u>y&&(r.moveTo(u*G(c),u*q(c)),r.arc(0,0,u,c,f,t));else{var p=f,g=c,R=f,T=c,P=C,O=C,S=B.apply(this,arguments)/2,j=S>y&&(z?+z.apply(this,arguments):K(u*u+i*i)),w=_(an(i-u)/2,+E.apply(this,arguments)),d=w,x=w,e,a;if(j>y){var F=sn(j/u*q(S)),L=sn(j/i*q(S));(P-=F*2)>y?(F*=t?1:-1,R+=F,T-=F):(P=0,R=T=(f+c)/2),(O-=L*2)>y?(L*=t?1:-1,p+=L,g-=L):(O=0,p=g=(f+c)/2)}var H=i*G(p),J=i*q(p),M=u*G(T),N=u*q(T);if(w>y){var Q=i*G(g),U=i*q(g),W=u*G(R),X=u*q(R),D;if(C<rn)if(D=dn(H,J,W,X,Q,U,M,N)){var Y=H-D[0],Z=J-D[1],$=Q-D[0],b=U-D[1],nn=1/q(fn((Y*$+Z*b)/(K(Y*Y+Z*Z)*K($*$+b*b)))/2),en=K(D[0]*D[0]+D[1]*D[1]);d=_(w,(u-en)/(nn-1)),x=_(w,(i-en)/(nn+1))}else d=x=0}O>y?x>y?(e=V(W,X,H,J,i,x,t),a=V(Q,U,M,N,i,x,t),r.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?r.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(a.y01,a.x01),!t):(r.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),r.arc(0,0,i,o(e.cy+e.y11,e.cx+e.x11),o(a.cy+a.y11,a.cx+a.x11),!t),r.arc(a.cx,a.cy,x,o(a.y11,a.x11),o(a.y01,a.x01),!t))):(r.moveTo(H,J),r.arc(0,0,i,p,g,!t)):r.moveTo(H,J),!(u>y)||!(P>y)?r.lineTo(M,N):d>y?(e=V(M,N,Q,U,u,-d,t),a=V(H,J,W,X,u,-d,t),r.lineTo(e.cx+e.x01,e.cy+e.y01),d<w?r.arc(e.cx,e.cy,d,o(e.y01,e.x01),o(a.y01,a.x01),!t):(r.arc(e.cx,e.cy,d,o(e.y01,e.x01),o(e.y11,e.x11),!t),r.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(a.cy+a.y11,a.cx+a.x11),t),r.arc(a.cx,a.cy,d,o(a.y11,a.x11),o(a.y01,a.x01),!t))):r.arc(0,0,u,T,R,t)}if(r.closePath(),n)return r=null,n+""||null}return s.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,m=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-rn/2;return[G(m)*n,q(m)*n]},s.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:k(+n),s):l},s.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:k(+n),s):h},s.cornerRadius=function(n){return arguments.length?(E=typeof n=="function"?n:k(+n),s):E},s.padRadius=function(n){return arguments.length?(z=n==null?null:typeof n=="function"?n:k(+n),s):z},s.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:k(+n),s):v},s.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:k(+n),s):A},s.padAngle=function(n){return arguments.length?(B=typeof n=="function"?n:k(+n),s):B},s.context=function(n){return arguments.length?(r=n??null,s):r},s}export{hn as d};
|