@contember/engine-content-api 1.3.0-alpha.1 → 1.3.0-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/ExecutionContainer.d.ts +141 -0
- package/dist/src/ExecutionContainer.d.ts.map +1 -0
- package/dist/src/ExecutionContainer.js +84 -0
- package/dist/src/ExecutionContainer.js.map +1 -0
- package/dist/src/index.d.ts +2 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +18 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/mapper/ColumnValue.d.ts +2 -2
- package/dist/src/mapper/ColumnValue.d.ts.map +1 -1
- package/dist/src/mapper/EventManager.d.ts +86 -0
- package/dist/src/mapper/EventManager.d.ts.map +1 -0
- package/dist/src/mapper/EventManager.js +118 -0
- package/dist/src/mapper/EventManager.js.map +1 -0
- package/dist/src/mapper/JunctionTableManager.d.ts +12 -11
- package/dist/src/mapper/JunctionTableManager.d.ts.map +1 -1
- package/dist/src/mapper/JunctionTableManager.js +20 -8
- package/dist/src/mapper/JunctionTableManager.js.map +1 -1
- package/dist/src/mapper/Mapper.d.ts +11 -6
- package/dist/src/mapper/Mapper.d.ts.map +1 -1
- package/dist/src/mapper/Mapper.js +34 -17
- package/dist/src/mapper/Mapper.js.map +1 -1
- package/dist/src/mapper/MapperFactory.d.ts +33 -0
- package/dist/src/mapper/MapperFactory.d.ts.map +1 -0
- package/dist/src/mapper/MapperFactory.js +40 -0
- package/dist/src/mapper/MapperFactory.js.map +1 -0
- package/dist/src/mapper/Result.d.ts +3 -2
- package/dist/src/mapper/Result.d.ts.map +1 -1
- package/dist/src/mapper/Result.js +2 -1
- package/dist/src/mapper/Result.js.map +1 -1
- package/dist/src/mapper/delete/DeleteExecutor.d.ts.map +1 -1
- package/dist/src/mapper/delete/DeleteExecutor.js +41 -1
- package/dist/src/mapper/delete/DeleteExecutor.js.map +1 -1
- package/dist/src/mapper/index.d.ts +3 -1
- package/dist/src/mapper/index.d.ts.map +1 -1
- package/dist/src/mapper/index.js +3 -1
- package/dist/src/mapper/index.js.map +1 -1
- package/dist/src/mapper/insert/InsertBuilder.d.ts +2 -2
- package/dist/src/mapper/insert/InsertBuilder.d.ts.map +1 -1
- package/dist/src/mapper/insert/InsertBuilder.js +8 -2
- package/dist/src/mapper/insert/InsertBuilder.js.map +1 -1
- package/dist/src/mapper/insert/Inserter.js +3 -3
- package/dist/src/mapper/insert/Inserter.js.map +1 -1
- package/dist/src/mapper/select/OrderByHelper.d.ts +1 -1
- package/dist/src/mapper/select/OrderByHelper.d.ts.map +1 -1
- package/dist/src/mapper/select/OrderByHelper.js +3 -1
- package/dist/src/mapper/select/OrderByHelper.js.map +1 -1
- package/dist/src/mapper/select/RelationFetcher.js +2 -2
- package/dist/src/mapper/select/RelationFetcher.js.map +1 -1
- package/dist/src/mapper/update/UpdateBuilder.d.ts +4 -4
- package/dist/src/mapper/update/UpdateBuilder.d.ts.map +1 -1
- package/dist/src/mapper/update/UpdateBuilder.js +26 -8
- package/dist/src/mapper/update/UpdateBuilder.js.map +1 -1
- package/dist/src/mapper/update/UpdateBuilderFactory.d.ts +1 -1
- package/dist/src/mapper/update/UpdateBuilderFactory.d.ts.map +1 -1
- package/dist/src/mapper/update/UpdateBuilderFactory.js +2 -2
- package/dist/src/mapper/update/UpdateBuilderFactory.js.map +1 -1
- package/dist/src/mapper/update/Updater.d.ts.map +1 -1
- package/dist/src/mapper/update/Updater.js +6 -10
- package/dist/src/mapper/update/Updater.js.map +1 -1
- package/dist/src/resolvers/GraphQlQueryAstFactory.d.ts +1 -3
- package/dist/src/resolvers/GraphQlQueryAstFactory.d.ts.map +1 -1
- package/dist/src/resolvers/GraphQlQueryAstFactory.js +1 -4
- package/dist/src/resolvers/GraphQlQueryAstFactory.js.map +1 -1
- package/dist/src/resolvers/MutationResolver.d.ts +1 -4
- package/dist/src/resolvers/MutationResolver.d.ts.map +1 -1
- package/dist/src/resolvers/MutationResolver.js +9 -11
- package/dist/src/resolvers/MutationResolver.js.map +1 -1
- package/dist/src/resolvers/ReadResolver.d.ts +1 -3
- package/dist/src/resolvers/ReadResolver.d.ts.map +1 -1
- package/dist/src/resolvers/ReadResolver.js +6 -10
- package/dist/src/resolvers/ReadResolver.js.map +1 -1
- package/dist/src/resolvers/ValidationResolver.d.ts +1 -3
- package/dist/src/resolvers/ValidationResolver.d.ts.map +1 -1
- package/dist/src/resolvers/ValidationResolver.js +3 -4
- package/dist/src/resolvers/ValidationResolver.js.map +1 -1
- package/dist/src/resolvers/index.d.ts +0 -1
- package/dist/src/resolvers/index.d.ts.map +1 -1
- package/dist/src/resolvers/index.js +0 -1
- package/dist/src/resolvers/index.js.map +1 -1
- package/dist/src/schema/CustomTypesProvider.d.ts.map +1 -1
- package/dist/src/schema/CustomTypesProvider.js +1 -23
- package/dist/src/schema/CustomTypesProvider.js.map +1 -1
- package/dist/src/schema/MutationProvider.js +4 -4
- package/dist/src/schema/MutationProvider.js.map +1 -1
- package/dist/src/schema/QueryProvider.js +3 -3
- package/dist/src/schema/QueryProvider.js.map +1 -1
- package/dist/src/tsconfig.tsbuildinfo +1 -1
- package/dist/src/types.d.ts +2 -3
- package/dist/src/types.d.ts.map +1 -1
- package/dist/tests/cases/bugs/bug-update-by-nested-unique.test.js +3 -5
- package/dist/tests/cases/bugs/bug-update-by-nested-unique.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlDb/insert/insertSequence.test.js +2 -2
- package/dist/tests/cases/integration/graphQlDb/insert/insertSequence.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/bug-freeze-connect-missing-one.test.js +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/bug-freeze-connect-missing-one.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/deferedConstraints.test.js +45 -45
- package/dist/tests/cases/integration/graphQlDb/update/deferedConstraints.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/failedDelete.test.js +5 -5
- package/dist/tests/cases/integration/graphQlDb/update/failedDelete.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/invalidInput.test.js +2 -2
- package/dist/tests/cases/integration/graphQlDb/update/invalidInput.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/nullChecksNotNull.test.js +7 -7
- package/dist/tests/cases/integration/graphQlDb/update/nullChecksNotNull.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/nullChecksNullable.test.js +7 -7
- package/dist/tests/cases/integration/graphQlDb/update/nullChecksNullable.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/uniqueConstraint.test.js +2 -2
- package/dist/tests/cases/integration/graphQlDb/update/uniqueConstraint.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/insert/oneHasMany/connect.test.js +3 -3
- package/dist/tests/cases/integration/graphQlRequests/insert/oneHasMany/connect.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/query/sorting/orderBy.test.d.ts +2 -0
- package/dist/tests/cases/integration/graphQlRequests/query/sorting/orderBy.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/graphQlRequests/query/sorting/orderBy.test.js +67 -0
- package/dist/tests/cases/integration/graphQlRequests/query/sorting/orderBy.test.js.map +1 -0
- package/dist/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.js +6 -18
- package/dist/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/additionalFilter.test.js +3 -4
- package/dist/tests/cases/integration/graphQlRequests/update/additionalFilter.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/basic/columnUpdate.test.js +3 -8
- package/dist/tests/cases/integration/graphQlRequests/update/basic/columnUpdate.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/update.test.js +3 -9
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/update.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/upsert.test.js +3 -9
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/upsert.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/update.test.js +3 -9
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/update.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/upsert.test.js +3 -9
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/upsert.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/connect.test.js +3 -10
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/connect.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/create.test.js +3 -10
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/create.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/disconnect.test.js +3 -9
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/disconnect.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/update.test.js +3 -9
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/update.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/upsert.test.js +6 -18
- package/dist/tests/cases/integration/graphQlRequests/update/manyHasOne/upsert.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/connect.test.js +3 -11
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/connect.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/disconnect.test.js +3 -8
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/disconnect.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/update.test.js +3 -6
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/update.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/upsert.test.js +3 -6
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasMany/upsert.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/connect.test.js +15 -50
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/connect.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/create.test.js +3 -10
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/create.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/disconnect.test.js +3 -10
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/disconnect.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/update.test.js +3 -6
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/update.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/upsert.test.js +3 -7
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/upsert.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/connect.test.js +12 -32
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/connect.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/connectOrCreate.test.js +3 -3
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/connectOrCreate.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/create.test.js +6 -20
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/create.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/disconnect.test.js +3 -10
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/disconnect.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/update.test.js +3 -9
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/update.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/upsert.test.js +6 -19
- package/dist/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/upsert.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/queryPortal.test.js +6 -8
- package/dist/tests/cases/integration/graphQlRequests/update/queryPortal.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/transaction.test.js +9 -24
- package/dist/tests/cases/integration/graphQlRequests/update/transaction.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/upsert/basicUpsert.test.js +3 -7
- package/dist/tests/cases/integration/graphQlRequests/upsert/basicUpsert.test.js.map +1 -1
- package/dist/tests/cases/unit/orderbyHelper.test.js +11 -0
- package/dist/tests/cases/unit/orderbyHelper.test.js.map +1 -1
- package/dist/tests/src/test.d.ts +1 -0
- package/dist/tests/src/test.d.ts.map +1 -1
- package/dist/tests/src/test.js +34 -6
- package/dist/tests/src/test.js.map +1 -1
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/package.json +11 -11
- package/src/ExecutionContainer.ts +204 -0
- package/src/index.ts +24 -1
- package/src/mapper/ColumnValue.ts +2 -2
- package/src/mapper/EventManager.ts +158 -0
- package/src/mapper/JunctionTableManager.ts +50 -32
- package/src/mapper/Mapper.ts +39 -21
- package/src/mapper/MapperFactory.ts +67 -0
- package/src/mapper/Result.ts +2 -1
- package/src/mapper/delete/DeleteExecutor.ts +42 -1
- package/src/mapper/index.ts +3 -1
- package/src/mapper/insert/InsertBuilder.ts +12 -2
- package/src/mapper/insert/Inserter.ts +3 -3
- package/src/mapper/select/OrderByHelper.ts +2 -1
- package/src/mapper/select/RelationFetcher.ts +2 -2
- package/src/mapper/update/UpdateBuilder.ts +30 -7
- package/src/mapper/update/UpdateBuilderFactory.ts +2 -2
- package/src/mapper/update/Updater.ts +6 -11
- package/src/resolvers/GraphQlQueryAstFactory.ts +1 -2
- package/src/resolvers/MutationResolver.ts +12 -13
- package/src/resolvers/ReadResolver.ts +5 -9
- package/src/resolvers/ValidationResolver.ts +2 -4
- package/src/resolvers/index.ts +0 -1
- package/src/schema/CustomTypesProvider.ts +2 -27
- package/src/schema/MutationProvider.ts +4 -4
- package/src/schema/QueryProvider.ts +3 -3
- package/src/tsconfig.json +7 -21
- package/src/types.ts +2 -3
- package/tests/cases/bugs/bug-update-by-nested-unique.test.ts +3 -5
- package/tests/cases/integration/graphQlDb/insert/insertSequence.test.ts +2 -2
- package/tests/cases/integration/graphQlDb/update/bug-freeze-connect-missing-one.test.ts +1 -1
- package/tests/cases/integration/graphQlDb/update/deferedConstraints.test.ts +9 -9
- package/tests/cases/integration/graphQlDb/update/failedDelete.test.ts +3 -3
- package/tests/cases/integration/graphQlDb/update/invalidInput.test.ts +2 -2
- package/tests/cases/integration/graphQlDb/update/nullChecksNotNull.test.ts +7 -7
- package/tests/cases/integration/graphQlDb/update/nullChecksNullable.test.ts +7 -7
- package/tests/cases/integration/graphQlDb/update/uniqueConstraint.test.ts +2 -2
- package/tests/cases/integration/graphQlRequests/insert/oneHasMany/connect.test.ts +3 -3
- package/tests/cases/integration/graphQlRequests/query/sorting/orderBy.test.ts +67 -0
- package/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.ts +6 -18
- package/tests/cases/integration/graphQlRequests/update/additionalFilter.test.ts +3 -4
- package/tests/cases/integration/graphQlRequests/update/basic/columnUpdate.test.ts +3 -8
- package/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/update.test.ts +3 -9
- package/tests/cases/integration/graphQlRequests/update/manyHasManyInverse/upsert.test.ts +3 -9
- package/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/update.test.ts +3 -9
- package/tests/cases/integration/graphQlRequests/update/manyHasManyOwning/upsert.test.ts +3 -9
- package/tests/cases/integration/graphQlRequests/update/manyHasOne/connect.test.ts +3 -10
- package/tests/cases/integration/graphQlRequests/update/manyHasOne/create.test.ts +3 -10
- package/tests/cases/integration/graphQlRequests/update/manyHasOne/disconnect.test.ts +3 -9
- package/tests/cases/integration/graphQlRequests/update/manyHasOne/update.test.ts +3 -9
- package/tests/cases/integration/graphQlRequests/update/manyHasOne/upsert.test.ts +6 -18
- package/tests/cases/integration/graphQlRequests/update/oneHasMany/connect.test.ts +3 -11
- package/tests/cases/integration/graphQlRequests/update/oneHasMany/disconnect.test.ts +3 -8
- package/tests/cases/integration/graphQlRequests/update/oneHasMany/update.test.ts +3 -6
- package/tests/cases/integration/graphQlRequests/update/oneHasMany/upsert.test.ts +3 -6
- package/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/connect.test.ts +15 -50
- package/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/create.test.ts +3 -10
- package/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/disconnect.test.ts +3 -10
- package/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/update.test.ts +3 -6
- package/tests/cases/integration/graphQlRequests/update/oneHasOneInverse/upsert.test.ts +3 -7
- package/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/connect.test.ts +12 -32
- package/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/connectOrCreate.test.ts +3 -3
- package/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/create.test.ts +6 -20
- package/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/disconnect.test.ts +3 -10
- package/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/update.test.ts +3 -9
- package/tests/cases/integration/graphQlRequests/update/oneHasOneOwning/upsert.test.ts +6 -19
- package/tests/cases/integration/graphQlRequests/update/queryPortal.test.ts +6 -8
- package/tests/cases/integration/graphQlRequests/update/transaction.test.ts +9 -24
- package/tests/cases/integration/graphQlRequests/upsert/basicUpsert.test.ts +3 -7
- package/tests/cases/unit/orderbyHelper.test.ts +13 -0
- package/tests/src/test.ts +38 -15
- package/tests/tsconfig.json +3 -9
- package/dist/src/mapper/MapperContainer.d.ts +0 -18
- package/dist/src/mapper/MapperContainer.d.ts.map +0 -1
- package/dist/src/mapper/MapperContainer.js +0 -55
- package/dist/src/mapper/MapperContainer.js.map +0 -1
- package/dist/src/resolvers/ExecutionContainerFactory.d.ts +0 -24
- package/dist/src/resolvers/ExecutionContainerFactory.d.ts.map +0 -1
- package/dist/src/resolvers/ExecutionContainerFactory.js +0 -45
- package/dist/src/resolvers/ExecutionContainerFactory.js.map +0 -1
- package/src/mapper/MapperContainer.ts +0 -142
- package/src/resolvers/ExecutionContainerFactory.ts +0 -74
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { PredicateFactory, PredicatesInjector, VariableInjector } from './acl';
|
|
2
|
+
import { ConditionBuilder, FieldsVisitorFactory, JoinBuilder, MetaHandler, OrderByBuilder, RelationFetcher, WhereBuilder } from './mapper/select';
|
|
3
|
+
import { UniqueWhereExpander } from './inputProcessing';
|
|
4
|
+
import { HasManyToHasOneReducerExecutionHandler } from './extensions';
|
|
5
|
+
import { DeleteExecutor, InsertBuilderFactory, Inserter, JunctionConnectHandler, JunctionDisconnectHandler, JunctionTableManager, MapperFactory, PathFactory, SelectBuilder, SelectHydrator, UpdateBuilderFactory, Updater } from './mapper';
|
|
6
|
+
import { Builder } from '@contember/dic';
|
|
7
|
+
import { Acl, Model, Schema } from '@contember/schema';
|
|
8
|
+
import { Client, SelectBuilder as DbSelectBuilder } from '@contember/database';
|
|
9
|
+
import { Providers } from '@contember/schema-utils';
|
|
10
|
+
import { PaginatedHasManyExecutionHandler } from './extensions/paginatedHasMany/PaginatedHasManyExecutionHandler';
|
|
11
|
+
import { WhereOptimizer } from './mapper/select/optimizer/WhereOptimizer';
|
|
12
|
+
import { GraphQlQueryAstFactory, MutationResolver, ReadResolver, ValidationResolver } from './resolvers';
|
|
13
|
+
import { ColumnValueResolver, DependencyCollector, EntityRulesResolver, InputPreValidator, QueryAstFactory, ValidationDataSelector } from './input-validation';
|
|
14
|
+
export declare type ExecutionContainerArgs = {
|
|
15
|
+
schema: Schema & {
|
|
16
|
+
id: number;
|
|
17
|
+
};
|
|
18
|
+
db: Client;
|
|
19
|
+
identityId: string;
|
|
20
|
+
identityVariables: Acl.VariablesMap;
|
|
21
|
+
permissions: Acl.Permissions;
|
|
22
|
+
systemSchema: string;
|
|
23
|
+
project: {
|
|
24
|
+
slug: string;
|
|
25
|
+
};
|
|
26
|
+
stage: {
|
|
27
|
+
id: string;
|
|
28
|
+
slug: string;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
export interface ExecutionContainer {
|
|
32
|
+
readResolver: ReadResolver;
|
|
33
|
+
mutationResolver: MutationResolver;
|
|
34
|
+
validationResolver: ValidationResolver;
|
|
35
|
+
}
|
|
36
|
+
export declare type ExecutionContainerBuilder = ReturnType<ExecutionContainerFactory['createBuilderInternal']>;
|
|
37
|
+
export declare type ExecutionContainerHook = (builder: ExecutionContainerBuilder) => ExecutionContainerBuilder;
|
|
38
|
+
export declare class ExecutionContainerFactory {
|
|
39
|
+
private readonly providers;
|
|
40
|
+
readonly hooks: ExecutionContainerHook[];
|
|
41
|
+
constructor(providers: Providers);
|
|
42
|
+
createBuilder(args: ExecutionContainerArgs): ExecutionContainerBuilder;
|
|
43
|
+
createBuilderInternal({ permissions, identityVariables, identityId, db, schema, systemSchema, stage, project }: ExecutionContainerArgs): Builder<{
|
|
44
|
+
systemSchema: string;
|
|
45
|
+
} & {
|
|
46
|
+
db: Client<import("@contember/database/dist/src/client/Connection").Connection.ConnectionLike<{}>>;
|
|
47
|
+
} & {
|
|
48
|
+
project: {
|
|
49
|
+
slug: string;
|
|
50
|
+
};
|
|
51
|
+
} & {
|
|
52
|
+
stage: {
|
|
53
|
+
id: string;
|
|
54
|
+
slug: string;
|
|
55
|
+
};
|
|
56
|
+
} & {
|
|
57
|
+
schema: Schema & {
|
|
58
|
+
id: number;
|
|
59
|
+
};
|
|
60
|
+
} & {
|
|
61
|
+
providers: Providers;
|
|
62
|
+
} & {
|
|
63
|
+
variableInjector: VariableInjector;
|
|
64
|
+
} & {
|
|
65
|
+
predicateFactory: PredicateFactory;
|
|
66
|
+
} & {
|
|
67
|
+
predicatesInjector: PredicatesInjector;
|
|
68
|
+
} & {
|
|
69
|
+
joinBuilder: JoinBuilder;
|
|
70
|
+
} & {
|
|
71
|
+
conditionBuilder: ConditionBuilder;
|
|
72
|
+
} & {
|
|
73
|
+
pathFactory: PathFactory;
|
|
74
|
+
} & {
|
|
75
|
+
whereOptimized: WhereOptimizer;
|
|
76
|
+
} & {
|
|
77
|
+
whereBuilder: WhereBuilder;
|
|
78
|
+
} & {
|
|
79
|
+
orderByBuilder: OrderByBuilder;
|
|
80
|
+
} & {
|
|
81
|
+
relationFetcher: RelationFetcher;
|
|
82
|
+
} & {
|
|
83
|
+
fieldsVisitorFactory: FieldsVisitorFactory;
|
|
84
|
+
} & {
|
|
85
|
+
metaHandler: MetaHandler;
|
|
86
|
+
} & {
|
|
87
|
+
uniqueWhereExpander: UniqueWhereExpander;
|
|
88
|
+
} & {
|
|
89
|
+
hasManyToHasOneReducer: HasManyToHasOneReducerExecutionHandler;
|
|
90
|
+
} & {
|
|
91
|
+
paginatedHasManyExecutionHandler: PaginatedHasManyExecutionHandler;
|
|
92
|
+
} & {
|
|
93
|
+
selectHandlers: {
|
|
94
|
+
[x: string]: HasManyToHasOneReducerExecutionHandler | PaginatedHasManyExecutionHandler;
|
|
95
|
+
};
|
|
96
|
+
} & {
|
|
97
|
+
selectBuilderFactory: {
|
|
98
|
+
create(qb: DbSelectBuilder, hydrator: SelectHydrator, relationPath: Model.AnyRelationContext[]): SelectBuilder;
|
|
99
|
+
};
|
|
100
|
+
} & {
|
|
101
|
+
insertBuilderFactory: InsertBuilderFactory;
|
|
102
|
+
} & {
|
|
103
|
+
updateBuilderFactory: UpdateBuilderFactory;
|
|
104
|
+
} & {
|
|
105
|
+
connectJunctionHandler: JunctionConnectHandler;
|
|
106
|
+
} & {
|
|
107
|
+
disconnectJunctionHandler: JunctionDisconnectHandler;
|
|
108
|
+
} & {
|
|
109
|
+
junctionTableManager: JunctionTableManager;
|
|
110
|
+
} & {
|
|
111
|
+
deleteExecutor: DeleteExecutor;
|
|
112
|
+
} & {
|
|
113
|
+
updater: Updater;
|
|
114
|
+
} & {
|
|
115
|
+
inserter: Inserter;
|
|
116
|
+
} & {
|
|
117
|
+
mapperFactory: MapperFactory;
|
|
118
|
+
} & {
|
|
119
|
+
queryAstFactory: GraphQlQueryAstFactory;
|
|
120
|
+
} & {
|
|
121
|
+
readResolver: ReadResolver;
|
|
122
|
+
} & {
|
|
123
|
+
validationDependencyCollector: DependencyCollector;
|
|
124
|
+
} & {
|
|
125
|
+
validationQueryAstFactory: QueryAstFactory;
|
|
126
|
+
} & {
|
|
127
|
+
dataSelector: ValidationDataSelector;
|
|
128
|
+
} & {
|
|
129
|
+
columnValueResolver: ColumnValueResolver;
|
|
130
|
+
} & {
|
|
131
|
+
entityRulesResolver: EntityRulesResolver;
|
|
132
|
+
} & {
|
|
133
|
+
inputPreValidator: InputPreValidator;
|
|
134
|
+
} & {
|
|
135
|
+
mutationResolver: MutationResolver;
|
|
136
|
+
} & {
|
|
137
|
+
validationResolver: ValidationResolver;
|
|
138
|
+
}>;
|
|
139
|
+
create(args: ExecutionContainerArgs): ExecutionContainer;
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=ExecutionContainer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExecutionContainer.d.ts","sourceRoot":"","sources":["../../src/ExecutionContainer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ExecutionContainerFactory = void 0;
|
|
4
|
+
const acl_1 = require("./acl");
|
|
5
|
+
const select_1 = require("./mapper/select");
|
|
6
|
+
const inputProcessing_1 = require("./inputProcessing");
|
|
7
|
+
const extensions_1 = require("./extensions");
|
|
8
|
+
const mapper_1 = require("./mapper");
|
|
9
|
+
const dic_1 = require("@contember/dic");
|
|
10
|
+
const PaginatedHasManyExecutionHandler_1 = require("./extensions/paginatedHasMany/PaginatedHasManyExecutionHandler");
|
|
11
|
+
const PaginatedHasManyFieldProvider_1 = require("./extensions/paginatedHasMany/PaginatedHasManyFieldProvider");
|
|
12
|
+
const WhereOptimizer_1 = require("./mapper/select/optimizer/WhereOptimizer");
|
|
13
|
+
const ConditionOptimizer_1 = require("./mapper/select/optimizer/ConditionOptimizer");
|
|
14
|
+
const resolvers_1 = require("./resolvers");
|
|
15
|
+
const input_validation_1 = require("./input-validation");
|
|
16
|
+
class ExecutionContainerFactory {
|
|
17
|
+
constructor(providers) {
|
|
18
|
+
this.providers = providers;
|
|
19
|
+
this.hooks = [];
|
|
20
|
+
}
|
|
21
|
+
createBuilder(args) {
|
|
22
|
+
const builder = this.createBuilderInternal(args);
|
|
23
|
+
return this.hooks.reduce((acc, cb) => cb(acc), builder);
|
|
24
|
+
}
|
|
25
|
+
createBuilderInternal({ permissions, identityVariables, identityId, db, schema, systemSchema, stage, project }) {
|
|
26
|
+
return new dic_1.Builder({})
|
|
27
|
+
.addService('systemSchema', () => systemSchema)
|
|
28
|
+
.addService('db', () => db)
|
|
29
|
+
.addService('project', () => project)
|
|
30
|
+
.addService('stage', () => stage)
|
|
31
|
+
.addService('schema', () => schema)
|
|
32
|
+
.addService('providers', () => this.providers)
|
|
33
|
+
.addService('variableInjector', ({ schema }) => new acl_1.VariableInjector(schema.model, identityVariables))
|
|
34
|
+
.addService('predicateFactory', ({ variableInjector, schema }) => new acl_1.PredicateFactory(permissions, schema.model, variableInjector))
|
|
35
|
+
.addService('predicatesInjector', ({ predicateFactory, schema }) => new acl_1.PredicatesInjector(schema.model, predicateFactory))
|
|
36
|
+
.addService('joinBuilder', ({ schema }) => new select_1.JoinBuilder(schema.model))
|
|
37
|
+
.addService('conditionBuilder', () => new select_1.ConditionBuilder())
|
|
38
|
+
.addService('pathFactory', () => new mapper_1.PathFactory())
|
|
39
|
+
.addService('whereOptimized', ({ schema }) => new WhereOptimizer_1.WhereOptimizer(schema.model, new ConditionOptimizer_1.ConditionOptimizer()))
|
|
40
|
+
.addService('whereBuilder', ({ joinBuilder, conditionBuilder, pathFactory, whereOptimized, schema }) => new select_1.WhereBuilder(schema.model, joinBuilder, conditionBuilder, pathFactory, whereOptimized, schema.settings.useExistsInHasManyFilter === true))
|
|
41
|
+
.addService('orderByBuilder', ({ joinBuilder, schema }) => new select_1.OrderByBuilder(schema.model, joinBuilder))
|
|
42
|
+
.addService('relationFetcher', ({ whereBuilder, orderByBuilder, predicatesInjector, pathFactory }) => new select_1.RelationFetcher(whereBuilder, orderByBuilder, predicatesInjector, pathFactory))
|
|
43
|
+
.addService('fieldsVisitorFactory', ({ relationFetcher, predicateFactory, whereBuilder, schema }) => new select_1.FieldsVisitorFactory(schema.model, relationFetcher, predicateFactory, whereBuilder))
|
|
44
|
+
.addService('metaHandler', ({ whereBuilder, predicateFactory }) => new select_1.MetaHandler(whereBuilder, predicateFactory))
|
|
45
|
+
.addService('uniqueWhereExpander', ({ schema }) => new inputProcessing_1.UniqueWhereExpander(schema.model))
|
|
46
|
+
.addService('hasManyToHasOneReducer', ({ uniqueWhereExpander, schema }) => new extensions_1.HasManyToHasOneReducerExecutionHandler(schema.model, uniqueWhereExpander))
|
|
47
|
+
.addService('paginatedHasManyExecutionHandler', ({ relationFetcher, schema }) => new PaginatedHasManyExecutionHandler_1.PaginatedHasManyExecutionHandler(schema.model, relationFetcher))
|
|
48
|
+
.addService('selectHandlers', ({ hasManyToHasOneReducer, paginatedHasManyExecutionHandler }) => ({
|
|
49
|
+
[extensions_1.HasManyToHasOneReducer.extensionName]: hasManyToHasOneReducer,
|
|
50
|
+
[PaginatedHasManyFieldProvider_1.PaginatedHasManyFieldProvider.extensionName]: paginatedHasManyExecutionHandler,
|
|
51
|
+
}))
|
|
52
|
+
.addService('selectBuilderFactory', ({ whereBuilder, orderByBuilder, fieldsVisitorFactory, metaHandler, selectHandlers, pathFactory, predicateFactory, schema }) => new (class {
|
|
53
|
+
create(qb, hydrator, relationPath) {
|
|
54
|
+
return new mapper_1.SelectBuilder(schema.model, whereBuilder, orderByBuilder, metaHandler, qb, hydrator, fieldsVisitorFactory, selectHandlers, pathFactory, relationPath, predicateFactory);
|
|
55
|
+
}
|
|
56
|
+
})())
|
|
57
|
+
.addService('insertBuilderFactory', ({ whereBuilder, pathFactory, schema, predicateFactory }) => new mapper_1.InsertBuilderFactory(schema.model, whereBuilder, pathFactory, predicateFactory))
|
|
58
|
+
.addService('updateBuilderFactory', ({ whereBuilder, pathFactory, schema, predicateFactory }) => new mapper_1.UpdateBuilderFactory(schema.model, whereBuilder, pathFactory, predicateFactory))
|
|
59
|
+
.addService('connectJunctionHandler', () => new mapper_1.JunctionConnectHandler())
|
|
60
|
+
.addService('disconnectJunctionHandler', ({}) => new mapper_1.JunctionDisconnectHandler())
|
|
61
|
+
.addService('junctionTableManager', ({ predicateFactory, whereBuilder, connectJunctionHandler, disconnectJunctionHandler, pathFactory, schema }) => new mapper_1.JunctionTableManager(schema.model, predicateFactory, whereBuilder, connectJunctionHandler, disconnectJunctionHandler, pathFactory))
|
|
62
|
+
.addService('deleteExecutor', ({ predicateFactory, updateBuilderFactory, whereBuilder, pathFactory, schema }) => new mapper_1.DeleteExecutor(schema.model, predicateFactory, whereBuilder, updateBuilderFactory, pathFactory))
|
|
63
|
+
.addService('updater', ({ predicateFactory, updateBuilderFactory, schema }) => new mapper_1.Updater(schema.model, predicateFactory, updateBuilderFactory))
|
|
64
|
+
.addService('inserter', ({ insertBuilderFactory, providers, schema }) => new mapper_1.Inserter(schema.model, insertBuilderFactory, providers))
|
|
65
|
+
.addService('mapperFactory', ({ predicatesInjector, selectBuilderFactory, uniqueWhereExpander, whereBuilder, junctionTableManager, deleteExecutor, updater, inserter, pathFactory, providers, schema }) => {
|
|
66
|
+
return new mapper_1.MapperFactory(db, identityId, schema.model, predicatesInjector, selectBuilderFactory, uniqueWhereExpander, whereBuilder, junctionTableManager, deleteExecutor, updater, inserter, pathFactory, providers);
|
|
67
|
+
})
|
|
68
|
+
.addService('queryAstFactory', () => new resolvers_1.GraphQlQueryAstFactory())
|
|
69
|
+
.addService('readResolver', ({ mapperFactory, queryAstFactory }) => new resolvers_1.ReadResolver(mapperFactory, queryAstFactory))
|
|
70
|
+
.addService('validationDependencyCollector', () => new input_validation_1.DependencyCollector())
|
|
71
|
+
.addService('validationQueryAstFactory', ({ schema }) => new input_validation_1.QueryAstFactory(schema.model))
|
|
72
|
+
.addService('dataSelector', ({ validationQueryAstFactory, schema }) => new input_validation_1.ValidationDataSelector(schema.model, validationQueryAstFactory))
|
|
73
|
+
.addService('columnValueResolver', ({ providers }) => new input_validation_1.ColumnValueResolver(providers))
|
|
74
|
+
.addService('entityRulesResolver', ({ schema }) => new input_validation_1.EntityRulesResolver(schema.validation, schema.model))
|
|
75
|
+
.addService('inputPreValidator', ({ entityRulesResolver, columnValueResolver, dataSelector, schema }) => new input_validation_1.InputPreValidator(schema.model, entityRulesResolver, columnValueResolver, dataSelector))
|
|
76
|
+
.addService('mutationResolver', ({ mapperFactory, inputPreValidator, queryAstFactory, schema }) => new resolvers_1.MutationResolver(schema.model, mapperFactory, inputPreValidator, queryAstFactory))
|
|
77
|
+
.addService('validationResolver', ({ inputPreValidator, mapperFactory }) => new resolvers_1.ValidationResolver(mapperFactory, inputPreValidator));
|
|
78
|
+
}
|
|
79
|
+
create(args) {
|
|
80
|
+
return this.createBuilder(args).build().pick('validationResolver', 'readResolver', 'mutationResolver');
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.ExecutionContainerFactory = ExecutionContainerFactory;
|
|
84
|
+
//# sourceMappingURL=ExecutionContainer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExecutionContainer.js","sourceRoot":"","sources":["../../src/ExecutionContainer.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -5,7 +5,8 @@ export * from './schema';
|
|
|
5
5
|
export * from './inputProcessing';
|
|
6
6
|
export { EntityRulesResolver } from './input-validation';
|
|
7
7
|
export * from './types';
|
|
8
|
+
export * from './ExecutionContainer';
|
|
8
9
|
export { graphql } from 'graphql';
|
|
9
10
|
export { UserError } from './exception';
|
|
10
|
-
export {
|
|
11
|
+
export { DataModificationEvent, AfterCommitEvent, AfterInsertEvent, AfterJunctionUpdateEvent, AfterUpdateEvent, BeforeCommitEvent, BeforeDeleteEvent, BeforeInsertEvent, BeforeJunctionUpdateEvent, BeforeUpdateEvent, EventManager, Mapper, MapperFactory, ExecutionContainer, ExecutionContainerBuilder, Path, WhereBuilder, PathFactory, ExecutionContainerFactory, ExecutionContainerHook, ExecutionContainerArgs, } from './mapper';
|
|
11
12
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,UAAU,CAAA;AACxB,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,UAAU,CAAA;AACxB,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,cAAc,SAAS,CAAA;AACvB,cAAc,sBAAsB,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EACN,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,EACjB,YAAY,EACZ,MAAM,EACN,aAAa,EACb,kBAAkB,EAClB,yBAAyB,EACzB,IAAI,EACJ,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,GACtB,MAAM,UAAU,CAAA"}
|
package/dist/src/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.
|
|
17
|
+
exports.ExecutionContainerFactory = exports.PathFactory = exports.WhereBuilder = exports.Path = exports.MapperFactory = exports.Mapper = exports.EventManager = exports.BeforeUpdateEvent = exports.BeforeJunctionUpdateEvent = exports.BeforeInsertEvent = exports.BeforeDeleteEvent = exports.BeforeCommitEvent = exports.AfterUpdateEvent = exports.AfterJunctionUpdateEvent = exports.AfterInsertEvent = exports.AfterCommitEvent = exports.UserError = exports.graphql = exports.EntityRulesResolver = void 0;
|
|
18
18
|
__exportStar(require("./acl"), exports);
|
|
19
19
|
__exportStar(require("./resolvers"), exports);
|
|
20
20
|
__exportStar(require("./introspection"), exports);
|
|
@@ -23,10 +23,26 @@ __exportStar(require("./inputProcessing"), exports);
|
|
|
23
23
|
var input_validation_1 = require("./input-validation");
|
|
24
24
|
Object.defineProperty(exports, "EntityRulesResolver", { enumerable: true, get: function () { return input_validation_1.EntityRulesResolver; } });
|
|
25
25
|
__exportStar(require("./types"), exports);
|
|
26
|
+
__exportStar(require("./ExecutionContainer"), exports);
|
|
26
27
|
var graphql_1 = require("graphql");
|
|
27
28
|
Object.defineProperty(exports, "graphql", { enumerable: true, get: function () { return graphql_1.graphql; } });
|
|
28
29
|
var exception_1 = require("./exception");
|
|
29
30
|
Object.defineProperty(exports, "UserError", { enumerable: true, get: function () { return exception_1.UserError; } });
|
|
30
31
|
var mapper_1 = require("./mapper");
|
|
31
|
-
Object.defineProperty(exports, "
|
|
32
|
+
Object.defineProperty(exports, "AfterCommitEvent", { enumerable: true, get: function () { return mapper_1.AfterCommitEvent; } });
|
|
33
|
+
Object.defineProperty(exports, "AfterInsertEvent", { enumerable: true, get: function () { return mapper_1.AfterInsertEvent; } });
|
|
34
|
+
Object.defineProperty(exports, "AfterJunctionUpdateEvent", { enumerable: true, get: function () { return mapper_1.AfterJunctionUpdateEvent; } });
|
|
35
|
+
Object.defineProperty(exports, "AfterUpdateEvent", { enumerable: true, get: function () { return mapper_1.AfterUpdateEvent; } });
|
|
36
|
+
Object.defineProperty(exports, "BeforeCommitEvent", { enumerable: true, get: function () { return mapper_1.BeforeCommitEvent; } });
|
|
37
|
+
Object.defineProperty(exports, "BeforeDeleteEvent", { enumerable: true, get: function () { return mapper_1.BeforeDeleteEvent; } });
|
|
38
|
+
Object.defineProperty(exports, "BeforeInsertEvent", { enumerable: true, get: function () { return mapper_1.BeforeInsertEvent; } });
|
|
39
|
+
Object.defineProperty(exports, "BeforeJunctionUpdateEvent", { enumerable: true, get: function () { return mapper_1.BeforeJunctionUpdateEvent; } });
|
|
40
|
+
Object.defineProperty(exports, "BeforeUpdateEvent", { enumerable: true, get: function () { return mapper_1.BeforeUpdateEvent; } });
|
|
41
|
+
Object.defineProperty(exports, "EventManager", { enumerable: true, get: function () { return mapper_1.EventManager; } });
|
|
42
|
+
Object.defineProperty(exports, "Mapper", { enumerable: true, get: function () { return mapper_1.Mapper; } });
|
|
43
|
+
Object.defineProperty(exports, "MapperFactory", { enumerable: true, get: function () { return mapper_1.MapperFactory; } });
|
|
44
|
+
Object.defineProperty(exports, "Path", { enumerable: true, get: function () { return mapper_1.Path; } });
|
|
45
|
+
Object.defineProperty(exports, "WhereBuilder", { enumerable: true, get: function () { return mapper_1.WhereBuilder; } });
|
|
46
|
+
Object.defineProperty(exports, "PathFactory", { enumerable: true, get: function () { return mapper_1.PathFactory; } });
|
|
47
|
+
Object.defineProperty(exports, "ExecutionContainerFactory", { enumerable: true, get: function () { return mapper_1.ExecutionContainerFactory; } });
|
|
32
48
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,8CAA2B;AAC3B,kDAA+B;AAC/B,2CAAwB;AACxB,oDAAiC;AACjC,uDAAwD;AAA/C,uHAAA,mBAAmB,OAAA;AAC5B,0CAAuB;AACvB,mCAAiC;AAAxB,kGAAA,OAAO,OAAA;AAChB,yCAAuC;AAA9B,sGAAA,SAAS,OAAA;AAClB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,8CAA2B;AAC3B,kDAA+B;AAC/B,2CAAwB;AACxB,oDAAiC;AACjC,uDAAwD;AAA/C,uHAAA,mBAAmB,OAAA;AAC5B,0CAAuB;AACvB,uDAAoC;AACpC,mCAAiC;AAAxB,kGAAA,OAAO,OAAA;AAChB,yCAAuC;AAA9B,sGAAA,SAAS,OAAA;AAClB,mCAsBiB;AApBhB,0GAAA,gBAAgB,OAAA;AAChB,0GAAA,gBAAgB,OAAA;AAChB,kHAAA,wBAAwB,OAAA;AACxB,0GAAA,gBAAgB,OAAA;AAChB,2GAAA,iBAAiB,OAAA;AACjB,2GAAA,iBAAiB,OAAA;AACjB,2GAAA,iBAAiB,OAAA;AACjB,mHAAA,yBAAyB,OAAA;AACzB,2GAAA,iBAAiB,OAAA;AACjB,sGAAA,YAAY,OAAA;AACZ,gGAAA,MAAM,OAAA;AACN,uGAAA,aAAa,OAAA;AAGb,8FAAA,IAAI,OAAA;AACJ,sGAAA,YAAY,OAAA;AACZ,qGAAA,WAAW,OAAA;AACX,mHAAA,yBAAyB,OAAA"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Value } from '@contember/schema';
|
|
2
2
|
export declare type ColumnValue<E = never> = {
|
|
3
|
-
value: PromiseLike<Value.
|
|
3
|
+
value: PromiseLike<Value.FieldValue<E> | undefined>;
|
|
4
4
|
fieldName: string;
|
|
5
5
|
columnName: string;
|
|
6
6
|
columnType: string;
|
|
7
7
|
};
|
|
8
8
|
export declare type ResolvedColumnValue<E = never> = ColumnValue<E> & {
|
|
9
|
-
resolvedValue: Value.
|
|
9
|
+
resolvedValue: Value.FieldValue<E>;
|
|
10
10
|
};
|
|
11
11
|
export declare const resolveGenericValue: <T>(value: Value.GenericValueLike<T>) => Promise<T>;
|
|
12
12
|
export declare const resolveRowData: <E>(values: ColumnValue<E>[]) => Promise<ResolvedColumnValue<Exclude<E, undefined>>[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnValue.d.ts","sourceRoot":"","sources":["../../../src/mapper/ColumnValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAGzC,oBAAY,WAAW,CAAC,CAAC,GAAG,KAAK,IAAI;IACpC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"ColumnValue.d.ts","sourceRoot":"","sources":["../../../src/mapper/ColumnValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAGzC,oBAAY,WAAW,CAAC,CAAC,GAAG,KAAK,IAAI;IACpC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAA;IACnD,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,oBAAY,mBAAmB,CAAC,CAAC,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG;IAC7D,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,mBAAmB,qDAK/B,CAAA;AAED,eAAO,MAAM,cAAc,wFAW1B,CAAA;AAED,eAAO,MAAM,oBAAoB,WAAY,mBAAmB,EAAE,KAAG,OAAO,MAAM,EAAE,MAAM,WAAW,CAClB,CAAA"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Input, Model, Value } from '@contember/schema';
|
|
2
|
+
import { ResolvedColumnValue } from './ColumnValue';
|
|
3
|
+
import { Mapper } from './Mapper';
|
|
4
|
+
export declare class BeforeInsertEvent {
|
|
5
|
+
readonly entity: Model.Entity;
|
|
6
|
+
readonly data: ResolvedColumnValue[];
|
|
7
|
+
type: "BeforeInsertEvent";
|
|
8
|
+
afterEvent: AfterInsertEvent | undefined;
|
|
9
|
+
constructor(entity: Model.Entity, data: ResolvedColumnValue[]);
|
|
10
|
+
}
|
|
11
|
+
export declare class AfterInsertEvent {
|
|
12
|
+
readonly entity: Model.Entity;
|
|
13
|
+
readonly data: ResolvedColumnValue[];
|
|
14
|
+
readonly id: Input.PrimaryValue;
|
|
15
|
+
type: "AfterInsertEvent";
|
|
16
|
+
constructor(entity: Model.Entity, data: ResolvedColumnValue[], id: Input.PrimaryValue);
|
|
17
|
+
}
|
|
18
|
+
export declare class BeforeUpdateEvent {
|
|
19
|
+
readonly entity: Model.Entity;
|
|
20
|
+
readonly data: ResolvedColumnValue[];
|
|
21
|
+
readonly id: Input.PrimaryValue;
|
|
22
|
+
type: "BeforeUpdateEvent";
|
|
23
|
+
afterEvent: AfterUpdateEvent | undefined;
|
|
24
|
+
constructor(entity: Model.Entity, data: ResolvedColumnValue[], id: Input.PrimaryValue);
|
|
25
|
+
}
|
|
26
|
+
export declare class AfterUpdateEvent {
|
|
27
|
+
readonly entity: Model.Entity;
|
|
28
|
+
readonly data: (ResolvedColumnValue & {
|
|
29
|
+
old: Value.FieldValue;
|
|
30
|
+
})[];
|
|
31
|
+
readonly id: Input.PrimaryValue;
|
|
32
|
+
type: "AfterUpdateEvent";
|
|
33
|
+
private _hasChanges;
|
|
34
|
+
constructor(entity: Model.Entity, data: (ResolvedColumnValue & {
|
|
35
|
+
old: Value.FieldValue;
|
|
36
|
+
})[], id: Input.PrimaryValue);
|
|
37
|
+
get hasChanges(): boolean;
|
|
38
|
+
}
|
|
39
|
+
export declare class BeforeDeleteEvent {
|
|
40
|
+
readonly entity: Model.Entity;
|
|
41
|
+
readonly id: Input.PrimaryValue;
|
|
42
|
+
type: "BeforeDeleteEvent";
|
|
43
|
+
constructor(entity: Model.Entity, id: Input.PrimaryValue);
|
|
44
|
+
}
|
|
45
|
+
export declare class BeforeJunctionUpdateEvent {
|
|
46
|
+
readonly owningEntity: Model.Entity;
|
|
47
|
+
readonly owningRelation: Model.ManyHasManyOwningRelation;
|
|
48
|
+
readonly owningId: Input.PrimaryValue;
|
|
49
|
+
readonly inverseId: Input.PrimaryValue;
|
|
50
|
+
readonly operation: 'connect' | 'disconnect';
|
|
51
|
+
type: "BeforeJunctionUpdateEvent";
|
|
52
|
+
afterEvent: AfterJunctionUpdateEvent | undefined;
|
|
53
|
+
constructor(owningEntity: Model.Entity, owningRelation: Model.ManyHasManyOwningRelation, owningId: Input.PrimaryValue, inverseId: Input.PrimaryValue, operation: 'connect' | 'disconnect');
|
|
54
|
+
}
|
|
55
|
+
export declare class AfterJunctionUpdateEvent {
|
|
56
|
+
readonly owningEntity: Model.Entity;
|
|
57
|
+
readonly owningRelation: Model.ManyHasManyOwningRelation;
|
|
58
|
+
readonly owningId: Input.PrimaryValue;
|
|
59
|
+
readonly inverseId: Input.PrimaryValue;
|
|
60
|
+
readonly operation: 'connect' | 'disconnect';
|
|
61
|
+
readonly hasChanges: boolean;
|
|
62
|
+
type: "AfterJunctionUpdateEvent";
|
|
63
|
+
constructor(owningEntity: Model.Entity, owningRelation: Model.ManyHasManyOwningRelation, owningId: Input.PrimaryValue, inverseId: Input.PrimaryValue, operation: 'connect' | 'disconnect', hasChanges: boolean);
|
|
64
|
+
}
|
|
65
|
+
export declare class BeforeCommitEvent {
|
|
66
|
+
type: "BeforeCommitEvent";
|
|
67
|
+
}
|
|
68
|
+
export declare class AfterCommitEvent {
|
|
69
|
+
type: "AfterCommitEvent";
|
|
70
|
+
}
|
|
71
|
+
export declare type DataModificationEvent = BeforeInsertEvent | AfterInsertEvent | BeforeUpdateEvent | AfterUpdateEvent | BeforeJunctionUpdateEvent | AfterJunctionUpdateEvent | BeforeDeleteEvent;
|
|
72
|
+
export declare type AnyEvent = DataModificationEvent | BeforeCommitEvent | AfterCommitEvent;
|
|
73
|
+
export declare type EventMap<E extends AnyEvent = AnyEvent> = {
|
|
74
|
+
[K in E['type']]: E extends {
|
|
75
|
+
type: K;
|
|
76
|
+
} ? E : never;
|
|
77
|
+
};
|
|
78
|
+
export declare type EventListener<K extends keyof EventMap> = (event: EventMap[K], mapper: Mapper) => Promise<void>;
|
|
79
|
+
export declare class EventManager {
|
|
80
|
+
private readonly mapper;
|
|
81
|
+
private listeners;
|
|
82
|
+
constructor(mapper: Mapper);
|
|
83
|
+
listen<K extends keyof EventMap>(type: K, cb: EventListener<K>): void;
|
|
84
|
+
fire<K extends keyof EventMap>(event: EventMap[K]): Promise<void>;
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=EventManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventManager.d.ts","sourceRoot":"","sources":["../../../src/mapper/EventManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EventManager = exports.AfterCommitEvent = exports.BeforeCommitEvent = exports.AfterJunctionUpdateEvent = exports.BeforeJunctionUpdateEvent = exports.BeforeDeleteEvent = exports.AfterUpdateEvent = exports.BeforeUpdateEvent = exports.AfterInsertEvent = exports.BeforeInsertEvent = void 0;
|
|
4
|
+
const logger_1 = require("@contember/logger");
|
|
5
|
+
class BeforeInsertEvent {
|
|
6
|
+
constructor(entity, data) {
|
|
7
|
+
this.entity = entity;
|
|
8
|
+
this.data = data;
|
|
9
|
+
this.type = 'BeforeInsertEvent';
|
|
10
|
+
this.afterEvent = undefined;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.BeforeInsertEvent = BeforeInsertEvent;
|
|
14
|
+
class AfterInsertEvent {
|
|
15
|
+
constructor(entity, data, id) {
|
|
16
|
+
this.entity = entity;
|
|
17
|
+
this.data = data;
|
|
18
|
+
this.id = id;
|
|
19
|
+
this.type = 'AfterInsertEvent';
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.AfterInsertEvent = AfterInsertEvent;
|
|
23
|
+
class BeforeUpdateEvent {
|
|
24
|
+
constructor(entity, data, id) {
|
|
25
|
+
this.entity = entity;
|
|
26
|
+
this.data = data;
|
|
27
|
+
this.id = id;
|
|
28
|
+
this.type = 'BeforeUpdateEvent';
|
|
29
|
+
this.afterEvent = undefined;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.BeforeUpdateEvent = BeforeUpdateEvent;
|
|
33
|
+
class AfterUpdateEvent {
|
|
34
|
+
constructor(entity, data, id) {
|
|
35
|
+
this.entity = entity;
|
|
36
|
+
this.data = data;
|
|
37
|
+
this.id = id;
|
|
38
|
+
this.type = 'AfterUpdateEvent';
|
|
39
|
+
}
|
|
40
|
+
get hasChanges() {
|
|
41
|
+
// todo: deep equals
|
|
42
|
+
return this._hasChanges = this.data.some(it => it.resolvedValue !== it.old);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.AfterUpdateEvent = AfterUpdateEvent;
|
|
46
|
+
class BeforeDeleteEvent {
|
|
47
|
+
constructor(entity, id) {
|
|
48
|
+
this.entity = entity;
|
|
49
|
+
this.id = id;
|
|
50
|
+
this.type = 'BeforeDeleteEvent';
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
exports.BeforeDeleteEvent = BeforeDeleteEvent;
|
|
54
|
+
class BeforeJunctionUpdateEvent {
|
|
55
|
+
constructor(owningEntity, owningRelation, owningId, inverseId, operation) {
|
|
56
|
+
this.owningEntity = owningEntity;
|
|
57
|
+
this.owningRelation = owningRelation;
|
|
58
|
+
this.owningId = owningId;
|
|
59
|
+
this.inverseId = inverseId;
|
|
60
|
+
this.operation = operation;
|
|
61
|
+
this.type = 'BeforeJunctionUpdateEvent';
|
|
62
|
+
this.afterEvent = undefined;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
exports.BeforeJunctionUpdateEvent = BeforeJunctionUpdateEvent;
|
|
66
|
+
class AfterJunctionUpdateEvent {
|
|
67
|
+
constructor(owningEntity, owningRelation, owningId, inverseId, operation, hasChanges) {
|
|
68
|
+
this.owningEntity = owningEntity;
|
|
69
|
+
this.owningRelation = owningRelation;
|
|
70
|
+
this.owningId = owningId;
|
|
71
|
+
this.inverseId = inverseId;
|
|
72
|
+
this.operation = operation;
|
|
73
|
+
this.hasChanges = hasChanges;
|
|
74
|
+
this.type = 'AfterJunctionUpdateEvent';
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
exports.AfterJunctionUpdateEvent = AfterJunctionUpdateEvent;
|
|
78
|
+
class BeforeCommitEvent {
|
|
79
|
+
constructor() {
|
|
80
|
+
this.type = 'BeforeCommitEvent';
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.BeforeCommitEvent = BeforeCommitEvent;
|
|
84
|
+
class AfterCommitEvent {
|
|
85
|
+
constructor() {
|
|
86
|
+
this.type = 'AfterCommitEvent';
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
exports.AfterCommitEvent = AfterCommitEvent;
|
|
90
|
+
class EventManager {
|
|
91
|
+
constructor(mapper) {
|
|
92
|
+
this.mapper = mapper;
|
|
93
|
+
this.listeners = {
|
|
94
|
+
BeforeInsertEvent: [],
|
|
95
|
+
AfterInsertEvent: [],
|
|
96
|
+
BeforeUpdateEvent: [],
|
|
97
|
+
AfterUpdateEvent: [],
|
|
98
|
+
BeforeDeleteEvent: [],
|
|
99
|
+
BeforeCommitEvent: [],
|
|
100
|
+
AfterCommitEvent: [],
|
|
101
|
+
BeforeJunctionUpdateEvent: [],
|
|
102
|
+
AfterJunctionUpdateEvent: [],
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
listen(type, cb) {
|
|
106
|
+
this.listeners[type].push(cb);
|
|
107
|
+
}
|
|
108
|
+
async fire(event) {
|
|
109
|
+
(await Promise.allSettled(this.listeners[event.type].map(it => it(event, this.mapper))))
|
|
110
|
+
.map(it => {
|
|
111
|
+
if (it.status === 'rejected') {
|
|
112
|
+
logger_1.logger.error(it.reason);
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
exports.EventManager = EventManager;
|
|
118
|
+
//# sourceMappingURL=EventManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventManager.js","sourceRoot":"","sources":["../../../src/mapper/EventManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { PathFactory } from './select';
|
|
2
|
-
import { WhereBuilder } from './select';
|
|
1
|
+
import { PathFactory, WhereBuilder } from './select';
|
|
3
2
|
import { PredicateFactory } from '../acl';
|
|
4
3
|
import { Client, SelectBuilder } from '@contember/database';
|
|
5
4
|
import { Input, Model } from '@contember/schema';
|
|
6
|
-
import { MutationJunctionUpdateOk,
|
|
5
|
+
import { MutationJunctionUpdateOk, MutationNoResultError, MutationNothingToDo, MutationResultList } from './Result';
|
|
6
|
+
import { Mapper } from './Mapper';
|
|
7
7
|
declare type OkResultFactory = () => MutationJunctionUpdateOk;
|
|
8
|
+
declare type JunctionMutationResult = MutationJunctionUpdateOk | MutationNothingToDo | MutationNoResultError;
|
|
8
9
|
export declare class JunctionTableManager {
|
|
9
10
|
private readonly schema;
|
|
10
11
|
private readonly predicateFactory;
|
|
@@ -13,8 +14,8 @@ export declare class JunctionTableManager {
|
|
|
13
14
|
private readonly disconnectJunctionHandler;
|
|
14
15
|
private readonly pathFactory;
|
|
15
16
|
constructor(schema: Model.Schema, predicateFactory: PredicateFactory, whereBuilder: WhereBuilder, connectJunctionHandler: JunctionConnectHandler, disconnectJunctionHandler: JunctionDisconnectHandler, pathFactory: PathFactory);
|
|
16
|
-
connectJunction(
|
|
17
|
-
disconnectJunction(
|
|
17
|
+
connectJunction(mapper: Mapper, owningEntity: Model.Entity, relation: Model.ManyHasManyOwningRelation, owningUnique: Input.PrimaryValue, inverseUnique: Input.PrimaryValue): Promise<MutationResultList>;
|
|
18
|
+
disconnectJunction(mapper: Mapper, owningEntity: Model.Entity, relation: Model.ManyHasManyOwningRelation, owningUnique: Input.PrimaryValue, inverseUnique: Input.PrimaryValue): Promise<MutationResultList>;
|
|
18
19
|
private executeJunctionModification;
|
|
19
20
|
}
|
|
20
21
|
interface JunctionSimpleExecutionArgs {
|
|
@@ -31,16 +32,16 @@ interface JunctionComplexExecutionArgs {
|
|
|
31
32
|
okResultFactory: OkResultFactory;
|
|
32
33
|
}
|
|
33
34
|
interface JunctionHandler {
|
|
34
|
-
executeSimple(args: JunctionSimpleExecutionArgs): Promise<
|
|
35
|
-
executeComplex(args: JunctionComplexExecutionArgs): Promise<
|
|
35
|
+
executeSimple(args: JunctionSimpleExecutionArgs): Promise<JunctionMutationResult>;
|
|
36
|
+
executeComplex(args: JunctionComplexExecutionArgs): Promise<JunctionMutationResult>;
|
|
36
37
|
}
|
|
37
38
|
export declare class JunctionConnectHandler implements JunctionHandler {
|
|
38
|
-
executeSimple({ db, joiningTable, owningPrimary, inversePrimary, okResultFactory, }: JunctionSimpleExecutionArgs): Promise<
|
|
39
|
-
executeComplex({ db, joiningTable, dataCallback, okResultFactory, }: JunctionComplexExecutionArgs): Promise<
|
|
39
|
+
executeSimple({ db, joiningTable, owningPrimary, inversePrimary, okResultFactory, }: JunctionSimpleExecutionArgs): Promise<JunctionMutationResult>;
|
|
40
|
+
executeComplex({ db, joiningTable, dataCallback, okResultFactory, }: JunctionComplexExecutionArgs): Promise<JunctionMutationResult>;
|
|
40
41
|
}
|
|
41
42
|
export declare class JunctionDisconnectHandler implements JunctionHandler {
|
|
42
|
-
executeSimple({ db, joiningTable, owningPrimary, inversePrimary, okResultFactory, }: JunctionSimpleExecutionArgs): Promise<
|
|
43
|
-
executeComplex({ db, joiningTable, dataCallback, okResultFactory, }: JunctionComplexExecutionArgs): Promise<
|
|
43
|
+
executeSimple({ db, joiningTable, owningPrimary, inversePrimary, okResultFactory, }: JunctionSimpleExecutionArgs): Promise<JunctionMutationResult>;
|
|
44
|
+
executeComplex({ db, joiningTable, dataCallback, okResultFactory, }: JunctionComplexExecutionArgs): Promise<JunctionMutationResult>;
|
|
44
45
|
}
|
|
45
46
|
export {};
|
|
46
47
|
//# sourceMappingURL=JunctionTableManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JunctionTableManager.d.ts","sourceRoot":"","sources":["../../../src/mapper/JunctionTableManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"JunctionTableManager.d.ts","sourceRoot":"","sources":["../../../src/mapper/JunctionTableManager.ts"],"names":[],"mappings":"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"}
|