nesoi 3.0.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/lib/adapters/postgres/src/migrator/database.d.ts +37 -0
- package/lib/adapters/postgres/src/migrator/database.js +88 -0
- package/lib/adapters/postgres/src/migrator/index.d.ts +1 -0
- package/lib/adapters/postgres/src/migrator/index.js +5 -0
- package/lib/adapters/postgres/src/migrator/migration.d.ts +73 -0
- package/lib/adapters/postgres/src/migrator/migration.js +351 -0
- package/lib/adapters/postgres/src/migrator/migrator.d.ts +21 -0
- package/lib/adapters/postgres/src/migrator/migrator.js +73 -0
- package/lib/adapters/postgres/src/migrator/runner.d.ts +61 -0
- package/lib/adapters/postgres/src/migrator/runner.js +202 -0
- package/lib/adapters/postgres/src/postgres.bucket_adapter.d.ts +45 -0
- package/lib/adapters/postgres/src/postgres.bucket_adapter.js +278 -0
- package/lib/adapters/postgres/src/postgres.cli.d.ts +46 -0
- package/lib/adapters/postgres/src/postgres.cli.js +124 -0
- package/lib/adapters/postgres/src/postgres.nql.d.ts +12 -0
- package/lib/adapters/postgres/src/postgres.nql.js +69 -0
- package/lib/adapters/postgres/test/postgres.bucket_adapter.test.d.ts +1 -0
- package/lib/adapters/postgres/test/postgres.bucket_adapter.test.js +173 -0
- package/lib/adapters/postgres/test/postgres.bucket_query.test.d.ts +0 -0
- package/lib/adapters/postgres/test/postgres.bucket_query.test.js +136 -0
- package/lib/compiler/apps/monolyth/monolyth_compiler.d.ts +21 -0
- package/lib/compiler/apps/monolyth/monolyth_compiler.js +95 -0
- package/lib/compiler/apps/monolyth/stages/1_mkdir_stage.d.ts +12 -0
- package/lib/compiler/apps/monolyth/stages/1_mkdir_stage.js +80 -0
- package/lib/compiler/apps/monolyth/stages/2_build_typescript_stage.d.ts +12 -0
- package/lib/compiler/apps/monolyth/stages/2_build_typescript_stage.js +128 -0
- package/lib/compiler/apps/monolyth/stages/3_copy_types_stage.d.ts +12 -0
- package/lib/compiler/apps/monolyth/stages/3_copy_types_stage.js +75 -0
- package/lib/compiler/apps/monolyth/stages/4_dump_modules_stage.d.ts +13 -0
- package/lib/compiler/apps/monolyth/stages/4_dump_modules_stage.js +130 -0
- package/lib/compiler/apps/monolyth/stages/5_dump_cli_stage.d.ts +12 -0
- package/lib/compiler/apps/monolyth/stages/5_dump_cli_stage.js +65 -0
- package/lib/compiler/apps/monolyth/stages/6_dump_package_json_stage.d.ts +12 -0
- package/lib/compiler/apps/monolyth/stages/6_dump_package_json_stage.js +74 -0
- package/lib/compiler/compiler.d.ts +19 -0
- package/lib/compiler/compiler.js +83 -0
- package/lib/compiler/elements/bucket.element.d.ts +23 -0
- package/lib/compiler/elements/bucket.element.js +304 -0
- package/lib/compiler/elements/constants.element.d.ts +9 -0
- package/lib/compiler/elements/constants.element.js +88 -0
- package/lib/compiler/elements/controller.element.d.ts +6 -0
- package/lib/compiler/elements/controller.element.js +22 -0
- package/lib/compiler/elements/element.d.ts +49 -0
- package/lib/compiler/elements/element.js +105 -0
- package/lib/compiler/elements/externals.element.d.ts +19 -0
- package/lib/compiler/elements/externals.element.js +83 -0
- package/lib/compiler/elements/job.element.d.ts +7 -0
- package/lib/compiler/elements/job.element.js +62 -0
- package/lib/compiler/elements/machine.element.d.ts +10 -0
- package/lib/compiler/elements/machine.element.js +98 -0
- package/lib/compiler/elements/message.element.d.ts +9 -0
- package/lib/compiler/elements/message.element.js +175 -0
- package/lib/compiler/elements/queue.element.d.ts +6 -0
- package/lib/compiler/elements/queue.element.js +24 -0
- package/lib/compiler/elements/resource.element.d.ts +7 -0
- package/lib/compiler/elements/resource.element.js +64 -0
- package/lib/compiler/error.d.ts +21 -0
- package/lib/compiler/error.js +57 -0
- package/lib/compiler/helpers/dump_helpers.d.ts +11 -0
- package/lib/compiler/helpers/dump_helpers.js +157 -0
- package/lib/compiler/helpers/name_helpers.d.ts +20 -0
- package/lib/compiler/helpers/name_helpers.js +44 -0
- package/lib/compiler/index.d.ts +2 -0
- package/lib/compiler/index.js +7 -0
- package/lib/compiler/module.d.ts +24 -0
- package/lib/compiler/module.js +122 -0
- package/lib/compiler/stages/1_scan_stage.d.ts +10 -0
- package/lib/compiler/stages/1_scan_stage.js +23 -0
- package/lib/compiler/stages/2_treeshake_stage.d.ts +11 -0
- package/lib/compiler/stages/2_treeshake_stage.js +24 -0
- package/lib/compiler/stages/3_extract_ts_stage.d.ts +10 -0
- package/lib/compiler/stages/3_extract_ts_stage.js +71 -0
- package/lib/compiler/stages/4_build_schemas_stage.d.ts +10 -0
- package/lib/compiler/stages/4_build_schemas_stage.js +25 -0
- package/lib/compiler/stages/5_inject_ts_stage.d.ts +10 -0
- package/lib/compiler/stages/5_inject_ts_stage.js +22 -0
- package/lib/compiler/stages/6_build_elements_stage.d.ts +11 -0
- package/lib/compiler/stages/6_build_elements_stage.js +22 -0
- package/lib/compiler/stages/7_dump_stage.d.ts +14 -0
- package/lib/compiler/stages/7_dump_stage.js +208 -0
- package/lib/compiler/stages/8_diagnose_stage.d.ts +16 -0
- package/lib/compiler/stages/8_diagnose_stage.js +43 -0
- package/lib/compiler/treeshake.d.ts +58 -0
- package/lib/compiler/treeshake.js +424 -0
- package/lib/compiler/typescript/bridge/extract.d.ts +11 -0
- package/lib/compiler/typescript/bridge/extract.js +270 -0
- package/lib/compiler/typescript/bridge/inject.d.ts +10 -0
- package/lib/compiler/typescript/bridge/inject.js +140 -0
- package/lib/compiler/typescript/bridge/organize.d.ts +61 -0
- package/lib/compiler/typescript/bridge/organize.js +258 -0
- package/lib/compiler/typescript/error.d.ts +88 -0
- package/lib/compiler/typescript/error.js +265 -0
- package/lib/compiler/typescript/parser.d.ts +48 -0
- package/lib/compiler/typescript/parser.js +581 -0
- package/lib/compiler/typescript/source.d.ts +12 -0
- package/lib/compiler/typescript/source.js +87 -0
- package/lib/compiler/typescript/transformers/app_inject.transformer.d.ts +2 -0
- package/lib/compiler/typescript/transformers/app_inject.transformer.js +89 -0
- package/lib/compiler/typescript/transformers/replace_import.transformer.d.ts +4 -0
- package/lib/compiler/typescript/transformers/replace_import.transformer.js +102 -0
- package/lib/compiler/typescript/typescript_compiler.d.ts +63 -0
- package/lib/compiler/typescript/typescript_compiler.js +602 -0
- package/lib/elements/blocks/block.builder.d.ts +29 -0
- package/lib/elements/blocks/block.builder.js +87 -0
- package/lib/elements/blocks/block.d.ts +15 -0
- package/lib/elements/blocks/block.js +37 -0
- package/lib/elements/blocks/block.schema.d.ts +23 -0
- package/lib/elements/blocks/block.schema.js +15 -0
- package/lib/elements/blocks/externals/externals.builder.d.ts +30 -0
- package/lib/elements/blocks/externals/externals.builder.js +37 -0
- package/lib/elements/blocks/externals/externals.schema.d.ts +11 -0
- package/lib/elements/blocks/externals/externals.schema.js +19 -0
- package/lib/elements/blocks/job/internal/machine_job.builder.d.ts +52 -0
- package/lib/elements/blocks/job/internal/machine_job.builder.js +74 -0
- package/lib/elements/blocks/job/internal/machine_job.schema.d.ts +5 -0
- package/lib/elements/blocks/job/internal/machine_job.schema.js +10 -0
- package/lib/elements/blocks/job/internal/resource_job.builder.d.ts +109 -0
- package/lib/elements/blocks/job/internal/resource_job.builder.js +146 -0
- package/lib/elements/blocks/job/internal/resource_job.d.ts +14 -0
- package/lib/elements/blocks/job/internal/resource_job.js +30 -0
- package/lib/elements/blocks/job/internal/resource_job.schema.d.ts +11 -0
- package/lib/elements/blocks/job/internal/resource_job.schema.js +15 -0
- package/lib/elements/blocks/job/job.builder.d.ts +118 -0
- package/lib/elements/blocks/job/job.builder.js +137 -0
- package/lib/elements/blocks/job/job.d.ts +13 -0
- package/lib/elements/blocks/job/job.js +40 -0
- package/lib/elements/blocks/job/job.schema.d.ts +26 -0
- package/lib/elements/blocks/job/job.schema.js +20 -0
- package/lib/elements/blocks/machine/machine.builder.d.ts +58 -0
- package/lib/elements/blocks/machine/machine.builder.js +135 -0
- package/lib/elements/blocks/machine/machine.d.ts +86 -0
- package/lib/elements/blocks/machine/machine.js +228 -0
- package/lib/elements/blocks/machine/machine.schema.d.ts +85 -0
- package/lib/elements/blocks/machine/machine.schema.js +64 -0
- package/lib/elements/blocks/machine/machine_state.builder.d.ts +58 -0
- package/lib/elements/blocks/machine/machine_state.builder.js +186 -0
- package/lib/elements/blocks/machine/machine_transition.builder.d.ts +48 -0
- package/lib/elements/blocks/machine/machine_transition.builder.js +98 -0
- package/lib/elements/blocks/queue/adapters/bucket.queue_adapter.d.ts +10 -0
- package/lib/elements/blocks/queue/adapters/bucket.queue_adapter.js +17 -0
- package/lib/elements/blocks/queue/adapters/queue_adapter.d.ts +6 -0
- package/lib/elements/blocks/queue/adapters/queue_adapter.js +6 -0
- package/lib/elements/blocks/queue/queue.builder.d.ts +40 -0
- package/lib/elements/blocks/queue/queue.builder.js +31 -0
- package/lib/elements/blocks/queue/queue.d.ts +9 -0
- package/lib/elements/blocks/queue/queue.js +11 -0
- package/lib/elements/blocks/queue/queue.schema.d.ts +12 -0
- package/lib/elements/blocks/queue/queue.schema.js +17 -0
- package/lib/elements/blocks/resource/resource.builder.d.ts +60 -0
- package/lib/elements/blocks/resource/resource.builder.js +224 -0
- package/lib/elements/blocks/resource/resource.d.ts +48 -0
- package/lib/elements/blocks/resource/resource.js +125 -0
- package/lib/elements/blocks/resource/resource.schema.d.ts +32 -0
- package/lib/elements/blocks/resource/resource.schema.js +30 -0
- package/lib/elements/blocks/resource/resource.types.d.ts +38 -0
- package/lib/elements/blocks/resource/resource.types.js +3 -0
- package/lib/elements/edge/controller/adapters/cli.controller_adapter.d.ts +8 -0
- package/lib/elements/edge/controller/adapters/cli.controller_adapter.js +17 -0
- package/lib/elements/edge/controller/adapters/controller_adapter.d.ts +14 -0
- package/lib/elements/edge/controller/adapters/controller_adapter.js +44 -0
- package/lib/elements/edge/controller/controller.builder.d.ts +78 -0
- package/lib/elements/edge/controller/controller.builder.js +178 -0
- package/lib/elements/edge/controller/controller.config.d.ts +6 -0
- package/lib/elements/edge/controller/controller.config.js +2 -0
- package/lib/elements/edge/controller/controller.d.ts +22 -0
- package/lib/elements/edge/controller/controller.js +41 -0
- package/lib/elements/edge/controller/controller.schema.d.ts +44 -0
- package/lib/elements/edge/controller/controller.schema.js +51 -0
- package/lib/elements/entities/bucket/adapters/bucket_adapter.d.ts +107 -0
- package/lib/elements/entities/bucket/adapters/bucket_adapter.js +41 -0
- package/lib/elements/entities/bucket/adapters/memory.bucket_adapter.d.ts +37 -0
- package/lib/elements/entities/bucket/adapters/memory.bucket_adapter.js +149 -0
- 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 +218 -0
- package/lib/elements/entities/bucket/adapters/memory.nql.d.ts +19 -0
- package/lib/elements/entities/bucket/adapters/memory.nql.js +212 -0
- package/lib/elements/entities/bucket/adapters/slow_memory.bucket_adapter.d.ts +20 -0
- package/lib/elements/entities/bucket/adapters/slow_memory.bucket_adapter.js +31 -0
- package/lib/elements/entities/bucket/bucket.builder.d.ts +61 -0
- package/lib/elements/entities/bucket/bucket.builder.js +130 -0
- package/lib/elements/entities/bucket/bucket.config.d.ts +29 -0
- package/lib/elements/entities/bucket/bucket.config.js +2 -0
- package/lib/elements/entities/bucket/bucket.d.ts +36 -0
- package/lib/elements/entities/bucket/bucket.infer.d.ts +22 -0
- package/lib/elements/entities/bucket/bucket.infer.js +85 -0
- package/lib/elements/entities/bucket/bucket.js +125 -0
- package/lib/elements/entities/bucket/bucket.schema.d.ts +24 -0
- package/lib/elements/entities/bucket/bucket.schema.js +16 -0
- package/lib/elements/entities/bucket/bucket.types.d.ts +32 -0
- package/lib/elements/entities/bucket/bucket.types.js +2 -0
- package/lib/elements/entities/bucket/cache/bucket_cache.d.ts +35 -0
- package/lib/elements/entities/bucket/cache/bucket_cache.js +182 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.builder.d.ts +11 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.builder.js +27 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.d.ts +16 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.infer.d.ts +9 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.infer.js +2 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.js +136 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.schema.d.ts +28 -0
- package/lib/elements/entities/bucket/graph/bucket_graph.schema.js +27 -0
- package/lib/elements/entities/bucket/graph/bucket_graph_link.builder.d.ts +36 -0
- package/lib/elements/entities/bucket/graph/bucket_graph_link.builder.js +56 -0
- package/lib/elements/entities/bucket/model/bucket_model.builder.d.ts +13 -0
- package/lib/elements/entities/bucket/model/bucket_model.builder.js +24 -0
- package/lib/elements/entities/bucket/model/bucket_model.convert.d.ts +5 -0
- package/lib/elements/entities/bucket/model/bucket_model.convert.js +51 -0
- package/lib/elements/entities/bucket/model/bucket_model.infer.d.ts +13 -0
- package/lib/elements/entities/bucket/model/bucket_model.infer.js +2 -0
- package/lib/elements/entities/bucket/model/bucket_model.schema.d.ts +35 -0
- package/lib/elements/entities/bucket/model/bucket_model.schema.js +47 -0
- package/lib/elements/entities/bucket/model/bucket_model_field.builder.d.ts +119 -0
- package/lib/elements/entities/bucket/model/bucket_model_field.builder.js +154 -0
- package/lib/elements/entities/bucket/query/nql.schema.d.ts +140 -0
- package/lib/elements/entities/bucket/query/nql.schema.js +2 -0
- package/lib/elements/entities/bucket/query/nql_compiler.d.ts +44 -0
- package/lib/elements/entities/bucket/query/nql_compiler.js +620 -0
- package/lib/elements/entities/bucket/query/nql_engine.d.ts +16 -0
- package/lib/elements/entities/bucket/query/nql_engine.js +42 -0
- package/lib/elements/entities/bucket/view/bucket_view.builder.d.ts +14 -0
- package/lib/elements/entities/bucket/view/bucket_view.builder.js +24 -0
- package/lib/elements/entities/bucket/view/bucket_view.d.ts +10 -0
- package/lib/elements/entities/bucket/view/bucket_view.js +102 -0
- package/lib/elements/entities/bucket/view/bucket_view.schema.d.ts +55 -0
- package/lib/elements/entities/bucket/view/bucket_view.schema.js +42 -0
- package/lib/elements/entities/bucket/view/bucket_view_field.builder.d.ts +37 -0
- package/lib/elements/entities/bucket/view/bucket_view_field.builder.js +138 -0
- package/lib/elements/entities/constants/constants.builder.d.ts +57 -0
- package/lib/elements/entities/constants/constants.builder.js +116 -0
- package/lib/elements/entities/constants/constants.d.ts +7 -0
- package/lib/elements/entities/constants/constants.js +15 -0
- package/lib/elements/entities/constants/constants.schema.d.ts +51 -0
- package/lib/elements/entities/constants/constants.schema.js +45 -0
- package/lib/elements/entities/message/message.builder.d.ts +33 -0
- package/lib/elements/entities/message/message.builder.js +41 -0
- package/lib/elements/entities/message/message.d.ts +11 -0
- package/lib/elements/entities/message/message.infer.d.ts +63 -0
- package/lib/elements/entities/message/message.infer.js +2 -0
- package/lib/elements/entities/message/message.js +52 -0
- package/lib/elements/entities/message/message.schema.d.ts +15 -0
- package/lib/elements/entities/message/message.schema.js +13 -0
- package/lib/elements/entities/message/message_parser.d.ts +12 -0
- package/lib/elements/entities/message/message_parser.js +112 -0
- package/lib/elements/entities/message/template/message_template.builder.d.ts +14 -0
- package/lib/elements/entities/message/template/message_template.builder.js +20 -0
- package/lib/elements/entities/message/template/message_template.schema.d.ts +57 -0
- package/lib/elements/entities/message/template/message_template.schema.js +28 -0
- package/lib/elements/entities/message/template/message_template_field.builder.d.ts +225 -0
- package/lib/elements/entities/message/template/message_template_field.builder.js +172 -0
- package/lib/elements/entities/message/template/message_template_parser.d.ts +3 -0
- package/lib/elements/entities/message/template/message_template_parser.js +83 -0
- package/lib/elements/index.d.ts +11 -0
- package/lib/elements/index.js +23 -0
- package/lib/engine/apps/app.config.d.ts +49 -0
- package/lib/engine/apps/app.config.js +38 -0
- package/lib/engine/apps/app.d.ts +70 -0
- package/lib/engine/apps/app.js +101 -0
- package/lib/engine/apps/inline.app.d.ts +48 -0
- package/lib/engine/apps/inline.app.js +144 -0
- package/lib/engine/apps/monolyth/monolyth.app.d.ts +20 -0
- package/lib/engine/apps/monolyth/monolyth.app.js +94 -0
- package/lib/engine/apps/monolyth/monolyth.cli.d.ts +45 -0
- package/lib/engine/apps/monolyth/monolyth.cli.js +362 -0
- package/lib/engine/auth/authn.d.ts +18 -0
- package/lib/engine/auth/authn.js +9 -0
- package/lib/engine/auth/zero.authn_provider.d.ts +13 -0
- package/lib/engine/auth/zero.authn_provider.js +13 -0
- package/lib/engine/cli/cli.d.ts +19 -0
- package/lib/engine/cli/cli.js +88 -0
- package/lib/engine/cli/cli_adapter.d.ts +18 -0
- package/lib/engine/cli/cli_adapter.js +61 -0
- package/lib/engine/cli/ui.d.ts +36 -0
- package/lib/engine/cli/ui.js +188 -0
- package/lib/engine/daemon.d.ts +35 -0
- package/lib/engine/daemon.js +66 -0
- package/lib/engine/data/date.d.ts +10 -0
- package/lib/engine/data/date.js +32 -0
- package/lib/engine/data/datetime.d.ts +12 -0
- package/lib/engine/data/datetime.js +31 -0
- package/lib/engine/data/decimal.d.ts +11 -0
- package/lib/engine/data/decimal.js +70 -0
- package/lib/engine/data/error.d.ts +213 -0
- package/lib/engine/data/error.js +386 -0
- package/lib/engine/data/obj.d.ts +16 -0
- package/lib/engine/data/obj.js +5 -0
- package/lib/engine/data/tree.d.ts +17 -0
- package/lib/engine/data/tree.js +111 -0
- package/lib/engine/dependency.d.ts +68 -0
- package/lib/engine/dependency.js +91 -0
- package/lib/engine/module.d.ts +97 -0
- package/lib/engine/module.js +335 -0
- package/lib/engine/space.d.ts +54 -0
- package/lib/engine/space.js +138 -0
- package/lib/engine/transaction/nodes/bucket.trx_node.d.ts +53 -0
- package/lib/engine/transaction/nodes/bucket.trx_node.js +522 -0
- package/lib/engine/transaction/nodes/bucket_query.trx_node.d.ts +17 -0
- package/lib/engine/transaction/nodes/bucket_query.trx_node.js +82 -0
- package/lib/engine/transaction/nodes/job.trx_node.d.ts +13 -0
- package/lib/engine/transaction/nodes/job.trx_node.js +40 -0
- package/lib/engine/transaction/nodes/machine.trx_node.d.ts +12 -0
- package/lib/engine/transaction/nodes/machine.trx_node.js +39 -0
- package/lib/engine/transaction/nodes/queue.trx_node.d.ts +10 -0
- package/lib/engine/transaction/nodes/queue.trx_node.js +24 -0
- package/lib/engine/transaction/nodes/resource.trx_node.d.ts +24 -0
- package/lib/engine/transaction/nodes/resource.trx_node.js +77 -0
- package/lib/engine/transaction/trx.d.ts +50 -0
- package/lib/engine/transaction/trx.js +94 -0
- package/lib/engine/transaction/trx_engine.config.d.ts +15 -0
- package/lib/engine/transaction/trx_engine.config.js +2 -0
- package/lib/engine/transaction/trx_engine.d.ts +27 -0
- package/lib/engine/transaction/trx_engine.js +95 -0
- package/lib/engine/transaction/trx_node.d.ts +61 -0
- package/lib/engine/transaction/trx_node.js +175 -0
- package/lib/engine/tree.d.ts +34 -0
- package/lib/engine/tree.js +237 -0
- package/lib/engine/util/cache.d.ts +6 -0
- package/lib/engine/util/cache.js +20 -0
- package/lib/engine/util/console.d.ts +4 -0
- package/lib/engine/util/console.js +24 -0
- package/lib/engine/util/deep.d.ts +7 -0
- package/lib/engine/util/deep.js +2 -0
- package/lib/engine/util/dotenv.d.ts +15 -0
- package/lib/engine/util/dotenv.js +94 -0
- package/lib/engine/util/i18n.d.ts +5 -0
- package/lib/engine/util/i18n.js +19 -0
- package/lib/engine/util/log.d.ts +17 -0
- package/lib/engine/util/log.js +93 -0
- package/lib/engine/util/parse.d.ts +63 -0
- package/lib/engine/util/parse.js +229 -0
- package/lib/engine/util/promise.d.ts +3 -0
- package/lib/engine/util/promise.js +14 -0
- package/lib/engine/util/shell.d.ts +6 -0
- package/lib/engine/util/shell.js +44 -0
- package/lib/engine/util/string.d.ts +18 -0
- package/lib/engine/util/string.js +25 -0
- package/lib/engine/util/type.d.ts +7 -0
- package/lib/engine/util/type.js +3 -0
- package/lib/schema.d.ts +63 -0
- package/lib/schema.js +2 -0
- package/package.json +22 -0
- package/tools/compile.d.ts +1 -0
- package/tools/compile.js +68 -0
- package/tools/joaquin/job.d.ts +40 -0
- package/tools/joaquin/job.js +47 -0
- package/tools/joaquin/message.d.ts +12 -0
- package/tools/joaquin/message.js +47 -0
- package/tools/joaquin/mock.d.ts +28 -0
- package/tools/joaquin/mock.js +128 -0
- package/tsconfig.build.tsbuildinfo +1 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Log = void 0;
|
|
4
|
+
exports.scopeTag = scopeTag;
|
|
5
|
+
exports.anyScopeTag = anyScopeTag;
|
|
6
|
+
const string_1 = require("./string");
|
|
7
|
+
const datetime_1 = require("../data/datetime");
|
|
8
|
+
const LogLevel = ['off', 'error', 'warn', 'info', 'debug', 'trace'];
|
|
9
|
+
function scopeTag(scope, scope_id) {
|
|
10
|
+
const color = {
|
|
11
|
+
compiler: 'brown',
|
|
12
|
+
trx: 'purple',
|
|
13
|
+
daemon: 'lightcyan',
|
|
14
|
+
app: 'lightcyan',
|
|
15
|
+
module: 'lightcyan',
|
|
16
|
+
layer: 'lightgreen',
|
|
17
|
+
virtual: 'lightgreen',
|
|
18
|
+
constants: 'lightblue',
|
|
19
|
+
externals: 'lightblue',
|
|
20
|
+
message: 'lightblue',
|
|
21
|
+
bucket: 'lightblue',
|
|
22
|
+
job: 'lightblue',
|
|
23
|
+
resource: 'lightblue',
|
|
24
|
+
controller: 'lightblue',
|
|
25
|
+
machine: 'lightblue',
|
|
26
|
+
queue: 'lightblue',
|
|
27
|
+
}[scope] || 'lightgray';
|
|
28
|
+
return (0, string_1.colored)(`${scope}:${scope_id}`, color);
|
|
29
|
+
}
|
|
30
|
+
function anyScopeTag(scopeWithId) {
|
|
31
|
+
const [_, module, type, name] = scopeWithId.match(/(\w+::)?(\w+):?(.+)?/) || [];
|
|
32
|
+
return (module ? module : '') + scopeTag(type, name || '');
|
|
33
|
+
}
|
|
34
|
+
class Log {
|
|
35
|
+
static error(scope, scope_id, message, obj) {
|
|
36
|
+
if (LogLevel.indexOf(Log.level) < 1) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
this.push('error', scope, scope_id, message, obj);
|
|
40
|
+
}
|
|
41
|
+
static warn(scope, scope_id, message, obj) {
|
|
42
|
+
if (LogLevel.indexOf(Log.level) < 2) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
this.push('warn', scope, scope_id, message, obj);
|
|
46
|
+
}
|
|
47
|
+
static info(scope, scope_id, message, obj) {
|
|
48
|
+
if (LogLevel.indexOf(Log.level) < 3) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
this.push('info', scope, scope_id, message, obj);
|
|
52
|
+
}
|
|
53
|
+
static debug(scope, scope_id, message, obj) {
|
|
54
|
+
if (LogLevel.indexOf(Log.level) < 4) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
this.push('debug', scope, scope_id, message, obj);
|
|
58
|
+
}
|
|
59
|
+
static trace(scope, scope_id, message, obj) {
|
|
60
|
+
if (LogLevel.indexOf(Log.level) < 5) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
this.push('trace', scope, scope_id, message, obj);
|
|
64
|
+
}
|
|
65
|
+
static push(level, scope, scope_id, message, obj) {
|
|
66
|
+
const time = (0, string_1.colored)(`${datetime_1.NesoiDatetime.shortNow()}`, 'darkgray');
|
|
67
|
+
const head = scopeTag(scope, scope_id);
|
|
68
|
+
if (level === 'error') {
|
|
69
|
+
console.log(`${time} ${this.l[level]} ${head}\t${(0, string_1.colored)(message, 'lightred')}`);
|
|
70
|
+
if (obj) {
|
|
71
|
+
let text = JSON.stringify(obj, undefined, 2);
|
|
72
|
+
text = text.replace(/\\n/g, '\n');
|
|
73
|
+
console.log((0, string_1.colored)(text, 'red'));
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
console.log(`${time} ${this.l[level]} ${head}\t${message}`);
|
|
78
|
+
if (obj) {
|
|
79
|
+
console.debug(obj);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
exports.Log = Log;
|
|
85
|
+
Log.level = 'warn';
|
|
86
|
+
Log.l = {
|
|
87
|
+
off: (0, string_1.colored)('', 'black'),
|
|
88
|
+
error: (0, string_1.colored)('ERROR', 'lightred'),
|
|
89
|
+
warn: (0, string_1.colored)('WARN', 'yellow'),
|
|
90
|
+
info: (0, string_1.colored)('INFO', 'lightblue'),
|
|
91
|
+
debug: (0, string_1.colored)('DEBUG', 'lightgreen'),
|
|
92
|
+
trace: (0, string_1.colored)('TRACE', 'lightpurple'),
|
|
93
|
+
};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { NesoiDate } from '../data/date';
|
|
2
|
+
import { $MessageTemplateFields } from '../../elements/entities/message/template/message_template.schema';
|
|
3
|
+
import { $Module, BucketName, ViewName } from "../../schema";
|
|
4
|
+
import { AnyTrxNode } from '../transaction/trx_node';
|
|
5
|
+
import { Decimal } from '../data/decimal';
|
|
6
|
+
import { NesoiDatetime } from '../data/datetime';
|
|
7
|
+
export declare function parseBoolean(field: {
|
|
8
|
+
name: string;
|
|
9
|
+
alias: string;
|
|
10
|
+
}, value: any, array: boolean): Promise<boolean | boolean[]>;
|
|
11
|
+
export declare function parseDate(field: {
|
|
12
|
+
name: string;
|
|
13
|
+
alias: string;
|
|
14
|
+
}, value: any, array: boolean): Promise<NesoiDate | NesoiDate[]>;
|
|
15
|
+
export declare function parseDatetime(field: {
|
|
16
|
+
name: string;
|
|
17
|
+
alias: string;
|
|
18
|
+
}, value: any, array: boolean): Promise<NesoiDatetime | NesoiDatetime[]>;
|
|
19
|
+
export declare function parseDecimal(field: {
|
|
20
|
+
name: string;
|
|
21
|
+
alias: string;
|
|
22
|
+
}, value: any, array: boolean): Promise<Decimal | Decimal[]>;
|
|
23
|
+
export declare function parseEnum(raw: Record<string, any>, field: {
|
|
24
|
+
name: string;
|
|
25
|
+
alias: string;
|
|
26
|
+
}, value: any, array: boolean, options: string | readonly string[] | Record<string, any>, trx: AnyTrxNode): Promise<any>;
|
|
27
|
+
export declare function parseFile(field: {
|
|
28
|
+
name: string;
|
|
29
|
+
alias: string;
|
|
30
|
+
}, value: any, array: boolean, options?: {
|
|
31
|
+
maxSize?: number;
|
|
32
|
+
extnames?: string[];
|
|
33
|
+
}): Promise<any>;
|
|
34
|
+
export declare function parseFloat_(field: {
|
|
35
|
+
name: string;
|
|
36
|
+
alias: string;
|
|
37
|
+
}, value: any, array: boolean): Promise<number | number[]>;
|
|
38
|
+
export declare function parseId<M extends $Module, Name extends BucketName<M>, View extends ViewName<M['buckets'][Name]> | undefined>(field: {
|
|
39
|
+
name: string;
|
|
40
|
+
alias: string;
|
|
41
|
+
}, value: any, array: boolean, trx: AnyTrxNode, bucket: Name, view?: View): Promise<unknown>;
|
|
42
|
+
export declare function parseInt_(field: {
|
|
43
|
+
name: string;
|
|
44
|
+
alias: string;
|
|
45
|
+
}, value: any, array: boolean): Promise<number | number[]>;
|
|
46
|
+
export declare function parseString(field: {
|
|
47
|
+
name: string;
|
|
48
|
+
alias: string;
|
|
49
|
+
}, value: any, array: boolean): Promise<string | string[]>;
|
|
50
|
+
export declare function parseStringOrNumber(field: {
|
|
51
|
+
name: string;
|
|
52
|
+
alias: string;
|
|
53
|
+
}, value: any, array: boolean): Promise<string | number | (string | number)[]>;
|
|
54
|
+
export declare function parseDict(field: {
|
|
55
|
+
name: string;
|
|
56
|
+
alias: string;
|
|
57
|
+
children?: $MessageTemplateFields;
|
|
58
|
+
}, value: any, array: boolean, trx: AnyTrxNode, parseFields: (trx: AnyTrxNode, fields: $MessageTemplateFields, obj: Record<string, any>) => Promise<Record<string, any>>): Promise<unknown>;
|
|
59
|
+
export declare function parseObj(field: {
|
|
60
|
+
name: string;
|
|
61
|
+
alias: string;
|
|
62
|
+
children?: $MessageTemplateFields;
|
|
63
|
+
}, value: any, array: boolean, trx: AnyTrxNode, parseFields: (trx: AnyTrxNode, fields: $MessageTemplateFields, obj: Record<string, any>) => Promise<Record<string, any>>): Promise<unknown>;
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseBoolean = parseBoolean;
|
|
4
|
+
exports.parseDate = parseDate;
|
|
5
|
+
exports.parseDatetime = parseDatetime;
|
|
6
|
+
exports.parseDecimal = parseDecimal;
|
|
7
|
+
exports.parseEnum = parseEnum;
|
|
8
|
+
exports.parseFile = parseFile;
|
|
9
|
+
exports.parseFloat_ = parseFloat_;
|
|
10
|
+
exports.parseId = parseId;
|
|
11
|
+
exports.parseInt_ = parseInt_;
|
|
12
|
+
exports.parseString = parseString;
|
|
13
|
+
exports.parseStringOrNumber = parseStringOrNumber;
|
|
14
|
+
exports.parseDict = parseDict;
|
|
15
|
+
exports.parseObj = parseObj;
|
|
16
|
+
const date_1 = require("../data/date");
|
|
17
|
+
const error_1 = require("../data/error");
|
|
18
|
+
const tree_1 = require("../data/tree");
|
|
19
|
+
const decimal_1 = require("../data/decimal");
|
|
20
|
+
const datetime_1 = require("../data/datetime");
|
|
21
|
+
// TODO: check the performance of this wild thing below
|
|
22
|
+
async function parse(type, field, value, array, fn) {
|
|
23
|
+
if (array) {
|
|
24
|
+
if (!Array.isArray(value)) {
|
|
25
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value, type: `${type}[]` });
|
|
26
|
+
}
|
|
27
|
+
const parsed = [];
|
|
28
|
+
for (const v in value) {
|
|
29
|
+
parsed.push(await fn(value[v]));
|
|
30
|
+
}
|
|
31
|
+
return parsed;
|
|
32
|
+
}
|
|
33
|
+
return fn(value);
|
|
34
|
+
}
|
|
35
|
+
function parseBoolean(field, value, array) {
|
|
36
|
+
return parse('boolean', field, value, array, (v) => {
|
|
37
|
+
if (v === 'true' || v === 1) {
|
|
38
|
+
return true;
|
|
39
|
+
}
|
|
40
|
+
if (v === 'false' || v === 0) {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
if (typeof v === 'boolean') {
|
|
44
|
+
return v;
|
|
45
|
+
}
|
|
46
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'boolean' });
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
function parseDate(field, value, array) {
|
|
50
|
+
return parse('date', field, value, array, (v) => {
|
|
51
|
+
// TODO: limit to date
|
|
52
|
+
if (typeof v === 'string') {
|
|
53
|
+
return date_1.NesoiDate.fromISO(v);
|
|
54
|
+
}
|
|
55
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'date' });
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
function parseDatetime(field, value, array) {
|
|
59
|
+
return parse('datetime', field, value, array, (v) => {
|
|
60
|
+
if (typeof v === 'string') {
|
|
61
|
+
return datetime_1.NesoiDatetime.fromISO(v);
|
|
62
|
+
}
|
|
63
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'datetime' });
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
function parseDecimal(field, value, array) {
|
|
67
|
+
return parse('decimal', field, value, array, (v) => {
|
|
68
|
+
if (typeof v === 'string') {
|
|
69
|
+
return new decimal_1.Decimal(v);
|
|
70
|
+
}
|
|
71
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'float' });
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
function parseEnum(raw, field, value, array, options, trx) {
|
|
75
|
+
return parse('enum', field, value, array, (v) => {
|
|
76
|
+
if (typeof v === 'string') {
|
|
77
|
+
if (typeof options === 'string') {
|
|
78
|
+
let enumName = options;
|
|
79
|
+
const enumPath = enumName.match(/(.*)\.\{(.*)\}$/);
|
|
80
|
+
let _enum;
|
|
81
|
+
if (enumPath) {
|
|
82
|
+
enumName += enumPath[1] + '.' + enumPath[2];
|
|
83
|
+
try {
|
|
84
|
+
_enum = trx.enum(enumName);
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
const v = tree_1.Tree.get(raw, enumPath[2]);
|
|
88
|
+
throw error_1.NesoiError.Message.InvalidEnumScope(field, v, enumPath[2]);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
_enum = trx.enum(enumName);
|
|
93
|
+
}
|
|
94
|
+
const keys = _enum.keys();
|
|
95
|
+
if (keys.includes(v)) {
|
|
96
|
+
return v;
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
throw error_1.NesoiError.Message.InvalidFieldEnumValue({ field: field.alias, value: v, type: 'enum', options: keys });
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
else if (Array.isArray(options)) {
|
|
103
|
+
if (options.includes(v)) {
|
|
104
|
+
return v;
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
throw error_1.NesoiError.Message.InvalidFieldEnumValue({ field: field.alias, value: v, type: 'enum', options });
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
else if (typeof options === 'object') {
|
|
111
|
+
if (v in options) {
|
|
112
|
+
return options[v];
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
throw error_1.NesoiError.Message.InvalidFieldEnumValue({ field: field.alias, value: v, type: 'enum', options: Object.keys(options) });
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'string' });
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
function parseFile(field, value, array, options) {
|
|
123
|
+
return parse('file', field, value, array, (v) => {
|
|
124
|
+
if (!v.size || !v.extname || !v.data || !v.data.clientName) {
|
|
125
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'file' });
|
|
126
|
+
}
|
|
127
|
+
if (options?.maxSize) {
|
|
128
|
+
if (v.size > options?.maxSize) {
|
|
129
|
+
throw error_1.NesoiError.Message.FileTooBig(field, options?.maxSize);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
if (options?.extnames) {
|
|
133
|
+
if (!options?.extnames.includes(v.extname)) {
|
|
134
|
+
throw error_1.NesoiError.Message.FileExtNotAllowed(field, options?.extnames);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return v;
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
function parseFloat_(field, value, array) {
|
|
141
|
+
return parse('float', field, value, array, (v) => {
|
|
142
|
+
if (typeof v === 'string') {
|
|
143
|
+
const val = parseFloat(v);
|
|
144
|
+
if (!Number.isNaN(val)) {
|
|
145
|
+
return val;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
else if (typeof v === 'number') {
|
|
149
|
+
if (!Number.isNaN(v)) {
|
|
150
|
+
return v;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'float' });
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
async function parseId(field, value, array, trx, bucket, view) {
|
|
157
|
+
return parse('id', field, value, array, (async (v) => {
|
|
158
|
+
// TODO: validate by field type
|
|
159
|
+
const val = v;
|
|
160
|
+
if (typeof v !== 'string' && typeof v !== 'number') {
|
|
161
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'id' });
|
|
162
|
+
}
|
|
163
|
+
return {
|
|
164
|
+
id: val,
|
|
165
|
+
obj: view
|
|
166
|
+
? await trx.bucket(bucket).viewOneOrFail(val, view)
|
|
167
|
+
: await trx.bucket(bucket).readOneOrFail(val)
|
|
168
|
+
};
|
|
169
|
+
})); // type only required on query parsers
|
|
170
|
+
}
|
|
171
|
+
function parseInt_(field, value, array) {
|
|
172
|
+
return parse('int', field, value, array, (v) => {
|
|
173
|
+
if (typeof v === 'string') {
|
|
174
|
+
const val = parseInt(v);
|
|
175
|
+
if (!Number.isNaN(val)) {
|
|
176
|
+
return val;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
else if (typeof v === 'number') {
|
|
180
|
+
const val = Math.floor(v);
|
|
181
|
+
if (!Number.isNaN(val)) {
|
|
182
|
+
return val;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'integer' });
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
function parseString(field, value, array) {
|
|
189
|
+
return parse('string', field, value, array, (v) => {
|
|
190
|
+
if (typeof v === 'string') {
|
|
191
|
+
return v;
|
|
192
|
+
}
|
|
193
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'string' });
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
function parseStringOrNumber(field, value, array) {
|
|
197
|
+
return parse('string_or_number', field, value, array, (v) => {
|
|
198
|
+
if (typeof v === 'string' || typeof v === 'number') {
|
|
199
|
+
return v;
|
|
200
|
+
}
|
|
201
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'string_or_number' });
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
async function parseDict(field, value, array, trx, parseFields) {
|
|
205
|
+
return parse('dict', field, value, array, (async (v) => {
|
|
206
|
+
if (typeof v === 'object') {
|
|
207
|
+
const parsed = {};
|
|
208
|
+
if (field.children) {
|
|
209
|
+
for (const k in v) {
|
|
210
|
+
const pv = await parseFields(trx, field.children, { __dict: v[k] });
|
|
211
|
+
parsed[k] = pv['__dict'];
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
return parsed;
|
|
215
|
+
}
|
|
216
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'dict' });
|
|
217
|
+
}));
|
|
218
|
+
}
|
|
219
|
+
async function parseObj(field, value, array, trx, parseFields) {
|
|
220
|
+
return parse('obj', field, value, array, (async (v) => {
|
|
221
|
+
if (typeof v === 'object') {
|
|
222
|
+
if (field.children) {
|
|
223
|
+
return await parseFields(trx, field.children, v);
|
|
224
|
+
}
|
|
225
|
+
return v;
|
|
226
|
+
}
|
|
227
|
+
throw error_1.NesoiError.Message.InvalidFieldType({ field: field.alias, value: v, type: 'object' });
|
|
228
|
+
}));
|
|
229
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
// TODO: this probably isn't necessary, given that await on non-promises should work
|
|
4
|
+
class _Promise {
|
|
5
|
+
static async solve(result) {
|
|
6
|
+
if (typeof result === 'object'
|
|
7
|
+
&& 'then' in result
|
|
8
|
+
&& typeof result.then === 'function') {
|
|
9
|
+
return result;
|
|
10
|
+
}
|
|
11
|
+
return new Promise(resolve => { resolve(result); });
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.default = _Promise;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const child_process_1 = require("child_process");
|
|
4
|
+
class Shell {
|
|
5
|
+
/**
|
|
6
|
+
* Execute command in shell.
|
|
7
|
+
*/
|
|
8
|
+
static cmd(cwd, cmd, stdin, stdout = true, stderr = true) {
|
|
9
|
+
console.log(cwd + '$ ' + cmd);
|
|
10
|
+
return new Promise(resolve => {
|
|
11
|
+
const cmds = cmd.split(' ');
|
|
12
|
+
const child = (0, child_process_1.spawn)(cmds[0], cmds.slice(1), { shell: true, stdio: [stdin ? null : process.stdin, stdout ? null : process.stdout, process.error], cwd });
|
|
13
|
+
if (stdin)
|
|
14
|
+
stdin.map(input => child.stdin.write(input + '\n'));
|
|
15
|
+
const out = {
|
|
16
|
+
stdout: [],
|
|
17
|
+
stderr: []
|
|
18
|
+
};
|
|
19
|
+
child.stdout.on('data', msg => {
|
|
20
|
+
if (stdout) {
|
|
21
|
+
process.stdout.write(msg.toString());
|
|
22
|
+
}
|
|
23
|
+
out.stdout.push(msg.toString());
|
|
24
|
+
});
|
|
25
|
+
child.stderr.on('data', msg => {
|
|
26
|
+
if (stderr) {
|
|
27
|
+
process.stderr.write(msg.toString());
|
|
28
|
+
}
|
|
29
|
+
out.stderr.push(msg.toString());
|
|
30
|
+
});
|
|
31
|
+
child.on('error', msg => {
|
|
32
|
+
console.error(msg);
|
|
33
|
+
throw 'Something went wrong when running the shell command. Read the logs.';
|
|
34
|
+
});
|
|
35
|
+
child.on('close', code => {
|
|
36
|
+
if (code !== 0) {
|
|
37
|
+
throw `Shell command returned ${code} != 0. Read the logs.`;
|
|
38
|
+
}
|
|
39
|
+
resolve(out);
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.default = Shell;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare enum Color {
|
|
2
|
+
black = "0;30",
|
|
3
|
+
red = "0;31",
|
|
4
|
+
green = "0;32",
|
|
5
|
+
brown = "0;33",
|
|
6
|
+
blue = "0;34",
|
|
7
|
+
purple = "0;35",
|
|
8
|
+
cyan = "0;36",
|
|
9
|
+
lightgray = "0;37",
|
|
10
|
+
darkgray = "1;30",
|
|
11
|
+
lightred = "1;31",
|
|
12
|
+
lightgreen = "1;32",
|
|
13
|
+
yellow = "1;33",
|
|
14
|
+
lightblue = "1;34",
|
|
15
|
+
lightpurple = "1;35",
|
|
16
|
+
lightcyan = "1;36"
|
|
17
|
+
}
|
|
18
|
+
export declare function colored(msg: string, color: keyof typeof Color): string;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Color = void 0;
|
|
4
|
+
exports.colored = colored;
|
|
5
|
+
var Color;
|
|
6
|
+
(function (Color) {
|
|
7
|
+
Color["black"] = "0;30";
|
|
8
|
+
Color["red"] = "0;31";
|
|
9
|
+
Color["green"] = "0;32";
|
|
10
|
+
Color["brown"] = "0;33";
|
|
11
|
+
Color["blue"] = "0;34";
|
|
12
|
+
Color["purple"] = "0;35";
|
|
13
|
+
Color["cyan"] = "0;36";
|
|
14
|
+
Color["lightgray"] = "0;37";
|
|
15
|
+
Color["darkgray"] = "1;30";
|
|
16
|
+
Color["lightred"] = "1;31";
|
|
17
|
+
Color["lightgreen"] = "1;32";
|
|
18
|
+
Color["yellow"] = "1;33";
|
|
19
|
+
Color["lightblue"] = "1;34";
|
|
20
|
+
Color["lightpurple"] = "1;35";
|
|
21
|
+
Color["lightcyan"] = "1;36";
|
|
22
|
+
})(Color || (exports.Color = Color = {}));
|
|
23
|
+
function colored(msg, color) {
|
|
24
|
+
return '\x1b[' + Color[color] + 'm' + msg + '\x1b[0m';
|
|
25
|
+
}
|
package/lib/schema.d.ts
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { $Controller } from './elements/edge/controller/controller.schema';
|
|
2
|
+
import { AnyUsers, User } from './engine/auth/authn';
|
|
3
|
+
import { $Machine } from './elements/blocks/machine/machine.schema';
|
|
4
|
+
import { $Constants } from './elements/entities/constants/constants.schema';
|
|
5
|
+
import { $Message } from './elements/entities/message/message.schema';
|
|
6
|
+
import { $Bucket } from './elements/entities/bucket/bucket.schema';
|
|
7
|
+
import { $Job } from './elements/blocks/job/job.schema';
|
|
8
|
+
import { $Resource } from './elements/blocks/resource/resource.schema';
|
|
9
|
+
import { $Queue } from './elements/blocks/queue/queue.schema';
|
|
10
|
+
import { $Externals } from './elements/blocks/externals/externals.schema';
|
|
11
|
+
export type BuilderType = 'constants' | 'externals' | 'message' | 'bucket' | 'job' | 'resource' | 'machine' | 'controller' | 'queue';
|
|
12
|
+
export type $Space = {
|
|
13
|
+
authnUsers: {
|
|
14
|
+
[x: string]: User;
|
|
15
|
+
};
|
|
16
|
+
modules: {
|
|
17
|
+
[x: string]: $Module;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
export type $Module = {
|
|
21
|
+
name: string;
|
|
22
|
+
constants: $Constants;
|
|
23
|
+
externals: $Externals;
|
|
24
|
+
messages: {
|
|
25
|
+
[x: string]: $Message;
|
|
26
|
+
};
|
|
27
|
+
buckets: {
|
|
28
|
+
[x: string]: $Bucket;
|
|
29
|
+
};
|
|
30
|
+
jobs: {
|
|
31
|
+
[x: string]: $Job;
|
|
32
|
+
};
|
|
33
|
+
resources: {
|
|
34
|
+
[x: string]: $Resource;
|
|
35
|
+
};
|
|
36
|
+
machines: {
|
|
37
|
+
[x: string]: $Machine;
|
|
38
|
+
};
|
|
39
|
+
controllers: {
|
|
40
|
+
[x: string]: $Controller;
|
|
41
|
+
};
|
|
42
|
+
queues: {
|
|
43
|
+
[x: string]: $Queue;
|
|
44
|
+
};
|
|
45
|
+
'#input': $Message;
|
|
46
|
+
'#authn': AnyUsers;
|
|
47
|
+
'#providers': Record<string, any>;
|
|
48
|
+
};
|
|
49
|
+
export type ModuleName<$ extends $Space> = keyof $['modules'];
|
|
50
|
+
export type MessageName<$ extends $Module> = keyof $['messages'];
|
|
51
|
+
export type ScopedMessageNameWithId<$ extends $Module, Scope extends string, Id, Msgs extends Record<string, $Message> = $['messages']> = string & {
|
|
52
|
+
[Msg in keyof Msgs]: Msgs[Msg]['#parsed'] extends {
|
|
53
|
+
id: Id;
|
|
54
|
+
} ? Msg extends `${Scope}.${infer X}` ? (Msg | `@.${X}`) : Msg : never;
|
|
55
|
+
}[keyof Msgs];
|
|
56
|
+
export type ScopedMessageName<$ extends $Module, Scope extends string, Msgs extends string | symbol | number = keyof $['messages']> = string & {
|
|
57
|
+
[Msg in Msgs]: Msg extends Scope ? '@' | Msg : Msg extends `${Scope}.${infer X}` ? (Msg | `@.${X}`) : Msg;
|
|
58
|
+
}[Msgs];
|
|
59
|
+
export type ScopedMessage<$ extends $Module, Scope extends string, MsgName extends string> = MsgName extends '@' ? $['messages'][Scope] : MsgName extends `@.${infer X}` ? $['messages'][`${Scope}.${X}`] : $['messages'][MsgName];
|
|
60
|
+
export type RawMessageInput<$ extends $Module, K extends MessageName<$>> = $['messages'][K]['#raw'];
|
|
61
|
+
export type ViewName<$ extends $Bucket> = keyof $['views'];
|
|
62
|
+
export type ViewObj<$ extends $Bucket, V extends ViewName<$>> = $['views'][V]['#data'];
|
|
63
|
+
export type BucketName<$ extends $Module> = keyof $['buckets'];
|
package/lib/schema.js
ADDED
package/package.json
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "nesoi",
|
|
3
|
+
"version": "3.0.0",
|
|
4
|
+
"description": "Declarative framework for data-driven applications",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "git+https://github.com/nesoi-org/nesoi.git"
|
|
8
|
+
},
|
|
9
|
+
"keywords": [
|
|
10
|
+
"nesoi",
|
|
11
|
+
"postgresql"
|
|
12
|
+
],
|
|
13
|
+
"author": "Hugo Aboud",
|
|
14
|
+
"license": "MIT",
|
|
15
|
+
"bugs": {
|
|
16
|
+
"url": "https://github.com/nesoi-org/nesoi/issues"
|
|
17
|
+
},
|
|
18
|
+
"homepage": "https://github.com/nesoi-org/nesoi#readme",
|
|
19
|
+
"peerDependencies": {
|
|
20
|
+
"@types/node": "20.12.12"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|