kennel 0.2.44 → 0.2.46
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/core/api-client.d.ts +1 -1
- package/dist/core/api-client.js +69 -3
- package/dist/core/runtime.js +649 -140
- package/dist/llm/worker.js +11 -2
- package/dist/notes/command.js +20 -4
- package/dist/package/preview.d.ts +1 -1
- package/dist/package/preview.js +881 -540
- package/dist/site/hot-viewer.js +4 -4
- package/dist/site/server-plugins.js +468 -30
- package/dist/site/viewer.d.ts +0 -3
- package/dist/site/viewer.js +11 -41
- package/dist/tui/launcher.d.ts +11 -0
- package/dist/{site/terminal.js → tui/launcher.js} +60 -15
- package/package.json +2 -2
- package/web/assets/{abnfDiagram-VRR7QNED-ooA_TyhC.js → abnfDiagram-VRR7QNED-BOm3iBSE.js} +1 -1
- package/web/assets/{arc-DqQkY48J.js → arc-D_zfnjJW.js} +1 -1
- package/web/assets/{architectureDiagram-ZJ3FMSHR-DaXzRGP0.js → architectureDiagram-ZJ3FMSHR-CTXAbDtC.js} +1 -1
- package/web/assets/ask-tray-CT6DQRTC-DfTc3bnC.js +1 -0
- package/web/assets/{blockDiagram-677ZJIJ3-Br5Y_dbP.js → blockDiagram-677ZJIJ3-CcPWOAKO.js} +1 -1
- package/web/assets/{c4Diagram-LMCZKHZV-CWIy0S0N.js → c4Diagram-LMCZKHZV-B_eNO2-f.js} +1 -1
- package/web/assets/channel-Dlb_u_Yk.js +1 -0
- package/web/assets/{chunk-2Q5K7J3B-8dxcuNwr.js → chunk-2Q5K7J3B-BtQX_f5i.js} +1 -1
- package/web/assets/{chunk-32BRIVSS-DB27hz0Y.js → chunk-32BRIVSS-BBtfsm8_.js} +1 -1
- package/web/assets/{chunk-5VM5RSS4-CTNxGtbA.js → chunk-5VM5RSS4-CG0bf9ML.js} +1 -1
- package/web/assets/{chunk-EX3LRPZG-oKNLktOC.js → chunk-EX3LRPZG-DS2H7ilP.js} +1 -1
- package/web/assets/{chunk-JWPE2WC7-DeQNmWoS.js → chunk-JWPE2WC7-CGLMMKkr.js} +1 -1
- package/web/assets/{chunk-MOJQB5TN-BrW33Mrb.js → chunk-MOJQB5TN-C76lqDkU.js} +1 -1
- package/web/assets/{chunk-RYQCIY6F-DEkTU6j-.js → chunk-RYQCIY6F-ZY-EzC5l.js} +1 -1
- package/web/assets/{chunk-V7JOEXUC-BuDLgwdB.js → chunk-V7JOEXUC-sBv90hIh.js} +1 -1
- package/web/assets/{chunk-VR4S4FIN-BsNgrrKe.js → chunk-VR4S4FIN-jW9aFTp3.js} +1 -1
- package/web/assets/{chunk-XXDRQBXY-DjT1Bydl.js → chunk-XXDRQBXY-FPtE6zce.js} +1 -1
- package/web/assets/classDiagram-OUVF2IWQ-CinFzRGQ.js +1 -0
- package/web/assets/classDiagram-v2-EOCWNBFH-CinFzRGQ.js +1 -0
- package/web/assets/client-5Q4VI7ZT-DYH5SwVp.js +52 -0
- package/web/assets/{cose-bilkent-JH36ORCC-BtAklxrd.js → cose-bilkent-JH36ORCC-NdJGLzeJ.js} +1 -1
- package/web/assets/{cynefin-VYW2F7L2-DabtZWZy.js → cynefin-VYW2F7L2-D-o_obcW.js} +1 -1
- package/web/assets/{cynefinDiagram-TSTJHNR4-DVk8uQ8L.js → cynefinDiagram-TSTJHNR4-RA4QYrtB.js} +1 -1
- package/web/assets/{dagre-VKFMJZFB-CiAbBCor.js → dagre-VKFMJZFB-Bq4DfO16.js} +1 -1
- package/web/assets/{diagram-FQU43EPY-DWp-OzJz.js → diagram-FQU43EPY-bPnACaba.js} +1 -1
- package/web/assets/{diagram-G47NLZAW-YDllS_1P.js → diagram-G47NLZAW-cPca5hvp.js} +1 -1
- package/web/assets/{diagram-NH7WQ7WH-BH3l4yRj.js → diagram-NH7WQ7WH-DHyP34H8.js} +1 -1
- package/web/assets/{diagram-OA4YK3LP-CszBvxdr.js → diagram-OA4YK3LP-hVk7mHu1.js} +1 -1
- package/web/assets/{diagram-WEI45ONY-bEhZeER6.js → diagram-WEI45ONY-Cd3AEJO3.js} +1 -1
- package/web/assets/document-view-VX2ZTQM5-CDdtofzz.js +24 -0
- package/web/assets/{ebnfDiagram-CCIWWBDH-DlpoUUO5.js → ebnfDiagram-CCIWWBDH-BxtDx2MR.js} +1 -1
- package/web/assets/{entity-search-page-YP4SPMBC-WryWZNPk.js → entity-search-page-RIYQYIJJ-IvZzjXvt.js} +5 -5
- package/web/assets/{erDiagram-Q63AITRT-DROgehIM.js → erDiagram-Q63AITRT-CtdOkrpo.js} +1 -1
- package/web/assets/{flowDiagram-23GEKE2U-63pYiBzl.js → flowDiagram-23GEKE2U-BDHfaJo6.js} +1 -1
- package/web/assets/{ganttDiagram-NO4QXBWP-tc34wKHJ.js → ganttDiagram-NO4QXBWP-BhV7JFJA.js} +1 -1
- package/web/assets/{gitGraphDiagram-IHSO6WYX-GOjqt583.js → gitGraphDiagram-IHSO6WYX-BVRBRDVk.js} +1 -1
- package/web/assets/index-BxCXNDe6.css +1 -0
- package/web/assets/index-Cl-kcrk3.js +502 -0
- package/web/assets/{infoDiagram-FWYZ7A6U-CD5BwkLQ.js → infoDiagram-FWYZ7A6U-BKuFQe6t.js} +1 -1
- package/web/assets/{ishikawaDiagram-FXEZZL3T-yIweY6wR.js → ishikawaDiagram-FXEZZL3T-lNbhlHEo.js} +1 -1
- package/web/assets/{journeyDiagram-5HDEW3XC-D3MeUGvn.js → journeyDiagram-5HDEW3XC-CoGf_pSm.js} +1 -1
- package/web/assets/{kanban-definition-HUTT4EX6-CnZ5N79y.js → kanban-definition-HUTT4EX6-Cgp0WGrq.js} +1 -1
- package/web/assets/{linear-s5G6iOMz.js → linear-B3UMk7TK.js} +1 -1
- package/web/assets/{linked-session-header-DOEX4FYM-CtTOXcZn.js → linked-session-header-7BUTWROP-Coqn-Dz0.js} +1 -1
- package/web/assets/{mermaid.core-BpUKp9r_.js → mermaid.core-6bZ5bkAq.js} +4 -4
- package/web/assets/{mindmap-definition-LN4V7U3C-Bp2QH5sN.js → mindmap-definition-LN4V7U3C-BowQNgIG.js} +1 -1
- package/web/assets/{pegDiagram-2B236MQR-lx1jDUmt.js → pegDiagram-2B236MQR-DrhWFvfI.js} +1 -1
- package/web/assets/{pieDiagram-ENE6RG2P--kf2YNbw.js → pieDiagram-ENE6RG2P-DNOg53mu.js} +1 -1
- package/web/assets/{plugin-host-modules-BKbxlu7U.js → plugin-host-modules-NvyHieUX.js} +26 -26
- package/web/assets/{project-search-page-TZG7AZBQ-3W40ayYn.js → project-search-page-O6YRLDGU-CFA4lf0c.js} +2 -2
- package/web/assets/{quadrantDiagram-ABIIQ3AL-Vr7zWQYV.js → quadrantDiagram-ABIIQ3AL-BOJ4UGbk.js} +1 -1
- package/web/assets/{railroadDiagram-RFXS5EU6-CqWD8KUC.js → railroadDiagram-RFXS5EU6-_UJ9_AEC.js} +1 -1
- package/web/assets/{requirementDiagram-TGXJPOKE-BHUBdOVh.js → requirementDiagram-TGXJPOKE-BFa61FSa.js} +1 -1
- package/web/assets/{sankeyDiagram-HTMAVEWB-Cw_ZddWI.js → sankeyDiagram-HTMAVEWB-V1J9w6jl.js} +1 -1
- package/web/assets/{selection-popup-ABYH3A27-Gc-RFSWj.js → selection-popup-ZX4VUZ3A-Duh9LSP2.js} +4 -4
- package/web/assets/{sequenceDiagram-DBY2YBRQ-CyCbkAfM.js → sequenceDiagram-DBY2YBRQ-xdS7JpTx.js} +1 -1
- package/web/assets/{sizeCapture-X5ZJPWSS-BG6RM8rb.js → sizeCapture-X5ZJPWSS-DBULLaws.js} +1 -1
- package/web/assets/{stateDiagram-2N3HPSRC-DKpZl5UU.js → stateDiagram-2N3HPSRC-DfBpQAQb.js} +1 -1
- package/web/assets/{stateDiagram-v2-6OUMAXLB-DHUy-0iS.js → stateDiagram-v2-6OUMAXLB-C-dC_PIX.js} +1 -1
- package/web/assets/{swimlanes-5IMT3BWC-D14uyHMH.js → swimlanes-5IMT3BWC-L-RTYuhP.js} +2 -2
- package/web/assets/swimlanesDiagram-G3AALYLV-BErklojq.js +8 -0
- package/web/assets/{timeline-definition-FHXFAJF6-f4WPhEXS.js → timeline-definition-FHXFAJF6-CAEbvdzk.js} +1 -1
- package/web/assets/{vennDiagram-L72KCM5P-lr4A8guw.js → vennDiagram-L72KCM5P-J10bFP8c.js} +1 -1
- package/web/assets/{wardleyDiagram-EHGQE667-CR-Im585.js → wardleyDiagram-EHGQE667-Bm0goK-9.js} +1 -1
- package/web/assets/{xychartDiagram-FW5EYKEG-DeNQfP7k.js → xychartDiagram-FW5EYKEG-BAH4TTVb.js} +1 -1
- package/web/index.html +2 -2
- package/dist/site/terminal.d.ts +0 -14
- package/web/assets/ask-tray-KUTWZ4MV-Ckn1y1Zw.js +0 -24
- package/web/assets/channel-BQxXBpeY.js +0 -1
- package/web/assets/classDiagram-OUVF2IWQ-BT1TSwZs.js +0 -1
- package/web/assets/classDiagram-v2-EOCWNBFH-BT1TSwZs.js +0 -1
- package/web/assets/index-Di6pguZz.css +0 -1
- package/web/assets/index-qmu99cjp.js +0 -493
- package/web/assets/swimlanesDiagram-G3AALYLV-C5riej52.js +0 -8
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/** Replaced at build time by the Node bundle of packages/api-client/src/index.ts. */
|
|
2
2
|
import type { operations } from '../../../api-client/src/generated.js';
|
|
3
|
+
export { folderUrl } from "kennel-api/shared/viewer-route";
|
|
3
4
|
type JsonResponse<K extends 'health' | 'documents'> = operations[K]['responses'][200]['content']['application/json'];
|
|
4
5
|
type RequestOptions = {
|
|
5
6
|
signal?: AbortSignal;
|
|
@@ -10,4 +11,3 @@ export declare function createKennelClient(options: {
|
|
|
10
11
|
health(options?: RequestOptions): Promise<JsonResponse<'health'>>;
|
|
11
12
|
documents(href: string, options?: RequestOptions): Promise<JsonResponse<'documents'>>;
|
|
12
13
|
};
|
|
13
|
-
export {};
|
package/dist/core/api-client.js
CHANGED
|
@@ -5094,6 +5094,7 @@ var plugin = object({
|
|
|
5094
5094
|
icon: object({ paths: array(string2().min(1)).min(1) }).optional(),
|
|
5095
5095
|
id: string2(),
|
|
5096
5096
|
label: string2(),
|
|
5097
|
+
pages: array(object({ id: string2(), label: string2() })).optional(),
|
|
5097
5098
|
subpath: string2().optional()
|
|
5098
5099
|
});
|
|
5099
5100
|
var plugins = object({
|
|
@@ -5150,6 +5151,10 @@ var metadataQuerySchema = object({
|
|
|
5150
5151
|
sort: _enum(["alpha", "recent"]).optional(),
|
|
5151
5152
|
schema: string2().optional()
|
|
5152
5153
|
});
|
|
5154
|
+
var deleteNoteSchema = object({
|
|
5155
|
+
folder: string2(),
|
|
5156
|
+
path: string2()
|
|
5157
|
+
});
|
|
5153
5158
|
var documentEditSchema = object({
|
|
5154
5159
|
folder: string2(),
|
|
5155
5160
|
path: string2(),
|
|
@@ -5209,7 +5214,11 @@ var routes = {
|
|
|
5209
5214
|
path: "/api/health",
|
|
5210
5215
|
method: "get",
|
|
5211
5216
|
query: emptyQuery,
|
|
5212
|
-
response: object({
|
|
5217
|
+
response: object({
|
|
5218
|
+
viewer: string2(),
|
|
5219
|
+
root: string2(),
|
|
5220
|
+
kernelKey: string2()
|
|
5221
|
+
})
|
|
5213
5222
|
},
|
|
5214
5223
|
capabilities: {
|
|
5215
5224
|
path: "/api/capabilities",
|
|
@@ -5297,9 +5306,25 @@ var routes = {
|
|
|
5297
5306
|
path: "/api/open-path",
|
|
5298
5307
|
method: "get",
|
|
5299
5308
|
query: object({ path: string2() })
|
|
5309
|
+
},
|
|
5310
|
+
deleteNote: {
|
|
5311
|
+
path: "/api/delete-note",
|
|
5312
|
+
method: "post",
|
|
5313
|
+
query: emptyQuery,
|
|
5314
|
+
body: deleteNoteSchema,
|
|
5315
|
+
response: object({ deleted: literal(true) })
|
|
5300
5316
|
}
|
|
5301
5317
|
};
|
|
5302
5318
|
|
|
5319
|
+
// packages/plugins/src/client.ts
|
|
5320
|
+
function folderPathId(path) {
|
|
5321
|
+
const bytes = new TextEncoder().encode(path);
|
|
5322
|
+
let binary = "";
|
|
5323
|
+
for (const byte of bytes)
|
|
5324
|
+
binary += String.fromCharCode(byte);
|
|
5325
|
+
return btoa(binary).replaceAll("+", "-").replaceAll("/", "_").replaceAll("=", "");
|
|
5326
|
+
}
|
|
5327
|
+
|
|
5303
5328
|
// packages/api/src/shared/viewer-route.ts
|
|
5304
5329
|
function decodeBase64Url(value) {
|
|
5305
5330
|
const padded = `${value}${"=".repeat((4 - value.length % 4) % 4)}`;
|
|
@@ -5320,9 +5345,31 @@ function tabSection(tab) {
|
|
|
5320
5345
|
return tab;
|
|
5321
5346
|
return;
|
|
5322
5347
|
}
|
|
5348
|
+
function folderPathId2(path) {
|
|
5349
|
+
return folderPathId(path);
|
|
5350
|
+
}
|
|
5323
5351
|
function decodeFolderPathId(id) {
|
|
5324
5352
|
return decodeBase64Url(id);
|
|
5325
5353
|
}
|
|
5354
|
+
function folderHomeHref(folder) {
|
|
5355
|
+
return `/folder/${folderPathId2(folder)}`;
|
|
5356
|
+
}
|
|
5357
|
+
function folderPluginHref(folder, pluginId, subpath = "") {
|
|
5358
|
+
const base = `/folder/${folderPathId2(folder)}/views/${encodeURIComponent(pluginId)}`;
|
|
5359
|
+
return subpath ? `${base}/${encodeURIComponent(subpath)}` : base;
|
|
5360
|
+
}
|
|
5361
|
+
function folderUrl(base, folder, options = {}) {
|
|
5362
|
+
const current = new URL(base);
|
|
5363
|
+
current.pathname = options.view ? folderPluginHref(folder, options.view.pluginId, options.view.subpath) : options.document ? folderDocumentHref(folder, options.document) : folderHomeHref(folder);
|
|
5364
|
+
current.searchParams.delete("folder");
|
|
5365
|
+
if (options.document && options.watch && !options.view) {
|
|
5366
|
+
current.searchParams.set("watch", "1");
|
|
5367
|
+
}
|
|
5368
|
+
return current;
|
|
5369
|
+
}
|
|
5370
|
+
function folderDocumentHref(folder, document) {
|
|
5371
|
+
return `/folder/${folderPathId2(folder)}/document/${folderPathId2(document)}`;
|
|
5372
|
+
}
|
|
5326
5373
|
function parseViewerRoute(value) {
|
|
5327
5374
|
const current = url(value);
|
|
5328
5375
|
const session = current.searchParams.get("session") ?? undefined;
|
|
@@ -5362,7 +5409,7 @@ function parseViewerRoute(value) {
|
|
|
5362
5409
|
return {
|
|
5363
5410
|
...route,
|
|
5364
5411
|
view: {
|
|
5365
|
-
pluginId: parts[3],
|
|
5412
|
+
pluginId: decodeURIComponent(parts[3]),
|
|
5366
5413
|
...parts[4] ? { subpath: parts[4] } : {}
|
|
5367
5414
|
}
|
|
5368
5415
|
};
|
|
@@ -5373,7 +5420,7 @@ function parseViewerRoute(value) {
|
|
|
5373
5420
|
if (section === "document" && parts[3]) {
|
|
5374
5421
|
return { ...route, document: decodeFolderPathId(parts[3]) };
|
|
5375
5422
|
}
|
|
5376
|
-
return
|
|
5423
|
+
return route;
|
|
5377
5424
|
}
|
|
5378
5425
|
|
|
5379
5426
|
// packages/api-client/src/errors.ts
|
|
@@ -5489,6 +5536,16 @@ function createKennelClient(options = {}) {
|
|
|
5489
5536
|
parseAs: "text"
|
|
5490
5537
|
});
|
|
5491
5538
|
},
|
|
5539
|
+
async deleteNote(body, input = {}) {
|
|
5540
|
+
const response = await (options.fetch ?? globalThis.fetch)(new URL(routes.deleteNote.path, baseUrl), {
|
|
5541
|
+
method: "POST",
|
|
5542
|
+
headers: { "Content-Type": "application/json" },
|
|
5543
|
+
body: JSON.stringify(deleteNoteSchema.parse(body)),
|
|
5544
|
+
signal: input.signal
|
|
5545
|
+
});
|
|
5546
|
+
if (!response.ok)
|
|
5547
|
+
throw await expectedError(response);
|
|
5548
|
+
},
|
|
5492
5549
|
async openFolder(path, input = {}) {
|
|
5493
5550
|
await transport.POST(routes.openFolder.path, {
|
|
5494
5551
|
params: { query: { path } },
|
|
@@ -5531,12 +5588,21 @@ async function openPath(path, input = {}) {
|
|
|
5531
5588
|
throw new Error("Could not open the default app.");
|
|
5532
5589
|
}
|
|
5533
5590
|
}
|
|
5591
|
+
async function deleteNote(body) {
|
|
5592
|
+
try {
|
|
5593
|
+
await api2.deleteNote(body);
|
|
5594
|
+
} catch {
|
|
5595
|
+
throw new Error("Could not delete the note.");
|
|
5596
|
+
}
|
|
5597
|
+
}
|
|
5534
5598
|
export {
|
|
5535
5599
|
ApiClientError,
|
|
5536
5600
|
api2 as api,
|
|
5537
5601
|
createKennelClient,
|
|
5602
|
+
deleteNote,
|
|
5538
5603
|
documentResponse,
|
|
5539
5604
|
expectedError,
|
|
5605
|
+
folderUrl,
|
|
5540
5606
|
openPath,
|
|
5541
5607
|
projectSearchResponse
|
|
5542
5608
|
};
|