nesoi 3.2.8 → 3.3.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/README.md +33 -2
- package/lib/bundler/browser/browser.app.d.ts +32 -0
- package/lib/bundler/browser/browser.app.js +51 -0
- package/lib/bundler/browser/browser.bundler.d.ts +5 -0
- package/lib/bundler/browser/browser.bundler.js +27 -0
- package/lib/bundler/browser/stages/8_replace_nesoi_for_browser_stage.d.ts +13 -0
- package/lib/bundler/browser/stages/8_replace_nesoi_for_browser_stage.js +74 -0
- package/lib/bundler/distributed/distributed.app.config.d.ts +43 -0
- package/lib/{engine/apps → bundler}/distributed/distributed.app.config.js +1 -1
- package/lib/{engine/apps → bundler}/distributed/distributed.app.d.ts +14 -14
- package/lib/{engine/apps → bundler}/distributed/distributed.app.js +8 -3
- package/lib/{compiler/apps/distributed/distributed_compiler.d.ts → bundler/distributed/distributed.bundler.d.ts} +7 -7
- package/lib/{compiler/apps/distributed/distributed_compiler.js → bundler/distributed/distributed.bundler.js} +11 -11
- package/lib/{engine/apps → bundler}/distributed/distributed_node.app.d.ts +14 -20
- package/lib/{engine/apps → bundler}/distributed/distributed_node.app.js +18 -50
- package/lib/bundler/distributed/stages/1_mkdir_stage.d.ts +15 -0
- package/lib/{compiler/apps → bundler}/distributed/stages/1_mkdir_stage.js +6 -6
- package/lib/bundler/distributed/stages/2_build_typescript_stage.d.ts +15 -0
- package/lib/{compiler/apps → bundler}/distributed/stages/2_build_typescript_stage.js +7 -7
- package/lib/bundler/distributed/stages/3_copy_types_stage.d.ts +15 -0
- package/lib/{compiler/apps → bundler}/distributed/stages/3_copy_types_stage.js +7 -7
- package/lib/bundler/distributed/stages/4_dump_modules_stage.d.ts +16 -0
- package/lib/{compiler/apps → bundler}/distributed/stages/4_dump_modules_stage.js +5 -5
- package/lib/{compiler/apps → bundler}/distributed/stages/5_copy_static_stage.js +3 -3
- package/lib/{compiler/apps → bundler}/distributed/stages/6_dump_cli_stage.js +3 -3
- package/lib/{compiler/apps → bundler}/distributed/stages/7_dump_package_json_stage.js +3 -3
- package/lib/{engine/apps → bundler}/monolyth/monolyth.app.d.ts +13 -13
- package/lib/{engine/apps → bundler}/monolyth/monolyth.app.js +13 -10
- package/lib/{compiler/apps/monolyth/monolyth_compiler.d.ts → bundler/monolyth/monolyth.bundler.d.ts} +9 -7
- package/lib/{compiler/apps/monolyth/monolyth_compiler.js → bundler/monolyth/monolyth.bundler.js} +13 -12
- package/lib/bundler/monolyth/stages/1_mkdir_stage.d.ts +15 -0
- package/lib/{compiler/apps → bundler}/monolyth/stages/1_mkdir_stage.js +6 -6
- package/lib/bundler/monolyth/stages/2_build_typescript_stage.d.ts +15 -0
- package/lib/{compiler/apps → bundler}/monolyth/stages/2_build_typescript_stage.js +8 -7
- package/lib/bundler/monolyth/stages/3_copy_types_stage.d.ts +15 -0
- package/lib/{compiler/apps → bundler}/monolyth/stages/3_copy_types_stage.js +7 -7
- package/lib/{compiler/apps → bundler}/monolyth/stages/4_dump_modules_stage.d.ts +4 -4
- package/lib/{compiler/apps → bundler}/monolyth/stages/4_dump_modules_stage.js +29 -16
- package/lib/{compiler/apps → bundler}/monolyth/stages/5_copy_static_stage.d.ts +4 -4
- package/lib/{compiler/apps → bundler}/monolyth/stages/5_copy_static_stage.js +7 -7
- package/lib/bundler/monolyth/stages/6_dump_cli_stage.d.ts +15 -0
- package/lib/{compiler/apps → bundler}/monolyth/stages/6_dump_cli_stage.js +4 -4
- package/lib/{compiler/apps → bundler}/monolyth/stages/7_dump_package_json_stage.d.ts +4 -4
- package/lib/{compiler/apps → bundler}/monolyth/stages/7_dump_package_json_stage.js +13 -10
- package/lib/compiler/compiler.d.ts +1 -6
- package/lib/compiler/compiler.js +1 -1
- package/lib/compiler/elements/bucket.element.d.ts +2 -1
- package/lib/compiler/elements/bucket.element.js +16 -21
- package/lib/compiler/elements/cached.element.d.ts +1 -1
- package/lib/compiler/elements/cached.element.js +2 -2
- package/lib/compiler/elements/constants.element.d.ts +1 -1
- package/lib/compiler/elements/constants.element.js +2 -0
- package/lib/compiler/elements/controller.element.js +3 -3
- package/lib/compiler/elements/element.d.ts +6 -13
- package/lib/compiler/elements/element.js +11 -9
- package/lib/compiler/elements/externals.element.js +2 -2
- package/lib/compiler/elements/job.element.d.ts +1 -1
- package/lib/compiler/elements/job.element.js +1 -1
- package/lib/compiler/elements/machine.element.d.ts +2 -2
- package/lib/compiler/elements/machine.element.js +7 -7
- package/lib/compiler/elements/message.element.d.ts +1 -1
- package/lib/compiler/elements/message.element.js +26 -26
- package/lib/compiler/elements/queue.element.js +1 -1
- package/lib/compiler/elements/resource.element.d.ts +1 -1
- package/lib/compiler/elements/resource.element.js +9 -9
- package/lib/compiler/elements/topic.element.js +1 -1
- package/lib/compiler/error.d.ts +1 -5
- package/lib/compiler/error.js +3 -15
- package/lib/compiler/helpers/dump_helpers.d.ts +1 -1
- package/lib/compiler/helpers/dump_helpers.js +1 -1
- package/lib/compiler/index.d.ts +1 -3
- package/lib/compiler/index.js +15 -7
- package/lib/compiler/module.js +12 -12
- package/lib/compiler/progressive.d.ts +3 -4
- package/lib/compiler/progressive.js +3 -4
- package/lib/compiler/stages/2_treeshake_stage.js +4 -0
- package/lib/compiler/stages/3_extract_ts_stage.js +7 -7
- package/lib/compiler/stages/4_build_schemas_stage.js +3 -16
- package/lib/compiler/stages/6_build_elements_stage.js +1 -1
- package/lib/compiler/stages/7_dump_stage.js +35 -10
- package/lib/compiler/typescript/bridge/extract.js +24 -0
- package/lib/compiler/typescript/bridge/inject.js +18 -3
- package/lib/compiler/typescript/bridge/organize.d.ts +4 -0
- package/lib/compiler/typescript/bridge/organize.js +41 -22
- package/lib/compiler/typescript/error.d.ts +2 -83
- package/lib/compiler/typescript/error.js +6 -219
- package/lib/compiler/typescript/parser.js +3 -3
- package/lib/compiler/typescript/source.d.ts +2 -2
- package/lib/compiler/typescript/transformers/app_inject.transformer.js +13 -4
- package/lib/compiler/typescript/typescript_compiler.d.ts +3 -3
- package/lib/compiler/typescript/typescript_compiler.js +2 -2
- package/lib/elements/blocks/block.builder.d.ts +7 -4
- package/lib/elements/blocks/block.builder.js +24 -13
- package/lib/elements/blocks/block.js +2 -2
- package/lib/elements/blocks/block.schema.d.ts +12 -9
- package/lib/elements/blocks/block.schema.js +2 -2
- package/lib/elements/blocks/job/internal/machine_job.builder.d.ts +6 -5
- package/lib/elements/blocks/job/internal/machine_job.builder.js +3 -3
- package/lib/elements/blocks/job/internal/resource_job.builder.d.ts +11 -10
- package/lib/elements/blocks/job/internal/resource_job.builder.js +9 -6
- package/lib/elements/blocks/job/internal/resource_job.js +3 -6
- package/lib/elements/blocks/job/job.builder.d.ts +5 -5
- package/lib/elements/blocks/job/job.builder.js +7 -7
- package/lib/elements/blocks/job/job.js +1 -1
- package/lib/elements/blocks/job/job.schema.d.ts +5 -5
- package/lib/elements/blocks/job/job.schema.js +3 -3
- package/lib/elements/blocks/machine/machine.builder.d.ts +2 -2
- package/lib/elements/blocks/machine/machine.builder.js +12 -9
- package/lib/elements/blocks/machine/machine.js +7 -7
- package/lib/elements/blocks/machine/machine.schema.d.ts +23 -23
- package/lib/elements/blocks/machine/machine.schema.js +9 -9
- package/lib/elements/blocks/machine/machine_state.builder.d.ts +1 -0
- package/lib/elements/blocks/machine/machine_state.builder.js +31 -29
- package/lib/elements/blocks/machine/machine_transition.builder.d.ts +2 -2
- package/lib/elements/blocks/machine/machine_transition.builder.js +8 -8
- package/lib/elements/blocks/queue/queue.builder.d.ts +3 -3
- package/lib/elements/blocks/queue/queue.builder.js +3 -3
- package/lib/elements/blocks/queue/queue.schema.d.ts +6 -6
- package/lib/elements/blocks/queue/queue.schema.js +3 -3
- package/lib/elements/blocks/resource/resource.builder.d.ts +2 -2
- package/lib/elements/blocks/resource/resource.builder.js +37 -40
- package/lib/elements/blocks/resource/resource.d.ts +2 -2
- package/lib/elements/blocks/resource/resource.js +10 -18
- package/lib/elements/blocks/resource/resource.schema.d.ts +15 -15
- package/lib/elements/blocks/resource/resource.schema.js +8 -8
- package/lib/elements/blocks/topic/topic.builder.d.ts +2 -2
- package/lib/elements/blocks/topic/topic.builder.js +4 -4
- package/lib/elements/blocks/topic/topic.d.ts +2 -2
- package/lib/elements/blocks/topic/topic.js +7 -7
- package/lib/elements/blocks/topic/topic.schema.d.ts +6 -6
- package/lib/elements/blocks/topic/topic.schema.js +3 -3
- package/lib/elements/edge/controller/adapters/cli.controller_adapter.js +1 -1
- package/lib/elements/edge/controller/adapters/controller_adapter.d.ts +2 -2
- package/lib/elements/edge/controller/adapters/controller_adapter.js +2 -2
- package/lib/elements/edge/controller/controller.builder.d.ts +14 -13
- package/lib/elements/edge/controller/controller.builder.js +52 -42
- package/lib/elements/edge/controller/controller.d.ts +3 -3
- package/lib/elements/edge/controller/controller.js +12 -12
- package/lib/elements/edge/controller/controller.schema.d.ts +17 -16
- package/lib/elements/edge/controller/controller.schema.js +11 -11
- package/lib/elements/edge/externals/externals.builder.d.ts +8 -13
- package/lib/elements/edge/externals/externals.builder.js +43 -11
- package/lib/elements/edge/externals/externals.schema.d.ts +8 -7
- package/lib/elements/edge/externals/externals.schema.js +5 -3
- package/lib/elements/entities/bucket/adapters/browserdb.bucket_adapter.d.ts +45 -0
- package/lib/elements/entities/bucket/adapters/browserdb.bucket_adapter.js +164 -0
- package/lib/elements/entities/bucket/adapters/browserdb.service.d.ts +30 -0
- package/lib/elements/entities/bucket/adapters/browserdb.service.js +97 -0
- package/lib/elements/entities/bucket/adapters/bucket_adapter.d.ts +6 -1
- package/lib/elements/entities/bucket/adapters/bucket_adapter.js +7 -6
- package/lib/elements/entities/bucket/adapters/json.bucket_adapter.d.ts +1 -1
- package/lib/elements/entities/bucket/adapters/json.bucket_adapter.js +1 -0
- package/lib/elements/entities/bucket/adapters/memory.bucket_adapter.d.ts +1 -0
- package/lib/elements/entities/bucket/adapters/memory.bucket_adapter.js +14 -13
- package/lib/elements/entities/bucket/adapters/memory.nql.js +41 -35
- package/lib/elements/entities/bucket/bucket.builder.d.ts +6 -8
- package/lib/elements/entities/bucket/bucket.builder.js +19 -34
- package/lib/elements/entities/bucket/bucket.d.ts +2 -2
- package/lib/elements/entities/bucket/bucket.infer.d.ts +5 -5
- package/lib/elements/entities/bucket/bucket.js +24 -22
- package/lib/elements/entities/bucket/bucket.schema.d.ts +3 -3
- package/lib/elements/entities/bucket/bucket.schema.js +2 -2
- package/lib/elements/entities/bucket/cache/bucket_cache.js +14 -2
- package/lib/elements/entities/bucket/graph/bucket_graph.d.ts +3 -3
- package/lib/elements/entities/bucket/graph/bucket_graph.js +102 -30
- package/lib/elements/entities/bucket/graph/bucket_graph.schema.d.ts +3 -3
- package/lib/elements/entities/bucket/graph/bucket_graph_link.builder.d.ts +2 -2
- package/lib/elements/entities/bucket/graph/bucket_graph_link.builder.js +5 -3
- package/lib/elements/entities/bucket/model/bucket_model.builder.d.ts +2 -1
- package/lib/elements/entities/bucket/model/bucket_model.builder.js +2 -2
- package/lib/elements/entities/bucket/model/bucket_model.convert.js +3 -6
- package/lib/elements/entities/bucket/model/bucket_model.d.ts +13 -0
- package/lib/elements/entities/bucket/model/bucket_model.js +93 -0
- package/lib/elements/entities/bucket/model/bucket_model.schema.d.ts +4 -8
- package/lib/elements/entities/bucket/model/bucket_model.schema.js +0 -68
- package/lib/elements/entities/bucket/model/bucket_model_field.builder.d.ts +12 -4
- package/lib/elements/entities/bucket/model/bucket_model_field.builder.js +30 -33
- package/lib/elements/entities/bucket/query/nql.schema.d.ts +1 -1
- package/lib/elements/entities/bucket/query/nql_compiler.d.ts +8 -4
- package/lib/elements/entities/bucket/query/nql_compiler.js +44 -38
- package/lib/elements/entities/bucket/query/nql_engine.d.ts +1 -1
- package/lib/elements/entities/bucket/query/nql_engine.js +5 -2
- package/lib/elements/entities/bucket/view/bucket_view.builder.d.ts +2 -2
- package/lib/elements/entities/bucket/view/bucket_view.js +113 -81
- package/lib/elements/entities/bucket/view/bucket_view_field.builder.d.ts +9 -8
- package/lib/elements/entities/bucket/view/bucket_view_field.builder.js +8 -10
- package/lib/elements/entities/constants/constants.builder.d.ts +3 -3
- package/lib/elements/entities/constants/constants.builder.js +8 -8
- package/lib/elements/entities/constants/constants.schema.d.ts +8 -3
- package/lib/elements/entities/constants/constants.schema.js +7 -2
- package/lib/elements/entities/message/message.infer.d.ts +1 -5
- package/lib/elements/entities/message/message.js +2 -7
- package/lib/elements/entities/message/message.schema.js +1 -1
- package/lib/elements/entities/message/template/message_template.schema.d.ts +7 -5
- package/lib/elements/entities/message/template/message_template_field.builder.d.ts +18 -3
- package/lib/elements/entities/message/template/message_template_field.builder.js +49 -30
- package/lib/elements/entities/message/template/message_template_parser.js +2 -2
- package/lib/engine/{apps → app}/app.config.d.ts +11 -5
- package/lib/engine/{apps → app}/app.config.js +2 -2
- package/lib/engine/{apps → app}/app.d.ts +3 -2
- package/lib/engine/{apps → app}/app.js +3 -1
- package/lib/engine/{apps/distributed → app}/inc/inc.client.js +1 -1
- package/lib/engine/{apps/distributed → app}/inc/inc.server.js +3 -3
- package/lib/engine/{apps/distributed → app}/inc/sandbox.js +1 -1
- package/lib/engine/{apps → app}/inline.app.d.ts +2 -12
- package/lib/engine/{apps → app}/inline.app.js +37 -34
- package/lib/engine/auth/authn.d.ts +10 -12
- package/lib/engine/auth/zero.authn_provider.d.ts +3 -4
- package/lib/engine/auth/zero.authn_provider.js +0 -1
- package/lib/engine/builder.d.ts +28 -0
- package/lib/engine/builder.js +99 -0
- package/lib/engine/cli/cli.js +3 -2
- package/lib/engine/cli/ui.js +1 -0
- package/lib/engine/daemon.d.ts +28 -25
- package/lib/engine/daemon.js +37 -8
- package/lib/engine/data/error.d.ts +37 -3
- package/lib/engine/data/error.js +58 -16
- package/lib/engine/data/file.d.ts +1 -0
- package/lib/engine/data/file.js +4 -0
- package/lib/engine/dependency.d.ts +53 -81
- package/lib/engine/dependency.js +246 -120
- package/lib/engine/module.d.ts +18 -48
- package/lib/engine/module.js +78 -158
- package/lib/engine/space.d.ts +2 -2
- package/lib/engine/space.js +6 -6
- package/lib/engine/transaction/nodes/bucket.trx_node.d.ts +7 -4
- package/lib/engine/transaction/nodes/bucket.trx_node.js +66 -43
- package/lib/engine/transaction/nodes/bucket_query.trx_node.d.ts +10 -4
- package/lib/engine/transaction/nodes/bucket_query.trx_node.js +56 -45
- package/lib/engine/transaction/nodes/external.trx_node.d.ts +15 -0
- package/lib/engine/transaction/nodes/external.trx_node.js +53 -0
- package/lib/engine/transaction/nodes/job.trx_node.d.ts +7 -3
- package/lib/engine/transaction/nodes/job.trx_node.js +49 -29
- package/lib/engine/transaction/nodes/machine.trx_node.js +6 -6
- package/lib/engine/transaction/nodes/queue.trx_node.js +3 -3
- package/lib/engine/transaction/nodes/resource.trx_node.d.ts +7 -4
- package/lib/engine/transaction/nodes/resource.trx_node.js +68 -51
- package/lib/engine/transaction/nodes/topic.trx_node.js +9 -9
- package/lib/engine/transaction/trx.d.ts +15 -12
- package/lib/engine/transaction/trx.js +19 -3
- package/lib/engine/transaction/trx_engine.config.d.ts +4 -4
- package/lib/engine/transaction/trx_engine.d.ts +25 -7
- package/lib/engine/transaction/trx_engine.js +67 -16
- package/lib/engine/transaction/trx_node.d.ts +25 -21
- package/lib/engine/transaction/trx_node.js +99 -57
- package/lib/engine/tree.d.ts +4 -16
- package/lib/engine/tree.js +87 -57
- package/lib/{compiler → engine}/treeshake.d.ts +32 -32
- package/lib/{compiler → engine}/treeshake.js +272 -242
- package/lib/engine/util/console.js +3 -0
- package/lib/engine/util/crypto.d.ts +4 -3
- package/lib/engine/util/crypto.js +15 -5
- package/lib/engine/util/hash.js +5 -0
- package/lib/engine/util/log.d.ts +6 -8
- package/lib/engine/util/log.js +1 -1
- package/lib/engine/util/name_helpers.d.ts +37 -0
- package/lib/{compiler/helpers → engine/util}/name_helpers.js +33 -0
- package/lib/engine/util/parse.d.ts +4 -3
- package/lib/engine/util/parse.js +13 -28
- package/lib/engine/util/path.d.ts +1 -0
- package/lib/engine/util/path.js +14 -0
- package/lib/engine/util/random.d.ts +4 -0
- package/lib/engine/util/random.js +31 -0
- package/lib/engine/util/type.d.ts +8 -0
- package/lib/schema.d.ts +1 -1
- package/package.json +4 -1
- package/tools/joaquin/bucket.js +1 -1
- package/tools/joaquin/job.js +1 -1
- package/tools/joaquin/message.js +1 -1
- package/tools/joaquin/mock.js +2 -1
- package/tsconfig.build.tsbuildinfo +1 -1
- package/lib/compiler/apps/distributed/stages/1_mkdir_stage.d.ts +0 -15
- package/lib/compiler/apps/distributed/stages/2_build_typescript_stage.d.ts +0 -15
- package/lib/compiler/apps/distributed/stages/3_copy_types_stage.d.ts +0 -15
- package/lib/compiler/apps/distributed/stages/4_dump_modules_stage.d.ts +0 -16
- package/lib/compiler/apps/monolyth/stages/1_mkdir_stage.d.ts +0 -15
- package/lib/compiler/apps/monolyth/stages/2_build_typescript_stage.d.ts +0 -15
- package/lib/compiler/apps/monolyth/stages/3_copy_types_stage.d.ts +0 -15
- package/lib/compiler/apps/monolyth/stages/6_dump_cli_stage.d.ts +0 -15
- package/lib/compiler/helpers/name_helpers.d.ts +0 -20
- package/lib/engine/apps/distributed/distributed.app.config.d.ts +0 -44
- package/lib/engine/apps/distributed/elements/distributed_job.d.ts +0 -7
- package/lib/engine/apps/distributed/elements/distributed_job.js +0 -11
- /package/lib/{compiler/apps → bundler}/distributed/stages/5_copy_static_stage.d.ts +0 -0
- /package/lib/{compiler/apps → bundler}/distributed/stages/6_dump_cli_stage.d.ts +0 -0
- /package/lib/{compiler/apps → bundler}/distributed/stages/7_dump_package_json_stage.d.ts +0 -0
- /package/lib/engine/{apps/distributed → app}/inc/inc.client.d.ts +0 -0
- /package/lib/engine/{apps/distributed → app}/inc/inc.server.d.ts +0 -0
- /package/lib/engine/{apps/distributed → app}/inc/sandbox.d.ts +0 -0
- /package/lib/engine/{apps → app}/service.d.ts +0 -0
- /package/lib/engine/{apps → app}/service.js +0 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Builder = void 0;
|
|
4
|
+
const log_1 = require("./util/log");
|
|
5
|
+
const message_builder_1 = require("../elements/entities/message/message.builder");
|
|
6
|
+
const bucket_builder_1 = require("../elements/entities/bucket/bucket.builder");
|
|
7
|
+
const resource_builder_1 = require("../elements/blocks/resource/resource.builder");
|
|
8
|
+
const machine_builder_1 = require("../elements/blocks/machine/machine.builder");
|
|
9
|
+
const job_builder_1 = require("../elements/blocks/job/job.builder");
|
|
10
|
+
const constants_builder_1 = require("../elements/entities/constants/constants.builder");
|
|
11
|
+
const controller_builder_1 = require("../elements/edge/controller/controller.builder");
|
|
12
|
+
const externals_builder_1 = require("../elements/edge/externals/externals.builder");
|
|
13
|
+
const error_1 = require("./data/error");
|
|
14
|
+
const queue_builder_1 = require("../elements/blocks/queue/queue.builder");
|
|
15
|
+
const topic_builder_1 = require("../elements/blocks/topic/topic.builder");
|
|
16
|
+
class Builder {
|
|
17
|
+
// Build Nodes
|
|
18
|
+
/**
|
|
19
|
+
* Build a resolved builder node, then merge the
|
|
20
|
+
* resulting schema(s) to the module.
|
|
21
|
+
* This also merges the resulting inline nodes of building a node.
|
|
22
|
+
*
|
|
23
|
+
* @param node A resolved builder node
|
|
24
|
+
* @param tree A module tree
|
|
25
|
+
*/
|
|
26
|
+
static buildNode(module, node, tree) {
|
|
27
|
+
log_1.Log.trace('builder', 'module', `Building ${module.name}::${(0, log_1.scopeTag)(node.builder.$b, node.builder.name)}`);
|
|
28
|
+
if (node.builder.$b === 'constants') {
|
|
29
|
+
module.schema.constants = constants_builder_1.ConstantsBuilder.build(node);
|
|
30
|
+
}
|
|
31
|
+
else if (node.builder.$b === 'externals') {
|
|
32
|
+
module.schema.externals = externals_builder_1.ExternalsBuilder.build(node, tree);
|
|
33
|
+
}
|
|
34
|
+
else if (node.builder.$b === 'bucket') {
|
|
35
|
+
module.schema.buckets[node.tag.name] = bucket_builder_1.BucketBuilder.build(node, tree);
|
|
36
|
+
}
|
|
37
|
+
else if (node.builder.$b === 'message') {
|
|
38
|
+
module.schema.messages[node.tag.name] = message_builder_1.MessageBuilder.build(node, tree, module.schema);
|
|
39
|
+
}
|
|
40
|
+
else if (node.builder.$b === 'job') {
|
|
41
|
+
const { schema, inlineMessages } = job_builder_1.JobBuilder.build(node, tree, module.schema);
|
|
42
|
+
module.schema.jobs[node.tag.name] = schema;
|
|
43
|
+
this.mergeInlineMessages(module, inlineMessages);
|
|
44
|
+
}
|
|
45
|
+
else if (node.builder.$b === 'resource') {
|
|
46
|
+
const { schema, inlineMessages, inlineJobs } = resource_builder_1.ResourceBuilder.build(node, tree, module.schema);
|
|
47
|
+
module.schema.resources[schema.name] = schema;
|
|
48
|
+
this.mergeInlineMessages(module, inlineMessages);
|
|
49
|
+
this.mergeInlineJobs(module, inlineJobs);
|
|
50
|
+
}
|
|
51
|
+
else if (node.builder.$b === 'machine') {
|
|
52
|
+
const { schema, inlineMessages, inlineJobs } = machine_builder_1.MachineBuilder.build(node, tree, module.schema);
|
|
53
|
+
module.schema.machines[schema.name] = schema;
|
|
54
|
+
this.mergeInlineMessages(module, inlineMessages);
|
|
55
|
+
this.mergeInlineJobs(module, inlineJobs);
|
|
56
|
+
}
|
|
57
|
+
else if (node.builder.$b === 'controller') {
|
|
58
|
+
module.schema.controllers[node.tag.name] = controller_builder_1.ControllerBuilder.build(node);
|
|
59
|
+
}
|
|
60
|
+
else if (node.builder.$b === 'queue') {
|
|
61
|
+
const { schema, inlineMessages } = queue_builder_1.QueueBuilder.build(node, tree, module.schema);
|
|
62
|
+
module.schema.queues[node.tag.name] = schema;
|
|
63
|
+
this.mergeInlineMessages(module, inlineMessages);
|
|
64
|
+
}
|
|
65
|
+
else if (node.builder.$b === 'topic') {
|
|
66
|
+
const { schema, inlineMessages } = topic_builder_1.TopicBuilder.build(node, tree, module.schema);
|
|
67
|
+
module.schema.topics[node.tag.name] = schema;
|
|
68
|
+
this.mergeInlineMessages(module, inlineMessages);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
throw error_1.NesoiError.Module.UnknownBuilderType(module, node.filepath.toString(), node.tag.name, node.builder.$b);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Merge inline message schemas into the module.
|
|
76
|
+
*
|
|
77
|
+
* @param node A resolved builder node
|
|
78
|
+
* @param schemas A dictionary of Message schemas by name
|
|
79
|
+
*/
|
|
80
|
+
static mergeInlineMessages(module, schemas) {
|
|
81
|
+
for (const name in schemas) {
|
|
82
|
+
const $msg = schemas[name];
|
|
83
|
+
module.schema.messages[name] = $msg;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Merge inline job schemas into the module.
|
|
88
|
+
*
|
|
89
|
+
* @param node A resolved builder node
|
|
90
|
+
* @param schemas A dictionary of job schemas by name
|
|
91
|
+
*/
|
|
92
|
+
static mergeInlineJobs(module, schemas) {
|
|
93
|
+
for (const name in schemas) {
|
|
94
|
+
const $job = schemas[name];
|
|
95
|
+
module.schema.jobs[name] = $job;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
exports.Builder = Builder;
|
package/lib/engine/cli/cli.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/* @nesoi:browser ignore-file */
|
|
2
3
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
4
|
if (k2 === undefined) k2 = k;
|
|
4
5
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -46,7 +47,7 @@ const daemon_1 = require("../daemon");
|
|
|
46
47
|
const log_1 = require("../util/log");
|
|
47
48
|
const cli_input_1 = require("./cli_input");
|
|
48
49
|
const shell_1 = __importDefault(require("../util/shell"));
|
|
49
|
-
const
|
|
50
|
+
const random_1 = require("../util/random");
|
|
50
51
|
/**
|
|
51
52
|
* @category Engine
|
|
52
53
|
* @subcategory CLI
|
|
@@ -146,7 +147,7 @@ class CLI {
|
|
|
146
147
|
ui_1.default.error(`Invalid job '${job}'. Expected "module::name"`);
|
|
147
148
|
return;
|
|
148
149
|
}
|
|
149
|
-
const tmpFile = 'job_input__' +
|
|
150
|
+
const tmpFile = 'job_input__' + random_1.Random.bytes(8).toString('hex') + '.js';
|
|
150
151
|
const tmpPath = path.join(process.cwd(), tmpFile);
|
|
151
152
|
fs.writeFileSync(tmpPath, 'export const input = {\n \n}');
|
|
152
153
|
await this.daemon.trx(module).run(async (trx) => {
|
package/lib/engine/cli/ui.js
CHANGED
package/lib/engine/daemon.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { $Module, $Space } from "../elements";
|
|
2
2
|
import { ModuleName } from "../schema";
|
|
3
|
-
import { AnyTrxEngine } from './transaction/trx_engine';
|
|
4
|
-
import { AnyAppConfig } from './
|
|
5
|
-
import { AnyUsers,
|
|
3
|
+
import { AnyTrxEngine, HeldTrxNode } from './transaction/trx_engine';
|
|
4
|
+
import { AnyAppConfig } from './app/app.config';
|
|
5
|
+
import { AnyUsers, AuthRequest } from './auth/authn';
|
|
6
6
|
import { TrxNode } from './transaction/trx_node';
|
|
7
7
|
import { TrxStatus } from './transaction/trx';
|
|
8
|
-
import {
|
|
9
|
-
import { IService } from './
|
|
8
|
+
import { AnyModule } from './module';
|
|
9
|
+
import { IService } from './app/service';
|
|
10
|
+
import { Tag } from './dependency';
|
|
10
11
|
/**
|
|
11
12
|
* A background process running one or more modules,
|
|
12
13
|
* which runs _Transactions_ for the available elements.
|
|
@@ -59,16 +60,6 @@ export declare abstract class Daemon<S extends $Space, Modules extends ModuleNam
|
|
|
59
60
|
* @param services A dictionary of Service by name
|
|
60
61
|
*/
|
|
61
62
|
reload(trxEngines: Record<Modules, AnyTrxEngine>, services: Record<string, any>): void;
|
|
62
|
-
/**
|
|
63
|
-
* Bind the controller of each module to this Daemon.
|
|
64
|
-
* This allows the registered `Controller Adapters` to run
|
|
65
|
-
* transactions on the daemon.
|
|
66
|
-
*/
|
|
67
|
-
protected abstract getSchema(tag: {
|
|
68
|
-
module: keyof S['modules'];
|
|
69
|
-
type: string;
|
|
70
|
-
name: string;
|
|
71
|
-
}): Promise<AnyElementSchema>;
|
|
72
63
|
/**
|
|
73
64
|
* Return a `Daemon` property.
|
|
74
65
|
* This is used to read private properties.
|
|
@@ -91,17 +82,21 @@ export declare abstract class Daemon<S extends $Space, Modules extends ModuleNam
|
|
|
91
82
|
*/
|
|
92
83
|
static getModule<Module extends ModuleName<any>, D extends Daemon<any, Module>>(daemon: D, module: Module): import("./module").Module<any, any>;
|
|
93
84
|
/**
|
|
94
|
-
* Return
|
|
85
|
+
* Return the metadata of a bucket
|
|
95
86
|
*
|
|
96
87
|
* @param daemon A `Daemon` instance
|
|
97
88
|
* @param module A module name
|
|
98
89
|
* @returns The `Module` instance
|
|
99
90
|
*/
|
|
100
|
-
static
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
91
|
+
static getBucketMetadata<Module extends ModuleName<any>, D extends Daemon<any, Module>>(daemon: D, tag: Tag): import("./transaction/trx_engine").BucketMetadata;
|
|
92
|
+
/**
|
|
93
|
+
* Return the metadata of a bucket
|
|
94
|
+
*
|
|
95
|
+
* @param daemon A `Daemon` instance
|
|
96
|
+
* @param module A module name
|
|
97
|
+
* @returns The `Module` instance
|
|
98
|
+
*/
|
|
99
|
+
static getBucketDrive<Module extends ModuleName<any>, D extends Daemon<any, Module>>(daemon: D, tag: Tag): import("../elements/entities/drive/drive_adapter").DriveAdapter | undefined;
|
|
105
100
|
/**
|
|
106
101
|
* Return all modules of the `Daemon`.
|
|
107
102
|
*
|
|
@@ -117,7 +112,7 @@ export declare abstract class Daemon<S extends $Space, Modules extends ModuleNam
|
|
|
117
112
|
*
|
|
118
113
|
* @category Engine
|
|
119
114
|
*/
|
|
120
|
-
export declare class DaemonTrx<S extends $Space, M extends $Module,
|
|
115
|
+
export declare class DaemonTrx<S extends $Space, M extends $Module, AuthUsers extends AnyUsers = {}> {
|
|
121
116
|
private trxEngine;
|
|
122
117
|
/**
|
|
123
118
|
* The authentication request which will be used to
|
|
@@ -129,17 +124,25 @@ export declare class DaemonTrx<S extends $Space, M extends $Module, Authn extend
|
|
|
129
124
|
*/
|
|
130
125
|
constructor(trxEngine: AnyTrxEngine);
|
|
131
126
|
/**
|
|
132
|
-
* Authenticate the transaction with the given credentials.
|
|
127
|
+
* Authenticate/authorize the transaction with the given credentials.
|
|
133
128
|
* You can specify one or more credentials, so the transaction
|
|
134
129
|
* is able to access elements with different authn providers.
|
|
135
130
|
*/
|
|
136
|
-
|
|
131
|
+
auth<Auth extends AuthRequest<keyof S['authnUsers']>>(auth?: Auth): DaemonTrx<S, M, { [K in keyof Auth]: S["authnUsers"][K & keyof S["authnUsers"]]; }>;
|
|
137
132
|
/**
|
|
138
133
|
* Run a method inside the transaction.
|
|
139
134
|
*
|
|
140
135
|
* @param fn A function to execute inside the transaction
|
|
141
136
|
* @returns A `TrxStatus` containing metadata about the transaction and the function response
|
|
142
137
|
*/
|
|
143
|
-
run<Output>(fn: (trx: TrxNode<S, M,
|
|
138
|
+
run<Output>(fn: (trx: TrxNode<S, M, AuthUsers>) => Promise<Output>, id?: string): Promise<TrxStatus<Output>>;
|
|
139
|
+
/**
|
|
140
|
+
* Run a method inside the transaction, and hold it until
|
|
141
|
+
* the external caller decides to commit.
|
|
142
|
+
*
|
|
143
|
+
* @param fn A function to execute inside the transaction
|
|
144
|
+
* @returns A `TrxStatus` containing metadata about the transaction and the function response
|
|
145
|
+
*/
|
|
146
|
+
run_and_hold<Output>(fn: (trx: TrxNode<S, M, AuthUsers>) => Promise<Output>, id?: string): Promise<HeldTrxNode<Output>>;
|
|
144
147
|
}
|
|
145
148
|
export type AnyDaemon = Daemon<any, any>;
|
package/lib/engine/daemon.js
CHANGED
|
@@ -3,7 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.DaemonTrx = exports.Daemon = void 0;
|
|
4
4
|
const log_1 = require("./util/log");
|
|
5
5
|
const error_1 = require("./data/error");
|
|
6
|
+
/* @nesoi:browser ignore-start */
|
|
6
7
|
const cli_1 = require("./cli/cli");
|
|
8
|
+
/* @nesoi:browser ignore-end */
|
|
7
9
|
/**
|
|
8
10
|
* A background process running one or more modules,
|
|
9
11
|
* which runs _Transactions_ for the available elements.
|
|
@@ -44,8 +46,13 @@ class Daemon {
|
|
|
44
46
|
* Run the Nesoi CLI for this Daemon.
|
|
45
47
|
*/
|
|
46
48
|
async cli(cmd) {
|
|
49
|
+
/* @nesoi:browser ignore-start */
|
|
47
50
|
const cli = new cli_1.CLI(this, this.config?.cli);
|
|
48
51
|
await cli.run(cmd);
|
|
52
|
+
/* @nesoi:browser ignore-end */
|
|
53
|
+
/* @nesoi:browser add
|
|
54
|
+
throw new Exception('CLI not supported on Browser');
|
|
55
|
+
*/
|
|
49
56
|
}
|
|
50
57
|
/**
|
|
51
58
|
* Bind the controller of each module to this Daemon.
|
|
@@ -114,14 +121,26 @@ class Daemon {
|
|
|
114
121
|
return daemon.trxEngines[module].getModule();
|
|
115
122
|
}
|
|
116
123
|
/**
|
|
117
|
-
* Return
|
|
124
|
+
* Return the metadata of a bucket
|
|
125
|
+
*
|
|
126
|
+
* @param daemon A `Daemon` instance
|
|
127
|
+
* @param module A module name
|
|
128
|
+
* @returns The `Module` instance
|
|
129
|
+
*/
|
|
130
|
+
static getBucketMetadata(daemon, tag) {
|
|
131
|
+
const trxEngine = daemon.trxEngines[tag.module];
|
|
132
|
+
return trxEngine.getBucketMetadata(tag);
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Return the metadata of a bucket
|
|
118
136
|
*
|
|
119
137
|
* @param daemon A `Daemon` instance
|
|
120
138
|
* @param module A module name
|
|
121
139
|
* @returns The `Module` instance
|
|
122
140
|
*/
|
|
123
|
-
static
|
|
124
|
-
|
|
141
|
+
static getBucketDrive(daemon, tag) {
|
|
142
|
+
const trxEngine = daemon.trxEngines[tag.module];
|
|
143
|
+
return trxEngine.getBucketDrive(tag);
|
|
125
144
|
}
|
|
126
145
|
/**
|
|
127
146
|
* Return all modules of the `Daemon`.
|
|
@@ -150,12 +169,12 @@ class DaemonTrx {
|
|
|
150
169
|
this.trxEngine = trxEngine;
|
|
151
170
|
}
|
|
152
171
|
/**
|
|
153
|
-
* Authenticate the transaction with the given credentials.
|
|
172
|
+
* Authenticate/authorize the transaction with the given credentials.
|
|
154
173
|
* You can specify one or more credentials, so the transaction
|
|
155
174
|
* is able to access elements with different authn providers.
|
|
156
175
|
*/
|
|
157
|
-
|
|
158
|
-
this.authnRequest =
|
|
176
|
+
auth(auth) {
|
|
177
|
+
this.authnRequest = auth;
|
|
159
178
|
return this;
|
|
160
179
|
}
|
|
161
180
|
/**
|
|
@@ -164,8 +183,18 @@ class DaemonTrx {
|
|
|
164
183
|
* @param fn A function to execute inside the transaction
|
|
165
184
|
* @returns A `TrxStatus` containing metadata about the transaction and the function response
|
|
166
185
|
*/
|
|
167
|
-
run(fn) {
|
|
168
|
-
return this.trxEngine.trx(fn, this.authnRequest);
|
|
186
|
+
run(fn, id) {
|
|
187
|
+
return this.trxEngine.trx(fn, id, this.authnRequest);
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Run a method inside the transaction, and hold it until
|
|
191
|
+
* the external caller decides to commit.
|
|
192
|
+
*
|
|
193
|
+
* @param fn A function to execute inside the transaction
|
|
194
|
+
* @returns A `TrxStatus` containing metadata about the transaction and the function response
|
|
195
|
+
*/
|
|
196
|
+
run_and_hold(fn, id) {
|
|
197
|
+
return this.trxEngine.trx_hold(fn, id, this.authnRequest);
|
|
169
198
|
}
|
|
170
199
|
}
|
|
171
200
|
exports.DaemonTrx = DaemonTrx;
|
|
@@ -11,6 +11,27 @@ export declare namespace NesoiError {
|
|
|
11
11
|
toString(): string;
|
|
12
12
|
}
|
|
13
13
|
namespace Builder {
|
|
14
|
+
function UnmetModuleDependency($: {
|
|
15
|
+
from: string;
|
|
16
|
+
dep: string;
|
|
17
|
+
}): BaseError;
|
|
18
|
+
function UnmetDependency($: {
|
|
19
|
+
from: string;
|
|
20
|
+
dep: string;
|
|
21
|
+
}): BaseError;
|
|
22
|
+
function UnmetDependencyEnum($: {
|
|
23
|
+
from: string;
|
|
24
|
+
dep: string;
|
|
25
|
+
}): BaseError;
|
|
26
|
+
function UnmetDependencyValue($: {
|
|
27
|
+
from: string;
|
|
28
|
+
dep: string;
|
|
29
|
+
}): BaseError;
|
|
30
|
+
function NotImportedDependency($: {
|
|
31
|
+
from: string;
|
|
32
|
+
dep: string;
|
|
33
|
+
}): BaseError;
|
|
34
|
+
function CircularDependency($: {}): BaseError;
|
|
14
35
|
namespace Job {
|
|
15
36
|
function NoMethod($: {
|
|
16
37
|
job: string;
|
|
@@ -35,6 +56,10 @@ export declare namespace NesoiError {
|
|
|
35
56
|
function CustomInputRequiresPrepare(resource: string): BaseError;
|
|
36
57
|
}
|
|
37
58
|
}
|
|
59
|
+
namespace Space {
|
|
60
|
+
function DirectoryDoesntExists(dir: string): BaseError;
|
|
61
|
+
function NoModulesFolder(): BaseError;
|
|
62
|
+
}
|
|
38
63
|
namespace App {
|
|
39
64
|
function ModuleNotFound(module: string): BaseError;
|
|
40
65
|
}
|
|
@@ -50,15 +75,17 @@ export declare namespace NesoiError {
|
|
|
50
75
|
function InlineMessageNotFoundOnMerge(msg: string): BaseError;
|
|
51
76
|
function InlineJobNotFoundOnMerge(job: string): BaseError;
|
|
52
77
|
}
|
|
53
|
-
namespace
|
|
78
|
+
namespace Auth {
|
|
54
79
|
function NoProvidersRegisteredForModule(module: string): BaseError;
|
|
55
80
|
function NoProviderRegisteredForModule(module: string, provider: string): BaseError;
|
|
56
|
-
function NoUsersAuthenticatedForTrxNode(globalId: string): BaseError;
|
|
57
81
|
}
|
|
58
82
|
namespace Trx {
|
|
83
|
+
function DaemonNotFound(module: string): BaseError;
|
|
59
84
|
function ModuleNotFound(module: string): BaseError;
|
|
60
85
|
function NodeNotFound(node: string, trx: string): BaseError;
|
|
61
|
-
function
|
|
86
|
+
function Unauthorized($: {
|
|
87
|
+
providers: string[];
|
|
88
|
+
}): BaseError;
|
|
62
89
|
}
|
|
63
90
|
namespace Bucket {
|
|
64
91
|
function InvalidId($: {
|
|
@@ -124,6 +151,13 @@ export declare namespace NesoiError {
|
|
|
124
151
|
index: (string | number)[];
|
|
125
152
|
}): BaseError;
|
|
126
153
|
}
|
|
154
|
+
namespace Model {
|
|
155
|
+
function InvalidEnum($: {
|
|
156
|
+
bucket: string;
|
|
157
|
+
value: string;
|
|
158
|
+
options: string[];
|
|
159
|
+
}): BaseError;
|
|
160
|
+
}
|
|
127
161
|
namespace Drive {
|
|
128
162
|
function NoAdapter($: {
|
|
129
163
|
bucket: string;
|
package/lib/engine/data/error.js
CHANGED
|
@@ -25,6 +25,30 @@ var NesoiError;
|
|
|
25
25
|
})(Status || (Status = {}));
|
|
26
26
|
let Builder;
|
|
27
27
|
(function (Builder) {
|
|
28
|
+
function UnmetModuleDependency($) {
|
|
29
|
+
return new BaseError('Builder.UnmetModuleDependency', `Unment module dependency '${$.dep}' while building '${$.from}'.`, Status.INTERNAL_ERROR, $);
|
|
30
|
+
}
|
|
31
|
+
Builder.UnmetModuleDependency = UnmetModuleDependency;
|
|
32
|
+
function UnmetDependency($) {
|
|
33
|
+
return new BaseError('Builder.UnmetDependency', `Unment dependency '${$.dep}' while building '${$.from}'.`, Status.INTERNAL_ERROR, $);
|
|
34
|
+
}
|
|
35
|
+
Builder.UnmetDependency = UnmetDependency;
|
|
36
|
+
function UnmetDependencyEnum($) {
|
|
37
|
+
return new BaseError('Builder.UnmetDependencyEnum', `Unment dependency enum '${$.dep}' while building '${$.from}'.`, Status.INTERNAL_ERROR, $);
|
|
38
|
+
}
|
|
39
|
+
Builder.UnmetDependencyEnum = UnmetDependencyEnum;
|
|
40
|
+
function UnmetDependencyValue($) {
|
|
41
|
+
return new BaseError('Builder.UnmetDependencyValue', `Unment dependency value '${$.dep}' while building '${$.from}'.`, Status.INTERNAL_ERROR, $);
|
|
42
|
+
}
|
|
43
|
+
Builder.UnmetDependencyValue = UnmetDependencyValue;
|
|
44
|
+
function NotImportedDependency($) {
|
|
45
|
+
return new BaseError('Builder.NotImportedDependency', `Dependency '${$.dep}' must be included on '${$.from}' externals.`, Status.INTERNAL_ERROR, $);
|
|
46
|
+
}
|
|
47
|
+
Builder.NotImportedDependency = NotImportedDependency;
|
|
48
|
+
function CircularDependency($) {
|
|
49
|
+
return new BaseError('Builder.CircularDependency', 'Circular dependency found while building.', Status.INTERNAL_ERROR, $);
|
|
50
|
+
}
|
|
51
|
+
Builder.CircularDependency = CircularDependency;
|
|
28
52
|
let Job;
|
|
29
53
|
(function (Job) {
|
|
30
54
|
function NoMethod($) {
|
|
@@ -78,6 +102,17 @@ var NesoiError;
|
|
|
78
102
|
Resource.CustomInputRequiresPrepare = CustomInputRequiresPrepare;
|
|
79
103
|
})(Resource = Builder.Resource || (Builder.Resource = {}));
|
|
80
104
|
})(Builder = NesoiError.Builder || (NesoiError.Builder = {}));
|
|
105
|
+
let Space;
|
|
106
|
+
(function (Space) {
|
|
107
|
+
function DirectoryDoesntExists(dir) {
|
|
108
|
+
return new BaseError('Space.DirectoryDoesntExists', `Directory '${module}' not found on space`, Status.INTERNAL_ERROR);
|
|
109
|
+
}
|
|
110
|
+
Space.DirectoryDoesntExists = DirectoryDoesntExists;
|
|
111
|
+
function NoModulesFolder() {
|
|
112
|
+
return new BaseError('Space.NoModulesFolder', 'No modules folder found on space root', Status.INTERNAL_ERROR);
|
|
113
|
+
}
|
|
114
|
+
Space.NoModulesFolder = NoModulesFolder;
|
|
115
|
+
})(Space = NesoiError.Space || (NesoiError.Space = {}));
|
|
81
116
|
let App;
|
|
82
117
|
(function (App) {
|
|
83
118
|
function ModuleNotFound(module) {
|
|
@@ -128,35 +163,35 @@ var NesoiError;
|
|
|
128
163
|
}
|
|
129
164
|
Module.InlineJobNotFoundOnMerge = InlineJobNotFoundOnMerge;
|
|
130
165
|
})(Module = NesoiError.Module || (NesoiError.Module = {}));
|
|
131
|
-
let
|
|
132
|
-
(function (
|
|
166
|
+
let Auth;
|
|
167
|
+
(function (Auth) {
|
|
133
168
|
function NoProvidersRegisteredForModule(module) {
|
|
134
|
-
return new BaseError('
|
|
169
|
+
return new BaseError('Auth.NoProvidersRegisteredForModule', `No authentication providers registered for module ${module}`, Status.NOT_FOUND);
|
|
135
170
|
}
|
|
136
|
-
|
|
171
|
+
Auth.NoProvidersRegisteredForModule = NoProvidersRegisteredForModule;
|
|
137
172
|
function NoProviderRegisteredForModule(module, provider) {
|
|
138
|
-
return new BaseError('
|
|
139
|
-
}
|
|
140
|
-
Authn.NoProviderRegisteredForModule = NoProviderRegisteredForModule;
|
|
141
|
-
function NoUsersAuthenticatedForTrxNode(globalId) {
|
|
142
|
-
return new BaseError('Authn.NoUsersAuthenticatedForTrxNode', `No users authenticated for trx node ${globalId}`, Status.NOT_FOUND);
|
|
173
|
+
return new BaseError('Auth.NoProviderRegisteredForModule', `No authentication provider named ${provider} registered for module ${module}`, Status.NOT_FOUND);
|
|
143
174
|
}
|
|
144
|
-
|
|
145
|
-
})(
|
|
175
|
+
Auth.NoProviderRegisteredForModule = NoProviderRegisteredForModule;
|
|
176
|
+
})(Auth = NesoiError.Auth || (NesoiError.Auth = {}));
|
|
146
177
|
let Trx;
|
|
147
178
|
(function (Trx) {
|
|
179
|
+
function DaemonNotFound(module) {
|
|
180
|
+
return new BaseError('Trx.DaemonNotFound', `Daemon not found for module ${module}`, Status.INTERNAL_ERROR);
|
|
181
|
+
}
|
|
182
|
+
Trx.DaemonNotFound = DaemonNotFound;
|
|
148
183
|
function ModuleNotFound(module) {
|
|
149
|
-
return new BaseError('Trx.ModuleNotFound', `Module ${module} not found on app`, Status.
|
|
184
|
+
return new BaseError('Trx.ModuleNotFound', `Module ${module} not found on app`, Status.INTERNAL_ERROR);
|
|
150
185
|
}
|
|
151
186
|
Trx.ModuleNotFound = ModuleNotFound;
|
|
152
187
|
function NodeNotFound(node, trx) {
|
|
153
|
-
return new BaseError('Trx.NodeNotFoundOnTrx', `Node ${node} not found on transaction ${trx}`, Status.
|
|
188
|
+
return new BaseError('Trx.NodeNotFoundOnTrx', `Node ${node} not found on transaction ${trx}`, Status.INTERNAL_ERROR);
|
|
154
189
|
}
|
|
155
190
|
Trx.NodeNotFound = NodeNotFound;
|
|
156
|
-
function
|
|
157
|
-
return new BaseError('Trx.
|
|
191
|
+
function Unauthorized($) {
|
|
192
|
+
return new BaseError('Trx.Unauthorized', `Transaction not authenticated/authorized. Providers: ${$.providers}`, Status.UNAUTHORIZED, $);
|
|
158
193
|
}
|
|
159
|
-
Trx.
|
|
194
|
+
Trx.Unauthorized = Unauthorized;
|
|
160
195
|
})(Trx = NesoiError.Trx || (NesoiError.Trx = {}));
|
|
161
196
|
/*
|
|
162
197
|
Elements / Entities
|
|
@@ -252,6 +287,13 @@ var NesoiError;
|
|
|
252
287
|
}
|
|
253
288
|
Fieldpath.InvalidIndexLength = InvalidIndexLength;
|
|
254
289
|
})(Fieldpath = Bucket.Fieldpath || (Bucket.Fieldpath = {}));
|
|
290
|
+
let Model;
|
|
291
|
+
(function (Model) {
|
|
292
|
+
function InvalidEnum($) {
|
|
293
|
+
return new BaseError('Bucket.Model.InvalidEnum', `Value '${$.value}' for bucket '${$.bucket}' doesn't match the options: ${$.options}.`, Status.BAD_REQUEST, $);
|
|
294
|
+
}
|
|
295
|
+
Model.InvalidEnum = InvalidEnum;
|
|
296
|
+
})(Model = Bucket.Model || (Bucket.Model = {}));
|
|
255
297
|
let Drive;
|
|
256
298
|
(function (Drive) {
|
|
257
299
|
function NoAdapter($) {
|
|
@@ -12,6 +12,7 @@ export declare class LocalNesoiFile {
|
|
|
12
12
|
static delete(file: NesoiFile): void;
|
|
13
13
|
static move(file: NesoiFile, to: string): void;
|
|
14
14
|
static read(file: NesoiFile): string;
|
|
15
|
+
static new(filepath: string, content: string, overrides?: Partial<NesoiFile>): NesoiFile;
|
|
15
16
|
}
|
|
16
17
|
/**
|
|
17
18
|
* @category Engine
|
package/lib/engine/data/file.js
CHANGED
|
@@ -50,6 +50,10 @@ class LocalNesoiFile {
|
|
|
50
50
|
static read(file) {
|
|
51
51
|
return fs_1.default.readFileSync(file.filepath).toString();
|
|
52
52
|
}
|
|
53
|
+
static new(filepath, content, overrides) {
|
|
54
|
+
fs_1.default.writeFileSync(filepath, content);
|
|
55
|
+
return this.from(filepath, overrides);
|
|
56
|
+
}
|
|
53
57
|
}
|
|
54
58
|
exports.LocalNesoiFile = LocalNesoiFile;
|
|
55
59
|
/**
|