@forestadmin/datasource-customizer 1.43.6 → 1.44.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.
@@ -7,6 +7,7 @@ import { ComputedDefinition } from './decorators/computed/types';
7
7
  import DecoratorsStack from './decorators/decorators-stack';
8
8
  import { HookHandler, HookPosition, HookType, HooksContext } from './decorators/hook/types';
9
9
  import { OperatorDefinition } from './decorators/operators-emulate/types';
10
+ import { CreateOverrideHandler, DeleteOverrideHandler, UpdateOverrideHandler } from './decorators/override/types';
10
11
  import { SearchDefinition } from './decorators/search/types';
11
12
  import { SegmentDefinition } from './decorators/segment/types';
12
13
  import { WriteDefinition } from './decorators/write/write-replace/types';
@@ -331,6 +332,9 @@ export default class CollectionCustomizer<S extends TSchema = TSchema, N extends
331
332
  * });
332
333
  */
333
334
  replaceSearch(definition: SearchDefinition<S, N>): this;
335
+ overrideCreate(handler: CreateOverrideHandler<S, N>): this;
336
+ overrideUpdate(handler: UpdateOverrideHandler<S, N>): this;
337
+ overrideDelete(handler: DeleteOverrideHandler<S, N>): this;
334
338
  private pushRelation;
335
339
  private pushCustomization;
336
340
  }
@@ -468,6 +468,21 @@ class CollectionCustomizer {
468
468
  .replaceSearch(definition);
469
469
  });
470
470
  }
