nesoi 3.0.8 → 3.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/compiler/apps/monolyth/monolyth_compiler.d.ts +1 -1
- package/lib/compiler/apps/monolyth/monolyth_compiler.js +7 -7
- package/lib/compiler/apps/monolyth/stages/1_mkdir_stage.d.ts +3 -0
- package/lib/compiler/apps/monolyth/stages/1_mkdir_stage.js +3 -0
- package/lib/compiler/apps/monolyth/stages/2_build_typescript_stage.d.ts +3 -0
- package/lib/compiler/apps/monolyth/stages/2_build_typescript_stage.js +3 -0
- package/lib/compiler/apps/monolyth/stages/3_copy_types_stage.d.ts +3 -0
- package/lib/compiler/apps/monolyth/stages/3_copy_types_stage.js +3 -0
- package/lib/compiler/apps/monolyth/stages/4_dump_modules_stage.d.ts +3 -0
- package/lib/compiler/apps/monolyth/stages/4_dump_modules_stage.js +3 -0
- package/lib/compiler/apps/monolyth/stages/5_dump_cli_stage.d.ts +3 -0
- package/lib/compiler/apps/monolyth/stages/5_dump_cli_stage.js +3 -0
- package/lib/compiler/apps/monolyth/stages/6_dump_package_json_stage.d.ts +3 -0
- package/lib/compiler/apps/monolyth/stages/6_dump_package_json_stage.js +3 -0
- package/lib/compiler/elements/externals.element.d.ts +1 -1
- package/lib/compiler/module.js +1 -1
- package/lib/compiler/stages/1_scan_stage.d.ts +3 -0
- package/lib/compiler/stages/1_scan_stage.js +3 -0
- package/lib/compiler/stages/2_treeshake_stage.d.ts +3 -0
- package/lib/compiler/stages/2_treeshake_stage.js +3 -0
- package/lib/compiler/stages/3_extract_ts_stage.d.ts +3 -0
- package/lib/compiler/stages/3_extract_ts_stage.js +3 -0
- package/lib/compiler/stages/4_build_schemas_stage.d.ts +3 -0
- package/lib/compiler/stages/4_build_schemas_stage.js +3 -0
- package/lib/compiler/stages/5_inject_ts_stage.d.ts +3 -0
- package/lib/compiler/stages/5_inject_ts_stage.js +3 -0
- package/lib/compiler/stages/6_build_elements_stage.d.ts +3 -0
- package/lib/compiler/stages/6_build_elements_stage.js +3 -0
- package/lib/compiler/stages/7_dump_stage.d.ts +3 -0
- package/lib/compiler/stages/7_dump_stage.js +3 -0
- package/lib/compiler/stages/8_diagnose_stage.d.ts +3 -0
- package/lib/compiler/stages/8_diagnose_stage.js +3 -0
- package/lib/compiler/treeshake.js +3 -3
- package/lib/elements/blocks/block.builder.d.ts +6 -2
- package/lib/elements/blocks/block.builder.js +8 -4
- package/lib/elements/blocks/block.schema.d.ts +4 -0
- package/lib/elements/blocks/block.schema.js +4 -0
- package/lib/elements/blocks/job/internal/machine_job.builder.d.ts +6 -3
- package/lib/elements/blocks/job/internal/machine_job.builder.js +5 -2
- package/lib/elements/blocks/job/internal/machine_job.schema.d.ts +4 -0
- package/lib/elements/blocks/job/internal/machine_job.schema.js +4 -0
- package/lib/elements/blocks/job/internal/resource_job.builder.d.ts +4 -0
- package/lib/elements/blocks/job/internal/resource_job.builder.js +4 -0
- package/lib/elements/blocks/job/internal/resource_job.d.ts +4 -0
- package/lib/elements/blocks/job/internal/resource_job.js +4 -0
- package/lib/elements/blocks/job/internal/resource_job.schema.d.ts +4 -0
- package/lib/elements/blocks/job/internal/resource_job.schema.js +4 -0
- package/lib/elements/blocks/job/job.builder.d.ts +4 -0
- package/lib/elements/blocks/job/job.builder.js +4 -0
- package/lib/elements/blocks/job/job.d.ts +4 -0
- package/lib/elements/blocks/job/job.js +4 -0
- package/lib/elements/blocks/job/job.schema.d.ts +4 -0
- package/lib/elements/blocks/job/job.schema.js +4 -0
- package/lib/elements/blocks/machine/machine.builder.d.ts +4 -0
- package/lib/elements/blocks/machine/machine.builder.js +16 -1
- package/lib/elements/blocks/machine/machine.d.ts +12 -0
- package/lib/elements/blocks/machine/machine.js +12 -0
- package/lib/elements/blocks/machine/machine.schema.d.ts +18 -1
- package/lib/elements/blocks/machine/machine.schema.js +18 -2
- package/lib/elements/blocks/machine/machine_state.builder.d.ts +4 -0
- package/lib/elements/blocks/machine/machine_state.builder.js +4 -0
- package/lib/elements/blocks/machine/machine_transition.builder.d.ts +4 -0
- package/lib/elements/blocks/machine/machine_transition.builder.js +4 -0
- package/lib/elements/blocks/queue/adapters/bucket.queue_adapter.d.ts +4 -0
- package/lib/elements/blocks/queue/adapters/bucket.queue_adapter.js +4 -0
- package/lib/elements/blocks/queue/adapters/queue_adapter.d.ts +4 -0
- package/lib/elements/blocks/queue/adapters/queue_adapter.js +4 -0
- package/lib/elements/blocks/queue/queue.builder.d.ts +4 -0
- package/lib/elements/blocks/queue/queue.builder.js +4 -0
- package/lib/elements/blocks/queue/queue.schema.d.ts +4 -0
- package/lib/elements/blocks/queue/queue.schema.js +4 -0
- package/lib/elements/blocks/resource/resource.builder.d.ts +4 -0
- package/lib/elements/blocks/resource/resource.builder.js +4 -0
- package/lib/elements/blocks/resource/resource.d.ts +4 -0
- package/lib/elements/blocks/resource/resource.js +4 -0
- package/lib/elements/blocks/resource/resource.schema.d.ts +4 -0
- package/lib/elements/blocks/resource/resource.schema.js +4 -0
- package/lib/elements/edge/controller/adapters/cli.controller_adapter.d.ts +4 -0
- package/lib/elements/edge/controller/adapters/cli.controller_adapter.js +4 -0
- package/lib/elements/edge/controller/adapters/controller_adapter.d.ts +7 -1
- package/lib/elements/edge/controller/adapters/controller_adapter.js +6 -1
- package/lib/elements/edge/controller/controller.builder.d.ts +16 -0
- package/lib/elements/edge/controller/controller.builder.js +16 -0
- package/lib/elements/edge/controller/controller.config.d.ts +3 -2
- package/lib/elements/edge/controller/controller.d.ts +7 -3
- package/lib/elements/edge/controller/controller.js +7 -3
- package/lib/elements/edge/controller/controller.schema.d.ts +16 -0
- package/lib/elements/edge/controller/controller.schema.js +16 -0
- package/lib/elements/{blocks → edge}/externals/externals.builder.d.ts +4 -0
- package/lib/elements/{blocks → edge}/externals/externals.builder.js +4 -0
- package/lib/elements/{blocks → edge}/externals/externals.schema.d.ts +4 -0
- package/lib/elements/{blocks → edge}/externals/externals.schema.js +4 -0
- package/lib/elements/entities/bucket/adapters/bucket_adapter.d.ts +18 -12
- package/lib/elements/entities/bucket/adapters/bucket_adapter.js +5 -0
- package/lib/elements/entities/bucket/adapters/memory.bucket_adapter.d.ts +4 -0
- package/lib/elements/entities/bucket/adapters/memory.bucket_adapter.js +4 -0
- package/lib/elements/entities/bucket/adapters/memory.nql.d.ts +4 -1
- package/lib/elements/entities/bucket/adapters/memory.nql.js +4 -1
- package/lib/elements/entities/bucket/bucket.builder.d.ts +4 -0
- package/lib/elements/entities/bucket/bucket.builder.js +4 -0
- package/lib/elements/entities/bucket/bucket.config.d.ts +3 -3
- package/lib/elements/entities/bucket/bucket.d.ts +12 -4
- package/lib/elements/entities/bucket/bucket.js +18 -11
- package/lib/elements/entities/bucket/bucket.schema.d.ts +4 -0
- package/lib/elements/entities/bucket/bucket.schema.js +4 -0
- package/lib/elements/entities/bucket/cache/bucket_cache.d.ts +8 -0
- package/lib/elements/entities/bucket/cache/bucket_cache.js +8 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.builder.d.ts +4 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.builder.js +4 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.d.ts +4 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.js +4 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.schema.d.ts +8 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.schema.js +8 -0
- package/lib/elements/entities/bucket/graph/bucket_graph_link.builder.d.ts +8 -0
- package/lib/elements/entities/bucket/graph/bucket_graph_link.builder.js +8 -0
- package/lib/elements/entities/bucket/model/bucket_model.builder.d.ts +4 -0
- package/lib/elements/entities/bucket/model/bucket_model.builder.js +4 -0
- package/lib/elements/entities/bucket/model/bucket_model.convert.d.ts +8 -0
- package/lib/elements/entities/bucket/model/bucket_model.convert.js +8 -0
- package/lib/elements/entities/bucket/model/bucket_model.schema.d.ts +8 -0
- package/lib/elements/entities/bucket/model/bucket_model.schema.js +8 -0
- package/lib/elements/entities/bucket/model/bucket_model_field.builder.d.ts +8 -0
- package/lib/elements/entities/bucket/model/bucket_model_field.builder.js +8 -0
- package/lib/elements/entities/bucket/query/nql_compiler.d.ts +9 -0
- package/lib/elements/entities/bucket/query/nql_compiler.js +9 -0
- package/lib/elements/entities/bucket/query/nql_engine.d.ts +6 -0
- package/lib/elements/entities/bucket/query/nql_engine.js +6 -0
- package/lib/elements/entities/bucket/view/bucket_view.builder.d.ts +4 -0
- package/lib/elements/entities/bucket/view/bucket_view.builder.js +4 -0
- package/lib/elements/entities/bucket/view/bucket_view.d.ts +4 -0
- package/lib/elements/entities/bucket/view/bucket_view.js +10 -2
- package/lib/elements/entities/bucket/view/bucket_view.schema.d.ts +8 -0
- package/lib/elements/entities/bucket/view/bucket_view.schema.js +8 -0
- package/lib/elements/entities/bucket/view/bucket_view_field.builder.d.ts +8 -0
- package/lib/elements/entities/bucket/view/bucket_view_field.builder.js +8 -0
- package/lib/elements/entities/constants/constants.builder.d.ts +21 -6
- package/lib/elements/entities/constants/constants.builder.js +21 -6
- package/lib/elements/entities/constants/constants.d.ts +4 -0
- package/lib/elements/entities/constants/constants.js +4 -0
- package/lib/elements/entities/constants/constants.schema.d.ts +16 -0
- package/lib/elements/entities/constants/constants.schema.js +16 -0
- package/lib/elements/entities/drive/drive_adapter.d.ts +15 -10
- package/lib/elements/entities/drive/drive_adapter.js +5 -2
- package/lib/elements/entities/drive/local.drive_adapter.d.ts +10 -4
- package/lib/elements/entities/drive/local.drive_adapter.js +23 -8
- package/lib/elements/entities/message/message.builder.d.ts +4 -0
- package/lib/elements/entities/message/message.builder.js +4 -0
- package/lib/elements/entities/message/message.d.ts +4 -0
- package/lib/elements/entities/message/message.js +4 -0
- package/lib/elements/entities/message/message.schema.d.ts +4 -0
- package/lib/elements/entities/message/message.schema.js +4 -0
- package/lib/elements/entities/message/message_parser.d.ts +4 -0
- package/lib/elements/entities/message/message_parser.js +4 -0
- package/lib/elements/entities/message/template/message_template.builder.d.ts +4 -0
- package/lib/elements/entities/message/template/message_template.builder.js +4 -0
- package/lib/elements/entities/message/template/message_template.schema.d.ts +9 -0
- package/lib/elements/entities/message/template/message_template.schema.js +25 -0
- package/lib/elements/entities/message/template/message_template_field.builder.d.ts +8 -0
- package/lib/elements/entities/message/template/message_template_field.builder.js +8 -0
- package/lib/elements/index.d.ts +1 -1
- package/lib/elements/index.js +1 -1
- package/lib/engine/apps/app.config.d.ts +15 -11
- package/lib/engine/apps/app.config.js +3 -0
- package/lib/engine/apps/app.d.ts +12 -20
- package/lib/engine/apps/app.js +13 -10
- package/lib/engine/apps/inline.app.d.ts +12 -8
- package/lib/engine/apps/inline.app.js +27 -24
- package/lib/engine/apps/monolyth/monolyth.app.d.ts +13 -5
- package/lib/engine/apps/monolyth/monolyth.app.js +14 -6
- package/lib/engine/apps/service.d.ts +30 -0
- package/lib/engine/apps/service.js +15 -0
- package/lib/engine/auth/authn.d.ts +14 -1
- package/lib/engine/auth/authn.js +4 -0
- package/lib/engine/auth/zero.authn_provider.d.ts +11 -3
- package/lib/engine/auth/zero.authn_provider.js +13 -2
- package/lib/engine/cli/cli.d.ts +8 -2
- package/lib/engine/cli/cli.js +10 -1
- package/lib/engine/cli/cli_adapter.d.ts +11 -1
- package/lib/engine/cli/cli_adapter.js +10 -1
- package/lib/engine/cli/cli_input.d.ts +4 -0
- package/lib/engine/cli/cli_input.js +4 -0
- package/lib/engine/cli/ui.d.ts +14 -2
- package/lib/engine/cli/ui.js +10 -6
- package/lib/engine/daemon.d.ts +96 -9
- package/lib/engine/daemon.js +101 -18
- package/lib/engine/data/date.d.ts +4 -0
- package/lib/engine/data/date.js +4 -0
- package/lib/engine/data/datetime.d.ts +4 -0
- package/lib/engine/data/datetime.js +4 -0
- package/lib/engine/data/decimal.d.ts +4 -0
- package/lib/engine/data/decimal.js +4 -0
- package/lib/engine/data/file.d.ts +23 -23
- package/lib/engine/data/file.js +66 -29
- package/lib/engine/data/json.d.ts +4 -0
- package/lib/engine/data/json.js +4 -0
- package/lib/engine/data/tree.d.ts +4 -0
- package/lib/engine/data/tree.js +4 -0
- package/lib/engine/dependency.d.ts +65 -3
- package/lib/engine/dependency.js +70 -0
- package/lib/engine/module.d.ts +110 -8
- package/lib/engine/module.js +131 -31
- package/lib/engine/space.d.ts +163 -10
- package/lib/engine/space.js +184 -22
- package/lib/engine/transaction/nodes/bucket.trx_node.d.ts +12 -0
- package/lib/engine/transaction/nodes/bucket.trx_node.js +13 -2
- package/lib/engine/transaction/nodes/bucket_query.trx_node.d.ts +4 -0
- package/lib/engine/transaction/nodes/bucket_query.trx_node.js +9 -10
- package/lib/engine/transaction/nodes/job.trx_node.d.ts +4 -0
- package/lib/engine/transaction/nodes/job.trx_node.js +6 -4
- package/lib/engine/transaction/nodes/machine.trx_node.d.ts +4 -0
- package/lib/engine/transaction/nodes/machine.trx_node.js +6 -4
- package/lib/engine/transaction/nodes/queue.trx_node.d.ts +4 -0
- package/lib/engine/transaction/nodes/queue.trx_node.js +5 -2
- package/lib/engine/transaction/nodes/resource.trx_node.d.ts +4 -0
- package/lib/engine/transaction/nodes/resource.trx_node.js +6 -4
- package/lib/engine/transaction/trx.d.ts +14 -4
- package/lib/engine/transaction/trx.js +10 -1
- package/lib/engine/transaction/trx_engine.config.d.ts +2 -2
- package/lib/engine/transaction/trx_engine.d.ts +8 -3
- package/lib/engine/transaction/trx_engine.js +24 -20
- package/lib/engine/transaction/trx_node.d.ts +8 -2
- package/lib/engine/transaction/trx_node.js +17 -1
- package/lib/engine/tree.d.ts +54 -2
- package/lib/engine/tree.js +60 -19
- package/lib/engine/util/mime.d.ts +4 -4
- package/lib/engine/util/mime.js +7 -9
- package/lib/schema.d.ts +2 -2
- package/package.json +2 -3
- package/tools/joaquin/job.js +2 -2
- package/tools/joaquin/message.js +2 -2
- package/tools/joaquin/mock.d.ts +6 -6
- package/tsconfig.build.tsbuildinfo +1 -1
- package/lib/adapters/postgres/src/migrator/bucket.d.ts +0 -20
- package/lib/adapters/postgres/src/migrator/bucket.js +0 -184
- package/lib/adapters/postgres/src/migrator/csv.d.ts +0 -7
- package/lib/adapters/postgres/src/migrator/csv.js +0 -72
- package/lib/adapters/postgres/src/migrator/database.d.ts +0 -37
- package/lib/adapters/postgres/src/migrator/database.js +0 -88
- package/lib/adapters/postgres/src/migrator/index.d.ts +0 -1
- package/lib/adapters/postgres/src/migrator/index.js +0 -5
- package/lib/adapters/postgres/src/migrator/migration.d.ts +0 -57
- package/lib/adapters/postgres/src/migrator/migration.js +0 -203
- package/lib/adapters/postgres/src/migrator/migrator.d.ts +0 -21
- package/lib/adapters/postgres/src/migrator/migrator.js +0 -76
- package/lib/adapters/postgres/src/migrator/runner.d.ts +0 -71
- package/lib/adapters/postgres/src/migrator/runner.js +0 -271
- package/lib/adapters/postgres/src/postgres.bucket_adapter.d.ts +0 -42
- package/lib/adapters/postgres/src/postgres.bucket_adapter.js +0 -294
- package/lib/adapters/postgres/src/postgres.cli.d.ts +0 -66
- package/lib/adapters/postgres/src/postgres.cli.js +0 -184
- package/lib/adapters/postgres/src/postgres.config.d.ts +0 -5
- package/lib/adapters/postgres/src/postgres.config.js +0 -2
- package/lib/adapters/postgres/src/postgres.nql.d.ts +0 -16
- package/lib/adapters/postgres/src/postgres.nql.js +0 -123
- package/lib/adapters/postgres/src/postgres.provider.d.ts +0 -18
- package/lib/adapters/postgres/src/postgres.provider.js +0 -77
- package/lib/adapters/postgres/test/postgres.bucket_adapter.test.d.ts +0 -1
- package/lib/adapters/postgres/test/postgres.bucket_adapter.test.js +0 -210
- package/lib/elements/entities/bucket/adapters/memory.bucket_query copy.d.ts +0 -0
- package/lib/elements/entities/bucket/adapters/memory.bucket_query copy.js +0 -218
- package/lib/elements/entities/bucket/adapters/slow_memory.bucket_adapter.d.ts +0 -0
- package/lib/elements/entities/bucket/adapters/slow_memory.bucket_adapter.js +0 -47
- package/lib/engine/apps/monolyth/monolyth.cli.d.ts +0 -45
- package/lib/engine/apps/monolyth/monolyth.cli.js +0 -362
- package/lib/engine/util/cache.d.ts +0 -6
- package/lib/engine/util/cache.js +0 -20
|
@@ -4,23 +4,28 @@ import { Trx } from './trx';
|
|
|
4
4
|
import { TrxNode, TrxNodeStatus } from './trx_node';
|
|
5
5
|
import { AnyAuthnProviders, AuthnRequest } from '../auth/authn';
|
|
6
6
|
import { TrxEngineConfig } from './trx_engine.config';
|
|
7
|
+
import { IService } from '../apps/service';
|
|
7
8
|
export type TrxEngineOrigin = `app:${string}`;
|
|
9
|
+
/**
|
|
10
|
+
* @category Engine
|
|
11
|
+
* @subcategory Transaction
|
|
12
|
+
*/
|
|
8
13
|
export declare class TrxEngine<S extends $Space, M extends $Module, Authn extends AnyAuthnProviders> {
|
|
9
14
|
private origin;
|
|
10
15
|
private module;
|
|
11
16
|
private authnProviders?;
|
|
12
17
|
private config?;
|
|
13
|
-
private
|
|
18
|
+
private services;
|
|
14
19
|
/**
|
|
15
20
|
* Transaction used to read/write transactions on the adapter
|
|
16
21
|
*/
|
|
17
22
|
private innerTrx;
|
|
18
23
|
private adapter;
|
|
19
|
-
constructor(origin: TrxEngineOrigin, module: Module<S, M>, authnProviders?: Authn | undefined, config?: TrxEngineConfig<S, M, any, any> | undefined,
|
|
24
|
+
constructor(origin: TrxEngineOrigin, module: Module<S, M>, authnProviders?: Authn | undefined, config?: TrxEngineConfig<S, M, any, any> | undefined, services?: Record<string, IService>);
|
|
20
25
|
getModule(): Module<S, M>;
|
|
21
26
|
get(id?: string): Promise<Trx<S, M, any>>;
|
|
22
27
|
trx(fn: (trx: TrxNode<S, M, any>) => Promise<TrxNodeStatus>, authn?: AuthnRequest<keyof Authn>): Promise<import("./trx").TrxStatus<any>>;
|
|
23
|
-
|
|
28
|
+
authenticate(node: TrxNode<S, M, any>, request?: AuthnRequest<keyof Authn>): Promise<void>;
|
|
24
29
|
private commit;
|
|
25
30
|
private rollback;
|
|
26
31
|
}
|
|
@@ -6,17 +6,18 @@ const trx_1 = require("./trx");
|
|
|
6
6
|
const trx_node_1 = require("./trx_node");
|
|
7
7
|
const error_1 = require("../data/error");
|
|
8
8
|
const memory_bucket_adapter_1 = require("../../elements/entities/bucket/adapters/memory.bucket_adapter");
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
/**
|
|
10
|
+
* @category Engine
|
|
11
|
+
* @subcategory Transaction
|
|
12
|
+
*/
|
|
12
13
|
class TrxEngine {
|
|
13
|
-
constructor(origin, module, authnProviders, config,
|
|
14
|
+
constructor(origin, module, authnProviders, config, services = {}) {
|
|
14
15
|
this.origin = origin;
|
|
15
16
|
this.module = module;
|
|
16
17
|
this.authnProviders = authnProviders;
|
|
17
18
|
this.config = config;
|
|
18
|
-
this.
|
|
19
|
-
this.innerTrx = new trx_1.Trx(this.module, `trx:${origin}`);
|
|
19
|
+
this.services = services;
|
|
20
|
+
this.innerTrx = new trx_1.Trx(this, this.module, `trx:${origin}`);
|
|
20
21
|
this.adapter = config?.adapter?.(module.schema) || new memory_bucket_adapter_1.MemoryBucketAdapter({}, {});
|
|
21
22
|
}
|
|
22
23
|
getModule() {
|
|
@@ -25,7 +26,7 @@ class TrxEngine {
|
|
|
25
26
|
async get(id) {
|
|
26
27
|
let trx = undefined;
|
|
27
28
|
if (!id) {
|
|
28
|
-
trx = new trx_1.Trx(this.module, this.origin);
|
|
29
|
+
trx = new trx_1.Trx(this, this.module, this.origin);
|
|
29
30
|
log_1.Log.info('module', this.module.name, `Begin ${(0, log_1.scopeTag)('trx', trx.id)} @ ${(0, log_1.anyScopeTag)(this.origin)}`);
|
|
30
31
|
return this.adapter.create(this.innerTrx.root, trx);
|
|
31
32
|
}
|
|
@@ -36,7 +37,7 @@ class TrxEngine {
|
|
|
36
37
|
}
|
|
37
38
|
else {
|
|
38
39
|
log_1.Log.info('module', this.module.name, `Chain ${(0, log_1.scopeTag)('trx', id)} @ ${(0, log_1.anyScopeTag)(this.origin)}`);
|
|
39
|
-
trx = new trx_1.Trx(this.module, this.origin, undefined, id);
|
|
40
|
+
trx = new trx_1.Trx(this, this.module, this.origin, undefined, id);
|
|
40
41
|
return this.adapter.create(this.innerTrx.root, trx);
|
|
41
42
|
}
|
|
42
43
|
}
|
|
@@ -45,13 +46,10 @@ class TrxEngine {
|
|
|
45
46
|
async trx(fn, authn) {
|
|
46
47
|
const trx = await this.get(undefined);
|
|
47
48
|
try {
|
|
48
|
-
|
|
49
|
-
if (users) {
|
|
50
|
-
trx_node_1.TrxNode.addAuthn(trx.root, authn, users);
|
|
51
|
-
}
|
|
49
|
+
await this.authenticate(trx.root, authn);
|
|
52
50
|
let output;
|
|
53
51
|
if (this.config?.wrap) {
|
|
54
|
-
output = await this.config?.wrap(trx, fn, this.
|
|
52
|
+
output = await this.config?.wrap(trx, fn, this.services);
|
|
55
53
|
}
|
|
56
54
|
else {
|
|
57
55
|
output = await fn(trx.root);
|
|
@@ -64,19 +62,25 @@ class TrxEngine {
|
|
|
64
62
|
return trx.status();
|
|
65
63
|
}
|
|
66
64
|
// authentication
|
|
67
|
-
async authenticate(
|
|
65
|
+
async authenticate(node, request = {}) {
|
|
68
66
|
if (!this.authnProviders) {
|
|
69
67
|
throw error_1.NesoiError.Authn.NoProvidersRegisteredForModule(this.module.name);
|
|
70
68
|
}
|
|
71
69
|
const users = {};
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
70
|
+
const tokens = {};
|
|
71
|
+
for (const providerName in this.authnProviders) {
|
|
72
|
+
const provider = this.authnProviders[providerName];
|
|
73
|
+
const reqToken = request[providerName];
|
|
74
|
+
if (provider.eager || reqToken) {
|
|
75
|
+
if (!provider) {
|
|
76
|
+
throw error_1.NesoiError.Authn.NoProviderRegisteredForModule(this.module.name, providerName);
|
|
77
|
+
}
|
|
78
|
+
const { user, token } = await provider.authenticate({ trx: node, token: reqToken });
|
|
79
|
+
users[providerName] = user;
|
|
80
|
+
tokens[providerName] = token;
|
|
76
81
|
}
|
|
77
|
-
users[provider] = await this.authnProviders[provider].authenticate({ trx, token });
|
|
78
82
|
}
|
|
79
|
-
|
|
83
|
+
trx_node_1.TrxNode.addAuthn(node, tokens, users);
|
|
80
84
|
}
|
|
81
85
|
//
|
|
82
86
|
async commit(trx, output) {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { $Module, $Space } from "../../schema";
|
|
2
|
+
import { NesoiError } from '../data/error';
|
|
2
3
|
import { AnyModule, VirtualModuleDef } from '../module';
|
|
3
4
|
import { AnyTrx } from './trx';
|
|
4
5
|
import { BucketTrxNode } from './nodes/bucket.trx_node';
|
|
@@ -18,10 +19,14 @@ export type TrxNodeStatus = {
|
|
|
18
19
|
action?: string;
|
|
19
20
|
input?: Record<string, any>;
|
|
20
21
|
output?: Record<string, any>;
|
|
21
|
-
error?:
|
|
22
|
+
error?: NesoiError.BaseError;
|
|
22
23
|
nodes: TrxNodeStatus[];
|
|
23
24
|
app: number;
|
|
24
25
|
};
|
|
26
|
+
/**
|
|
27
|
+
* @category Engine
|
|
28
|
+
* @subcategory Transaction
|
|
29
|
+
*/
|
|
25
30
|
export declare class TrxNode<Space extends $Space, M extends $Module, Authn extends AnyUsers> {
|
|
26
31
|
private scope;
|
|
27
32
|
private trx;
|
|
@@ -43,7 +48,7 @@ export declare class TrxNode<Space extends $Space, M extends $Module, Authn exte
|
|
|
43
48
|
} | undefined, id?: string);
|
|
44
49
|
static open(node: AnyTrxNode, action: string, input: Record<string, any>): Promise<void>;
|
|
45
50
|
static ok(node: AnyTrxNode, output?: Record<string, any>): Promise<void>;
|
|
46
|
-
static error(node: AnyTrxNode, error: any): Promise<
|
|
51
|
+
static error(node: AnyTrxNode, error: any): Promise<any>;
|
|
47
52
|
message<Raw extends M['#input']['#raw'], Msg extends $Message = M['messages'][Raw['$'] & keyof M['messages']]>(raw: Raw): Promise<M['#input']['#parsed']>;
|
|
48
53
|
value<K extends keyof M['constants']['values']>(key: K): M["constants"]["values"][K]["value"];
|
|
49
54
|
enum<EnumName extends KeysOfUnion<Space['modules'][keyof Space['modules']]['constants']['enums']>>(name: EnumName): Enum<M['constants']['enums'][EnumName]>;
|
|
@@ -53,6 +58,7 @@ export declare class TrxNode<Space extends $Space, M extends $Module, Authn exte
|
|
|
53
58
|
resource<Name extends keyof M['resources'], Resource extends M['resources'][Name]>(name: Name): ResourceTrxNode<M, Resource>;
|
|
54
59
|
machine<Name extends keyof M['machines'], Machine extends M['machines'][Name]>(name: Name): MachineTrxNode<M, Machine>;
|
|
55
60
|
queue<Name extends keyof M['queues'], Queue extends M['queues'][Name]>(name: Name): QueueTrxNode<M, Queue>;
|
|
61
|
+
authenticate(authnRequest: AuthnRequest<keyof Authn>): Promise<TrxNode<$Space, $Module, Authn>>;
|
|
56
62
|
token<U extends keyof Authn & keyof M['#authn']>(provider: U): M['#authn'][U];
|
|
57
63
|
user<U extends keyof Authn & keyof M['#authn']>(provider: U): M['#authn'][U];
|
|
58
64
|
virtual<T>(def: VirtualModuleDef, fn: ($: AnyTrxNode) => T | Promise<T>): Promise<T>;
|
|
@@ -15,6 +15,10 @@ const datetime_1 = require("../data/datetime");
|
|
|
15
15
|
/*
|
|
16
16
|
Transaction Node
|
|
17
17
|
*/
|
|
18
|
+
/**
|
|
19
|
+
* @category Engine
|
|
20
|
+
* @subcategory Transaction
|
|
21
|
+
*/
|
|
18
22
|
class TrxNode {
|
|
19
23
|
constructor(scope, trx, parent, module, authn, id) {
|
|
20
24
|
this.scope = scope;
|
|
@@ -47,8 +51,15 @@ class TrxNode {
|
|
|
47
51
|
}
|
|
48
52
|
static async error(node, error) {
|
|
49
53
|
node.state = 'error';
|
|
50
|
-
|
|
54
|
+
if (error instanceof error_1.NesoiError.BaseError) {
|
|
55
|
+
error.message = i18n_1.i18n.error(error, node.trx.root.module.daemon);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
error = new error_1.NesoiError.BaseError('UnknownError', error.toString());
|
|
59
|
+
}
|
|
60
|
+
node.error = error;
|
|
51
61
|
node.time.end = datetime_1.NesoiDatetime.now();
|
|
62
|
+
return error;
|
|
52
63
|
}
|
|
53
64
|
// Entities
|
|
54
65
|
async message(raw) {
|
|
@@ -117,6 +128,11 @@ class TrxNode {
|
|
|
117
128
|
return new queue_trx_node_1.QueueTrxNode(this, queue);
|
|
118
129
|
}
|
|
119
130
|
// Authentication
|
|
131
|
+
async authenticate(authnRequest) {
|
|
132
|
+
const newNode = new TrxNode(this.scope, this.trx, this, this.module, this.authn);
|
|
133
|
+
await this.trx.engine.authenticate(newNode, authnRequest);
|
|
134
|
+
return newNode;
|
|
135
|
+
}
|
|
120
136
|
token(provider) {
|
|
121
137
|
if (!this.authn?.tokens) {
|
|
122
138
|
throw error_1.NesoiError.Authn.NoUsersAuthenticatedForTrxNode(this.globalId);
|
package/lib/engine/tree.d.ts
CHANGED
|
@@ -3,32 +3,84 @@ import { ResolvedBuilderNode } from './dependency';
|
|
|
3
3
|
import { AnyModule } from './module';
|
|
4
4
|
import { TreeshakeConfig } from "../compiler/treeshake";
|
|
5
5
|
type TraverseCallback = (node: ResolvedBuilderNode) => Promise<void>;
|
|
6
|
+
/**
|
|
7
|
+
* A tree of module elements which allows building in the correct order.
|
|
8
|
+
*
|
|
9
|
+
* @category Engine
|
|
10
|
+
*/
|
|
6
11
|
export declare class ModuleTree {
|
|
7
12
|
modules: Record<string, AnyModule>;
|
|
8
13
|
config?: TreeshakeConfig | undefined;
|
|
9
14
|
private layers;
|
|
15
|
+
/**
|
|
16
|
+
* @param modules A dictionary of modules by name
|
|
17
|
+
* @param config Optional configuration for the treeshaking process
|
|
18
|
+
*/
|
|
10
19
|
constructor(modules: Record<string, AnyModule>, config?: TreeshakeConfig | undefined);
|
|
20
|
+
/**
|
|
21
|
+
* Build the tree from existing modules on the Space.
|
|
22
|
+
* - Treeshakes each element to identify it's dependencies
|
|
23
|
+
* - Resolves each found dependency forming a tree
|
|
24
|
+
* - Groups tree into layers which can be built in isolation
|
|
25
|
+
*/
|
|
11
26
|
resolve(): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* Read the module elements from files and identify
|
|
29
|
+
* all related nodes.
|
|
30
|
+
*
|
|
31
|
+
* @returns A dictionary of nodes by module name
|
|
32
|
+
*/
|
|
12
33
|
private treeshake;
|
|
13
34
|
/**
|
|
14
|
-
* Each
|
|
35
|
+
* Each element declares it's dependencies as a `$Dependency`.
|
|
15
36
|
* In order to assemble the build layers, it's necessary to
|
|
16
37
|
* resolve them into a graph of `ResolvedBuilderNode`s.
|
|
17
38
|
* This also resolves the inline nodes, to allow merging the schemas
|
|
18
39
|
* of inline nodes on build.
|
|
40
|
+
*
|
|
41
|
+
* @param nodesByModule A dictionary of builder nodes by module name
|
|
42
|
+
* @returns A dictionary of resolved builder nodes
|
|
19
43
|
*/
|
|
20
44
|
private resolveDependencies;
|
|
45
|
+
/**
|
|
46
|
+
* Recursively extract all inline nodes from a resolved builder node.
|
|
47
|
+
*
|
|
48
|
+
* @param node A resolved builder node
|
|
49
|
+
* @returns A list of resolved builder nodes
|
|
50
|
+
*/
|
|
21
51
|
private getAllInlineNodes;
|
|
22
52
|
/**
|
|
23
|
-
*
|
|
53
|
+
* Build a list of layers (a _layer_ is a list of resolved builder nodes),
|
|
54
|
+
* each of which can be separately built, in a specific order, so all
|
|
55
|
+
* the dependencies of a node are built before the node itself.
|
|
56
|
+
*
|
|
57
|
+
* @param nodes A list of resolved builder nodes
|
|
58
|
+
* @returns A list of module tree layers
|
|
24
59
|
*/
|
|
25
60
|
private resolveLayers;
|
|
61
|
+
/**
|
|
62
|
+
* Traverse tree layers and run the callback `fn` for each node of each layer.
|
|
63
|
+
*
|
|
64
|
+
* @param actionAlias Action alias to be logged
|
|
65
|
+
* @param fn Callback to be run for each node
|
|
66
|
+
*/
|
|
26
67
|
traverse(actionAlias: string, fn: TraverseCallback): Promise<void>;
|
|
68
|
+
/**
|
|
69
|
+
* Get schema of a dependency-like object.
|
|
70
|
+
*
|
|
71
|
+
* @param node A dependency-like object
|
|
72
|
+
* @return An element schema
|
|
73
|
+
*/
|
|
27
74
|
getSchema(node: {
|
|
28
75
|
module: string;
|
|
29
76
|
type: BuilderType;
|
|
30
77
|
name: string;
|
|
31
78
|
}): import("../elements").$Message | import("../elements").$Machine | import("../elements").$Bucket | import("../elements").$Constants | import("../elements").$Job | import("../elements").$Externals | import("../elements").$Resource | import("../elements").$Controller;
|
|
79
|
+
/**
|
|
80
|
+
* Return a list of all nodes of all modules on the tree.
|
|
81
|
+
*
|
|
82
|
+
* @returns A list of resolved builder nodes
|
|
83
|
+
*/
|
|
32
84
|
allNodes(): ResolvedBuilderNode[];
|
|
33
85
|
}
|
|
34
86
|
export {};
|
package/lib/engine/tree.js
CHANGED
|
@@ -1,21 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ModuleTree = void 0;
|
|
4
|
+
const dependency_1 = require("./dependency");
|
|
4
5
|
const error_1 = require("../compiler/error");
|
|
5
6
|
const log_1 = require("./util/log");
|
|
6
7
|
const string_1 = require("./util/string");
|
|
7
8
|
const treeshake_1 = require("../compiler/treeshake");
|
|
9
|
+
/**
|
|
10
|
+
* A tree of module elements which allows building in the correct order.
|
|
11
|
+
*
|
|
12
|
+
* @category Engine
|
|
13
|
+
*/
|
|
8
14
|
class ModuleTree {
|
|
15
|
+
/**
|
|
16
|
+
* @param modules A dictionary of modules by name
|
|
17
|
+
* @param config Optional configuration for the treeshaking process
|
|
18
|
+
*/
|
|
9
19
|
constructor(modules, config) {
|
|
10
20
|
this.modules = modules;
|
|
11
21
|
this.config = config;
|
|
12
22
|
this.layers = [];
|
|
13
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* Build the tree from existing modules on the Space.
|
|
26
|
+
* - Treeshakes each element to identify it's dependencies
|
|
27
|
+
* - Resolves each found dependency forming a tree
|
|
28
|
+
* - Groups tree into layers which can be built in isolation
|
|
29
|
+
*/
|
|
14
30
|
async resolve() {
|
|
15
31
|
const nodesByModule = await this.treeshake();
|
|
16
32
|
const resolvedNodes = await this.resolveDependencies(nodesByModule);
|
|
17
33
|
this.layers = this.resolveLayers(resolvedNodes);
|
|
18
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Read the module elements from files and identify
|
|
37
|
+
* all related nodes.
|
|
38
|
+
*
|
|
39
|
+
* @returns A dictionary of nodes by module name
|
|
40
|
+
*/
|
|
19
41
|
async treeshake() {
|
|
20
42
|
log_1.Log.debug('compiler', 'tree', 'Treeshaking');
|
|
21
43
|
const nodesByModule = {};
|
|
@@ -27,11 +49,14 @@ class ModuleTree {
|
|
|
27
49
|
return nodesByModule;
|
|
28
50
|
}
|
|
29
51
|
/**
|
|
30
|
-
* Each
|
|
52
|
+
* Each element declares it's dependencies as a `$Dependency`.
|
|
31
53
|
* In order to assemble the build layers, it's necessary to
|
|
32
54
|
* resolve them into a graph of `ResolvedBuilderNode`s.
|
|
33
55
|
* This also resolves the inline nodes, to allow merging the schemas
|
|
34
56
|
* of inline nodes on build.
|
|
57
|
+
*
|
|
58
|
+
* @param nodesByModule A dictionary of builder nodes by module name
|
|
59
|
+
* @returns A dictionary of resolved builder nodes
|
|
35
60
|
*/
|
|
36
61
|
async resolveDependencies(nodesByModule) {
|
|
37
62
|
log_1.Log.debug('compiler', 'tree', 'Resolving dependencies');
|
|
@@ -123,6 +148,12 @@ class ModuleTree {
|
|
|
123
148
|
});
|
|
124
149
|
return resolvedNodes;
|
|
125
150
|
}
|
|
151
|
+
/**
|
|
152
|
+
* Recursively extract all inline nodes from a resolved builder node.
|
|
153
|
+
*
|
|
154
|
+
* @param node A resolved builder node
|
|
155
|
+
* @returns A list of resolved builder nodes
|
|
156
|
+
*/
|
|
126
157
|
getAllInlineNodes(node) {
|
|
127
158
|
const inlineNodes = [];
|
|
128
159
|
if (node.inlines.message) {
|
|
@@ -139,7 +170,12 @@ class ModuleTree {
|
|
|
139
170
|
return inlineNodes;
|
|
140
171
|
}
|
|
141
172
|
/**
|
|
142
|
-
*
|
|
173
|
+
* Build a list of layers (a _layer_ is a list of resolved builder nodes),
|
|
174
|
+
* each of which can be separately built, in a specific order, so all
|
|
175
|
+
* the dependencies of a node are built before the node itself.
|
|
176
|
+
*
|
|
177
|
+
* @param nodes A list of resolved builder nodes
|
|
178
|
+
* @returns A list of module tree layers
|
|
143
179
|
*/
|
|
144
180
|
resolveLayers(nodes) {
|
|
145
181
|
log_1.Log.debug('compiler', 'tree', 'Resolving Layers');
|
|
@@ -195,6 +231,12 @@ class ModuleTree {
|
|
|
195
231
|
});
|
|
196
232
|
return layers;
|
|
197
233
|
}
|
|
234
|
+
/**
|
|
235
|
+
* Traverse tree layers and run the callback `fn` for each node of each layer.
|
|
236
|
+
*
|
|
237
|
+
* @param actionAlias Action alias to be logged
|
|
238
|
+
* @param fn Callback to be run for each node
|
|
239
|
+
*/
|
|
198
240
|
async traverse(actionAlias, fn) {
|
|
199
241
|
for (let i = 0; i < this.layers.length; i++) {
|
|
200
242
|
const layer = this.layers[i];
|
|
@@ -204,26 +246,25 @@ class ModuleTree {
|
|
|
204
246
|
}
|
|
205
247
|
}
|
|
206
248
|
}
|
|
249
|
+
/**
|
|
250
|
+
* Get schema of a dependency-like object.
|
|
251
|
+
*
|
|
252
|
+
* @param node A dependency-like object
|
|
253
|
+
* @return An element schema
|
|
254
|
+
*/
|
|
207
255
|
getSchema(node) {
|
|
208
256
|
const mod = this.modules[node.module];
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
return mod.schema.buckets[node.name];
|
|
215
|
-
if (node.type === 'message')
|
|
216
|
-
return mod.schema.messages[node.name];
|
|
217
|
-
if (node.type === 'job')
|
|
218
|
-
return mod.schema.jobs[node.name];
|
|
219
|
-
if (node.type === 'resource')
|
|
220
|
-
return mod.schema.resources[node.name];
|
|
221
|
-
if (node.type === 'machine')
|
|
222
|
-
return mod.schema.machines[node.name];
|
|
223
|
-
if (node.type === 'controller')
|
|
224
|
-
return mod.schema.controllers[node.name];
|
|
225
|
-
throw error_1.CompilerError.UnmetDependency('tree', node.name);
|
|
257
|
+
const schema = dependency_1.$Dependency.resolve(mod.schema, node);
|
|
258
|
+
if (!schema) {
|
|
259
|
+
throw error_1.CompilerError.UnmetDependency('tree', node.name);
|
|
260
|
+
}
|
|
261
|
+
return schema;
|
|
226
262
|
}
|
|
263
|
+
/**
|
|
264
|
+
* Return a list of all nodes of all modules on the tree.
|
|
265
|
+
*
|
|
266
|
+
* @returns A list of resolved builder nodes
|
|
267
|
+
*/
|
|
227
268
|
allNodes() {
|
|
228
269
|
const nodes = [];
|
|
229
270
|
for (const layer of this.layers) {
|
package/lib/engine/util/mime.js
CHANGED
|
@@ -1,23 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// Taken from [mime](https://github.com/broofa/mime)
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
4
|
exports.Mime = void 0;
|
|
8
|
-
const path_1 = __importDefault(require("path"));
|
|
9
5
|
class Mime {
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
/**
|
|
7
|
+
* extname without '.'
|
|
8
|
+
*/
|
|
9
|
+
static ofExtname(extname) {
|
|
12
10
|
if (!extname.length)
|
|
13
|
-
return
|
|
11
|
+
return '';
|
|
14
12
|
extname = extname.slice(1);
|
|
15
13
|
for (const type in types) {
|
|
16
14
|
if (types[type].includes(extname)) {
|
|
17
|
-
return
|
|
15
|
+
return type;
|
|
18
16
|
}
|
|
19
17
|
}
|
|
20
|
-
return
|
|
18
|
+
return '';
|
|
21
19
|
}
|
|
22
20
|
}
|
|
23
21
|
exports.Mime = Mime;
|
package/lib/schema.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { $Bucket } from './elements/entities/bucket/bucket.schema';
|
|
|
7
7
|
import { $Job } from './elements/blocks/job/job.schema';
|
|
8
8
|
import { $Resource } from './elements/blocks/resource/resource.schema';
|
|
9
9
|
import { $Queue } from './elements/blocks/queue/queue.schema';
|
|
10
|
-
import { $Externals } from './elements/
|
|
10
|
+
import { $Externals } from './elements/edge/externals/externals.schema';
|
|
11
11
|
export type BuilderType = 'constants' | 'externals' | 'message' | 'bucket' | 'job' | 'resource' | 'machine' | 'controller' | 'queue';
|
|
12
12
|
export type $Space = {
|
|
13
13
|
authnUsers: {
|
|
@@ -44,7 +44,7 @@ export type $Module = {
|
|
|
44
44
|
};
|
|
45
45
|
'#input': $Message;
|
|
46
46
|
'#authn': AnyUsers;
|
|
47
|
-
'#
|
|
47
|
+
'#services': Record<string, any>;
|
|
48
48
|
};
|
|
49
49
|
export type ModuleName<$ extends $Space> = keyof $['modules'];
|
|
50
50
|
export type MessageName<$ extends $Module> = keyof $['messages'];
|
package/package.json
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nesoi",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.10",
|
|
4
4
|
"description": "Declarative framework for data-driven applications",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "git+https://github.com/nesoi-org/nesoi.git"
|
|
8
8
|
},
|
|
9
9
|
"keywords": [
|
|
10
|
-
"nesoi"
|
|
11
|
-
"postgresql"
|
|
10
|
+
"nesoi"
|
|
12
11
|
],
|
|
13
12
|
"author": "Hugo Aboud",
|
|
14
13
|
"license": "MIT",
|
package/tools/joaquin/job.js
CHANGED
|
@@ -34,8 +34,8 @@ function expectJob(def) {
|
|
|
34
34
|
try {
|
|
35
35
|
const status = await promise;
|
|
36
36
|
expect(status.state).toEqual('error');
|
|
37
|
-
expect(status.error)
|
|
38
|
-
.
|
|
37
|
+
expect(status.error?.name)
|
|
38
|
+
.toEqual(errorObj.name);
|
|
39
39
|
}
|
|
40
40
|
catch (e) {
|
|
41
41
|
expect(e.toString())
|
package/tools/joaquin/message.js
CHANGED
|
@@ -33,8 +33,8 @@ function expectMessage(def) {
|
|
|
33
33
|
const status = await promise;
|
|
34
34
|
status.forEach(st => {
|
|
35
35
|
expect(st.state).toEqual('error');
|
|
36
|
-
expect(st.error)
|
|
37
|
-
.
|
|
36
|
+
expect(st.error?.name)
|
|
37
|
+
.toEqual(errorObj.name);
|
|
38
38
|
});
|
|
39
39
|
}
|
|
40
40
|
catch (e) {
|
package/tools/joaquin/mock.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { $Bucket, $Message, $Module, $Space } from "../../
|
|
2
|
-
import { Daemon } from "../../
|
|
3
|
-
import { NesoiDate } from "../../
|
|
4
|
-
import { NesoiDatetime } from "../../
|
|
5
|
-
import { NesoiDecimal } from "../../
|
|
6
|
-
import { DeepPartial } from "../../
|
|
1
|
+
import { $Bucket, $Message, $Module, $Space } from "../../lib/elements";
|
|
2
|
+
import { Daemon } from "../../lib/engine/daemon";
|
|
3
|
+
import { NesoiDate } from "../../lib/engine/data/date";
|
|
4
|
+
import { NesoiDatetime } from "../../lib/engine/data/datetime";
|
|
5
|
+
import { NesoiDecimal } from "../../lib/engine/data/decimal";
|
|
6
|
+
import { DeepPartial } from "../../lib/engine/util/deep";
|
|
7
7
|
export declare class BucketMockObj<$ extends $Bucket, T> {
|
|
8
8
|
private module;
|
|
9
9
|
private bucketName;
|