@forestadmin/datasource-customizer 1.9.2 → 1.10.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.
Files changed (61) hide show
  1. package/dist/decorators/actions/collection.d.ts +1 -3
  2. package/dist/decorators/actions/collection.js +3 -3
  3. package/dist/decorators/binary/collection.d.ts +1 -3
  4. package/dist/decorators/binary/collection.js +2 -3
  5. package/dist/decorators/chart/collection.d.ts +1 -2
  6. package/dist/decorators/chart/collection.js +3 -3
  7. package/dist/decorators/chart/datasource.d.ts +1 -2
  8. package/dist/decorators/chart/datasource.js +3 -3
  9. package/dist/decorators/computed/collection.d.ts +1 -3
  10. package/dist/decorators/computed/collection.js +2 -3
  11. package/dist/decorators/decorators-stack.d.ts +1 -2
  12. package/dist/decorators/decorators-stack.js +21 -21
  13. package/dist/decorators/empty/collection.d.ts +1 -2
  14. package/dist/decorators/empty/collection.js +2 -6
  15. package/dist/decorators/hook/collection.d.ts +1 -2
  16. package/dist/decorators/hook/collection.js +3 -3
  17. package/dist/decorators/operators-emulate/collection.d.ts +1 -3
  18. package/dist/decorators/operators-emulate/collection.js +2 -3
  19. package/dist/decorators/operators-equivalence/collection.d.ts +1 -2
  20. package/dist/decorators/operators-equivalence/collection.js +2 -6
  21. package/dist/decorators/publication-collection/datasource.d.ts +1 -2
  22. package/dist/decorators/publication-collection/datasource.js +3 -3
  23. package/dist/decorators/publication-field/collection.d.ts +1 -3
  24. package/dist/decorators/publication-field/collection.js +2 -6
  25. package/dist/decorators/relation/collection.d.ts +1 -3
  26. package/dist/decorators/relation/collection.js +2 -6
  27. package/dist/decorators/rename-collection/collection.d.ts +1 -2
  28. package/dist/decorators/rename-collection/collection.js +3 -6
  29. package/dist/decorators/rename-collection/datasource.d.ts +1 -2
  30. package/dist/decorators/rename-collection/datasource.js +3 -3
  31. package/dist/decorators/rename-field/collection.d.ts +1 -3
  32. package/dist/decorators/rename-field/collection.js +3 -6
  33. package/dist/decorators/schema/collection.d.ts +1 -2
  34. package/dist/decorators/schema/collection.js +3 -6
  35. package/dist/decorators/search/collection.d.ts +1 -2
  36. package/dist/decorators/search/collection.js +2 -3
  37. package/dist/decorators/segment/collection.d.ts +1 -2
  38. package/dist/decorators/segment/collection.js +2 -3
  39. package/dist/decorators/sort-emulate/collection.d.ts +1 -3
  40. package/dist/decorators/sort-emulate/collection.js +2 -6
  41. package/dist/decorators/validation/collection.d.ts +1 -2
  42. package/dist/decorators/validation/collection.js +2 -6
  43. package/dist/decorators/write/create-relations/collection.d.ts +1 -2
  44. package/dist/decorators/write/create-relations/collection.js +2 -6
  45. package/dist/decorators/write/datasource.d.ts +1 -2
  46. package/dist/decorators/write/datasource.js +5 -5
  47. package/dist/decorators/write/update-relations/collection.d.ts +1 -2
  48. package/dist/decorators/write/update-relations/collection.js +2 -6
  49. package/dist/decorators/write/write-replace/collection.d.ts +1 -3
  50. package/dist/decorators/write/write-replace/collection.js +5 -6
  51. package/dist/decorators/write/write-replace/context.d.ts +4 -3
  52. package/dist/decorators/write/write-replace/context.js +3 -2
  53. package/dist/decorators/write/write-replace/types.d.ts +1 -0
  54. package/dist/decorators/write/write-replace/types.js +7 -1
  55. package/dist/index.d.ts +1 -1
  56. package/dist/index.js +2 -1
  57. package/package.json +2 -2
  58. package/dist/decorators/collection-decorator.d.ts +0 -21
  59. package/dist/decorators/collection-decorator.js +0 -72
  60. package/dist/decorators/datasource-decorator.d.ts +0 -15
  61. package/dist/decorators/datasource-decorator.js +0 -27