471
+ overrideCreate(handler) {
472
+ return this.pushCustomization(async () => {
473
+ this.stack.override.getCollection(this.name).addCreateHandler(handler);
474
+ });
475
+ }
476
+ overrideUpdate(handler) {
477
+ return this.pushCustomization(async () => {
478
+ this.stack.override.getCollection(this.name).addUpdateHandler(handler);
479
+ });
480
+ }
481
+ overrideDelete(handler) {
482
+ return this.pushCustomization(async () => {
483
+ this.stack.override.getCollection(this.name).addDeleteHandler(handler);
484
+ });
485
+ }
471
486
  pushRelation(name, definition) {
472
487
  return this.pushCustomization(async () => {
473
488
  this.stack.relation.getCollection(this.name).addRelation(name, definition);
@@ -479,4 +494,4 @@ class CollectionCustomizer {
479
494
  }
480
495
  }
481
496
  exports.default = CollectionCustomizer;
482
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1jdXN0b21pemVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbGxlY3Rpb24tY3VzdG9taXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdFQU95QztBQU96QyxnR0FBdUU7QUFRdkUsNEZBQWtFO0FBQ2xFLDBFQUFpRDtBQVdqRCxNQUFxQixvQkFBb0I7SUFRdkMsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUMvRCxDQUFDO0lBRUQsWUFBWSxvQkFBNkMsRUFBRSxLQUFzQixFQUFFLElBQVk7UUFxSC9GOzs7Ozs7Ozs7OztXQVdHO1FBQ0gsYUFBUSxHQUVKLENBQUMsSUFBWSxFQUFFLFVBQW9DLEVBQVEsRUFBRTtZQUMvRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsTUFBYyxFQUFFLEVBQUU7Z0JBQ3JELE1BQU0seUJBQXlCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDcEYsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUVsRixJQUFJLFVBQVUsQ0FBQyxVQUFVLEtBQUssVUFBVSxFQUFFO29CQUN4QyxNQUFNLENBQUMsTUFBTSxFQUFFLGlFQUFpRSxDQUFDLENBQUM7aUJBQ25GO2dCQUVELElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFO29CQUM1QixNQUFNLENBQ0osT0FBTyxFQUNQLG1CQUNFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFDakQsSUFBSSxJ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
497
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1jdXN0b21pemVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbGxlY3Rpb24tY3VzdG9taXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdFQU95QztBQU96QyxnR0FBdUU7QUFhdkUsNEZBQWtFO0FBQ2xFLDBFQUFpRDtBQVdqRCxNQUFxQixvQkFBb0I7SUFRdkMsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUMvRCxDQUFDO0lBRUQsWUFBWSxvQkFBNkMsRUFBRSxLQUFzQixFQUFFLElBQVk7UUFxSC9GOzs7Ozs7Ozs7OztXQVdHO1FBQ0gsYUFBUSxHQUVKLENBQUMsSUFBWSxFQUFFLFVBQW9DLEVBQVEsRUFBRTtZQUMvRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsTUFBYyxFQUFFLEVBQUU7Z0JBQ3JELE1BQU0seUJBQXlCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDcEYsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUVsRixJQUFJLFVBQVUsQ0FBQyxVQUFVLEtBQUssVUFBVSxFQUFFO29CQUN4QyxNQUFNLENBQUMsTUFBTSxFQUFFLGlFQUFpRSxDQUFDLENBQUM7aUJBQ25GO2dCQUVELElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFO29CQUM1QixNQUFNLENBQ0osT0FBTyxFQUNQLG1CQUNFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFDakQsSUFBSSxJ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
@@ -5,6 +5,7 @@ import ChartDataSourceDecorator from './chart/datasource';
5
5
  import ComputedCollectionDecorator from './computed/collection';
6
6
  import HookCollectionDecorator from './hook/collection';
7
7
  import OperatorsEmulateCollectionDecorator from './operators-emulate/collection';
8
+ import OverrideCollectionDecorator from './override/collection';
8
9
  import PublicationDataSourceDecorator from './publication/datasource';
9
10
  import RelationCollectionDecorator from './relation/collection';
10
11
  import RenameFieldCollectionDecorator from './rename-field/collection';
@@ -33,6 +34,7 @@ export default class DecoratorsStack {
33
34
  validation: DataSourceDecorator<ValidationCollectionDecorator>;
34
35
  write: WriteDataSourceDecorator;
35
36
  dataSource: DataSource;
37
+ override: DataSourceDecorator<OverrideCollectionDecorator>;
36
38
  private customizations;
37
39
  constructor(dataSource: DataSource);
38
40
  queueCustomization(customization: (logger: Logger) => Promise<void>): void;
@@ -12,14 +12,15 @@ const collection_4 = __importDefault(require("./empty/collection"));
12
12
  const collection_5 = __importDefault(require("./hook/collection"));
13
13
  const collection_6 = __importDefault(require("./operators-emulate/collection"));
14
14
  const collection_7 = __importDefault(require("./operators-equivalence/collection"));
15
+ const collection_8 = __importDefault(require("./override/collection"));
15
16
  const datasource_2 = __importDefault(require("./publication/datasource"));
16
- const collection_8 = __importDefault(require("./relation/collection"));
17
- const collection_9 = __importDefault(require("./rename-field/collection"));
18
- const collection_10 = __importDefault(require("./schema/collection"));
19
- const collection_11 = __importDefault(require("./search/collection"));
20
- const collection_12 = __importDefault(require("./segment/collection"));
21
- const collection_13 = __importDefault(require("./sort-emulate/collection"));
22
- const collection_14 = __importDefault(require("./validation/collection"));
17
+ const collection_9 = __importDefault(require("./relation/collection"));
18
+ const collection_10 = __importDefault(require("./rename-field/collection"));
19
+ const collection_11 = __importDefault(require("./schema/collection"));
20
+ const collection_12 = __importDefault(require("./search/collection"));
21
+ const collection_13 = __importDefault(require("./segment/collection"));
22
+ const collection_14 = __importDefault(require("./sort-emulate/collection"));
23
+ const collection_15 = __importDefault(require("./validation/collection"));
23
24
  const datasource_3 = __importDefault(require("./write/datasource"));
24
25
  class DecoratorsStack {
25
26
  constructor(dataSource) {
@@ -27,6 +28,7 @@ class DecoratorsStack {
27
28
  let last = dataSource;
28
29
  /* eslint-disable no-multi-assign */
29
30
  // Step 0: Do not query datasource when we know the result with yield an empty set.
31
+ last = this.override = new datasource_toolkit_1.DataSourceDecorator(last, collection_8.default);
30
32
  last = new datasource_toolkit_1.DataSourceDecorator(last, collection_4.default);
31
33
  last = new datasource_toolkit_1.DataSourceDecorator(last, collection_7.default);
32
34
  // Step 1: Computed-Relation-Computed sandwich (needed because some emulated relations depend
@@ -35,26 +37,26 @@ class DecoratorsStack {
35
37
  last = this.earlyComputed = new datasource_toolkit_1.DataSourceDecorator(last, collection_3.default);
36
38
  last = this.earlyOpEmulate = new datasource_toolkit_1.DataSourceDecorator(last, collection_6.default);
37
39
  last = new datasource_toolkit_1.DataSourceDecorator(last, collection_7.default);
38
- last = this.relation = new datasource_toolkit_1.DataSourceDecorator(last, collection_8.default);
40
+ last = this.relation = new datasource_toolkit_1.DataSourceDecorator(last, collection_9.default);
39
41
  last = this.lateComputed = new datasource_toolkit_1.DataSourceDecorator(last, collection_3.default);
40
42
  last = this.lateOpEmulate = new datasource_toolkit_1.DataSourceDecorator(last, collection_6.default);
41
43
  last = new datasource_toolkit_1.DataSourceDecorator(last, collection_7.default);
42
44
  // Step 2: Those need access to all fields. They can be loaded in any order.
43
- last = this.search = new datasource_toolkit_1.DataSourceDecorator(last, collection_11.default);
44
- last = this.segment = new datasource_toolkit_1.DataSourceDecorator(last, collection_12.default);
45
- last = this.sortEmulate = new datasource_toolkit_1.DataSourceDecorator(last, collection_13.default);
45
+ last = this.search = new datasource_toolkit_1.DataSourceDecorator(last, collection_12.default);
46
+ last = this.segment = new datasource_toolkit_1.DataSourceDecorator(last, collection_13.default);
47
+ last = this.sortEmulate = new datasource_toolkit_1.DataSourceDecorator(last, collection_14.default);
46
48
  // Step 3: Access to all fields AND emulated capabilities
47
49
  last = this.chart = new datasource_1.default(last);
48
50
  last = this.action = new datasource_toolkit_1.DataSourceDecorator(last, collection_1.default);
49
- last = this.schema = new datasource_toolkit_1.DataSourceDecorator(last, collection_10.default);
51
+ last = this.schema = new datasource_toolkit_1.DataSourceDecorator(last, collection_11.default);
50
52
  last = this.write = new datasource_3.default(last);
51
53
  last = this.hook = new datasource_toolkit_1.DataSourceDecorator(last, collection_5.default);
52
- last = this.validation = new datasource_toolkit_1.DataSourceDecorator(last, collection_14.default);
54
+ last = this.validation = new datasource_toolkit_1.DataSourceDecorator(last, collection_15.default);
53
55
  last = this.binary = new datasource_toolkit_1.DataSourceDecorator(last, collection_2.default);
54
56
  // Step 4: Renaming must be either the very first or very last so that naming in customer code
55
57
  // is consistent.
56
58
  last = this.publication = new datasource_2.default(last);
57
- last = this.renameField = new datasource_toolkit_1.DataSourceDecorator(last, collection_9.default);
59
+ last = this.renameField = new datasource_toolkit_1.DataSourceDecorator(last, collection_10.default);
58
60
  /* eslint-enable no-multi-assign */
59
61
  this.dataSource = last;
60
62
  }
@@ -78,4 +80,4 @@ class DecoratorsStack {
78
80
  }
79
81
  }
80
82
  exports.default = DecoratorsStack;
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy1zdGFjay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kZWNvcmF0b3JzL2RlY29yYXRvcnMtc3RhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx3RUFBMEY7QUFFMUYsc0VBQTZEO0FBQzdELHFFQUE0RDtBQUM1RCxvRUFBMEQ7QUFDMUQsdUVBQWdFO0FBQ2hFLG9FQUEwRDtBQUMxRCxtRUFBd0Q7QUFDeEQsZ0ZBQWlGO0FBQ2pGLG9GQUF5RjtBQUN6RiwwRUFBc0U7QUFDdEUsdUVBQWdFO0FBQ2hFLDJFQUF1RTtBQUN2RSxzRUFBNEQ7QUFDNUQsc0VBQTREO0FBQzVELHVFQUE4RDtBQUM5RCw0RUFBdUU7QUFDdkUsMEVBQW9FO0FBQ3BFLG9FQUEwRDtBQUUxRCxNQUFxQixlQUFlO0lBc0JsQyxZQUFZLFVBQXNCO1FBRjFCLG1CQUFjLEdBQTZDLEVBQUUsQ0FBQztRQUdwRSxJQUFJLElBQUksR0FBZSxVQUFVLENBQUM7UUFFbEMsb0NBQW9DO1FBQ3BDLG1GQUFtRjtRQUNuRixJQUFJLEdBQUcsSUFBSSx3Q0FBbUIsQ0FBQyxJQUFJLEVBQUUsb0JBQXdCLENBQUMsQ0FBQztRQUMvRCxJQUFJLEdBQUcsSUFBSSx3Q0FBbUIsQ0FBQyxJQUFJLEVBQUUsb0JBQXVDLENBQUMsQ0FBQztRQUU5RSw2RkFBNkY7UUFDN0Ysc0VBQXNFO1FBQ3RFLDJGQUEyRjtRQUMzRixJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLHdDQUFtQixDQUFDLElBQUksRUFBRSxvQkFBMkIsQ0FBQyxDQUFDO1FBQ3ZGLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksd0NBQW1CLENBQUMsSUFBSSxFQUFFLG9CQUFtQyxDQUFDLENBQUM7UUFDaEcsSUFBSSxHQUFHLElBQUksd0NBQW1CLENBQUMsSUFBSSxFQUFFLG9CQUF1QyxDQUFDLENBQUM7UUFDOUUsSUFBSSxHQUFHLElBQUksQ0FBQyxR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
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy1zdGFjay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kZWNvcmF0b3JzL2RlY29yYXRvcnMtc3RhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx3RUFBMEY7QUFFMUYsc0VBQTZEO0FBQzdELHFFQUE0RDtBQUM1RCxvRUFBMEQ7QUFDMUQsdUVBQWdFO0FBQ2hFLG9FQUEwRDtBQUMxRCxtRUFBd0Q7QUFDeEQsZ0ZBQWlGO0FBQ2pGLG9GQUF5RjtBQUN6Rix1RUFBZ0U7QUFDaEUsMEVBQXNFO0FBQ3RFLHVFQUFnRTtBQUNoRSw0RUFBdUU7QUFDdkUsc0VBQTREO0FBQzVELHNFQUE0RDtBQUM1RCx1RUFBOEQ7QUFDOUQsNEVBQXVFO0FBQ3ZFLDBFQUFvRTtBQUNwRSxvRUFBMEQ7QUFFMUQsTUFBcUIsZUFBZTtJQXVCbEMsWUFBWSxVQUFzQjtRQUYxQixtQkFBYyxHQUE2QyxFQUFFLENBQUM7UUFHcEUsSUFBSSxJQUFJLEdBQWUsVUFBVSxDQUFDO1FBRWxDLG9DQUFvQztRQUNwQyxtRkFBbUY7UUFDbkYsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSx3Q0FBbUIsQ0FBQyxJQUFJLEVBQUUsb0JBQTJCLENBQUMsQ0FBQztRQUNsRixJQUFJLEdBQUcsSUFBSSx3Q0FBbUIsQ0FBQyxJQUFJLEVBQUUsb0JBQXdCLENBQUMsQ0FBQztRQUMvRCxJQUFJLEdBQUcsSUFBSSx3Q0FBbUIsQ0FBQyxJQUFJLEVBQUUsb0JBQXVDLENBQUMsQ0FBQztRQUU5RSw2RkFBNkY7UUFDN0Ysc0VBQXNFO1FBQ3RFLDJGQUEyRjtRQUMzRixJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLHdDQUFtQixDQUFDLElBQUksRUFBRSxvQkFBMkIsQ0FBQyxDQUFDO1FBQ3ZGLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksd0NBQW1CLENBQUMsSUFBSSxFQUFFLG9CQUFtQyxDQUFD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
@@ -0,0 +1,14 @@
1
+ import { Caller, CollectionDecorator, Filter, RecordData } from '@forestadmin/datasource-toolkit';
2
+ import { CreateOverrideHandler, UpdateOverrideHandler } from './types';
3
+ export default class OverrideCollectionDecorator extends CollectionDecorator {
4
+ private createHandler;
5
+ private updateHandler;
6
+ private deleteHandler;
7
+ create(caller: Caller, data: RecordData[]): Promise<RecordData[]>;
8
+ addCreateHandler(handler: CreateOverrideHandler): void;
9
+ update(caller: Caller, filter: Filter, patch: RecordData): Promise<void>;
10
+ addUpdateHandler(handler: UpdateOverrideHandler): void;
11
+ delete(caller: Caller, filter: Filter): Promise<void>;
12
+ addDeleteHandler(handler: UpdateOverrideHandler): void;
13
+ }
14
+ //# sourceMappingURL=collection.d.ts.map
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const datasource_toolkit_1 = require("@forestadmin/datasource-toolkit");
4
+ const context_1 = require("./context");
5
+ class OverrideCollectionDecorator extends datasource_toolkit_1.CollectionDecorator {
6
+ async create(caller, data) {
7
+ if (this.createHandler) {
8
+ const context = new context_1.CreateOverrideCustomizationContext(this.childCollection, caller, data);
9
+ return this.createHandler(context);
10
+ }
11
+ return super.create(caller, data);
12
+ }
13
+ addCreateHandler(handler) {
14
+ this.createHandler = handler;
15
+ }
16
+ async update(caller, filter, patch) {
17
+ if (this.updateHandler) {
18
+ const context = new context_1.UpdateOverrideCustomizationContext(this.childCollection, caller, filter, patch);
19
+ return this.updateHandler(context);
20
+ }
21
+ return super.update(caller, filter, patch);
22
+ }
23
+ addUpdateHandler(handler) {
24
+ this.updateHandler = handler;
25
+ }
26
+ async delete(caller, filter) {
27
+ if (this.deleteHandler) {
28
+ const context = new context_1.DeleteOverrideCustomizationContext(this.childCollection, caller, filter);
29
+ return this.deleteHandler(context);
30
+ }
31
+ return super.delete(caller, filter);
32
+ }
33
+ addDeleteHandler(handler) {
34
+ this.deleteHandler = handler;
35
+ }
36
+ }
37
+ exports.default = OverrideCollectionDecorator;
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kZWNvcmF0b3JzL292ZXJyaWRlL2NvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx3RUFBa0c7QUFFbEcsdUNBSW1CO0FBR25CLE1BQXFCLDJCQUE0QixTQUFRLHdDQUFtQjtJQUtqRSxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQWMsRUFBRSxJQUFrQjtRQUN0RCxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsTUFBTSxPQUFPLEdBQUcsSUFBSSw0Q0FBa0MsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUUzRixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDcEM7UUFFRCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxPQUE4QjtRQUM3QyxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQztJQUMvQixDQUFDO0lBRVEsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFjLEVBQUUsTUFBYyxFQUFFLEtBQWlCO1FBQ3JFLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixNQUFNLE9BQU8sR0FBRyxJQUFJLDRDQUFrQyxDQUNwRCxJQUFJLENBQUMsZUFBZSxFQUNwQixNQUFNLEVBQ04sTUFBTSxFQUNOLEtBQUssQ0FDTixDQUFDO1lBRUYsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3BDO1FBRUQsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELGdCQUFnQixDQUFDLE9BQThCO1FBQzdDLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDO0lBQy9CLENBQUM7SUFFUSxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQWMsRUFBRSxNQUFjO1FBQ2xELElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixNQUFNLE9BQU8sR0FBRyxJQUFJLDRDQUFrQyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBRTdGLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUNwQztRQUVELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGdCQUFnQixDQUFDLE9BQThCO1FBQzdDLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDO0lBQy9CLENBQUM7Q0FDRjtBQW5ERCw4Q0FtREMifQ==
@@ -0,0 +1,17 @@
1
+ import { Caller, Collection, Filter } from '@forestadmin/datasource-toolkit';
2
+ import CollectionCustomizationContext from '../../context/collection-context';
3
+ import { TCollectionName, TFilter, TPartialSimpleRow, TSchema } from '../../templates';
4
+ export declare class CreateOverrideCustomizationContext<S extends TSchema = TSchema, N extends TCollectionName<S> = TCollectionName<S>> extends CollectionCustomizationContext<S, N> {
5
+ readonly data: TPartialSimpleRow<S, N>[];
6
+ constructor(collection: Collection, caller: Caller, data: TPartialSimpleRow<S, N>[]);
7
+ }
8
+ export declare class UpdateOverrideCustomizationContext<S extends TSchema = TSchema, N extends TCollectionName<S> = TCollectionName<S>> extends CollectionCustomizationContext<S, N> {
9
+ readonly filter: TFilter<S, N>;
10
+ readonly patch: TPartialSimpleRow<S, N>;
11
+ constructor(collection: Collection, caller: Caller, filter: Filter, patch: TPartialSimpleRow<S, N>);
12
+ }
13
+ export declare class DeleteOverrideCustomizationContext<S extends TSchema = TSchema, N extends TCollectionName<S> = TCollectionName<S>> extends CollectionCustomizationContext<S, N> {
14
+ readonly filter: TFilter<S, N>;
15
+ constructor(collection: Collection, caller: Caller, filter: Filter);
16
+ }
17
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DeleteOverrideCustomizationContext = exports.UpdateOverrideCustomizationContext = exports.CreateOverrideCustomizationContext = void 0;
7
+ const collection_context_1 = __importDefault(require("../../context/collection-context"));
8
+ class CreateOverrideCustomizationContext extends collection_context_1.default {
9
+ constructor(collection, caller, data) {
10
+ super(collection, caller);
11
+ this.data = data;
12
+ }
13
+ }
14
+ exports.CreateOverrideCustomizationContext = CreateOverrideCustomizationContext;
15
+ class UpdateOverrideCustomizationContext extends collection_context_1.default {
16
+ constructor(collection, caller, filter, patch) {
17
+ super(collection, caller);
18
+ this.filter = filter;
19
+ this.patch = patch;
20
+ }
21
+ }
22
+ exports.UpdateOverrideCustomizationContext = UpdateOverrideCustomizationContext;
23
+ class DeleteOverrideCustomizationContext extends collection_context_1.default {
24
+ constructor(collection, caller, filter) {
25
+ super(collection, caller);
26
+ this.filter = filter;
27
+ }
28
+ }
29
+ exports.DeleteOverrideCustomizationContext = DeleteOverrideCustomizationContext;
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kZWNvcmF0b3JzL292ZXJyaWRlL2NvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBR0EsMEZBQThFO0FBRzlFLE1BQWEsa0NBR1gsU0FBUSw0QkFBb0M7SUFHNUMsWUFBWSxVQUFzQixFQUFFLE1BQWMsRUFBRSxJQUErQjtRQUNqRixLQUFLLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRTFCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7Q0FDRjtBQVhELGdGQVdDO0FBRUQsTUFBYSxrQ0FHWCxTQUFRLDRCQUFvQztJQUk1QyxZQUNFLFVBQXNCLEVBQ3RCLE1BQWMsRUFDZCxNQUFjLEVBQ2QsS0FBOEI7UUFFOUIsS0FBSyxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUUxQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQWtDLENBQUM7UUFDakQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztDQUNGO0FBbEJELGdGQWtCQztBQUVELE1BQWEsa0NBR1gsU0FBUSw0QkFBb0M7SUFHNUMsWUFBWSxVQUFzQixFQUFFLE1BQWMsRUFBRSxNQUFjO1FBQ2hFLEtBQUssQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFrQyxDQUFDO0lBQ25ELENBQUM7Q0FDRjtBQVhELGdGQVdDIn0=
@@ -0,0 +1,6 @@
1
+ import { CreateOverrideCustomizationContext, DeleteOverrideCustomizationContext, UpdateOverrideCustomizationContext } from './context';
2
+ import { TCollectionName, TPartialSimpleRow, TSchema } from '../../templates';
3
+ export type CreateOverrideHandler<S extends TSchema = TSchema, N extends TCollectionName<S> = TCollectionName<S>> = (context: CreateOverrideCustomizationContext<S, N>) => Promise<TPartialSimpleRow[]>;
4
+ export type UpdateOverrideHandler<S extends TSchema = TSchema, N extends TCollectionName<S> = TCollectionName<S>> = (context: UpdateOverrideCustomizationContext<S, N>) => Promise<void>;
5
+ export type DeleteOverrideHandler<S extends TSchema = TSchema, N extends TCollectionName<S> = TCollectionName<S>> = (context: DeleteOverrideCustomizationContext<S, N>) => Promise<void>;
6
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGVjb3JhdG9ycy9vdmVycmlkZS90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
package/dist/index.d.ts CHANGED
@@ -12,5 +12,6 @@ export { SearchDefinition } from './decorators/search/types';
12
12
  export { SegmentDefinition } from './decorators/segment/types';
13
13
  export * from './decorators/write/write-replace/types';
14
14
  export * from './decorators/hook/types';
15
+ export * from './decorators/override/types';
15
16
  export { default as CollectionCustomizationContext } from './context/collection-context';
16
17
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -29,7 +29,8 @@ __exportStar(require("./decorators/actions/types/actions"), exports);
29
29
  __exportStar(require("./decorators/actions/types/fields"), exports);
30
30
  __exportStar(require("./decorators/write/write-replace/types"), exports);
31
31
  __exportStar(require("./decorators/hook/types"), exports);
32
+ __exportStar(require("./decorators/override/types"), exports);
32
33
  // Context
33
34
  var collection_context_1 = require("./context/collection-context");
34
35
  Object.defineProperty(exports, "CollectionCustomizationContext", { enumerable: true, get: function () { return __importDefault(collection_context_1).default; } });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpRUFBMEU7QUFBakUsOElBQUEsT0FBTyxPQUF3QjtBQUN4QyxpRUFBMEU7QUFBakUsOElBQUEsT0FBTyxPQUF3QjtBQUV4Qyw4Q0FBNEI7QUFDNUIsMENBQXdCO0FBRXhCLHVCQUF1QjtBQUN2QixxRUFBbUQ7QUFDbkQsb0VBQWtEO0FBT2xELHlFQUF1RDtBQUN2RCwwREFBd0M7QUFFeEMsVUFBVTtBQUNWLG1FQUF5RjtBQUFoRixxSkFBQSxPQUFPLE9BQWtDIn0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpRUFBMEU7QUFBakUsOElBQUEsT0FBTyxPQUF3QjtBQUN4QyxpRUFBMEU7QUFBakUsOElBQUEsT0FBTyxPQUF3QjtBQUV4Qyw4Q0FBNEI7QUFDNUIsMENBQXdCO0FBRXhCLHVCQUF1QjtBQUN2QixxRUFBbUQ7QUFDbkQsb0VBQWtEO0FBT2xELHlFQUF1RDtBQUN2RCwwREFBd0M7QUFDeEMsOERBQTRDO0FBRTVDLFVBQVU7QUFDVixtRUFBeUY7QUFBaEYscUpBQUEsT0FBTyxPQUFrQyJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forestadmin/datasource-customizer",
3
- "version": "1.43.6",
3
+ "version": "1.44.0",
4
4
  "main": "dist/index.js",
5
5
  "license": "GPL-3.0",
6
6
  "publishConfig": {