@vscode/component-explorer-cli 0.1.1-1 → 0.1.1-10
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/README.md +177 -0
- package/dist/commands/acceptCommand.d.ts +2 -1
- package/dist/commands/acceptCommand.d.ts.map +1 -1
- package/dist/commands/acceptCommand.js +12 -6
- package/dist/commands/acceptCommand.js.map +1 -1
- package/dist/commands/compareCommand.d.ts +5 -1
- package/dist/commands/compareCommand.d.ts.map +1 -1
- package/dist/commands/compareCommand.js +43 -71
- package/dist/commands/compareCommand.js.map +1 -1
- package/dist/commands/mcpCommand.d.ts +10 -0
- package/dist/commands/mcpCommand.d.ts.map +1 -0
- package/dist/commands/mcpCommand.js +58 -0
- package/dist/commands/mcpCommand.js.map +1 -0
- package/dist/commands/screenshotCommand.d.ts +7 -2
- package/dist/commands/screenshotCommand.d.ts.map +1 -1
- package/dist/commands/screenshotCommand.js +61 -14
- package/dist/commands/screenshotCommand.js.map +1 -1
- package/dist/commands/serveCommand.d.ts +19 -0
- package/dist/commands/serveCommand.d.ts.map +1 -0
- package/dist/commands/serveCommand.js +194 -0
- package/dist/commands/serveCommand.js.map +1 -0
- package/dist/commands/watchCommand.d.ts +1 -2
- package/dist/commands/watchCommand.d.ts.map +1 -1
- package/dist/commands/watchCommand.js +23 -19
- package/dist/commands/watchCommand.js.map +1 -1
- package/dist/comparison.d.ts +60 -0
- package/dist/comparison.d.ts.map +1 -0
- package/dist/comparison.js +250 -0
- package/dist/comparison.js.map +1 -0
- package/dist/component-explorer-config.schema.json +183 -0
- package/dist/componentExplorer.d.ts +44 -2
- package/dist/componentExplorer.d.ts.map +1 -1
- package/dist/componentExplorer.js +98 -16
- package/dist/componentExplorer.js.map +1 -1
- package/dist/daemon/DaemonContext.d.ts +4 -0
- package/dist/daemon/DaemonContext.d.ts.map +1 -0
- package/dist/daemon/DaemonService.d.ts +188 -0
- package/dist/daemon/DaemonService.d.ts.map +1 -0
- package/dist/daemon/DaemonService.js +610 -0
- package/dist/daemon/DaemonService.js.map +1 -0
- package/dist/daemon/approvalStore.d.ts +51 -0
- package/dist/daemon/approvalStore.d.ts.map +1 -0
- package/dist/daemon/approvalStore.js +58 -0
- package/dist/daemon/approvalStore.js.map +1 -0
- package/dist/daemon/lifecycle.d.ts +13 -0
- package/dist/daemon/lifecycle.d.ts.map +1 -0
- package/dist/daemon/lifecycle.js +68 -0
- package/dist/daemon/lifecycle.js.map +1 -0
- package/dist/daemon/pipeClient.d.ts +9 -0
- package/dist/daemon/pipeClient.d.ts.map +1 -0
- package/dist/daemon/pipeClient.js +111 -0
- package/dist/daemon/pipeClient.js.map +1 -0
- package/dist/daemon/pipeName.d.ts +2 -0
- package/dist/daemon/pipeName.d.ts.map +1 -0
- package/dist/daemon/pipeName.js +14 -0
- package/dist/daemon/pipeName.js.map +1 -0
- package/dist/daemon/pipeServer.d.ts +4 -0
- package/dist/daemon/pipeServer.d.ts.map +1 -0
- package/dist/daemon/pipeServer.js +25 -0
- package/dist/daemon/pipeServer.js.map +1 -0
- package/dist/daemon/types.d.ts +12 -0
- package/dist/daemon/types.d.ts.map +1 -0
- package/dist/dependencyInstaller.js +1 -1
- package/dist/dependencyInstaller.js.map +1 -1
- package/dist/explorerSession.d.ts +5 -3
- package/dist/explorerSession.d.ts.map +1 -1
- package/dist/explorerSession.js +6 -3
- package/dist/explorerSession.js.map +1 -1
- package/dist/external/vscode-observables/observables/dist/disposables.js +24 -1
- package/dist/external/vscode-observables/observables/dist/disposables.js.map +1 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/commonFacade/deps.js +1 -4
- package/dist/external/vscode-observables/observables/dist/observableInternal/commonFacade/deps.js.map +1 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js +3 -0
- package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js.map +1 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/index.js +2 -5
- package/dist/external/vscode-observables/observables/dist/observableInternal/index.js.map +1 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js +30 -6
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js.map +1 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js +1 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js.map +1 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derived.js +12 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derived.js.map +1 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utilsCancellation.js +55 -0
- package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utilsCancellation.js.map +1 -0
- package/dist/formatValue.d.ts +2 -0
- package/dist/formatValue.d.ts.map +1 -0
- package/dist/formatValue.js +96 -0
- package/dist/formatValue.js.map +1 -0
- package/dist/formatValue.test.d.ts +2 -0
- package/dist/formatValue.test.d.ts.map +1 -0
- package/dist/git/gitUtils.js +1 -1
- package/dist/git/gitUtils.js.map +1 -1
- package/dist/httpServer.d.ts +8 -7
- package/dist/httpServer.d.ts.map +1 -1
- package/dist/httpServer.js +59 -12
- package/dist/httpServer.js.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/McpServer.d.ts +58 -0
- package/dist/mcp/McpServer.d.ts.map +1 -0
- package/dist/mcp/McpServer.js +820 -0
- package/dist/mcp/McpServer.js.map +1 -0
- package/dist/packages/simple-api/dist/chunk-3R7GHWBM.js +137 -0
- package/dist/packages/simple-api/dist/chunk-3R7GHWBM.js.map +1 -0
- package/dist/packages/simple-api/dist/chunk-Q24JOMNK.js +27 -0
- package/dist/packages/simple-api/dist/chunk-Q24JOMNK.js.map +1 -0
- package/dist/packages/simple-api/dist/chunk-SGBCNXYH.js +24 -0
- package/dist/packages/simple-api/dist/chunk-SGBCNXYH.js.map +1 -0
- package/dist/packages/simple-api/dist/express.js +104 -0
- package/dist/packages/simple-api/dist/express.js.map +1 -0
- package/dist/resolveProject.d.ts +21 -0
- package/dist/resolveProject.d.ts.map +1 -0
- package/dist/resolveProject.js +39 -0
- package/dist/resolveProject.js.map +1 -0
- package/dist/utils.d.ts +24 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +50 -0
- package/dist/utils.js.map +1 -0
- package/dist/watchConfig.d.ts +41 -0
- package/dist/watchConfig.d.ts.map +1 -1
- package/dist/watchConfig.js +41 -19
- package/dist/watchConfig.js.map +1 -1
- package/package.json +16 -6
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/debuggerRpc.js +0 -72
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/debuggerRpc.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/devToolsLogger.js +0 -447
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/devToolsLogger.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/rpc.js +0 -64
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/rpc.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/utils.js +0 -52
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/utils.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"McpServer.js","sources":["../../src/mcp/McpServer.ts"],"sourcesContent":[null],"names":["SdkMcpServer"],"mappings":"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"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
// src/server.ts
|
|
4
|
+
function createApiFactory() {
|
|
5
|
+
const factoryToken = /* @__PURE__ */ Symbol("apiFactory");
|
|
6
|
+
return createFactoryImpl(factoryToken, void 0);
|
|
7
|
+
}
|
|
8
|
+
function createFactoryImpl(factoryToken, middleware) {
|
|
9
|
+
const factory = {
|
|
10
|
+
_factoryToken: factoryToken,
|
|
11
|
+
_middleware: middleware,
|
|
12
|
+
withMiddleware(mwOrFn) {
|
|
13
|
+
const mw = typeof mwOrFn === "function" ? { _dependencies: void 0, _provides: void 0, run: mwOrFn } : mwOrFn;
|
|
14
|
+
const composed = middleware ? {
|
|
15
|
+
_dependencies: void 0,
|
|
16
|
+
_provides: void 0,
|
|
17
|
+
run: async (ctx) => {
|
|
18
|
+
const intermediate = await middleware.run(ctx);
|
|
19
|
+
return await mw.run(intermediate);
|
|
20
|
+
}
|
|
21
|
+
} : mw;
|
|
22
|
+
return createFactoryImpl(factoryToken, composed);
|
|
23
|
+
},
|
|
24
|
+
createMiddleware(fn) {
|
|
25
|
+
return {
|
|
26
|
+
_dependencies: void 0,
|
|
27
|
+
_provides: void 0,
|
|
28
|
+
run: fn
|
|
29
|
+
};
|
|
30
|
+
},
|
|
31
|
+
createMethod(options, run) {
|
|
32
|
+
const obj = z.object(options.args);
|
|
33
|
+
const resultValidator = options.result;
|
|
34
|
+
return {
|
|
35
|
+
_factoryToken: factoryToken,
|
|
36
|
+
_contextRequirement: void 0,
|
|
37
|
+
get TArg() {
|
|
38
|
+
throw new Error("Type-only property");
|
|
39
|
+
},
|
|
40
|
+
get TResult() {
|
|
41
|
+
throw new Error("Type-only property");
|
|
42
|
+
},
|
|
43
|
+
argType: obj,
|
|
44
|
+
resultType: resultValidator ?? z.unknown(),
|
|
45
|
+
run: async (args, rawContext) => {
|
|
46
|
+
const parsedArgs = obj.parse(args ?? {});
|
|
47
|
+
let ctx;
|
|
48
|
+
const baseCtx = middleware ? await middleware.run(rawContext) : rawContext;
|
|
49
|
+
if (options.middleware) {
|
|
50
|
+
ctx = await options.middleware.run(baseCtx);
|
|
51
|
+
} else {
|
|
52
|
+
ctx = baseCtx;
|
|
53
|
+
}
|
|
54
|
+
const result = await run(parsedArgs, ctx);
|
|
55
|
+
if (resultValidator) {
|
|
56
|
+
return resultValidator.parse(result);
|
|
57
|
+
}
|
|
58
|
+
return result;
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
},
|
|
62
|
+
createApi(methods) {
|
|
63
|
+
for (const [name, method] of Object.entries(methods)) {
|
|
64
|
+
if (method instanceof ApiImplementation) {
|
|
65
|
+
if (method._factoryToken !== factoryToken) {
|
|
66
|
+
throw new Error(
|
|
67
|
+
`Method "${name}" is from a different factory. All methods in an API must come from the same factory or its .withMiddleware() derivatives.`
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
} else {
|
|
71
|
+
const m = method;
|
|
72
|
+
if (m._factoryToken !== factoryToken) {
|
|
73
|
+
throw new Error(
|
|
74
|
+
`Method "${name}" is from a different factory. All methods in an API must come from the same factory or its .withMiddleware() derivatives.`
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return new ApiImplementation(factoryToken, methods);
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
return factory;
|
|
83
|
+
}
|
|
84
|
+
var ApiImplementation = class _ApiImplementation {
|
|
85
|
+
constructor(factoryToken, _methods) {
|
|
86
|
+
this._methods = _methods;
|
|
87
|
+
this._factoryToken = factoryToken;
|
|
88
|
+
}
|
|
89
|
+
_factoryToken;
|
|
90
|
+
get TMethods() {
|
|
91
|
+
throw new Error("Type-only property");
|
|
92
|
+
}
|
|
93
|
+
getMethods() {
|
|
94
|
+
const methods = [];
|
|
95
|
+
for (const [name, method] of Object.entries(this._methods)) {
|
|
96
|
+
if (method instanceof _ApiImplementation) {
|
|
97
|
+
const subMethods = method.getMethods();
|
|
98
|
+
for (const subMethod of subMethods) {
|
|
99
|
+
methods.push({
|
|
100
|
+
...subMethod,
|
|
101
|
+
path: `${name}/${subMethod.path}`
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
} else {
|
|
105
|
+
methods.push({
|
|
106
|
+
path: name,
|
|
107
|
+
argType: method.argType,
|
|
108
|
+
resultType: method.resultType
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return methods;
|
|
113
|
+
}
|
|
114
|
+
async run(method, arg, context) {
|
|
115
|
+
const parts = method.split("/", 2);
|
|
116
|
+
const firstPart = parts[0];
|
|
117
|
+
if (!(firstPart in this._methods)) {
|
|
118
|
+
return Promise.reject(new Error(`Method not found: ${method}`));
|
|
119
|
+
}
|
|
120
|
+
const impl = this._methods[firstPart];
|
|
121
|
+
if (parts.length > 1) {
|
|
122
|
+
if (!(impl instanceof _ApiImplementation)) {
|
|
123
|
+
throw new Error(`Method not found: ${method}`);
|
|
124
|
+
}
|
|
125
|
+
return impl.run(parts[1], arg, context);
|
|
126
|
+
} else {
|
|
127
|
+
if (impl instanceof _ApiImplementation) {
|
|
128
|
+
throw new Error(`Method not found: ${method}`);
|
|
129
|
+
}
|
|
130
|
+
const result = await impl.run(arg, context);
|
|
131
|
+
return result ?? null;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
export { ApiImplementation, createApiFactory };
|
|
137
|
+
//# sourceMappingURL=chunk-3R7GHWBM.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunk-3R7GHWBM.js","sources":["../../../../../simple-api/dist/chunk-3R7GHWBM.mjs"],"sourcesContent":["// src/server.ts\nimport { z } from \"zod\";\nfunction createApiFactory() {\n const factoryToken = /* @__PURE__ */ Symbol(\"apiFactory\");\n return createFactoryImpl(factoryToken, void 0);\n}\nfunction createFactoryImpl(factoryToken, middleware) {\n const factory = {\n _factoryToken: factoryToken,\n _middleware: middleware,\n withMiddleware(mwOrFn) {\n const mw = typeof mwOrFn === \"function\" ? { _dependencies: void 0, _provides: void 0, run: mwOrFn } : mwOrFn;\n const composed = middleware ? {\n _dependencies: void 0,\n _provides: void 0,\n run: async (ctx) => {\n const intermediate = await middleware.run(ctx);\n return await mw.run(intermediate);\n }\n } : mw;\n return createFactoryImpl(factoryToken, composed);\n },\n createMiddleware(fn) {\n return {\n _dependencies: void 0,\n _provides: void 0,\n run: fn\n };\n },\n createMethod(options, run) {\n const obj = z.object(options.args);\n const resultValidator = options.result;\n return {\n _factoryToken: factoryToken,\n _contextRequirement: void 0,\n get TArg() {\n throw new Error(\"Type-only property\");\n },\n get TResult() {\n throw new Error(\"Type-only property\");\n },\n argType: obj,\n resultType: resultValidator ?? z.unknown(),\n run: async (args, rawContext) => {\n const parsedArgs = obj.parse(args ?? {});\n let ctx;\n const baseCtx = middleware ? await middleware.run(rawContext) : rawContext;\n if (options.middleware) {\n ctx = await options.middleware.run(baseCtx);\n } else {\n ctx = baseCtx;\n }\n const result = await run(parsedArgs, ctx);\n if (resultValidator) {\n return resultValidator.parse(result);\n }\n return result;\n }\n };\n },\n createApi(methods) {\n for (const [name, method] of Object.entries(methods)) {\n if (method instanceof ApiImplementation) {\n if (method._factoryToken !== factoryToken) {\n throw new Error(\n `Method \"${name}\" is from a different factory. All methods in an API must come from the same factory or its .withMiddleware() derivatives.`\n );\n }\n } else {\n const m = method;\n if (m._factoryToken !== factoryToken) {\n throw new Error(\n `Method \"${name}\" is from a different factory. All methods in an API must come from the same factory or its .withMiddleware() derivatives.`\n );\n }\n }\n }\n return new ApiImplementation(factoryToken, methods);\n }\n };\n return factory;\n}\nvar ApiImplementation = class _ApiImplementation {\n constructor(factoryToken, _methods) {\n this._methods = _methods;\n this._factoryToken = factoryToken;\n }\n _factoryToken;\n get TMethods() {\n throw new Error(\"Type-only property\");\n }\n getMethods() {\n const methods = [];\n for (const [name, method] of Object.entries(this._methods)) {\n if (method instanceof _ApiImplementation) {\n const subMethods = method.getMethods();\n for (const subMethod of subMethods) {\n methods.push({\n ...subMethod,\n path: `${name}/${subMethod.path}`\n });\n }\n } else {\n methods.push({\n path: name,\n argType: method.argType,\n resultType: method.resultType\n });\n }\n }\n return methods;\n }\n async run(method, arg, context) {\n const parts = method.split(\"/\", 2);\n const firstPart = parts[0];\n if (!(firstPart in this._methods)) {\n return Promise.reject(new Error(`Method not found: ${method}`));\n }\n const impl = this._methods[firstPart];\n if (parts.length > 1) {\n if (!(impl instanceof _ApiImplementation)) {\n throw new Error(`Method not found: ${method}`);\n }\n return impl.run(parts[1], arg, context);\n } else {\n if (impl instanceof _ApiImplementation) {\n throw new Error(`Method not found: ${method}`);\n }\n const result = await impl.run(arg, context);\n return result ?? null;\n }\n }\n};\n\nexport {\n createApiFactory,\n ApiImplementation\n};\n//# sourceMappingURL=chunk-3R7GHWBM.mjs.map"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
var ProxyApiClient = class {
|
|
2
|
+
constructor(_request) {
|
|
3
|
+
this._request = _request;
|
|
4
|
+
}
|
|
5
|
+
_createProxy(prefix) {
|
|
6
|
+
return new Proxy(() => {
|
|
7
|
+
}, {
|
|
8
|
+
apply: async (_target, _self, args) => {
|
|
9
|
+
const result = await this._request(prefix, args[0]);
|
|
10
|
+
return result;
|
|
11
|
+
},
|
|
12
|
+
get: (_target, prop) => {
|
|
13
|
+
if (typeof prop === "symbol") {
|
|
14
|
+
return void 0;
|
|
15
|
+
}
|
|
16
|
+
if (prop === "then" || prop === "catch" || prop === "finally" || prop === "toString" || prop === "valueOf" || prop === "toJSON" || prop === "name" || prop === "length" || prop === "prototype" || prop === "constructor" || prop === "caller" || prop === "arguments") {
|
|
17
|
+
return void 0;
|
|
18
|
+
}
|
|
19
|
+
return this._createProxy(`${prefix}${prefix ? "/" : ""}${prop}`);
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
methods = this._createProxy("");
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
export { ProxyApiClient };
|
|
27
|
+
//# sourceMappingURL=chunk-Q24JOMNK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunk-Q24JOMNK.js","sources":["../../../../../simple-api/dist/chunk-Q24JOMNK.mjs"],"sourcesContent":["import {\n AsyncStream\n} from \"./chunk-SGBCNXYH.mjs\";\n\n// src/client.ts\nvar ApiError = class extends Error {\n constructor(statusCode, method, message) {\n super(message);\n this.statusCode = statusCode;\n this.method = method;\n this.name = \"ApiError\";\n }\n};\nvar ProxyApiClient = class {\n constructor(_request) {\n this._request = _request;\n }\n _createProxy(prefix) {\n return new Proxy(() => {\n }, {\n apply: async (_target, _self, args) => {\n const result = await this._request(prefix, args[0]);\n return result;\n },\n get: (_target, prop) => {\n if (typeof prop === \"symbol\") {\n return void 0;\n }\n if (prop === \"then\" || prop === \"catch\" || prop === \"finally\" || prop === \"toString\" || prop === \"valueOf\" || prop === \"toJSON\" || prop === \"name\" || prop === \"length\" || prop === \"prototype\" || prop === \"constructor\" || prop === \"caller\" || prop === \"arguments\") {\n return void 0;\n }\n return this._createProxy(`${prefix}${prefix ? \"/\" : \"\"}${prop}`);\n }\n });\n }\n methods = this._createProxy(\"\");\n};\nfunction createFetchClient(baseUrl, options) {\n return new ProxyApiClient(async (method, arg) => {\n const result = await fetch(`${baseUrl}/${method}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...options?.getHeaders?.()\n },\n body: JSON.stringify(arg)\n });\n if (result.status !== 200) {\n const data2 = await result.json().catch(() => null);\n let message;\n if (data2 && typeof data2 === \"object\" && \"errorMessage\" in data2) {\n message = `${data2.errorMessage}`;\n } else {\n message = `Error calling API method ${method}: ${JSON.stringify(data2)} (Status: ${result.status}, Status Text: ${result.statusText})`;\n }\n const error = new ApiError(result.status, method, message);\n options?.onError?.(error);\n throw error;\n }\n const contentType = result.headers.get(\"Content-Type\");\n if (contentType?.startsWith(\"application/jsonl\")) {\n return AsyncStream.fromFn(async function* () {\n const reader = result.body?.getReader();\n if (!reader) {\n return;\n }\n let buffer = \"\";\n const decoder = new TextDecoder(\"utf-8\");\n while (true) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n buffer += decoder.decode(value, { stream: true });\n let eolIndex;\n while ((eolIndex = buffer.indexOf(\"\\n\")) >= 0) {\n const line = buffer.slice(0, eolIndex).trim();\n buffer = buffer.slice(eolIndex + 1);\n if (line.length > 0) {\n yield JSON.parse(line);\n }\n }\n }\n const finalLine = buffer.trim();\n if (finalLine.length > 0) {\n yield JSON.parse(finalLine);\n }\n });\n }\n const data = await result.json();\n return data;\n });\n}\nfunction createLocalClient(api, context) {\n return new ProxyApiClient(async (method, args) => {\n return await api.run(method, args, context);\n });\n}\n\nexport {\n ApiError,\n ProxyApiClient,\n createFetchClient,\n createLocalClient\n};\n//# sourceMappingURL=chunk-Q24JOMNK.mjs.map"],"names":[],"mappings":"AAaG,IAAC,cAAc,GAAG,MAAM;AAC3B,EAAE,WAAW,CAAC,QAAQ,EAAE;AACxB,IAAI,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAC5B,EAAE;AACF,EAAE,YAAY,CAAC,MAAM,EAAE;AACvB,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM;AAC3B,IAAI,CAAC,EAAE;AACP,MAAM,KAAK,EAAE,OAAO,OAAO,EAAE,KAAK,EAAE,IAAI,KAAK;AAC7C,QAAQ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AAC3D,QAAQ,OAAO,MAAM;AACrB,MAAM,CAAC;AACP,MAAM,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,KAAK;AAC9B,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AACtC,UAAU,OAAO,MAAM;AACvB,QAAQ;AACR,QAAQ,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,WAAW,EAAE;AAChR,UAAU,OAAO,MAAM;AACvB,QAAQ;AACR,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AACxE,MAAM;AACN,KAAK,CAAC;AACN,EAAE;AACF,EAAE,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;AACjC;;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// src/AsyncStream.ts
|
|
2
|
+
var AsyncStream = class _AsyncStream {
|
|
3
|
+
constructor(iterator) {
|
|
4
|
+
this.iterator = iterator;
|
|
5
|
+
}
|
|
6
|
+
static fromIterable(fn) {
|
|
7
|
+
return new _AsyncStream(fn[Symbol.asyncIterator]());
|
|
8
|
+
}
|
|
9
|
+
static fromFn(fn) {
|
|
10
|
+
return new _AsyncStream(fn());
|
|
11
|
+
}
|
|
12
|
+
[Symbol.asyncIterator]() {
|
|
13
|
+
return this.iterator;
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
var MediaResponse = class {
|
|
17
|
+
constructor(mimeType, data) {
|
|
18
|
+
this.mimeType = mimeType;
|
|
19
|
+
this.data = data;
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export { AsyncStream, MediaResponse };
|
|
24
|
+
//# sourceMappingURL=chunk-SGBCNXYH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunk-SGBCNXYH.js","sources":["../../../../../simple-api/dist/chunk-SGBCNXYH.mjs"],"sourcesContent":["// src/AsyncStream.ts\nvar AsyncStream = class _AsyncStream {\n constructor(iterator) {\n this.iterator = iterator;\n }\n static fromIterable(fn) {\n return new _AsyncStream(fn[Symbol.asyncIterator]());\n }\n static fromFn(fn) {\n return new _AsyncStream(fn());\n }\n [Symbol.asyncIterator]() {\n return this.iterator;\n }\n};\nvar MediaResponse = class {\n constructor(mimeType, data) {\n this.mimeType = mimeType;\n this.data = data;\n }\n};\n\nexport {\n AsyncStream,\n MediaResponse\n};\n//# sourceMappingURL=chunk-SGBCNXYH.mjs.map"],"names":[],"mappings":"AAAA;AACG,IAAC,WAAW,GAAG,MAAM,YAAY,CAAC;AACrC,EAAE,WAAW,CAAC,QAAQ,EAAE;AACxB,IAAI,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAC5B,EAAE;AACF,EAAE,OAAO,YAAY,CAAC,EAAE,EAAE;AAC1B,IAAI,OAAO,IAAI,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;AACvD,EAAE;AACF,EAAE,OAAO,MAAM,CAAC,EAAE,EAAE;AACpB,IAAI,OAAO,IAAI,YAAY,CAAC,EAAE,EAAE,CAAC;AACjC,EAAE;AACF,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG;AAC3B,IAAI,OAAO,IAAI,CAAC,QAAQ;AACxB,EAAE;AACF;AACG,IAAC,aAAa,GAAG,MAAM;AAC1B,EAAE,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE;AAC9B,IAAI,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAC5B,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI;AACpB,EAAE;AACF;;;;"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import 'zod';
|
|
2
|
+
import { MediaResponse, AsyncStream } from './chunk-SGBCNXYH.js';
|
|
3
|
+
import { Router, json } from 'express';
|
|
4
|
+
|
|
5
|
+
function createApiRouter(api, options) {
|
|
6
|
+
const router = Router();
|
|
7
|
+
router.use((req, res, next) => {
|
|
8
|
+
res.header("Access-Control-Allow-Origin", "*");
|
|
9
|
+
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Authorization");
|
|
10
|
+
res.header("Access-Control-Allow-Methods", "POST, OPTIONS");
|
|
11
|
+
if (req.method === "OPTIONS") {
|
|
12
|
+
res.sendStatus(200);
|
|
13
|
+
} else {
|
|
14
|
+
next();
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
router.use(json());
|
|
18
|
+
async function invokeApi(api2, method, args, req, res) {
|
|
19
|
+
const context = options?.contextFactory ? options.contextFactory(req) : { request: req };
|
|
20
|
+
try {
|
|
21
|
+
const result = await api2.run(method, args, context);
|
|
22
|
+
if (result instanceof MediaResponse) {
|
|
23
|
+
if (result.mimeType.startsWith("audio/") || result.mimeType.startsWith("video/")) {
|
|
24
|
+
const range = req.headers.range;
|
|
25
|
+
const fileSize = result.data.byteLength;
|
|
26
|
+
if (range) {
|
|
27
|
+
const parts = range.replace(/bytes=/, "").split("-");
|
|
28
|
+
const start = parseInt(parts[0], 10);
|
|
29
|
+
const end = parts[1] ? parseInt(parts[1], 10) : fileSize - 1;
|
|
30
|
+
if (start >= fileSize || end >= fileSize || start > end) {
|
|
31
|
+
res.status(416).send("Requested range not satisfiable");
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
const chunkSize = end - start + 1;
|
|
35
|
+
const chunk = result.data.slice(start, end + 1);
|
|
36
|
+
res.writeHead(206, {
|
|
37
|
+
"Content-Range": `bytes ${start}-${end}/${fileSize}`,
|
|
38
|
+
"Accept-Ranges": "bytes",
|
|
39
|
+
"Content-Length": chunkSize,
|
|
40
|
+
"Content-Type": result.mimeType
|
|
41
|
+
});
|
|
42
|
+
res.end(chunk);
|
|
43
|
+
} else {
|
|
44
|
+
res.writeHead(200, {
|
|
45
|
+
"Content-Type": result.mimeType,
|
|
46
|
+
"Content-Length": fileSize,
|
|
47
|
+
"Accept-Ranges": "bytes"
|
|
48
|
+
});
|
|
49
|
+
res.end(result.data);
|
|
50
|
+
}
|
|
51
|
+
} else {
|
|
52
|
+
res.writeHead(200, {
|
|
53
|
+
"Content-Type": result.mimeType,
|
|
54
|
+
"Content-Length": result.data.byteLength
|
|
55
|
+
});
|
|
56
|
+
res.end(result.data);
|
|
57
|
+
}
|
|
58
|
+
} else if (result instanceof AsyncStream) {
|
|
59
|
+
res.writeHead(200, {
|
|
60
|
+
"Content-Type": "application/jsonl; charset=utf-8",
|
|
61
|
+
"Transfer-Encoding": "chunked",
|
|
62
|
+
Connection: "keep-alive"
|
|
63
|
+
});
|
|
64
|
+
const iterator = result[Symbol.asyncIterator]();
|
|
65
|
+
res.on("close", () => {
|
|
66
|
+
iterator.return?.();
|
|
67
|
+
});
|
|
68
|
+
try {
|
|
69
|
+
while (true) {
|
|
70
|
+
const { value, done } = await iterator.next();
|
|
71
|
+
if (done) {
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
res.write(JSON.stringify(value) + "\n");
|
|
75
|
+
}
|
|
76
|
+
} catch (e) {
|
|
77
|
+
console.error("Error while streaming response:", e);
|
|
78
|
+
res.write(JSON.stringify({ error: e.message }) + "\n");
|
|
79
|
+
}
|
|
80
|
+
res.end();
|
|
81
|
+
} else {
|
|
82
|
+
res.json(result);
|
|
83
|
+
}
|
|
84
|
+
} catch (e) {
|
|
85
|
+
res.status(500).json({ error: e.message });
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
router.post("/{*method}", async (req, res) => {
|
|
89
|
+
const method = req.params.method.join("/");
|
|
90
|
+
const arg = req.body;
|
|
91
|
+
await invokeApi(api, method, arg, req, res);
|
|
92
|
+
});
|
|
93
|
+
router.get("/{*method}", async (req, res) => {
|
|
94
|
+
const m = req.params.method;
|
|
95
|
+
m[m.length - 1] = "get" + m[m.length - 1];
|
|
96
|
+
const method = m.join("/");
|
|
97
|
+
const arg = req.query ?? {};
|
|
98
|
+
await invokeApi(api, method, arg, req, res);
|
|
99
|
+
});
|
|
100
|
+
return router;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export { AsyncStream, MediaResponse, createApiRouter };
|
|
104
|
+
//# sourceMappingURL=express.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"express.js","sources":["../../../../../simple-api/dist/express.mjs"],"sourcesContent":["import {\n ApiImplementation\n} from \"./chunk-3R7GHWBM.mjs\";\nimport {\n AsyncStream,\n MediaResponse\n} from \"./chunk-SGBCNXYH.mjs\";\n\n// src/express.ts\nimport { json, Router } from \"express\";\nfunction createApiRouter(api, options) {\n const router = Router();\n router.use((req, res, next) => {\n res.header(\"Access-Control-Allow-Origin\", \"*\");\n res.header(\"Access-Control-Allow-Headers\", \"Origin, X-Requested-With, Content-Type, Accept, Authorization\");\n res.header(\"Access-Control-Allow-Methods\", \"POST, OPTIONS\");\n if (req.method === \"OPTIONS\") {\n res.sendStatus(200);\n } else {\n next();\n }\n });\n router.use(json());\n async function invokeApi(api2, method, args, req, res) {\n const context = options?.contextFactory ? options.contextFactory(req) : { request: req };\n try {\n const result = await api2.run(method, args, context);\n if (result instanceof MediaResponse) {\n if (result.mimeType.startsWith(\"audio/\") || result.mimeType.startsWith(\"video/\")) {\n const range = req.headers.range;\n const fileSize = result.data.byteLength;\n if (range) {\n const parts = range.replace(/bytes=/, \"\").split(\"-\");\n const start = parseInt(parts[0], 10);\n const end = parts[1] ? parseInt(parts[1], 10) : fileSize - 1;\n if (start >= fileSize || end >= fileSize || start > end) {\n res.status(416).send(\"Requested range not satisfiable\");\n return;\n }\n const chunkSize = end - start + 1;\n const chunk = result.data.slice(start, end + 1);\n res.writeHead(206, {\n \"Content-Range\": `bytes ${start}-${end}/${fileSize}`,\n \"Accept-Ranges\": \"bytes\",\n \"Content-Length\": chunkSize,\n \"Content-Type\": result.mimeType\n });\n res.end(chunk);\n } else {\n res.writeHead(200, {\n \"Content-Type\": result.mimeType,\n \"Content-Length\": fileSize,\n \"Accept-Ranges\": \"bytes\"\n });\n res.end(result.data);\n }\n } else {\n res.writeHead(200, {\n \"Content-Type\": result.mimeType,\n \"Content-Length\": result.data.byteLength\n });\n res.end(result.data);\n }\n } else if (result instanceof AsyncStream) {\n res.writeHead(200, {\n \"Content-Type\": \"application/jsonl; charset=utf-8\",\n \"Transfer-Encoding\": \"chunked\",\n Connection: \"keep-alive\"\n });\n const iterator = result[Symbol.asyncIterator]();\n res.on(\"close\", () => {\n iterator.return?.();\n });\n try {\n while (true) {\n const { value, done } = await iterator.next();\n if (done) {\n break;\n }\n res.write(JSON.stringify(value) + \"\\n\");\n }\n } catch (e) {\n console.error(\"Error while streaming response:\", e);\n res.write(JSON.stringify({ error: e.message }) + \"\\n\");\n }\n res.end();\n } else {\n res.json(result);\n }\n } catch (e) {\n res.status(500).json({ error: e.message });\n }\n }\n router.post(\"/{*method}\", async (req, res) => {\n const method = req.params.method.join(\"/\");\n const arg = req.body;\n await invokeApi(api, method, arg, req, res);\n });\n router.get(\"/{*method}\", async (req, res) => {\n const m = req.params.method;\n m[m.length - 1] = \"get\" + m[m.length - 1];\n const method = m.join(\"/\");\n const arg = req.query ?? {};\n await invokeApi(api, method, arg, req, res);\n });\n return router;\n}\nexport {\n ApiImplementation,\n AsyncStream,\n MediaResponse,\n createApiRouter\n};\n//# sourceMappingURL=express.mjs.map"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ViteProjectRef } from './viteProjectRef.js';
|
|
2
|
+
export type ResolvedProject = {
|
|
3
|
+
readonly kind: 'directory';
|
|
4
|
+
readonly projectDir: string;
|
|
5
|
+
} | {
|
|
6
|
+
readonly kind: 'viteConfig';
|
|
7
|
+
readonly projectDir: string;
|
|
8
|
+
readonly viteConfigPath: string;
|
|
9
|
+
} | {
|
|
10
|
+
readonly kind: 'explorerConfig';
|
|
11
|
+
readonly projectDir: string;
|
|
12
|
+
readonly configPath: string;
|
|
13
|
+
readonly config: ExplorerConfigFile;
|
|
14
|
+
};
|
|
15
|
+
export interface ExplorerConfigFile {
|
|
16
|
+
readonly viteConfig?: string;
|
|
17
|
+
readonly screenshotDir?: string;
|
|
18
|
+
}
|
|
19
|
+
export declare function resolveProject(projectPath: string): Promise<ResolvedProject>;
|
|
20
|
+
export declare function resolvedProjectToViteProjectRef(project: ResolvedProject): ViteProjectRef;
|
|
21
|
+
//# sourceMappingURL=resolveProject.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveProject.d.ts","sourceRoot":"","sources":["../src/resolveProject.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,MAAM,eAAe,GACxB;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAC7F;IAAE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,CAAC;AAEtI,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CAChC;AAID,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAqBlF;AAED,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,eAAe,GAAG,cAAc,CAexF"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import * as fs from 'node:fs';
|
|
2
|
+
import * as path from 'node:path';
|
|
3
|
+
import { ViteProjectRef } from './viteProjectRef.js';
|
|
4
|
+
|
|
5
|
+
const _viteConfigExtensions = new Set(['.ts', '.js', '.mts', '.mjs']);
|
|
6
|
+
async function resolveProject(projectPath) {
|
|
7
|
+
const absPath = path.resolve(projectPath);
|
|
8
|
+
const stat = await fs.promises.stat(absPath);
|
|
9
|
+
if (stat.isDirectory()) {
|
|
10
|
+
return { kind: 'directory', projectDir: absPath };
|
|
11
|
+
}
|
|
12
|
+
const ext = path.extname(absPath).toLowerCase();
|
|
13
|
+
const dir = path.dirname(absPath);
|
|
14
|
+
if (ext === '.json') {
|
|
15
|
+
const raw = JSON.parse(await fs.promises.readFile(absPath, 'utf-8'));
|
|
16
|
+
return { kind: 'explorerConfig', projectDir: dir, configPath: absPath, config: raw };
|
|
17
|
+
}
|
|
18
|
+
if (_viteConfigExtensions.has(ext)) {
|
|
19
|
+
return { kind: 'viteConfig', projectDir: dir, viteConfigPath: absPath };
|
|
20
|
+
}
|
|
21
|
+
return { kind: 'viteConfig', projectDir: dir, viteConfigPath: absPath };
|
|
22
|
+
}
|
|
23
|
+
function resolvedProjectToViteProjectRef(project) {
|
|
24
|
+
switch (project.kind) {
|
|
25
|
+
case 'directory':
|
|
26
|
+
return ViteProjectRef.fromSourceRootDir(project.projectDir);
|
|
27
|
+
case 'viteConfig':
|
|
28
|
+
return ViteProjectRef.fromViteConfigPath(project.viteConfigPath);
|
|
29
|
+
case 'explorerConfig': {
|
|
30
|
+
if (project.config.viteConfig) {
|
|
31
|
+
return ViteProjectRef.fromViteConfigPath(path.resolve(project.projectDir, project.config.viteConfig));
|
|
32
|
+
}
|
|
33
|
+
return ViteProjectRef.fromSourceRootDir(project.projectDir);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export { resolveProject, resolvedProjectToViteProjectRef };
|
|
39
|
+
//# sourceMappingURL=resolveProject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveProject.js","sources":["../src/resolveProject.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAcA,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9D,eAAe,cAAc,CAAC,WAAmB,EAAA;IACvD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;IACzC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;AAE5C,IAAA,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;QACvB,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE;IAClD;IAEA,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE;IAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;AAEjC,IAAA,IAAI,GAAG,KAAK,OAAO,EAAE;AACpB,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACpE,QAAA,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE;IACrF;AAEA,IAAA,IAAI,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACnC,QAAA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,EAAE,cAAc,EAAE,OAAO,EAAE;IACxE;AAEA,IAAA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,EAAE,cAAc,EAAE,OAAO,EAAE;AACxE;AAEM,SAAU,+BAA+B,CAAC,OAAwB,EAAA;AACvE,IAAA,QAAQ,OAAO,CAAC,IAAI;AACnB,QAAA,KAAK,WAAW;YACf,OAAO,cAAc,CAAC,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC;AAC5D,QAAA,KAAK,YAAY;YAChB,OAAO,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC,cAAc,CAAC;QACjE,KAAK,gBAAgB,EAAE;AACtB,YAAA,IAAI,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE;AAC9B,gBAAA,OAAO,cAAc,CAAC,kBAAkB,CACvC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAC3D;YACF;YACA,OAAO,cAAc,CAAC,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC;QAC5D;;AAEF;;;;"}
|
package/dist/utils.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The default route path for the Component Explorer.
|
|
3
|
+
* Must match the default in vite-plugin.
|
|
4
|
+
*/
|
|
5
|
+
export declare const EXPLORER_ROUTE = "/___explorer";
|
|
6
|
+
export interface ExplorerUrlOptions {
|
|
7
|
+
/** Base URL of the server (e.g. 'http://localhost:5173') */
|
|
8
|
+
readonly baseUrl: string;
|
|
9
|
+
/** Use raw render mode instead of the full Explorer UI */
|
|
10
|
+
readonly rawRender?: boolean;
|
|
11
|
+
/** Specific fixture to render (only relevant in raw render mode) */
|
|
12
|
+
readonly fixtureId?: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Builds a URL for the Component Explorer.
|
|
16
|
+
* - Default: Explorer UI at `/___explorer`
|
|
17
|
+
* - rawRender: `/___explorer?mode=render`
|
|
18
|
+
* - rawRender + fixtureId: `/___explorer?mode=render&fixture=<id>`
|
|
19
|
+
*/
|
|
20
|
+
export declare function buildExplorerUrl(options: ExplorerUrlOptions): string;
|
|
21
|
+
export declare function writeFile(filePath: string, data: Uint8Array): Promise<void>;
|
|
22
|
+
export declare function matchGlob(fixtureId: string, pattern: string): boolean;
|
|
23
|
+
export declare function listPngFiles(dir: string): Promise<string[]>;
|
|
24
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAE7C,MAAM,WAAW,kBAAkB;IAClC,4DAA4D;IAC5D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,0DAA0D;IAC1D,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,oEAAoE;IACpE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CASpE;AAED,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAGjF;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAKrE;AAED,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAajE"}
|
package/dist/utils.js
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import * as fs from 'node:fs/promises';
|
|
2
|
+
import * as path from 'node:path';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* The default route path for the Component Explorer.
|
|
6
|
+
* Must match the default in vite-plugin.
|
|
7
|
+
*/
|
|
8
|
+
const EXPLORER_ROUTE = '/___explorer';
|
|
9
|
+
/**
|
|
10
|
+
* Builds a URL for the Component Explorer.
|
|
11
|
+
* - Default: Explorer UI at `/___explorer`
|
|
12
|
+
* - rawRender: `/___explorer?mode=render`
|
|
13
|
+
* - rawRender + fixtureId: `/___explorer?mode=render&fixture=<id>`
|
|
14
|
+
*/
|
|
15
|
+
function buildExplorerUrl(options) {
|
|
16
|
+
const base = `${options.baseUrl}${EXPLORER_ROUTE}`;
|
|
17
|
+
if (options.rawRender && options.fixtureId) {
|
|
18
|
+
return `${base}?mode=render&fixture=${encodeURIComponent(options.fixtureId)}`;
|
|
19
|
+
}
|
|
20
|
+
if (options.rawRender) {
|
|
21
|
+
return `${base}?mode=render`;
|
|
22
|
+
}
|
|
23
|
+
return base;
|
|
24
|
+
}
|
|
25
|
+
async function writeFile(filePath, data) {
|
|
26
|
+
await fs.mkdir(path.dirname(filePath), { recursive: true });
|
|
27
|
+
await fs.writeFile(filePath, data);
|
|
28
|
+
}
|
|
29
|
+
function matchGlob(fixtureId, pattern) {
|
|
30
|
+
const regex = new RegExp('^' + pattern.replace(/\*/g, '.*').replace(/\?/g, '.') + '$');
|
|
31
|
+
return regex.test(fixtureId);
|
|
32
|
+
}
|
|
33
|
+
async function listPngFiles(dir) {
|
|
34
|
+
try {
|
|
35
|
+
const entries = await fs.readdir(dir, { recursive: true });
|
|
36
|
+
const results = [];
|
|
37
|
+
for (const entry of entries) {
|
|
38
|
+
if (entry.endsWith('.png')) {
|
|
39
|
+
results.push(entry.split(path.sep).join('/'));
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return results;
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
return [];
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export { EXPLORER_ROUTE, buildExplorerUrl, listPngFiles, matchGlob, writeFile };
|
|
50
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../src/utils.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAGA;;;AAGG;AACI,MAAM,cAAc,GAAG;AAW9B;;;;;AAKG;AACG,SAAU,gBAAgB,CAAC,OAA2B,EAAA;IAC3D,MAAM,IAAI,GAAG,CAAA,EAAG,OAAO,CAAC,OAAO,CAAA,EAAG,cAAc,CAAA,CAAE;IAClD,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE;QAC3C,OAAO,CAAA,EAAG,IAAI,CAAA,qBAAA,EAAwB,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA,CAAE;IAC9E;AACA,IAAA,IAAI,OAAO,CAAC,SAAS,EAAE;QACtB,OAAO,CAAA,EAAG,IAAI,CAAA,YAAA,CAAc;IAC7B;AACA,IAAA,OAAO,IAAI;AACZ;AAEO,eAAe,SAAS,CAAC,QAAgB,EAAE,IAAgB,EAAA;AACjE,IAAA,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC3D,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC;AACnC;AAEM,SAAU,SAAS,CAAC,SAAiB,EAAE,OAAe,EAAA;IAC3D,MAAM,KAAK,GAAG,IAAI,MAAM,CACvB,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,GAAG,CAC5D;AACD,IAAA,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;AAC7B;AAEO,eAAe,YAAY,CAAC,GAAW,EAAA;AAC7C,IAAA,IAAI;AACH,QAAA,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAC1D,MAAM,OAAO,GAAa,EAAE;AAC5B,QAAA,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;AAC5B,YAAA,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;AAC3B,gBAAA,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9C;QACD;AACA,QAAA,OAAO,OAAO;IACf;AAAE,IAAA,MAAM;AACP,QAAA,OAAO,EAAE;IACV;AACD;;;;"}
|
package/dist/watchConfig.d.ts
CHANGED
|
@@ -1,5 +1,36 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
1
2
|
import type { IGitRepo } from './git/gitService.js';
|
|
2
3
|
import { ViteProjectRef } from './viteProjectRef.js';
|
|
4
|
+
export declare const watchConfigSchema: z.ZodObject<{
|
|
5
|
+
screenshotDir: z.ZodOptional<z.ZodString>;
|
|
6
|
+
sessions: z.ZodArray<z.ZodObject<{
|
|
7
|
+
name: z.ZodString;
|
|
8
|
+
source: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"current">, z.ZodObject<{
|
|
9
|
+
worktree: z.ZodObject<{
|
|
10
|
+
ref: z.ZodString;
|
|
11
|
+
name: z.ZodOptional<z.ZodString>;
|
|
12
|
+
install: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"auto">, z.ZodLiteral<"npm">, z.ZodLiteral<"pnpm">, z.ZodLiteral<"yarn">, z.ZodObject<{
|
|
13
|
+
command: z.ZodString;
|
|
14
|
+
}, z.core.$strip>, z.ZodLiteral<false>]>>;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
}, z.core.$strip>]>>;
|
|
17
|
+
viteConfig: z.ZodOptional<z.ZodString>;
|
|
18
|
+
}, z.core.$strip>>;
|
|
19
|
+
compare: z.ZodOptional<z.ZodObject<{
|
|
20
|
+
baseline: z.ZodString;
|
|
21
|
+
current: z.ZodString;
|
|
22
|
+
}, z.core.$strip>>;
|
|
23
|
+
viteConfig: z.ZodOptional<z.ZodString>;
|
|
24
|
+
vite: z.ZodOptional<z.ZodObject<{
|
|
25
|
+
hmr: z.ZodOptional<z.ZodObject<{
|
|
26
|
+
allowedPaths: z.ZodArray<z.ZodString>;
|
|
27
|
+
}, z.core.$strip>>;
|
|
28
|
+
}, z.core.$strip>>;
|
|
29
|
+
redirection: z.ZodOptional<z.ZodObject<{
|
|
30
|
+
port: z.ZodNumber;
|
|
31
|
+
host: z.ZodOptional<z.ZodString>;
|
|
32
|
+
}, z.core.$strip>>;
|
|
33
|
+
}, z.core.$strip>;
|
|
3
34
|
export type WorktreeInstallConfig = {
|
|
4
35
|
readonly kind: 'auto';
|
|
5
36
|
} | {
|
|
@@ -37,11 +68,21 @@ export declare class ResolvedCompareConfig {
|
|
|
37
68
|
readonly current: string;
|
|
38
69
|
constructor(baseline: string, current: string);
|
|
39
70
|
}
|
|
71
|
+
export interface ResolvedViteHmrConfig {
|
|
72
|
+
/** Glob patterns for files that keep HMR. Everything else triggers a full reload. */
|
|
73
|
+
readonly allowedPaths: readonly string[];
|
|
74
|
+
}
|
|
75
|
+
export interface ResolvedRedirectionConfig {
|
|
76
|
+
readonly port: number;
|
|
77
|
+
readonly host: string;
|
|
78
|
+
}
|
|
40
79
|
export declare class ResolvedWatchConfig {
|
|
41
80
|
readonly screenshotDir: string;
|
|
42
81
|
readonly sessions: readonly ResolvedSessionConfig[];
|
|
43
82
|
readonly compare: ResolvedCompareConfig | undefined;
|
|
44
83
|
readonly repo: IGitRepo;
|
|
84
|
+
readonly viteHmr: ResolvedViteHmrConfig | undefined;
|
|
85
|
+
readonly redirection: ResolvedRedirectionConfig | undefined;
|
|
45
86
|
private constructor();
|
|
46
87
|
static fromFile(configPath: string): Promise<ResolvedWatchConfig>;
|
|
47
88
|
static fromData(data: unknown, configDir: string, repo: IGitRepo): ResolvedWatchConfig;
|