@relkit/inspector-api 0.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +5 -0
- package/dist/actions-dispatch.d.ts +4 -0
- package/dist/actions-dispatch.d.ts.map +1 -0
- package/dist/actions-dispatch.js +80 -0
- package/dist/actions-dispatch.js.map +1 -0
- package/dist/actions-errors.d.ts +7 -0
- package/dist/actions-errors.d.ts.map +1 -0
- package/dist/actions-errors.js +13 -0
- package/dist/actions-errors.js.map +1 -0
- package/dist/actions-projection.d.ts +7 -0
- package/dist/actions-projection.d.ts.map +1 -0
- package/dist/actions-projection.js +79 -0
- package/dist/actions-projection.js.map +1 -0
- package/dist/actions-runtime.d.ts +15 -0
- package/dist/actions-runtime.d.ts.map +1 -0
- package/dist/actions-runtime.js +96 -0
- package/dist/actions-runtime.js.map +1 -0
- package/dist/actions-utils.d.ts +17 -0
- package/dist/actions-utils.d.ts.map +1 -0
- package/dist/actions-utils.js +103 -0
- package/dist/actions-utils.js.map +1 -0
- package/dist/actions.d.ts +107 -0
- package/dist/actions.d.ts.map +1 -0
- package/dist/actions.js +56 -0
- package/dist/actions.js.map +1 -0
- package/dist/diagnostics.d.ts +4 -0
- package/dist/diagnostics.d.ts.map +1 -0
- package/dist/diagnostics.js +73 -0
- package/dist/diagnostics.js.map +1 -0
- package/dist/environment.d.ts +5 -0
- package/dist/environment.d.ts.map +1 -0
- package/dist/environment.js +61 -0
- package/dist/environment.js.map +1 -0
- package/dist/events-runtime.d.ts +6 -0
- package/dist/events-runtime.d.ts.map +1 -0
- package/dist/events-runtime.js +181 -0
- package/dist/events-runtime.js.map +1 -0
- package/dist/generation-types.d.ts +22 -0
- package/dist/generation-types.d.ts.map +1 -0
- package/dist/generation-types.js +2 -0
- package/dist/generation-types.js.map +1 -0
- package/dist/generation.d.ts +3 -0
- package/dist/generation.d.ts.map +1 -0
- package/dist/generation.js +87 -0
- package/dist/generation.js.map +1 -0
- package/dist/graph-utils.d.ts +6 -0
- package/dist/graph-utils.d.ts.map +1 -0
- package/dist/graph-utils.js +60 -0
- package/dist/graph-utils.js.map +1 -0
- package/dist/graph.d.ts +14 -0
- package/dist/graph.d.ts.map +1 -0
- package/dist/graph.js +120 -0
- package/dist/graph.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/observability-utils.d.ts +4 -0
- package/dist/observability-utils.d.ts.map +1 -0
- package/dist/observability-utils.js +150 -0
- package/dist/observability-utils.js.map +1 -0
- package/dist/observability.d.ts +23 -0
- package/dist/observability.d.ts.map +1 -0
- package/dist/observability.js +126 -0
- package/dist/observability.js.map +1 -0
- package/dist/resource-explorer.d.ts +54 -0
- package/dist/resource-explorer.d.ts.map +1 -0
- package/dist/resource-explorer.js +119 -0
- package/dist/resource-explorer.js.map +1 -0
- package/dist/resource-routes.d.ts +6 -0
- package/dist/resource-routes.d.ts.map +1 -0
- package/dist/resource-routes.js +10 -0
- package/dist/resource-routes.js.map +1 -0
- package/dist/router-utils.d.ts +26 -0
- package/dist/router-utils.d.ts.map +1 -0
- package/dist/router-utils.js +129 -0
- package/dist/router-utils.js.map +1 -0
- package/dist/router.d.ts +23 -0
- package/dist/router.d.ts.map +1 -0
- package/dist/router.js +94 -0
- package/dist/router.js.map +1 -0
- package/dist/runtime.d.ts +13 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +158 -0
- package/dist/runtime.js.map +1 -0
- package/dist/shared.d.ts +74 -0
- package/dist/shared.d.ts.map +1 -0
- package/dist/shared.js +120 -0
- package/dist/shared.js.map +1 -0
- package/package.json +41 -0
package/dist/runtime.js
ADDED
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { eventRuntimeList } from "./events-runtime.js";
|
|
2
|
+
import { identity, isRecord, page, pick, resolveCollection, resolveItem, safeJson, safeSource, } from "./shared.js";
|
|
3
|
+
export const RUNTIME_COLLECTIONS = Object.freeze([
|
|
4
|
+
"functions",
|
|
5
|
+
"jobs",
|
|
6
|
+
"events",
|
|
7
|
+
"buckets",
|
|
8
|
+
"cache",
|
|
9
|
+
"tools",
|
|
10
|
+
"agents",
|
|
11
|
+
]);
|
|
12
|
+
const RUNTIME_FIELDS = [
|
|
13
|
+
"id",
|
|
14
|
+
"functionId",
|
|
15
|
+
"jobId",
|
|
16
|
+
"instanceId",
|
|
17
|
+
"eventId",
|
|
18
|
+
"eventVersion",
|
|
19
|
+
"deliveryId",
|
|
20
|
+
"bucketId",
|
|
21
|
+
"cacheId",
|
|
22
|
+
"toolId",
|
|
23
|
+
"agentId",
|
|
24
|
+
"turnId",
|
|
25
|
+
"profile",
|
|
26
|
+
"status",
|
|
27
|
+
"state",
|
|
28
|
+
"outcome",
|
|
29
|
+
"approval",
|
|
30
|
+
"sideEffect",
|
|
31
|
+
"invocationId",
|
|
32
|
+
"requestId",
|
|
33
|
+
"traceId",
|
|
34
|
+
"triggerId",
|
|
35
|
+
"toolCallId",
|
|
36
|
+
"parentSpanId",
|
|
37
|
+
"step",
|
|
38
|
+
"attempt",
|
|
39
|
+
"acceptedAt",
|
|
40
|
+
"availableAt",
|
|
41
|
+
"leaseExpiresAt",
|
|
42
|
+
"idempotencyExpiresAt",
|
|
43
|
+
"nextRun",
|
|
44
|
+
"nextRunAt",
|
|
45
|
+
"nextFireAt",
|
|
46
|
+
"schedules",
|
|
47
|
+
"startedAt",
|
|
48
|
+
"completedAt",
|
|
49
|
+
"durationMs",
|
|
50
|
+
"timeoutMs",
|
|
51
|
+
"concurrency",
|
|
52
|
+
"declaredEdges",
|
|
53
|
+
"observedEdges",
|
|
54
|
+
"failure",
|
|
55
|
+
"errorId",
|
|
56
|
+
"occurredAt",
|
|
57
|
+
"capabilities",
|
|
58
|
+
"policy",
|
|
59
|
+
"schemaVersion",
|
|
60
|
+
"bytes",
|
|
61
|
+
"objects",
|
|
62
|
+
"entries",
|
|
63
|
+
"hits",
|
|
64
|
+
"misses",
|
|
65
|
+
"evictions",
|
|
66
|
+
"inFlight",
|
|
67
|
+
"inputBytes",
|
|
68
|
+
"outputBytes",
|
|
69
|
+
];
|
|
70
|
+
export class InspectorRuntimeError extends Error {
|
|
71
|
+
code;
|
|
72
|
+
status;
|
|
73
|
+
constructor(code, status) {
|
|
74
|
+
super(code);
|
|
75
|
+
this.code = code;
|
|
76
|
+
this.status = status;
|
|
77
|
+
this.name = "InspectorRuntimeError";
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
export async function runtimeSnapshot(generation) {
|
|
81
|
+
const entries = await Promise.all(RUNTIME_COLLECTIONS.map(async (collection) => {
|
|
82
|
+
const items = await runtimeItems(generation, collection);
|
|
83
|
+
return [collection, { count: items.length, items }];
|
|
84
|
+
}));
|
|
85
|
+
return { ...identity(generation), state: Object.fromEntries(entries) };
|
|
86
|
+
}
|
|
87
|
+
export async function runtimeList(generation, collection, request) {
|
|
88
|
+
if (collection === "events")
|
|
89
|
+
return eventRuntimeList(generation, request);
|
|
90
|
+
const items = await runtimeItems(generation, collection);
|
|
91
|
+
return { ...identity(generation), ...page(items, request) };
|
|
92
|
+
}
|
|
93
|
+
export async function runtimeDetail(generation, collection, id) {
|
|
94
|
+
const source = runtimeSource(generation, collection);
|
|
95
|
+
let item = await resolveItem(source, id);
|
|
96
|
+
if (item === undefined)
|
|
97
|
+
item = (await runtimeItems(generation, collection)).find((value) => itemId(value) === id);
|
|
98
|
+
if (item === undefined)
|
|
99
|
+
throw new InspectorRuntimeError("RELKIT_INSPECTOR_NOT_FOUND", 404);
|
|
100
|
+
return { ...identity(generation), state: projectItem(item) };
|
|
101
|
+
}
|
|
102
|
+
async function runtimeItems(generation, collection) {
|
|
103
|
+
const source = runtimeSource(generation, collection);
|
|
104
|
+
if (source === undefined)
|
|
105
|
+
return [];
|
|
106
|
+
const value = await resolveCollection(source);
|
|
107
|
+
if (value === undefined || value === null)
|
|
108
|
+
return [];
|
|
109
|
+
const raw = Array.isArray(value)
|
|
110
|
+
? value
|
|
111
|
+
: isRecord(value) && Array.isArray(value.items)
|
|
112
|
+
? value.items
|
|
113
|
+
: isRecord(value)
|
|
114
|
+
? [value]
|
|
115
|
+
: [];
|
|
116
|
+
return raw.flatMap((item) => {
|
|
117
|
+
const projected = projectItem(item);
|
|
118
|
+
return projected === undefined ? [] : [projected];
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
function runtimeSource(generation, collection) {
|
|
122
|
+
if (collection === "cache")
|
|
123
|
+
return generation.runtime?.cache ?? generation.runtime?.caches;
|
|
124
|
+
return generation.runtime?.[collection];
|
|
125
|
+
}
|
|
126
|
+
function projectItem(value) {
|
|
127
|
+
if (!isRecord(value))
|
|
128
|
+
return undefined;
|
|
129
|
+
const result = pick(value, RUNTIME_FIELDS);
|
|
130
|
+
const source = safeSource(value.source);
|
|
131
|
+
if (source !== undefined)
|
|
132
|
+
result.source = source;
|
|
133
|
+
const id = itemId(value);
|
|
134
|
+
if (id !== undefined)
|
|
135
|
+
result.id = id;
|
|
136
|
+
return safeJson(result);
|
|
137
|
+
}
|
|
138
|
+
function itemId(value) {
|
|
139
|
+
if (!isRecord(value))
|
|
140
|
+
return undefined;
|
|
141
|
+
for (const key of [
|
|
142
|
+
"id",
|
|
143
|
+
"functionId",
|
|
144
|
+
"jobId",
|
|
145
|
+
"instanceId",
|
|
146
|
+
"eventId",
|
|
147
|
+
"deliveryId",
|
|
148
|
+
"bucketId",
|
|
149
|
+
"cacheId",
|
|
150
|
+
"toolId",
|
|
151
|
+
"agentId",
|
|
152
|
+
]) {
|
|
153
|
+
if (typeof value[key] === "string" && value[key].length > 0)
|
|
154
|
+
return value[key];
|
|
155
|
+
}
|
|
156
|
+
return undefined;
|
|
157
|
+
}
|
|
158
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/shared.d.ts
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { type JsonValue, type MaybePromise } from "@relkit/contracts";
|
|
2
|
+
import { type RedactionPolicy } from "@relkit/observability";
|
|
3
|
+
import type { InspectorActionServices } from "./actions.js";
|
|
4
|
+
import type { InspectorCandidateGenerationSource, ResolvedCandidateGeneration } from "./generation-types.js";
|
|
5
|
+
import type { InspectorResourceExplorers } from "./resource-explorer.js";
|
|
6
|
+
export type InspectorMode = "development" | "test" | "production";
|
|
7
|
+
export type InspectorValueSource<T = unknown> = T | (() => MaybePromise<T>);
|
|
8
|
+
export interface InspectorRuntimeServices {
|
|
9
|
+
readonly functions?: unknown;
|
|
10
|
+
readonly jobs?: unknown;
|
|
11
|
+
readonly events?: unknown;
|
|
12
|
+
readonly buckets?: unknown;
|
|
13
|
+
readonly cache?: unknown;
|
|
14
|
+
readonly caches?: unknown;
|
|
15
|
+
readonly tools?: unknown;
|
|
16
|
+
readonly agents?: unknown;
|
|
17
|
+
}
|
|
18
|
+
export interface InspectorGenerationServices extends InspectorRuntimeServices {
|
|
19
|
+
readonly graph?: unknown;
|
|
20
|
+
readonly descriptors?: unknown;
|
|
21
|
+
readonly environment?: unknown;
|
|
22
|
+
readonly diagnostics?: unknown;
|
|
23
|
+
readonly candidate?: unknown;
|
|
24
|
+
readonly candidateGeneration?: unknown;
|
|
25
|
+
readonly observedEdges?: unknown;
|
|
26
|
+
readonly runtime?: InspectorRuntimeServices;
|
|
27
|
+
readonly actions?: InspectorValueSource<InspectorActionServices | undefined>;
|
|
28
|
+
readonly resources?: InspectorValueSource<InspectorResourceExplorers | undefined>;
|
|
29
|
+
}
|
|
30
|
+
export interface InspectorActiveGeneration extends InspectorGenerationServices {
|
|
31
|
+
readonly generationId?: string;
|
|
32
|
+
readonly id?: string;
|
|
33
|
+
readonly graphHash?: string;
|
|
34
|
+
readonly services?: InspectorGenerationServices;
|
|
35
|
+
readonly candidate?: InspectorCandidateGenerationSource;
|
|
36
|
+
readonly candidateGeneration?: InspectorCandidateGenerationSource;
|
|
37
|
+
}
|
|
38
|
+
export type InspectorActiveGenerationSource = InspectorActiveGeneration | (() => MaybePromise<InspectorActiveGeneration | undefined>);
|
|
39
|
+
export interface ActiveGenerationOptions {
|
|
40
|
+
readonly activeGeneration?: InspectorActiveGenerationSource;
|
|
41
|
+
readonly generation?: InspectorActiveGenerationSource;
|
|
42
|
+
readonly getActiveGeneration?: () => MaybePromise<InspectorActiveGeneration | undefined>;
|
|
43
|
+
}
|
|
44
|
+
export interface ResolvedActiveGeneration {
|
|
45
|
+
readonly generationId: string;
|
|
46
|
+
readonly graphHash: string;
|
|
47
|
+
readonly graph?: unknown;
|
|
48
|
+
readonly descriptors?: unknown;
|
|
49
|
+
readonly diagnostics?: unknown;
|
|
50
|
+
readonly observedEdges?: unknown;
|
|
51
|
+
readonly runtime?: InspectorRuntimeServices;
|
|
52
|
+
readonly actions?: InspectorActionServices;
|
|
53
|
+
readonly resources?: InspectorResourceExplorers;
|
|
54
|
+
readonly candidate?: ResolvedCandidateGeneration;
|
|
55
|
+
}
|
|
56
|
+
export declare class InspectorQueryError extends TypeError {
|
|
57
|
+
constructor(message: string);
|
|
58
|
+
}
|
|
59
|
+
export declare function isRecord(value: unknown): value is Record<string, unknown>;
|
|
60
|
+
export declare function stringValue(value: unknown): string | undefined;
|
|
61
|
+
export declare function resolveValue<T>(source: InspectorValueSource<T> | undefined): Promise<T | undefined>;
|
|
62
|
+
export declare function resolveService(source: unknown): Promise<unknown>;
|
|
63
|
+
export interface Page<T extends JsonValue = JsonValue> {
|
|
64
|
+
readonly items: readonly T[];
|
|
65
|
+
readonly nextCursor?: string;
|
|
66
|
+
}
|
|
67
|
+
export declare function page<T extends JsonValue>(items: readonly T[], request: Request): Page<T>;
|
|
68
|
+
export declare function safeSource(value: unknown): JsonValue | undefined;
|
|
69
|
+
export declare function safeJson(value: unknown, policy?: RedactionPolicy): JsonValue;
|
|
70
|
+
export declare function pick(value: unknown, keys: readonly string[]): Record<string, unknown>;
|
|
71
|
+
export declare function identity(generation: ResolvedActiveGeneration): Record<string, JsonValue>;
|
|
72
|
+
export declare function resolveCollection(source: unknown): Promise<unknown>;
|
|
73
|
+
export declare function resolveItem(source: unknown, id: string): Promise<unknown>;
|
|
74
|
+
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":"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"}
|
package/dist/shared.js
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { API_VERSION, normalizeSourceLocation, } from "@relkit/contracts";
|
|
2
|
+
import { redactRecord } from "@relkit/observability";
|
|
3
|
+
export class InspectorQueryError extends TypeError {
|
|
4
|
+
constructor(message) {
|
|
5
|
+
super(message);
|
|
6
|
+
this.name = "InspectorQueryError";
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
export function isRecord(value) {
|
|
10
|
+
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
11
|
+
}
|
|
12
|
+
export function stringValue(value) {
|
|
13
|
+
return typeof value === "string" && value.trim() !== "" ? value.trim() : undefined;
|
|
14
|
+
}
|
|
15
|
+
export async function resolveValue(source) {
|
|
16
|
+
return source === undefined
|
|
17
|
+
? undefined
|
|
18
|
+
: typeof source === "function"
|
|
19
|
+
? await source()
|
|
20
|
+
: source;
|
|
21
|
+
}
|
|
22
|
+
export async function resolveService(source) {
|
|
23
|
+
const value = await resolveValue(source);
|
|
24
|
+
if (isRecord(value) && typeof value.snapshot === "function")
|
|
25
|
+
return await value.snapshot();
|
|
26
|
+
return value;
|
|
27
|
+
}
|
|
28
|
+
export function page(items, request) {
|
|
29
|
+
const params = new URL(request.url).searchParams;
|
|
30
|
+
const search = readFilter(params.get("search"), "search");
|
|
31
|
+
const kind = readFilter(params.get("kind"), "kind");
|
|
32
|
+
const status = readFilter(params.get("status"), "status");
|
|
33
|
+
const filtered = items.filter((item) => (search === undefined || includesText(item, search.toLowerCase())) &&
|
|
34
|
+
(kind === undefined || matchesField(item, ["kind", "type", "method"], kind)) &&
|
|
35
|
+
(status === undefined || matchesField(item, ["status", "state", "outcome"], status)));
|
|
36
|
+
const cursor = readInteger(params.get("cursor"), "cursor", 0);
|
|
37
|
+
const limit = Math.min(readInteger(params.get("limit"), "limit", 50), 100);
|
|
38
|
+
const selected = filtered.slice(cursor, cursor + limit);
|
|
39
|
+
const next = cursor + selected.length;
|
|
40
|
+
return next < filtered.length
|
|
41
|
+
? { items: selected, nextCursor: String(next) }
|
|
42
|
+
: { items: selected };
|
|
43
|
+
}
|
|
44
|
+
function readFilter(value, name) {
|
|
45
|
+
if (value === null || value.trim() === "")
|
|
46
|
+
return undefined;
|
|
47
|
+
if (value.length > 128)
|
|
48
|
+
throw new InspectorQueryError(`${name} is invalid`);
|
|
49
|
+
return value.trim();
|
|
50
|
+
}
|
|
51
|
+
function matchesField(value, names, expected) {
|
|
52
|
+
if (!isRecord(value))
|
|
53
|
+
return false;
|
|
54
|
+
return names.some((name) => value[name] === expected || (isRecord(value.config) && value.config[name] === expected));
|
|
55
|
+
}
|
|
56
|
+
function includesText(value, query) {
|
|
57
|
+
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
|
|
58
|
+
return String(value).toLowerCase().includes(query);
|
|
59
|
+
}
|
|
60
|
+
if (Array.isArray(value))
|
|
61
|
+
return value.some((item) => includesText(item, query));
|
|
62
|
+
return (isRecord(value) && Object.values(value).some((item) => includesText(item, query)));
|
|
63
|
+
}
|
|
64
|
+
function readInteger(value, name, fallback) {
|
|
65
|
+
if (value === null)
|
|
66
|
+
return fallback;
|
|
67
|
+
if (!/^\d+$/.test(value))
|
|
68
|
+
throw new InspectorQueryError(`${name} is invalid`);
|
|
69
|
+
const parsed = Number(value);
|
|
70
|
+
if (!Number.isSafeInteger(parsed) || (name === "limit" && parsed < 1))
|
|
71
|
+
throw new InspectorQueryError(`${name} is invalid`);
|
|
72
|
+
return parsed;
|
|
73
|
+
}
|
|
74
|
+
export function safeSource(value) {
|
|
75
|
+
if (!isRecord(value) || typeof value.file !== "string")
|
|
76
|
+
return undefined;
|
|
77
|
+
if (!Number.isInteger(value.line) || !Number.isInteger(value.column))
|
|
78
|
+
return undefined;
|
|
79
|
+
try {
|
|
80
|
+
return normalizeSourceLocation(value);
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
return undefined;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
export function safeJson(value, policy) {
|
|
87
|
+
return redactRecord(value, policy);
|
|
88
|
+
}
|
|
89
|
+
export function pick(value, keys) {
|
|
90
|
+
if (!isRecord(value))
|
|
91
|
+
return {};
|
|
92
|
+
const result = {};
|
|
93
|
+
for (const key of keys)
|
|
94
|
+
if (value[key] !== undefined)
|
|
95
|
+
result[key] = value[key];
|
|
96
|
+
return result;
|
|
97
|
+
}
|
|
98
|
+
export function identity(generation) {
|
|
99
|
+
return {
|
|
100
|
+
protocol: "relkit.inspector",
|
|
101
|
+
version: API_VERSION,
|
|
102
|
+
generationId: generation.generationId,
|
|
103
|
+
graphHash: generation.graphHash,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
export async function resolveCollection(source) {
|
|
107
|
+
const value = await resolveService(source);
|
|
108
|
+
if (isRecord(value) && typeof value.list === "function")
|
|
109
|
+
return await value.list();
|
|
110
|
+
if (isRecord(value) && typeof value.query === "function")
|
|
111
|
+
return await value.query({ limit: 100 });
|
|
112
|
+
return value;
|
|
113
|
+
}
|
|
114
|
+
export async function resolveItem(source, id) {
|
|
115
|
+
const value = await resolveService(source);
|
|
116
|
+
if (isRecord(value) && typeof value.get === "function")
|
|
117
|
+
return await value.get(id);
|
|
118
|
+
return undefined;
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,uBAAuB,GAGxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAwB,MAAM,uBAAuB,CAAC;AA0D3E,MAAM,OAAO,mBAAoB,SAAQ,SAAS;IAChD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AACD,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACrF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAA2C;IAE3C,OAAO,MAAM,KAAK,SAAS;QACzB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,OAAO,MAAM,KAAK,UAAU;YAC5B,CAAC,CAAC,MAAO,MAAgC,EAAE;YAC3C,CAAC,CAAC,MAAM,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAe;IAClD,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,UAAU;QAAE,OAAO,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC3F,OAAO,KAAK,CAAC;AACf,CAAC;AAOD,MAAM,UAAU,IAAI,CAAsB,KAAmB,EAAE,OAAgB;IAC7E,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC;IACjD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAC3B,CAAC,IAAI,EAAE,EAAE,CACP,CAAC,MAAM,KAAK,SAAS,IAAI,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAClE,CAAC,IAAI,KAAK,SAAS,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC;QAC5E,CAAC,MAAM,KAAK,SAAS,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC,CACvF,CAAC;IACF,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3E,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IACtC,OAAO,IAAI,GAAG,QAAQ,CAAC,MAAM;QAC3B,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;QAC/C,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC1B,CAAC;AAED,SAAS,UAAU,CAAC,KAAoB,EAAE,IAAY;IACpD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC5D,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,mBAAmB,CAAC,GAAG,IAAI,aAAa,CAAC,CAAC;IAC5E,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,YAAY,CAAC,KAAgB,EAAE,KAAwB,EAAE,QAAgB;IAChF,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACnC,OAAO,KAAK,CAAC,IAAI,CACf,CAAC,IAAI,EAAE,EAAE,CACP,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,CAC1F,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAgB,EAAE,KAAa;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QACzF,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IACjF,OAAO,CACL,QAAQ,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAiB,EAAE,KAAK,CAAC,CAAC,CAC/F,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAoB,EAAE,IAAY,EAAE,QAAgB;IACvE,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC;IACpC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,mBAAmB,CAAC,GAAG,IAAI,aAAa,CAAC,CAAC;IAC9E,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,GAAG,CAAC,CAAC;QACnE,MAAM,IAAI,mBAAmB,CAAC,GAAG,IAAI,aAAa,CAAC,CAAC;IACtD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACzE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAC;IACvF,IAAI,CAAC;QACH,OAAO,uBAAuB,CAC5B,KAAuD,CAChC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAc,EAAE,MAAwB;IAC/D,OAAO,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,KAAc,EAAE,IAAuB;IAC1D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAChC,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,IAAI;QAAE,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/E,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,UAAoC;IAC3D,OAAO;QACL,QAAQ,EAAE,kBAAkB;QAC5B,OAAO,EAAE,WAAW;QACpB,YAAY,EAAE,UAAU,CAAC,YAAY;QACrC,SAAS,EAAE,UAAU,CAAC,SAAS;KAChC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAe;IACrD,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;IACnF,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,UAAU;QACtD,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAC3C,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAe,EAAE,EAAU;IAC3D,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,UAAU;QAAE,OAAO,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACnF,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@relkit/inspector-api",
|
|
3
|
+
"version": "0.0.0",
|
|
4
|
+
"description": "Unsupported internal API for the RELKIT inspector; use @relkit/cli.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "https://github.com/rel-kit/relkit.git",
|
|
9
|
+
"directory": "packages/inspector-api"
|
|
10
|
+
},
|
|
11
|
+
"homepage": "https://github.com/rel-kit/relkit#readme",
|
|
12
|
+
"bugs": {
|
|
13
|
+
"url": "https://github.com/rel-kit/relkit/issues"
|
|
14
|
+
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist"
|
|
17
|
+
],
|
|
18
|
+
"publishConfig": {
|
|
19
|
+
"access": "public"
|
|
20
|
+
},
|
|
21
|
+
"engines": {
|
|
22
|
+
"bun": ">=1.3.10"
|
|
23
|
+
},
|
|
24
|
+
"type": "module",
|
|
25
|
+
"exports": {
|
|
26
|
+
".": {
|
|
27
|
+
"types": "./dist/index.d.ts",
|
|
28
|
+
"import": "./dist/index.js"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"@relkit/contracts": "0.0.0",
|
|
33
|
+
"@relkit/observability": "0.0.0",
|
|
34
|
+
"hono": "4.13.2"
|
|
35
|
+
},
|
|
36
|
+
"scripts": {
|
|
37
|
+
"build": "tsc -b",
|
|
38
|
+
"check": "tsc -b --pretty false",
|
|
39
|
+
"typecheck": "tsc -b --pretty false"
|
|
40
|
+
}
|
|
41
|
+
}
|