@contember/engine-content-api 2.0.2 → 2.0.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.
Files changed (44) hide show
  1. package/dist/development/src/ExecutionContainer.cjs +4 -3
  2. package/dist/development/src/ExecutionContainer.cjs.map +1 -1
  3. package/dist/development/src/ExecutionContainer.js +4 -3
  4. package/dist/development/src/ExecutionContainer.js.map +1 -1
  5. package/dist/development/src/mapper/Result.cjs.map +1 -1
  6. package/dist/development/src/mapper/Result.js.map +1 -1
  7. package/dist/development/src/mapper/select/optimizer/WhereOptimizer.cjs +6 -2
  8. package/dist/development/src/mapper/select/optimizer/WhereOptimizer.cjs.map +1 -1
  9. package/dist/development/src/mapper/select/optimizer/WhereOptimizer.js +6 -2
  10. package/dist/development/src/mapper/select/optimizer/WhereOptimizer.js.map +1 -1
  11. package/dist/development/src/mapper/update/Updater.cjs +15 -3
  12. package/dist/development/src/mapper/update/Updater.cjs.map +1 -1
  13. package/dist/development/src/mapper/update/Updater.js +16 -4
  14. package/dist/development/src/mapper/update/Updater.js.map +1 -1
  15. package/dist/production/src/ExecutionContainer.cjs +4 -3
  16. package/dist/production/src/ExecutionContainer.cjs.map +1 -1
  17. package/dist/production/src/ExecutionContainer.js +4 -3
  18. package/dist/production/src/ExecutionContainer.js.map +1 -1
  19. package/dist/production/src/mapper/Result.cjs.map +1 -1
  20. package/dist/production/src/mapper/Result.js.map +1 -1
  21. package/dist/production/src/mapper/select/optimizer/WhereOptimizer.cjs +6 -2
  22. package/dist/production/src/mapper/select/optimizer/WhereOptimizer.cjs.map +1 -1
  23. package/dist/production/src/mapper/select/optimizer/WhereOptimizer.js +6 -2
  24. package/dist/production/src/mapper/select/optimizer/WhereOptimizer.js.map +1 -1
  25. package/dist/production/src/mapper/update/Updater.cjs +15 -3
  26. package/dist/production/src/mapper/update/Updater.cjs.map +1 -1
  27. package/dist/production/src/mapper/update/Updater.js +16 -4
  28. package/dist/production/src/mapper/update/Updater.js.map +1 -1
  29. package/dist/tests/tsconfig.tsbuildinfo +1 -1
  30. package/dist/types/ExecutionContainer.d.ts +3 -2
  31. package/dist/types/ExecutionContainer.d.ts.map +1 -1
  32. package/dist/types/mapper/Result.d.ts +2 -2
  33. package/dist/types/mapper/Result.d.ts.map +1 -1
  34. package/dist/types/mapper/select/optimizer/WhereOptimizer.d.ts +6 -1
  35. package/dist/types/mapper/select/optimizer/WhereOptimizer.d.ts.map +1 -1
  36. package/dist/types/mapper/update/Updater.d.ts +1 -5
  37. package/dist/types/mapper/update/Updater.d.ts.map +1 -1
  38. package/dist/types/tsconfig.tsbuildinfo +1 -1
  39. package/package.json +10 -10
  40. package/src/ExecutionContainer.ts +5 -4
  41. package/src/mapper/Result.ts +1 -1
  42. package/src/mapper/select/optimizer/WhereOptimizer.ts +10 -1
  43. package/src/mapper/update/Updater.ts +16 -5
  44. package/tests/cases/integration/graphQlRequests/update/additionalFilter.test.ts +51 -2
@@ -8,7 +8,7 @@ import { Acl, Model, Schema } from '@contember/schema';
8
8
  import { Client, DatabaseMetadata, SelectBuilder as DbSelectBuilder } from '@contember/database';
9
9
  import { Providers } from '@contember/schema-utils';
10
10
  import { PaginatedHasManyExecutionHandler } from './extensions/paginatedHasMany/PaginatedHasManyExecutionHandler';
11
- import { WhereOptimizer } from './mapper/select/optimizer/WhereOptimizer';
11
+ import { WhereOptimizer, WhereOptimizerOptions } from './mapper/select/optimizer/WhereOptimizer';
12
12
  import { GraphQlQueryAstFactory, MutationResolver, ReadResolver, ValidationResolver } from './resolvers';
13
13
  import { ColumnValueResolver, DependencyCollector, EntityRulesResolver, InputPreValidator, QueryAstFactory, ValidationDataSelector } from './input-validation';
