@rockster/core 0.0.2 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/access/access.module.d.ts +11 -0
- package/access/access.module.js +56 -0
- package/access/access.module.js.map +1 -0
- package/access/constants.d.ts +2 -0
- package/access/constants.js +6 -0
- package/access/constants.js.map +1 -0
- package/access/controllers/controllers.d.ts +7 -0
- package/access/controllers/controllers.js +18 -0
- package/access/controllers/controllers.js.map +1 -0
- package/access/controllers/scope-access-profile.controller.d.ts +17 -0
- package/access/controllers/scope-access-profile.controller.js +111 -0
- package/access/controllers/scope-access-profile.controller.js.map +1 -0
- package/access/controllers/scope-group-user.controller.d.ts +20 -0
- package/access/controllers/scope-group-user.controller.js +132 -0
- package/access/controllers/scope-group-user.controller.js.map +1 -0
- package/access/controllers/scope-group.controller.d.ts +22 -0
- package/access/controllers/scope-group.controller.js +177 -0
- package/access/controllers/scope-group.controller.js.map +1 -0
- package/access/controllers/scope-key.controller.d.ts +7 -0
- package/access/controllers/scope-key.controller.js +45 -0
- package/access/controllers/scope-key.controller.js.map +1 -0
- package/access/controllers/scope-owner.controller.d.ts +9 -0
- package/access/controllers/scope-owner.controller.js +80 -0
- package/access/controllers/scope-owner.controller.js.map +1 -0
- package/access/controllers/scope-user.controller.d.ts +14 -0
- package/access/controllers/scope-user.controller.js +109 -0
- package/access/controllers/scope-user.controller.js.map +1 -0
- package/access/decorators/context-params.decorator.d.ts +2 -0
- package/access/decorators/context-params.decorator.js +13 -0
- package/access/decorators/context-params.decorator.js.map +1 -0
- package/access/decorators/index.d.ts +2 -0
- package/access/decorators/index.js +19 -0
- package/access/decorators/index.js.map +1 -0
- package/access/decorators/scope-context-id-resolver.decorator.d.ts +10 -0
- package/access/decorators/scope-context-id-resolver.decorator.js +22 -0
- package/access/decorators/scope-context-id-resolver.decorator.js.map +1 -0
- package/access/entities/entities.d.ts +8 -0
- package/access/entities/entities.js +22 -0
- package/access/entities/entities.js.map +1 -0
- package/access/entities/index.d.ts +7 -0
- package/access/entities/index.js +24 -0
- package/access/entities/index.js.map +1 -0
- package/access/entities/scope-access-profile-key.d.ts +6 -0
- package/access/entities/scope-access-profile-key.js +40 -0
- package/access/entities/scope-access-profile-key.js.map +1 -0
- package/access/entities/scope-access-profile.d.ts +6 -0
- package/access/entities/scope-access-profile.js +37 -0
- package/access/entities/scope-access-profile.js.map +1 -0
- package/access/entities/scope-access.d.ts +9 -0
- package/access/entities/scope-access.js +58 -0
- package/access/entities/scope-access.js.map +1 -0
- package/access/entities/scope-group-user.d.ts +7 -0
- package/access/entities/scope-group-user.js +47 -0
- package/access/entities/scope-group-user.js.map +1 -0
- package/access/entities/scope-group.d.ts +12 -0
- package/access/entities/scope-group.js +72 -0
- package/access/entities/scope-group.js.map +1 -0
- package/access/entities/scope-key.d.ts +5 -0
- package/access/entities/scope-key.js +35 -0
- package/access/entities/scope-key.js.map +1 -0
- package/access/entities/scope-owner.d.ts +7 -0
- package/access/entities/scope-owner.js +45 -0
- package/access/entities/scope-owner.js.map +1 -0
- package/access/env.d.ts +10 -0
- package/access/env.js +10 -0
- package/access/env.js.map +1 -0
- package/access/functions/assert-context-admin-access.d.ts +15 -0
- package/access/functions/assert-context-admin-access.js +62 -0
- package/access/functions/assert-context-admin-access.js.map +1 -0
- package/access/functions/assert-master-or-owner.d.ts +9 -0
- package/access/functions/assert-master-or-owner.js +40 -0
- package/access/functions/assert-master-or-owner.js.map +1 -0
- package/access/functions/assert-scope-action-access.d.ts +32 -0
- package/access/functions/assert-scope-action-access.js +189 -0
- package/access/functions/assert-scope-action-access.js.map +1 -0
- package/access/functions/build-scope-resolver-initial-data.d.ts +4 -0
- package/access/functions/build-scope-resolver-initial-data.js +17 -0
- package/access/functions/build-scope-resolver-initial-data.js.map +1 -0
- package/access/functions/describe-action-scope.d.ts +9 -0
- package/access/functions/describe-action-scope.js +27 -0
- package/access/functions/describe-action-scope.js.map +1 -0
- package/access/functions/get-context-id-service.d.ts +1 -0
- package/access/functions/get-context-id-service.js +8 -0
- package/access/functions/get-context-id-service.js.map +1 -0
- package/access/functions/get-is-owner.d.ts +1 -0
- package/access/functions/get-is-owner.js +8 -0
- package/access/functions/get-is-owner.js.map +1 -0
- package/access/functions/get-user-keys.d.ts +2 -0
- package/access/functions/get-user-keys.js +10 -0
- package/access/functions/get-user-keys.js.map +1 -0
- package/access/functions/index.d.ts +8 -0
- package/access/functions/index.js +25 -0
- package/access/functions/index.js.map +1 -0
- package/access/functions/init-scope-service-executors.d.ts +3 -0
- package/access/functions/init-scope-service-executors.js +38 -0
- package/access/functions/init-scope-service-executors.js.map +1 -0
- package/access/functions/normalize-scope-keys.d.ts +4 -0
- package/access/functions/normalize-scope-keys.js +17 -0
- package/access/functions/normalize-scope-keys.js.map +1 -0
- package/access/functions/register-scope.d.ts +19 -0
- package/access/functions/register-scope.js +94 -0
- package/access/functions/register-scope.js.map +1 -0
- package/access/functions/resolve-scope-context-id.d.ts +9 -0
- package/access/functions/resolve-scope-context-id.js +71 -0
- package/access/functions/resolve-scope-context-id.js.map +1 -0
- package/access/functions/warn-if-public.d.ts +12 -0
- package/access/functions/warn-if-public.js +20 -0
- package/access/functions/warn-if-public.js.map +1 -0
- package/access/index.d.ts +7 -0
- package/access/index.js +24 -0
- package/access/index.js.map +1 -0
- package/access/interfaces/index.d.ts +3 -0
- package/access/interfaces/index.js +20 -0
- package/access/interfaces/index.js.map +1 -0
- package/access/interfaces/resolve-scope-context-id.d.ts +21 -0
- package/access/interfaces/resolve-scope-context-id.js +3 -0
- package/access/interfaces/resolve-scope-context-id.js.map +1 -0
- package/access/interfaces/scope-service-registry.d.ts +21 -0
- package/access/interfaces/scope-service-registry.js +3 -0
- package/access/interfaces/scope-service-registry.js.map +1 -0
- package/access/interfaces/scope-service.d.ts +11 -0
- package/{database/interfaces/protector.js → access/interfaces/scope-service.js} +1 -1
- package/access/interfaces/scope-service.js.map +1 -0
- package/access/models/scope-access-profile-keys-update.d.ts +5 -0
- package/access/models/scope-access-profile-keys-update.js +27 -0
- package/access/models/scope-access-profile-keys-update.js.map +1 -0
- package/access/models/scope-context.d.ts +4 -0
- package/access/models/scope-context.js +27 -0
- package/access/models/scope-context.js.map +1 -0
- package/access/models/scope-group-apply-access-profile.d.ts +6 -0
- package/access/models/scope-group-apply-access-profile.js +32 -0
- package/access/models/scope-group-apply-access-profile.js.map +1 -0
- package/access/models/scope-keys-update.d.ts +7 -0
- package/access/models/scope-keys-update.js +38 -0
- package/access/models/scope-keys-update.js.map +1 -0
- package/access/models/scope-owner.d.ts +5 -0
- package/access/models/scope-owner.js +32 -0
- package/access/models/scope-owner.js.map +1 -0
- package/access/models/scope-user-mapped.d.ts +9 -0
- package/access/models/scope-user-mapped.js +48 -0
- package/access/models/scope-user-mapped.js.map +1 -0
- package/access/models/scope-user.d.ts +9 -0
- package/access/models/scope-user.js +51 -0
- package/access/models/scope-user.js.map +1 -0
- package/access/queries/scope-access-profile.query.d.ts +1 -0
- package/access/queries/scope-access-profile.query.js +10 -0
- package/access/queries/scope-access-profile.query.js.map +1 -0
- package/access/queries/scope-group-user.query.d.ts +1 -0
- package/access/queries/scope-group-user.query.js +26 -0
- package/access/queries/scope-group-user.query.js.map +1 -0
- package/access/queries/scope-group.query.d.ts +1 -0
- package/access/queries/scope-group.query.js +19 -0
- package/access/queries/scope-group.query.js.map +1 -0
- package/access/services/index.d.ts +7 -0
- package/access/services/index.js +24 -0
- package/access/services/index.js.map +1 -0
- package/access/services/scope-access-profile.service.d.ts +13 -0
- package/access/services/scope-access-profile.service.js +75 -0
- package/access/services/scope-access-profile.service.js.map +1 -0
- package/access/services/scope-access.service.d.ts +11 -0
- package/access/services/scope-access.service.js +89 -0
- package/access/services/scope-access.service.js.map +1 -0
- package/access/services/scope-group-user.service.d.ts +8 -0
- package/access/services/scope-group-user.service.js +49 -0
- package/access/services/scope-group-user.service.js.map +1 -0
- package/access/services/scope-group.service.d.ts +17 -0
- package/access/services/scope-group.service.js +75 -0
- package/access/services/scope-group.service.js.map +1 -0
- package/access/services/scope-key.service.d.ts +9 -0
- package/access/services/scope-key.service.js +52 -0
- package/access/services/scope-key.service.js.map +1 -0
- package/access/services/scope-owner.service.d.ts +10 -0
- package/access/services/scope-owner.service.js +60 -0
- package/access/services/scope-owner.service.js.map +1 -0
- package/access/services/scope-service.d.ts +10 -0
- package/access/services/scope-service.js +52 -0
- package/access/services/scope-service.js.map +1 -0
- package/command/functions/execute-post.js +5 -7
- package/command/functions/execute-post.js.map +1 -1
- package/command/services/post-action-builder.js +21 -17
- package/command/services/post-action-builder.js.map +1 -1
- package/command/services/remove-action-builder.js +32 -22
- package/command/services/remove-action-builder.js.map +1 -1
- package/common/entities/base-entity.js +2 -0
- package/common/entities/base-entity.js.map +1 -1
- package/common/interfaces/enum/object-type.d.ts +2 -1
- package/common/interfaces/enum/object-type.js +1 -0
- package/common/interfaces/enum/object-type.js.map +1 -1
- package/controllers/constants/controller-transaction.d.ts +2 -0
- package/controllers/constants/controller-transaction.js +6 -0
- package/controllers/constants/controller-transaction.js.map +1 -0
- package/controllers/controller.controller.d.ts +1 -1
- package/controllers/controller.controller.js +4 -4
- package/controllers/controller.controller.js.map +1 -1
- package/controllers/decorators/controller.decorator.js +8 -0
- package/controllers/decorators/controller.decorator.js.map +1 -1
- package/controllers/decorators/index.d.ts +1 -0
- package/controllers/decorators/index.js +1 -0
- package/controllers/decorators/index.js.map +1 -1
- package/controllers/decorators/transaction.decorator.d.ts +7 -0
- package/controllers/decorators/transaction.decorator.js +23 -0
- package/controllers/decorators/transaction.decorator.js.map +1 -0
- package/controllers/interfaces/controller-object.d.ts +1 -0
- package/controllers/interfaces/controller-options.d.ts +1 -0
- package/controllers/interfaces/controller-property.d.ts +9 -0
- package/controllers/services/default-action-builder.js +14 -0
- package/controllers/services/default-action-builder.js.map +1 -1
- package/controllers/services/restful-action-builder.js +25 -1
- package/controllers/services/restful-action-builder.js.map +1 -1
- package/core/contexts/request-context.d.ts +5 -0
- package/core/contexts/request-context.js +6 -0
- package/core/contexts/request-context.js.map +1 -0
- package/core/core.controller.d.ts +1 -0
- package/core/core.controller.js +15 -2
- package/core/core.controller.js.map +1 -1
- package/core/functions/create-interceptor.js +2 -2
- package/core/functions/create-interceptor.js.map +1 -1
- package/core/functions/resolve-action-transactional.d.ts +3 -0
- package/core/functions/resolve-action-transactional.js +10 -0
- package/core/functions/resolve-action-transactional.js.map +1 -0
- package/core/interfaces/action-def.d.ts +2 -5
- package/core/interfaces/action-docs.d.ts +15 -0
- package/core/interfaces/action-handle.d.ts +5 -0
- package/core/interfaces/action-handle.js +3 -0
- package/core/interfaces/action-handle.js.map +1 -0
- package/core/interfaces/core-options.d.ts +1 -0
- package/core/interfaces/interceptor.d.ts +1 -1
- package/core/interfaces/object.d.ts +3 -2
- package/core/interfaces/request-context.d.ts +7 -2
- package/core/services/request-executor.d.ts +8 -0
- package/core/services/request-executor.js +88 -0
- package/core/services/request-executor.js.map +1 -1
- package/core/services/request-router.js +5 -4
- package/core/services/request-router.js.map +1 -1
- package/database/database.controller.d.ts +1 -3
- package/database/database.controller.js +1 -5
- package/database/database.controller.js.map +1 -1
- package/database/decorators/entity.decorator.d.ts +3 -1
- package/database/decorators/entity.decorator.js +14 -5
- package/database/decorators/entity.decorator.js.map +1 -1
- package/database/decorators/external-column.decorator.d.ts +17 -0
- package/database/decorators/external-column.decorator.js +30 -0
- package/database/decorators/external-column.decorator.js.map +1 -0
- package/database/decorators/index.d.ts +1 -0
- package/database/decorators/index.js +1 -0
- package/database/decorators/index.js.map +1 -1
- package/database/decorators/protect-entity.decorator.d.ts +1 -0
- package/database/decorators/protect-entity.decorator.js +2 -3
- package/database/decorators/protect-entity.decorator.js.map +1 -1
- package/database/decorators/protected-entity.decorator.d.ts +1 -0
- package/database/decorators/protected-entity.decorator.js +2 -16
- package/database/decorators/protected-entity.decorator.js.map +1 -1
- package/database/decorators/relation.decorator.d.ts +2 -2
- package/database/decorators/relation.decorator.js.map +1 -1
- package/database/extensions/select-query-builder.d.ts +1 -5
- package/database/extensions/select-query-builder.js.map +1 -1
- package/database/functions/find-relation.d.ts +2 -1
- package/database/functions/find-relation.js +3 -3
- package/database/functions/find-relation.js.map +1 -1
- package/database/functions/generate-entity-id.d.ts +2 -0
- package/database/functions/{generate-id.js → generate-entity-id.js} +3 -3
- package/database/functions/generate-entity-id.js.map +1 -0
- package/database/functions/get-relations.d.ts +1 -1
- package/database/functions/inject-repository-handle.js +4 -3
- package/database/functions/inject-repository-handle.js.map +1 -1
- package/database/functions/use-transaction.d.ts +1 -0
- package/database/functions/use-transaction.js +2 -6
- package/database/functions/use-transaction.js.map +1 -1
- package/database/interfaces/entity-dto-object.d.ts +7 -0
- package/database/interfaces/entity-dto-object.js +3 -0
- package/database/interfaces/entity-dto-object.js.map +1 -0
- package/database/interfaces/entity-object.d.ts +0 -6
- package/database/interfaces/entity-property.d.ts +12 -0
- package/database/interfaces/index.d.ts +0 -1
- package/database/interfaces/index.js +0 -1
- package/database/interfaces/index.js.map +1 -1
- package/database/interfaces/path.d.ts +6 -2
- package/database/interfaces/repository.d.ts +8 -8
- package/database/interfaces/virtual-select.d.ts +4 -0
- package/database/interfaces/virtual-select.js +3 -0
- package/database/interfaces/virtual-select.js.map +1 -0
- package/database/services/repository.service.d.ts +1 -1
- package/database/services/repository.service.js +3 -6
- package/database/services/repository.service.js.map +1 -1
- package/docs/docs.module.js +3 -1
- package/docs/docs.module.js.map +1 -1
- package/docs/migrations/1747584000000-CreateDocsTables.d.ts +5 -0
- package/docs/migrations/1747584000000-CreateDocsTables.js +90 -0
- package/docs/migrations/1747584000000-CreateDocsTables.js.map +1 -0
- package/docs/migrations/migrations.d.ts +2 -0
- package/docs/migrations/migrations.js +8 -0
- package/docs/migrations/migrations.js.map +1 -0
- package/docs/queries/docs-controller-action.query.d.ts +1 -1
- package/docs/queries/docs-controller.query.d.ts +1 -1
- package/docs/queries/docs-model.query.d.ts +1 -1
- package/docs/queries/docs-model.query.js +1 -1
- package/docs/queries/docs-model.query.js.map +1 -1
- package/docs/queries/docs-version.query.d.ts +1 -1
- package/docs/services/docs-version.service.js +6 -3
- package/docs/services/docs-version.service.js.map +1 -1
- package/forms/queries/form.query.d.ts +1 -1
- package/forms/queries/property.query.d.ts +1 -1
- package/global.d.ts +2 -0
- package/global.js +2 -1
- package/global.js.map +1 -1
- package/http/http.controller.d.ts +2 -0
- package/http/http.controller.js +3 -2
- package/http/http.controller.js.map +1 -1
- package/index.d.ts +5 -2
- package/index.js +4 -7
- package/index.js.map +1 -1
- package/jobs/jobs.controller.d.ts +2 -0
- package/jobs/jobs.controller.js +22 -16
- package/jobs/jobs.controller.js.map +1 -1
- package/package.json +70 -69
- package/query/functions/add-join.js +8 -16
- package/query/functions/add-join.js.map +1 -1
- package/query/functions/collect-external-column-owners.d.ts +10 -0
- package/query/functions/collect-external-column-owners.js +100 -0
- package/query/functions/collect-external-column-owners.js.map +1 -0
- package/query/functions/create-query-builder.js +47 -28
- package/query/functions/create-query-builder.js.map +1 -1
- package/query/functions/create-query-cache-hash.d.ts +16 -0
- package/query/functions/create-query-cache-hash.js +70 -0
- package/query/functions/create-query-cache-hash.js.map +1 -0
- package/query/functions/create-query.d.ts +8 -3
- package/query/functions/create-query.js +12 -9
- package/query/functions/create-query.js.map +1 -1
- package/query/functions/describe-query-filter.js +3 -2
- package/query/functions/describe-query-filter.js.map +1 -1
- package/query/functions/execute-query.js +89 -9
- package/query/functions/execute-query.js.map +1 -1
- package/query/functions/expand-select-with-external-dependencies.d.ts +9 -0
- package/query/functions/expand-select-with-external-dependencies.js +34 -0
- package/query/functions/expand-select-with-external-dependencies.js.map +1 -0
- package/query/functions/external-column-owner-path.d.ts +5 -0
- package/query/functions/external-column-owner-path.js +18 -0
- package/query/functions/external-column-owner-path.js.map +1 -0
- package/query/functions/get-entity-object-class.d.ts +2 -0
- package/query/functions/get-entity-object-class.js +12 -0
- package/query/functions/get-entity-object-class.js.map +1 -0
- package/query/functions/get-native-select.js +3 -0
- package/query/functions/get-native-select.js.map +1 -1
- package/query/functions/load-properties.d.ts +20 -2
- package/query/functions/load-properties.js +190 -40
- package/query/functions/load-properties.js.map +1 -1
- package/query/functions/map-query-property-to-column-name.js +1 -1
- package/query/functions/map-query-property-to-column-name.js.map +1 -1
- package/query/functions/query-structure-cache.d.ts +24 -0
- package/query/functions/query-structure-cache.js +66 -0
- package/query/functions/query-structure-cache.js.map +1 -0
- package/query/interfaces/query.d.ts +44 -1
- package/query/services/query-action-builder.d.ts +4 -1
- package/query/services/query-action-builder.js +26 -12
- package/query/services/query-action-builder.js.map +1 -1
- package/remote-logs/dtos/index.d.ts +2 -0
- package/remote-logs/dtos/index.js +19 -0
- package/remote-logs/dtos/index.js.map +1 -0
- package/remote-logs/dtos/remote-log-hooks.dto.d.ts +72 -0
- package/remote-logs/dtos/remote-log-hooks.dto.js +280 -0
- package/remote-logs/dtos/remote-log-hooks.dto.js.map +1 -0
- package/remote-logs/dtos/remote-log-search.dto.d.ts +34 -0
- package/remote-logs/dtos/remote-log-search.dto.js +146 -0
- package/remote-logs/dtos/remote-log-search.dto.js.map +1 -0
- package/remote-logs/environment.d.ts +4 -0
- package/remote-logs/environment.js +5 -0
- package/remote-logs/environment.js.map +1 -0
- package/remote-logs/index.d.ts +3 -0
- package/remote-logs/index.js +20 -0
- package/remote-logs/index.js.map +1 -0
- package/remote-logs/interfaces/index.d.ts +1 -0
- package/remote-logs/interfaces/index.js +18 -0
- package/remote-logs/interfaces/index.js.map +1 -0
- package/remote-logs/interfaces/remote-logs-module-options.d.ts +8 -0
- package/remote-logs/interfaces/remote-logs-module-options.js +3 -0
- package/remote-logs/interfaces/remote-logs-module-options.js.map +1 -0
- package/remote-logs/remote-logs-hooks.controller.d.ts +60 -0
- package/remote-logs/remote-logs-hooks.controller.js +331 -0
- package/remote-logs/remote-logs-hooks.controller.js.map +1 -0
- package/remote-logs/remote-logs.controller.d.ts +8 -0
- package/remote-logs/remote-logs.controller.js +41 -0
- package/remote-logs/remote-logs.controller.js.map +1 -0
- package/remote-logs/remote-logs.module.d.ts +12 -0
- package/remote-logs/remote-logs.module.js +107 -0
- package/remote-logs/remote-logs.module.js.map +1 -0
- package/remote-logs/services/opensearch.service.d.ts +13 -0
- package/remote-logs/services/opensearch.service.js +167 -0
- package/remote-logs/services/opensearch.service.js.map +1 -0
- package/security/auth.controller.js +4 -4
- package/security/auth.controller.js.map +1 -1
- package/security/env.js.map +1 -1
- package/security/functions/add-protected.d.ts +2 -2
- package/security/functions/add-protected.js +8 -5
- package/security/functions/add-protected.js.map +1 -1
- package/security/functions/create-authentication-interceptor.d.ts +44 -0
- package/security/functions/create-authentication-interceptor.js +114 -0
- package/security/functions/create-authentication-interceptor.js.map +1 -0
- package/security/functions/find-auth-context.d.ts +1 -2
- package/security/functions/find-auth-context.js +6 -11
- package/security/functions/find-auth-context.js.map +1 -1
- package/security/index.d.ts +1 -0
- package/security/index.js +1 -0
- package/security/index.js.map +1 -1
- package/security/interfaces/authorization-schema.d.ts +3 -1
- package/security/requests/security.request.js +1 -1
- package/security/requests/security.request.js.map +1 -1
- package/security/services/authorization.service.d.ts +5 -3
- package/security/services/authorization.service.js +56 -37
- package/security/services/authorization.service.js.map +1 -1
- package/storage/services/routes.service.js +1 -1
- package/storage/services/routes.service.js.map +1 -1
- package/tasks/constants.d.ts +3 -0
- package/tasks/constants.js +2 -1
- package/tasks/constants.js.map +1 -1
- package/tasks/controllers/task.controller.d.ts +3 -2
- package/tasks/controllers/task.controller.js +11 -40
- package/tasks/controllers/task.controller.js.map +1 -1
- package/tasks/decorators/index.d.ts +1 -0
- package/tasks/decorators/index.js +1 -0
- package/tasks/decorators/index.js.map +1 -1
- package/tasks/decorators/task-payload.decorator.d.ts +1 -0
- package/tasks/decorators/task-payload.decorator.js +12 -0
- package/tasks/decorators/task-payload.decorator.js.map +1 -0
- package/tasks/decorators/task.decorator.js +6 -2
- package/tasks/decorators/task.decorator.js.map +1 -1
- package/tasks/functions/compile-all-task-post-hooks.d.ts +1 -0
- package/tasks/functions/compile-all-task-post-hooks.js +27 -0
- package/tasks/functions/compile-all-task-post-hooks.js.map +1 -0
- package/tasks/functions/compile-task-hook-handle.d.ts +6 -0
- package/tasks/functions/compile-task-hook-handle.js +67 -0
- package/tasks/functions/compile-task-hook-handle.js.map +1 -0
- package/tasks/functions/create-task-hook.d.ts +9 -0
- package/tasks/functions/create-task-hook.js +13 -0
- package/tasks/functions/create-task-hook.js.map +1 -0
- package/tasks/functions/{create-task-message-receptor.d.ts → create-task-message-post.d.ts} +1 -1
- package/tasks/functions/{create-task-message-receptor.js → create-task-message-post.js} +10 -3
- package/tasks/functions/create-task-message-post.js.map +1 -0
- package/tasks/functions/register-task-post-hook-interceptors.d.ts +3 -0
- package/tasks/functions/register-task-post-hook-interceptors.js +86 -0
- package/tasks/functions/register-task-post-hook-interceptors.js.map +1 -0
- package/tasks/functions/run-task-post-hooks.d.ts +11 -0
- package/tasks/functions/run-task-post-hooks.js +18 -0
- package/tasks/functions/run-task-post-hooks.js.map +1 -0
- package/tasks/functions/task-message-operations.d.ts +18 -0
- package/tasks/functions/task-message-operations.js +100 -0
- package/tasks/functions/task-message-operations.js.map +1 -0
- package/tasks/functions/validate-task-payload.d.ts +2 -0
- package/tasks/functions/validate-task-payload.js +19 -0
- package/tasks/functions/validate-task-payload.js.map +1 -0
- package/tasks/hook-constants.d.ts +2 -0
- package/tasks/hook-constants.js +6 -0
- package/tasks/hook-constants.js.map +1 -0
- package/tasks/index.d.ts +3 -0
- package/tasks/index.js +3 -0
- package/tasks/index.js.map +1 -1
- package/tasks/interfaces/compiled-task-post-hooks.d.ts +17 -0
- package/tasks/interfaces/compiled-task-post-hooks.js +3 -0
- package/tasks/interfaces/compiled-task-post-hooks.js.map +1 -0
- package/tasks/interfaces/index.d.ts +3 -0
- package/tasks/interfaces/index.js +3 -0
- package/tasks/interfaces/index.js.map +1 -1
- package/tasks/interfaces/task-hook.d.ts +16 -0
- package/tasks/interfaces/task-hook.js +8 -0
- package/tasks/interfaces/task-hook.js.map +1 -0
- package/tasks/interfaces/task-object.d.ts +6 -2
- package/tasks/interfaces/task-post-hook.d.ts +2 -0
- package/tasks/interfaces/task-post-hook.js +3 -0
- package/tasks/interfaces/task-post-hook.js.map +1 -0
- package/tasks/interfaces/task-post-intercept.d.ts +1 -8
- package/tasks/interfaces/task-runner.d.ts +2 -1
- package/tasks/interfaces/task-settings.d.ts +7 -0
- package/tasks/services/task-runner.service.d.ts +24 -3
- package/tasks/services/task-runner.service.js +68 -28
- package/tasks/services/task-runner.service.js.map +1 -1
- package/translations/controllers/translation.controller.js +12 -9
- package/translations/controllers/translation.controller.js.map +1 -1
- package/translations/functions/create-translation-values.js +2 -5
- package/translations/functions/create-translation-values.js.map +1 -1
- package/translations/migrations/1723760669185-CreateTranslationTables.js +3 -3
- package/translations/migrations/1723760669185-CreateTranslationTables.js.map +1 -1
- package/translations/queries/translation-config.query.d.ts +1 -1
- package/translations/queries/translation-values.query.d.ts +1 -1
- package/translations/queries/translation-values.query.js +1 -1
- package/translations/queries/translation-values.query.js.map +1 -1
- package/translations/translations.controller.d.ts +1 -1
- package/translations/translations.controller.js +4 -4
- package/translations/translations.controller.js.map +1 -1
- package/database/functions/generate-id.d.ts +0 -2
- package/database/functions/generate-id.js.map +0 -1
- package/database/functions/use-protector.d.ts +0 -2
- package/database/functions/use-protector.js +0 -11
- package/database/functions/use-protector.js.map +0 -1
- package/database/interfaces/protector.d.ts +0 -51
- package/database/interfaces/protector.js.map +0 -1
- package/database/services/protect-builder.d.ts +0 -59
- package/database/services/protect-builder.js +0 -524
- package/database/services/protect-builder.js.map +0 -1
- package/security/functions/add-protect.d.ts +0 -2
- package/security/functions/add-protect.js +0 -11
- package/security/functions/add-protect.js.map +0 -1
- package/tasks/functions/create-task-message-receptor.js.map +0 -1
package/core/core.controller.js
CHANGED
|
@@ -37,6 +37,7 @@ const global_1 = require("../global");
|
|
|
37
37
|
const worker_threads_1 = require("worker_threads");
|
|
38
38
|
const radash_1 = require("radash");
|
|
39
39
|
const docs_module_1 = require("../docs/docs.module");
|
|
40
|
+
const compile_all_task_post_hooks_1 = require("../tasks/functions/compile-all-task-post-hooks");
|
|
40
41
|
let CoreController = class CoreController {
|
|
41
42
|
constructor(moduleController, databaseController, cacheController, httpController, webSocketController, actionRouter, authController, storageController, jobsController, workersController, nodeControlService, translationsController, formsController) {
|
|
42
43
|
this.moduleController = moduleController;
|
|
@@ -81,11 +82,13 @@ let CoreController = class CoreController {
|
|
|
81
82
|
const interceptor = core.interceptors[property];
|
|
82
83
|
interceptor.instance = await (0, class_injector_1.createInstance)(interceptor.executor);
|
|
83
84
|
}));
|
|
85
|
+
await (0, compile_all_task_post_hooks_1.compileAllTaskPostHooks)();
|
|
84
86
|
// Init storage, translations and forms
|
|
85
87
|
await this.storageController.start();
|
|
86
88
|
await this.translationsController.start();
|
|
87
89
|
await this.formsController.start();
|
|
88
90
|
events.push(...await this.moduleController.load(docs_module_1.DocsModule));
|
|
91
|
+
// Before database init
|
|
89
92
|
// Init dabatase and cache connection
|
|
90
93
|
await this.databaseController.initialize();
|
|
91
94
|
await this.cacheController.initialize();
|
|
@@ -103,7 +106,7 @@ let CoreController = class CoreController {
|
|
|
103
106
|
.active(controller);
|
|
104
107
|
}
|
|
105
108
|
if (core.isAuthRequired && !core.isAuthEnabled) {
|
|
106
|
-
this.logger.throw(new Error('
|
|
109
|
+
this.logger.throw(new Error('Authentication is required but was not activated'));
|
|
107
110
|
}
|
|
108
111
|
// Init jobs
|
|
109
112
|
await this.jobsController.init();
|
|
@@ -112,6 +115,7 @@ let CoreController = class CoreController {
|
|
|
112
115
|
const server = await this.httpController.listen(port);
|
|
113
116
|
// WebSocket service
|
|
114
117
|
if (core.options.router) {
|
|
118
|
+
this.logger.log('WebSocket service is disabled');
|
|
115
119
|
}
|
|
116
120
|
else {
|
|
117
121
|
protocols.push('webSocket');
|
|
@@ -123,7 +127,14 @@ let CoreController = class CoreController {
|
|
|
123
127
|
await this
|
|
124
128
|
.nodeControlService
|
|
125
129
|
.registerNode();
|
|
130
|
+
this.logAppActionsAndRoutes();
|
|
131
|
+
this.logger.log(`Application started [${protocols}] on port {${port}}`);
|
|
132
|
+
}
|
|
133
|
+
logAppActionsAndRoutes() {
|
|
126
134
|
const actions = {};
|
|
135
|
+
this.logger.log('=================ROUTES==================');
|
|
136
|
+
this.httpController.routes.forEach(route => this.logger.log(`Route {${route.method}:${route.path}} successfully loaded`));
|
|
137
|
+
this.logger.log('===============END ROUTES================');
|
|
127
138
|
core.actions.forEach((action) => {
|
|
128
139
|
const name = (0, radash_1.camel)(action
|
|
129
140
|
.objectClass
|
|
@@ -134,10 +145,11 @@ let CoreController = class CoreController {
|
|
|
134
145
|
actions[name] = [];
|
|
135
146
|
actions[name].push(action);
|
|
136
147
|
});
|
|
148
|
+
this.logger.log('=================ACTIONS=================');
|
|
137
149
|
Object.getOwnPropertyNames(actions).forEach((objectKey) => {
|
|
138
150
|
this.logger.log(`Actions $${objectKey}.{${actions[objectKey].map((action) => action.name).join(',')}} loaded`);
|
|
139
151
|
});
|
|
140
|
-
this.logger.log(
|
|
152
|
+
this.logger.log('===============END ACTIONS===============');
|
|
141
153
|
}
|
|
142
154
|
async initAsWorker(module) {
|
|
143
155
|
// Load Modules
|
|
@@ -149,6 +161,7 @@ let CoreController = class CoreController {
|
|
|
149
161
|
const executor = interceptor.executor;
|
|
150
162
|
interceptor.instance = await (0, class_injector_1.createInstance)(executor);
|
|
151
163
|
}));
|
|
164
|
+
await (0, compile_all_task_post_hooks_1.compileAllTaskPostHooks)();
|
|
152
165
|
// Config jobs
|
|
153
166
|
await this.jobsController.configJobs();
|
|
154
167
|
// Init dabatase and cache connection
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.controller.js","sourceRoot":"./","sources":["core/core.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qBAAmB;AACnB,6CAA0C;AAC1C,mEAA+D;AAC/D,yEAAqE;AACrE,6DAAyD;AACzD,gEAA4D;AAG5D,8CAAoD;AAEpD,8DAA0D;AAC1D,8DAA0D;AAC1D,iEAA6D;AAC7D,wCAA+C;AAC/C,6DAAyD;AACzD,sEAAkE;AAClE,wEAAoE;AACpE,sDAA0D;AAC1D,wEAAoE;AACpE,0EAAqE;AACrE,qFAAiF;AACjF,gEAA4D;AAC5D,6DAKkC;AAClC,sCAGmB;AACnB,mDAGwB;AACxB,mCAA+B;AAC/B,qDAAiD;
|
|
1
|
+
{"version":3,"file":"core.controller.js","sourceRoot":"./","sources":["core/core.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ const decorator = (interceptor, params) => {
|
|
|
16
16
|
const object = core
|
|
17
17
|
.storage
|
|
18
18
|
.createObject(target);
|
|
19
|
-
object.
|
|
19
|
+
object.postInterceptors.push({
|
|
20
20
|
name: interceptor.name,
|
|
21
21
|
params
|
|
22
22
|
});
|
|
@@ -57,7 +57,7 @@ const createExecuteInterceptors = (filters, object, property) => {
|
|
|
57
57
|
return isExists.length > 0;
|
|
58
58
|
};
|
|
59
59
|
const executes = [
|
|
60
|
-
...object.
|
|
60
|
+
...object.postInterceptors.filter(filter),
|
|
61
61
|
...property ? property.interceptors.filter(filter) : []
|
|
62
62
|
];
|
|
63
63
|
return async (args, isAfter = false) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-interceptor.js","sourceRoot":"./","sources":["core/functions/create-interceptor.ts"],"names":[],"mappings":";;;AAuBA,MAAM,SAAS,GAAc,CAC1B,WAAwB,EACxB,MAAY,EACb,EAAE;IACD,OAAO,CAAC,MAAM,EAAE,WAAoB,EAAE,EAAE;QACrC,IAAI,WAAW,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,IAAI;iBACjB,OAAO;iBACP,cAAc,CACZ,MAAM,EACN,WAAW,CACc,CAAC;YAChC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC;gBACxB,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,MAAM;aACR,CAAC,CAAC;QACN,CAAC;aAAM,CAAC;YACL,MAAM,MAAM,GAAG,IAAI;iBACf,OAAO;iBACP,YAAY,CACV,MAAM,CACe,CAAC;YAC5B,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"create-interceptor.js","sourceRoot":"./","sources":["core/functions/create-interceptor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ObjectNote, PropertyNote } from "@rockster/class-memory";
|
|
2
|
+
import { IControllerObject, IControllerProperty } from "../../controllers/interfaces";
|
|
3
|
+
export declare function resolveActionTransactional(object: ObjectNote<IControllerObject>, property: PropertyNote<IControllerProperty>): boolean;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveActionTransactional = resolveActionTransactional;
|
|
4
|
+
function resolveActionTransactional(object, property) {
|
|
5
|
+
if (property.useTransaction !== undefined) {
|
|
6
|
+
return property.useTransaction;
|
|
7
|
+
}
|
|
8
|
+
return object.transactionalDefault ?? false;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=resolve-action-transactional.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-action-transactional.js","sourceRoot":"./","sources":["core/functions/resolve-action-transactional.ts"],"names":[],"mappings":";;AAMA,gEAQC;AARD,SAAgB,0BAA0B,CACvC,MAAqC,EACrC,QAA2C;IAE3C,IAAI,QAAQ,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO,QAAQ,CAAC,cAAc,CAAC;IAClC,CAAC;IACD,OAAO,MAAM,CAAC,oBAAoB,IAAI,KAAK,CAAC;AAC/C,CAAC"}
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
import { Instantiable } from "@rockster/common";
|
|
2
|
-
import { IRequestContext } from "./request-context";
|
|
3
|
-
import { PendingAction } from "./pending-action";
|
|
4
2
|
import { IActionDocs } from "./action-docs";
|
|
5
|
-
|
|
6
|
-
(action: PendingAction, context: IRequestContext): Promise<void>;
|
|
7
|
-
};
|
|
3
|
+
import { ActionHandle } from "./action-handle";
|
|
8
4
|
export type ActionDef = {
|
|
9
5
|
objectClass: Instantiable;
|
|
10
6
|
path: string;
|
|
@@ -13,4 +9,5 @@ export type ActionDef = {
|
|
|
13
9
|
execute: ActionHandle;
|
|
14
10
|
secure: boolean;
|
|
15
11
|
docs?: IActionDocs;
|
|
12
|
+
transactional: boolean;
|
|
16
13
|
};
|
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
import { HttpMethod, Instantiable } from "@rockster/common";
|
|
2
2
|
import { DocsControllerActionType } from "@rockster/common/docs";
|
|
3
|
+
/** A scope key required by an action, surfaced in the generated docs/SDK. */
|
|
4
|
+
export interface IActionDocsScopeKey {
|
|
5
|
+
/** Action slot the key guards: default | query | create | modify | remove. */
|
|
6
|
+
slot: string;
|
|
7
|
+
/** Scope context the key belongs to (workspace | account | project | …). */
|
|
8
|
+
contextName: string;
|
|
9
|
+
/** Scope key name (e.g. "vh_registry_read"). */
|
|
10
|
+
name: string;
|
|
11
|
+
/** Scope service resolver used to resolve the context id, when set. */
|
|
12
|
+
resolverHandler?: string;
|
|
13
|
+
}
|
|
3
14
|
export interface IActionDocs {
|
|
4
15
|
type: DocsControllerActionType;
|
|
5
16
|
controller: string;
|
|
@@ -18,6 +29,10 @@ export interface IActionDocs {
|
|
|
18
29
|
httpMethod?: HttpMethod;
|
|
19
30
|
isResponseArray?: boolean;
|
|
20
31
|
isSecure?: boolean;
|
|
32
|
+
/** True when guarded by a special auth strategy (see createAuthenticationInterceptor). */
|
|
33
|
+
authenticated?: boolean;
|
|
34
|
+
/** Scope keys required to call the action (empty = login only). */
|
|
35
|
+
keys?: IActionDocsScopeKey[];
|
|
21
36
|
description?: string;
|
|
22
37
|
exposeGroups?: string[];
|
|
23
38
|
validateGroups?: string[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-handle.js","sourceRoot":"./","sources":["core/interfaces/action-handle.ts"],"names":[],"mappings":""}
|
|
@@ -20,6 +20,7 @@ export type CoreOptions = {
|
|
|
20
20
|
onCreateHttpServer?: OnCreateHttpServer;
|
|
21
21
|
onRequestError?: (error: Error) => void;
|
|
22
22
|
port?: number;
|
|
23
|
+
/** true: entire `/request` in one transaction (legacy). false/undefined: per-action @Transaction / Controller. */
|
|
23
24
|
transaction?: boolean;
|
|
24
25
|
docs?: DocsOptions;
|
|
25
26
|
locale?: LocaleOptions;
|
|
@@ -15,9 +15,9 @@ export type InterceptorExecutorArgs<Extra = any, Params = any> = {
|
|
|
15
15
|
property?: PropertyNote<IControllerProperty>;
|
|
16
16
|
extra?: Extra;
|
|
17
17
|
params?: Params;
|
|
18
|
+
result?: any;
|
|
18
19
|
req?: HttpRequest;
|
|
19
20
|
res?: HttpResponse;
|
|
20
|
-
result?: any;
|
|
21
21
|
};
|
|
22
22
|
export type InterceptorExecutor = {
|
|
23
23
|
intercept(args: InterceptorExecutorArgs): Promise<any>;
|
|
@@ -7,10 +7,11 @@ import { InterceptorExecute } from "./interceptor";
|
|
|
7
7
|
import { IQueryObject } from "../../query/interfaces";
|
|
8
8
|
import { IJobObject } from "../../jobs/interfaces";
|
|
9
9
|
import { ITaskObject } from "../../tasks/interfaces/task-object";
|
|
10
|
+
import { IEntityDtoObject } from "../../database/interfaces/entity-dto-object";
|
|
10
11
|
export interface IObject {
|
|
11
12
|
type: ObjectType;
|
|
12
13
|
initialized?: boolean;
|
|
13
|
-
|
|
14
|
+
postInterceptors?: InterceptorExecute[];
|
|
14
15
|
description?: string;
|
|
15
16
|
}
|
|
16
|
-
export type Object = IObject & (IModuleObject | IEntityObject | IAuthObject | IControllerObject | IQueryObject | IJobObject | ITaskObject);
|
|
17
|
+
export type Object = IObject & (IModuleObject | IEntityObject | IAuthObject | IControllerObject | IQueryObject | IJobObject | ITaskObject | IEntityDtoObject);
|
|
@@ -4,8 +4,8 @@ import { EntityManager } from "typeorm";
|
|
|
4
4
|
import { IncomingHttpHeaders } from "http";
|
|
5
5
|
import { RequestCallbacks } from "./request-callbacks";
|
|
6
6
|
import { RequestCallbackHandle } from "./request-callback-handle";
|
|
7
|
-
import { Client } from "../../web-socket";
|
|
8
|
-
import { HttpRequest } from "../../http";
|
|
7
|
+
import { Client } from "../../web-socket/interfaces/client";
|
|
8
|
+
import { HttpRequest } from "../../http/interfaces/http-request";
|
|
9
9
|
export type OnEndRequest = {
|
|
10
10
|
(action: string, handle: RequestCallbackHandle): Promise<void> | void;
|
|
11
11
|
};
|
|
@@ -19,6 +19,11 @@ export interface IRequestContext<Session = CurrentSession> {
|
|
|
19
19
|
isAuthenticated?: boolean;
|
|
20
20
|
session?: Session;
|
|
21
21
|
entityManager?: EntityManager;
|
|
22
|
+
/**
|
|
23
|
+
* Per-request store shared by scope resolvers (and, afterwards, the action
|
|
24
|
+
* handler) so data loaded while resolving authorization is not re-queried.
|
|
25
|
+
*/
|
|
26
|
+
scopeStore?: Map<string, unknown>;
|
|
22
27
|
headers?: IncomingHttpHeaders;
|
|
23
28
|
callbacks: RequestCallbacks;
|
|
24
29
|
onSuccess: OnEndRequest;
|
|
@@ -2,6 +2,14 @@ import { PendingAction, IRequestContext } from "../interfaces";
|
|
|
2
2
|
export declare class RequestExecutor {
|
|
3
3
|
executeByDataSource(context: IRequestContext): Promise<import("@rockster/common").Dictionary<any>>;
|
|
4
4
|
executeByTransaction(context: IRequestContext): Promise<import("@rockster/common").Dictionary<any>>;
|
|
5
|
+
/**
|
|
6
|
+
* Ordered segments: consecutive actions with the same `transactional` flag share one
|
|
7
|
+
* TypeORM transaction or none. `onBefore` runs for all actions first (via executeBefore).
|
|
8
|
+
*/
|
|
9
|
+
executeByMixed(context: IRequestContext): Promise<import("@rockster/common").Dictionary<any>>;
|
|
10
|
+
protected getTransactionalSegments(pendings: PendingAction[]): PendingAction[][];
|
|
11
|
+
protected executeDataSourceForSegment(context: IRequestContext, segment: PendingAction[]): Promise<void>;
|
|
12
|
+
protected executeActionsForSegment(context: IRequestContext, segment: PendingAction[]): Promise<void>;
|
|
5
13
|
protected executeBefore(context: IRequestContext): Promise<void>;
|
|
6
14
|
protected executeActions(context: IRequestContext): Promise<void>;
|
|
7
15
|
protected executeSuccessCallbacks(context: IRequestContext): Promise<void>;
|
|
@@ -37,6 +37,93 @@ let RequestExecutor = class RequestExecutor {
|
|
|
37
37
|
await this.executeSuccessCallbacks(context);
|
|
38
38
|
return context.response;
|
|
39
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Ordered segments: consecutive actions with the same `transactional` flag share one
|
|
42
|
+
* TypeORM transaction or none. `onBefore` runs for all actions first (via executeBefore).
|
|
43
|
+
*/
|
|
44
|
+
async executeByMixed(context) {
|
|
45
|
+
await this.executeBefore(context);
|
|
46
|
+
const segments = this.getTransactionalSegments(context.pendings);
|
|
47
|
+
for (const segment of segments) {
|
|
48
|
+
const transactional = segment[0].action.transactional;
|
|
49
|
+
if (transactional) {
|
|
50
|
+
await this.executeActionsForSegment(context, segment);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
await this.executeDataSourceForSegment(context, segment);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
await this.executeSuccessCallbacks(context);
|
|
57
|
+
return context.response;
|
|
58
|
+
}
|
|
59
|
+
getTransactionalSegments(pendings) {
|
|
60
|
+
if (pendings.length === 0) {
|
|
61
|
+
return [];
|
|
62
|
+
}
|
|
63
|
+
const segments = [];
|
|
64
|
+
let current = [pendings[0]];
|
|
65
|
+
let currentMode = pendings[0].action.transactional;
|
|
66
|
+
for (let i = 1; i < pendings.length; i++) {
|
|
67
|
+
const p = pendings[i];
|
|
68
|
+
if (p.action.transactional === currentMode) {
|
|
69
|
+
current.push(p);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
segments.push(current);
|
|
73
|
+
current = [p];
|
|
74
|
+
currentMode = p.action.transactional;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
segments.push(current);
|
|
78
|
+
return segments;
|
|
79
|
+
}
|
|
80
|
+
async executeDataSourceForSegment(context, segment) {
|
|
81
|
+
for (const pending of segment) {
|
|
82
|
+
try {
|
|
83
|
+
await pending.action.execute(pending, context);
|
|
84
|
+
}
|
|
85
|
+
catch (error) {
|
|
86
|
+
error.requestRef = pending.requestRef;
|
|
87
|
+
throw error;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
async executeActionsForSegment(context, segment) {
|
|
92
|
+
let actionError;
|
|
93
|
+
const dataSource = core.database.dataSource;
|
|
94
|
+
const queryRunner = dataSource.createQueryRunner();
|
|
95
|
+
const entityManager = queryRunner.manager;
|
|
96
|
+
context.entityManager = entityManager;
|
|
97
|
+
await transaction_context_1.transactionContextStore.run({ entityManager }, async () => {
|
|
98
|
+
try {
|
|
99
|
+
await queryRunner.connect();
|
|
100
|
+
await queryRunner.startTransaction();
|
|
101
|
+
for (const pending of segment) {
|
|
102
|
+
try {
|
|
103
|
+
await pending.action.execute(pending, context);
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
error.requestRef = pending.requestRef;
|
|
107
|
+
actionError = error;
|
|
108
|
+
await this
|
|
109
|
+
.executeErrorCallbacks(error, pending, context);
|
|
110
|
+
throw error;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
await queryRunner.commitTransaction();
|
|
114
|
+
}
|
|
115
|
+
catch (error) {
|
|
116
|
+
await queryRunner.rollbackTransaction();
|
|
117
|
+
}
|
|
118
|
+
finally {
|
|
119
|
+
await queryRunner.release();
|
|
120
|
+
context.entityManager = undefined;
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
if (actionError) {
|
|
124
|
+
throw actionError;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
40
127
|
async executeBefore(context) {
|
|
41
128
|
for (const pending of context.pendings) {
|
|
42
129
|
try {
|
|
@@ -79,6 +166,7 @@ let RequestExecutor = class RequestExecutor {
|
|
|
79
166
|
}
|
|
80
167
|
finally {
|
|
81
168
|
await queryRunner.release();
|
|
169
|
+
context.entityManager = undefined;
|
|
82
170
|
}
|
|
83
171
|
});
|
|
84
172
|
if (actionError) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-executor.js","sourceRoot":"./","sources":["core/services/request-executor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"request-executor.js","sourceRoot":"./","sources":["core/services/request-executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@ const database_1 = require("../../database");
|
|
|
19
19
|
const use_auth_1 = require("../../security/functions/use-auth");
|
|
20
20
|
const class_pipe_1 = require("@rockster/class-pipe");
|
|
21
21
|
const common_1 = require("@rockster/common");
|
|
22
|
+
const request_context_1 = require("../contexts/request-context");
|
|
22
23
|
let RequestRouter = class RequestRouter {
|
|
23
24
|
constructor(contextBuilder, requestExecutor) {
|
|
24
25
|
this.contextBuilder = contextBuilder;
|
|
@@ -33,15 +34,15 @@ let RequestRouter = class RequestRouter {
|
|
|
33
34
|
}
|
|
34
35
|
postRequest(http) {
|
|
35
36
|
const method = common_1.HttpMethod.post;
|
|
36
|
-
const
|
|
37
|
-
const execute =
|
|
37
|
+
const globalTransaction = (0, database_1.useTransaction)();
|
|
38
|
+
const execute = globalTransaction
|
|
38
39
|
? this
|
|
39
40
|
.requestExecutor
|
|
40
41
|
.executeByTransaction
|
|
41
42
|
.bind(this.requestExecutor)
|
|
42
43
|
: this
|
|
43
44
|
.requestExecutor
|
|
44
|
-
.
|
|
45
|
+
.executeByMixed
|
|
45
46
|
.bind(this.requestExecutor);
|
|
46
47
|
http.addRoute(method, this.requestPath, async (req, res) => {
|
|
47
48
|
try {
|
|
@@ -58,7 +59,7 @@ let RequestRouter = class RequestRouter {
|
|
|
58
59
|
if (req.isWs) {
|
|
59
60
|
requestContext.session = req.session;
|
|
60
61
|
}
|
|
61
|
-
const result = await execute(requestContext);
|
|
62
|
+
const result = await request_context_1.requestContextStore.run(requestContext, () => execute(requestContext));
|
|
62
63
|
res.status(common_1.HttpStatus.ok).json(result);
|
|
63
64
|
}
|
|
64
65
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-router.js","sourceRoot":"./","sources":["core/services/request-router.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6DAAsD;AAEtD,6CAA+C;AAC/C,yDAAqD;AACrD,uDAAmD;AACnD,6CAA0C;AAC1C,6CAAgD;AAChD,gEAA4D;AAC5D,qDAA+C;AAI/C,6CAI0B;
|
|
1
|
+
{"version":3,"file":"request-router.js","sourceRoot":"./","sources":["core/services/request-router.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,18 +4,16 @@ import { ObjectNote } from "@rockster/class-memory";
|
|
|
4
4
|
import { ObjectLoader } from "../core";
|
|
5
5
|
import { IEntityObject } from "./interfaces";
|
|
6
6
|
import { PathsBuilder } from "./services/paths-builder";
|
|
7
|
-
import { ProtectBuilder } from "./services/protect-builder";
|
|
8
7
|
import { JsonbIndexCreator } from "./services/jsonb-index-creator";
|
|
9
8
|
export declare class DatabaseController extends ObjectLoader<IEntityObject> {
|
|
10
9
|
protected pathsBuilder: PathsBuilder;
|
|
11
|
-
protected protectBuilder: ProtectBuilder;
|
|
12
10
|
protected jsonbIndexCreator: JsonbIndexCreator;
|
|
13
11
|
static _objects: ObjectNote<IEntityObject>[];
|
|
14
12
|
static _dataSource: DataSource;
|
|
15
13
|
protected get objects(): ObjectNote<IEntityObject>[];
|
|
16
14
|
get dataSource(): DataSource;
|
|
17
15
|
protected set dataSource(value: DataSource);
|
|
18
|
-
constructor(pathsBuilder: PathsBuilder,
|
|
16
|
+
constructor(pathsBuilder: PathsBuilder, jsonbIndexCreator: JsonbIndexCreator);
|
|
19
17
|
addMigrations(migrations: (string | Function)[]): Promise<void>;
|
|
20
18
|
build(targets: Instantiable[]): Promise<void>;
|
|
21
19
|
initialize(): Promise<void>;
|
|
@@ -17,7 +17,6 @@ const logger_1 = require("@rockster/logger");
|
|
|
17
17
|
const core_1 = require("../core");
|
|
18
18
|
const common_1 = require("../common");
|
|
19
19
|
const paths_builder_1 = require("./services/paths-builder");
|
|
20
|
-
const protect_builder_1 = require("./services/protect-builder");
|
|
21
20
|
const env_1 = require("./env");
|
|
22
21
|
const typeorm_naming_strategies_1 = require("typeorm-naming-strategies");
|
|
23
22
|
const jsonb_index_creator_1 = require("./services/jsonb-index-creator");
|
|
@@ -27,10 +26,9 @@ let DatabaseController = DatabaseController_1 = class DatabaseController extends
|
|
|
27
26
|
set dataSource(value) {
|
|
28
27
|
DatabaseController_1._dataSource = value;
|
|
29
28
|
}
|
|
30
|
-
constructor(pathsBuilder,
|
|
29
|
+
constructor(pathsBuilder, jsonbIndexCreator) {
|
|
31
30
|
super();
|
|
32
31
|
this.pathsBuilder = pathsBuilder;
|
|
33
|
-
this.protectBuilder = protectBuilder;
|
|
34
32
|
this.jsonbIndexCreator = jsonbIndexCreator;
|
|
35
33
|
}
|
|
36
34
|
async addMigrations(migrations) {
|
|
@@ -52,7 +50,6 @@ let DatabaseController = DatabaseController_1 = class DatabaseController extends
|
|
|
52
50
|
super.load(this.objects, common_1.ObjectType.entity, targets);
|
|
53
51
|
await this.each(async (object) => {
|
|
54
52
|
await this.pathsBuilder.build(object);
|
|
55
|
-
await this.protectBuilder.build(object);
|
|
56
53
|
});
|
|
57
54
|
}
|
|
58
55
|
async initialize() {
|
|
@@ -86,7 +83,6 @@ DatabaseController._objects = [];
|
|
|
86
83
|
exports.DatabaseController = DatabaseController = DatabaseController_1 = __decorate([
|
|
87
84
|
(0, class_injector_1.Injectable)(),
|
|
88
85
|
__metadata("design:paramtypes", [paths_builder_1.PathsBuilder,
|
|
89
|
-
protect_builder_1.ProtectBuilder,
|
|
90
86
|
jsonb_index_creator_1.JsonbIndexCreator])
|
|
91
87
|
], DatabaseController);
|
|
92
88
|
//# sourceMappingURL=database.controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.controller.js","sourceRoot":"./","sources":["database/database.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,6DAAsD;AAEtD,qCAAqC;AACrC,6CAA0C;AAE1C,kCAAuC;AAEvC,sCAAuC;AACvC,4DAAwD;
|
|
1
|
+
{"version":3,"file":"database.controller.js","sourceRoot":"./","sources":["database/database.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,4 @@
|
|
|
1
1
|
import { IEntityOptions } from "../interfaces";
|
|
2
|
-
|
|
2
|
+
import { GetTypeCallback } from "@rockster/common";
|
|
3
|
+
export declare function Entity(entity: GetTypeCallback): any;
|
|
4
|
+
export declare function Entity(options?: IEntityOptions): any;
|
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Entity =
|
|
3
|
+
exports.Entity = Entity;
|
|
4
4
|
const entity_decorator_1 = require("../functions/entity-decorator");
|
|
5
|
-
const
|
|
5
|
+
const object_type_1 = require("../../common/interfaces/enum/object-type");
|
|
6
|
+
function Entity(getEntityOrOptions) {
|
|
6
7
|
return (target) => {
|
|
7
|
-
(
|
|
8
|
+
if (typeof getEntityOrOptions === "function") {
|
|
9
|
+
const objectNote = core
|
|
10
|
+
.storage
|
|
11
|
+
.createObject(target);
|
|
12
|
+
objectNote.entity = getEntityOrOptions;
|
|
13
|
+
objectNote.type = object_type_1.ObjectType.entityDto;
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
(0, entity_decorator_1.entityDecorator)(target, getEntityOrOptions);
|
|
17
|
+
}
|
|
8
18
|
};
|
|
9
|
-
}
|
|
10
|
-
exports.Entity = Entity;
|
|
19
|
+
}
|
|
11
20
|
//# sourceMappingURL=entity.decorator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.decorator.js","sourceRoot":"./","sources":["database/decorators/entity.decorator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entity.decorator.js","sourceRoot":"./","sources":["database/decorators/entity.decorator.ts"],"names":[],"mappings":";;AASA,wBAYC;AApBD,oEAAgE;AAIhE,0EAAsE;AAItE,SAAgB,MAAM,CAAC,kBAAqD;IACzE,OAAO,CAAC,MAAM,EAAE,EAAE;QACf,IAAI,OAAO,kBAAkB,KAAK,UAAU,EAAE,CAAC;YAC5C,MAAM,UAAU,GAAG,IAAI;iBACnB,OAAO;iBACP,YAAY,CAAC,MAAM,CAAiC,CAAC;YACzD,UAAU,CAAC,MAAM,GAAG,kBAAkB,CAAC;YACvC,UAAU,CAAC,IAAI,GAAG,wBAAU,CAAC,SAAS,CAAC;QAC1C,CAAC;aAAM,CAAC;YACL,IAAA,kCAAe,EAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;QAC/C,CAAC;IACJ,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { GetTypeCallback } from '../../common/interfaces/get-type-callback';
|
|
2
|
+
/**
|
|
3
|
+
* Optional flags for ExternalColumn (same idea as RelationOptions).
|
|
4
|
+
*/
|
|
5
|
+
export interface ExternalColumnOptions {
|
|
6
|
+
/**
|
|
7
|
+
* Property keys on this entity that must be loaded from the DB whenever this external column appears
|
|
8
|
+
* in the query select (e.g. `clientId`, `routerId` for a resolver that calls an external API).
|
|
9
|
+
*/
|
|
10
|
+
selectDependencies?: string[];
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Marks a property as an external column: value is not from DB but from the resolver class returned by `resolverType`.
|
|
14
|
+
* Same callback pattern as Relation: `() => YourInjectableResolver` avoids circular imports.
|
|
15
|
+
* The resolver is invoked in batch before `transform` when this path (or nested selects under it) is selected.
|
|
16
|
+
*/
|
|
17
|
+
export declare function ExternalColumn(resolverType: GetTypeCallback, options?: ExternalColumnOptions): (target: any, propertyKey: string) => void;
|