@acorex-platform/framework-server 0.0.38 → 0.0.48
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/core/src/index.d.ts +1 -0
- package/core/src/index.d.ts.map +1 -1
- package/core/src/index.js +1 -0
- package/core/src/index.js.map +1 -1
- package/core/src/lib/filters/http-exception.filter.d.ts +1 -4
- package/core/src/lib/filters/http-exception.filter.d.ts.map +1 -1
- package/core/src/lib/filters/http-exception.filter.js +6 -11
- package/core/src/lib/filters/http-exception.filter.js.map +1 -1
- package/core/src/lib/hook/axp-hook-registry.service.d.ts +10 -0
- package/core/src/lib/hook/axp-hook-registry.service.d.ts.map +1 -0
- package/core/src/lib/hook/axp-hook-registry.service.js +35 -0
- package/core/src/lib/hook/axp-hook-registry.service.js.map +1 -0
- package/core/src/lib/hook/axp-hook.module.d.ts +3 -0
- package/core/src/lib/hook/axp-hook.module.d.ts.map +1 -0
- package/core/src/lib/hook/axp-hook.module.js +21 -0
- package/core/src/lib/hook/axp-hook.module.js.map +1 -0
- package/core/src/lib/hook/index.d.ts +3 -0
- package/core/src/lib/hook/index.d.ts.map +1 -0
- package/core/src/lib/hook/index.js +6 -0
- package/core/src/lib/hook/index.js.map +1 -0
- package/core/src/lib/runtime/entity-runtime.handlers.d.ts +32 -0
- package/core/src/lib/runtime/entity-runtime.handlers.d.ts.map +1 -0
- package/core/src/lib/runtime/entity-runtime.handlers.js +124 -0
- package/core/src/lib/runtime/entity-runtime.handlers.js.map +1 -0
- package/core/src/lib/runtime/index.d.ts +1 -0
- package/core/src/lib/runtime/index.d.ts.map +1 -1
- package/core/src/lib/runtime/index.js +1 -0
- package/core/src/lib/runtime/index.js.map +1 -1
- package/core/src/lib/runtime/runtime-dispatcher.service.d.ts +4 -1
- package/core/src/lib/runtime/runtime-dispatcher.service.d.ts.map +1 -1
- package/core/src/lib/runtime/runtime-dispatcher.service.js +60 -50
- package/core/src/lib/runtime/runtime-dispatcher.service.js.map +1 -1
- package/core/src/lib/runtime/runtime.module.d.ts.map +1 -1
- package/core/src/lib/runtime/runtime.module.js +3 -0
- package/core/src/lib/runtime/runtime.module.js.map +1 -1
- package/domain/abstract/src/index.d.ts +1 -0
- package/domain/abstract/src/index.d.ts.map +1 -1
- package/domain/abstract/src/index.js +1 -0
- package/domain/abstract/src/index.js.map +1 -1
- package/domain/abstract/src/lib/definitions/entity-definition.types.d.ts +2 -0
- package/domain/abstract/src/lib/definitions/entity-definition.types.d.ts.map +1 -1
- package/domain/abstract/src/lib/queries/server-query-fallback.token.d.ts +15 -0
- package/domain/abstract/src/lib/queries/server-query-fallback.token.d.ts.map +1 -0
- package/domain/abstract/src/lib/queries/server-query-fallback.token.js +12 -0
- package/domain/abstract/src/lib/queries/server-query-fallback.token.js.map +1 -0
- package/domain/abstract/src/lib/queries/server-query-handler.decorator.d.ts +1 -0
- package/domain/abstract/src/lib/queries/server-query-handler.decorator.d.ts.map +1 -1
- package/domain/abstract/src/lib/queries/server-query-handler.decorator.js +2 -1
- package/domain/abstract/src/lib/queries/server-query-handler.decorator.js.map +1 -1
- package/domain/providers/src/lib/middlewares/child-count.middleware.d.ts.map +1 -1
- package/domain/providers/src/lib/middlewares/child-count.middleware.js +13 -2
- package/domain/providers/src/lib/middlewares/child-count.middleware.js.map +1 -1
- package/domain/providers/src/lib/middlewares/merge-detail-relation.middleware.d.ts.map +1 -1
- package/domain/providers/src/lib/middlewares/merge-detail-relation.middleware.js +4 -2
- package/domain/providers/src/lib/middlewares/merge-detail-relation.middleware.js.map +1 -1
- package/domain/providers/src/lib/server-command.registry.d.ts +3 -1
- package/domain/providers/src/lib/server-command.registry.d.ts.map +1 -1
- package/domain/providers/src/lib/server-command.registry.js +17 -7
- package/domain/providers/src/lib/server-command.registry.js.map +1 -1
- package/domain/providers/src/lib/server-query.registry.d.ts +8 -3
- package/domain/providers/src/lib/server-query.registry.d.ts.map +1 -1
- package/domain/providers/src/lib/server-query.registry.js +33 -6
- package/domain/providers/src/lib/server-query.registry.js.map +1 -1
- package/domain/providers/src/lib/utils/entity-relation-join.planner.d.ts +8 -1
- package/domain/providers/src/lib/utils/entity-relation-join.planner.d.ts.map +1 -1
- package/domain/providers/src/lib/utils/entity-relation-join.planner.js +46 -6
- package/domain/providers/src/lib/utils/entity-relation-join.planner.js.map +1 -1
- package/domain/providers/src/lib/utils/in-memory-query.util.d.ts +2 -2
- package/domain/providers/src/lib/utils/in-memory-query.util.d.ts.map +1 -1
- package/domain/providers/src/lib/utils/in-memory-query.util.js +16 -10
- package/domain/providers/src/lib/utils/in-memory-query.util.js.map +1 -1
- package/domain/providers/src/lib/utils/instrument-runtime-middleware.util.d.ts +5 -0
- package/domain/providers/src/lib/utils/instrument-runtime-middleware.util.d.ts.map +1 -0
- package/domain/providers/src/lib/utils/instrument-runtime-middleware.util.js +56 -0
- package/domain/providers/src/lib/utils/instrument-runtime-middleware.util.js.map +1 -0
- package/domain/providers/src/lib/utils/merge-detail-query.util.d.ts +1 -0
- package/domain/providers/src/lib/utils/merge-detail-query.util.d.ts.map +1 -1
- package/domain/providers/src/lib/utils/merge-detail-query.util.js +1 -1
- package/domain/providers/src/lib/utils/merge-detail-query.util.js.map +1 -1
- package/domain/seed/src/lib/axp-entity-to-definition.converter.d.ts.map +1 -1
- package/domain/seed/src/lib/axp-entity-to-definition.converter.js +20 -1
- package/domain/seed/src/lib/axp-entity-to-definition.converter.js.map +1 -1
- package/jql/abstract/src/index.d.ts +3 -0
- package/jql/abstract/src/index.d.ts.map +1 -1
- package/jql/abstract/src/index.js +3 -0
- package/jql/abstract/src/index.js.map +1 -1
- package/jql/abstract/src/lib/cli-seed-process.d.ts +3 -0
- package/jql/abstract/src/lib/cli-seed-process.d.ts.map +1 -0
- package/jql/abstract/src/lib/cli-seed-process.js +8 -0
- package/jql/abstract/src/lib/cli-seed-process.js.map +1 -0
- package/jql/abstract/src/lib/datasource/storage-binding-definition.cache.d.ts.map +1 -1
- package/jql/abstract/src/lib/datasource/storage-binding-definition.cache.js +3 -2
- package/jql/abstract/src/lib/datasource/storage-binding-definition.cache.js.map +1 -1
- package/jql/abstract/src/lib/entity-store/entity-seed-storage.adapter.d.ts +7 -0
- package/jql/abstract/src/lib/entity-store/entity-seed-storage.adapter.d.ts.map +1 -1
- package/jql/abstract/src/lib/entity-store/entity-seed-storage.adapter.js +4 -3
- package/jql/abstract/src/lib/entity-store/entity-seed-storage.adapter.js.map +1 -1
- package/jql/abstract/src/lib/entity-store/entity-store-request.util.d.ts.map +1 -1
- package/jql/abstract/src/lib/entity-store/entity-store-request.util.js +2 -0
- package/jql/abstract/src/lib/entity-store/entity-store-request.util.js.map +1 -1
- package/jql/abstract/src/lib/entity-store/identity-membership.util.d.ts +11 -0
- package/jql/abstract/src/lib/entity-store/identity-membership.util.d.ts.map +1 -0
- package/jql/abstract/src/lib/entity-store/identity-membership.util.js +138 -0
- package/jql/abstract/src/lib/entity-store/identity-membership.util.js.map +1 -0
- package/jql/abstract/src/lib/entity-store/query-sort-locale.util.d.ts +6 -0
- package/jql/abstract/src/lib/entity-store/query-sort-locale.util.d.ts.map +1 -0
- package/jql/abstract/src/lib/entity-store/query-sort-locale.util.js +23 -0
- package/jql/abstract/src/lib/entity-store/query-sort-locale.util.js.map +1 -0
- package/jql/abstract/src/lib/jql.types.d.ts +5 -0
- package/jql/abstract/src/lib/jql.types.d.ts.map +1 -1
- package/jql/abstract/src/lib/jql.types.js.map +1 -1
- package/jql/mongodb/src/lib/compile/aggregate-group-keys.util.d.ts +8 -0
- package/jql/mongodb/src/lib/compile/aggregate-group-keys.util.d.ts.map +1 -0
- package/jql/mongodb/src/lib/compile/aggregate-group-keys.util.js +57 -0
- package/jql/mongodb/src/lib/compile/aggregate-group-keys.util.js.map +1 -0
- package/jql/mongodb/src/lib/compile/multilanguage-sort.util.d.ts +14 -0
- package/jql/mongodb/src/lib/compile/multilanguage-sort.util.d.ts.map +1 -0
- package/jql/mongodb/src/lib/compile/multilanguage-sort.util.js +135 -0
- package/jql/mongodb/src/lib/compile/multilanguage-sort.util.js.map +1 -0
- package/jql/mongodb/src/lib/jql-mongodb.engine.d.ts +1 -0
- package/jql/mongodb/src/lib/jql-mongodb.engine.d.ts.map +1 -1
- package/jql/mongodb/src/lib/jql-mongodb.engine.js +32 -21
- package/jql/mongodb/src/lib/jql-mongodb.engine.js.map +1 -1
- package/jql/schema/src/lib/generated/plugin-contributions.bootstrap.d.ts.map +1 -1
- package/jql/schema/src/lib/generated/plugin-contributions.bootstrap.js +29 -0
- package/jql/schema/src/lib/generated/plugin-contributions.bootstrap.js.map +1 -1
- package/jql/schema/src/lib/resolve-storage-data-type.util.d.ts +5 -0
- package/jql/schema/src/lib/resolve-storage-data-type.util.d.ts.map +1 -1
- package/jql/schema/src/lib/resolve-storage-data-type.util.js +3 -2
- package/jql/schema/src/lib/resolve-storage-data-type.util.js.map +1 -1
- package/jql/seed/src/index.d.ts +10 -5
- package/jql/seed/src/index.d.ts.map +1 -1
- package/jql/seed/src/index.js +10 -5
- package/jql/seed/src/index.js.map +1 -1
- package/jql/seed/src/lib/jql-multi-seed-runner.service.d.ts +1 -1
- package/jql/seed/src/lib/jql-multi-seed-runner.service.d.ts.map +1 -1
- package/jql/seed/src/lib/jql-multi-seed-runner.service.js +26 -16
- package/jql/seed/src/lib/jql-multi-seed-runner.service.js.map +1 -1
- package/jql/seed/src/lib/jql-release-ledger.service.d.ts +24 -0
- package/jql/seed/src/lib/jql-release-ledger.service.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-release-ledger.service.js +197 -0
- package/jql/seed/src/lib/jql-release-ledger.service.js.map +1 -0
- package/jql/seed/src/lib/jql-release-migrate.options.d.ts +9 -0
- package/jql/seed/src/lib/jql-release-migrate.options.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-release-migrate.options.js +96 -0
- package/jql/seed/src/lib/jql-release-migrate.options.js.map +1 -0
- package/jql/seed/src/lib/jql-release-migrate.service.d.ts +17 -0
- package/jql/seed/src/lib/jql-release-migrate.service.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-release-migrate.service.js +110 -0
- package/jql/seed/src/lib/jql-release-migrate.service.js.map +1 -0
- package/jql/seed/src/lib/jql-release-migrate.tokens.d.ts +5 -0
- package/jql/seed/src/lib/jql-release-migrate.tokens.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-release-migrate.tokens.js +8 -0
- package/jql/seed/src/lib/jql-release-migrate.tokens.js.map +1 -0
- package/jql/seed/src/lib/jql-release-migrate.types.d.ts +65 -0
- package/jql/seed/src/lib/jql-release-migrate.types.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-release-migrate.types.js +15 -0
- package/jql/seed/src/lib/jql-release-migrate.types.js.map +1 -0
- package/jql/seed/src/lib/jql-release-migrate.util.d.ts +35 -0
- package/jql/seed/src/lib/jql-release-migrate.util.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-release-migrate.util.js +172 -0
- package/jql/seed/src/lib/jql-release-migrate.util.js.map +1 -0
- package/jql/seed/src/lib/jql-release-migration.runner.d.ts +17 -0
- package/jql/seed/src/lib/jql-release-migration.runner.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-release-migration.runner.js +69 -0
- package/jql/seed/src/lib/jql-release-migration.runner.js.map +1 -0
- package/jql/seed/src/lib/jql-release-seed-reconcile.service.d.ts +19 -0
- package/jql/seed/src/lib/jql-release-seed-reconcile.service.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-release-seed-reconcile.service.js +175 -0
- package/jql/seed/src/lib/jql-release-seed-reconcile.service.js.map +1 -0
- package/jql/seed/src/lib/jql-release-version-plan.service.d.ts +32 -0
- package/jql/seed/src/lib/jql-release-version-plan.service.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-release-version-plan.service.js +286 -0
- package/jql/seed/src/lib/jql-release-version-plan.service.js.map +1 -0
- package/jql/seed/src/lib/jql-release-version-plan.util.d.ts +57 -0
- package/jql/seed/src/lib/jql-release-version-plan.util.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-release-version-plan.util.js +146 -0
- package/jql/seed/src/lib/jql-release-version-plan.util.js.map +1 -0
- package/jql/seed/src/lib/jql-seed-api.types.d.ts +0 -6
- package/jql/seed/src/lib/jql-seed-api.types.d.ts.map +1 -1
- package/jql/seed/src/lib/jql-seed-api.types.js +0 -8
- package/jql/seed/src/lib/jql-seed-api.types.js.map +1 -1
- package/jql/seed/src/lib/jql-seed-dependency.util.js +1 -1
- package/jql/seed/src/lib/jql-seed-dependency.util.js.map +1 -1
- package/jql/seed/src/lib/jql-seed-diff.service.d.ts +9 -3
- package/jql/seed/src/lib/jql-seed-diff.service.d.ts.map +1 -1
- package/jql/seed/src/lib/jql-seed-diff.service.js +38 -18
- package/jql/seed/src/lib/jql-seed-diff.service.js.map +1 -1
- package/jql/seed/src/lib/jql-seed-options.resolve.js +2 -2
- package/jql/seed/src/lib/jql-seed-options.resolve.js.map +1 -1
- package/jql/seed/src/lib/jql-seed-plan.util.d.ts.map +1 -1
- package/jql/seed/src/lib/jql-seed-plan.util.js +5 -0
- package/jql/seed/src/lib/jql-seed-plan.util.js.map +1 -1
- package/jql/seed/src/lib/jql-seed-progress.util.d.ts +27 -0
- package/jql/seed/src/lib/jql-seed-progress.util.d.ts.map +1 -0
- package/jql/seed/src/lib/jql-seed-progress.util.js +146 -0
- package/jql/seed/src/lib/jql-seed-progress.util.js.map +1 -0
- package/jql/seed/src/lib/jql-seed-runner.service.d.ts +2 -2
- package/jql/seed/src/lib/jql-seed-runner.service.d.ts.map +1 -1
- package/jql/seed/src/lib/jql-seed-runner.service.js +2 -2
- package/jql/seed/src/lib/jql-seed-runner.service.js.map +1 -1
- package/jql/seed/src/lib/jql-seed-selection.util.js +8 -8
- package/jql/seed/src/lib/jql-seed-selection.util.js.map +1 -1
- package/jql/seed/src/lib/jql-seed.module.d.ts +3 -0
- package/jql/seed/src/lib/jql-seed.module.d.ts.map +1 -1
- package/jql/seed/src/lib/jql-seed.module.js +21 -3
- package/jql/seed/src/lib/jql-seed.module.js.map +1 -1
- package/jql/seed/src/lib/jql-seed.tokens.d.ts +0 -2
- package/jql/seed/src/lib/jql-seed.tokens.d.ts.map +1 -1
- package/jql/seed/src/lib/jql-seed.tokens.js +1 -3
- package/jql/seed/src/lib/jql-seed.tokens.js.map +1 -1
- package/observability/abstract/src/index.d.ts +1 -6
- package/observability/abstract/src/index.d.ts.map +1 -1
- package/observability/abstract/src/index.js +1 -6
- package/observability/abstract/src/index.js.map +1 -1
- package/observability/abstract/src/lib/entity-observability-skip.util.d.ts +4 -1
- package/observability/abstract/src/lib/entity-observability-skip.util.d.ts.map +1 -1
- package/observability/abstract/src/lib/entity-observability-skip.util.js +4 -1
- package/observability/abstract/src/lib/entity-observability-skip.util.js.map +1 -1
- package/observability/abstract/src/lib/execution-trace/runtime-trace-buffer.d.ts.map +1 -1
- package/observability/abstract/src/lib/execution-trace/runtime-trace-buffer.js +15 -3
- package/observability/abstract/src/lib/execution-trace/runtime-trace-buffer.js.map +1 -1
- package/observability/abstract/src/lib/observability.config.d.ts +3 -0
- package/observability/abstract/src/lib/observability.config.d.ts.map +1 -1
- package/observability/abstract/src/lib/observability.config.js.map +1 -1
- package/observability/abstract/src/lib/observability.tokens.d.ts +0 -3
- package/observability/abstract/src/lib/observability.tokens.d.ts.map +1 -1
- package/observability/abstract/src/lib/observability.tokens.js +1 -4
- package/observability/abstract/src/lib/observability.tokens.js.map +1 -1
- package/observability/abstract/src/lib/structured-log.writer.d.ts +12 -0
- package/observability/abstract/src/lib/structured-log.writer.d.ts.map +1 -0
- package/observability/abstract/src/lib/structured-log.writer.js +19 -0
- package/observability/abstract/src/lib/structured-log.writer.js.map +1 -0
- package/observability/providers/src/index.d.ts +0 -1
- package/observability/providers/src/index.d.ts.map +1 -1
- package/observability/providers/src/index.js +0 -1
- package/observability/providers/src/index.js.map +1 -1
- package/observability/providers/src/lib/config/observability-config.resolve.d.ts.map +1 -1
- package/observability/providers/src/lib/config/observability-config.resolve.js +2 -0
- package/observability/providers/src/lib/config/observability-config.resolve.js.map +1 -1
- package/observability/providers/src/lib/context/resolve-request-observability-entity.util.d.ts.map +1 -1
- package/observability/providers/src/lib/context/resolve-request-observability-entity.util.js +13 -0
- package/observability/providers/src/lib/context/resolve-request-observability-entity.util.js.map +1 -1
- package/observability/providers/src/lib/execution-trace/execution-trace-recorder.service.d.ts +4 -4
- package/observability/providers/src/lib/execution-trace/execution-trace-recorder.service.d.ts.map +1 -1
- package/observability/providers/src/lib/execution-trace/execution-trace-recorder.service.js +111 -26
- package/observability/providers/src/lib/execution-trace/execution-trace-recorder.service.js.map +1 -1
- package/observability/providers/src/lib/http/http-exception-log.util.d.ts +2 -3
- package/observability/providers/src/lib/http/http-exception-log.util.d.ts.map +1 -1
- package/observability/providers/src/lib/http/http-exception-log.util.js +6 -21
- package/observability/providers/src/lib/http/http-exception-log.util.js.map +1 -1
- package/observability/providers/src/lib/http/http-metrics.interceptor.d.ts +1 -2
- package/observability/providers/src/lib/http/http-metrics.interceptor.d.ts.map +1 -1
- package/observability/providers/src/lib/http/http-metrics.interceptor.js +10 -9
- package/observability/providers/src/lib/http/http-metrics.interceptor.js.map +1 -1
- package/observability/providers/src/lib/http/observability-context.interceptor.d.ts +4 -2
- package/observability/providers/src/lib/http/observability-context.interceptor.d.ts.map +1 -1
- package/observability/providers/src/lib/http/observability-context.interceptor.js +44 -8
- package/observability/providers/src/lib/http/observability-context.interceptor.js.map +1 -1
- package/observability/providers/src/lib/http/register-express-observability.middleware.d.ts.map +1 -1
- package/observability/providers/src/lib/http/register-express-observability.middleware.js +2 -0
- package/observability/providers/src/lib/http/register-express-observability.middleware.js.map +1 -1
- package/observability/providers/src/lib/observability.bootstrap.d.ts.map +1 -1
- package/observability/providers/src/lib/observability.bootstrap.js +12 -6
- package/observability/providers/src/lib/observability.bootstrap.js.map +1 -1
- package/observability/providers/src/lib/observability.module.d.ts.map +1 -1
- package/observability/providers/src/lib/observability.module.js +0 -23
- package/observability/providers/src/lib/observability.module.js.map +1 -1
- package/observability/providers/src/lib/pino/pino-structured-log.writer.d.ts +5 -0
- package/observability/providers/src/lib/pino/pino-structured-log.writer.d.ts.map +1 -0
- package/observability/providers/src/lib/pino/pino-structured-log.writer.js +16 -0
- package/observability/providers/src/lib/pino/pino-structured-log.writer.js.map +1 -0
- package/observability/providers/src/lib/pino/pino.factory.d.ts.map +1 -1
- package/observability/providers/src/lib/pino/pino.factory.js +69 -25
- package/observability/providers/src/lib/pino/pino.factory.js.map +1 -1
- package/package.json +2 -2
- package/realtime/src/lib/auth/auth-security-alert-realtime.listener.d.ts.map +1 -1
- package/realtime/src/lib/auth/auth-security-alert-realtime.listener.js +19 -0
- package/realtime/src/lib/auth/auth-security-alert-realtime.listener.js.map +1 -1
- package/realtime/src/lib/topics/realtime-topics.d.ts +1 -0
- package/realtime/src/lib/topics/realtime-topics.d.ts.map +1 -1
- package/realtime/src/lib/topics/realtime-topics.js +2 -1
- package/realtime/src/lib/topics/realtime-topics.js.map +1 -1
- package/realtime/src/lib/types/realtime.types.d.ts +13 -1
- package/realtime/src/lib/types/realtime.types.d.ts.map +1 -1
- package/realtime/src/lib/types/realtime.types.js.map +1 -1
- package/report/src/lib/report-definition.registry.d.ts +11 -15
- package/report/src/lib/report-definition.registry.d.ts.map +1 -1
- package/report/src/lib/report-definition.registry.js +25 -101
- package/report/src/lib/report-definition.registry.js.map +1 -1
- package/search/elasticsearch/src/lib/elasticsearch-quick-search.backend.d.ts.map +1 -1
- package/search/elasticsearch/src/lib/elasticsearch-quick-search.backend.js +56 -18
- package/search/elasticsearch/src/lib/elasticsearch-quick-search.backend.js.map +1 -1
- package/search/providers/src/lib/quick-search-index.service.d.ts.map +1 -1
- package/search/providers/src/lib/quick-search-index.service.js +29 -14
- package/search/providers/src/lib/quick-search-index.service.js.map +1 -1
- package/search/providers/src/lib/quick-search-provider.module.d.ts.map +1 -1
- package/search/providers/src/lib/quick-search-provider.module.js +19 -12
- package/search/providers/src/lib/quick-search-provider.module.js.map +1 -1
- package/search/providers/src/lib/quick-search-reindex.service.d.ts +5 -1
- package/search/providers/src/lib/quick-search-reindex.service.d.ts.map +1 -1
- package/search/providers/src/lib/quick-search-reindex.service.js +23 -9
- package/search/providers/src/lib/quick-search-reindex.service.js.map +1 -1
- package/security/src/index.d.ts +5 -0
- package/security/src/index.d.ts.map +1 -1
- package/security/src/index.js +5 -0
- package/security/src/index.js.map +1 -1
- package/security/src/lib/auth/auth-runtime.handlers.d.ts +18 -4
- package/security/src/lib/auth/auth-runtime.handlers.d.ts.map +1 -1
- package/security/src/lib/auth/auth-runtime.handlers.js +60 -1
- package/security/src/lib/auth/auth-runtime.handlers.js.map +1 -1
- package/security/src/lib/auth/auth-two-factor-gate.d.ts +38 -0
- package/security/src/lib/auth/auth-two-factor-gate.d.ts.map +1 -0
- package/security/src/lib/auth/auth-two-factor-gate.js +33 -0
- package/security/src/lib/auth/auth-two-factor-gate.js.map +1 -0
- package/security/src/lib/auth/auth.events.d.ts +1 -1
- package/security/src/lib/auth/auth.events.d.ts.map +1 -1
- package/security/src/lib/auth/auth.events.js.map +1 -1
- package/security/src/lib/auth/auth.service.d.ts.map +1 -1
- package/security/src/lib/auth/auth.service.js +2 -0
- package/security/src/lib/auth/auth.service.js.map +1 -1
- package/security/src/lib/auth/auth.types.d.ts +6 -0
- package/security/src/lib/auth/auth.types.d.ts.map +1 -1
- package/security/src/lib/auth/auth.types.js.map +1 -1
- package/security/src/lib/auth/device-session.service.d.ts +14 -3
- package/security/src/lib/auth/device-session.service.d.ts.map +1 -1
- package/security/src/lib/auth/device-session.service.js +129 -20
- package/security/src/lib/auth/device-session.service.js.map +1 -1
- package/security/src/lib/auth/token.service.d.ts.map +1 -1
- package/security/src/lib/auth/token.service.js +6 -2
- package/security/src/lib/auth/token.service.js.map +1 -1
- package/security/src/lib/entity-storage/entity-access-policy.loader.d.ts.map +1 -1
- package/security/src/lib/entity-storage/entity-access-policy.loader.js +3 -0
- package/security/src/lib/entity-storage/entity-access-policy.loader.js.map +1 -1
- package/security/src/lib/entity-storage/visibility-filter.middleware.d.ts +1 -2
- package/security/src/lib/entity-storage/visibility-filter.middleware.d.ts.map +1 -1
- package/security/src/lib/entity-storage/visibility-filter.middleware.js +2 -75
- package/security/src/lib/entity-storage/visibility-filter.middleware.js.map +1 -1
- package/security/src/lib/oauth/oidc-provider-engine.service.js +3 -3
- package/security/src/lib/oauth/oidc-provider-engine.service.js.map +1 -1
- package/security/src/lib/security.module.d.ts.map +1 -1
- package/security/src/lib/security.module.js +1 -0
- package/security/src/lib/security.module.js.map +1 -1
- package/workflow/src/index.d.ts +2 -0
- package/workflow/src/index.d.ts.map +1 -1
- package/workflow/src/index.js +8 -0
- package/workflow/src/index.js.map +1 -1
- package/workflow/src/lib/activities/workflow-request-session.adapter.d.ts +10 -4
- package/workflow/src/lib/activities/workflow-request-session.adapter.d.ts.map +1 -1
- package/workflow/src/lib/activities/workflow-request-session.adapter.js +11 -4
- package/workflow/src/lib/activities/workflow-request-session.adapter.js.map +1 -1
- package/workflow/src/lib/jobs/workflow-job-dispatcher.service.d.ts +10 -1
- package/workflow/src/lib/jobs/workflow-job-dispatcher.service.d.ts.map +1 -1
- package/workflow/src/lib/jobs/workflow-job-dispatcher.service.js +74 -9
- package/workflow/src/lib/jobs/workflow-job-dispatcher.service.js.map +1 -1
- package/workflow/src/lib/jobs/workflow-maintenance.scheduler.d.ts +3 -3
- package/workflow/src/lib/jobs/workflow-maintenance.scheduler.d.ts.map +1 -1
- package/workflow/src/lib/jobs/workflow-maintenance.scheduler.js +6 -4
- package/workflow/src/lib/jobs/workflow-maintenance.scheduler.js.map +1 -1
- package/workflow/src/lib/jobs/workflow-start-idempotency.d.ts +14 -0
- package/workflow/src/lib/jobs/workflow-start-idempotency.d.ts.map +1 -0
- package/workflow/src/lib/jobs/workflow-start-idempotency.js +33 -0
- package/workflow/src/lib/jobs/workflow-start-idempotency.js.map +1 -0
- package/workflow/src/lib/middlewares/workflow-trigger-guard.d.ts +6 -0
- package/workflow/src/lib/middlewares/workflow-trigger-guard.d.ts.map +1 -1
- package/workflow/src/lib/middlewares/workflow-trigger-guard.js +14 -0
- package/workflow/src/lib/middlewares/workflow-trigger-guard.js.map +1 -1
- package/workflow/src/lib/middlewares/workflow-trigger.middleware.d.ts.map +1 -1
- package/workflow/src/lib/middlewares/workflow-trigger.middleware.js +2 -1
- package/workflow/src/lib/middlewares/workflow-trigger.middleware.js.map +1 -1
- package/workflow/src/lib/runtime/jql-workflow-execution-store.service.d.ts +6 -1
- package/workflow/src/lib/runtime/jql-workflow-execution-store.service.d.ts.map +1 -1
- package/workflow/src/lib/runtime/jql-workflow-execution-store.service.js +15 -1
- package/workflow/src/lib/runtime/jql-workflow-execution-store.service.js.map +1 -1
- package/workflow/src/lib/runtime/workflow-engine.service.d.ts +19 -0
- package/workflow/src/lib/runtime/workflow-engine.service.d.ts.map +1 -1
- package/workflow/src/lib/runtime/workflow-engine.service.js +1070 -795
- package/workflow/src/lib/runtime/workflow-engine.service.js.map +1 -1
- package/workflow/src/lib/runtime/workflow-execution-store.service.d.ts +12 -2
- package/workflow/src/lib/runtime/workflow-execution-store.service.d.ts.map +1 -1
- package/workflow/src/lib/runtime/workflow-execution-store.service.js +11 -1
- package/workflow/src/lib/runtime/workflow-execution-store.service.js.map +1 -1
- package/jql/seed/src/lib/jql-seed-analyze.command.d.ts +0 -9
- package/jql/seed/src/lib/jql-seed-analyze.command.d.ts.map +0 -1
- package/jql/seed/src/lib/jql-seed-analyze.command.js +0 -40
- package/jql/seed/src/lib/jql-seed-analyze.command.js.map +0 -1
- package/jql/seed/src/lib/jql-seed-apply.command.d.ts +0 -9
- package/jql/seed/src/lib/jql-seed-apply.command.d.ts.map +0 -1
- package/jql/seed/src/lib/jql-seed-apply.command.js +0 -53
- package/jql/seed/src/lib/jql-seed-apply.command.js.map +0 -1
- package/jql/seed/src/lib/jql-seed-command.bootstrap.d.ts +0 -9
- package/jql/seed/src/lib/jql-seed-command.bootstrap.d.ts.map +0 -1
- package/jql/seed/src/lib/jql-seed-command.bootstrap.js +0 -29
- package/jql/seed/src/lib/jql-seed-command.bootstrap.js.map +0 -1
- package/jql/seed/src/lib/jql-seed-command.registrar.d.ts +0 -12
- package/jql/seed/src/lib/jql-seed-command.registrar.d.ts.map +0 -1
- package/jql/seed/src/lib/jql-seed-command.registrar.js +0 -29
- package/jql/seed/src/lib/jql-seed-command.registrar.js.map +0 -1
- package/jql/seed/src/lib/jql-seed-list-catalog.command.d.ts +0 -9
- package/jql/seed/src/lib/jql-seed-list-catalog.command.d.ts.map +0 -1
- package/jql/seed/src/lib/jql-seed-list-catalog.command.js +0 -30
- package/jql/seed/src/lib/jql-seed-list-catalog.command.js.map +0 -1
- package/jql/seed/src/lib/jql-seed-run.command.d.ts +0 -9
- package/jql/seed/src/lib/jql-seed-run.command.d.ts.map +0 -1
- package/jql/seed/src/lib/jql-seed-run.command.js +0 -43
- package/jql/seed/src/lib/jql-seed-run.command.js.map +0 -1
- package/observability/abstract/src/lib/logger/axp-logger.interface.d.ts +0 -11
- package/observability/abstract/src/lib/logger/axp-logger.interface.d.ts.map +0 -1
- package/observability/abstract/src/lib/logger/axp-logger.interface.js +0 -5
- package/observability/abstract/src/lib/logger/axp-logger.interface.js.map +0 -1
- package/observability/abstract/src/lib/metrics/axp-metrics.interface.d.ts +0 -19
- package/observability/abstract/src/lib/metrics/axp-metrics.interface.d.ts.map +0 -1
- package/observability/abstract/src/lib/metrics/axp-metrics.interface.js +0 -5
- package/observability/abstract/src/lib/metrics/axp-metrics.interface.js.map +0 -1
- package/observability/abstract/src/lib/noop/noop-logger.adapter.d.ts +0 -11
- package/observability/abstract/src/lib/noop/noop-logger.adapter.d.ts.map +0 -1
- package/observability/abstract/src/lib/noop/noop-logger.adapter.js +0 -30
- package/observability/abstract/src/lib/noop/noop-logger.adapter.js.map +0 -1
- package/observability/abstract/src/lib/noop/noop-metrics.adapter.d.ts +0 -16
- package/observability/abstract/src/lib/noop/noop-metrics.adapter.d.ts.map +0 -1
- package/observability/abstract/src/lib/noop/noop-metrics.adapter.js +0 -33
- package/observability/abstract/src/lib/noop/noop-metrics.adapter.js.map +0 -1
- package/observability/abstract/src/lib/noop/noop-tracer.adapter.d.ts +0 -7
- package/observability/abstract/src/lib/noop/noop-tracer.adapter.d.ts.map +0 -1
- package/observability/abstract/src/lib/noop/noop-tracer.adapter.js +0 -32
- package/observability/abstract/src/lib/noop/noop-tracer.adapter.js.map +0 -1
- package/observability/abstract/src/lib/tracer/axp-tracer.interface.d.ts +0 -17
- package/observability/abstract/src/lib/tracer/axp-tracer.interface.d.ts.map +0 -1
- package/observability/abstract/src/lib/tracer/axp-tracer.interface.js +0 -5
- package/observability/abstract/src/lib/tracer/axp-tracer.interface.js.map +0 -1
- package/observability/providers/src/lib/observability.service.d.ts +0 -9
- package/observability/providers/src/lib/observability.service.d.ts.map +0 -1
- package/observability/providers/src/lib/observability.service.js +0 -26
- package/observability/providers/src/lib/observability.service.js.map +0 -1
- package/observability/providers/src/lib/otel/otel-metrics.adapter.d.ts +0 -11
- package/observability/providers/src/lib/otel/otel-metrics.adapter.d.ts.map +0 -1
- package/observability/providers/src/lib/otel/otel-metrics.adapter.js +0 -83
- package/observability/providers/src/lib/otel/otel-metrics.adapter.js.map +0 -1
- package/observability/providers/src/lib/otel/otel-tracer.adapter.d.ts +0 -8
- package/observability/providers/src/lib/otel/otel-tracer.adapter.d.ts.map +0 -1
- package/observability/providers/src/lib/otel/otel-tracer.adapter.js +0 -80
- package/observability/providers/src/lib/otel/otel-tracer.adapter.js.map +0 -1
- package/observability/providers/src/lib/pino/pino-logger.adapter.d.ts +0 -19
- package/observability/providers/src/lib/pino/pino-logger.adapter.d.ts.map +0 -1
- package/observability/providers/src/lib/pino/pino-logger.adapter.js +0 -45
- package/observability/providers/src/lib/pino/pino-logger.adapter.js.map +0 -1
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var JqlReleaseSeedReconcileService_1;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.JqlReleaseSeedReconcileService = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const common_1 = require("@nestjs/common");
|
|
7
|
+
const jql_seed_diff_service_1 = require("./jql-seed-diff.service");
|
|
8
|
+
const jql_multi_seed_runner_service_1 = require("./jql-multi-seed-runner.service");
|
|
9
|
+
const jql_release_ledger_service_1 = require("./jql-release-ledger.service");
|
|
10
|
+
const jql_release_migrate_util_1 = require("./jql-release-migrate.util");
|
|
11
|
+
//#region ---- Release seed reconcile ----
|
|
12
|
+
let JqlReleaseSeedReconcileService = JqlReleaseSeedReconcileService_1 = class JqlReleaseSeedReconcileService {
|
|
13
|
+
constructor(multiSeedRunner, diff, ledger) {
|
|
14
|
+
this.multiSeedRunner = multiSeedRunner;
|
|
15
|
+
this.diff = diff;
|
|
16
|
+
this.ledger = ledger;
|
|
17
|
+
this.logger = new common_1.Logger(JqlReleaseSeedReconcileService_1.name);
|
|
18
|
+
}
|
|
19
|
+
async reconcile(args) {
|
|
20
|
+
const resolved = {
|
|
21
|
+
phase: args.phase,
|
|
22
|
+
selection: {
|
|
23
|
+
modules: [],
|
|
24
|
+
seeds: [],
|
|
25
|
+
entities: [],
|
|
26
|
+
providers: [],
|
|
27
|
+
tags: [],
|
|
28
|
+
excludeModules: [],
|
|
29
|
+
excludeSeeds: [],
|
|
30
|
+
excludeEntities: [],
|
|
31
|
+
excludeProviders: [],
|
|
32
|
+
excludeTags: [],
|
|
33
|
+
dryRun: true,
|
|
34
|
+
list: false,
|
|
35
|
+
listFlat: false,
|
|
36
|
+
removeMissingSeedKeys: false,
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
const plan = await this.multiSeedRunner.planPhase(args.phase, resolved);
|
|
40
|
+
const layerSet = new Set(args.layers);
|
|
41
|
+
const results = [];
|
|
42
|
+
for (const target of plan) {
|
|
43
|
+
const layer = args.phase === 'definitions'
|
|
44
|
+
? 'bootstrap'
|
|
45
|
+
: (0, jql_release_migrate_util_1.resolveReleaseSeedLayer)(target.tags);
|
|
46
|
+
if (!layerSet.has(layer)) {
|
|
47
|
+
continue;
|
|
48
|
+
}
|
|
49
|
+
results.push(await this.reconcileTarget({
|
|
50
|
+
target,
|
|
51
|
+
layer,
|
|
52
|
+
phase: args.phase,
|
|
53
|
+
dryRun: args.dryRun,
|
|
54
|
+
force: args.force,
|
|
55
|
+
}));
|
|
56
|
+
}
|
|
57
|
+
return results;
|
|
58
|
+
}
|
|
59
|
+
async reconcileTarget(args) {
|
|
60
|
+
const { target, layer, phase } = args;
|
|
61
|
+
const base = {
|
|
62
|
+
targetKey: target.key,
|
|
63
|
+
layer,
|
|
64
|
+
phase,
|
|
65
|
+
};
|
|
66
|
+
if (target.kind === 'task') {
|
|
67
|
+
this.logger.log(`Skip task target ${target.key}`);
|
|
68
|
+
return { ...base, skipped: true, skipReason: 'task', applied: 0, kept: 0, failed: 0 };
|
|
69
|
+
}
|
|
70
|
+
const uniqueKeys = target.uniqueKeys?.length ? [...target.uniqueKeys] : ['id'];
|
|
71
|
+
if (!target.records.length) {
|
|
72
|
+
this.logger.warn(`Skip ${target.key} — no declarative rows (custom seed() is not applied on release migrate)`);
|
|
73
|
+
return {
|
|
74
|
+
...base,
|
|
75
|
+
skipped: true,
|
|
76
|
+
skipReason: 'no-declarative-rows',
|
|
77
|
+
applied: 0,
|
|
78
|
+
kept: 0,
|
|
79
|
+
failed: 0,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
const checksum = (0, jql_release_migrate_util_1.hashSeedRecords)(target.records, uniqueKeys);
|
|
83
|
+
const previous = await this.ledger.getSeedTarget(target.key);
|
|
84
|
+
if (!args.force && previous?.checksum === checksum) {
|
|
85
|
+
this.logger.log(`Skip ${target.key} (checksum unchanged)`);
|
|
86
|
+
return {
|
|
87
|
+
...base,
|
|
88
|
+
skipped: true,
|
|
89
|
+
skipReason: 'checksum',
|
|
90
|
+
applied: 0,
|
|
91
|
+
kept: 0,
|
|
92
|
+
failed: 0,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
const removeMissingSeedKeys = layer === 'bootstrap';
|
|
96
|
+
const analyzed = await this.diff.analyzeTarget(target, removeMissingSeedKeys);
|
|
97
|
+
if (analyzed.kind === 'skipped' || analyzed.kind === 'task') {
|
|
98
|
+
return {
|
|
99
|
+
...base,
|
|
100
|
+
skipped: true,
|
|
101
|
+
skipReason: analyzed.skippedReason ?? analyzed.kind,
|
|
102
|
+
applied: 0,
|
|
103
|
+
kept: 0,
|
|
104
|
+
failed: 0,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
const decisions = (0, jql_release_migrate_util_1.expandReleaseSeedDecisions)({
|
|
108
|
+
targetKey: target.key,
|
|
109
|
+
layer,
|
|
110
|
+
ops: analyzed.ops,
|
|
111
|
+
lastRecordChecksums: previous?.recordChecksums,
|
|
112
|
+
});
|
|
113
|
+
const kept = decisions.filter((decision) => decision.action === 'keep-local')
|
|
114
|
+
.length;
|
|
115
|
+
const writable = decisions.filter((decision) => decision.action !== 'keep-local');
|
|
116
|
+
this.logger.log(`${args.dryRun ? '[dry-run] ' : ''}Reconcile ${target.key} layer=${layer} ` +
|
|
117
|
+
`ops=${analyzed.ops.length} write=${writable.length} keep=${kept}`);
|
|
118
|
+
if (args.dryRun) {
|
|
119
|
+
return {
|
|
120
|
+
...base,
|
|
121
|
+
skipped: false,
|
|
122
|
+
applied: writable.length,
|
|
123
|
+
kept,
|
|
124
|
+
failed: 0,
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
if (!writable.length) {
|
|
128
|
+
await this.ledger.recordSeedTarget({
|
|
129
|
+
targetKey: target.key,
|
|
130
|
+
checksum,
|
|
131
|
+
recordChecksums: (0, jql_release_migrate_util_1.mergeRecordChecksumsAfterApply)({
|
|
132
|
+
previous: previous?.recordChecksums ?? {},
|
|
133
|
+
desired: (0, jql_release_migrate_util_1.buildSeedRecordChecksums)(target.records, uniqueKeys),
|
|
134
|
+
decisions,
|
|
135
|
+
}),
|
|
136
|
+
layer,
|
|
137
|
+
appliedAt: new Date().toISOString(),
|
|
138
|
+
});
|
|
139
|
+
return { ...base, skipped: false, applied: 0, kept, failed: 0 };
|
|
140
|
+
}
|
|
141
|
+
const applyResult = await this.diff.applyTargetDecisions(target, writable);
|
|
142
|
+
if (applyResult.failed > 0) {
|
|
143
|
+
this.logger.error(`Reconcile ${target.key} failed ${applyResult.failed} row(s): ${applyResult.errors.join(' | ')}`);
|
|
144
|
+
}
|
|
145
|
+
if (applyResult.failed === 0) {
|
|
146
|
+
await this.ledger.recordSeedTarget({
|
|
147
|
+
targetKey: target.key,
|
|
148
|
+
checksum,
|
|
149
|
+
recordChecksums: (0, jql_release_migrate_util_1.mergeRecordChecksumsAfterApply)({
|
|
150
|
+
previous: previous?.recordChecksums ?? {},
|
|
151
|
+
desired: (0, jql_release_migrate_util_1.buildSeedRecordChecksums)(target.records, uniqueKeys),
|
|
152
|
+
decisions,
|
|
153
|
+
}),
|
|
154
|
+
layer,
|
|
155
|
+
appliedAt: new Date().toISOString(),
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
return {
|
|
159
|
+
...base,
|
|
160
|
+
skipped: false,
|
|
161
|
+
applied: applyResult.applied,
|
|
162
|
+
kept: kept + applyResult.skipped,
|
|
163
|
+
failed: applyResult.failed,
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
};
|
|
167
|
+
exports.JqlReleaseSeedReconcileService = JqlReleaseSeedReconcileService;
|
|
168
|
+
exports.JqlReleaseSeedReconcileService = JqlReleaseSeedReconcileService = JqlReleaseSeedReconcileService_1 = tslib_1.__decorate([
|
|
169
|
+
(0, common_1.Injectable)(),
|
|
170
|
+
tslib_1.__metadata("design:paramtypes", [jql_multi_seed_runner_service_1.JqlMultiSeedRunnerService,
|
|
171
|
+
jql_seed_diff_service_1.JqlSeedDiffService,
|
|
172
|
+
jql_release_ledger_service_1.JqlReleaseLedgerService])
|
|
173
|
+
], JqlReleaseSeedReconcileService);
|
|
174
|
+
//#endregion
|
|
175
|
+
//# sourceMappingURL=jql-release-seed-reconcile.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jql-release-seed-reconcile.service.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/jql/seed/src/lib/jql-release-seed-reconcile.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { type EntityStorageBackend } from '@acorex-platform/framework-server/jql/abstract';
|
|
2
|
+
import { JqlEngineRegistryService } from './jql-engine-registry.service';
|
|
3
|
+
import { JqlMultiSeedRunnerService } from './jql-multi-seed-runner.service';
|
|
4
|
+
import { JqlReleaseLedgerService } from './jql-release-ledger.service';
|
|
5
|
+
import { type JqlReleaseVersionPlan } from './jql-release-version-plan.util';
|
|
6
|
+
export declare class JqlReleaseVersionPlanService {
|
|
7
|
+
private readonly multiSeedRunner;
|
|
8
|
+
private readonly ledger;
|
|
9
|
+
private readonly engineRegistry;
|
|
10
|
+
private readonly entityBackend;
|
|
11
|
+
private readonly logger;
|
|
12
|
+
constructor(multiSeedRunner: JqlMultiSeedRunnerService, ledger: JqlReleaseLedgerService, engineRegistry: JqlEngineRegistryService, entityBackend: EntityStorageBackend);
|
|
13
|
+
cut(args: {
|
|
14
|
+
readonly version: string;
|
|
15
|
+
readonly dir: string;
|
|
16
|
+
}): Promise<JqlReleaseVersionPlan>;
|
|
17
|
+
applyPending(args: {
|
|
18
|
+
readonly dir: string;
|
|
19
|
+
readonly dryRun: boolean;
|
|
20
|
+
}): Promise<{
|
|
21
|
+
applied: string[];
|
|
22
|
+
skipped: string[];
|
|
23
|
+
}>;
|
|
24
|
+
private applyPlan;
|
|
25
|
+
private collectSeedIndex;
|
|
26
|
+
private pushTarget;
|
|
27
|
+
private readSnapshot;
|
|
28
|
+
private readLocal;
|
|
29
|
+
private writeRow;
|
|
30
|
+
private deleteLocal;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=jql-release-version-plan.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jql-release-version-plan.service.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/jql/seed/src/lib/jql-release-version-plan.service.ts"],"names":[],"mappings":"AAMA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAUvE,OAAO,EAUL,KAAK,qBAAqB,EAE3B,MAAM,iCAAiC,CAAC;AAMzC,qBACa,4BAA4B;IAIrC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAPhC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiD;gBAGrD,eAAe,EAAE,yBAAyB,EAC1C,MAAM,EAAE,uBAAuB,EAC/B,cAAc,EAAE,wBAAwB,EAExC,aAAa,EAAE,oBAAoB;IAGhD,GAAG,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAgC7F,YAAY,CAAC,IAAI,EAAE;QACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;KAC1B,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;YAoDvC,SAAS;YAoDT,gBAAgB;IAW9B,OAAO,CAAC,UAAU;YA6BJ,YAAY;YAQZ,SAAS;YAqBT,QAAQ;YA0CR,WAAW;CAW1B"}
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var JqlReleaseVersionPlanService_1;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.JqlReleaseVersionPlanService = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const node_crypto_1 = require("node:crypto");
|
|
7
|
+
const node_fs_1 = require("node:fs");
|
|
8
|
+
const promises_1 = require("node:fs/promises");
|
|
9
|
+
const node_path_1 = require("node:path");
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const core_1 = require("@acorex-platform/framework-server/core");
|
|
12
|
+
const abstract_1 = require("@acorex-platform/framework-server/jql/abstract");
|
|
13
|
+
const jql_engine_registry_service_1 = require("./jql-engine-registry.service");
|
|
14
|
+
const jql_multi_seed_runner_service_1 = require("./jql-multi-seed-runner.service");
|
|
15
|
+
const jql_release_ledger_service_1 = require("./jql-release-ledger.service");
|
|
16
|
+
const jql_seed_diff_util_1 = require("./jql-seed-diff.util");
|
|
17
|
+
const jql_release_migrate_util_1 = require("./jql-release-migrate.util");
|
|
18
|
+
const jql_release_version_plan_util_1 = require("./jql-release-version-plan.util");
|
|
19
|
+
//#region ---- Version plan files ----
|
|
20
|
+
const SNAPSHOT_FILE = 'snapshot.json';
|
|
21
|
+
let JqlReleaseVersionPlanService = JqlReleaseVersionPlanService_1 = class JqlReleaseVersionPlanService {
|
|
22
|
+
constructor(multiSeedRunner, ledger, engineRegistry, entityBackend) {
|
|
23
|
+
this.multiSeedRunner = multiSeedRunner;
|
|
24
|
+
this.ledger = ledger;
|
|
25
|
+
this.engineRegistry = engineRegistry;
|
|
26
|
+
this.entityBackend = entityBackend;
|
|
27
|
+
this.logger = new common_1.Logger(JqlReleaseVersionPlanService_1.name);
|
|
28
|
+
}
|
|
29
|
+
async cut(args) {
|
|
30
|
+
const version = (0, jql_release_version_plan_util_1.parseSemver)(args.version).raw;
|
|
31
|
+
const current = await this.collectSeedIndex();
|
|
32
|
+
const previous = await this.readSnapshot(args.dir);
|
|
33
|
+
const plan = (0, jql_release_version_plan_util_1.buildVersionPlan)({
|
|
34
|
+
version,
|
|
35
|
+
createdAt: new Date().toISOString(),
|
|
36
|
+
current,
|
|
37
|
+
previous,
|
|
38
|
+
});
|
|
39
|
+
if (!plan.baseline && plan.operations.length === 0) {
|
|
40
|
+
throw new Error(`No seed changes since version ${previous?.version ?? 'snapshot'}`);
|
|
41
|
+
}
|
|
42
|
+
await (0, promises_1.mkdir)(args.dir, { recursive: true });
|
|
43
|
+
const planPath = (0, node_path_1.join)(args.dir, `${version}.json`);
|
|
44
|
+
if ((0, node_fs_1.existsSync)(planPath)) {
|
|
45
|
+
throw new Error(`Version plan already exists: ${planPath}`);
|
|
46
|
+
}
|
|
47
|
+
await (0, promises_1.writeFile)(planPath, `${JSON.stringify(plan, null, 2)}\n`, 'utf8');
|
|
48
|
+
await (0, promises_1.writeFile)((0, node_path_1.join)(args.dir, SNAPSHOT_FILE), `${JSON.stringify((0, jql_release_version_plan_util_1.snapshotFromIndex)(version, current))}\n`, 'utf8');
|
|
49
|
+
this.logger.log(`Wrote ${version}.json baseline=${plan.baseline} operations=${plan.operations.length}`);
|
|
50
|
+
return plan;
|
|
51
|
+
}
|
|
52
|
+
async applyPending(args) {
|
|
53
|
+
const applied = [];
|
|
54
|
+
const skipped = [];
|
|
55
|
+
if (!args.dir || !(0, node_fs_1.existsSync)(args.dir)) {
|
|
56
|
+
this.logger.log('No release version directory');
|
|
57
|
+
return { applied, skipped };
|
|
58
|
+
}
|
|
59
|
+
const versions = (await (0, promises_1.readdir)(args.dir))
|
|
60
|
+
.filter((name) => /^\d+\.\d+\.\d+\.json$/.test(name))
|
|
61
|
+
.map((name) => name.slice(0, -'.json'.length))
|
|
62
|
+
.sort(jql_release_version_plan_util_1.compareSemver);
|
|
63
|
+
for (const version of versions) {
|
|
64
|
+
const migrationId = versionMigrationId(version);
|
|
65
|
+
const raw = await (0, promises_1.readFile)((0, node_path_1.join)(args.dir, `${version}.json`), 'utf8');
|
|
66
|
+
const checksum = (0, node_crypto_1.createHash)('sha256').update(raw).digest('hex');
|
|
67
|
+
const existing = await this.ledger.getAppliedMigration(migrationId);
|
|
68
|
+
if (existing) {
|
|
69
|
+
if (existing.checksum !== checksum) {
|
|
70
|
+
throw new Error(`Version ${version} changed after it was applied`);
|
|
71
|
+
}
|
|
72
|
+
skipped.push(version);
|
|
73
|
+
this.logger.log(`Skip version ${version} (already applied)`);
|
|
74
|
+
continue;
|
|
75
|
+
}
|
|
76
|
+
const plan = JSON.parse(raw);
|
|
77
|
+
if (args.dryRun) {
|
|
78
|
+
this.logger.log(`[dry-run] Would apply version ${version} operations=${plan.operations.length} baseline=${plan.baseline}`);
|
|
79
|
+
applied.push(version);
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
const counts = await this.applyPlan(plan);
|
|
83
|
+
await this.ledger.recordMigration({
|
|
84
|
+
migrationId,
|
|
85
|
+
checksum,
|
|
86
|
+
appliedAt: new Date().toISOString(),
|
|
87
|
+
});
|
|
88
|
+
applied.push(version);
|
|
89
|
+
this.logger.log(`Applied version ${version} insert=${counts.insert} update=${counts.update} delete=${counts.delete} kept=${counts.kept}`);
|
|
90
|
+
}
|
|
91
|
+
return { applied, skipped };
|
|
92
|
+
}
|
|
93
|
+
async applyPlan(plan) {
|
|
94
|
+
const counts = { insert: 0, update: 0, delete: 0, kept: 0 };
|
|
95
|
+
if (plan.baseline) {
|
|
96
|
+
return counts;
|
|
97
|
+
}
|
|
98
|
+
for (const operation of plan.operations) {
|
|
99
|
+
const local = await this.readLocal(operation);
|
|
100
|
+
if (operation.op === 'insert' || operation.op === 'update') {
|
|
101
|
+
if (!operation.record) {
|
|
102
|
+
counts.kept += 1;
|
|
103
|
+
continue;
|
|
104
|
+
}
|
|
105
|
+
const record = (0, jql_release_version_plan_util_1.reviveDates)(operation.record);
|
|
106
|
+
if (operation.op === 'insert') {
|
|
107
|
+
if (local) {
|
|
108
|
+
counts.kept += 1;
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
await this.writeRow(operation, record);
|
|
112
|
+
counts.insert += 1;
|
|
113
|
+
continue;
|
|
114
|
+
}
|
|
115
|
+
if (local && operation.previousHash && (0, jql_release_migrate_util_1.hashSeedRecord)(local) !== operation.previousHash) {
|
|
116
|
+
counts.kept += 1;
|
|
117
|
+
continue;
|
|
118
|
+
}
|
|
119
|
+
await this.writeRow(operation, record);
|
|
120
|
+
counts.update += 1;
|
|
121
|
+
continue;
|
|
122
|
+
}
|
|
123
|
+
if (!local || !(0, jql_release_migrate_util_1.isSeedOwnedRow)(local)) {
|
|
124
|
+
counts.kept += 1;
|
|
125
|
+
continue;
|
|
126
|
+
}
|
|
127
|
+
if (operation.previousHash && (0, jql_release_migrate_util_1.hashSeedRecord)(local) !== operation.previousHash) {
|
|
128
|
+
counts.kept += 1;
|
|
129
|
+
continue;
|
|
130
|
+
}
|
|
131
|
+
await this.deleteLocal(operation);
|
|
132
|
+
counts.delete += 1;
|
|
133
|
+
}
|
|
134
|
+
return counts;
|
|
135
|
+
}
|
|
136
|
+
async collectSeedIndex() {
|
|
137
|
+
const entries = [];
|
|
138
|
+
for (const phase of ['definitions', 'data']) {
|
|
139
|
+
const plan = await this.multiSeedRunner.planPhase(phase, emptySelection(phase));
|
|
140
|
+
for (const target of plan) {
|
|
141
|
+
this.pushTarget(entries, target, phase === 'definitions' ? 'bootstrap' : undefined);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
return entries;
|
|
145
|
+
}
|
|
146
|
+
pushTarget(entries, target, forcedLayer) {
|
|
147
|
+
if (target.kind === 'task' || !target.records.length) {
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
const uniqueKeys = target.uniqueKeys?.length ? [...target.uniqueKeys] : ['id'];
|
|
151
|
+
const layer = forcedLayer ?? (0, jql_release_migrate_util_1.resolveReleaseSeedLayer)(target.tags);
|
|
152
|
+
for (const record of target.records) {
|
|
153
|
+
const recordKey = (0, jql_seed_diff_util_1.buildJqlSeedRecordKey)(record, uniqueKeys);
|
|
154
|
+
if (!recordKey) {
|
|
155
|
+
continue;
|
|
156
|
+
}
|
|
157
|
+
entries.push({
|
|
158
|
+
hash: (0, jql_release_version_plan_util_1.hashIndexRecord)(record),
|
|
159
|
+
targetKey: target.key,
|
|
160
|
+
target: target.target,
|
|
161
|
+
kind: target.kind,
|
|
162
|
+
jqlInstance: target.jqlInstance,
|
|
163
|
+
layer,
|
|
164
|
+
uniqueKeys,
|
|
165
|
+
recordKey,
|
|
166
|
+
record: (0, jql_release_version_plan_util_1.cloneJson)(record),
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
async readSnapshot(dir) {
|
|
171
|
+
const path = (0, node_path_1.join)(dir, SNAPSHOT_FILE);
|
|
172
|
+
if (!(0, node_fs_1.existsSync)(path)) {
|
|
173
|
+
return null;
|
|
174
|
+
}
|
|
175
|
+
return JSON.parse(await (0, promises_1.readFile)(path, 'utf8'));
|
|
176
|
+
}
|
|
177
|
+
async readLocal(operation) {
|
|
178
|
+
const located = locateRow(operation);
|
|
179
|
+
try {
|
|
180
|
+
if (operation.kind === 'entity') {
|
|
181
|
+
return (await this.entityBackend.getOne(operation.target, located.id));
|
|
182
|
+
}
|
|
183
|
+
const found = await this.engineRegistry.get(operation.jqlInstance).findOne({
|
|
184
|
+
from: operation.target,
|
|
185
|
+
where: located.where,
|
|
186
|
+
});
|
|
187
|
+
return (found ?? undefined);
|
|
188
|
+
}
|
|
189
|
+
catch {
|
|
190
|
+
return undefined;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
async writeRow(operation, record) {
|
|
194
|
+
const row = operation.kind === 'entity'
|
|
195
|
+
? (0, abstract_1.stampEntitySeedScope)(operation.target, record)
|
|
196
|
+
: record;
|
|
197
|
+
const located = locateRow(operation, row);
|
|
198
|
+
if (operation.kind === 'entity') {
|
|
199
|
+
const existing = await this.readLocal(operation);
|
|
200
|
+
if (existing) {
|
|
201
|
+
const writeId = existing['id'] != null && String(existing['id']).length > 0
|
|
202
|
+
? String(existing['id'])
|
|
203
|
+
: located.id;
|
|
204
|
+
const payload = { ...row };
|
|
205
|
+
if (operation.uniqueKeys.includes('id')) {
|
|
206
|
+
payload['id'] = writeId;
|
|
207
|
+
}
|
|
208
|
+
await this.entityBackend.updateOne(operation.target, writeId, payload);
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
await this.entityBackend.insertOne(operation.target, { ...row });
|
|
212
|
+
}
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
const engine = this.engineRegistry.get(operation.jqlInstance);
|
|
216
|
+
const existing = await engine.findOne({
|
|
217
|
+
from: operation.target,
|
|
218
|
+
where: located.where,
|
|
219
|
+
});
|
|
220
|
+
if (existing) {
|
|
221
|
+
await engine.update({
|
|
222
|
+
update: operation.target,
|
|
223
|
+
where: located.where,
|
|
224
|
+
set: { ...row },
|
|
225
|
+
});
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
await engine.insert({ into: operation.target, documents: [{ ...row }] });
|
|
229
|
+
}
|
|
230
|
+
async deleteLocal(operation) {
|
|
231
|
+
const located = locateRow(operation);
|
|
232
|
+
if (operation.kind === 'entity') {
|
|
233
|
+
await this.entityBackend.deleteOne(operation.target, located.id);
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
await this.engineRegistry.get(operation.jqlInstance).delete({
|
|
237
|
+
from: operation.target,
|
|
238
|
+
where: located.where,
|
|
239
|
+
});
|
|
240
|
+
}
|
|
241
|
+
};
|
|
242
|
+
exports.JqlReleaseVersionPlanService = JqlReleaseVersionPlanService;
|
|
243
|
+
exports.JqlReleaseVersionPlanService = JqlReleaseVersionPlanService = JqlReleaseVersionPlanService_1 = tslib_1.__decorate([
|
|
244
|
+
(0, common_1.Injectable)(),
|
|
245
|
+
tslib_1.__param(3, (0, common_1.Inject)(core_1.ENTITY_STORAGE_BACKEND)),
|
|
246
|
+
tslib_1.__metadata("design:paramtypes", [jql_multi_seed_runner_service_1.JqlMultiSeedRunnerService,
|
|
247
|
+
jql_release_ledger_service_1.JqlReleaseLedgerService,
|
|
248
|
+
jql_engine_registry_service_1.JqlEngineRegistryService, Object])
|
|
249
|
+
], JqlReleaseVersionPlanService);
|
|
250
|
+
function locateRow(operation, record) {
|
|
251
|
+
const parts = operation.recordKey.split('\u0001');
|
|
252
|
+
const idIndex = operation.uniqueKeys.indexOf('id');
|
|
253
|
+
const index = idIndex >= 0 ? idIndex : 0;
|
|
254
|
+
const idKey = operation.uniqueKeys[index] ?? 'id';
|
|
255
|
+
const fromRecord = record?.[idKey];
|
|
256
|
+
const id = fromRecord != null && String(fromRecord).length > 0 ? String(fromRecord) : String(parts[index] ?? '');
|
|
257
|
+
const filters = operation.uniqueKeys.map((key, keyIndex) => (0, abstract_1.eqCondition)(key, record?.[key] != null ? String(record[key]) : String(parts[keyIndex] ?? '')));
|
|
258
|
+
const where = filters.length === 1 ? filters[0] : { logic: 'and', filters };
|
|
259
|
+
return { id, where };
|
|
260
|
+
}
|
|
261
|
+
function versionMigrationId(version) {
|
|
262
|
+
return `version:${version}`;
|
|
263
|
+
}
|
|
264
|
+
function emptySelection(phase) {
|
|
265
|
+
return {
|
|
266
|
+
phase,
|
|
267
|
+
selection: {
|
|
268
|
+
modules: [],
|
|
269
|
+
seeds: [],
|
|
270
|
+
entities: [],
|
|
271
|
+
providers: [],
|
|
272
|
+
tags: [],
|
|
273
|
+
excludeModules: [],
|
|
274
|
+
excludeSeeds: [],
|
|
275
|
+
excludeEntities: [],
|
|
276
|
+
excludeProviders: [],
|
|
277
|
+
excludeTags: [],
|
|
278
|
+
dryRun: true,
|
|
279
|
+
list: false,
|
|
280
|
+
listFlat: false,
|
|
281
|
+
removeMissingSeedKeys: false,
|
|
282
|
+
},
|
|
283
|
+
};
|
|
284
|
+
}
|
|
285
|
+
//#endregion
|
|
286
|
+
//# sourceMappingURL=jql-release-version-plan.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jql-release-version-plan.service.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/jql/seed/src/lib/jql-release-version-plan.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { JqlReleaseLayer } from './jql-release-migrate.types';
|
|
2
|
+
export type JqlReleaseVersionOpKind = 'insert' | 'update' | 'delete';
|
|
3
|
+
export interface JqlReleaseVersionOperation {
|
|
4
|
+
readonly op: JqlReleaseVersionOpKind;
|
|
5
|
+
readonly targetKey: string;
|
|
6
|
+
readonly target: string;
|
|
7
|
+
readonly kind: 'entity' | 'store';
|
|
8
|
+
readonly jqlInstance: string;
|
|
9
|
+
readonly layer: JqlReleaseLayer;
|
|
10
|
+
readonly uniqueKeys: readonly string[];
|
|
11
|
+
readonly recordKey: string;
|
|
12
|
+
readonly previousHash?: string;
|
|
13
|
+
readonly record?: Record<string, unknown>;
|
|
14
|
+
}
|
|
15
|
+
export interface JqlReleaseVersionPlan {
|
|
16
|
+
readonly version: string;
|
|
17
|
+
readonly createdAt: string;
|
|
18
|
+
/** First cut adopts the current seed. Later files are the delta. */
|
|
19
|
+
readonly baseline: boolean;
|
|
20
|
+
readonly operations: readonly JqlReleaseVersionOperation[];
|
|
21
|
+
}
|
|
22
|
+
export interface JqlReleaseVersionSnapshotEntry {
|
|
23
|
+
readonly hash: string;
|
|
24
|
+
readonly targetKey: string;
|
|
25
|
+
readonly target: string;
|
|
26
|
+
readonly kind: 'entity' | 'store';
|
|
27
|
+
readonly jqlInstance: string;
|
|
28
|
+
readonly layer: JqlReleaseLayer;
|
|
29
|
+
readonly uniqueKeys: readonly string[];
|
|
30
|
+
readonly recordKey: string;
|
|
31
|
+
}
|
|
32
|
+
export interface JqlReleaseVersionSnapshot {
|
|
33
|
+
readonly version: string;
|
|
34
|
+
readonly entries: Readonly<Record<string, JqlReleaseVersionSnapshotEntry>>;
|
|
35
|
+
}
|
|
36
|
+
export interface JqlReleaseSeedIndexEntry extends JqlReleaseVersionSnapshotEntry {
|
|
37
|
+
readonly record: Record<string, unknown>;
|
|
38
|
+
}
|
|
39
|
+
export declare function versionPlanEntryKey(targetKey: string, recordKey: string): string;
|
|
40
|
+
export declare function parseSemver(version: string): {
|
|
41
|
+
major: number;
|
|
42
|
+
minor: number;
|
|
43
|
+
patch: number;
|
|
44
|
+
raw: string;
|
|
45
|
+
};
|
|
46
|
+
export declare function compareSemver(left: string, right: string): number;
|
|
47
|
+
export declare function buildVersionPlan(args: {
|
|
48
|
+
readonly version: string;
|
|
49
|
+
readonly createdAt: string;
|
|
50
|
+
readonly current: readonly JqlReleaseSeedIndexEntry[];
|
|
51
|
+
readonly previous: JqlReleaseVersionSnapshot | null;
|
|
52
|
+
}): JqlReleaseVersionPlan;
|
|
53
|
+
export declare function snapshotFromIndex(version: string, current: readonly JqlReleaseSeedIndexEntry[]): JqlReleaseVersionSnapshot;
|
|
54
|
+
export declare function hashIndexRecord(record: Record<string, unknown>): string;
|
|
55
|
+
export declare function cloneJson<T>(value: T): T;
|
|
56
|
+
export declare function reviveDates(value: unknown): unknown;
|
|
57
|
+
//# sourceMappingURL=jql-release-version-plan.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jql-release-version-plan.util.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/jql/seed/src/lib/jql-release-version-plan.util.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAInE,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAErE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,EAAE,EAAE,uBAAuB,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,oEAAoE;IACpE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,SAAS,0BAA0B,EAAE,CAAC;CAC5D;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC,CAAC;CAC5E;AAED,MAAM,WAAW,wBAAyB,SAAQ,8BAA8B;IAC9E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAMD,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEhF;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAWzG;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAUjE;AAMD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACtD,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,GAAG,IAAI,CAAC;CACrD,GAAG,qBAAqB,CAmDxB;AAqBD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,SAAS,wBAAwB,EAAE,GAC3C,yBAAyB,CAe3B;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAEvE;AAQD,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAExC;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAgBnD"}
|