14
14
  export type ExecutionContainerArgs = {
@@ -39,8 +39,9 @@ export type ExecutionContainerBuilder = ReturnType<ExecutionContainerFactory['cr
39
39
  export type ExecutionContainerHook = (builder: ExecutionContainerBuilder) => ExecutionContainerBuilder;
40
40
  export declare class ExecutionContainerFactory {
41
41
  private readonly providers;
42
+ private readonly whereOptimizerOptions?;
42
43
  readonly hooks: ExecutionContainerHook[];
43
- constructor(providers: Providers);
44
+ constructor(providers: Providers, whereOptimizerOptions?: WhereOptimizerOptions | undefined);
44
45
  createBuilder(args: ExecutionContainerArgs): ExecutionContainerBuilder;
45
46
  createBuilderInternal({ permissions, identityVariables, identityId, db, schema, schemaMeta, systemSchema, stage, project, schemaDatabaseMetadata }: ExecutionContainerArgs): Builder<{
46
47
  systemSchema: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ExecutionContainer.d.ts","sourceRoot":"","sources":["../../src/ExecutionContainer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAA;AAC9E,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,WAAW,EACX,WAAW,EACX,cAAc,EACd,eAAe,EACf,YAAY,EACZ,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAA0B,sCAAsC,EAAE,MAAM,cAAc,CAAA;AAC7F,OAAO,EACN,cAAc,EACd,oBAAoB,EACpB,QAAQ,EACR,sBAAsB,EACtB,yBAAyB,EACzB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,aAAa,EAEb,cAAc,EACd,oBAAoB,EACpB,OAAO,EACP,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,aAAa,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAChG,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,gCAAgC,EAAE,MAAM,gEAAgE,CAAA;AAEjH,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAA;AAEzE,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACxG,OAAO,EACN,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EAAE,iBAAiB,EACtC,eAAe,EACf,sBAAsB,EACtB,MAAM,oBAAoB,CAAA;AAE3B,MAAM,MAAM,sBAAsB,GAAG;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3B,sBAAsB,EAAE,gBAAgB,CAAA;IACxC,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,iBAAiB,EAAE,GAAG,CAAC,YAAY,CAAA;IACnC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAA;IAC5B,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;IACzB,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CACnC,CAAA;AAED,MAAM,WAAW,kBAAkB;IAClC,YAAY,EAAE,YAAY,CAAA;IAC1B,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,kBAAkB,EAAE,kBAAkB,CAAA;CACtC;AAED,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,yBAAyB,CAAC,uBAAuB,CAAC,CAAC,CAAA;AACtG,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,EAAE,yBAAyB,KAAK,yBAAyB,CAAA;AAEtG,qBAAa,yBAAyB;IAIpC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAH3B,SAAgB,KAAK,EAAE,sBAAsB,EAAE,CAAK;gBAGlC,SAAS,EAAE,SAAS;IAItC,aAAa,CAAC,IAAI,EAAE,sBAAsB,GAAG,yBAAyB;IAKtE,qBAAqB,CAAC,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,EAAE,sBAAsB;;;;;;kBA1BzJ,MAAM;;;;gBACV,MAAM;kBAAQ,MAAM;;;;;;iBARd,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA8FV,eAAe,YAAY,cAAc,gBAAgB,KAAK,CAAC,kBAAkB,EAAE,GAAG,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAyE3G,MAAM,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB;CAG/D"}
1
+ {"version":3,"file":"ExecutionContainer.d.ts","sourceRoot":"","sources":["../../src/ExecutionContainer.ts"],"names":[],"mappings":"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"}
@@ -137,12 +137,12 @@ export declare class MutationConstraintViolationError implements MutationResultI
137
137
  }
138
138
  export declare class MutationEntryNotFoundError implements MutationResultInterface {
139
139
  readonly paths: Path[];
140
- readonly where: Input.UniqueWhere | Input.Where;
140
+ readonly where: Input.UniqueWhere | Input.OptionalWhere;
141
141
  error: boolean;
142
142
  result: MutationResultType.notFoundError;
143
143
  hints: MutationResultHint[];
144
144
  message: string;
145
- constructor(paths: Path[], where: Input.UniqueWhere | Input.Where);
145
+ constructor(paths: Path[], where: Input.UniqueWhere | Input.OptionalWhere);
146
146
  }
147
147
  export declare class MutationNoResultError implements MutationResultInterface {
148
148
  readonly paths: Path[];
@@ -1 +1 @@
1
- {"version":3,"file":"Result.d.ts","sourceRoot":"","sources":["../../../src/mapper/Result.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Result.d.ts","sourceRoot":"","sources":["../../../src/mapper/Result.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,16 @@ export interface WhereOptimizationHints {
4
4
  relationPath?: Model.AnyRelationContext[];
5
5
  evaluatedPredicates?: Input.OptionalWhere[];
6
6
  }
7
+ export type WhereOptimizerOptions = {
8
+ disable?: boolean;
9
+ maxCrossOptimizationInput?: number;
10
+ };
7
11
  export declare class WhereOptimizer {
8
12
  private readonly model;
9
13
  private readonly conditionOptimizer;
14
+ private readonly options?;
10
15
  private static eliminableRelations;
11
- constructor(model: Model.Schema, conditionOptimizer: ConditionOptimizer);
16
+ constructor(model: Model.Schema, conditionOptimizer: ConditionOptimizer, options?: WhereOptimizerOptions | undefined);
12
17
  optimize(where: Input.OptionalWhere, entity: Model.Entity, { relationPath, evaluatedPredicates }?: WhereOptimizationHints): Input.OptionalWhere;
13
18
  private optimizeWhere;
14
19
  private optimizeOr;
@@ -1 +1 @@
1
- {"version":3,"file":"WhereOptimizer.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/WhereOptimizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAYzD,MAAM,WAAW,sBAAsB;IACtC,YAAY,CAAC,EAAE,KAAK,CAAC,kBAAkB,EAAE,CAAA;IACzC,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,EAAE,CAAA;CAC3C;AAID,qBAAa,cAAc;IAIzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAJpC,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAmG;gBAGnH,KAAK,EAAE,KAAK,CAAC,MAAM,EACnB,kBAAkB,EAAE,kBAAkB;IAIjD,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,YAAiB,EAAE,mBAAwB,EAAE,GAAE,sBAA2B,GAAG,KAAK,CAAC,aAAa;IA+BpK,OAAO,CAAC,aAAa;IAiDrB,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,iBAAiB;CAqCzB"}
1
+ {"version":3,"file":"WhereOptimizer.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/WhereOptimizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAYzD,MAAM,WAAW,sBAAsB;IACtC,YAAY,CAAC,EAAE,KAAK,CAAC,kBAAkB,EAAE,CAAA;IACzC,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,EAAE,CAAA;CAC3C;AAID,MAAM,MAAM,qBAAqB,GAAG;IACnC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,yBAAyB,CAAC,EAAE,MAAM,CAAA;CAClC,CAAA;AAED,qBAAa,cAAc;IAIzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IAL1B,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAmG;gBAGnH,KAAK,EAAE,KAAK,CAAC,MAAM,EACnB,kBAAkB,EAAE,kBAAkB,EACtC,OAAO,CAAC,EAAE,qBAAqB,YAAA;IAI1C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,YAAiB,EAAE,mBAAwB,EAAE,GAAE,sBAA2B,GAAG,KAAK,CAAC,aAAa;IAkCpK,OAAO,CAAC,aAAa;IAiDrB,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,iBAAiB;CAqCzB"}
@@ -1,17 +1,13 @@
1
1
  import { Input, Model } from '@contember/schema';
2
- import { PredicateFactory } from '../../acl';
3
2
  import { UpdateBuilderFactory } from './UpdateBuilderFactory';
4
3
  import { Mapper } from '../Mapper';
5
4
  import { MutationResultList } from '../Result';
6
5
  import { UpdateBuilder } from './UpdateBuilder';
7
- import { DatabaseMetadata } from '@contember/database';
8
6
  import { MapperInput } from '../types';
9
7
  export declare class Updater {
10
8
  private readonly schema;
11
- private readonly schemaDatabaseMetadata;
12
- private readonly predicateFactory;
13
9
  private readonly updateBuilderFactory;
14
- constructor(schema: Model.Schema, schemaDatabaseMetadata: DatabaseMetadata, predicateFactory: PredicateFactory, updateBuilderFactory: UpdateBuilderFactory);
10
+ constructor(schema: Model.Schema, updateBuilderFactory: UpdateBuilderFactory);
15
11
  update(mapper: Mapper, entity: Model.Entity, primaryValue: Input.PrimaryValue, data: MapperInput.UpdateDataInput, filter?: Input.OptionalWhere): Promise<MutationResultList>;
16
12
  updateCb(mapper: Mapper, entity: Model.Entity, primaryValue: Input.PrimaryValue, builderCb: (builder: UpdateBuilder) => void): Promise<MutationResultList>;
17
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Updater.d.ts","sourceRoot":"","sources":["../../../../src/mapper/update/Updater.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,OAAO,EAA8C,kBAAkB,EAAuC,MAAM,WAAW,CAAA;AAC/H,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAEtC,qBAAa,OAAO;IAElB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;gBAHpB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,sBAAsB,EAAE,gBAAgB,EACxC,gBAAgB,EAAE,gBAAgB,EAClC,oBAAoB,EAAE,oBAAoB;IAG/C,MAAM,CAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,IAAI,EAAE,WAAW,CAAC,eAAe,EACjC,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,GAC1B,OAAO,CAAC,kBAAkB,CAAC;IA8DjB,QAAQ,CACpB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,GACzC,OAAO,CAAC,kBAAkB,CAAC;CAe9B"}
1
+ {"version":3,"file":"Updater.d.ts","sourceRoot":"","sources":["../../../../src/mapper/update/Updater.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,OAAO,EAA0E,kBAAkB,EAAuC,MAAM,WAAW,CAAA;AAC3J,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAEtC,qBAAa,OAAO;IAElB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;gBADpB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,oBAAoB,EAAE,oBAAoB;IAG/C,MAAM,CAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,IAAI,EAAE,WAAW,CAAC,eAAe,EACjC,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,GAC1B,OAAO,CAAC,kBAAkB,CAAC;IA6EjB,QAAQ,CACpB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,GACzC,OAAO,CAAC,kBAAkB,CAAC;CAe9B"}