@vscode/component-explorer-cli 0.1.1-1 → 0.1.1-11

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.
Files changed (131) hide show
  1. package/README.md +177 -0
  2. package/dist/commands/acceptCommand.d.ts +2 -1
  3. package/dist/commands/acceptCommand.d.ts.map +1 -1
  4. package/dist/commands/acceptCommand.js +12 -6
  5. package/dist/commands/acceptCommand.js.map +1 -1
  6. package/dist/commands/compareCommand.d.ts +5 -1
  7. package/dist/commands/compareCommand.d.ts.map +1 -1
  8. package/dist/commands/compareCommand.js +43 -71
  9. package/dist/commands/compareCommand.js.map +1 -1
  10. package/dist/commands/mcpCommand.d.ts +10 -0
  11. package/dist/commands/mcpCommand.d.ts.map +1 -0
  12. package/dist/commands/mcpCommand.js +58 -0
  13. package/dist/commands/mcpCommand.js.map +1 -0
  14. package/dist/commands/screenshotCommand.d.ts +7 -2
  15. package/dist/commands/screenshotCommand.d.ts.map +1 -1
  16. package/dist/commands/screenshotCommand.js +61 -14
  17. package/dist/commands/screenshotCommand.js.map +1 -1
  18. package/dist/commands/serveCommand.d.ts +19 -0
  19. package/dist/commands/serveCommand.d.ts.map +1 -0
  20. package/dist/commands/serveCommand.js +194 -0
  21. package/dist/commands/serveCommand.js.map +1 -0
  22. package/dist/commands/watchCommand.d.ts +1 -2
  23. package/dist/commands/watchCommand.d.ts.map +1 -1
  24. package/dist/commands/watchCommand.js +23 -19
  25. package/dist/commands/watchCommand.js.map +1 -1
  26. package/dist/comparison.d.ts +60 -0
  27. package/dist/comparison.d.ts.map +1 -0
  28. package/dist/comparison.js +250 -0
  29. package/dist/comparison.js.map +1 -0
  30. package/dist/component-explorer-config.schema.json +183 -0
  31. package/dist/componentExplorer.d.ts +44 -2
  32. package/dist/componentExplorer.d.ts.map +1 -1
  33. package/dist/componentExplorer.js +98 -16
  34. package/dist/componentExplorer.js.map +1 -1
  35. package/dist/daemon/DaemonContext.d.ts +4 -0
  36. package/dist/daemon/DaemonContext.d.ts.map +1 -0
  37. package/dist/daemon/DaemonService.d.ts +188 -0
  38. package/dist/daemon/DaemonService.d.ts.map +1 -0
  39. package/dist/daemon/DaemonService.js +610 -0
  40. package/dist/daemon/DaemonService.js.map +1 -0
  41. package/dist/daemon/approvalStore.d.ts +51 -0
  42. package/dist/daemon/approvalStore.d.ts.map +1 -0
  43. package/dist/daemon/approvalStore.js +58 -0
  44. package/dist/daemon/approvalStore.js.map +1 -0
  45. package/dist/daemon/lifecycle.d.ts +13 -0
  46. package/dist/daemon/lifecycle.d.ts.map +1 -0
  47. package/dist/daemon/lifecycle.js +68 -0
  48. package/dist/daemon/lifecycle.js.map +1 -0
  49. package/dist/daemon/pipeClient.d.ts +9 -0
  50. package/dist/daemon/pipeClient.d.ts.map +1 -0
  51. package/dist/daemon/pipeClient.js +111 -0
  52. package/dist/daemon/pipeClient.js.map +1 -0
  53. package/dist/daemon/pipeName.d.ts +2 -0
  54. package/dist/daemon/pipeName.d.ts.map +1 -0
  55. package/dist/daemon/pipeName.js +14 -0
  56. package/dist/daemon/pipeName.js.map +1 -0
  57. package/dist/daemon/pipeServer.d.ts +4 -0
  58. package/dist/daemon/pipeServer.d.ts.map +1 -0
  59. package/dist/daemon/pipeServer.js +25 -0
  60. package/dist/daemon/pipeServer.js.map +1 -0
  61. package/dist/daemon/types.d.ts +12 -0
  62. package/dist/daemon/types.d.ts.map +1 -0
  63. package/dist/dependencyInstaller.js +1 -1
  64. package/dist/dependencyInstaller.js.map +1 -1
  65. package/dist/explorerSession.d.ts +5 -3
  66. package/dist/explorerSession.d.ts.map +1 -1
  67. package/dist/explorerSession.js +6 -3
  68. package/dist/explorerSession.js.map +1 -1
  69. package/dist/external/vscode-observables/observables/dist/disposables.js +24 -1
  70. package/dist/external/vscode-observables/observables/dist/disposables.js.map +1 -1
  71. package/dist/external/vscode-observables/observables/dist/observableInternal/commonFacade/deps.js +1 -4
  72. package/dist/external/vscode-observables/observables/dist/observableInternal/commonFacade/deps.js.map +1 -1
  73. package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js +3 -0
  74. package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js.map +1 -1
  75. package/dist/external/vscode-observables/observables/dist/observableInternal/index.js +2 -5
  76. package/dist/external/vscode-observables/observables/dist/observableInternal/index.js.map +1 -1
  77. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js +30 -6
  78. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js.map +1 -1
  79. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js +1 -1
  80. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js.map +1 -1
  81. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derived.js +12 -1
  82. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derived.js.map +1 -1
  83. package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utilsCancellation.js +55 -0
  84. package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utilsCancellation.js.map +1 -0
  85. package/dist/formatValue.d.ts +2 -0
  86. package/dist/formatValue.d.ts.map +1 -0
  87. package/dist/formatValue.js +96 -0
  88. package/dist/formatValue.js.map +1 -0
  89. package/dist/formatValue.test.d.ts +2 -0
  90. package/dist/formatValue.test.d.ts.map +1 -0
  91. package/dist/git/gitUtils.js +1 -1
  92. package/dist/git/gitUtils.js.map +1 -1
  93. package/dist/httpServer.d.ts +8 -7
  94. package/dist/httpServer.d.ts.map +1 -1
  95. package/dist/httpServer.js +59 -12
  96. package/dist/httpServer.js.map +1 -1
  97. package/dist/index.js +4 -0
  98. package/dist/index.js.map +1 -1
  99. package/dist/mcp/McpServer.d.ts +58 -0
  100. package/dist/mcp/McpServer.d.ts.map +1 -0
  101. package/dist/mcp/McpServer.js +820 -0
  102. package/dist/mcp/McpServer.js.map +1 -0
  103. package/dist/packages/simple-api/dist/chunk-3R7GHWBM.js +137 -0
  104. package/dist/packages/simple-api/dist/chunk-3R7GHWBM.js.map +1 -0
  105. package/dist/packages/simple-api/dist/chunk-Q24JOMNK.js +27 -0
  106. package/dist/packages/simple-api/dist/chunk-Q24JOMNK.js.map +1 -0
  107. package/dist/packages/simple-api/dist/chunk-SGBCNXYH.js +24 -0
  108. package/dist/packages/simple-api/dist/chunk-SGBCNXYH.js.map +1 -0
  109. package/dist/packages/simple-api/dist/express.js +104 -0
  110. package/dist/packages/simple-api/dist/express.js.map +1 -0
  111. package/dist/resolveProject.d.ts +21 -0
  112. package/dist/resolveProject.d.ts.map +1 -0
  113. package/dist/resolveProject.js +39 -0
  114. package/dist/resolveProject.js.map +1 -0
  115. package/dist/utils.d.ts +24 -0
  116. package/dist/utils.d.ts.map +1 -0
  117. package/dist/utils.js +50 -0
  118. package/dist/utils.js.map +1 -0
  119. package/dist/watchConfig.d.ts +41 -0
  120. package/dist/watchConfig.d.ts.map +1 -1
  121. package/dist/watchConfig.js +41 -19
  122. package/dist/watchConfig.js.map +1 -1
  123. package/package.json +16 -6
  124. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/debuggerRpc.js +0 -72
  125. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/debuggerRpc.js.map +0 -1
  126. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/devToolsLogger.js +0 -447
  127. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/devToolsLogger.js.map +0 -1
  128. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/rpc.js +0 -64
  129. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/rpc.js.map +0 -1
  130. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugger/utils.js +0 -52
  131. 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;;;;"}
@@ -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;;;;"}
@@ -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;