@oscharko-dev/keiko-server 0.2.7 → 0.2.8
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/.tsbuildinfo +1 -1
- package/dist/deps.d.ts +1 -0
- package/dist/deps.d.ts.map +1 -1
- package/dist/files.d.ts +18 -0
- package/dist/files.d.ts.map +1 -1
- package/dist/files.js +174 -0
- package/dist/gateway-readiness.d.ts +6 -0
- package/dist/gateway-readiness.d.ts.map +1 -0
- package/dist/gateway-readiness.js +624 -0
- package/dist/grounded-qa-hybrid.d.ts.map +1 -1
- package/dist/grounded-qa-hybrid.js +2 -0
- package/dist/grounded-qa-multi-source.d.ts.map +1 -1
- package/dist/grounded-qa-multi-source.js +1 -0
- package/dist/grounded-qa.d.ts.map +1 -1
- package/dist/grounded-qa.js +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/local-knowledge-grounded-qa.d.ts.map +1 -1
- package/dist/local-knowledge-grounded-qa.js +11 -2
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +5 -10
- package/dist/run-handlers.d.ts +0 -1
- package/dist/run-handlers.d.ts.map +1 -1
- package/dist/run-handlers.js +0 -217
- package/dist/store/db.d.ts.map +1 -1
- package/dist/store/db.js +2 -1
- package/dist/store/index.d.ts +1 -1
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/messages.d.ts +2 -1
- package/dist/store/messages.d.ts.map +1 -1
- package/dist/store/messages.js +46 -4
- package/dist/store/schema.d.ts +1 -1
- package/dist/store/schema.d.ts.map +1 -1
- package/dist/store/schema.js +7 -1
- package/dist/store/types.d.ts +3 -2
- package/dist/store/types.d.ts.map +1 -1
- package/package.json +19 -19
- package/dist/grounded-handoff.d.ts +0 -4
- package/dist/grounded-handoff.d.ts.map +0 -1
- package/dist/grounded-handoff.js +0 -445
package/dist/deps.d.ts
CHANGED
|
@@ -50,6 +50,7 @@ export interface UiHandlerDeps {
|
|
|
50
50
|
readonly gatewayConfig?: RuntimeGatewayConfig | undefined;
|
|
51
51
|
readonly gatewaySetupTester?: ((config: GatewayConfig, candidateModelIds: readonly string[]) => Promise<readonly string[]>) | undefined;
|
|
52
52
|
readonly gatewayModelDiscovery?: ((baseUrl: string, apiKey: string, apiKeyHeaderName?: string, egress?: GatewayEgressConfig) => Promise<GatewayModelDiscoveryOutput>) | undefined;
|
|
53
|
+
readonly gatewayReadinessFetch?: typeof fetch | undefined;
|
|
53
54
|
readonly figmaCredentialTester?: ((accessToken: string, egress?: GatewayEgressConfig) => Promise<void>) | undefined;
|
|
54
55
|
readonly editorLanguageRouteOptions?: EditorLanguageRouteOptions | undefined;
|
|
55
56
|
readonly localKnowledgeEmbeddingRequest?: ((request: OpenAIEmbeddingRequest) => Promise<OpenAIEmbeddingOutcome>) | undefined;
|
package/dist/deps.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../src/deps.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../src/deps.ts"],"names":[],"mappings":"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"}
|
package/dist/files.d.ts
CHANGED
|
@@ -35,6 +35,22 @@ export interface FilesTreeResponse {
|
|
|
35
35
|
readonly entries: readonly FilesTreeEntry[];
|
|
36
36
|
readonly truncated: boolean;
|
|
37
37
|
}
|
|
38
|
+
export interface FilesSearchResult {
|
|
39
|
+
readonly root: string;
|
|
40
|
+
readonly path: string;
|
|
41
|
+
readonly name: string;
|
|
42
|
+
readonly directory: string;
|
|
43
|
+
readonly extension: string | null;
|
|
44
|
+
readonly sizeBytes: number;
|
|
45
|
+
readonly modifiedAt: number;
|
|
46
|
+
}
|
|
47
|
+
export interface FilesSearchResponse {
|
|
48
|
+
readonly root: string;
|
|
49
|
+
readonly query: string;
|
|
50
|
+
readonly results: readonly FilesSearchResult[];
|
|
51
|
+
readonly truncated: boolean;
|
|
52
|
+
readonly scannedFileCount: number;
|
|
53
|
+
}
|
|
38
54
|
interface FilesPreviewBase {
|
|
39
55
|
readonly root: string;
|
|
40
56
|
readonly path: string;
|
|
@@ -77,6 +93,7 @@ export declare function runFilesHandler(work: () => Promise<RouteResult> | Route
|
|
|
77
93
|
export declare function resolveRoot(store: UiStore, rootInput: string | null, redactor: FilesMetadataRedactor): Promise<ResolvedProjectRoot>;
|
|
78
94
|
export declare function listFilesDirectories(store: UiStore, rootInput: string | null, pathInput?: string, redactor?: FilesMetadataRedactor): Promise<FilesDirectoryListing>;
|
|
79
95
|
export declare function readFilesTree(store: UiStore, rootInput: string | null, pathInput: string | null, redactor?: FilesMetadataRedactor): Promise<FilesTreeResponse>;
|
|
96
|
+
export declare function searchFiles(store: UiStore, rootInput: string | null, queryInput: string | null, limitInput?: number, redactor?: FilesMetadataRedactor): Promise<FilesSearchResponse>;
|
|
80
97
|
export declare function readJsonObject(req: IncomingMessage, maxBytes: number): Promise<Record<string, unknown> | RouteResult>;
|
|
81
98
|
export declare function readFilesContent(store: UiStore, rootInput: string | null, pathInput: string | null, redactor?: FilesMetadataRedactor): Promise<FilesContentResponse>;
|
|
82
99
|
export declare function writeFilesContent(args: {
|
|
@@ -91,6 +108,7 @@ export declare function writeFilesContent(args: {
|
|
|
91
108
|
export declare function readFilesPreview(store: UiStore, rootInput: string | null, pathInput: string | null, redactor?: FilesMetadataRedactor): Promise<FilesPreviewResponse>;
|
|
92
109
|
export declare function handleFilesDirectories(ctx: RouteContext, deps: UiHandlerDeps): Promise<RouteResult>;
|
|
93
110
|
export declare function handleFilesTree(ctx: RouteContext, deps: UiHandlerDeps): Promise<RouteResult>;
|
|
111
|
+
export declare function handleFilesSearch(ctx: RouteContext, deps: UiHandlerDeps): Promise<RouteResult>;
|
|
94
112
|
export declare function handleFilesPreview(ctx: RouteContext, deps: UiHandlerDeps): Promise<RouteResult>;
|
|
95
113
|
export declare function handleFilesContent(ctx: RouteContext, deps: UiHandlerDeps): Promise<RouteResult>;
|
|
96
114
|
export {};
|
package/dist/files.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAgBjD,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC3B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAa,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAW,OAAO,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAgBjD,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC3B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAa,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAW,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAUzD,KAAK,qBAAqB,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;AAKvD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACjD,QAAQ,CAAC,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC/C;AAED,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,SAAS,cAAc,EAAE,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC/C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAED,UAAU,gBAAgB;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,MAAM,oBAAoB,GAC5B,CAAC,gBAAgB,GAAG;IAClB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B,CAAC,GACF,CAAC,gBAAgB,GAAG;IAClB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B,CAAC,GACF,CAAC,gBAAgB,GAAG;IAClB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,WAAW,CAAC;IAC7C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC,CAAC,CAAC;AAEP,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC5D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;CACzC;AAWD,qBAAa,UAAW,SAAQ,KAAK;aAEjB,MAAM,EAAE,MAAM;aACd,IAAI,EAAE,MAAM;gBADZ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM;CAKlB;AAcD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAMD,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,GAC7C,OAAO,CAAC,WAAW,CAAC,CAOtB;AAsFD,wBAAsB,WAAW,CAC/B,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,QAAQ,EAAE,qBAAqB,GAC9B,OAAO,CAAC,mBAAmB,CAAC,CAQ9B;AAgJD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,SAAS,CAAC,EAAE,MAAM,EAClB,QAAQ,GAAE,qBAAmD,GAC5D,OAAO,CAAC,qBAAqB,CAAC,CAQhC;AAmGD,wBAAsB,aAAa,CACjC,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,QAAQ,GAAE,qBAAmD,GAC5D,OAAO,CAAC,iBAAiB,CAAC,CAY5B;AAgND,wBAAsB,WAAW,CAC/B,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,UAAU,CAAC,EAAE,MAAM,EACnB,QAAQ,GAAE,qBAAmD,GAC5D,OAAO,CAAC,mBAAmB,CAAC,CAa9B;AA0HD,wBAAsB,cAAc,CAClC,GAAG,EAAE,eAAe,EACpB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW,CAAC,CAuBhD;AAsJD,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,QAAQ,GAAE,qBAAmD,GAC5D,OAAO,CAAC,oBAAoB,CAAC,CAW/B;AAoCD,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjD,QAAQ,CAAC,WAAW,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACzD,QAAQ,CAAC,QAAQ,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;CACvD,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAahC;AAED,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,QAAQ,GAAE,qBAAmD,GAC5D,OAAO,CAAC,oBAAoB,CAAC,CAY/B;AAED,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,WAAW,CAAC,CAStB;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,WAAW,CAAC,CAUtB;AAED,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,WAAW,CAAC,CAWtB;AAED,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,WAAW,CAAC,CAUtB;AAmED,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,WAAW,CAAC,CAMtB"}
|
package/dist/files.js
CHANGED
|
@@ -9,6 +9,10 @@ import { EDITOR_SESSION_SCHEMA_VERSION, parseEditorDocumentVersion, } from "@osc
|
|
|
9
9
|
import { DENIED_MESSAGE, pathIsDenied } from "./files-deny.js";
|
|
10
10
|
import { errorBody } from "./routes.js";
|
|
11
11
|
const MAX_DIRECTORY_ENTRIES = 1_000;
|
|
12
|
+
const DEFAULT_FILE_SEARCH_LIMIT = 24;
|
|
13
|
+
const MAX_FILE_SEARCH_LIMIT = 50;
|
|
14
|
+
const MAX_FILE_SEARCH_QUERY_CHARS = 120;
|
|
15
|
+
const MAX_FILE_SEARCH_SCAN = 20_000;
|
|
12
16
|
const MAX_TEXT_PREVIEW_BYTES = 1_000_000;
|
|
13
17
|
const MAX_IMAGE_PREVIEW_BYTES = 3_000_000;
|
|
14
18
|
const STABLE_CONTENT_READ_ATTEMPTS = 3;
|
|
@@ -352,6 +356,170 @@ export async function readFilesTree(store, rootInput, pathInput, redactor = stat
|
|
|
352
356
|
truncated: listed.truncated,
|
|
353
357
|
};
|
|
354
358
|
}
|
|
359
|
+
function parseSearchLimit(rawLimit) {
|
|
360
|
+
if (rawLimit === null || rawLimit.trim().length === 0)
|
|
361
|
+
return DEFAULT_FILE_SEARCH_LIMIT;
|
|
362
|
+
const parsed = Number(rawLimit);
|
|
363
|
+
if (!Number.isInteger(parsed) || parsed < 1) {
|
|
364
|
+
throw new FilesError(400, "BAD_LIMIT", "The search limit must be a positive integer.");
|
|
365
|
+
}
|
|
366
|
+
return Math.min(parsed, MAX_FILE_SEARCH_LIMIT);
|
|
367
|
+
}
|
|
368
|
+
function normalizeSearchQuery(queryInput) {
|
|
369
|
+
const query = (queryInput ?? "").trim().replace(/\s+/gu, " ");
|
|
370
|
+
if (query.includes("\0")) {
|
|
371
|
+
throw new FilesError(400, "BAD_QUERY", "The search query contains an invalid character.");
|
|
372
|
+
}
|
|
373
|
+
if (query.length > MAX_FILE_SEARCH_QUERY_CHARS) {
|
|
374
|
+
throw new FilesError(400, "BAD_QUERY", `The search query must be at most ${String(MAX_FILE_SEARCH_QUERY_CHARS)} characters.`);
|
|
375
|
+
}
|
|
376
|
+
return query;
|
|
377
|
+
}
|
|
378
|
+
function searchTokens(query) {
|
|
379
|
+
return query
|
|
380
|
+
.toLocaleLowerCase()
|
|
381
|
+
.split(/\s+/u)
|
|
382
|
+
.map((token) => token.trim())
|
|
383
|
+
.filter((token) => token.length > 0);
|
|
384
|
+
}
|
|
385
|
+
function matchesSearch(relativePath, tokens) {
|
|
386
|
+
const lowerPath = relativePath.toLocaleLowerCase();
|
|
387
|
+
return tokens.every((token) => lowerPath.includes(token));
|
|
388
|
+
}
|
|
389
|
+
function fileSearchScore(relativePath, query) {
|
|
390
|
+
const lowerPath = relativePath.toLocaleLowerCase();
|
|
391
|
+
const lowerName = basename(relativePath).toLocaleLowerCase();
|
|
392
|
+
const lowerQuery = query.toLocaleLowerCase();
|
|
393
|
+
if (lowerName === lowerQuery)
|
|
394
|
+
return 0;
|
|
395
|
+
if (lowerName.startsWith(lowerQuery))
|
|
396
|
+
return 100 + relativePath.length;
|
|
397
|
+
if (lowerPath === lowerQuery)
|
|
398
|
+
return 200 + relativePath.length;
|
|
399
|
+
if (lowerPath.startsWith(lowerQuery))
|
|
400
|
+
return 300 + relativePath.length;
|
|
401
|
+
const nameIndex = lowerName.indexOf(lowerQuery);
|
|
402
|
+
if (nameIndex >= 0)
|
|
403
|
+
return 400 + nameIndex + relativePath.length;
|
|
404
|
+
const pathIndex = lowerPath.indexOf(lowerQuery);
|
|
405
|
+
if (pathIndex >= 0)
|
|
406
|
+
return 600 + pathIndex + relativePath.length;
|
|
407
|
+
return 1_000 + relativePath.length;
|
|
408
|
+
}
|
|
409
|
+
function directoryOf(relativePath) {
|
|
410
|
+
const dir = pathPosix.dirname(relativePath);
|
|
411
|
+
return dir === "." ? "" : dir;
|
|
412
|
+
}
|
|
413
|
+
function entryVisibleToFileSearch(relativePath, entry, redactor) {
|
|
414
|
+
return (metadataIsSafe(relativePath, redactor) &&
|
|
415
|
+
!pathIsDenied(relativePath) &&
|
|
416
|
+
!entry.isSymbolicLink());
|
|
417
|
+
}
|
|
418
|
+
async function addFileSearchCandidate(args) {
|
|
419
|
+
if (!matchesSearch(args.relativePath, args.tokens))
|
|
420
|
+
return;
|
|
421
|
+
let info;
|
|
422
|
+
try {
|
|
423
|
+
info = await lstat(args.nativePath);
|
|
424
|
+
}
|
|
425
|
+
catch {
|
|
426
|
+
return;
|
|
427
|
+
}
|
|
428
|
+
args.state.candidates.push({
|
|
429
|
+
score: fileSearchScore(args.relativePath, args.query),
|
|
430
|
+
result: {
|
|
431
|
+
root: args.root.root,
|
|
432
|
+
path: args.relativePath,
|
|
433
|
+
name: args.entryName,
|
|
434
|
+
directory: directoryOf(args.relativePath),
|
|
435
|
+
extension: extensionOf(args.entryName),
|
|
436
|
+
sizeBytes: info.size,
|
|
437
|
+
modifiedAt: info.mtimeMs,
|
|
438
|
+
},
|
|
439
|
+
});
|
|
440
|
+
}
|
|
441
|
+
async function collectFileSearchEntry(args) {
|
|
442
|
+
const relativePath = childRelative(args.current.relativePath, args.entry.name);
|
|
443
|
+
if (!entryVisibleToFileSearch(relativePath, args.entry, args.redactor))
|
|
444
|
+
return;
|
|
445
|
+
const nativePath = join(args.current.path, args.entry.name);
|
|
446
|
+
if (args.entry.isDirectory()) {
|
|
447
|
+
args.state.stack.push({ path: nativePath, relativePath });
|
|
448
|
+
return;
|
|
449
|
+
}
|
|
450
|
+
if (!args.entry.isFile())
|
|
451
|
+
return;
|
|
452
|
+
args.state.scannedFileCount += 1;
|
|
453
|
+
if (args.state.scannedFileCount > MAX_FILE_SEARCH_SCAN) {
|
|
454
|
+
args.state.scanTruncated = true;
|
|
455
|
+
return;
|
|
456
|
+
}
|
|
457
|
+
await addFileSearchCandidate({
|
|
458
|
+
root: args.root,
|
|
459
|
+
query: args.query,
|
|
460
|
+
relativePath,
|
|
461
|
+
nativePath,
|
|
462
|
+
entryName: args.entry.name,
|
|
463
|
+
tokens: args.tokens,
|
|
464
|
+
state: args.state,
|
|
465
|
+
});
|
|
466
|
+
}
|
|
467
|
+
async function collectFileSearchDirectory(args) {
|
|
468
|
+
let dir;
|
|
469
|
+
try {
|
|
470
|
+
dir = await opendir(args.current.path);
|
|
471
|
+
}
|
|
472
|
+
catch {
|
|
473
|
+
return;
|
|
474
|
+
}
|
|
475
|
+
try {
|
|
476
|
+
for await (const entry of dir) {
|
|
477
|
+
await collectFileSearchEntry({ ...args, entry });
|
|
478
|
+
if (args.state.scanTruncated)
|
|
479
|
+
break;
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
finally {
|
|
483
|
+
await dir.close().catch(() => undefined);
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
async function collectFileSearchResults(args) {
|
|
487
|
+
const tokens = searchTokens(args.query);
|
|
488
|
+
if (tokens.length === 0) {
|
|
489
|
+
return { results: [], truncated: false, scannedFileCount: 0 };
|
|
490
|
+
}
|
|
491
|
+
const state = {
|
|
492
|
+
candidates: [],
|
|
493
|
+
stack: [{ path: args.root.realRoot, relativePath: "" }],
|
|
494
|
+
scannedFileCount: 0,
|
|
495
|
+
scanTruncated: false,
|
|
496
|
+
};
|
|
497
|
+
while (state.stack.length > 0) {
|
|
498
|
+
const current = state.stack.pop();
|
|
499
|
+
if (current === undefined)
|
|
500
|
+
break;
|
|
501
|
+
await collectFileSearchDirectory({ ...args, current, tokens, state });
|
|
502
|
+
if (state.scanTruncated)
|
|
503
|
+
break;
|
|
504
|
+
}
|
|
505
|
+
state.candidates.sort((a, b) => a.score - b.score || a.result.path.localeCompare(b.result.path));
|
|
506
|
+
return {
|
|
507
|
+
results: state.candidates.slice(0, args.limit).map((candidate) => candidate.result),
|
|
508
|
+
truncated: state.scanTruncated || state.candidates.length > args.limit,
|
|
509
|
+
scannedFileCount: Math.min(state.scannedFileCount, MAX_FILE_SEARCH_SCAN),
|
|
510
|
+
};
|
|
511
|
+
}
|
|
512
|
+
export async function searchFiles(store, rootInput, queryInput, limitInput, redactor = staticFilesMetadataRedactor) {
|
|
513
|
+
const root = await resolveRoot(store, rootInput, redactor);
|
|
514
|
+
const query = normalizeSearchQuery(queryInput);
|
|
515
|
+
const limit = Math.min(Math.max(limitInput ?? DEFAULT_FILE_SEARCH_LIMIT, 1), MAX_FILE_SEARCH_LIMIT);
|
|
516
|
+
const collected = await collectFileSearchResults({ root, query, limit, redactor });
|
|
517
|
+
return {
|
|
518
|
+
root: root.root,
|
|
519
|
+
query,
|
|
520
|
+
...collected,
|
|
521
|
+
};
|
|
522
|
+
}
|
|
355
523
|
const IMAGE_MIME = {
|
|
356
524
|
png: "image/png",
|
|
357
525
|
jpg: "image/jpeg",
|
|
@@ -677,6 +845,12 @@ export async function handleFilesTree(ctx, deps) {
|
|
|
677
845
|
body: await readFilesTree(deps.store, ctx.url.searchParams.get("root"), ctx.url.searchParams.get("path"), deps.redactor),
|
|
678
846
|
}));
|
|
679
847
|
}
|
|
848
|
+
export async function handleFilesSearch(ctx, deps) {
|
|
849
|
+
return runFilesHandler(async () => ({
|
|
850
|
+
status: 200,
|
|
851
|
+
body: await searchFiles(deps.store, ctx.url.searchParams.get("root"), ctx.url.searchParams.get("q") ?? ctx.url.searchParams.get("query"), parseSearchLimit(ctx.url.searchParams.get("limit")), deps.redactor),
|
|
852
|
+
}));
|
|
853
|
+
}
|
|
680
854
|
export async function handleFilesPreview(ctx, deps) {
|
|
681
855
|
return runFilesHandler(async () => ({
|
|
682
856
|
status: 200,
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { GatewayReadinessReport, GatewayReadinessRequest } from "@oscharko-dev/keiko-contracts/bff-wire";
|
|
2
|
+
import type { UiHandlerDeps } from "./deps.js";
|
|
3
|
+
import type { RouteContext, RouteResult } from "./routes.js";
|
|
4
|
+
export declare function runGatewayReadiness(request: GatewayReadinessRequest, deps: UiHandlerDeps): Promise<GatewayReadinessReport | RouteResult>;
|
|
5
|
+
export declare function handleGatewayReadiness(ctx: RouteContext, deps: UiHandlerDeps): Promise<RouteResult>;
|
|
6
|
+
//# sourceMappingURL=gateway-readiness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateway-readiness.d.ts","sourceRoot":"","sources":["../src/gateway-readiness.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAIV,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AA40B7D,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,uBAAuB,EAChC,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,sBAAsB,GAAG,WAAW,CAAC,CAuB/C;AAED,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,WAAW,CAAC,CAMtB"}
|