@@ -1,11 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  const datasource_toolkit_1 = require("@forestadmin/datasource-toolkit");
7
- const collection_decorator_1 = __importDefault(require("../../collection-decorator"));
8
- class UpdateRelationCollectionDecorator extends collection_decorator_1.default {
4
+ class UpdateRelationCollectionDecorator extends datasource_toolkit_1.CollectionDecorator {
9
5
  async update(caller, filter, patch) {
10
6
  // Step 1: Perform the normal update
11
7
  if (Object.keys(patch).some(key => this.schema.fields[key].type === 'Column')) {
@@ -77,4 +73,4 @@ class UpdateRelationCollectionDecorator extends collection_decorator_1.default {
77
73
  }
78
74
  }
79
75
  exports.default = UpdateRelationCollectionDecorator;
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kZWNvcmF0b3JzL3dyaXRlL3VwZGF0ZS1yZWxhdGlvbnMvY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdFQVF5QztBQUV6QyxzRkFBNkQ7QUFFN0QsTUFBcUIsaUNBQWtDLFNBQVEsOEJBQW1CO0lBQ3ZFLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBYyxFQUFFLE1BQWMsRUFBRSxLQUFpQjtRQUNyRSxvQ0FBb0M7UUFDcEMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsRUFBRTtZQUM3RSxNQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFO2dCQUNwRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzNGLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUVQLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO1NBQzFFO1FBRUQsbURBQW1EO1FBQ25ELElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FB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
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kZWNvcmF0b3JzL3dyaXRlL3VwZGF0ZS1yZWxhdGlvbnMvY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHdFQVN5QztBQUV6QyxNQUFxQixpQ0FBa0MsU0FBUSx3Q0FBbUI7SUFDdkUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFjLEVBQUUsTUFBYyxFQUFFLEtBQWlCO1FBQ3JFLG9DQUFvQztRQUNwQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxFQUFFO1lBQzdFLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQ3BFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDM0YsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRVAsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLHFCQUFxQixDQUFDLENBQUM7U0FDMUU7UUFFRCxtREFBbUQ7UUFDbkQsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFN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
@@ -1,7 +1,5 @@
1
- import { Caller, CollectionSchema, Filter, RecordData } from '@forestadmin/datasource-toolkit';
1
+ import { Caller, CollectionDecorator, CollectionSchema, DataSourceDecorator, Filter, RecordData } from '@forestadmin/datasource-toolkit';
2
2
  import { WriteDefinition } from './types';
3
- import CollectionDecorator from '../../collection-decorator';
4
- import DataSourceDecorator from '../../datasource-decorator';
5
3
  export default class WriteReplacerCollectionDecorator extends CollectionDecorator {
6
4
  private handlers;
7
5
  readonly dataSource: DataSourceDecorator<WriteReplacerCollectionDecorator>;
@@ -5,8 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const datasource_toolkit_1 = require("@forestadmin/datasource-toolkit");
7
7
  const context_1 = __importDefault(require("./context"));
8
- const collection_decorator_1 = __importDefault(require("../../collection-decorator"));
9
- class WriteReplacerCollectionDecorator extends collection_decorator_1.default {
8
+ class WriteReplacerCollectionDecorator extends datasource_toolkit_1.CollectionDecorator {
10
9
  constructor() {
11
10
  super(...arguments);
12
11
  this.handlers = {};
@@ -34,15 +33,15 @@ class WriteReplacerCollectionDecorator extends collection_decorator_1.default {
34
33
  return this.childCollection.create(caller, newRecords);
35
34
  }
36
35
  async update(caller, filter, patch) {
37
- const newPatch = await this.rewritePatch(caller, 'update', patch);
36
+ const newPatch = await this.rewritePatch(caller, 'update', patch, [], filter);
38
37
  return this.childCollection.update(caller, filter, newPatch);
39
38
  }
40
39
  /**
41
40
  * Takes a patch and recursively applies all rewriting rules to it.
42
41
  */
43
- async rewritePatch(caller, action, patch, usedHandlers = []) {
42
+ async rewritePatch(caller, action, patch, usedHandlers = [], filter) {
44
43
  // We rewrite the patch by applying all handlers on each field.
45
- const context = new context_1.default(this, caller, action, patch);
44
+ const context = new context_1.default(this, caller, action, patch, filter);
46
45
  const patches = await Promise.all(Object.keys(patch).map(key => this.rewriteKey(context, key, usedHandlers)));
47
46
  // We now have a list of patches (one per field) that we can merge.
48
47
  const newPatch = this.deepMerge(...patches);
@@ -102,4 +101,4 @@ class WriteReplacerCollectionDecorator extends collection_decorator_1.default {
102
101
  }
103
102
  }
104
103
  exports.default = WriteReplacerCollectionDecorator;
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kZWNvcmF0b3JzL3dyaXRlL3dyaXRlLXJlcGxhY2UvY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdFQU95QztBQUV6Qyx3REFBa0Q7QUFFbEQsc0ZBQTZEO0FBRzdELE1BQXFCLGdDQUFpQyxTQUFRLDhCQUFtQjtJQUFqRjs7UUFDVSxhQUFRLEdBQW9DLEVBQUUsQ0FBQztJQTZIekQsQ0FBQztJQTFIQyxtQkFBbUIsQ0FBQyxTQUFpQixFQUFFLFVBQTJCO1FBQ2hFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3hELE1BQU0sSUFBSSxLQUFLLENBQ2Isb0JBQW9CLFNBQVMsMkJBQTJCLElBQUksQ0FBQyxJQUFJLGNBQWMsQ0FDaEYsQ0FBQztTQUNIO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxVQUFVLENBQUM7UUFDdEMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVrQixZQUFZLENBQUMsV0FBNkI7UUFDM0QsTUFBTSxNQUFNLEdBQUcsRUFBRSxHQUFHLFdBQVcsRUFBRSxNQUFNLEVBQUUsRUFBRSxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO1FBRXJFLEtBQUssTUFBTSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNoRSxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHO2dCQUN6QixHQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFrQjtnQkFDN0MsVUFBVSxFQUFFLE9BQU8sS0FBSyxJQUFJO2FBQzdC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
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kZWNvcmF0b3JzL3dyaXRlL3dyaXRlLXJlcGxhY2UvY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdFQVN5QztBQUV6Qyx3REFBa0Q7QUFHbEQsTUFBcUIsZ0NBQWlDLFNBQVEsd0NBQW1CO0lBQWpGOztRQUNVLGFBQVEsR0FBb0MsRUFBRSxDQUFDO0lBOEh6RCxDQUFDO0lBM0hDLG1CQUFtQixDQUFDLFNBQWlCLEVBQUUsVUFBMkI7UUFDaEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDeEQsTUFBTSxJQUFJLEtBQUssQ0FDYixvQkFBb0IsU0FBUywyQkFBMkIsSUFBSSxDQUFDLElBQUksY0FBYyxDQUNoRixDQUFDO1NBQ0g7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLFVBQVUsQ0FBQztRQUN0QyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRWtCLFlBQVksQ0FBQyxXQUE2QjtRQUMzRCxNQUFNLE1BQU0sR0FBRyxFQUFFLEdBQUcsV0FBVyxFQUFFLE1BQU0sRUFBRSxFQUFFLEdBQUcsV0FBVyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7UUFFckUsS0FBSyxNQUFNLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2hFLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUc7Z0JBQ3pCLEdBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQWtCO2dCQUM3QyxVQUFVLEVBQUUsT0FBTyxLQUFLLElBQUk7YUFDN0IsQ0FBQztTQUNIO1FB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
@@ -1,9 +1,10 @@
1
- import { Caller, Collection } from '@forestadmin/datasource-toolkit';
1
+ import { Caller, Collection, Filter } from '@forestadmin/datasource-toolkit';
2
2
  import CollectionCustomizationContext from '../../../context/collection-context';
3
- import { TCollectionName, TPartialSimpleRow, TSchema } from '../../../templates';
3
+ import { TCollectionName, TFilter, TPartialSimpleRow, TSchema } from '../../../templates';
4
4
  export default class WriteCustomizationContext<S extends TSchema = TSchema, N extends TCollectionName<S> = TCollectionName<S>> extends CollectionCustomizationContext<S, N> {
5
5
  readonly action: 'update' | 'create';
6
6
  readonly record: TPartialSimpleRow<S, N>;
7
- constructor(collection: Collection, caller: Caller, action: 'update' | 'create', record: TPartialSimpleRow<S, N>);
7
+ readonly filter?: TFilter<S, N>;
8
+ constructor(collection: Collection, caller: Caller, action: 'update' | 'create', record: TPartialSimpleRow<S, N>, filter?: Filter);
8
9
  }
9
10
  //# sourceMappingURL=context.d.ts.map
@@ -5,11 +5,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const collection_context_1 = __importDefault(require("../../../context/collection-context"));
7
7
  class WriteCustomizationContext extends collection_context_1.default {
8
- constructor(collection, caller, action, record) {
8
+ constructor(collection, caller, action, record, filter) {
9
9
  super(collection, caller);
10
10
  this.action = action;
11
+ this.filter = filter;
11
12
  this.record = Object.freeze({ ...record });
12
13
  }
13
14
  }
14
15
  exports.default = WriteCustomizationContext;
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kZWNvcmF0b3JzL3dyaXRlL3dyaXRlLXJlcGxhY2UvY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLDZGQUFpRjtBQUdqRixNQUFxQix5QkFHbkIsU0FBUSw0QkFBb0M7SUFJNUMsWUFDRSxVQUFzQixFQUN0QixNQUFjLEVBQ2QsTUFBMkIsRUFDM0IsTUFBK0I7UUFFL0IsS0FBSyxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUUxQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztDQUNGO0FBbEJELDRDQWtCQyJ9
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kZWNvcmF0b3JzL3dyaXRlL3dyaXRlLXJlcGxhY2UvY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLDZGQUFpRjtBQUdqRixNQUFxQix5QkFHbkIsU0FBUSw0QkFBb0M7SUFLNUMsWUFDRSxVQUFzQixFQUN0QixNQUFjLEVBQ2QsTUFBMkIsRUFDM0IsTUFBK0IsRUFDL0IsTUFBZTtRQUVmLEtBQUssQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFrQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0NBQ0Y7QUFyQkQsNENBcUJDIn0=
@@ -1,4 +1,5 @@
1
1
  import WriteCustomizationContext from './context';
2
2
  import { TCollectionName, TFieldName, TFieldType, TPartialRow, TSchema } from '../../../templates';
3
+ export { WriteCustomizationContext };
3
4
  export type WriteDefinition<S extends TSchema = TSchema, N extends TCollectionName<S> = TCollectionName<S>, C extends TFieldName<S, N> = TFieldName<S, N>> = null | ((value: TFieldType<S, N, C>, context: WriteCustomizationContext<S, N>) => Promise<TPartialRow<S, N> | void> | TPartialRow<S, N> | void);
4
5
  //# sourceMappingURL=types.d.ts.map
@@ -1,3 +1,9 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGVjb3JhdG9ycy93cml0ZS93cml0ZS1yZXBsYWNlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
6
+ exports.WriteCustomizationContext = void 0;
7
+ const context_1 = __importDefault(require("./context"));
8
+ exports.WriteCustomizationContext = context_1.default;
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGVjb3JhdG9ycy93cml0ZS93cml0ZS1yZXBsYWNlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHdEQUFrRDtBQUd6QyxvQ0FIRixpQkFBeUIsQ0FHRSJ9
package/dist/index.d.ts CHANGED
@@ -10,7 +10,7 @@ export { OperatorDefinition } from './decorators/operators-emulate/types';
10
10
  export { RelationDefinition } from './decorators/relation/types';
11
11
  export { SearchDefinition } from './decorators/search/types';
12
12
  export { SegmentDefinition } from './decorators/segment/types';
13
- export { WriteDefinition } from './decorators/write/write-replace/types';
13
+ export * from './decorators/write/write-replace/types';
14
14
  export * from './decorators/hook/types';
15
15
  export { default as CollectionCustomizationContext } from './context/collection-context';
16
16
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -27,8 +27,9 @@ __exportStar(require("./types"), exports);
27
27
  // Decorators (helpers)
28
28
  __exportStar(require("./decorators/actions/types/actions"), exports);
29
29
  __exportStar(require("./decorators/actions/types/fields"), exports);
30
+ __exportStar(require("./decorators/write/write-replace/types"), exports);
30
31
  __exportStar(require("./decorators/hook/types"), exports);
31
32
  // Context
32
33
  var collection_context_1 = require("./context/collection-context");
33
34
  Object.defineProperty(exports, "CollectionCustomizationContext", { enumerable: true, get: function () { return __importDefault(collection_context_1).default; } });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpRUFBMEU7QUFBakUsOElBQUEsT0FBTyxPQUF3QjtBQUN4QyxpRUFBMEU7QUFBakUsOElBQUEsT0FBTyxPQUF3QjtBQUV4Qyw4Q0FBNEI7QUFDNUIsMENBQXdCO0FBRXhCLHVCQUF1QjtBQUN2QixxRUFBbUQ7QUFDbkQsb0VBQWtEO0FBUWxELDBEQUF3QztBQUV4QyxVQUFVO0FBQ1YsbUVBQXlGO0FBQWhGLHFKQUFBLE9BQU8sT0FBa0MifQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpRUFBMEU7QUFBakUsOElBQUEsT0FBTyxPQUF3QjtBQUN4QyxpRUFBMEU7QUFBakUsOElBQUEsT0FBTyxPQUF3QjtBQUV4Qyw4Q0FBNEI7QUFDNUIsMENBQXdCO0FBRXhCLHVCQUF1QjtBQUN2QixxRUFBbUQ7QUFDbkQsb0VBQWtEO0FBT2xELHlFQUF1RDtBQUN2RCwwREFBd0M7QUFFeEMsVUFBVTtBQUNWLG1FQUF5RjtBQUFoRixxSkFBQSxPQUFPLE9BQWtDIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forestadmin/datasource-customizer",
3
- "version": "1.9.2",
3
+ "version": "1.10.0",
4
4
  "main": "dist/index.js",
5
5
  "license": "GPL-3.0",
6
6
  "publishConfig": {
@@ -28,7 +28,7 @@
28
28
  "@types/uuid": "^9.0.0"
29
29
  },
30
30
  "dependencies": {
31
- "@forestadmin/datasource-toolkit": "1.5.0",
31
+ "@forestadmin/datasource-toolkit": "1.5.1",
32
32
  "file-type": "version-16",
33
33
  "luxon": "^3.2.1",
34
34
  "object-hash": "^3.0.0",
@@ -1,21 +0,0 @@
1
- import { ActionField, ActionResult, AggregateResult, Aggregation, Caller, Chart, Collection, CollectionSchema, CompositeId, DataSource, Filter, PaginatedFilter, Projection, RecordData } from '@forestadmin/datasource-toolkit';
2
- export default class CollectionDecorator implements Collection {
3
- readonly dataSource: DataSource;
4
- protected childCollection: Collection;
5
- private lastSchema;
6
- get schema(): CollectionSchema;
7
- get name(): string;
8
- constructor(childCollection: Collection, dataSource: DataSource);
9
- execute(caller: Caller, name: string, data: RecordData, filter?: Filter): Promise<ActionResult>;
10
- getForm(caller: Caller, name: string, data?: RecordData, filter?: Filter): Promise<ActionField[]>;
11
- create(caller: Caller, data: RecordData[]): Promise<RecordData[]>;
12
- list(caller: Caller, filter: PaginatedFilter, projection: Projection): Promise<RecordData[]>;
13
- update(caller: Caller, filter: Filter, patch: RecordData): Promise<void>;
14
- delete(caller: Caller, filter: Filter): Promise<void>;
15
- aggregate(caller: Caller, filter: Filter, aggregation: Aggregation, limit?: number): Promise<AggregateResult[]>;
16
- renderChart(caller: Caller, name: string, recordId: CompositeId): Promise<Chart>;
17
- protected markSchemaAsDirty(): void;
18
- protected refineFilter(caller: Caller, filter?: PaginatedFilter): Promise<PaginatedFilter>;
19
- protected refineSchema(subSchema: CollectionSchema): CollectionSchema;
20
- }
21
- //# sourceMappingURL=collection-decorator.d.ts.map
@@ -1,72 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class CollectionDecorator {
4
- get schema() {
5
- if (!this.lastSchema) {
6
- // If the schema is not cached (at the first call, or after a markSchemaAsDirty call),
7
- const subSchema = this.childCollection.schema;
8
- this.lastSchema = this.refineSchema(subSchema);
9
- }
10
- return this.lastSchema;
11
- }
12
- get name() {
13
- return this.childCollection.name;
14
- }
15
- constructor(childCollection, dataSource) {
16
- this.childCollection = childCollection;
17
- this.dataSource = dataSource;
18
- // When the child collection invalidates its schema, we also invalidate ours.
19
- // This is done like this, and not in the markSchemaAsDirty method, because we don't have
20
- // a reference to parent collections from children.
21
- if (childCollection instanceof CollectionDecorator) {
22
- const originalChildMarkSchemaAsDirty = childCollection.markSchemaAsDirty;
23
- childCollection.markSchemaAsDirty = () => {
24
- // Call the original method (the child)
25
- originalChildMarkSchemaAsDirty.call(childCollection);
26
- // Invalidate our schema (the parent)
27
- this.markSchemaAsDirty();
28
- };
29
- }
30
- }
31
- async execute(caller, name, data, filter) {
32
- const refinedFilter = await this.refineFilter(caller, filter);
33
- return this.childCollection.execute(caller, name, data, refinedFilter);
34
- }
35
- async getForm(caller, name, data, filter) {
36
- const refinedFilter = await this.refineFilter(caller, filter);
37
- return this.childCollection.getForm(caller, name, data, refinedFilter);
38
- }
39
- async create(caller, data) {
40
- return this.childCollection.create(caller, data);
41
- }
42
- async list(caller, filter, projection) {
43
- const refinedFilter = await this.refineFilter(caller, filter);
44
- return this.childCollection.list(caller, refinedFilter, projection);
45
- }
46
- async update(caller, filter, patch) {
47
- const refinedFilter = await this.refineFilter(caller, filter);
48
- return this.childCollection.update(caller, refinedFilter, patch);
49
- }
50
- async delete(caller, filter) {
51
- const refinedFilter = await this.refineFilter(caller, filter);
52
- return this.childCollection.delete(caller, refinedFilter);
53
- }
54
- async aggregate(caller, filter, aggregation, limit) {
55
- const refinedFilter = await this.refineFilter(caller, filter);
56
- return this.childCollection.aggregate(caller, refinedFilter, aggregation, limit);
57
- }
58
- async renderChart(caller, name, recordId) {
59
- return this.childCollection.renderChart(caller, name, recordId);
60
- }
61
- markSchemaAsDirty() {
62
- this.lastSchema = null;
63
- }
64
- async refineFilter(caller, filter) {
65
- return filter;
66
- }
67
- refineSchema(subSchema) {
68
- return subSchema;
69
- }
70
- }
71
- exports.default = CollectionDecorator;
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVjb3JhdG9ycy9jb2xsZWN0aW9uLWRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWlCQSxNQUFxQixtQkFBbUI7SUFNdEMsSUFBSSxNQUFNO1FBQ1IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDcEIsc0ZBQXNGO1lBQ3RGLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO1lBQzlDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNoRDtRQUVELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWSxlQUEyQixFQUFFLFVBQXNCO1FBQzdELElBQUksQ0FBQyxlQUFlLEdBQUcsZUFBZSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBRTdCLDZFQUE2RTtRQUM3RSx5RkFBeUY7UUFDekYsbURBQW1EO1FBQ25ELElBQUksZUFBZSxZQUFZLG1CQUFtQixFQUFFO1lBQ2xELE1BQU0sOEJBQThCLEdBQUcsZUFBZSxDQUFDLGlCQUFpQixDQUFDO1lBRXpFLGVBQWUsQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLEVBQUU7Z0JBQ3ZDLHVDQUF1QztnQkFDdkMsOEJBQThCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUVyRCxxQ0FBcUM7Z0JBQ3JDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzNCLENBQUMsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxPQUFPLENBQ1gsTUFBYyxFQUNkLElBQVksRUFDWixJQUFnQixFQUNo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
@@ -1,15 +0,0 @@
1
- import { BaseDataSource, Caller, Chart, Collection, DataSource, DataSourceSchema } from '@forestadmin/datasource-toolkit';
2
- type CollectionDecoratorConstructor<CollectionDecorator extends Collection> = {
3
- new (c: Collection, d: DataSource): CollectionDecorator;
4
- };
5
- export default class DataSourceDecorator<CollectionDecorator extends Collection = Collection> extends BaseDataSource<CollectionDecorator> {
6
- protected readonly childDataSource: DataSource;
7
- private readonly CollectionDecoratorCtor;
8
- private readonly addCollectionToChildDataSource;
9
- get schema(): DataSourceSchema;
10
- constructor(childDataSource: DataSource, CollectionDecoratorCtor: CollectionDecoratorConstructor<CollectionDecorator>);
11
- renderChart(caller: Caller, name: string): Promise<Chart>;
12
- private addCollectionObserver;
13
- }
14
- export {};
15
- //# sourceMappingURL=datasource-decorator.d.ts.map
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const datasource_toolkit_1 = require("@forestadmin/datasource-toolkit");
4
- class DataSourceDecorator extends datasource_toolkit_1.BaseDataSource {
5
- get schema() {
6
- return this.childDataSource.schema;
7
- }
8
- constructor(childDataSource, CollectionDecoratorCtor) {
9
- super();
10
- this.addCollectionToChildDataSource = childDataSource.addCollection.bind(childDataSource);
11
- Reflect.defineProperty(childDataSource, 'addCollection', {
12
- value: this.addCollectionObserver.bind(this),
13
- });
14
- this.childDataSource = childDataSource;
15
- this.CollectionDecoratorCtor = CollectionDecoratorCtor;
16
- this.childDataSource.collections.forEach(collection => this.addCollection(new this.CollectionDecoratorCtor(collection, this)));
17
- }
18
- renderChart(caller, name) {
19
- return this.childDataSource.renderChart(caller, name);
20
- }
21
- addCollectionObserver(collection) {
22
- this.addCollectionToChildDataSource(collection);
23
- this.addCollection(new this.CollectionDecoratorCtor(collection, this));
24
- }
25
- }
26
- exports.default = DataSourceDecorator;
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNvdXJjZS1kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVjb3JhdG9ycy9kYXRhc291cmNlLWRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHdFQU95QztBQU16QyxNQUFxQixtQkFFbkIsU0FBUSxtQ0FBbUM7SUFLM0MsSUFBYSxNQUFNO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7SUFDckMsQ0FBQztJQUVELFlBQ0UsZUFBMkIsRUFDM0IsdUJBQTRFO1FBRTVFLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLDhCQUE4QixHQUFHLGVBQWUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzFGLE9BQU8sQ0FBQyxjQUFjLENBQUMsZUFBZSxFQUFFLGVBQWUsRUFBRTtZQUN2RCxLQUFLLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDN0MsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUM7UUFDdkMsSUFBSSxDQUFDLHVCQUF1QixHQUFHLHVCQUF1QixDQUFDO1FBRXZELElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUNwRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLHVCQUF1QixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUN2RSxDQUFDO0lBQ0osQ0FBQztJQUVRLFdBQVcsQ0FBQyxNQUFjLEVBQUUsSUFBWTtRQUMvQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRU8scUJBQXFCLENBQUMsVUFBc0I7UUFDbEQsSUFBSSxDQUFDLDhCQUE4QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsdUJBQXVCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDekUsQ0FBQztDQUNGO0FBdENELHNDQXNDQyJ9