@milaboratories/pl-middle-layer 1.48.11 → 1.48.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_@oxc-project_runtime@0.114.0/helpers/usingCtx.cjs +59 -0
- package/dist/_virtual/_@oxc-project_runtime@0.114.0/helpers/usingCtx.js +58 -0
- package/dist/_virtual/_rolldown/runtime.cjs +29 -0
- package/dist/block_registry/index.cjs +3 -0
- package/dist/block_registry/index.d.ts +3 -4
- package/dist/block_registry/index.js +3 -0
- package/dist/block_registry/registry-v2-provider.cjs +18 -19
- package/dist/block_registry/registry-v2-provider.cjs.map +1 -1
- package/dist/block_registry/registry-v2-provider.d.ts +10 -6
- package/dist/block_registry/registry-v2-provider.js +17 -17
- package/dist/block_registry/registry-v2-provider.js.map +1 -1
- package/dist/block_registry/registry.cjs +188 -219
- package/dist/block_registry/registry.cjs.map +1 -1
- package/dist/block_registry/registry.d.ts +18 -14
- package/dist/block_registry/registry.js +184 -217
- package/dist/block_registry/registry.js.map +1 -1
- package/dist/block_registry/watcher.cjs +141 -170
- package/dist/block_registry/watcher.cjs.map +1 -1
- package/dist/block_registry/watcher.d.ts +26 -24
- package/dist/block_registry/watcher.js +139 -168
- package/dist/block_registry/watcher.js.map +1 -1
- package/dist/block_registry/well_known_registries.cjs +9 -8
- package/dist/block_registry/well_known_registries.cjs.map +1 -1
- package/dist/block_registry/well_known_registries.d.ts +8 -4
- package/dist/block_registry/well_known_registries.js +9 -7
- package/dist/block_registry/well_known_registries.js.map +1 -1
- package/dist/cfg_render/executor.cjs +136 -137
- package/dist/cfg_render/executor.cjs.map +1 -1
- package/dist/cfg_render/executor.js +133 -135
- package/dist/cfg_render/executor.js.map +1 -1
- package/dist/cfg_render/renderer.cjs +354 -462
- package/dist/cfg_render/renderer.cjs.map +1 -1
- package/dist/cfg_render/renderer.js +353 -460
- package/dist/cfg_render/renderer.js.map +1 -1
- package/dist/cfg_render/traverse.cjs +58 -60
- package/dist/cfg_render/traverse.cjs.map +1 -1
- package/dist/cfg_render/traverse.js +57 -58
- package/dist/cfg_render/traverse.js.map +1 -1
- package/dist/cfg_render/util.cjs +14 -19
- package/dist/cfg_render/util.cjs.map +1 -1
- package/dist/cfg_render/util.js +14 -17
- package/dist/cfg_render/util.js.map +1 -1
- package/dist/debug/index.cjs +13 -17
- package/dist/debug/index.cjs.map +1 -1
- package/dist/debug/index.js +13 -16
- package/dist/debug/index.js.map +1 -1
- package/dist/dev_env/index.cjs +60 -44
- package/dist/dev_env/index.cjs.map +1 -1
- package/dist/dev_env/index.js +57 -33
- package/dist/dev_env/index.js.map +1 -1
- package/dist/dev_env/util.cjs +12 -32
- package/dist/dev_env/util.cjs.map +1 -1
- package/dist/dev_env/util.js +10 -11
- package/dist/dev_env/util.js.map +1 -1
- package/dist/index.cjs +75 -74
- package/dist/index.d.ts +21 -13
- package/dist/index.js +25 -18
- package/dist/js_render/computable_context.cjs +432 -568
- package/dist/js_render/computable_context.cjs.map +1 -1
- package/dist/js_render/computable_context.js +431 -566
- package/dist/js_render/computable_context.js.map +1 -1
- package/dist/js_render/context.cjs +184 -237
- package/dist/js_render/context.cjs.map +1 -1
- package/dist/js_render/context.js +184 -235
- package/dist/js_render/context.js.map +1 -1
- package/dist/js_render/index.cjs +137 -156
- package/dist/js_render/index.cjs.map +1 -1
- package/dist/js_render/index.js +136 -154
- package/dist/js_render/index.js.map +1 -1
- package/dist/middle_layer/active_cfg.cjs +28 -35
- package/dist/middle_layer/active_cfg.cjs.map +1 -1
- package/dist/middle_layer/active_cfg.js +27 -33
- package/dist/middle_layer/active_cfg.js.map +1 -1
- package/dist/middle_layer/block.cjs +36 -42
- package/dist/middle_layer/block.cjs.map +1 -1
- package/dist/middle_layer/block.js +35 -40
- package/dist/middle_layer/block.js.map +1 -1
- package/dist/middle_layer/block_ctx.cjs +91 -133
- package/dist/middle_layer/block_ctx.cjs.map +1 -1
- package/dist/middle_layer/block_ctx.js +90 -131
- package/dist/middle_layer/block_ctx.js.map +1 -1
- package/dist/middle_layer/block_ctx_unsafe.cjs +20 -19
- package/dist/middle_layer/block_ctx_unsafe.cjs.map +1 -1
- package/dist/middle_layer/block_ctx_unsafe.js +20 -18
- package/dist/middle_layer/block_ctx_unsafe.js.map +1 -1
- package/dist/middle_layer/driver_kit.cjs +47 -51
- package/dist/middle_layer/driver_kit.cjs.map +1 -1
- package/dist/middle_layer/driver_kit.d.ts +31 -27
- package/dist/middle_layer/driver_kit.js +46 -49
- package/dist/middle_layer/driver_kit.js.map +1 -1
- package/dist/middle_layer/frontend_path.cjs +49 -55
- package/dist/middle_layer/frontend_path.cjs.map +1 -1
- package/dist/middle_layer/frontend_path.js +48 -53
- package/dist/middle_layer/frontend_path.js.map +1 -1
- package/dist/middle_layer/index.cjs +4 -0
- package/dist/middle_layer/index.d.ts +4 -5
- package/dist/middle_layer/index.js +4 -0
- package/dist/middle_layer/middle_layer.cjs +216 -245
- package/dist/middle_layer/middle_layer.cjs.map +1 -1
- package/dist/middle_layer/middle_layer.d.ts +95 -91
- package/dist/middle_layer/middle_layer.js +215 -243
- package/dist/middle_layer/middle_layer.js.map +1 -1
- package/dist/middle_layer/navigation_states.cjs +45 -38
- package/dist/middle_layer/navigation_states.cjs.map +1 -1
- package/dist/middle_layer/navigation_states.js +44 -36
- package/dist/middle_layer/navigation_states.js.map +1 -1
- package/dist/middle_layer/ops.cjs +56 -57
- package/dist/middle_layer/ops.cjs.map +1 -1
- package/dist/middle_layer/ops.d.ts +86 -96
- package/dist/middle_layer/ops.js +54 -55
- package/dist/middle_layer/ops.js.map +1 -1
- package/dist/middle_layer/project.cjs +497 -527
- package/dist/middle_layer/project.cjs.map +1 -1
- package/dist/middle_layer/project.d.ts +155 -152
- package/dist/middle_layer/project.js +494 -525
- package/dist/middle_layer/project.js.map +1 -1
- package/dist/middle_layer/project_list.cjs +45 -43
- package/dist/middle_layer/project_list.cjs.map +1 -1
- package/dist/middle_layer/project_list.js +45 -41
- package/dist/middle_layer/project_list.js.map +1 -1
- package/dist/middle_layer/project_overview.cjs +202 -240
- package/dist/middle_layer/project_overview.cjs.map +1 -1
- package/dist/middle_layer/project_overview.js +201 -238
- package/dist/middle_layer/project_overview.js.map +1 -1
- package/dist/middle_layer/project_overview_light.cjs +11 -14
- package/dist/middle_layer/project_overview_light.cjs.map +1 -1
- package/dist/middle_layer/project_overview_light.js +10 -12
- package/dist/middle_layer/project_overview_light.js.map +1 -1
- package/dist/middle_layer/render.cjs +14 -18
- package/dist/middle_layer/render.cjs.map +1 -1
- package/dist/middle_layer/render.js +13 -16
- package/dist/middle_layer/render.js.map +1 -1
- package/dist/middle_layer/types.d.ts +7 -10
- package/dist/middle_layer/util.cjs +26 -21
- package/dist/middle_layer/util.cjs.map +1 -1
- package/dist/middle_layer/util.js +25 -19
- package/dist/middle_layer/util.js.map +1 -1
- package/dist/model/args.cjs +44 -53
- package/dist/model/args.cjs.map +1 -1
- package/dist/model/args.js +44 -51
- package/dist/model/args.js.map +1 -1
- package/dist/model/block_pack_spec.cjs +9 -5
- package/dist/model/block_pack_spec.cjs.map +1 -1
- package/dist/model/block_pack_spec.d.ts +34 -30
- package/dist/model/block_pack_spec.js +9 -4
- package/dist/model/block_pack_spec.js.map +1 -1
- package/dist/model/frontend.d.ts +8 -5
- package/dist/model/index.d.ts +2 -3
- package/dist/model/project_helper.cjs +154 -193
- package/dist/model/project_helper.cjs.map +1 -1
- package/dist/model/project_helper.d.ts +96 -92
- package/dist/model/project_helper.js +153 -191
- package/dist/model/project_helper.js.map +1 -1
- package/dist/model/project_model.cjs +33 -32
- package/dist/model/project_model.cjs.map +1 -1
- package/dist/model/project_model.d.ts +13 -64
- package/dist/model/project_model.js +34 -30
- package/dist/model/project_model.js.map +1 -1
- package/dist/model/project_model_util.cjs +119 -158
- package/dist/model/project_model_util.cjs.map +1 -1
- package/dist/model/project_model_util.js +120 -156
- package/dist/model/project_model_util.js.map +1 -1
- package/dist/model/project_model_v1.cjs +3 -2
- package/dist/model/project_model_v1.cjs.map +1 -1
- package/dist/model/project_model_v1.js +3 -1
- package/dist/model/project_model_v1.js.map +1 -1
- package/dist/model/template_spec.d.ts +20 -16
- package/dist/mutator/block-pack/block_pack.cjs +200 -223
- package/dist/mutator/block-pack/block_pack.cjs.map +1 -1
- package/dist/mutator/block-pack/block_pack.d.ts +20 -19
- package/dist/mutator/block-pack/block_pack.js +199 -221
- package/dist/mutator/block-pack/block_pack.js.map +1 -1
- package/dist/mutator/block-pack/frontend.cjs +14 -16
- package/dist/mutator/block-pack/frontend.cjs.map +1 -1
- package/dist/mutator/block-pack/frontend.js +13 -14
- package/dist/mutator/block-pack/frontend.js.map +1 -1
- package/dist/mutator/context_export.cjs +18 -17
- package/dist/mutator/context_export.cjs.map +1 -1
- package/dist/mutator/context_export.js +17 -15
- package/dist/mutator/context_export.js.map +1 -1
- package/dist/mutator/migration.cjs +86 -112
- package/dist/mutator/migration.cjs.map +1 -1
- package/dist/mutator/migration.js +85 -110
- package/dist/mutator/migration.js.map +1 -1
- package/dist/mutator/project.cjs +903 -1240
- package/dist/mutator/project.cjs.map +1 -1
- package/dist/mutator/project.js +901 -1237
- package/dist/mutator/project.js.map +1 -1
- package/dist/mutator/template/direct_template_loader.cjs +104 -130
- package/dist/mutator/template/direct_template_loader.cjs.map +1 -1
- package/dist/mutator/template/direct_template_loader.js +103 -128
- package/dist/mutator/template/direct_template_loader.js.map +1 -1
- package/dist/mutator/template/direct_template_loader_v3.cjs +104 -124
- package/dist/mutator/template/direct_template_loader_v3.cjs.map +1 -1
- package/dist/mutator/template/direct_template_loader_v3.js +103 -122
- package/dist/mutator/template/direct_template_loader_v3.js.map +1 -1
- package/dist/mutator/template/render_block.cjs +26 -30
- package/dist/mutator/template/render_block.cjs.map +1 -1
- package/dist/mutator/template/render_block.js +26 -23
- package/dist/mutator/template/render_block.js.map +1 -1
- package/dist/mutator/template/render_template.cjs +25 -25
- package/dist/mutator/template/render_template.cjs.map +1 -1
- package/dist/mutator/template/render_template.d.ts +6 -3
- package/dist/mutator/template/render_template.js +24 -23
- package/dist/mutator/template/render_template.js.map +1 -1
- package/dist/mutator/template/template_loading.cjs +42 -46
- package/dist/mutator/template/template_loading.cjs.map +1 -1
- package/dist/mutator/template/template_loading.d.ts +16 -12
- package/dist/mutator/template/template_loading.js +40 -44
- package/dist/mutator/template/template_loading.js.map +1 -1
- package/dist/network_check/network_check.cjs +149 -194
- package/dist/network_check/network_check.cjs.map +1 -1
- package/dist/network_check/network_check.d.ts +50 -66
- package/dist/network_check/network_check.js +146 -190
- package/dist/network_check/network_check.js.map +1 -1
- package/dist/network_check/pings.cjs +71 -69
- package/dist/network_check/pings.cjs.map +1 -1
- package/dist/network_check/pings.js +71 -65
- package/dist/network_check/pings.js.map +1 -1
- package/dist/network_check/template.cjs +256 -273
- package/dist/network_check/template.cjs.map +1 -1
- package/dist/network_check/template.js +253 -265
- package/dist/network_check/template.js.map +1 -1
- package/dist/pool/data.cjs +205 -226
- package/dist/pool/data.cjs.map +1 -1
- package/dist/pool/data.d.ts +10 -27
- package/dist/pool/data.js +196 -209
- package/dist/pool/data.js.map +1 -1
- package/dist/pool/driver.cjs +180 -207
- package/dist/pool/driver.cjs.map +1 -1
- package/dist/pool/driver.d.ts +12 -17
- package/dist/pool/driver.js +178 -205
- package/dist/pool/driver.js.map +1 -1
- package/dist/pool/index.cjs +2 -0
- package/dist/pool/index.d.ts +2 -3
- package/dist/pool/index.js +2 -0
- package/dist/pool/p_object_collection.cjs +67 -79
- package/dist/pool/p_object_collection.cjs.map +1 -1
- package/dist/pool/p_object_collection.d.ts +7 -28
- package/dist/pool/p_object_collection.js +65 -77
- package/dist/pool/p_object_collection.js.map +1 -1
- package/dist/pool/result_pool.cjs +217 -262
- package/dist/pool/result_pool.cjs.map +1 -1
- package/dist/pool/result_pool.d.ts +4 -27
- package/dist/pool/result_pool.js +216 -260
- package/dist/pool/result_pool.js.map +1 -1
- package/dist/worker/WorkerManager.cjs +51 -49
- package/dist/worker/WorkerManager.cjs.map +1 -1
- package/dist/worker/WorkerManager.js +49 -47
- package/dist/worker/WorkerManager.js.map +1 -1
- package/dist/worker/worker.cjs +19 -15
- package/dist/worker/worker.cjs.map +1 -1
- package/dist/worker/worker.d.ts +1 -2
- package/dist/worker/worker.js +18 -13
- package/dist/worker/worker.js.map +1 -1
- package/dist/worker/workerApi.cjs +14 -18
- package/dist/worker/workerApi.cjs.map +1 -1
- package/dist/worker/workerApi.js +13 -16
- package/dist/worker/workerApi.js.map +1 -1
- package/package.json +24 -24
- package/src/mutator/template/template_render.test.ts +22 -18
- package/dist/__external/.pnpm/@rollup_plugin-typescript@12.3.0_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3/__external/tslib/tslib.es6.cjs +0 -77
- package/dist/__external/.pnpm/@rollup_plugin-typescript@12.3.0_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3/__external/tslib/tslib.es6.cjs.map +0 -1
- package/dist/__external/.pnpm/@rollup_plugin-typescript@12.3.0_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3/__external/tslib/tslib.es6.js +0 -74
- package/dist/__external/.pnpm/@rollup_plugin-typescript@12.3.0_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3/__external/tslib/tslib.es6.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/comparator.cjs +0 -162
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/comparator.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/comparator.js +0 -160
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/comparator.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/range.cjs +0 -576
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/range.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/range.js +0 -574
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/range.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/semver.cjs +0 -337
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/semver.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/semver.js +0 -335
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/semver.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/clean.cjs +0 -22
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/clean.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/clean.js +0 -20
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/clean.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/cmp.cjs +0 -73
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/cmp.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/cmp.js +0 -71
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/cmp.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/coerce.cjs +0 -78
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/coerce.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/coerce.js +0 -76
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/coerce.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-build.cjs +0 -23
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-build.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-build.js +0 -21
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-build.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-loose.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-loose.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-loose.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-loose.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare.cjs +0 -21
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare.js +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/diff.cjs +0 -74
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/diff.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/diff.js +0 -72
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/diff.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/eq.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/eq.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/eq.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/eq.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gt.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gt.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gt.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gt.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gte.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gte.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gte.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gte.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/inc.cjs +0 -35
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/inc.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/inc.js +0 -33
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/inc.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lt.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lt.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lt.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lt.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lte.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lte.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lte.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lte.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/major.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/major.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/major.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/major.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/minor.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/minor.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/minor.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/minor.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/neq.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/neq.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/neq.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/neq.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/parse.cjs +0 -32
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/parse.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/parse.js +0 -30
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/parse.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/patch.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/patch.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/patch.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/patch.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/prerelease.cjs +0 -22
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/prerelease.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/prerelease.js +0 -20
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/prerelease.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rcompare.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rcompare.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rcompare.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rcompare.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rsort.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rsort.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rsort.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rsort.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/satisfies.cjs +0 -26
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/satisfies.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/satisfies.js +0 -24
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/satisfies.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/sort.cjs +0 -19
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/sort.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/sort.js +0 -17
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/sort.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/valid.cjs +0 -22
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/valid.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/valid.js +0 -20
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/valid.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/index.cjs +0 -145
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/index.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/index.js +0 -143
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/index.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/constants.cjs +0 -49
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/constants.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/constants.js +0 -47
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/constants.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/debug.cjs +0 -23
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/debug.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/debug.js +0 -21
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/debug.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/identifiers.cjs +0 -37
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/identifiers.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/identifiers.js +0 -35
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/identifiers.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/lrucache.cjs +0 -54
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/lrucache.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/lrucache.js +0 -52
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/lrucache.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/parse-options.cjs +0 -29
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/parse-options.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/parse-options.js +0 -27
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/parse-options.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/re.cjs +0 -240
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/re.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/re.js +0 -238
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/re.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/gtr.cjs +0 -20
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/gtr.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/gtr.js +0 -18
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/gtr.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/intersects.cjs +0 -23
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/intersects.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/intersects.js +0 -21
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/intersects.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/ltr.cjs +0 -20
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/ltr.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/ltr.js +0 -18
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/ltr.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/max-satisfying.cjs +0 -42
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/max-satisfying.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/max-satisfying.js +0 -40
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/max-satisfying.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-satisfying.cjs +0 -41
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-satisfying.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-satisfying.js +0 -39
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-satisfying.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-version.cjs +0 -79
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-version.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-version.js +0 -77
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-version.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/outside.cjs +0 -103
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/outside.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/outside.js +0 -101
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/outside.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/simplify.cjs +0 -64
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/simplify.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/simplify.js +0 -62
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/simplify.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/subset.cjs +0 -266
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/subset.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/subset.js +0 -264
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/subset.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/to-comparators.cjs +0 -24
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/to-comparators.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/to-comparators.js +0 -22
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/to-comparators.js.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/valid.cjs +0 -27
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/valid.cjs.map +0 -1
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/valid.js +0 -25
- package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/valid.js.map +0 -1
- package/dist/_virtual/index.cjs +0 -8
- package/dist/_virtual/index.cjs.map +0 -1
- package/dist/_virtual/index.js +0 -6
- package/dist/_virtual/index.js.map +0 -1
- package/dist/_virtual/re.cjs +0 -6
- package/dist/_virtual/re.cjs.map +0 -1
- package/dist/_virtual/re.js +0 -4
- package/dist/_virtual/re.js.map +0 -1
- package/dist/block_registry/index.d.ts.map +0 -1
- package/dist/block_registry/registry-v2-provider.d.ts.map +0 -1
- package/dist/block_registry/registry.d.ts.map +0 -1
- package/dist/block_registry/registry.test.d.ts +0 -2
- package/dist/block_registry/registry.test.d.ts.map +0 -1
- package/dist/block_registry/watcher.d.ts.map +0 -1
- package/dist/block_registry/well_known_registries.d.ts.map +0 -1
- package/dist/cfg_render/executor.d.ts +0 -9
- package/dist/cfg_render/executor.d.ts.map +0 -1
- package/dist/cfg_render/executor.test.d.ts +0 -2
- package/dist/cfg_render/executor.test.d.ts.map +0 -1
- package/dist/cfg_render/operation.d.ts +0 -29
- package/dist/cfg_render/operation.d.ts.map +0 -1
- package/dist/cfg_render/renderer.d.ts +0 -6
- package/dist/cfg_render/renderer.d.ts.map +0 -1
- package/dist/cfg_render/traverse.d.ts +0 -3
- package/dist/cfg_render/traverse.d.ts.map +0 -1
- package/dist/cfg_render/util.d.ts +0 -5
- package/dist/cfg_render/util.d.ts.map +0 -1
- package/dist/debug/index.d.ts +0 -9
- package/dist/debug/index.d.ts.map +0 -1
- package/dist/dev_env/index.d.ts +0 -21
- package/dist/dev_env/index.d.ts.map +0 -1
- package/dist/dev_env/util.d.ts +0 -3
- package/dist/dev_env/util.d.ts.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/js_render/computable_context.d.ts +0 -74
- package/dist/js_render/computable_context.d.ts.map +0 -1
- package/dist/js_render/context.d.ts +0 -73
- package/dist/js_render/context.d.ts.map +0 -1
- package/dist/js_render/index.d.ts +0 -57
- package/dist/js_render/index.d.ts.map +0 -1
- package/dist/middle_layer/active_cfg.d.ts +0 -6
- package/dist/middle_layer/active_cfg.d.ts.map +0 -1
- package/dist/middle_layer/block.d.ts +0 -10
- package/dist/middle_layer/block.d.ts.map +0 -1
- package/dist/middle_layer/block_ctx.d.ts +0 -23
- package/dist/middle_layer/block_ctx.d.ts.map +0 -1
- package/dist/middle_layer/block_ctx_unsafe.d.ts +0 -16
- package/dist/middle_layer/block_ctx_unsafe.d.ts.map +0 -1
- package/dist/middle_layer/driver_kit.d.ts.map +0 -1
- package/dist/middle_layer/frontend_path.d.ts +0 -6
- package/dist/middle_layer/frontend_path.d.ts.map +0 -1
- package/dist/middle_layer/index.d.ts.map +0 -1
- package/dist/middle_layer/middle_layer.d.ts.map +0 -1
- package/dist/middle_layer/navigation_states.d.ts +0 -10
- package/dist/middle_layer/navigation_states.d.ts.map +0 -1
- package/dist/middle_layer/ops.d.ts.map +0 -1
- package/dist/middle_layer/project.d.ts.map +0 -1
- package/dist/middle_layer/project_list.d.ts +0 -11
- package/dist/middle_layer/project_list.d.ts.map +0 -1
- package/dist/middle_layer/project_overview.d.ts +0 -8
- package/dist/middle_layer/project_overview.d.ts.map +0 -1
- package/dist/middle_layer/project_overview_light.d.ts +0 -8
- package/dist/middle_layer/project_overview_light.d.ts.map +0 -1
- package/dist/middle_layer/render.d.ts +0 -7
- package/dist/middle_layer/render.d.ts.map +0 -1
- package/dist/middle_layer/render.test.d.ts +0 -5
- package/dist/middle_layer/render.test.d.ts.map +0 -1
- package/dist/middle_layer/types.d.ts.map +0 -1
- package/dist/middle_layer/util.d.ts +0 -16
- package/dist/middle_layer/util.d.ts.map +0 -1
- package/dist/model/args.d.ts +0 -14
- package/dist/model/args.d.ts.map +0 -1
- package/dist/model/block_pack.d.ts +0 -8
- package/dist/model/block_pack.d.ts.map +0 -1
- package/dist/model/block_pack_spec.d.ts.map +0 -1
- package/dist/model/frontend.d.ts.map +0 -1
- package/dist/model/index.d.ts.map +0 -1
- package/dist/model/project_helper.d.ts.map +0 -1
- package/dist/model/project_model.d.ts.map +0 -1
- package/dist/model/project_model.test.d.ts +0 -2
- package/dist/model/project_model.test.d.ts.map +0 -1
- package/dist/model/project_model_util.d.ts +0 -43
- package/dist/model/project_model_util.d.ts.map +0 -1
- package/dist/model/project_model_util.test.d.ts +0 -2
- package/dist/model/project_model_util.test.d.ts.map +0 -1
- package/dist/model/project_model_v1.d.ts +0 -8
- package/dist/model/project_model_v1.d.ts.map +0 -1
- package/dist/model/template_spec.d.ts.map +0 -1
- package/dist/mutator/block-pack/block_pack.d.ts.map +0 -1
- package/dist/mutator/block-pack/block_pack.test.d.ts +0 -2
- package/dist/mutator/block-pack/block_pack.test.d.ts.map +0 -1
- package/dist/mutator/block-pack/frontend.d.ts +0 -4
- package/dist/mutator/block-pack/frontend.d.ts.map +0 -1
- package/dist/mutator/context_export.d.ts +0 -9
- package/dist/mutator/context_export.d.ts.map +0 -1
- package/dist/mutator/migration.d.ts +0 -9
- package/dist/mutator/migration.d.ts.map +0 -1
- package/dist/mutator/project-v3.test.d.ts +0 -2
- package/dist/mutator/project-v3.test.d.ts.map +0 -1
- package/dist/mutator/project.d.ts +0 -211
- package/dist/mutator/project.d.ts.map +0 -1
- package/dist/mutator/project.test.d.ts +0 -2
- package/dist/mutator/project.test.d.ts.map +0 -1
- package/dist/mutator/template/direct_template_loader.d.ts +0 -5
- package/dist/mutator/template/direct_template_loader.d.ts.map +0 -1
- package/dist/mutator/template/direct_template_loader_v3.d.ts +0 -15
- package/dist/mutator/template/direct_template_loader_v3.d.ts.map +0 -1
- package/dist/mutator/template/render_block.d.ts +0 -32
- package/dist/mutator/template/render_block.d.ts.map +0 -1
- package/dist/mutator/template/render_template.d.ts.map +0 -1
- package/dist/mutator/template/template_loading.d.ts.map +0 -1
- package/dist/mutator/template/template_render.test.d.ts +0 -2
- package/dist/mutator/template/template_render.test.d.ts.map +0 -1
- package/dist/network_check/network_check.d.ts.map +0 -1
- package/dist/network_check/network_check.test.d.ts +0 -2
- package/dist/network_check/network_check.test.d.ts.map +0 -1
- package/dist/network_check/pings.d.ts +0 -32
- package/dist/network_check/pings.d.ts.map +0 -1
- package/dist/network_check/template.d.ts +0 -57
- package/dist/network_check/template.d.ts.map +0 -1
- package/dist/network_check/template.test.d.ts +0 -2
- package/dist/network_check/template.test.d.ts.map +0 -1
- package/dist/network_check/test_utils.d.ts +0 -6
- package/dist/network_check/test_utils.d.ts.map +0 -1
- package/dist/pool/data.d.ts.map +0 -1
- package/dist/pool/driver.d.ts.map +0 -1
- package/dist/pool/index.d.ts.map +0 -1
- package/dist/pool/p_object_collection.d.ts.map +0 -1
- package/dist/pool/result_pool.d.ts.map +0 -1
- package/dist/test/block_packs.d.ts +0 -6
- package/dist/test/block_packs.d.ts.map +0 -1
- package/dist/test/explicit_templates.d.ts +0 -3
- package/dist/test/explicit_templates.d.ts.map +0 -1
- package/dist/test/known_templates.d.ts +0 -6
- package/dist/test/known_templates.d.ts.map +0 -1
- package/dist/test_env.d.ts +0 -6
- package/dist/test_env.d.ts.map +0 -1
- package/dist/worker/WorkerManager.d.ts +0 -12
- package/dist/worker/WorkerManager.d.ts.map +0 -1
- package/dist/worker/worker.d.ts.map +0 -1
- package/dist/worker/workerApi.d.ts +0 -15
- package/dist/worker/workerApi.d.ts.map +0 -1
|
@@ -1,242 +1,219 @@
|
|
|
1
|
-
|
|
1
|
+
const require_runtime = require('../../_virtual/_rolldown/runtime.cjs');
|
|
2
|
+
const require_index = require('../../dev_env/index.cjs');
|
|
3
|
+
const require_registry = require('../../block_registry/registry.cjs');
|
|
4
|
+
require('../../block_registry/index.cjs');
|
|
5
|
+
const require_template_loading = require('../template/template_loading.cjs');
|
|
6
|
+
const require_frontend = require('./frontend.cjs');
|
|
7
|
+
const require_WorkerManager = require('../../worker/WorkerManager.cjs');
|
|
8
|
+
const require_usingCtx = require('../../_virtual/_@oxc-project_runtime@0.114.0/helpers/usingCtx.cjs');
|
|
9
|
+
let _platforma_sdk_model = require("@platforma-sdk/model");
|
|
10
|
+
let undici = require("undici");
|
|
11
|
+
let _platforma_sdk_block_tools = require("@platforma-sdk/block-tools");
|
|
12
|
+
let node_fs = require("node:fs");
|
|
13
|
+
node_fs = require_runtime.__toESM(node_fs);
|
|
14
|
+
let _milaboratories_ts_helpers = require("@milaboratories/ts-helpers");
|
|
15
|
+
let _milaboratories_pl_client = require("@milaboratories/pl-client");
|
|
16
|
+
let lru_cache = require("lru-cache");
|
|
17
|
+
let zod = require("zod");
|
|
2
18
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var undici = require('undici');
|
|
9
|
-
var frontend = require('./frontend.cjs');
|
|
10
|
-
var model = require('@platforma-sdk/model');
|
|
11
|
-
var blockTools = require('@platforma-sdk/block-tools');
|
|
12
|
-
var index = require('../../dev_env/index.cjs');
|
|
13
|
-
var registry = require('../../block_registry/registry.cjs');
|
|
14
|
-
var lruCache = require('lru-cache');
|
|
15
|
-
var WorkerManager = require('../../worker/WorkerManager.cjs');
|
|
16
|
-
var zod = require('zod');
|
|
17
|
-
|
|
18
|
-
const BlockPackCustomType = { name: "BlockPackCustom", version: "1" };
|
|
19
|
+
//#region src/mutator/block-pack/block_pack.ts
|
|
20
|
+
const BlockPackCustomType = {
|
|
21
|
+
name: "BlockPackCustom",
|
|
22
|
+
version: "1"
|
|
23
|
+
};
|
|
19
24
|
const BlockPackTemplateField = "template";
|
|
20
25
|
const BlockPackFrontendField = "frontend";
|
|
21
26
|
/** Ensure trailing slash */
|
|
22
27
|
function tSlash(str) {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
else
|
|
26
|
-
return `${str}/`;
|
|
28
|
+
if (str.endsWith("/")) return str;
|
|
29
|
+
else return `${str}/`;
|
|
27
30
|
}
|
|
28
31
|
function parseStringConfig(configContent) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
if (!model.Code.safeParse(res.data.code).success) {
|
|
34
|
-
throw new Error("parseStringConfig:No code bundle");
|
|
35
|
-
}
|
|
36
|
-
return res.data;
|
|
32
|
+
const res = zod.z.record(zod.z.string(), zod.z.unknown()).safeParse(JSON.parse(configContent));
|
|
33
|
+
if (!res.success) throw new Error("Invalid config content");
|
|
34
|
+
if (!_platforma_sdk_model.Code.safeParse(res.data.code).success) throw new Error("parseStringConfig:No code bundle");
|
|
35
|
+
return res.data;
|
|
37
36
|
}
|
|
38
37
|
function parseBufferConfig(buffer) {
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
class BlockPackPreparer {
|
|
42
|
-
v2RegistryProvider;
|
|
43
|
-
signer;
|
|
44
|
-
http;
|
|
45
|
-
constructor(v2RegistryProvider, signer, http) {
|
|
46
|
-
this.v2RegistryProvider = v2RegistryProvider;
|
|
47
|
-
this.signer = signer;
|
|
48
|
-
this.http = http;
|
|
49
|
-
}
|
|
50
|
-
remoteContentCache = new lruCache.LRUCache({
|
|
51
|
-
max: 500,
|
|
52
|
-
maxSize: 128 * 1024 * 1024,
|
|
53
|
-
fetchMethod: async (key) => {
|
|
54
|
-
const httpOptions = this.http !== undefined ? { dispatcher: this.http } : {};
|
|
55
|
-
return await (await undici.request(key, httpOptions)).body.arrayBuffer();
|
|
56
|
-
},
|
|
57
|
-
sizeCalculation: (value) => value.byteLength,
|
|
58
|
-
});
|
|
59
|
-
async getBlockConfigContainer(spec) {
|
|
60
|
-
switch (spec.type) {
|
|
61
|
-
case "explicit":
|
|
62
|
-
return spec.config;
|
|
63
|
-
case "prepared":
|
|
64
|
-
return spec.config;
|
|
65
|
-
case "dev-v1": {
|
|
66
|
-
const devPaths = await index.resolveDevPacket(spec.folder);
|
|
67
|
-
const configContent = await fs.promises.readFile(devPaths.config, { encoding: "utf-8" });
|
|
68
|
-
return JSON.parse(configContent);
|
|
69
|
-
}
|
|
70
|
-
case "dev-v2": {
|
|
71
|
-
const description = await blockTools.loadPackDescription(spec.folder);
|
|
72
|
-
const configContent = await fs.promises.readFile(description.components.model.file, {
|
|
73
|
-
encoding: "utf-8",
|
|
74
|
-
});
|
|
75
|
-
return parseStringConfig(configContent);
|
|
76
|
-
}
|
|
77
|
-
case "from-registry-v1": {
|
|
78
|
-
const urlPrefix = `${tSlash(spec.registryUrl)}${blockTools.RegistryV1.packageContentPrefix({ organization: spec.id.organization, package: spec.id.name, version: spec.id.version })}`;
|
|
79
|
-
const configResponse = await this.remoteContentCache.forceFetch(`${urlPrefix}/config.json`);
|
|
80
|
-
return JSON.parse(Buffer.from(configResponse).toString("utf8"));
|
|
81
|
-
}
|
|
82
|
-
case "from-registry-v2": {
|
|
83
|
-
const registry = this.v2RegistryProvider.getRegistry(spec.registryUrl);
|
|
84
|
-
const components = await registry.getComponents(spec.id);
|
|
85
|
-
const configResponse = await this.remoteContentCache.forceFetch(components.model.url);
|
|
86
|
-
return parseBufferConfig(configResponse);
|
|
87
|
-
}
|
|
88
|
-
default:
|
|
89
|
-
return tsHelpers.assertNever(spec);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
async prepare(spec) {
|
|
93
|
-
const env_1 = { stack: [], error: void 0, hasError: false };
|
|
94
|
-
try {
|
|
95
|
-
if (spec.type === "prepared") {
|
|
96
|
-
return spec;
|
|
97
|
-
}
|
|
98
|
-
const explicit = await this.prepareWithoutUnpacking(spec);
|
|
99
|
-
const workerManager = tslib_es6.__addDisposableResource(env_1, new WorkerManager.WorkerManager(), true);
|
|
100
|
-
return {
|
|
101
|
-
...explicit,
|
|
102
|
-
type: "prepared",
|
|
103
|
-
template: {
|
|
104
|
-
type: "prepared",
|
|
105
|
-
data: await workerManager.process("parseTemplate", explicit.template.content),
|
|
106
|
-
},
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
catch (e_1) {
|
|
110
|
-
env_1.error = e_1;
|
|
111
|
-
env_1.hasError = true;
|
|
112
|
-
}
|
|
113
|
-
finally {
|
|
114
|
-
const result_1 = tslib_es6.__disposeResources(env_1);
|
|
115
|
-
if (result_1)
|
|
116
|
-
await result_1;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
async prepareWithoutUnpacking(spec) {
|
|
120
|
-
switch (spec.type) {
|
|
121
|
-
case "explicit":
|
|
122
|
-
return spec;
|
|
123
|
-
case "dev-v1": {
|
|
124
|
-
const devPaths = await index.resolveDevPacket(spec.folder);
|
|
125
|
-
// template
|
|
126
|
-
const templateContent = await fs.promises.readFile(devPaths.workflow);
|
|
127
|
-
// config
|
|
128
|
-
const config = JSON.parse(await fs.promises.readFile(devPaths.config, "utf-8"));
|
|
129
|
-
// frontend
|
|
130
|
-
const frontendPath = devPaths.ui;
|
|
131
|
-
return {
|
|
132
|
-
type: "explicit",
|
|
133
|
-
template: {
|
|
134
|
-
type: "explicit",
|
|
135
|
-
content: templateContent,
|
|
136
|
-
},
|
|
137
|
-
config,
|
|
138
|
-
frontend: {
|
|
139
|
-
type: "local",
|
|
140
|
-
path: frontendPath,
|
|
141
|
-
signature: this.signer.sign(frontendPath),
|
|
142
|
-
},
|
|
143
|
-
source: spec,
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
|
-
case "dev-v2": {
|
|
147
|
-
const description = await blockTools.loadPackDescription(spec.folder);
|
|
148
|
-
const config = parseStringConfig(await fs.promises.readFile(description.components.model.file, {
|
|
149
|
-
encoding: "utf-8",
|
|
150
|
-
}));
|
|
151
|
-
const workflowContent = await fs.promises.readFile(description.components.workflow.main.file);
|
|
152
|
-
const frontendPath = description.components.ui.folder;
|
|
153
|
-
const source = { ...spec };
|
|
154
|
-
if (spec.mtime === undefined)
|
|
155
|
-
// if absent, calculating the mtime here, so the block will correctly show whether it can be updated
|
|
156
|
-
source.mtime = await registry.getDevV2PacketMtime(description);
|
|
157
|
-
return {
|
|
158
|
-
type: "explicit",
|
|
159
|
-
template: {
|
|
160
|
-
type: "explicit",
|
|
161
|
-
content: workflowContent,
|
|
162
|
-
},
|
|
163
|
-
config,
|
|
164
|
-
frontend: {
|
|
165
|
-
type: "local",
|
|
166
|
-
path: frontendPath,
|
|
167
|
-
signature: this.signer.sign(frontendPath),
|
|
168
|
-
},
|
|
169
|
-
source,
|
|
170
|
-
};
|
|
171
|
-
}
|
|
172
|
-
case "from-registry-v1": {
|
|
173
|
-
const urlPrefix = `${tSlash(spec.registryUrl)}${blockTools.RegistryV1.packageContentPrefix({ organization: spec.id.organization, package: spec.id.name, version: spec.id.version })}`;
|
|
174
|
-
const templateUrl = `${urlPrefix}/template.plj.gz`;
|
|
175
|
-
// template
|
|
176
|
-
const templateResponse = await this.remoteContentCache.forceFetch(templateUrl);
|
|
177
|
-
const templateContent = new Uint8Array(templateResponse);
|
|
178
|
-
// config
|
|
179
|
-
const configResponse = await this.remoteContentCache.forceFetch(`${urlPrefix}/config.json`);
|
|
180
|
-
const config = JSON.parse(Buffer.from(configResponse).toString("utf8"));
|
|
181
|
-
return {
|
|
182
|
-
type: "explicit",
|
|
183
|
-
template: {
|
|
184
|
-
type: "explicit",
|
|
185
|
-
content: templateContent,
|
|
186
|
-
},
|
|
187
|
-
config,
|
|
188
|
-
frontend: {
|
|
189
|
-
type: "url",
|
|
190
|
-
url: `${urlPrefix}/frontend.tgz`,
|
|
191
|
-
},
|
|
192
|
-
source: spec,
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
case "from-registry-v2": {
|
|
196
|
-
const registry = this.v2RegistryProvider.getRegistry(spec.registryUrl);
|
|
197
|
-
const components = await registry.getComponents(spec.id);
|
|
198
|
-
const getModel = async () => parseBufferConfig(await this.remoteContentCache.forceFetch(components.model.url));
|
|
199
|
-
const getWorkflow = async () => await this.remoteContentCache.forceFetch(components.workflow.main.url);
|
|
200
|
-
const [model, workflow] = await Promise.all([getModel(), getWorkflow()]);
|
|
201
|
-
return {
|
|
202
|
-
type: "explicit",
|
|
203
|
-
template: {
|
|
204
|
-
type: "explicit",
|
|
205
|
-
content: Buffer.from(workflow),
|
|
206
|
-
},
|
|
207
|
-
config: model,
|
|
208
|
-
frontend: {
|
|
209
|
-
type: "url",
|
|
210
|
-
url: components.ui.url,
|
|
211
|
-
},
|
|
212
|
-
source: spec,
|
|
213
|
-
};
|
|
214
|
-
}
|
|
215
|
-
default:
|
|
216
|
-
return tsHelpers.assertNever(spec);
|
|
217
|
-
}
|
|
218
|
-
}
|
|
38
|
+
return parseStringConfig(Buffer.from(buffer).toString("utf8"));
|
|
219
39
|
}
|
|
40
|
+
var BlockPackPreparer = class {
|
|
41
|
+
constructor(v2RegistryProvider, signer, http) {
|
|
42
|
+
this.v2RegistryProvider = v2RegistryProvider;
|
|
43
|
+
this.signer = signer;
|
|
44
|
+
this.http = http;
|
|
45
|
+
}
|
|
46
|
+
remoteContentCache = new lru_cache.LRUCache({
|
|
47
|
+
max: 500,
|
|
48
|
+
maxSize: 128 * 1024 * 1024,
|
|
49
|
+
fetchMethod: async (key) => {
|
|
50
|
+
return await (await (0, undici.request)(key, this.http !== void 0 ? { dispatcher: this.http } : {})).body.arrayBuffer();
|
|
51
|
+
},
|
|
52
|
+
sizeCalculation: (value) => value.byteLength
|
|
53
|
+
});
|
|
54
|
+
async getBlockConfigContainer(spec) {
|
|
55
|
+
switch (spec.type) {
|
|
56
|
+
case "explicit": return spec.config;
|
|
57
|
+
case "prepared": return spec.config;
|
|
58
|
+
case "dev-v1": {
|
|
59
|
+
const devPaths = await require_index.resolveDevPacket(spec.folder, false);
|
|
60
|
+
const configContent = await node_fs.default.promises.readFile(devPaths.config, { encoding: "utf-8" });
|
|
61
|
+
return JSON.parse(configContent);
|
|
62
|
+
}
|
|
63
|
+
case "dev-v2": {
|
|
64
|
+
const description = await (0, _platforma_sdk_block_tools.loadPackDescription)(spec.folder);
|
|
65
|
+
return parseStringConfig(await node_fs.default.promises.readFile(description.components.model.file, { encoding: "utf-8" }));
|
|
66
|
+
}
|
|
67
|
+
case "from-registry-v1": {
|
|
68
|
+
const urlPrefix = `${tSlash(spec.registryUrl)}${_platforma_sdk_block_tools.RegistryV1.packageContentPrefix({
|
|
69
|
+
organization: spec.id.organization,
|
|
70
|
+
package: spec.id.name,
|
|
71
|
+
version: spec.id.version
|
|
72
|
+
})}`;
|
|
73
|
+
const configResponse = await this.remoteContentCache.forceFetch(`${urlPrefix}/config.json`);
|
|
74
|
+
return JSON.parse(Buffer.from(configResponse).toString("utf8"));
|
|
75
|
+
}
|
|
76
|
+
case "from-registry-v2": {
|
|
77
|
+
const components = await this.v2RegistryProvider.getRegistry(spec.registryUrl).getComponents(spec.id);
|
|
78
|
+
return parseBufferConfig(await this.remoteContentCache.forceFetch(components.model.url));
|
|
79
|
+
}
|
|
80
|
+
default: return (0, _milaboratories_ts_helpers.assertNever)(spec);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
async prepare(spec) {
|
|
84
|
+
try {
|
|
85
|
+
var _usingCtx$1 = require_usingCtx._usingCtx();
|
|
86
|
+
if (spec.type === "prepared") return spec;
|
|
87
|
+
const explicit = await this.prepareWithoutUnpacking(spec);
|
|
88
|
+
const workerManager = _usingCtx$1.a(new require_WorkerManager.WorkerManager());
|
|
89
|
+
return {
|
|
90
|
+
...explicit,
|
|
91
|
+
type: "prepared",
|
|
92
|
+
template: {
|
|
93
|
+
type: "prepared",
|
|
94
|
+
data: await workerManager.process("parseTemplate", explicit.template.content)
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
} catch (_) {
|
|
98
|
+
_usingCtx$1.e = _;
|
|
99
|
+
} finally {
|
|
100
|
+
await _usingCtx$1.d();
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
async prepareWithoutUnpacking(spec) {
|
|
104
|
+
switch (spec.type) {
|
|
105
|
+
case "explicit": return spec;
|
|
106
|
+
case "dev-v1": {
|
|
107
|
+
const devPaths = await require_index.resolveDevPacket(spec.folder, false);
|
|
108
|
+
const templateContent = await node_fs.default.promises.readFile(devPaths.workflow);
|
|
109
|
+
const config = JSON.parse(await node_fs.default.promises.readFile(devPaths.config, "utf-8"));
|
|
110
|
+
const frontendPath = devPaths.ui;
|
|
111
|
+
return {
|
|
112
|
+
type: "explicit",
|
|
113
|
+
template: {
|
|
114
|
+
type: "explicit",
|
|
115
|
+
content: templateContent
|
|
116
|
+
},
|
|
117
|
+
config,
|
|
118
|
+
frontend: {
|
|
119
|
+
type: "local",
|
|
120
|
+
path: frontendPath,
|
|
121
|
+
signature: this.signer.sign(frontendPath)
|
|
122
|
+
},
|
|
123
|
+
source: spec
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
case "dev-v2": {
|
|
127
|
+
const description = await (0, _platforma_sdk_block_tools.loadPackDescription)(spec.folder);
|
|
128
|
+
const config = parseStringConfig(await node_fs.default.promises.readFile(description.components.model.file, { encoding: "utf-8" }));
|
|
129
|
+
const workflowContent = await node_fs.default.promises.readFile(description.components.workflow.main.file);
|
|
130
|
+
const frontendPath = description.components.ui.folder;
|
|
131
|
+
const source = { ...spec };
|
|
132
|
+
if (spec.mtime === void 0) source.mtime = await require_registry.getDevV2PacketMtime(description);
|
|
133
|
+
return {
|
|
134
|
+
type: "explicit",
|
|
135
|
+
template: {
|
|
136
|
+
type: "explicit",
|
|
137
|
+
content: workflowContent
|
|
138
|
+
},
|
|
139
|
+
config,
|
|
140
|
+
frontend: {
|
|
141
|
+
type: "local",
|
|
142
|
+
path: frontendPath,
|
|
143
|
+
signature: this.signer.sign(frontendPath)
|
|
144
|
+
},
|
|
145
|
+
source
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
case "from-registry-v1": {
|
|
149
|
+
const urlPrefix = `${tSlash(spec.registryUrl)}${_platforma_sdk_block_tools.RegistryV1.packageContentPrefix({
|
|
150
|
+
organization: spec.id.organization,
|
|
151
|
+
package: spec.id.name,
|
|
152
|
+
version: spec.id.version
|
|
153
|
+
})}`;
|
|
154
|
+
const templateUrl = `${urlPrefix}/template.plj.gz`;
|
|
155
|
+
const templateResponse = await this.remoteContentCache.forceFetch(templateUrl);
|
|
156
|
+
const templateContent = new Uint8Array(templateResponse);
|
|
157
|
+
const configResponse = await this.remoteContentCache.forceFetch(`${urlPrefix}/config.json`);
|
|
158
|
+
const config = JSON.parse(Buffer.from(configResponse).toString("utf8"));
|
|
159
|
+
return {
|
|
160
|
+
type: "explicit",
|
|
161
|
+
template: {
|
|
162
|
+
type: "explicit",
|
|
163
|
+
content: templateContent
|
|
164
|
+
},
|
|
165
|
+
config,
|
|
166
|
+
frontend: {
|
|
167
|
+
type: "url",
|
|
168
|
+
url: `${urlPrefix}/frontend.tgz`
|
|
169
|
+
},
|
|
170
|
+
source: spec
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
case "from-registry-v2": {
|
|
174
|
+
const components = await this.v2RegistryProvider.getRegistry(spec.registryUrl).getComponents(spec.id);
|
|
175
|
+
const getModel = async () => parseBufferConfig(await this.remoteContentCache.forceFetch(components.model.url));
|
|
176
|
+
const getWorkflow = async () => await this.remoteContentCache.forceFetch(components.workflow.main.url);
|
|
177
|
+
const [model, workflow] = await Promise.all([getModel(), getWorkflow()]);
|
|
178
|
+
return {
|
|
179
|
+
type: "explicit",
|
|
180
|
+
template: {
|
|
181
|
+
type: "explicit",
|
|
182
|
+
content: Buffer.from(workflow)
|
|
183
|
+
},
|
|
184
|
+
config: model,
|
|
185
|
+
frontend: {
|
|
186
|
+
type: "url",
|
|
187
|
+
url: components.ui.url
|
|
188
|
+
},
|
|
189
|
+
source: spec
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
default: return (0, _milaboratories_ts_helpers.assertNever)(spec);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
};
|
|
220
196
|
function createCustomBlockPack(tx, spec) {
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
197
|
+
const blockPackInfo = {
|
|
198
|
+
config: spec.config,
|
|
199
|
+
source: spec.source
|
|
200
|
+
};
|
|
201
|
+
const bp = tx.createStruct(BlockPackCustomType, JSON.stringify(blockPackInfo));
|
|
202
|
+
tx.createField((0, _milaboratories_pl_client.field)(bp, BlockPackTemplateField), "Input", require_template_loading.loadTemplate(tx, spec.template));
|
|
203
|
+
tx.createField((0, _milaboratories_pl_client.field)(bp, BlockPackFrontendField), "Input", require_frontend.createFrontend(tx, spec.frontend));
|
|
204
|
+
tx.lock(bp);
|
|
205
|
+
return bp;
|
|
227
206
|
}
|
|
228
207
|
function createBlockPack(tx, spec) {
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
return tsHelpers.assertNever(spec.type);
|
|
234
|
-
}
|
|
208
|
+
switch (spec.type) {
|
|
209
|
+
case "prepared": return createCustomBlockPack(tx, spec);
|
|
210
|
+
default: return (0, _milaboratories_ts_helpers.assertNever)(spec.type);
|
|
211
|
+
}
|
|
235
212
|
}
|
|
236
213
|
|
|
237
|
-
|
|
214
|
+
//#endregion
|
|
238
215
|
exports.BlockPackFrontendField = BlockPackFrontendField;
|
|
239
216
|
exports.BlockPackPreparer = BlockPackPreparer;
|
|
240
217
|
exports.BlockPackTemplateField = BlockPackTemplateField;
|
|
241
218
|
exports.createBlockPack = createBlockPack;
|
|
242
|
-
//# sourceMappingURL=block_pack.cjs.map
|
|
219
|
+
//# sourceMappingURL=block_pack.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block_pack.cjs","sources":["../../../src/mutator/block-pack/block_pack.ts"],"sourcesContent":["import type { AnyResourceRef, PlTransaction, ResourceType } from \"@milaboratories/pl-client\";\nimport { field } from \"@milaboratories/pl-client\";\nimport { loadTemplate } from \"../template/template_loading\";\nimport type { BlockPackExplicit, BlockPackSpecAny, BlockPackSpecPrepared } from \"../../model\";\nimport type { Signer } from \"@milaboratories/ts-helpers\";\nimport { assertNever } from \"@milaboratories/ts-helpers\";\nimport fs from \"node:fs\";\nimport type { Dispatcher } from \"undici\";\nimport { request } from \"undici\";\nimport { createFrontend } from \"./frontend\";\nimport type { BlockConfigContainer } from \"@platforma-sdk/model\";\nimport { Code } from \"@platforma-sdk/model\";\nimport { loadPackDescription, RegistryV1 } from \"@platforma-sdk/block-tools\";\nimport type { BlockPackInfo } from \"../../model/block_pack\";\nimport { resolveDevPacket } from \"../../dev_env\";\nimport { getDevV2PacketMtime } from \"../../block_registry\";\nimport type { V2RegistryProvider } from \"../../block_registry/registry-v2-provider\";\nimport { LRUCache } from \"lru-cache\";\nimport type { BlockPackSpec } from \"@milaboratories/pl-model-middle-layer\";\nimport { WorkerManager } from \"../../worker/WorkerManager\";\nimport { z } from \"zod\";\n\nexport const BlockPackCustomType: ResourceType = { name: \"BlockPackCustom\", version: \"1\" };\nexport const BlockPackTemplateField = \"template\";\nexport const BlockPackFrontendField = \"frontend\";\n\n/** Ensure trailing slash */\nfunction tSlash(str: string): string {\n if (str.endsWith(\"/\")) return str;\n else return `${str}/`;\n}\n\nfunction parseStringConfig(configContent: string): BlockConfigContainer {\n const res = z.record(z.string(), z.unknown()).safeParse(JSON.parse(configContent));\n\n if (!res.success) {\n throw new Error(\"Invalid config content\");\n }\n\n if (!Code.safeParse(res.data.code).success) {\n throw new Error(\"parseStringConfig:No code bundle\");\n }\n\n return res.data as BlockConfigContainer;\n}\n\nfunction parseBufferConfig(buffer: ArrayBuffer): BlockConfigContainer {\n return parseStringConfig(Buffer.from(buffer).toString(\"utf8\"));\n}\n\nexport class BlockPackPreparer {\n constructor(\n private readonly v2RegistryProvider: V2RegistryProvider,\n private readonly signer: Signer,\n private readonly http?: Dispatcher,\n ) {}\n\n private readonly remoteContentCache = new LRUCache<string, ArrayBuffer>({\n max: 500,\n maxSize: 128 * 1024 * 1024,\n fetchMethod: async (key) => {\n const httpOptions = this.http !== undefined ? { dispatcher: this.http } : {};\n return await (await request(key, httpOptions)).body.arrayBuffer();\n },\n sizeCalculation: (value) => value.byteLength,\n });\n\n public async getBlockConfigContainer(spec: BlockPackSpecAny): Promise<BlockConfigContainer> {\n switch (spec.type) {\n case \"explicit\":\n return spec.config;\n\n case \"prepared\":\n return spec.config;\n\n case \"dev-v1\": {\n const devPaths = await resolveDevPacket(spec.folder, false);\n const configContent = await fs.promises.readFile(devPaths.config, { encoding: \"utf-8\" });\n return JSON.parse(configContent);\n }\n\n case \"dev-v2\": {\n const description = await loadPackDescription(spec.folder);\n const configContent = await fs.promises.readFile(description.components.model.file, {\n encoding: \"utf-8\",\n });\n return parseStringConfig(configContent);\n }\n\n case \"from-registry-v1\": {\n const urlPrefix = `${tSlash(spec.registryUrl)}${RegistryV1.packageContentPrefix({ organization: spec.id.organization, package: spec.id.name, version: spec.id.version })}`;\n\n const configResponse = await this.remoteContentCache.forceFetch(`${urlPrefix}/config.json`);\n return JSON.parse(Buffer.from(configResponse).toString(\"utf8\"));\n }\n\n case \"from-registry-v2\": {\n const registry = this.v2RegistryProvider.getRegistry(spec.registryUrl);\n const components = await registry.getComponents(spec.id);\n const configResponse = await this.remoteContentCache.forceFetch(components.model.url);\n return parseBufferConfig(configResponse);\n }\n\n default:\n return assertNever(spec);\n }\n }\n\n public async prepare(spec: BlockPackSpecAny): Promise<BlockPackSpecPrepared> {\n if (spec.type === \"prepared\") {\n return spec;\n }\n\n const explicit = await this.prepareWithoutUnpacking(spec);\n\n await using workerManager = new WorkerManager();\n\n return {\n ...explicit,\n type: \"prepared\",\n template: {\n type: \"prepared\",\n data: await workerManager.process(\"parseTemplate\", explicit.template.content),\n },\n };\n }\n\n private async prepareWithoutUnpacking(\n spec: BlockPackExplicit | BlockPackSpec,\n ): Promise<BlockPackExplicit> {\n switch (spec.type) {\n case \"explicit\":\n return spec;\n\n case \"dev-v1\": {\n const devPaths = await resolveDevPacket(spec.folder, false);\n\n // template\n const templateContent = await fs.promises.readFile(devPaths.workflow);\n\n // config\n const config = JSON.parse(await fs.promises.readFile(devPaths.config, \"utf-8\"));\n\n // frontend\n const frontendPath = devPaths.ui;\n\n return {\n type: \"explicit\",\n template: {\n type: \"explicit\",\n content: templateContent,\n },\n config,\n frontend: {\n type: \"local\",\n path: frontendPath,\n signature: this.signer.sign(frontendPath),\n },\n source: spec,\n };\n }\n\n case \"dev-v2\": {\n const description = await loadPackDescription(spec.folder);\n const config = parseStringConfig(\n await fs.promises.readFile(description.components.model.file, {\n encoding: \"utf-8\",\n }),\n );\n const workflowContent = await fs.promises.readFile(\n description.components.workflow.main.file,\n );\n const frontendPath = description.components.ui.folder;\n const source = { ...spec };\n if (spec.mtime === undefined)\n // if absent, calculating the mtime here, so the block will correctly show whether it can be updated\n source.mtime = await getDevV2PacketMtime(description);\n return {\n type: \"explicit\",\n template: {\n type: \"explicit\",\n content: workflowContent,\n },\n config,\n frontend: {\n type: \"local\",\n path: frontendPath,\n signature: this.signer.sign(frontendPath),\n },\n source,\n };\n }\n\n case \"from-registry-v1\": {\n const urlPrefix = `${tSlash(spec.registryUrl)}${RegistryV1.packageContentPrefix({ organization: spec.id.organization, package: spec.id.name, version: spec.id.version })}`;\n\n const templateUrl = `${urlPrefix}/template.plj.gz`;\n // template\n const templateResponse = await this.remoteContentCache.forceFetch(templateUrl);\n const templateContent = new Uint8Array(templateResponse);\n\n // config\n const configResponse = await this.remoteContentCache.forceFetch(`${urlPrefix}/config.json`);\n const config = JSON.parse(\n Buffer.from(configResponse).toString(\"utf8\"),\n ) as BlockConfigContainer;\n\n return {\n type: \"explicit\",\n template: {\n type: \"explicit\",\n content: templateContent,\n },\n config,\n frontend: {\n type: \"url\",\n url: `${urlPrefix}/frontend.tgz`,\n },\n source: spec,\n };\n }\n\n case \"from-registry-v2\": {\n const registry = this.v2RegistryProvider.getRegistry(spec.registryUrl);\n const components = await registry.getComponents(spec.id);\n const getModel = async () =>\n parseBufferConfig(await this.remoteContentCache.forceFetch(components.model.url));\n const getWorkflow = async () =>\n await this.remoteContentCache.forceFetch(components.workflow.main.url);\n\n const [model, workflow] = await Promise.all([getModel(), getWorkflow()]);\n\n return {\n type: \"explicit\",\n template: {\n type: \"explicit\",\n content: Buffer.from(workflow),\n },\n config: model,\n frontend: {\n type: \"url\",\n url: components.ui.url,\n },\n source: spec,\n };\n }\n\n default:\n return assertNever(spec);\n }\n }\n}\n\nfunction createCustomBlockPack(tx: PlTransaction, spec: BlockPackSpecPrepared): AnyResourceRef {\n const blockPackInfo: BlockPackInfo = { config: spec.config, source: spec.source };\n const bp = tx.createStruct(BlockPackCustomType, JSON.stringify(blockPackInfo));\n tx.createField(field(bp, BlockPackTemplateField), \"Input\", loadTemplate(tx, spec.template));\n tx.createField(field(bp, BlockPackFrontendField), \"Input\", createFrontend(tx, spec.frontend));\n tx.lock(bp);\n\n return bp;\n}\n\nexport function createBlockPack(tx: PlTransaction, spec: BlockPackSpecPrepared): AnyResourceRef {\n switch (spec.type) {\n case \"prepared\":\n return createCustomBlockPack(tx, spec);\n default:\n return assertNever(spec.type);\n }\n}\n"],"names":["z","Code","LRUCache","request","resolveDevPacket","loadPackDescription","RegistryV1","assertNever","__addDisposableResource","WorkerManager","getDevV2PacketMtime","field","loadTemplate","createFrontend"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"block_pack.cjs","names":["z","Code","LRUCache","resolveDevPacket","fs","RegistryV1","WorkerManager","getDevV2PacketMtime","loadTemplate","createFrontend"],"sources":["../../../src/mutator/block-pack/block_pack.ts"],"sourcesContent":["import type { AnyResourceRef, PlTransaction, ResourceType } from \"@milaboratories/pl-client\";\nimport { field } from \"@milaboratories/pl-client\";\nimport { loadTemplate } from \"../template/template_loading\";\nimport type { BlockPackExplicit, BlockPackSpecAny, BlockPackSpecPrepared } from \"../../model\";\nimport type { Signer } from \"@milaboratories/ts-helpers\";\nimport { assertNever } from \"@milaboratories/ts-helpers\";\nimport fs from \"node:fs\";\nimport type { Dispatcher } from \"undici\";\nimport { request } from \"undici\";\nimport { createFrontend } from \"./frontend\";\nimport type { BlockConfigContainer } from \"@platforma-sdk/model\";\nimport { Code } from \"@platforma-sdk/model\";\nimport { loadPackDescription, RegistryV1 } from \"@platforma-sdk/block-tools\";\nimport type { BlockPackInfo } from \"../../model/block_pack\";\nimport { resolveDevPacket } from \"../../dev_env\";\nimport { getDevV2PacketMtime } from \"../../block_registry\";\nimport type { V2RegistryProvider } from \"../../block_registry/registry-v2-provider\";\nimport { LRUCache } from \"lru-cache\";\nimport type { BlockPackSpec } from \"@milaboratories/pl-model-middle-layer\";\nimport { WorkerManager } from \"../../worker/WorkerManager\";\nimport { z } from \"zod\";\n\nexport const BlockPackCustomType: ResourceType = { name: \"BlockPackCustom\", version: \"1\" };\nexport const BlockPackTemplateField = \"template\";\nexport const BlockPackFrontendField = \"frontend\";\n\n/** Ensure trailing slash */\nfunction tSlash(str: string): string {\n if (str.endsWith(\"/\")) return str;\n else return `${str}/`;\n}\n\nfunction parseStringConfig(configContent: string): BlockConfigContainer {\n const res = z.record(z.string(), z.unknown()).safeParse(JSON.parse(configContent));\n\n if (!res.success) {\n throw new Error(\"Invalid config content\");\n }\n\n if (!Code.safeParse(res.data.code).success) {\n throw new Error(\"parseStringConfig:No code bundle\");\n }\n\n return res.data as BlockConfigContainer;\n}\n\nfunction parseBufferConfig(buffer: ArrayBuffer): BlockConfigContainer {\n return parseStringConfig(Buffer.from(buffer).toString(\"utf8\"));\n}\n\nexport class BlockPackPreparer {\n constructor(\n private readonly v2RegistryProvider: V2RegistryProvider,\n private readonly signer: Signer,\n private readonly http?: Dispatcher,\n ) {}\n\n private readonly remoteContentCache = new LRUCache<string, ArrayBuffer>({\n max: 500,\n maxSize: 128 * 1024 * 1024,\n fetchMethod: async (key) => {\n const httpOptions = this.http !== undefined ? { dispatcher: this.http } : {};\n return await (await request(key, httpOptions)).body.arrayBuffer();\n },\n sizeCalculation: (value) => value.byteLength,\n });\n\n public async getBlockConfigContainer(spec: BlockPackSpecAny): Promise<BlockConfigContainer> {\n switch (spec.type) {\n case \"explicit\":\n return spec.config;\n\n case \"prepared\":\n return spec.config;\n\n case \"dev-v1\": {\n const devPaths = await resolveDevPacket(spec.folder, false);\n const configContent = await fs.promises.readFile(devPaths.config, { encoding: \"utf-8\" });\n return JSON.parse(configContent);\n }\n\n case \"dev-v2\": {\n const description = await loadPackDescription(spec.folder);\n const configContent = await fs.promises.readFile(description.components.model.file, {\n encoding: \"utf-8\",\n });\n return parseStringConfig(configContent);\n }\n\n case \"from-registry-v1\": {\n const urlPrefix = `${tSlash(spec.registryUrl)}${RegistryV1.packageContentPrefix({ organization: spec.id.organization, package: spec.id.name, version: spec.id.version })}`;\n\n const configResponse = await this.remoteContentCache.forceFetch(`${urlPrefix}/config.json`);\n return JSON.parse(Buffer.from(configResponse).toString(\"utf8\"));\n }\n\n case \"from-registry-v2\": {\n const registry = this.v2RegistryProvider.getRegistry(spec.registryUrl);\n const components = await registry.getComponents(spec.id);\n const configResponse = await this.remoteContentCache.forceFetch(components.model.url);\n return parseBufferConfig(configResponse);\n }\n\n default:\n return assertNever(spec);\n }\n }\n\n public async prepare(spec: BlockPackSpecAny): Promise<BlockPackSpecPrepared> {\n if (spec.type === \"prepared\") {\n return spec;\n }\n\n const explicit = await this.prepareWithoutUnpacking(spec);\n\n await using workerManager = new WorkerManager();\n\n return {\n ...explicit,\n type: \"prepared\",\n template: {\n type: \"prepared\",\n data: await workerManager.process(\"parseTemplate\", explicit.template.content),\n },\n };\n }\n\n private async prepareWithoutUnpacking(\n spec: BlockPackExplicit | BlockPackSpec,\n ): Promise<BlockPackExplicit> {\n switch (spec.type) {\n case \"explicit\":\n return spec;\n\n case \"dev-v1\": {\n const devPaths = await resolveDevPacket(spec.folder, false);\n\n // template\n const templateContent = await fs.promises.readFile(devPaths.workflow);\n\n // config\n const config = JSON.parse(await fs.promises.readFile(devPaths.config, \"utf-8\"));\n\n // frontend\n const frontendPath = devPaths.ui;\n\n return {\n type: \"explicit\",\n template: {\n type: \"explicit\",\n content: templateContent,\n },\n config,\n frontend: {\n type: \"local\",\n path: frontendPath,\n signature: this.signer.sign(frontendPath),\n },\n source: spec,\n };\n }\n\n case \"dev-v2\": {\n const description = await loadPackDescription(spec.folder);\n const config = parseStringConfig(\n await fs.promises.readFile(description.components.model.file, {\n encoding: \"utf-8\",\n }),\n );\n const workflowContent = await fs.promises.readFile(\n description.components.workflow.main.file,\n );\n const frontendPath = description.components.ui.folder;\n const source = { ...spec };\n if (spec.mtime === undefined)\n // if absent, calculating the mtime here, so the block will correctly show whether it can be updated\n source.mtime = await getDevV2PacketMtime(description);\n return {\n type: \"explicit\",\n template: {\n type: \"explicit\",\n content: workflowContent,\n },\n config,\n frontend: {\n type: \"local\",\n path: frontendPath,\n signature: this.signer.sign(frontendPath),\n },\n source,\n };\n }\n\n case \"from-registry-v1\": {\n const urlPrefix = `${tSlash(spec.registryUrl)}${RegistryV1.packageContentPrefix({ organization: spec.id.organization, package: spec.id.name, version: spec.id.version })}`;\n\n const templateUrl = `${urlPrefix}/template.plj.gz`;\n // template\n const templateResponse = await this.remoteContentCache.forceFetch(templateUrl);\n const templateContent = new Uint8Array(templateResponse);\n\n // config\n const configResponse = await this.remoteContentCache.forceFetch(`${urlPrefix}/config.json`);\n const config = JSON.parse(\n Buffer.from(configResponse).toString(\"utf8\"),\n ) as BlockConfigContainer;\n\n return {\n type: \"explicit\",\n template: {\n type: \"explicit\",\n content: templateContent,\n },\n config,\n frontend: {\n type: \"url\",\n url: `${urlPrefix}/frontend.tgz`,\n },\n source: spec,\n };\n }\n\n case \"from-registry-v2\": {\n const registry = this.v2RegistryProvider.getRegistry(spec.registryUrl);\n const components = await registry.getComponents(spec.id);\n const getModel = async () =>\n parseBufferConfig(await this.remoteContentCache.forceFetch(components.model.url));\n const getWorkflow = async () =>\n await this.remoteContentCache.forceFetch(components.workflow.main.url);\n\n const [model, workflow] = await Promise.all([getModel(), getWorkflow()]);\n\n return {\n type: \"explicit\",\n template: {\n type: \"explicit\",\n content: Buffer.from(workflow),\n },\n config: model,\n frontend: {\n type: \"url\",\n url: components.ui.url,\n },\n source: spec,\n };\n }\n\n default:\n return assertNever(spec);\n }\n }\n}\n\nfunction createCustomBlockPack(tx: PlTransaction, spec: BlockPackSpecPrepared): AnyResourceRef {\n const blockPackInfo: BlockPackInfo = { config: spec.config, source: spec.source };\n const bp = tx.createStruct(BlockPackCustomType, JSON.stringify(blockPackInfo));\n tx.createField(field(bp, BlockPackTemplateField), \"Input\", loadTemplate(tx, spec.template));\n tx.createField(field(bp, BlockPackFrontendField), \"Input\", createFrontend(tx, spec.frontend));\n tx.lock(bp);\n\n return bp;\n}\n\nexport function createBlockPack(tx: PlTransaction, spec: BlockPackSpecPrepared): AnyResourceRef {\n switch (spec.type) {\n case \"prepared\":\n return createCustomBlockPack(tx, spec);\n default:\n return assertNever(spec.type);\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,21 +1,22 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
1
|
+
import { V2RegistryProvider } from "../../block_registry/registry-v2-provider.js";
|
|
2
|
+
import { BlockPackSpecAny, BlockPackSpecPrepared } from "../../model/block_pack_spec.js";
|
|
3
|
+
import "../../model/index.js";
|
|
4
|
+
import { BlockConfigContainer } from "@platforma-sdk/model";
|
|
5
|
+
import { Dispatcher } from "undici";
|
|
6
|
+
import { Signer } from "@milaboratories/ts-helpers";
|
|
7
|
+
import { PlTransaction, ResourceType } from "@milaboratories/pl-client";
|
|
8
|
+
|
|
9
|
+
//#region src/mutator/block-pack/block_pack.d.ts
|
|
10
|
+
declare class BlockPackPreparer {
|
|
11
|
+
private readonly v2RegistryProvider;
|
|
12
|
+
private readonly signer;
|
|
13
|
+
private readonly http?;
|
|
14
|
+
constructor(v2RegistryProvider: V2RegistryProvider, signer: Signer, http?: Dispatcher | undefined);
|
|
15
|
+
private readonly remoteContentCache;
|
|
16
|
+
getBlockConfigContainer(spec: BlockPackSpecAny): Promise<BlockConfigContainer>;
|
|
17
|
+
prepare(spec: BlockPackSpecAny): Promise<BlockPackSpecPrepared>;
|
|
18
|
+
private prepareWithoutUnpacking;
|
|
19
19
|
}
|
|
20
|
-
|
|
20
|
+
//#endregion
|
|
21
|
+
export { BlockPackPreparer };
|
|
21
22
|
//# sourceMappingURL=block_pack.d.ts.map
|