@vscode/component-explorer-cli 0.2.1-18 → 0.2.1-180
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 +130 -12
- package/dist/WorktreePool.d.ts +5 -4
- package/dist/WorktreePool.d.ts.map +1 -1
- package/dist/WorktreePool.js +3 -3
- package/dist/WorktreePool.js.map +1 -1
- package/dist/_virtual/_build-info.js +1 -1
- package/dist/browserPage.d.ts +55 -1
- package/dist/browserPage.d.ts.map +1 -1
- package/dist/browserPage.js +103 -7
- package/dist/browserPage.js.map +1 -1
- package/dist/browserPage.test.d.ts +2 -0
- package/dist/browserPage.test.d.ts.map +1 -0
- package/dist/commands/acceptCommand.d.ts +1 -1
- package/dist/commands/acceptCommand.d.ts.map +1 -1
- package/dist/commands/acceptCommand.js +21 -14
- package/dist/commands/acceptCommand.js.map +1 -1
- package/dist/commands/checkStabilityCommand.d.ts +2 -0
- package/dist/commands/checkStabilityCommand.d.ts.map +1 -1
- package/dist/commands/checkStabilityCommand.js +25 -8
- package/dist/commands/checkStabilityCommand.js.map +1 -1
- package/dist/commands/compareCommand.d.ts +1 -1
- package/dist/commands/compareCommand.d.ts.map +1 -1
- package/dist/commands/compareCommand.js +31 -22
- package/dist/commands/compareCommand.js.map +1 -1
- package/dist/commands/inputArg.d.ts +33 -0
- package/dist/commands/inputArg.d.ts.map +1 -0
- package/dist/commands/inputArg.js +103 -0
- package/dist/commands/inputArg.js.map +1 -0
- package/dist/commands/mcpCommand.d.ts.map +1 -1
- package/dist/commands/mcpCommand.js +18 -12
- package/dist/commands/mcpCommand.js.map +1 -1
- package/dist/commands/renderCommand.d.ts +10 -1
- package/dist/commands/renderCommand.d.ts.map +1 -1
- package/dist/commands/renderCommand.js +390 -61
- package/dist/commands/renderCommand.js.map +1 -1
- package/dist/commands/renderCommand.test.d.ts +2 -0
- package/dist/commands/renderCommand.test.d.ts.map +1 -0
- package/dist/commands/serveCommand.d.ts +4 -1
- package/dist/commands/serveCommand.d.ts.map +1 -1
- package/dist/commands/serveCommand.js +105 -36
- package/dist/commands/serveCommand.js.map +1 -1
- package/dist/commands/serviceDiffCommitsCommand.d.ts.map +1 -1
- package/dist/commands/serviceDiffCommitsCommand.js +10 -9
- package/dist/commands/serviceDiffCommitsCommand.js.map +1 -1
- package/dist/commands/watchCommand.d.ts +1 -0
- package/dist/commands/watchCommand.d.ts.map +1 -1
- package/dist/commands/watchCommand.js +31 -20
- package/dist/commands/watchCommand.js.map +1 -1
- package/dist/comparison.d.ts +4 -3
- package/dist/comparison.d.ts.map +1 -1
- package/dist/comparison.js +17 -14
- package/dist/comparison.js.map +1 -1
- package/dist/component-explorer-config.schema.json +55 -2
- package/dist/componentExplorer.d.ts +110 -12
- package/dist/componentExplorer.d.ts.map +1 -1
- package/dist/componentExplorer.js +177 -24
- package/dist/componentExplorer.js.map +1 -1
- package/dist/config.d.ts +33 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +64 -27
- package/dist/config.js.map +1 -1
- package/dist/coverage.d.ts +64 -0
- package/dist/coverage.d.ts.map +1 -0
- package/dist/coverage.js +212 -0
- package/dist/coverage.js.map +1 -0
- package/dist/daemon/DaemonService.d.ts +5 -199
- package/dist/daemon/DaemonService.d.ts.map +1 -1
- package/dist/daemon/DaemonService.js +248 -300
- package/dist/daemon/DaemonService.js.map +1 -1
- package/dist/daemon/approvalStore.d.ts +2 -1
- package/dist/daemon/approvalStore.d.ts.map +1 -1
- package/dist/daemon/approvalStore.js +4 -3
- package/dist/daemon/approvalStore.js.map +1 -1
- package/dist/daemon/client.d.ts +76 -5
- package/dist/daemon/client.d.ts.map +1 -1
- package/dist/daemon/daemonRpc.test.d.ts +2 -0
- package/dist/daemon/daemonRpc.test.d.ts.map +1 -0
- package/dist/daemon/endpointServer.d.ts +4 -0
- package/dist/daemon/endpointServer.d.ts.map +1 -0
- package/dist/daemon/endpointServer.js +24 -0
- package/dist/daemon/endpointServer.js.map +1 -0
- package/dist/daemon/inProcessClient.d.ts +3 -9
- package/dist/daemon/inProcessClient.d.ts.map +1 -1
- package/dist/daemon/inProcessClient.js +29 -30
- package/dist/daemon/inProcessClient.js.map +1 -1
- package/dist/daemon/lifecycle.d.ts +5 -5
- package/dist/daemon/lifecycle.d.ts.map +1 -1
- package/dist/daemon/lifecycle.js +4 -3
- package/dist/daemon/lifecycle.js.map +1 -1
- package/dist/daemon/pipeClient.d.ts +2 -3
- package/dist/daemon/pipeClient.d.ts.map +1 -1
- package/dist/daemon/pipeClient.js +93 -194
- package/dist/daemon/pipeClient.js.map +1 -1
- package/dist/daemon/pipeName.d.ts +3 -3
- package/dist/daemon/pipeName.d.ts.map +1 -1
- package/dist/daemon/pipeName.js +6 -5
- package/dist/daemon/pipeName.js.map +1 -1
- package/dist/daemon/pipeServer.d.ts +2 -2
- package/dist/daemon/pipeServer.d.ts.map +1 -1
- package/dist/daemon/pipeServer.js +79 -70
- package/dist/daemon/pipeServer.js.map +1 -1
- package/dist/daemon/registerDaemonConnection.d.ts +7 -0
- package/dist/daemon/registerDaemonConnection.d.ts.map +1 -0
- package/dist/daemon/registerDaemonConnection.js +37 -0
- package/dist/daemon/registerDaemonConnection.js.map +1 -0
- package/dist/daemon/transports.test.d.ts +2 -0
- package/dist/daemon/transports.test.d.ts.map +1 -0
- package/dist/daemon/types.d.ts +1655 -8
- package/dist/daemon/types.d.ts.map +1 -1
- package/dist/daemon/types.js +4 -0
- package/dist/daemon/types.js.map +1 -0
- package/dist/daemon/version.d.ts +1 -5
- package/dist/daemon/version.d.ts.map +1 -1
- package/dist/daemon/version.js +3 -7
- package/dist/daemon/version.js.map +1 -1
- package/dist/dependencyInstaller.d.ts +2 -1
- package/dist/dependencyInstaller.d.ts.map +1 -1
- package/dist/dependencyInstaller.js +4 -4
- package/dist/dependencyInstaller.js.map +1 -1
- package/dist/explorerSession.d.ts +5 -1
- package/dist/explorerSession.d.ts.map +1 -1
- package/dist/explorerSession.js +24 -7
- package/dist/explorerSession.js.map +1 -1
- package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/inspectionHost-BA6ZmC_P.js +2523 -0
- package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/inspectionHost-BA6ZmC_P.js.map +1 -0
- package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/src-DYVSK_tz.js +1871 -0
- package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/src-DYVSK_tz.js.map +1 -0
- package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/webSocketTransport-Ct4OIdG9.js +220 -0
- package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/webSocketTransport-Ct4OIdG9.js.map +1 -0
- package/dist/external/linkrpc/typescript/packages/linkrpc/dist/node.js +721 -0
- package/dist/external/linkrpc/typescript/packages/linkrpc/dist/node.js.map +1 -0
- package/dist/git/gitCommitResolver.d.ts +2 -1
- package/dist/git/gitCommitResolver.d.ts.map +1 -1
- package/dist/git/gitCommitResolver.js +8 -8
- package/dist/git/gitCommitResolver.js.map +1 -1
- package/dist/git/gitIndexResolver.d.ts +2 -1
- package/dist/git/gitIndexResolver.d.ts.map +1 -1
- package/dist/git/gitIndexResolver.js +7 -7
- package/dist/git/gitIndexResolver.js.map +1 -1
- package/dist/git/gitService.d.ts +5 -4
- package/dist/git/gitService.d.ts.map +1 -1
- package/dist/git/gitService.js.map +1 -1
- package/dist/git/gitUtils.d.ts +6 -5
- package/dist/git/gitUtils.d.ts.map +1 -1
- package/dist/git/gitUtils.js +5 -4
- package/dist/git/gitUtils.js.map +1 -1
- package/dist/git/gitWorktreeManager.d.ts +15 -14
- package/dist/git/gitWorktreeManager.d.ts.map +1 -1
- package/dist/git/gitWorktreeManager.js +10 -11
- package/dist/git/gitWorktreeManager.js.map +1 -1
- package/dist/git/testUtils.d.ts +2 -1
- package/dist/git/testUtils.d.ts.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +10 -1
- package/dist/index.js.map +1 -1
- package/dist/js-component-explorer/packages/common/dist/daemonRpc.js +165 -0
- package/dist/js-component-explorer/packages/common/dist/daemonRpc.js.map +1 -0
- package/dist/js-component-explorer/packages/common/dist/explorerUrl.js +21 -0
- package/dist/js-component-explorer/packages/common/dist/explorerUrl.js.map +1 -0
- package/dist/js-component-explorer/packages/common/dist/renderManifest.js +68 -0
- package/dist/js-component-explorer/packages/common/dist/renderManifest.js.map +1 -0
- package/dist/js-component-explorer/packages/semver/dist/index.js.map +1 -0
- package/dist/manifest.schema.json +44 -16
- package/dist/mcp/DaemonAccessor.d.ts +2 -3
- package/dist/mcp/DaemonAccessor.d.ts.map +1 -1
- package/dist/mcp/McpServer.d.ts +1 -1
- package/dist/mcp/McpServer.d.ts.map +1 -1
- package/dist/mcp/McpServer.js +252 -159
- package/dist/mcp/McpServer.js.map +1 -1
- package/dist/path.d.ts +30 -0
- package/dist/path.d.ts.map +1 -0
- package/dist/path.js +78 -0
- package/dist/path.js.map +1 -0
- package/dist/processTree.d.ts +6 -1
- package/dist/processTree.d.ts.map +1 -1
- package/dist/processTree.js +48 -5
- package/dist/processTree.js.map +1 -1
- package/dist/renderManifest.d.ts +70 -5
- package/dist/renderManifest.js +1 -1
- package/dist/server/httpServer.d.ts +1 -1
- package/dist/server/httpServer.d.ts.map +1 -1
- package/dist/server/httpServer.js +4 -8
- package/dist/server/httpServer.js.map +1 -1
- package/dist/server/serverConfig.d.ts +23 -8
- package/dist/server/serverConfig.d.ts.map +1 -1
- package/dist/server/serverConfig.js +11 -18
- package/dist/server/serverConfig.js.map +1 -1
- package/dist/server/viteServer.d.ts +16 -3
- package/dist/server/viteServer.d.ts.map +1 -1
- package/dist/server/viteServer.js +86 -5
- package/dist/server/viteServer.js.map +1 -1
- package/dist/storage.d.ts +2 -1
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +1 -1
- package/dist/storage.js.map +1 -1
- package/dist/utils.d.ts +3 -30
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +4 -24
- package/dist/utils.js.map +1 -1
- package/dist/visualCache.d.ts +2 -1
- package/dist/visualCache.d.ts.map +1 -1
- package/dist/visualCache.js +4 -3
- package/dist/visualCache.js.map +1 -1
- package/dist/viteProjectRef.d.ts +4 -12
- package/dist/viteProjectRef.d.ts.map +1 -1
- package/dist/viteProjectRef.js +9 -17
- package/dist/viteProjectRef.js.map +1 -1
- package/dist/vscode-observables/observables/dist/disposables.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/base.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/commonFacade/deps.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/debugLocation.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/debugName.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/index.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js.map +1 -0
- package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/logging/debugGetDependencyGraph.js +1 -1
- package/dist/vscode-observables/observables/dist/observableInternal/logging/debugGetDependencyGraph.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/logging/logging.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/observables/derived.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/observables/derivedImpl.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/observables/observableValue.js.map +1 -0
- package/dist/{external/vscode-observables/observables/dist/observableInternal/reactions/autorun.js → vscode-observables/observables/dist/observableInternal/reactions/createEffect.js} +9 -5
- package/dist/vscode-observables/observables/dist/observableInternal/reactions/createEffect.js.map +1 -0
- package/dist/{external/vscode-observables/observables/dist/observableInternal/reactions/autorunImpl.js → vscode-observables/observables/dist/observableInternal/reactions/createEffectImpl.js} +1 -1
- package/dist/vscode-observables/observables/dist/observableInternal/reactions/createEffectImpl.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/transaction.js.map +1 -0
- package/dist/vscode-observables/observables/dist/observableInternal/utils/utils.js.map +1 -0
- package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/utils/utilsCancellation.js +2 -2
- package/dist/vscode-observables/observables/dist/observableInternal/utils/utilsCancellation.js.map +1 -0
- package/package.json +18 -15
- package/dist/commands/artifactCommand.d.ts +0 -14
- package/dist/commands/artifactCommand.d.ts.map +0 -1
- package/dist/external/vscode-observables/observables/dist/disposables.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/base.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/commonFacade/deps.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/debugName.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/index.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugGetDependencyGraph.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/logging/logging.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derived.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derivedImpl.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/observables/observableValue.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/reactions/autorun.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/reactions/autorunImpl.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/transaction.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utils.js.map +0 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utilsCancellation.js.map +0 -1
- package/dist/formatValue.js +0 -96
- package/dist/formatValue.js.map +0 -1
- package/dist/packages/common/dist/renderManifest.js +0 -46
- package/dist/packages/common/dist/renderManifest.js.map +0 -1
- package/dist/packages/semver/dist/index.js.map +0 -1
- package/dist/packages/simple-api/dist/chunk-FJ7AVNQE.js +0 -138
- package/dist/packages/simple-api/dist/chunk-FJ7AVNQE.js.map +0 -1
- package/dist/packages/simple-api/dist/chunk-TTRCY65Z.js +0 -27
- package/dist/packages/simple-api/dist/chunk-TTRCY65Z.js.map +0 -1
- package/dist/packages/simple-api/dist/chunk-WNXMRXWV.js +0 -28
- package/dist/packages/simple-api/dist/chunk-WNXMRXWV.js.map +0 -1
- package/dist/packages/simple-api/dist/express.js +0 -104
- package/dist/packages/simple-api/dist/express.js.map +0 -1
- /package/dist/{packages → js-component-explorer/packages}/semver/dist/index.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/disposables.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/base.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/commonFacade/deps.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/debugLocation.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/debugName.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/index.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/logging/consoleObservableLogger.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/logging/logging.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/observables/baseObservable.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/observables/derived.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/observables/derivedImpl.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/observables/observableFromEvent.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/observables/observableValue.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/transaction.js +0 -0
- /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/utils/utils.js +0 -0
package/dist/formatValue.js
DELETED
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
function formatValue(value, maxLength = 100) {
|
|
2
|
-
return truncate(formatInner(value), maxLength);
|
|
3
|
-
}
|
|
4
|
-
function formatInner(value) {
|
|
5
|
-
if (value === null) {
|
|
6
|
-
return 'null';
|
|
7
|
-
}
|
|
8
|
-
if (value === undefined) {
|
|
9
|
-
return 'undefined';
|
|
10
|
-
}
|
|
11
|
-
switch (typeof value) {
|
|
12
|
-
case 'string':
|
|
13
|
-
return JSON.stringify(value);
|
|
14
|
-
case 'number':
|
|
15
|
-
case 'boolean':
|
|
16
|
-
return String(value);
|
|
17
|
-
}
|
|
18
|
-
if (Array.isArray(value)) {
|
|
19
|
-
if (value.length === 0) {
|
|
20
|
-
return '[]';
|
|
21
|
-
}
|
|
22
|
-
const items = value.map(formatInner);
|
|
23
|
-
const joined = `[${items.join(', ')}]`;
|
|
24
|
-
return joined;
|
|
25
|
-
}
|
|
26
|
-
if (typeof value === 'object') {
|
|
27
|
-
const entries = Object.entries(value);
|
|
28
|
-
if (entries.length === 0) {
|
|
29
|
-
return '{}';
|
|
30
|
-
}
|
|
31
|
-
const parts = entries.map(([k, v]) => `${k}: ${formatInner(v)}`);
|
|
32
|
-
return `{${parts.join(', ')}}`;
|
|
33
|
-
}
|
|
34
|
-
return String(value);
|
|
35
|
-
}
|
|
36
|
-
function truncate(str, maxLength) {
|
|
37
|
-
if (str.length <= maxLength) {
|
|
38
|
-
return str;
|
|
39
|
-
}
|
|
40
|
-
// Try to find the outermost container type for a smart summary suffix
|
|
41
|
-
const suffix = summarySuffix(str);
|
|
42
|
-
const available = maxLength - suffix.length - 1; // 1 for ellipsis char
|
|
43
|
-
if (available <= 0) {
|
|
44
|
-
return str.slice(0, maxLength - 1) + '…';
|
|
45
|
-
}
|
|
46
|
-
return str.slice(0, available) + '…' + suffix;
|
|
47
|
-
}
|
|
48
|
-
function summarySuffix(str) {
|
|
49
|
-
if (str.startsWith('[')) {
|
|
50
|
-
const count = countTopLevelCommas(str, '[', ']') + 1;
|
|
51
|
-
return ` (${count} items)`;
|
|
52
|
-
}
|
|
53
|
-
if (str.startsWith('{')) {
|
|
54
|
-
const count = countTopLevelCommas(str, '{', '}') + 1;
|
|
55
|
-
return ` (${count} keys)`;
|
|
56
|
-
}
|
|
57
|
-
if (str.startsWith('"')) {
|
|
58
|
-
return ` (${str.length - 2} chars)`;
|
|
59
|
-
}
|
|
60
|
-
return '';
|
|
61
|
-
}
|
|
62
|
-
function countTopLevelCommas(str, open, close) {
|
|
63
|
-
let depth = 0;
|
|
64
|
-
let count = 0;
|
|
65
|
-
let inString = false;
|
|
66
|
-
for (let i = 0; i < str.length; i++) {
|
|
67
|
-
const ch = str[i];
|
|
68
|
-
if (inString) {
|
|
69
|
-
if (ch === '\\') {
|
|
70
|
-
i++;
|
|
71
|
-
continue;
|
|
72
|
-
}
|
|
73
|
-
if (ch === '"') {
|
|
74
|
-
inString = false;
|
|
75
|
-
}
|
|
76
|
-
continue;
|
|
77
|
-
}
|
|
78
|
-
if (ch === '"') {
|
|
79
|
-
inString = true;
|
|
80
|
-
continue;
|
|
81
|
-
}
|
|
82
|
-
if (ch === open || ch === '[' || ch === '{') {
|
|
83
|
-
depth++;
|
|
84
|
-
}
|
|
85
|
-
else if (ch === close || ch === ']' || ch === '}') {
|
|
86
|
-
depth--;
|
|
87
|
-
}
|
|
88
|
-
else if (ch === ',' && depth === 1) {
|
|
89
|
-
count++;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return count;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
export { formatValue };
|
|
96
|
-
//# sourceMappingURL=formatValue.js.map
|
package/dist/formatValue.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"formatValue.js","sources":["../src/formatValue.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
|
|
3
|
-
const renderEventSchema = z.object({
|
|
4
|
-
type: z.enum(['console.error', 'console.warn', 'console.log', 'window.error', 'window.unhandledrejection']),
|
|
5
|
-
message: z.string(),
|
|
6
|
-
});
|
|
7
|
-
const exceptionErrorSchema = z.object({
|
|
8
|
-
message: z.string(),
|
|
9
|
-
stack: z.string().optional(),
|
|
10
|
-
});
|
|
11
|
-
z.object({
|
|
12
|
-
version: z.literal(1),
|
|
13
|
-
repository: z.object({
|
|
14
|
-
owner: z.string(),
|
|
15
|
-
name: z.string(),
|
|
16
|
-
}),
|
|
17
|
-
commit: z.object({
|
|
18
|
-
hash: z.string(),
|
|
19
|
-
parentHashes: z.array(z.string()),
|
|
20
|
-
author: z.object({
|
|
21
|
-
name: z.string(),
|
|
22
|
-
email: z.string(),
|
|
23
|
-
}),
|
|
24
|
-
timestamp: z.string(),
|
|
25
|
-
message: z.string(),
|
|
26
|
-
}),
|
|
27
|
-
fixtures: z.array(z.object({
|
|
28
|
-
fixtureId: z.string(),
|
|
29
|
-
imageHash: z.string().optional(),
|
|
30
|
-
imagePath: z.string().optional(),
|
|
31
|
-
background: z.enum(["light", "dark"]),
|
|
32
|
-
labels: z.array(z.string()),
|
|
33
|
-
expectedVisualDescriptions: z.array(z.string()),
|
|
34
|
-
hasError: z.boolean(),
|
|
35
|
-
error: exceptionErrorSchema.optional(),
|
|
36
|
-
events: z.array(renderEventSchema),
|
|
37
|
-
renderTimeMs: z.object({
|
|
38
|
-
sync: z.number(),
|
|
39
|
-
total: z.number(),
|
|
40
|
-
}),
|
|
41
|
-
})),
|
|
42
|
-
});
|
|
43
|
-
const MANIFEST_FILENAME = "manifest.json";
|
|
44
|
-
|
|
45
|
-
export { MANIFEST_FILENAME };
|
|
46
|
-
//# sourceMappingURL=renderManifest.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"renderManifest.js","sources":["../../../../../common/dist/renderManifest.js"],"sourcesContent":["import { z } from 'zod';\n\nconst renderEventSchema = z.object({\n type: z.enum(['console.error', 'console.warn', 'console.log', 'window.error', 'window.unhandledrejection']),\n message: z.string(),\n});\nconst exceptionErrorSchema = z.object({\n message: z.string(),\n stack: z.string().optional(),\n});\nconst RenderManifestSchema = z.object({\n version: z.literal(1),\n repository: z.object({\n owner: z.string(),\n name: z.string(),\n }),\n commit: z.object({\n hash: z.string(),\n parentHashes: z.array(z.string()),\n author: z.object({\n name: z.string(),\n email: z.string(),\n }),\n timestamp: z.string(),\n message: z.string(),\n }),\n fixtures: z.array(z.object({\n fixtureId: z.string(),\n imageHash: z.string().optional(),\n imagePath: z.string().optional(),\n background: z.enum([\"light\", \"dark\"]),\n labels: z.array(z.string()),\n expectedVisualDescriptions: z.array(z.string()),\n hasError: z.boolean(),\n error: exceptionErrorSchema.optional(),\n events: z.array(renderEventSchema),\n renderTimeMs: z.object({\n sync: z.number(),\n total: z.number(),\n }),\n })),\n});\nconst MANIFEST_FILENAME = \"manifest.json\";\nfunction generateRenderManifestJsonSchema() {\n return z.toJSONSchema(RenderManifestSchema, { target: 'draft-2020-12' });\n}\n\nexport { MANIFEST_FILENAME, RenderManifestSchema, generateRenderManifestJsonSchema };\n//# sourceMappingURL=renderManifest.js.map\n"],"names":[],"mappings":";;AAEA,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;AACnC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,2BAA2B,CAAC,CAAC;AAC/G,IAAI,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;AACvB,CAAC,CAAC;AACF,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;AACtC,IAAI,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;AACvB,IAAI,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;AAChC,CAAC,CAAC;AAC2B,CAAC,CAAC,MAAM,CAAC;AACtC,IAAI,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;AACzB,IAAI,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;AACzB,QAAQ,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;AACxB,KAAK,CAAC;AACN,IAAI,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;AACrB,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;AACxB,QAAQ,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;AACzC,QAAQ,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;AACzB,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;AAC5B,YAAY,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;AAC7B,SAAS,CAAC;AACV,QAAQ,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;AAC7B,QAAQ,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;AAC3B,KAAK,CAAC;AACN,IAAI,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;AAC/B,QAAQ,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;AAC7B,QAAQ,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;AACxC,QAAQ,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;AACxC,QAAQ,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC7C,QAAQ,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;AACnC,QAAQ,0BAA0B,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;AACvD,QAAQ,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;AAC7B,QAAQ,KAAK,EAAE,oBAAoB,CAAC,QAAQ,EAAE;AAC9C,QAAQ,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;AAC1C,QAAQ,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;AAC/B,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;AAC5B,YAAY,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;AAC7B,SAAS,CAAC;AACV,KAAK,CAAC,CAAC;AACP,CAAC;AACI,MAAC,iBAAiB,GAAG;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../semver/dist/index.js"],"sourcesContent":["/**\n * Taken from https://semver.org/spec/v2.0.0.html.\n */\nexport const semanticVersionRegexEmbeddable = /(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?/;\n/**\n * Taken from https://semver.org/spec/v2.0.0.html.\n */\nexport const semanticVersionRegex = new RegExp(`^${semanticVersionRegexEmbeddable.source}$`);\nconst numberRegex = /0|[1-9][0-9]*/;\nexport function semanticVersionRegexGroupsToVersion(groups) {\n const prereleaseMatch = groups[4];\n const buildMatch = groups[5];\n let prereleaseInfo = null;\n if (prereleaseMatch) {\n prereleaseInfo = new PreReleaseInfo(prereleaseMatch\n .split(\".\")\n .map((r) => (r.match(numberRegex) ? parseInt(r) : r)));\n }\n const buildInfo = buildMatch !== undefined ? new BuildInfo(buildMatch.split(\".\")) : null;\n return new SemanticVersion(parseInt(groups[1]), parseInt(groups[2]), parseInt(groups[3]), prereleaseInfo, buildInfo);\n}\n/**\n * Represents a valid semantic version.\n * See https://semver.org/spec/v2.0.0.html.\n */\nexport class SemanticVersion {\n major;\n minor;\n patch;\n prerelease;\n build;\n static parse(text) {\n const exec = semanticVersionRegex.exec(text);\n if (!exec) {\n throw new Error(`Could not parse semantic version. \"${text}\" is not valid.`);\n }\n return semanticVersionRegexGroupsToVersion(exec);\n }\n constructor(major, minor, patch, prerelease, build) {\n this.major = major;\n this.minor = minor;\n this.patch = patch;\n this.prerelease = prerelease;\n this.build = build;\n function testValidNumber(n, arg) {\n if (!Number.isInteger(n) || n < 0) {\n throw new Error(`Invalid input. \"${n}\" is not valid for ${arg}`);\n }\n }\n testValidNumber(major, \"major\");\n testValidNumber(minor, \"minor\");\n testValidNumber(patch, \"patch\");\n }\n get isStable() {\n return this.major > 0;\n }\n toString() {\n let result = `${this.major}.${this.minor}.${this.patch}`;\n if (this.prerelease) {\n result += `-${this.prerelease.toString()}`;\n }\n if (this.build) {\n result += `+${this.build.toString()}`;\n }\n return result;\n }\n equals(other) {\n return this.toString() === other.toString();\n }\n with(update) {\n function defaultIfUndefined(val, defaultVal) {\n return val !== undefined ? val : defaultVal;\n }\n function defaultIfUndefinedNumber(val, defaultVal) {\n if (val === \"increment\") {\n return defaultVal + 1;\n }\n return val !== undefined ? val : defaultVal;\n }\n return new SemanticVersion(defaultIfUndefinedNumber(update.major, this.major), defaultIfUndefinedNumber(update.minor, this.minor), defaultIfUndefinedNumber(update.patch, this.patch), defaultIfUndefined(update.prerelease, this.prerelease), defaultIfUndefined(update.build, this.build));\n }\n toJSON() {\n return {\n major: this.major,\n minor: this.minor,\n patch: this.patch,\n ...(this.prerelease ? { prerelease: this.prerelease.parts } : {}),\n ...(this.build ? { build: this.build.parts } : {}),\n };\n }\n /**\n * Returns -1 if this version is older than the other version, 0 if they are equal, or 1 if this version is newer.\n */\n compareTo(other) {\n if (this.major != other.major) {\n return comparePrimitives(this.major, other.major);\n }\n if (this.minor != other.minor) {\n return comparePrimitives(this.minor, other.minor);\n }\n if (this.patch != other.patch) {\n return comparePrimitives(this.patch, other.patch);\n }\n return PreReleaseInfo.compare(this.prerelease, other.prerelease);\n }\n}\nfunction comparePrimitives(a, b) {\n if (a < b) {\n return -1;\n }\n if (a > b) {\n return 1;\n }\n return 0;\n}\nexport class PreReleaseInfo {\n parts;\n static compare(a, b) {\n if (!a && !b) {\n return 0;\n }\n if (!a) {\n // prefer non-prerelease version.\n return 1;\n }\n if (!b) {\n return -1;\n }\n return a.compareTo(b);\n }\n constructor(parts) {\n this.parts = parts;\n if (parts.length === 0) {\n throw new Error(\"Must have at least one part!\");\n }\n for (const p of parts) {\n if (typeof p === \"string\") {\n if (!/^[0-9a-zA-Z-]*[a-zA-Z-][0-9a-zA-Z-]*$/.exec(p)) {\n throw new Error(\"Invalid input! Non-number parts must have at least one non-digit!\");\n }\n }\n }\n }\n toString() {\n return this.parts.map((p) => p.toString()).join(\".\");\n }\n isNewer(other) {\n return this.compareTo(other) === 1;\n }\n isOlder(other) {\n return this.compareTo(other) === -1;\n }\n compareTo(other) {\n for (let i = 0; i < Math.max(this.parts.length, other.parts.length); i++) {\n const a = this.parts[i];\n const b = other.parts[i];\n if (a === undefined) {\n // Other has longer prerelease\n return -1;\n }\n if (b === undefined) {\n // This has longer prerelease\n return 1;\n }\n if (a !== b) {\n return comparePrimitives(a, b);\n }\n }\n return 0;\n }\n}\nexport class BuildInfo {\n parts;\n constructor(parts) {\n this.parts = parts;\n if (parts.length === 0) {\n throw new Error(\"Must have at least one part!\");\n }\n }\n toString() {\n return this.parts.join(\".\");\n }\n}\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":"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"}
|
|
@@ -1,138 +0,0 @@
|
|
|
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
|
-
_methods;
|
|
90
|
-
_factoryToken;
|
|
91
|
-
get TMethods() {
|
|
92
|
-
throw new Error("Type-only property");
|
|
93
|
-
}
|
|
94
|
-
getMethods() {
|
|
95
|
-
const methods = [];
|
|
96
|
-
for (const [name, method] of Object.entries(this._methods)) {
|
|
97
|
-
if (method instanceof _ApiImplementation) {
|
|
98
|
-
const subMethods = method.getMethods();
|
|
99
|
-
for (const subMethod of subMethods) {
|
|
100
|
-
methods.push({
|
|
101
|
-
...subMethod,
|
|
102
|
-
path: `${name}/${subMethod.path}`
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
} else {
|
|
106
|
-
methods.push({
|
|
107
|
-
path: name,
|
|
108
|
-
argType: method.argType,
|
|
109
|
-
resultType: method.resultType
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
return methods;
|
|
114
|
-
}
|
|
115
|
-
async run(method, arg, context) {
|
|
116
|
-
const parts = method.split("/", 2);
|
|
117
|
-
const firstPart = parts[0];
|
|
118
|
-
if (!(firstPart in this._methods)) {
|
|
119
|
-
return Promise.reject(new Error(`Method not found: ${method}`));
|
|
120
|
-
}
|
|
121
|
-
const impl = this._methods[firstPart];
|
|
122
|
-
if (parts.length > 1) {
|
|
123
|
-
if (!(impl instanceof _ApiImplementation)) {
|
|
124
|
-
throw new Error(`Method not found: ${method}`);
|
|
125
|
-
}
|
|
126
|
-
return impl.run(parts[1], arg, context);
|
|
127
|
-
} else {
|
|
128
|
-
if (impl instanceof _ApiImplementation) {
|
|
129
|
-
throw new Error(`Method not found: ${method}`);
|
|
130
|
-
}
|
|
131
|
-
const result = await impl.run(arg, context);
|
|
132
|
-
return result ?? null;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
};
|
|
136
|
-
|
|
137
|
-
export { ApiImplementation, createApiFactory };
|
|
138
|
-
//# sourceMappingURL=chunk-FJ7AVNQE.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunk-FJ7AVNQE.js","sources":["../../../../../simple-api/dist/chunk-FJ7AVNQE.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 _methods;\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-FJ7AVNQE.mjs.map"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
// src/AsyncStream.ts
|
|
2
|
-
var AsyncStream = class _AsyncStream {
|
|
3
|
-
constructor(iterator) {
|
|
4
|
-
this.iterator = iterator;
|
|
5
|
-
}
|
|
6
|
-
iterator;
|
|
7
|
-
static fromIterable(fn) {
|
|
8
|
-
return new _AsyncStream(fn[Symbol.asyncIterator]());
|
|
9
|
-
}
|
|
10
|
-
static fromFn(fn) {
|
|
11
|
-
return new _AsyncStream(fn());
|
|
12
|
-
}
|
|
13
|
-
[Symbol.asyncIterator]() {
|
|
14
|
-
return this.iterator;
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
var MediaResponse = class {
|
|
18
|
-
constructor(mimeType, data) {
|
|
19
|
-
this.mimeType = mimeType;
|
|
20
|
-
this.data = data;
|
|
21
|
-
}
|
|
22
|
-
mimeType;
|
|
23
|
-
data;
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
export { AsyncStream, MediaResponse };
|
|
27
|
-
//# sourceMappingURL=chunk-TTRCY65Z.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunk-TTRCY65Z.js","sources":["../../../../../simple-api/dist/chunk-TTRCY65Z.mjs"],"sourcesContent":["// src/AsyncStream.ts\nvar AsyncStream = class _AsyncStream {\n constructor(iterator) {\n this.iterator = iterator;\n }\n iterator;\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 mimeType;\n data;\n};\n\nexport {\n AsyncStream,\n MediaResponse\n};\n//# sourceMappingURL=chunk-TTRCY65Z.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,QAAQ;AACV,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,EAAE,QAAQ;AACV,EAAE,IAAI;AACN;;;;"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
var ProxyApiClient = class {
|
|
2
|
-
constructor(_request) {
|
|
3
|
-
this._request = _request;
|
|
4
|
-
}
|
|
5
|
-
_request;
|
|
6
|
-
_createProxy(prefix) {
|
|
7
|
-
return new Proxy(() => {
|
|
8
|
-
}, {
|
|
9
|
-
apply: async (_target, _self, args) => {
|
|
10
|
-
const result = await this._request(prefix, args[0]);
|
|
11
|
-
return result;
|
|
12
|
-
},
|
|
13
|
-
get: (_target, prop) => {
|
|
14
|
-
if (typeof prop === "symbol") {
|
|
15
|
-
return void 0;
|
|
16
|
-
}
|
|
17
|
-
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") {
|
|
18
|
-
return void 0;
|
|
19
|
-
}
|
|
20
|
-
return this._createProxy(`${prefix}${prefix ? "/" : ""}${prop}`);
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
methods = this._createProxy("");
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
export { ProxyApiClient };
|
|
28
|
-
//# sourceMappingURL=chunk-WNXMRXWV.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunk-WNXMRXWV.js","sources":["../../../../../simple-api/dist/chunk-WNXMRXWV.mjs"],"sourcesContent":["import {\n AsyncStream\n} from \"./chunk-TTRCY65Z.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 statusCode;\n method;\n};\nvar ProxyApiClient = class {\n constructor(_request) {\n this._request = _request;\n }\n _request;\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 || \"error\" in data2)) {\n const msg = data2.errorMessage ?? data2.error;\n const stack = data2.stack;\n message = `${msg}${stack ? `\n${stack}` : \"\"}`;\n } else {\n message = `Error calling API method \"${method}\" (${result.status}): ${JSON.stringify(data2)}`;\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-WNXMRXWV.mjs.map"],"names":[],"mappings":"AAeG,IAAC,cAAc,GAAG,MAAM;AAC3B,EAAE,WAAW,CAAC,QAAQ,EAAE;AACxB,IAAI,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAC5B,EAAE;AACF,EAAE,QAAQ;AACV,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;;;;"}
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import 'zod';
|
|
2
|
-
import { MediaResponse, AsyncStream } from './chunk-TTRCY65Z.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, stack: e.stack, method });
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"express.js","sources":["../../../../../simple-api/dist/express.mjs"],"sourcesContent":["import {\n ApiImplementation\n} from \"./chunk-FJ7AVNQE.mjs\";\nimport {\n AsyncStream,\n MediaResponse\n} from \"./chunk-TTRCY65Z.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, stack: e.stack, method });\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":";;;;AAUA,SAAS,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE;AACvC,EAAE,MAAM,MAAM,GAAG,MAAM,EAAE;AACzB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,KAAK;AACjC,IAAI,GAAG,CAAC,MAAM,CAAC,6BAA6B,EAAE,GAAG,CAAC;AAClD,IAAI,GAAG,CAAC,MAAM,CAAC,8BAA8B,EAAE,+DAA+D,CAAC;AAC/G,IAAI,GAAG,CAAC,MAAM,CAAC,8BAA8B,EAAE,eAAe,CAAC;AAC/D,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE;AAClC,MAAM,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;AACzB,IAAI,CAAC,MAAM;AACX,MAAM,IAAI,EAAE;AACZ,IAAI;AACJ,EAAE,CAAC,CAAC;AACJ,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;AACpB,EAAE,eAAe,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;AACzD,IAAI,MAAM,OAAO,GAAG,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE;AAC5F,IAAI,IAAI;AACR,MAAM,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;AAC1D,MAAM,IAAI,MAAM,YAAY,aAAa,EAAE;AAC3C,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;AAC1F,UAAU,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK;AACzC,UAAU,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU;AACjD,UAAU,IAAI,KAAK,EAAE;AACrB,YAAY,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;AAChE,YAAY,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAChD,YAAY,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,QAAQ,GAAG,CAAC;AACxE,YAAY,IAAI,KAAK,IAAI,QAAQ,IAAI,GAAG,IAAI,QAAQ,IAAI,KAAK,GAAG,GAAG,EAAE;AACrE,cAAc,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iCAAiC,CAAC;AACrE,cAAc;AACd,YAAY;AACZ,YAAY,MAAM,SAAS,GAAG,GAAG,GAAG,KAAK,GAAG,CAAC;AAC7C,YAAY,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC;AAC3D,YAAY,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;AAC/B,cAAc,eAAe,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AAClE,cAAc,eAAe,EAAE,OAAO;AACtC,cAAc,gBAAgB,EAAE,SAAS;AACzC,cAAc,cAAc,EAAE,MAAM,CAAC;AACrC,aAAa,CAAC;AACd,YAAY,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1B,UAAU,CAAC,MAAM;AACjB,YAAY,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;AAC/B,cAAc,cAAc,EAAE,MAAM,CAAC,QAAQ;AAC7C,cAAc,gBAAgB,EAAE,QAAQ;AACxC,cAAc,eAAe,EAAE;AAC/B,aAAa,CAAC;AACd,YAAY,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;AAChC,UAAU;AACV,QAAQ,CAAC,MAAM;AACf,UAAU,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;AAC7B,YAAY,cAAc,EAAE,MAAM,CAAC,QAAQ;AAC3C,YAAY,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC;AAC1C,WAAW,CAAC;AACZ,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;AAC9B,QAAQ;AACR,MAAM,CAAC,MAAM,IAAI,MAAM,YAAY,WAAW,EAAE;AAChD,QAAQ,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;AAC3B,UAAU,cAAc,EAAE,kCAAkC;AAC5D,UAAU,mBAAmB,EAAE,SAAS;AACxC,UAAU,UAAU,EAAE;AACtB,SAAS,CAAC;AACV,QAAQ,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;AACvD,QAAQ,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM;AAC9B,UAAU,QAAQ,CAAC,MAAM,IAAI;AAC7B,QAAQ,CAAC,CAAC;AACV,QAAQ,IAAI;AACZ,UAAU,OAAO,IAAI,EAAE;AACvB,YAAY,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE;AACzD,YAAY,IAAI,IAAI,EAAE;AACtB,cAAc;AACd,YAAY;AACZ,YAAY,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;AACnD,UAAU;AACV,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE;AACpB,UAAU,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,CAAC,CAAC;AAC7D,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC;AAChE,QAAQ;AACR,QAAQ,GAAG,CAAC,GAAG,EAAE;AACjB,MAAM,CAAC,MAAM;AACb,QAAQ,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;AACxB,MAAM;AACN,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE;AAChB,MAAM,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;AACxE,IAAI;AACJ,EAAE;AACF,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,GAAG,EAAE,GAAG,KAAK;AAChD,IAAI,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;AAC9C,IAAI,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI;AACxB,IAAI,MAAM,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;AAC/C,EAAE,CAAC,CAAC;AACJ,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,GAAG,EAAE,GAAG,KAAK;AAC/C,IAAI,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM;AAC/B,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AAC7C,IAAI,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AAC9B,IAAI,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE;AAC/B,IAAI,MAAM,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;AAC/C,EAAE,CAAC,CAAC;AACJ,EAAE,OAAO,MAAM;AACf;;;;"}
|
|
File without changes
|
/package/dist/{external/vscode-observables → vscode-observables}/observables/dist/disposables.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|