@t4h.framework/cli 0.9.1 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/bin.js +4 -2
- package/dist/bin/bin.js.map +1 -1
- package/dist/commands/ai/ai-bootstrap.js +93 -0
- package/dist/commands/ai/ai-bootstrap.js.map +1 -0
- package/dist/commands/ai/ai-providers.js +13 -0
- package/dist/commands/ai/ai-providers.js.map +1 -0
- package/dist/commands/ai/tools/copy.js +6 -0
- package/dist/commands/ai/tools/copy.js.map +1 -0
- package/dist/commands/ai/tools/create-directory-snapshot.js +29 -0
- package/dist/commands/ai/tools/create-directory-snapshot.js.map +1 -0
- package/dist/commands/ai/tools/discover-packages.js +16 -0
- package/dist/commands/ai/tools/discover-packages.js.map +1 -0
- package/dist/commands/ai/tools/find-nearest-package-json-path.js +18 -0
- package/dist/commands/ai/tools/find-nearest-package-json-path.js.map +1 -0
- package/dist/commands/ai/tools/get-asset-sources.js +55 -0
- package/dist/commands/ai/tools/get-asset-sources.js.map +1 -0
- package/dist/commands/ai/tools/get-package-path.js +18 -0
- package/dist/commands/ai/tools/get-package-path.js.map +1 -0
- package/dist/commands/ai/tools/is-directory-equal.js +14 -0
- package/dist/commands/ai/tools/is-directory-equal.js.map +1 -0
- package/dist/commands/ai/tools/is-directory.js +8 -0
- package/dist/commands/ai/tools/is-directory.js.map +1 -0
- package/dist/commands/ai/tools/path-exists.js +8 -0
- package/dist/commands/ai/tools/path-exists.js.map +1 -0
- package/dist/commands/bootstrap/bootstrap.js +9 -0
- package/dist/commands/bootstrap/bootstrap.js.map +1 -0
- package/dist/commands/harness/harness.js +16 -0
- package/dist/commands/harness/harness.js.map +1 -0
- package/dist/commands/harness/prompts/get-destination-root-path.js +34 -0
- package/dist/commands/harness/prompts/get-destination-root-path.js.map +1 -0
- package/dist/commands/harness/target-options.js +33 -0
- package/dist/commands/harness/target-options.js.map +1 -0
- package/dist/commands/harness/tools/copy.js +6 -0
- package/dist/commands/harness/tools/copy.js.map +1 -0
- package/dist/commands/harness/tools/create-directory-snapshot.js +29 -0
- package/dist/commands/harness/tools/create-directory-snapshot.js.map +1 -0
- package/dist/commands/harness/tools/discover-packages.js +16 -0
- package/dist/commands/harness/tools/discover-packages.js.map +1 -0
- package/dist/commands/harness/tools/find-nearest-package-json-path.js +18 -0
- package/dist/commands/harness/tools/find-nearest-package-json-path.js.map +1 -0
- package/dist/commands/harness/tools/get-package-path.js +18 -0
- package/dist/commands/harness/tools/get-package-path.js.map +1 -0
- package/dist/commands/harness/tools/get-skill-sources.js +44 -0
- package/dist/commands/harness/tools/get-skill-sources.js.map +1 -0
- package/dist/commands/harness/tools/is-directory-equal.js +14 -0
- package/dist/commands/harness/tools/is-directory-equal.js.map +1 -0
- package/dist/commands/harness/tools/is-directory.js +8 -0
- package/dist/commands/harness/tools/is-directory.js.map +1 -0
- package/dist/commands/harness/tools/path-exists.js +8 -0
- package/dist/commands/harness/tools/path-exists.js.map +1 -0
- package/package.json +2 -2
- package/dist/bin/bin.d.ts +0 -2
- package/dist/commands/build/build.d.ts +0 -6
- package/dist/commands/dev/dev.d.ts +0 -7
- package/dist/commands/dev-server-up-app-process.d.ts +0 -2
- package/dist/commands/dev-server-up-app-process.js +0 -31
- package/dist/commands/dev-server-up-app-process.js.map +0 -1
- package/dist/commands/publish/publish.d.ts +0 -11
- package/dist/dev-runtime/__tests__/fixtures.d.ts +0 -57
- package/dist/dev-runtime/__tests__/fixtures.js +0 -31
- package/dist/dev-runtime/__tests__/fixtures.js.map +0 -1
- package/dist/dev-runtime/bootstrap.js +0 -51
- package/dist/dev-runtime/bootstrap.js.map +0 -1
- package/dist/dev-runtime/claims.d.ts +0 -24
- package/dist/dev-runtime/claims.js +0 -62
- package/dist/dev-runtime/claims.js.map +0 -1
- package/dist/dev-runtime/models/DevServerCacheClaim.d.ts +0 -6
- package/dist/dev-runtime/models/DevServerCacheClaim.js +0 -12
- package/dist/dev-runtime/models/DevServerCacheClaim.js.map +0 -1
- package/dist/dev-runtime/models/DevServerFileBinary.d.ts +0 -15
- package/dist/dev-runtime/models/DevServerFileBinary.js +0 -27
- package/dist/dev-runtime/models/DevServerFileBinary.js.map +0 -1
- package/dist/dev-runtime/models/DevServerFileSystemClaim.d.ts +0 -7
- package/dist/dev-runtime/models/DevServerFileSystemClaim.js +0 -30
- package/dist/dev-runtime/models/DevServerFileSystemClaim.js.map +0 -1
- package/dist/dev-runtime/models/DevServerGetActivityUniqueIdentifierClaim.d.ts +0 -7
- package/dist/dev-runtime/models/DevServerGetActivityUniqueIdentifierClaim.js +0 -31
- package/dist/dev-runtime/models/DevServerGetActivityUniqueIdentifierClaim.js.map +0 -1
- package/dist/dev-runtime/models/DevServerGetProjectUniqueIdentifierClaim.d.ts +0 -6
- package/dist/dev-runtime/models/DevServerGetProjectUniqueIdentifierClaim.js +0 -13
- package/dist/dev-runtime/models/DevServerGetProjectUniqueIdentifierClaim.js.map +0 -1
- package/dist/dev-runtime/models/DevServerGetProjectVersionUniqueIdentifierClaim.d.ts +0 -6
- package/dist/dev-runtime/models/DevServerGetProjectVersionUniqueIdentifierClaim.js +0 -13
- package/dist/dev-runtime/models/DevServerGetProjectVersionUniqueIdentifierClaim.js.map +0 -1
- package/dist/dev-runtime/models/DevServerGetProjectVersionWorkflowUniqueIdentifierClaim.d.ts +0 -7
- package/dist/dev-runtime/models/DevServerGetProjectVersionWorkflowUniqueIdentifierClaim.js +0 -31
- package/dist/dev-runtime/models/DevServerGetProjectVersionWorkflowUniqueIdentifierClaim.js.map +0 -1
- package/dist/dev-runtime/models/DevServerGetWorkflowUniqueIdentifierClaim.d.ts +0 -7
- package/dist/dev-runtime/models/DevServerGetWorkflowUniqueIdentifierClaim.js +0 -31
- package/dist/dev-runtime/models/DevServerGetWorkflowUniqueIdentifierClaim.js.map +0 -1
- package/dist/dev-runtime/models/DevServerHttpClientRequestClaim.d.ts +0 -5
- package/dist/dev-runtime/models/DevServerHttpClientRequestClaim.js +0 -39
- package/dist/dev-runtime/models/DevServerHttpClientRequestClaim.js.map +0 -1
- package/dist/dev-runtime/models/DevServerORMClaim.d.ts +0 -8
- package/dist/dev-runtime/models/DevServerORMClaim.js +0 -37
- package/dist/dev-runtime/models/DevServerORMClaim.js.map +0 -1
- package/dist/dev-runtime/models/DevServerSmtpSendEmailClaim.d.ts +0 -6
- package/dist/dev-runtime/models/DevServerSmtpSendEmailClaim.js +0 -32
- package/dist/dev-runtime/models/DevServerSmtpSendEmailClaim.js.map +0 -1
- package/dist/dev-runtime/models/DevServerWorkflowClaim.d.ts +0 -7
- package/dist/dev-runtime/models/DevServerWorkflowClaim.js +0 -38
- package/dist/dev-runtime/models/DevServerWorkflowClaim.js.map +0 -1
- package/dist/dev-runtime/models/WorkflowRun.d.ts +0 -18
- package/dist/dev-runtime/models/WorkflowRun.js +0 -19
- package/dist/dev-runtime/models/WorkflowRun.js.map +0 -1
- package/dist/dev-runtime/models/WorkflowRunActivity.d.ts +0 -40
- package/dist/dev-runtime/models/WorkflowRunActivity.js +0 -52
- package/dist/dev-runtime/models/WorkflowRunActivity.js.map +0 -1
- package/dist/dev-runtime/repositories/WorkflowRun.repository.d.ts +0 -8
- package/dist/dev-runtime/repositories/WorkflowRun.repository.js +0 -27
- package/dist/dev-runtime/repositories/WorkflowRun.repository.js.map +0 -1
- package/dist/dev-runtime/repositories/WorkflowRunActivity.repository.d.ts +0 -8
- package/dist/dev-runtime/repositories/WorkflowRunActivity.repository.js +0 -36
- package/dist/dev-runtime/repositories/WorkflowRunActivity.repository.js.map +0 -1
- package/dist/dev-runtime/services/BuildWorkflowRunResult.service.d.ts +0 -8
- package/dist/dev-runtime/services/BuildWorkflowRunResult.service.js +0 -49
- package/dist/dev-runtime/services/BuildWorkflowRunResult.service.js.map +0 -1
- package/dist/dev-runtime/services/RuntimeContext.service.d.ts +0 -10
- package/dist/dev-runtime/services/RuntimeContext.service.js +0 -22
- package/dist/dev-runtime/services/RuntimeContext.service.js.map +0 -1
- package/dist/dev-runtime/services/TimeoutScheduler.service.d.ts +0 -5
- package/dist/dev-runtime/services/TimeoutScheduler.service.js +0 -33
- package/dist/dev-runtime/services/TimeoutScheduler.service.js.map +0 -1
- package/dist/dev-runtime/services/WorkflowRunAsyncActivityFacade.service.d.ts +0 -20
- package/dist/dev-runtime/services/WorkflowRunAsyncActivityFacade.service.js +0 -54
- package/dist/dev-runtime/services/WorkflowRunAsyncActivityFacade.service.js.map +0 -1
- package/dist/dev-runtime/services/WorkflowRunFacade.service.d.ts +0 -13
- package/dist/dev-runtime/services/WorkflowRunFacade.service.js +0 -40
- package/dist/dev-runtime/services/WorkflowRunFacade.service.js.map +0 -1
- package/dist/dev-runtime/services/WorkflowRunSyncActivityFacade.service.d.ts +0 -7
- package/dist/dev-runtime/services/WorkflowRunSyncActivityFacade.service.js +0 -26
- package/dist/dev-runtime/services/WorkflowRunSyncActivityFacade.service.js.map +0 -1
- package/dist/dev-runtime/tools/find-claim-by-constructor.d.ts +0 -1
- package/dist/dev-runtime/tools/find-claim-by-constructor.js +0 -5
- package/dist/dev-runtime/tools/find-claim-by-constructor.js.map +0 -1
- package/dist/dev-runtime/transport/DevServerJsonRpc.d.ts +0 -2
- package/dist/dev-runtime/transport/DevServerJsonRpc.js +0 -42
- package/dist/dev-runtime/transport/DevServerJsonRpc.js.map +0 -1
- package/dist/dev-runtime/use-cases/CallbackWorkflowRunAsyncActivity.usecase.d.ts +0 -14
- package/dist/dev-runtime/use-cases/CallbackWorkflowRunAsyncActivity.usecase.js +0 -64
- package/dist/dev-runtime/use-cases/CallbackWorkflowRunAsyncActivity.usecase.js.map +0 -1
- package/dist/dev-runtime/use-cases/CreateWorkflowRun.usecase.d.ts +0 -14
- package/dist/dev-runtime/use-cases/CreateWorkflowRun.usecase.js +0 -43
- package/dist/dev-runtime/use-cases/CreateWorkflowRun.usecase.js.map +0 -1
- package/dist/dev-runtime/use-cases/CreateWorkflowRunAsyncActivity.usecase.d.ts +0 -9
- package/dist/dev-runtime/use-cases/CreateWorkflowRunAsyncActivity.usecase.js +0 -68
- package/dist/dev-runtime/use-cases/CreateWorkflowRunAsyncActivity.usecase.js.map +0 -1
- package/dist/dev-runtime/use-cases/NextTickWorkflowRun.usecase.d.ts +0 -20
- package/dist/dev-runtime/use-cases/NextTickWorkflowRun.usecase.js +0 -150
- package/dist/dev-runtime/use-cases/NextTickWorkflowRun.usecase.js.map +0 -1
- package/dist/dev-runtime/use-cases/TimeoutWorkflowRunAsyncActivity.usecase.d.ts +0 -8
- package/dist/dev-runtime/use-cases/TimeoutWorkflowRunAsyncActivity.usecase.js +0 -38
- package/dist/dev-runtime/use-cases/TimeoutWorkflowRunAsyncActivity.usecase.js.map +0 -1
- package/dist/dev-runtime/use-cases/WorkflowRunAsyncActivity.usecase.d.ts +0 -7
- package/dist/dev-runtime/use-cases/WorkflowRunAsyncActivity.usecase.js +0 -44
- package/dist/dev-runtime/use-cases/WorkflowRunAsyncActivity.usecase.js.map +0 -1
- package/dist/dev-runtime/use-cases/WorkflowRunAsyncActivityAdvance.usecase.d.ts +0 -10
- package/dist/dev-runtime/use-cases/WorkflowRunAsyncActivityAdvance.usecase.js +0 -57
- package/dist/dev-runtime/use-cases/WorkflowRunAsyncActivityAdvance.usecase.js.map +0 -1
- package/dist/dev-runtime/use-cases/WorkflowRunBuildHistory.usecase.d.ts +0 -8
- package/dist/dev-runtime/use-cases/WorkflowRunBuildHistory.usecase.js +0 -41
- package/dist/dev-runtime/use-cases/WorkflowRunBuildHistory.usecase.js.map +0 -1
- package/dist/dev-runtime/use-cases/WorkflowRunSyncActivity.usecase.d.ts +0 -4
- package/dist/dev-runtime/use-cases/WorkflowRunSyncActivity.usecase.js +0 -26
- package/dist/dev-runtime/use-cases/WorkflowRunSyncActivity.usecase.js.map +0 -1
- package/dist/models/DevServer.d.ts +0 -24
- package/dist/models/DevServer.js +0 -86
- package/dist/models/DevServer.js.map +0 -1
- package/dist/models/InMemoryDatabase.d.ts +0 -20
- package/dist/models/InMemoryDatabase.js +0 -86
- package/dist/models/InMemoryDatabase.js.map +0 -1
- package/dist/models/JSONCodec.d.ts +0 -30
- package/dist/models/JSONCodec.js +0 -110
- package/dist/models/JSONCodec.js.map +0 -1
- package/dist/models/JSONCodecKindFrameworkSerializableClass.d.ts +0 -8
- package/dist/models/JSONCodecKindFrameworkSerializableClass.js +0 -7
- package/dist/models/JSONCodecKindFrameworkSerializableClass.js.map +0 -1
- package/dist/models/JSONRPCClient.d.ts +0 -11
- package/dist/models/JSONRPCClient.js +0 -50
- package/dist/models/JSONRPCClient.js.map +0 -1
- package/dist/models/JSONRPCServer.d.ts +0 -63
- package/dist/models/JSONRPCServer.js +0 -61
- package/dist/models/JSONRPCServer.js.map +0 -1
- package/dist/tools/is-workflow-waiting.d.ts +0 -4
- package/dist/tools/is-workflow-waiting.js +0 -12
- package/dist/tools/is-workflow-waiting.js.map +0 -1
- package/dist/tools/json-codec.d.ts +0 -8
- package/dist/tools/json-codec.js +0 -17
- package/dist/tools/json-codec.js.map +0 -1
- package/dist/tools/json-schema-to-inquirer-question.d.ts +0 -11
- package/dist/tools/mkdir-out-dir-project-from-ts-config-path-and-json-package-path.d.ts +0 -1
- package/dist/tools/mkdir-out-dir-project-from-ts-config-path-and-json-package-path.js +0 -11
- package/dist/tools/mkdir-out-dir-project-from-ts-config-path-and-json-package-path.js.map +0 -1
- package/dist/tools/resolve-package-json-path.d.ts +0 -1
- package/dist/tools/resolve-package-json-path.js +0 -21
- package/dist/tools/resolve-package-json-path.js.map +0 -1
- package/dist/tools/resolve-tsconfig-path-from-package-json-path.d.ts +0 -1
- package/dist/tools/resolve-tsconfig-path-from-package-json-path.js +0 -14
- package/dist/tools/resolve-tsconfig-path-from-package-json-path.js.map +0 -1
- package/dist/tools/ts-build-watch.d.ts +0 -12
- package/dist/tools/ts-build-watch.js +0 -46
- package/dist/tools/ts-build-watch.js.map +0 -1
- package/dist/tools/ts-build.d.ts +0 -6
- package/dist/tools/ts-build.js +0 -37
- package/dist/tools/ts-build.js.map +0 -1
- package/dist/tools/up-app.d.ts +0 -2
- package/dist/tools/up-app.js +0 -10
- package/dist/tools/up-app.js.map +0 -1
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import EventEmitter from 'node:events';
|
|
2
|
-
import sift from 'sift';
|
|
3
|
-
import { uuidv7 } from 'uuidv7';
|
|
4
|
-
export class InMemoryDatabaseTable extends EventEmitter {
|
|
5
|
-
rows = [];
|
|
6
|
-
_sort(rows, orderBy) {
|
|
7
|
-
const entries = Object.entries(orderBy);
|
|
8
|
-
return rows.toSorted((rowA, rowB) => {
|
|
9
|
-
for (const [key, dir] of entries) {
|
|
10
|
-
const rowAPropertyValue = rowA[key];
|
|
11
|
-
const rowBPropertyValue = rowB[key];
|
|
12
|
-
if (rowAPropertyValue === rowBPropertyValue)
|
|
13
|
-
continue;
|
|
14
|
-
if (rowAPropertyValue == null)
|
|
15
|
-
return dir === 'asc' ? -1 : 1;
|
|
16
|
-
if (rowBPropertyValue == null)
|
|
17
|
-
return dir === 'asc' ? 1 : -1;
|
|
18
|
-
const cmp = rowAPropertyValue < rowBPropertyValue ? -1 : 1;
|
|
19
|
-
return dir === 'asc' ? cmp : -cmp;
|
|
20
|
-
}
|
|
21
|
-
return 0;
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
find(options) {
|
|
25
|
-
// @ts-expect-error: todo
|
|
26
|
-
let rows = this.rows.filter(sift(options.where));
|
|
27
|
-
if (options.orderBy)
|
|
28
|
-
rows = this._sort(rows, options.orderBy);
|
|
29
|
-
if (options.offset)
|
|
30
|
-
rows = rows.slice(options.offset);
|
|
31
|
-
if (options.limit)
|
|
32
|
-
rows = rows.slice(0, options.limit);
|
|
33
|
-
return rows;
|
|
34
|
-
}
|
|
35
|
-
insert(rows) {
|
|
36
|
-
const ids = rows.map(row => {
|
|
37
|
-
const id = uuidv7();
|
|
38
|
-
this.rows.push({ id, ...row });
|
|
39
|
-
return id;
|
|
40
|
-
});
|
|
41
|
-
this.emit('change');
|
|
42
|
-
return ids;
|
|
43
|
-
}
|
|
44
|
-
update(where, row) {
|
|
45
|
-
const rows = this.find({ where });
|
|
46
|
-
for (const inMemoryRow of rows)
|
|
47
|
-
this.rows.splice(this.rows.indexOf(inMemoryRow), 1, {
|
|
48
|
-
...inMemoryRow,
|
|
49
|
-
...row,
|
|
50
|
-
});
|
|
51
|
-
this.emit('change');
|
|
52
|
-
return rows.length;
|
|
53
|
-
}
|
|
54
|
-
delete(where) {
|
|
55
|
-
const rows = this.find({ where });
|
|
56
|
-
for (const inMemoryRow of rows)
|
|
57
|
-
this.rows.splice(this.rows.indexOf(inMemoryRow), 1);
|
|
58
|
-
this.emit('change');
|
|
59
|
-
}
|
|
60
|
-
toJSON() {
|
|
61
|
-
return this.rows;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
export class InMemoryDatabase extends EventEmitter {
|
|
65
|
-
tables = new Map();
|
|
66
|
-
constructor(initial = {}) {
|
|
67
|
-
super();
|
|
68
|
-
for (const [name, rows] of Object.entries(initial))
|
|
69
|
-
this.table(name).insert(rows);
|
|
70
|
-
}
|
|
71
|
-
table(name) {
|
|
72
|
-
if (!this.tables.has(name)) {
|
|
73
|
-
const table = new InMemoryDatabaseTable();
|
|
74
|
-
this.tables.set(name, table);
|
|
75
|
-
table.on('change', () => this.emit('change', table));
|
|
76
|
-
}
|
|
77
|
-
return this.tables.get(name);
|
|
78
|
-
}
|
|
79
|
-
toJSON() {
|
|
80
|
-
return Object.fromEntries(Array.from(this.tables.entries()).map(([name, table]) => [
|
|
81
|
-
name,
|
|
82
|
-
table.toJSON(),
|
|
83
|
-
]));
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
//# sourceMappingURL=InMemoryDatabase.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InMemoryDatabase.js","sourceRoot":"","sources":["../../src/models/InMemoryDatabase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
export declare class JSONCodecKind<TKind extends string, TSerialized, TParsed extends object, TSerializeOptions extends object = {}, TParseOptions extends object = {}> {
|
|
2
|
-
readonly kind: TKind;
|
|
3
|
-
readonly test: (value: object) => value is TParsed;
|
|
4
|
-
readonly serialize: (value: TParsed, options: TSerializeOptions, serializer: (value: any) => any) => TSerialized | Promise<TSerialized>;
|
|
5
|
-
readonly parse: (value: TSerialized & {
|
|
6
|
-
'~kind': TKind;
|
|
7
|
-
}, options: TParseOptions, parser: (value: any) => any) => TParsed | Promise<TParsed>;
|
|
8
|
-
constructor(kind: TKind, test: (value: object) => value is TParsed, serialize: (value: TParsed, options: TSerializeOptions, serializer: (value: any) => any) => TSerialized | Promise<TSerialized>, parse: (value: TSerialized & {
|
|
9
|
-
'~kind': TKind;
|
|
10
|
-
}, options: TParseOptions, parser: (value: any) => any) => TParsed | Promise<TParsed>);
|
|
11
|
-
}
|
|
12
|
-
export type JSONCodeKindSerializeOptions<TKinds extends readonly JSONCodecKind<any, any, any, any, any>[]> = TKinds extends readonly [
|
|
13
|
-
JSONCodecKind<any, any, any, infer T, any>,
|
|
14
|
-
...infer TRest extends readonly JSONCodecKind<any, any, any, any, any>[]
|
|
15
|
-
] ? T & JSONCodeKindSerializeOptions<TRest> : {};
|
|
16
|
-
export type JSONCodeKindParseOptions<TKinds extends readonly JSONCodecKind<any, any, any, any, any>[]> = TKinds extends readonly [
|
|
17
|
-
JSONCodecKind<any, any, any, any, infer T>,
|
|
18
|
-
...infer TRest extends readonly JSONCodecKind<any, any, any, any, any>[]
|
|
19
|
-
] ? T & JSONCodeKindParseOptions<TRest> : {};
|
|
20
|
-
export declare class JSONCodec<TKinds extends readonly JSONCodecKind<any, any, any, any, any>[]> {
|
|
21
|
-
protected readonly kinds: Map<string, JSONCodecKind<string, any, any, any, any>>;
|
|
22
|
-
constructor(...kinds: TKinds);
|
|
23
|
-
private _isKind;
|
|
24
|
-
private _getKind;
|
|
25
|
-
private transform;
|
|
26
|
-
private _parse;
|
|
27
|
-
parse(text: string, options: JSONCodeKindParseOptions<TKinds>): Promise<any>;
|
|
28
|
-
private _stringify;
|
|
29
|
-
stringify(value: any, options: JSONCodeKindSerializeOptions<TKinds>): Promise<string>;
|
|
30
|
-
}
|
package/dist/models/JSONCodec.js
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
export class JSONCodecKind {
|
|
2
|
-
kind;
|
|
3
|
-
test;
|
|
4
|
-
serialize;
|
|
5
|
-
parse;
|
|
6
|
-
constructor(kind, test, serialize, parse) {
|
|
7
|
-
this.kind = kind;
|
|
8
|
-
this.test = test;
|
|
9
|
-
this.serialize = serialize;
|
|
10
|
-
this.parse = parse;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
export class JSONCodec {
|
|
14
|
-
kinds = new Map();
|
|
15
|
-
constructor(...kinds) {
|
|
16
|
-
for (const kind of kinds) {
|
|
17
|
-
if (this.kinds.has(kind.kind))
|
|
18
|
-
throw new Error(`Kind ${kind.kind} already registered`);
|
|
19
|
-
this.kinds.set(kind.kind, kind);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
_isKind(value) {
|
|
23
|
-
if (typeof value !== 'object')
|
|
24
|
-
return false;
|
|
25
|
-
if (value === null)
|
|
26
|
-
return false;
|
|
27
|
-
if (!('~kind' in value))
|
|
28
|
-
return false;
|
|
29
|
-
if (typeof value['~kind'] !== 'string')
|
|
30
|
-
return false;
|
|
31
|
-
return this.kinds.has(value['~kind']);
|
|
32
|
-
}
|
|
33
|
-
_getKind(value) {
|
|
34
|
-
if (!this._isKind(value))
|
|
35
|
-
throw new Error('Invalid kind');
|
|
36
|
-
return this.kinds.get(value['~kind']);
|
|
37
|
-
}
|
|
38
|
-
async transform(value, config) {
|
|
39
|
-
if (value === null)
|
|
40
|
-
return null;
|
|
41
|
-
if (typeof value !== 'object')
|
|
42
|
-
return value;
|
|
43
|
-
if (Array.isArray(value)) {
|
|
44
|
-
const out = new Array(value.length);
|
|
45
|
-
for (let i = 0; i < value.length; i++) {
|
|
46
|
-
const transformedValue = await this.transform(value[i], config);
|
|
47
|
-
out[i] = transformedValue === undefined ? null : transformedValue;
|
|
48
|
-
}
|
|
49
|
-
return out;
|
|
50
|
-
}
|
|
51
|
-
const { seen, cache, get, mapper } = config;
|
|
52
|
-
const kind = get(value);
|
|
53
|
-
if (kind) {
|
|
54
|
-
if (!cache.has(value))
|
|
55
|
-
cache.set(value, mapper(value, kind));
|
|
56
|
-
return cache.get(value);
|
|
57
|
-
}
|
|
58
|
-
const previous = seen.get(value);
|
|
59
|
-
if (previous)
|
|
60
|
-
return previous;
|
|
61
|
-
const out = {};
|
|
62
|
-
seen.set(value, out);
|
|
63
|
-
for (const [key, v] of Object.entries(value)) {
|
|
64
|
-
const tv = await this.transform(v, config);
|
|
65
|
-
if (tv !== undefined)
|
|
66
|
-
out[key] = tv;
|
|
67
|
-
}
|
|
68
|
-
return out;
|
|
69
|
-
}
|
|
70
|
-
async _parse(value, options) {
|
|
71
|
-
const seen = new WeakMap();
|
|
72
|
-
const cache = new WeakMap();
|
|
73
|
-
const get = (value) => this._isKind(value) && this._getKind(value);
|
|
74
|
-
return await this.transform(value, {
|
|
75
|
-
seen,
|
|
76
|
-
cache,
|
|
77
|
-
get,
|
|
78
|
-
mapper: (value, kind) => {
|
|
79
|
-
if ('~value' in value)
|
|
80
|
-
value = value['~value'];
|
|
81
|
-
return kind.parse(value, options, value => this._parse(value, options));
|
|
82
|
-
},
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
async parse(text, options) {
|
|
86
|
-
return await this._parse(JSON.parse(text), options);
|
|
87
|
-
}
|
|
88
|
-
async _stringify(value, options) {
|
|
89
|
-
const seen = new WeakMap();
|
|
90
|
-
const cache = new WeakMap();
|
|
91
|
-
return await this.transform(value, {
|
|
92
|
-
seen,
|
|
93
|
-
cache,
|
|
94
|
-
get: value => this.kinds.values().find(kind => kind.test(value)),
|
|
95
|
-
mapper: async (value, kind) => {
|
|
96
|
-
const serializedValue = await kind.serialize(value, options, value => this._stringify(value, options));
|
|
97
|
-
if (typeof serializedValue === 'string')
|
|
98
|
-
return {
|
|
99
|
-
'~kind': kind.kind,
|
|
100
|
-
'~value': serializedValue,
|
|
101
|
-
};
|
|
102
|
-
return { '~kind': kind.kind, ...serializedValue };
|
|
103
|
-
},
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
async stringify(value, options) {
|
|
107
|
-
return JSON.stringify(await this._stringify(value, options));
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
//# sourceMappingURL=JSONCodec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JSONCodec.js","sourceRoot":"","sources":["../../src/models/JSONCodec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { Deserializer, PromiseLikeType, SerializableClass } from '@t4h.framework/core';
|
|
2
|
-
import { JSONCodecKind } from './JSONCodec.js';
|
|
3
|
-
export declare class JSONCodecKindFrameworkSerializableClass<TKind extends string, T extends SerializableClass> extends JSONCodecKind<TKind, PromiseLikeType<ReturnType<T['toSerializable']>>, T, {}, {}> {
|
|
4
|
-
constructor(kind: TKind, constructor: {
|
|
5
|
-
new (...args: any[]): T;
|
|
6
|
-
fromSerializable(serializable: PromiseLikeType<ReturnType<T['toSerializable']>>, deserializer: Deserializer): T | Promise<T>;
|
|
7
|
-
});
|
|
8
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { JSONCodecKind } from './JSONCodec.js';
|
|
2
|
-
export class JSONCodecKindFrameworkSerializableClass extends JSONCodecKind {
|
|
3
|
-
constructor(kind, constructor) {
|
|
4
|
-
super(kind, (value) => value instanceof constructor, (value, options, serializer) => value.toSerializable(serializer), (value, options, deserializer) => constructor.fromSerializable(value, deserializer));
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=JSONCodecKindFrameworkSerializableClass.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JSONCodecKindFrameworkSerializableClass.js","sourceRoot":"","sources":["../../src/models/JSONCodecKindFrameworkSerializableClass.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE9C,MAAM,OAAO,uCAGX,SAAQ,aAQT;IACC,YACE,IAAW,EACX,WAMC;QAED,KAAK,CACH,IAAI,EACJ,CAAC,KAAK,EAAc,EAAE,CAAC,KAAK,YAAY,WAAW,EACnD,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,CAC7B,KAAK,CAAC,cAAc,CAAC,UAAU,CAE9B,EACH,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,CAC/B,WAAW,CAAC,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC,CACpD,CAAA;IACH,CAAC;CACF"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { JSONRPCResponseFulfilled, JSONRPCResponseRejected } from './JSONRPCServer.js';
|
|
2
|
-
export type JSONRPCClientSend = (message: string) => void | Promise<void>;
|
|
3
|
-
export declare class JSONRPCClient {
|
|
4
|
-
private readonly send;
|
|
5
|
-
private readonly listeners;
|
|
6
|
-
constructor(send: JSONRPCClientSend);
|
|
7
|
-
addListener(listener: (response: JSONRPCResponseFulfilled | JSONRPCResponseRejected) => void): () => void;
|
|
8
|
-
call(method: string, ...params: any[]): Promise<any>;
|
|
9
|
-
notify(method: string, ...params: any[]): Promise<void>;
|
|
10
|
-
handle(message: any): Promise<unknown>;
|
|
11
|
-
}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { uuidv7 } from 'uuidv7';
|
|
2
|
-
export class JSONRPCClient {
|
|
3
|
-
send;
|
|
4
|
-
listeners = [];
|
|
5
|
-
constructor(send) {
|
|
6
|
-
this.send = send;
|
|
7
|
-
}
|
|
8
|
-
addListener(listener) {
|
|
9
|
-
this.listeners.push(listener);
|
|
10
|
-
return () => {
|
|
11
|
-
this.listeners.splice(this.listeners.indexOf(listener), 1);
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
async call(method, ...params) {
|
|
15
|
-
const id = uuidv7();
|
|
16
|
-
const message = { jsonrpc: '2.0', id, method, params };
|
|
17
|
-
const promise = new Promise((resolve, reject) => {
|
|
18
|
-
const off = this.addListener(response => {
|
|
19
|
-
if (response.id !== id)
|
|
20
|
-
return;
|
|
21
|
-
off();
|
|
22
|
-
if ('result' in response)
|
|
23
|
-
resolve(response.result);
|
|
24
|
-
else
|
|
25
|
-
reject(new Error(response.error.message));
|
|
26
|
-
});
|
|
27
|
-
});
|
|
28
|
-
await this.send(JSON.stringify(message));
|
|
29
|
-
return promise;
|
|
30
|
-
}
|
|
31
|
-
async notify(method, ...params) {
|
|
32
|
-
const message = { jsonrpc: '2.0', method, params };
|
|
33
|
-
await this.send(JSON.stringify(message));
|
|
34
|
-
}
|
|
35
|
-
async handle(message) {
|
|
36
|
-
if (typeof message === 'string')
|
|
37
|
-
return this.handle(JSON.parse(message));
|
|
38
|
-
if (Buffer.isBuffer(message))
|
|
39
|
-
return this.handle(message.toString());
|
|
40
|
-
const json = message;
|
|
41
|
-
if (json.jsonrpc !== '2.0')
|
|
42
|
-
throw new Error('Invalid JSON-RPC message');
|
|
43
|
-
if (!('id' in json))
|
|
44
|
-
return;
|
|
45
|
-
if (json.id === undefined)
|
|
46
|
-
return;
|
|
47
|
-
this.listeners.forEach(listener => listener(json));
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=JSONRPCClient.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JSONRPCClient.js","sourceRoot":"","sources":["../../src/models/JSONRPCClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAU/B,MAAM,OAAO,aAAa;IAKK;IAJZ,SAAS,GAEX,EAAE,CAAA;IAEjB,YAA6B,IAAuB;QAAvB,SAAI,GAAJ,IAAI,CAAmB;IAAG,CAAC;IAEjD,WAAW,CAChB,QAES;QAET,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAE7B,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;QAC5D,CAAC,CAAA;IACH,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,GAAG,MAAa;QAChD,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;QAEnB,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAW,CAAA;QAE/D,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;gBACtC,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE;oBAAE,OAAM;gBAE9B,GAAG,EAAE,CAAA;gBAEL,IAAI,QAAQ,IAAI,QAAQ;oBAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;;oBAC7C,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;YAChD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;QAExC,OAAO,OAAO,CAAA;IAChB,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,GAAG,MAAa;QAClD,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAW,CAAA;QAE3D,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;IAC1C,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,OAAY;QAC9B,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;QAExE,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;QAEpE,MAAM,IAAI,GAAG,OAA0B,CAAA;QAEvC,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;QAEvE,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC;YAAE,OAAM;QAE3B,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS;YAAE,OAAM;QAEjC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;IACpD,CAAC;CACF"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { type ValidateFunction } from 'ajv';
|
|
2
|
-
import Type from 'typebox';
|
|
3
|
-
export interface JSONRPCServerServerMethodConfig<TSchema extends Type.TSchema | null = null> {
|
|
4
|
-
schema?: TSchema;
|
|
5
|
-
}
|
|
6
|
-
export type ParamsSchema = readonly Type.TSchema[];
|
|
7
|
-
export type ParamsSchemaToParams<TParamsSchema extends ParamsSchema> = TParamsSchema extends readonly [
|
|
8
|
-
infer TParamSchema extends Type.TSchema,
|
|
9
|
-
...infer TRestParamsSchema extends ParamsSchema
|
|
10
|
-
] ? readonly [
|
|
11
|
-
Type.Static<TParamSchema>,
|
|
12
|
-
...ParamsSchemaToParams<TRestParamsSchema>
|
|
13
|
-
] : readonly [];
|
|
14
|
-
export type ParamsSchemaToParamsValidate<TParamsSchema extends ParamsSchema> = TParamsSchema extends readonly [
|
|
15
|
-
infer TParamSchema extends Type.TSchema,
|
|
16
|
-
...infer TRestParamsSchema extends ParamsSchema
|
|
17
|
-
] ? readonly [
|
|
18
|
-
ValidateFunction<Type.Static<TParamSchema>>,
|
|
19
|
-
...ParamsSchemaToParamsValidate<TRestParamsSchema>
|
|
20
|
-
] : readonly [];
|
|
21
|
-
export type JSONRPCServerServerMethodFn<TParamsSchema extends readonly Type.TSchema[] = [], TOutput = any> = (...args: ParamsSchemaToParams<TParamsSchema>) => TOutput | Promise<TOutput>;
|
|
22
|
-
export declare class JSONRPCServerMethod<TParamsSchema extends readonly Type.TSchema[] = [], TOutput = any> {
|
|
23
|
-
readonly name: string;
|
|
24
|
-
readonly schema: TParamsSchema;
|
|
25
|
-
readonly validate: ParamsSchemaToParamsValidate<TParamsSchema>;
|
|
26
|
-
readonly fn: JSONRPCServerServerMethodFn<TParamsSchema, TOutput>;
|
|
27
|
-
constructor(name: string, fn: JSONRPCServerServerMethodFn<TParamsSchema, TOutput>);
|
|
28
|
-
constructor(name: string, config: JSONRPCServerServerMethodConfig<TParamsSchema>, fn: JSONRPCServerServerMethodFn<TParamsSchema, TOutput>);
|
|
29
|
-
call(params: any): Promise<TOutput>;
|
|
30
|
-
}
|
|
31
|
-
export type JSONRPCCall = {
|
|
32
|
-
jsonrpc: '2.0';
|
|
33
|
-
id: string;
|
|
34
|
-
method: string;
|
|
35
|
-
params: any[];
|
|
36
|
-
};
|
|
37
|
-
export type JSONRPCResponseFulfilled = {
|
|
38
|
-
jsonrpc: '2.0';
|
|
39
|
-
id: string;
|
|
40
|
-
result: any;
|
|
41
|
-
};
|
|
42
|
-
export type JSONRPCResponseRejected = {
|
|
43
|
-
jsonrpc: '2.0';
|
|
44
|
-
id: string;
|
|
45
|
-
error: {
|
|
46
|
-
code: number;
|
|
47
|
-
message: string;
|
|
48
|
-
};
|
|
49
|
-
};
|
|
50
|
-
export type JSONRPCResponseNotification = {
|
|
51
|
-
jsonrpc: '2.0';
|
|
52
|
-
method: string;
|
|
53
|
-
params: any[];
|
|
54
|
-
};
|
|
55
|
-
export type JSONRPCResponse = JSONRPCResponseFulfilled | JSONRPCResponseRejected | JSONRPCResponseNotification;
|
|
56
|
-
export type JSONRPCServerSend = (message: string) => void | Promise<void>;
|
|
57
|
-
export declare class JSONRPCServer {
|
|
58
|
-
private readonly methods;
|
|
59
|
-
private readonly send;
|
|
60
|
-
constructor(methods: readonly JSONRPCServerMethod<any, any>[], send: JSONRPCServerSend);
|
|
61
|
-
handle(message: any): Promise<unknown>;
|
|
62
|
-
notify(method: string, ...params: any[]): Promise<void>;
|
|
63
|
-
}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { Ajv } from 'ajv';
|
|
2
|
-
import Type from 'typebox';
|
|
3
|
-
const ajv = new Ajv();
|
|
4
|
-
export class JSONRPCServerMethod {
|
|
5
|
-
name;
|
|
6
|
-
schema;
|
|
7
|
-
validate;
|
|
8
|
-
fn;
|
|
9
|
-
constructor(name, configOrFn, maybeFn) {
|
|
10
|
-
if (typeof configOrFn === 'function') {
|
|
11
|
-
this.name = name;
|
|
12
|
-
this.schema = [];
|
|
13
|
-
this.fn = configOrFn;
|
|
14
|
-
}
|
|
15
|
-
else if (typeof maybeFn === 'function') {
|
|
16
|
-
this.name = name;
|
|
17
|
-
this.schema = configOrFn.schema ?? [];
|
|
18
|
-
this.fn = maybeFn;
|
|
19
|
-
}
|
|
20
|
-
else
|
|
21
|
-
throw new Error('Invalid constructor arguments');
|
|
22
|
-
this.validate = this.schema.map(schema => ajv.compile(schema));
|
|
23
|
-
}
|
|
24
|
-
async call(params) {
|
|
25
|
-
if (!Array.isArray(params))
|
|
26
|
-
return this.call([params]);
|
|
27
|
-
const isValid = this.validate.every((validate, index) => validate(params[index]));
|
|
28
|
-
if (!isValid)
|
|
29
|
-
throw new Error('Invalid parameters');
|
|
30
|
-
return await this.fn(...params);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
export class JSONRPCServer {
|
|
34
|
-
methods;
|
|
35
|
-
send;
|
|
36
|
-
constructor(methods, send) {
|
|
37
|
-
this.methods = methods;
|
|
38
|
-
this.send = send;
|
|
39
|
-
}
|
|
40
|
-
async handle(message) {
|
|
41
|
-
if (typeof message === 'string')
|
|
42
|
-
return this.handle(JSON.parse(message));
|
|
43
|
-
if (Buffer.isBuffer(message))
|
|
44
|
-
return this.handle(message.toString());
|
|
45
|
-
if (typeof message !== 'object')
|
|
46
|
-
return;
|
|
47
|
-
if (!message)
|
|
48
|
-
return;
|
|
49
|
-
if (!('method' in message))
|
|
50
|
-
return;
|
|
51
|
-
const method = this.methods.find(method => method.name === message.method);
|
|
52
|
-
if (!method)
|
|
53
|
-
throw new Error(`Method ${message.method} not found`);
|
|
54
|
-
const result = (await method.call(message.params)) ?? null;
|
|
55
|
-
await this.send(JSON.stringify({ jsonrpc: '2.0', id: message.id, result }));
|
|
56
|
-
}
|
|
57
|
-
async notify(method, ...params) {
|
|
58
|
-
await this.send(JSON.stringify({ jsonrpc: '2.0', method, params }));
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=JSONRPCServer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JSONRPCServer.js","sourceRoot":"","sources":["../../src/models/JSONRPCServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export function isWorkflowWaiting(result) {
|
|
2
|
-
if (typeof result !== 'object')
|
|
3
|
-
return false;
|
|
4
|
-
if (result === null)
|
|
5
|
-
return false;
|
|
6
|
-
if (!('isWaiting' in result))
|
|
7
|
-
return false;
|
|
8
|
-
if (!('id' in result))
|
|
9
|
-
return false;
|
|
10
|
-
return result.isWaiting === true && typeof result.id === 'string';
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=is-workflow-waiting.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"is-workflow-waiting.js","sourceRoot":"","sources":["../../src/tools/is-workflow-waiting.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAC/B,MAAe;IAEf,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAE5C,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IAEjC,IAAI,CAAC,CAAC,WAAW,IAAI,MAAM,CAAC;QAAE,OAAO,KAAK,CAAA;IAE1C,IAAI,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC;QAAE,OAAO,KAAK,CAAA;IAEnC,OAAO,MAAM,CAAC,SAAS,KAAK,IAAI,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAA;AACnE,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { Binary } from '@t4h.framework/core';
|
|
2
|
-
import { JSONCodec, JSONCodecKind } from '../models/JSONCodec.js';
|
|
3
|
-
import { JSONCodecKindFrameworkSerializableClass as Kind } from '../models/JSONCodecKindFrameworkSerializableClass.js';
|
|
4
|
-
export declare const jsonCodec: JSONCodec<[JSONCodecKind<"date", string, Date, {}, {}>, JSONCodecKind<"binary", {
|
|
5
|
-
path: string;
|
|
6
|
-
contentType: string;
|
|
7
|
-
contentLength: number;
|
|
8
|
-
}, Binary, {}, {}>, Kind<"orm", import("@t4h.framework/core").SerializableClass>, Kind<"http:body", import("@t4h.framework/core").SerializableClass>, Kind<"oauth2:client-credentials-grant", import("@t4h.framework/core").SerializableClass>, Kind<"oauth2:grant-resource-owner-password", import("@t4h.framework/core").SerializableClass>]>;
|
package/dist/tools/json-codec.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Binary } from '@t4h.framework/core';
|
|
2
|
-
import { Body, OAuth2ClientCredentials, OAuth2GrantResourceOwnerPassword, } from '@t4h.framework/http';
|
|
3
|
-
import { ORM } from '@t4h.framework/orm';
|
|
4
|
-
import { DevServerFileBinary } from '../dev-runtime/models/DevServerFileBinary.js';
|
|
5
|
-
import { JSONCodec, JSONCodecKind } from '../models/JSONCodec.js';
|
|
6
|
-
import { JSONCodecKindFrameworkSerializableClass as Kind } from '../models/JSONCodecKindFrameworkSerializableClass.js';
|
|
7
|
-
// interface FileBinaryParseOptions {
|
|
8
|
-
// fileBinaryToStream: (fileBinary: FileBinary) => Readable | Promise<Readable>
|
|
9
|
-
// }
|
|
10
|
-
const jsonDateKind = new JSONCodecKind('date', value => value instanceof Date, (date) => date.toISOString(), (date) => new Date(date));
|
|
11
|
-
const jsonBinaryKind = new JSONCodecKind('binary', value => value instanceof Binary, (binary) => {
|
|
12
|
-
if (!(binary instanceof DevServerFileBinary))
|
|
13
|
-
throw new TypeError('Unsupported binary instance');
|
|
14
|
-
return binary.toJSON();
|
|
15
|
-
}, json => DevServerFileBinary.from(json));
|
|
16
|
-
export const jsonCodec = new JSONCodec(jsonDateKind, jsonBinaryKind, new Kind('orm', ORM), new Kind('http:body', Body), new Kind('oauth2:client-credentials-grant', OAuth2ClientCredentials), new Kind('oauth2:grant-resource-owner-password', OAuth2GrantResourceOwnerPassword));
|
|
17
|
-
//# sourceMappingURL=json-codec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"json-codec.js","sourceRoot":"","sources":["../../src/tools/json-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EACL,IAAI,EACJ,uBAAuB,EACvB,gCAAgC,GACjC,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA;AAExC,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAA;AAClF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,EAAE,uCAAuC,IAAI,IAAI,EAAE,MAAM,sDAAsD,CAAA;AAEtH,qCAAqC;AACrC,iFAAiF;AACjF,IAAI;AAEJ,MAAM,YAAY,GAAG,IAAI,aAAa,CACpC,MAAM,EACN,KAAK,CAAC,EAAE,CAAC,KAAK,YAAY,IAAI,EAC9B,CAAC,IAAU,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAClC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CACjC,CAAA;AAED,MAAM,cAAc,GAAG,IAAI,aAAa,CACtC,QAAQ,EACR,KAAK,CAAC,EAAE,CAAC,KAAK,YAAY,MAAM,EAChC,CAAC,MAAc,EAAE,EAAE;IACjB,IAAI,CAAC,CAAC,MAAM,YAAY,mBAAmB,CAAC;QAC1C,MAAM,IAAI,SAAS,CAAC,6BAA6B,CAAC,CAAA;IAEpD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAA;AACxB,CAAC,EACD,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CACvC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,SAAS,CACpC,YAAY,EACZ,cAAc,EACd,IAAI,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EACpB,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAC3B,IAAI,IAAI,CAAC,iCAAiC,EAAE,uBAAuB,CAAC,EACpE,IAAI,IAAI,CACN,sCAAsC,EACtC,gCAAgC,CACjC,CACF,CAAA"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { JSONSchema } from 'json-schema-typed';
|
|
2
|
-
interface JsonSchemaToInquirerQuestionContext {
|
|
3
|
-
key?: string;
|
|
4
|
-
isOptional?: boolean;
|
|
5
|
-
signal?: AbortSignal;
|
|
6
|
-
}
|
|
7
|
-
export declare function jsonSchemaToInquirerQuestion(schema: JSONSchema, context?: JsonSchemaToInquirerQuestionContext): Promise<string | number | Record<string, unknown> | undefined>;
|
|
8
|
-
export declare function jsonSchemaObjectToInquirerQuestion(schema: Exclude<JSONSchema, boolean>, context: JsonSchemaToInquirerQuestionContext): Promise<Record<string, unknown>>;
|
|
9
|
-
export declare function jsonSchemaStringToInquirerQuestion(schema: Exclude<JSONSchema, boolean>, context: JsonSchemaToInquirerQuestionContext): Promise<string>;
|
|
10
|
-
export declare function jsonSchemaNumberToInquirerQuestion(schema: Exclude<JSONSchema, boolean>, context: JsonSchemaToInquirerQuestionContext): Promise<number | undefined>;
|
|
11
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function mkdirOutDirProjectFromTsConfigPathAndJsonPackagePath(tsConfigPath: string, packageJsonPath: string): Promise<string>;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import crypto from 'node:crypto';
|
|
2
|
-
import fs from 'node:fs';
|
|
3
|
-
import path from 'node:path';
|
|
4
|
-
export async function mkdirOutDirProjectFromTsConfigPathAndJsonPackagePath(tsConfigPath, packageJsonPath) {
|
|
5
|
-
const outDir = path.join(tsConfigPath, '..', '.temp', crypto.randomBytes(16).toString('base64url'));
|
|
6
|
-
process.send?.(JSON.stringify({ type: 'outDir', data: outDir }));
|
|
7
|
-
await fs.promises.mkdir(outDir, { recursive: true });
|
|
8
|
-
await fs.promises.copyFile(packageJsonPath, path.join(outDir, 'package.json'));
|
|
9
|
-
return outDir;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=mkdir-out-dir-project-from-ts-config-path-and-json-package-path.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mkdir-out-dir-project-from-ts-config-path-and-json-package-path.js","sourceRoot":"","sources":["../../src/tools/mkdir-out-dir-project-from-ts-config-path-and-json-package-path.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,MAAM,CAAC,KAAK,UAAU,oDAAoD,CACxE,YAAoB,EACpB,eAAuB;IAEvB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CACtB,YAAY,EACZ,IAAI,EACJ,OAAO,EACP,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAC7C,CAAA;IAED,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;IAEhE,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEpD,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAA;IAE9E,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function resolvePackageJsonPath(entrypoint: string): Promise<string>;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import fs from 'node:fs';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
export async function resolvePackageJsonPath(entrypoint) {
|
|
4
|
-
const resolvedEntrypoint = path.resolve(entrypoint);
|
|
5
|
-
const entrypointStats = await fs.promises.stat(resolvedEntrypoint);
|
|
6
|
-
let entrypointPackageJsonPath;
|
|
7
|
-
if (entrypointStats.isDirectory())
|
|
8
|
-
entrypointPackageJsonPath = path.join(resolvedEntrypoint, 'package.json');
|
|
9
|
-
else if (entrypointStats.isFile())
|
|
10
|
-
entrypointPackageJsonPath = resolvedEntrypoint;
|
|
11
|
-
else
|
|
12
|
-
throw new Error(`Entrypoint is not a file or directory: ${resolvedEntrypoint}`);
|
|
13
|
-
try {
|
|
14
|
-
await fs.promises.access(entrypointPackageJsonPath, fs.constants.F_OK);
|
|
15
|
-
}
|
|
16
|
-
catch (error) {
|
|
17
|
-
throw new Error(`Entrypoint package json not found: ${entrypointPackageJsonPath}`, { cause: error });
|
|
18
|
-
}
|
|
19
|
-
return entrypointPackageJsonPath;
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=resolve-package-json-path.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-package-json-path.js","sourceRoot":"","sources":["../../src/tools/resolve-package-json-path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,UAAkB;IAC7D,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IACnD,MAAM,eAAe,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAClE,IAAI,yBAAiC,CAAA;IAErC,IAAI,eAAe,CAAC,WAAW,EAAE;QAC/B,yBAAyB,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAA;SACtE,IAAI,eAAe,CAAC,MAAM,EAAE;QAC/B,yBAAyB,GAAG,kBAAkB,CAAA;;QAE9C,MAAM,IAAI,KAAK,CACb,0CAA0C,kBAAkB,EAAE,CAC/D,CAAA;IAEH,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,yBAAyB,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IACxE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,sCAAsC,yBAAyB,EAAE,EACjE,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAA;IACH,CAAC;IAED,OAAO,yBAAyB,CAAA;AAClC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function resolveTsconfigFromPackageJsonPath(packageJsonPath: string): Promise<string>;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import fs from 'node:fs';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
export async function resolveTsconfigFromPackageJsonPath(packageJsonPath) {
|
|
4
|
-
const entrypointPackageJsonParsedPath = path.parse(packageJsonPath);
|
|
5
|
-
const entrypointTsConfigPath = path.join(entrypointPackageJsonParsedPath.dir, 'tsconfig.json');
|
|
6
|
-
try {
|
|
7
|
-
await fs.promises.access(entrypointTsConfigPath, fs.constants.F_OK);
|
|
8
|
-
}
|
|
9
|
-
catch (error) {
|
|
10
|
-
throw new Error(`Entrypoint tsconfig not found: ${entrypointTsConfigPath}`, { cause: error });
|
|
11
|
-
}
|
|
12
|
-
return entrypointTsConfigPath;
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=resolve-tsconfig-path-from-package-json-path.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-tsconfig-path-from-package-json-path.js","sourceRoot":"","sources":["../../src/tools/resolve-tsconfig-path-from-package-json-path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,eAAuB;IAEvB,MAAM,+BAA+B,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IAEnE,MAAM,sBAAsB,GAAG,IAAI,CAAC,IAAI,CACtC,+BAA+B,CAAC,GAAG,EACnC,eAAe,CAChB,CAAA;IAED,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,sBAAsB,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IACrE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,kCAAkC,sBAAsB,EAAE,EAC1D,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAA;IACH,CAAC;IAED,OAAO,sBAAsB,CAAA;AAC/B,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import ts from 'typescript';
|
|
2
|
-
export type TsBuildWatchHandlers = {
|
|
3
|
-
onSuccess?: (info: {
|
|
4
|
-
outDir?: string;
|
|
5
|
-
}) => void | Promise<void>;
|
|
6
|
-
onFail?: (diagnosticsText: string) => void | Promise<void>;
|
|
7
|
-
onStatus?: (statusText: string) => void;
|
|
8
|
-
};
|
|
9
|
-
export interface TsBuildWatcher {
|
|
10
|
-
close(): void;
|
|
11
|
-
}
|
|
12
|
-
export declare function tsBuildWatch(tsconfigPath: string, override?: ts.CompilerOptions, handlers?: TsBuildWatchHandlers): TsBuildWatcher;
|