@forestadmin/agent-testing 0.1.0 → 1.0.1

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 (116) hide show
  1. package/dist/benchmark.js +36 -0
  2. package/dist/{integrations/forest-admin-client-mock.d.ts → forest-admin-client-mock.d.ts} +2 -0
  3. package/dist/forest-admin-client-mock.js +83 -0
  4. package/dist/forest-server-sandbox.js +153 -0
  5. package/dist/http-requester-mock.d.ts +7 -0
  6. package/dist/{integrations/http-requester-mock.js → http-requester-mock.js} +4 -4
  7. package/dist/index.d.ts +46 -3
  8. package/dist/index.js +101 -4
  9. package/dist/schema-converter.d.ts +6 -0
  10. package/dist/schema-converter.js +16 -0
  11. package/dist/{integrations/schema-path-manager.js → schema-path-manager.js} +1 -1
  12. package/dist/{integrations/testable-agent-base.d.ts → testable-agent-base.d.ts} +2 -2
  13. package/dist/{integrations/testable-agent-base.js → testable-agent-base.js} +3 -3
  14. package/dist/{integrations/testable-agent.d.ts → testable-agent.d.ts} +1 -1
  15. package/dist/{integrations/testable-agent.js → testable-agent.js} +2 -2
  16. package/dist/types.d.ts +5 -0
  17. package/dist/{units/types.js → types.js} +1 -1
  18. package/package.json +5 -5
  19. package/dist/integrations/benchmark.js +0 -36
  20. package/dist/integrations/forest-admin-client-mock.js +0 -76
  21. package/dist/integrations/forest-server-sandbox.js +0 -153
  22. package/dist/integrations/http-requester-mock.d.ts +0 -8
  23. package/dist/integrations/index.d.ts +0 -43
  24. package/dist/integrations/index.js +0 -119
  25. package/dist/integrations/schema-converter.d.ts +0 -6
  26. package/dist/integrations/schema-converter.js +0 -16
  27. package/dist/integrations/types.d.ts +0 -5
  28. package/dist/integrations/types.js +0 -3
  29. package/dist/remote-agent-client/action-fields/action-field-checkbox-group.d.ts +0 -8
  30. package/dist/remote-agent-client/action-fields/action-field-checkbox-group.js +0 -23
  31. package/dist/remote-agent-client/action-fields/action-field-checkbox.d.ts +0 -6
  32. package/dist/remote-agent-client/action-fields/action-field-checkbox.js +0 -16
  33. package/dist/remote-agent-client/action-fields/action-field-color-picker.d.ts +0 -7
  34. package/dist/remote-agent-client/action-fields/action-field-color-picker.js +0 -19
  35. package/dist/remote-agent-client/action-fields/action-field-date.d.ts +0 -5
  36. package/dist/remote-agent-client/action-fields/action-field-date.js +0 -13
  37. package/dist/remote-agent-client/action-fields/action-field-dropdown.d.ts +0 -7
  38. package/dist/remote-agent-client/action-fields/action-field-dropdown.js +0 -16
  39. package/dist/remote-agent-client/action-fields/action-field-enum.d.ts +0 -6
  40. package/dist/remote-agent-client/action-fields/action-field-enum.js +0 -19
  41. package/dist/remote-agent-client/action-fields/action-field-json.d.ts +0 -5
  42. package/dist/remote-agent-client/action-fields/action-field-json.js +0 -13
  43. package/dist/remote-agent-client/action-fields/action-field-multiple-choice.d.ts +0 -7
  44. package/dist/remote-agent-client/action-fields/action-field-multiple-choice.js +0 -19
  45. package/dist/remote-agent-client/action-fields/action-field-number-list.d.ts +0 -6
  46. package/dist/remote-agent-client/action-fields/action-field-number-list.js +0 -20
  47. package/dist/remote-agent-client/action-fields/action-field-number.d.ts +0 -5
  48. package/dist/remote-agent-client/action-fields/action-field-number.js +0 -13
  49. package/dist/remote-agent-client/action-fields/action-field-radio-group.d.ts +0 -7
  50. package/dist/remote-agent-client/action-fields/action-field-radio-group.js +0 -16
  51. package/dist/remote-agent-client/action-fields/action-field-string-list.d.ts +0 -6
  52. package/dist/remote-agent-client/action-fields/action-field-string-list.js +0 -20
  53. package/dist/remote-agent-client/action-fields/action-field-string.d.ts +0 -5
  54. package/dist/remote-agent-client/action-fields/action-field-string.js +0 -13
  55. package/dist/remote-agent-client/action-fields/action-field.d.ts +0 -15
  56. package/dist/remote-agent-client/action-fields/action-field.js +0 -34
  57. package/dist/remote-agent-client/action-fields/field-form-states.d.ts +0 -25
  58. package/dist/remote-agent-client/action-fields/field-form-states.js +0 -94
  59. package/dist/remote-agent-client/action-fields/field-getter.d.ts +0 -10
  60. package/dist/remote-agent-client/action-fields/field-getter.js +0 -21
  61. package/dist/remote-agent-client/action-fields/types.d.ts +0 -28
  62. package/dist/remote-agent-client/action-fields/types.js +0 -3
  63. package/dist/remote-agent-client/action-layout/action-layout-container.d.ts +0 -9
  64. package/dist/remote-agent-client/action-layout/action-layout-container.js +0 -24
  65. package/dist/remote-agent-client/action-layout/action-layout-element.d.ts +0 -14
  66. package/dist/remote-agent-client/action-layout/action-layout-element.js +0 -47
  67. package/dist/remote-agent-client/action-layout/action-layout-input.d.ts +0 -7
  68. package/dist/remote-agent-client/action-layout/action-layout-input.js +0 -12
  69. package/dist/remote-agent-client/action-layout/action-layout-page.d.ts +0 -8
  70. package/dist/remote-agent-client/action-layout/action-layout-page.js +0 -18
  71. package/dist/remote-agent-client/action-layout/action-layout-root.d.ts +0 -6
  72. package/dist/remote-agent-client/action-layout/action-layout-root.js +0 -19
  73. package/dist/remote-agent-client/action-layout/errors.d.ts +0 -8
  74. package/dist/remote-agent-client/action-layout/errors.js +0 -16
  75. package/dist/remote-agent-client/domains/action.d.ts +0 -59
  76. package/dist/remote-agent-client/domains/action.js +0 -139
  77. package/dist/remote-agent-client/domains/chart.d.ts +0 -21
  78. package/dist/remote-agent-client/domains/chart.js +0 -39
  79. package/dist/remote-agent-client/domains/collection-chart.d.ts +0 -19
  80. package/dist/remote-agent-client/domains/collection-chart.js +0 -40
  81. package/dist/remote-agent-client/domains/collection.d.ts +0 -26
  82. package/dist/remote-agent-client/domains/collection.js +0 -109
  83. package/dist/remote-agent-client/domains/relation.d.ts +0 -11
  84. package/dist/remote-agent-client/domains/relation.js +0 -23
  85. package/dist/remote-agent-client/domains/remote-agent-client.d.ts +0 -41
  86. package/dist/remote-agent-client/domains/remote-agent-client.js +0 -43
  87. package/dist/remote-agent-client/domains/segment.d.ts +0 -14
  88. package/dist/remote-agent-client/domains/segment.js +0 -46
  89. package/dist/remote-agent-client/http-requester.d.ts +0 -30
  90. package/dist/remote-agent-client/http-requester.js +0 -67
  91. package/dist/remote-agent-client/index.d.ts +0 -10
  92. package/dist/remote-agent-client/index.js +0 -18
  93. package/dist/remote-agent-client/query-serializer.d.ts +0 -7
  94. package/dist/remote-agent-client/query-serializer.js +0 -34
  95. package/dist/remote-agent-client/types.d.ts +0 -25
  96. package/dist/remote-agent-client/types.js +0 -3
  97. package/dist/units/add-action.d.ts +0 -16
  98. package/dist/units/add-action.js +0 -70
  99. package/dist/units/add-field.d.ts +0 -3
  100. package/dist/units/add-field.js +0 -18
  101. package/dist/units/add-hook.d.ts +0 -3
  102. package/dist/units/add-hook.js +0 -18
  103. package/dist/units/import-field.d.ts +0 -3
  104. package/dist/units/import-field.js +0 -18
  105. package/dist/units/index.d.ts +0 -9
  106. package/dist/units/index.js +0 -25
  107. package/dist/units/many-to-one-relation.d.ts +0 -3
  108. package/dist/units/many-to-one-relation.js +0 -18
  109. package/dist/units/replace-search.d.ts +0 -3
  110. package/dist/units/replace-search.js +0 -18
  111. package/dist/units/types.d.ts +0 -34
  112. package/dist/units/use-plugin.d.ts +0 -3
  113. package/dist/units/use-plugin.js +0 -18
  114. /package/dist/{integrations/benchmark.d.ts → benchmark.d.ts} +0 -0
  115. /package/dist/{integrations/forest-server-sandbox.d.ts → forest-server-sandbox.d.ts} +0 -0
  116. /package/dist/{integrations/schema-path-manager.d.ts → schema-path-manager.d.ts} +0 -0
@@ -1,43 +0,0 @@
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
- const chart_1 = __importDefault(require("./chart"));
7
- const collection_1 = __importDefault(require("./collection"));
8
- class RemoteAgentClient extends chart_1.default {
9
- constructor(params) {
10
- super();
11
- if (!params)
12
- return;
13
- this.httpRequester = params.httpRequester;
14
- this.actionEndpoints = params.actionEndpoints;
15
- this.overridePermissions = params.overridePermissions;
16
- }
17
- async overrideCollectionPermission(collectionName, permissions) {
18
- await this.overridePermissions?.({
19
- [collectionName]: {
20
- collection: permissions,
21
- actions: {},
22
- },
23
- });
24
- }
25
- async overrideActionPermission(collectionName, actionName, permissions) {
26
- await this.overridePermissions?.({
27
- [collectionName]: {
28
- collection: {},
29
- actions: {
30
- [actionName]: permissions,
31
- },
32
- },
33
- });
34
- }
35
- async clearPermissionOverride() {
36
- await this.overridePermissions?.({});
37
- }
38
- collection(name) {
39
- return new collection_1.default(name, this.httpRequester, this.actionEndpoints);
40
- }
41
- }
42
- exports.default = RemoteAgentClient;
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3RlLWFnZW50LWNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZW1vdGUtYWdlbnQtY2xpZW50L2RvbWFpbnMvcmVtb3RlLWFnZW50LWNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBLG9EQUE0QjtBQUM1Qiw4REFBc0M7QUE4QnRDLE1BQXFCLGlCQUEyRCxTQUFRLGVBQUs7SUFLM0YsWUFBWSxNQUlYO1FBQ0MsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsTUFBTTtZQUFFLE9BQU87UUFDcEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDO1FBQzFDLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQztRQUM5QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDO0lBQ3hELENBQUM7SUFFRCxLQUFLLENBQUMsNEJBQTRCLENBQ2hDLGNBQW1DLEVBQ25DLFdBQTBDO1FBRTFDLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDL0IsQ0FBQyxjQUFjLENBQUMsRUFBRTtnQkFDaEIsVUFBVSxFQUFFLFdBQVc7Z0JBQ3ZCLE9BQU8sRUFBRSxFQUFFO2FBQ1o7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLHdCQUF3QixDQUM1QixjQUFtQyxFQUNuQyxVQUFrQixFQUNsQixXQUEyQztRQUUzQyxNQUFNLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQy9CLENBQUMsY0FBYyxDQUFDLEVBQUU7Z0JBQ2hCLFVBQVUsRUFBRSxFQUFFO2dCQUNkLE9BQU8sRUFBRTtvQkFDUCxDQUFDLFVBQVUsQ0FBQyxFQUFFLFdBQVc7aUJBQzFCO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QjtRQUMzQixNQUFNLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxVQUFVLENBQUMsSUFBeUI7UUFDbEMsT0FBTyxJQUFJLG9CQUFVLENBQWdCLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN2RixDQUFDO0NBQ0Y7QUFuREQsb0NBbURDIn0=
@@ -1,14 +0,0 @@
1
- import type HttpRequester from '../http-requester';
2
- import type { ExportOptions, LiveQueryOptions, SelectOptions } from '../types';
3
- import { WriteStream } from 'node:fs';
4
- export default class Segment<TypingsSchema> {
5
- private readonly name?;
6
- private readonly collectionName;
7
- private readonly httpRequester;
8
- private readonly liveQuerySegment?;
9
- constructor(name: string | undefined, collectionName: keyof TypingsSchema, httpRequester: HttpRequester, liveQuerySegment?: LiveQueryOptions);
10
- list<Data = unknown>(options?: SelectOptions): Promise<Data[]>;
11
- exportCsv(stream: WriteStream, options?: ExportOptions): Promise<void>;
12
- private serializeQuery;
13
- }
14
- //# sourceMappingURL=segment.d.ts.map
@@ -1,46 +0,0 @@
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
- const query_serializer_1 = __importDefault(require("../query-serializer"));
7
- class Segment {
8
- constructor(name, collectionName, httpRequester, liveQuerySegment) {
9
- this.name = name;
10
- this.collectionName = collectionName;
11
- this.httpRequester = httpRequester;
12
- this.liveQuerySegment = liveQuerySegment;
13
- }
14
- async list(options) {
15
- return this.httpRequester.query({
16
- method: 'get',
17
- path: `/forest/${this.collectionName}`,
18
- query: this.serializeQuery(options),
19
- });
20
- }
21
- async exportCsv(stream, options) {
22
- await this.httpRequester.stream({
23
- path: `/forest/${this.collectionName}.csv`,
24
- contentType: 'text/csv',
25
- query: {
26
- ...this.serializeQuery(options),
27
- ...{ header: JSON.stringify(options?.projection) },
28
- },
29
- stream,
30
- });
31
- }
32
- serializeQuery(options) {
33
- if (this.liveQuerySegment) {
34
- return query_serializer_1.default.serialize({
35
- ...(options ?? {}),
36
- ...{
37
- segmentQuery: this.liveQuerySegment.query,
38
- connectionName: this.liveQuerySegment.connectionName,
39
- },
40
- }, this.collectionName);
41
- }
42
- return query_serializer_1.default.serialize({ ...options, ...{ filters: { segment: this.name } } }, this.collectionName);
43
- }
44
- }
45
- exports.default = Segment;
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZW1vdGUtYWdlbnQtY2xpZW50L2RvbWFpbnMvc2VnbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBLDJFQUFrRDtBQUVsRCxNQUFxQixPQUFPO0lBTTFCLFlBQ0UsSUFBd0IsRUFDeEIsY0FBbUMsRUFDbkMsYUFBNEIsRUFDNUIsZ0JBQW1DO1FBRW5DLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztJQUMzQyxDQUFDO0lBRUQsS0FBSyxDQUFDLElBQUksQ0FBaUIsT0FBdUI7UUFDaEQsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBUztZQUN0QyxNQUFNLEVBQUUsS0FBSztZQUNiLElBQUksRUFBRSxXQUFXLElBQUksQ0FBQyxjQUF3QixFQUFFO1lBQ2hELEtBQUssRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQztTQUNwQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFtQixFQUFFLE9BQXVCO1FBQzFELE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUM7WUFDOUIsSUFBSSxFQUFFLFdBQVcsSUFBSSxDQUFDLGNBQXdCLE1BQU07WUFDcEQsV0FBVyxFQUFFLFVBQVU7WUFDdkIsS0FBSyxFQUFFO2dCQUNMLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUM7Z0JBQy9CLEdBQUcsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLEVBQUU7YUFDbkQ7WUFDRCxNQUFNO1NBQ1AsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGNBQWMsQ0FBQyxPQUF1QjtRQUM1QyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzFCLE9BQU8sMEJBQWUsQ0FBQyxTQUFTLENBQzlCO2dCQUNFLEdBQUcsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO2dCQUNsQixHQUFHO29CQUNELFlBQVksRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSztvQkFDekMsY0FBYyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjO2lCQUNyRDthQUNGLEVBQ0QsSUFBSSxDQUFDLGNBQXdCLENBQzlCLENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTywwQkFBZSxDQUFDLFNBQVMsQ0FDOUIsRUFBRSxHQUFHLE9BQU8sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQ3RELElBQUksQ0FBQyxjQUF3QixDQUM5QixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBekRELDBCQXlEQyJ9
@@ -1,30 +0,0 @@
1
- import { WriteStream } from 'fs';
2
- import { TestableAgentOptions } from '../integrations';
3
- export default class HttpRequester {
4
- private readonly token;
5
- private readonly options;
6
- readonly agentOptions: TestableAgentOptions;
7
- private readonly deserializer;
8
- private get baseUrl();
9
- constructor(token: string, options: {
10
- prefix?: string;
11
- url: string;
12
- }, agentOptions: TestableAgentOptions);
13
- query<Data = unknown>({ method, path, body, query, maxTimeAllowed, contentType, }: {
14
- method: 'get' | 'post' | 'put' | 'delete';
15
- path: string;
16
- body?: Record<string, unknown>;
17
- query?: Record<string, unknown>;
18
- maxTimeAllowed?: number;
19
- contentType?: 'application/json' | 'text/csv';
20
- }): Promise<Data>;
21
- stream({ path: reqPath, query, contentType, maxTimeAllowed, stream, }: {
22
- path: string;
23
- query?: Record<string, unknown>;
24
- contentType: 'text/csv';
25
- maxTimeAllowed?: number;
26
- stream: WriteStream;
27
- }): Promise<void>;
28
- static escapeUrlSlug(name: string): string;
29
- }
30
- //# sourceMappingURL=http-requester.d.ts.map
@@ -1,67 +0,0 @@
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
- const jsonapi_serializer_1 = require("jsonapi-serializer");
7
- const superagent_1 = __importDefault(require("superagent"));
8
- class HttpRequester {
9
- get baseUrl() {
10
- const prefix = this.options.prefix ? `/${this.options.prefix}` : '';
11
- return `${this.options.url}${prefix}`;
12
- }
13
- constructor(token, options, agentOptions) {
14
- this.token = token;
15
- this.options = options;
16
- this.agentOptions = agentOptions;
17
- this.deserializer = new jsonapi_serializer_1.Deserializer({ keyForAttribute: 'camelCase' });
18
- }
19
- async query({ method, path, body, query, maxTimeAllowed, contentType, }) {
20
- try {
21
- const url = new URL(`${this.baseUrl}${HttpRequester.escapeUrlSlug(path)}`).toString();
22
- const req = superagent_1.default[method](url)
23
- .timeout(maxTimeAllowed ?? 10000)
24
- .set('Authorization', `Bearer ${this.token}`)
25
- .set('Content-Type', contentType ?? 'application/json')
26
- .query({ timezone: 'Europe/Paris', ...query });
27
- if (body)
28
- req.send(body);
29
- const response = await req;
30
- try {
31
- return (await this.deserializer.deserialize(response.body));
32
- }
33
- catch {
34
- return (response.body ?? response.text);
35
- }
36
- }
37
- catch (error) {
38
- if (!error.response)
39
- throw error;
40
- throw new Error(JSON.stringify({ error: error.response.error, body }, null, 4));
41
- }
42
- }
43
- async stream({ path: reqPath, query, contentType = 'text/csv', maxTimeAllowed, stream, }) {
44
- const url = new URL(`${this.baseUrl}${HttpRequester.escapeUrlSlug(reqPath)}`).toString();
45
- return new Promise((resolve, reject) => {
46
- superagent_1.default
47
- .get(url)
48
- .timeout(maxTimeAllowed ?? 10000)
49
- .set('Authorization', `Bearer ${this.token}`)
50
- .set('Accept', contentType)
51
- .query({ timezone: 'Europe/Paris', ...query })
52
- .pipe(stream)
53
- .on('finish', () => {
54
- resolve();
55
- })
56
- .on('error', err => {
57
- console.error('Error occurred while streaming response:', err);
58
- reject(err);
59
- });
60
- });
61
- }
62
- static escapeUrlSlug(name) {
63
- return encodeURI(name).replace(/([+?*])/g, '\\$1');
64
- }
65
- }
66
- exports.default = HttpRequester;
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1yZXF1ZXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVtb3RlLWFnZW50LWNsaWVudC9odHRwLXJlcXVlc3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLDJEQUFrRDtBQUNsRCw0REFBb0M7QUFJcEMsTUFBcUIsYUFBYTtJQUdoQyxJQUFZLE9BQU87UUFDakIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBRXBFLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsR0FBRyxNQUFNLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsWUFDbUIsS0FBYSxFQUNiLE9BQXlDLEVBQ2pELFlBQWtDO1FBRjFCLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixZQUFPLEdBQVAsT0FBTyxDQUFrQztRQUNqRCxpQkFBWSxHQUFaLFlBQVksQ0FBc0I7UUFFM0MsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLGlDQUFZLENBQUMsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUssQ0FBaUIsRUFDMUIsTUFBTSxFQUNOLElBQUksRUFDSixJQUFJLEVBQ0osS0FBSyxFQUNMLGNBQWMsRUFDZCxXQUFXLEdBUVo7UUFDQyxJQUFJLENBQUM7WUFDSCxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLEdBQUcsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFFdEYsTUFBTSxHQUFHLEdBQUcsb0JBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUM7aUJBQ2hDLE9BQU8s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
@@ -1,10 +0,0 @@
1
- import { ActionEndpointsByCollection } from './domains/action';
2
- import RemoteAgentClient, { PermissionsOverride } from './domains/remote-agent-client';
3
- import { TestableAgentOptions } from '../integrations';
4
- export declare function createRemoteAgentClient(params: {
5
- overridePermissions?: (permissions: PermissionsOverride) => Promise<void>;
6
- actionEndpoints?: ActionEndpointsByCollection;
7
- token?: string;
8
- url: string;
9
- }, agentOptions: TestableAgentOptions): RemoteAgentClient<import("@forestadmin/datasource-customizer").TSchema>;
10
- //# sourceMappingURL=index.d.ts.map
@@ -1,18 +0,0 @@
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.createRemoteAgentClient = createRemoteAgentClient;
7
- const remote_agent_client_1 = __importDefault(require("./domains/remote-agent-client"));
8
- const http_requester_1 = __importDefault(require("./http-requester"));
9
- // eslint-disable-next-line import/prefer-default-export
10
- function createRemoteAgentClient(params, agentOptions) {
11
- const httpRequester = new http_requester_1.default(params.token, { url: params.url }, agentOptions);
12
- return new remote_agent_client_1.default({
13
- actionEndpoints: params.actionEndpoints,
14
- httpRequester,
15
- overridePermissions: params.overridePermissions,
16
- });
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVtb3RlLWFnZW50LWNsaWVudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQU1BLDBEQWdCQztBQXJCRCx3RkFBdUY7QUFDdkYsc0VBQTZDO0FBRzdDLHdEQUF3RDtBQUN4RCxTQUFnQix1QkFBdUIsQ0FDckMsTUFLQyxFQUNELFlBQWtDO0lBRWxDLE1BQU0sYUFBYSxHQUFHLElBQUksd0JBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxHQUFHLEVBQUUsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUV6RixPQUFPLElBQUksNkJBQWlCLENBQUM7UUFDM0IsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1FBQ3ZDLGFBQWE7UUFDYixtQkFBbUIsRUFBRSxNQUFNLENBQUMsbUJBQW1CO0tBQ2hELENBQUMsQ0FBQztBQUNMLENBQUMifQ==
@@ -1,7 +0,0 @@
1
- import type { SelectOptions } from './types';
2
- export default class QuerySerializer {
3
- static serialize(query: SelectOptions, collectionName: string): Record<string, unknown>;
4
- private static formatSort;
5
- private static formatFilters;
6
- }
7
- //# sourceMappingURL=query-serializer.d.ts.map
@@ -1,34 +0,0 @@
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
- const http_requester_1 = __importDefault(require("./http-requester"));
7
- class QuerySerializer {
8
- static serialize(query, collectionName) {
9
- if (!query)
10
- return {};
11
- const projectionName = `fields[${http_requester_1.default.escapeUrlSlug(collectionName)}]`;
12
- return {
13
- ...query,
14
- ...query.filters,
15
- sort: QuerySerializer.formatSort(query.sort),
16
- filters: QuerySerializer.formatFilters(query.filters),
17
- 'page[size]': query.pagination?.size,
18
- 'page[number]': query.pagination?.number,
19
- [projectionName]: query.projection?.toString(),
20
- };
21
- }
22
- static formatSort(sort) {
23
- if (!sort)
24
- return undefined;
25
- return sort.ascending ? sort.field : `-${sort.field}`;
26
- }
27
- static formatFilters(filters) {
28
- if (!filters)
29
- return undefined;
30
- return JSON.stringify(filters.conditionTree);
31
- }
32
- }
33
- exports.default = QuerySerializer;
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktc2VyaWFsaXplci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZW1vdGUtYWdlbnQtY2xpZW50L3F1ZXJ5LXNlcmlhbGl6ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFHQSxzRUFBNkM7QUFFN0MsTUFBcUIsZUFBZTtJQUNsQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQW9CLEVBQUUsY0FBc0I7UUFDM0QsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUV0QixNQUFNLGNBQWMsR0FBRyxVQUFVLHdCQUFhLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUM7UUFFaEYsT0FBTztZQUNMLEdBQUcsS0FBSztZQUNSLEdBQUcsS0FBSyxDQUFDLE9BQU87WUFDaEIsSUFBSSxFQUFFLGVBQWUsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztZQUM1QyxPQUFPLEVBQUUsZUFBZSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ3JELFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVSxFQUFFLElBQUk7WUFDcEMsY0FBYyxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsTUFBTTtZQUN4QyxDQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFO1NBQy9DLENBQUM7SUFDSixDQUFDO0lBRU8sTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFxQjtRQUM3QyxJQUFJLENBQUMsSUFBSTtZQUFFLE9BQU8sU0FBUyxDQUFDO1FBRTVCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDeEQsQ0FBQztJQUVPLE1BQU0sQ0FBQyxhQUFhLENBQUMsT0FBb0I7UUFDL0MsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPLFNBQVMsQ0FBQztRQUUvQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQy9DLENBQUM7Q0FDRjtBQTVCRCxrQ0E0QkMifQ==
@@ -1,25 +0,0 @@
1
- import { PlainFilter, PlainSortClause } from '@forestadmin/datasource-toolkit';
2
- export type BaseOptions = {
3
- filters?: PlainFilter;
4
- sort?: PlainSortClause;
5
- search?: string;
6
- projection?: string[];
7
- };
8
- export type ExportOptions = BaseOptions;
9
- export type LiveQueryOptions = {
10
- connectionName: string;
11
- query: string;
12
- };
13
- export type SegmentOptions = BaseOptions & {
14
- liveQuerySegment?: {
15
- connectionName: string;
16
- query: string;
17
- };
18
- };
19
- export type SelectOptions = BaseOptions & {
20
- pagination?: {
21
- size?: number;
22
- number?: number;
23
- };
24
- };
25
- //# sourceMappingURL=types.d.ts.map
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVtb3RlLWFnZW50LWNsaWVudC90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -1,16 +0,0 @@
1
- import type { ActionContext, CollectionCustomizerFunction, TestableAction } from './types';
2
- /**
3
- * Return a TestableAction allowing you to unit test action definition
4
- */
5
- export declare function getAddedAction(collectionCustomizerFunction: CollectionCustomizerFunction, ...args: any[]): TestableAction;
6
- /**
7
- * Static Form field accessor
8
- */
9
- export declare function getFormFieldAction<T>(action: TestableAction, id: string): T;
10
- /**
11
- * Dynamic Form field accessor
12
- */
13
- export declare function getDynamicFormFieldAction<T>(action: TestableAction, id: string, actionContext: ActionContext): Promise<T>;
14
- export declare function getFormFieldValueAction<ReturnType>(action: TestableAction, id: string): (actionContext: ActionContext) => Promise<ReturnType>;
15
- export declare function getDynamicFormFieldValueAction<ReturnType>(action: TestableAction, id: string, actionContext: ActionContext): Promise<(actionContext: ActionContext) => Promise<ReturnType>>;
16
- //# sourceMappingURL=add-action.d.ts.map
@@ -1,70 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAddedAction = getAddedAction;
4
- exports.getFormFieldAction = getFormFieldAction;
5
- exports.getDynamicFormFieldAction = getDynamicFormFieldAction;
6
- exports.getFormFieldValueAction = getFormFieldValueAction;
7
- exports.getDynamicFormFieldValueAction = getDynamicFormFieldValueAction;
8
- function getFieldId(field) {
9
- return 'id' in field && field.id ? field.id : field.label;
10
- }
11
- /**
12
- * Return a TestableAction allowing you to unit test action definition
13
- */
14
- function getAddedAction(collectionCustomizerFunction, ...args) {
15
- let action;
16
- const collection = {
17
- addAction(name, definition) {
18
- if (action)
19
- throw new Error('You have two addAction in your customization');
20
- action = { definition, name };
21
- return this;
22
- },
23
- };
24
- collectionCustomizerFunction(collection, ...args);
25
- return action;
26
- }
27
- function getInputFieldFromForm(form, id) {
28
- return form.find(field => field.type !== 'Layout' &&
29
- getFieldId(field) === id);
30
- }
31
- /**
32
- * Static Form field accessor
33
- */
34
- function getFormFieldAction(action, id) {
35
- if (!action.definition.form)
36
- return null;
37
- if (action.definition.form instanceof Function) {
38
- throw new Error('Use getDynamicFormFieldAction function helper');
39
- }
40
- return getInputFieldFromForm(action.definition.form, id);
41
- }
42
- /**
43
- * Dynamic Form field accessor
44
- */
45
- async function getDynamicFormFieldAction(action, id, actionContext) {
46
- if (!action.definition.form)
47
- return null;
48
- if (!(action.definition.form instanceof Function)) {
49
- throw new Error('Use getFormFieldAction function helper');
50
- }
51
- const form = await action.definition.form(actionContext);
52
- return getInputFieldFromForm(form, id);
53
- }
54
- function getFormFieldValueAction(action, id) {
55
- if (!action.definition.form)
56
- return null;
57
- if (action.definition.form instanceof Function) {
58
- throw new Error('Use getDynamicFormFieldValueAction function helper');
59
- }
60
- return getFormFieldAction(action, id).value;
61
- }
62
- async function getDynamicFormFieldValueAction(action, id, actionContext) {
63
- if (!action.definition.form)
64
- return null;
65
- if (!(action.definition.form instanceof Function)) {
66
- throw new Error('Use getFormFieldValueAction function helper');
67
- }
68
- return (await getDynamicFormFieldAction(action, id, actionContext)).value;
69
- }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bml0cy9hZGQtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBZ0JBLHdDQWtCQztBQWdCRCxnREFRQztBQUtELDhEQWNDO0FBRUQsMERBZUM7QUFFRCx3RUFnQkM7QUF2R0QsU0FBUyxVQUFVLENBQUMsS0FBeUQ7SUFDM0UsT0FBTyxJQUFJLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7QUFDNUQsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsY0FBYyxDQUM1Qiw0QkFBMEQsRUFDMUQsR0FBRyxJQUFXO0lBRWQsSUFBSSxNQUFzQixDQUFDO0lBRTNCLE1BQU0sVUFBVSxHQUFHO1FBQ2pCLFNBQVMsQ0FBQyxJQUFJLEVBQUUsVUFBVTtZQUN4QixJQUFJLE1BQU07Z0JBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1lBQzVFLE1BQU0sR0FBRyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUU5QixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7S0FDRixDQUFDO0lBRUYsNEJBQTRCLENBQUMsVUFBaUIsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBRXpELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFFRCxTQUFTLHFCQUFxQixDQUM1QixJQUF1RCxFQUN2RCxFQUFVO0lBRVYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUNkLEtBQUssQ0FBQyxFQUFFLENBQ04sS0FBSyxDQUFDLElBQUksS0FBSyxRQUFRO1FBQ3ZCLFVBQVUsQ0FBQyxLQUEyRCxDQUFDLEtBQUssRUFBRSxDQUNqRSxDQUFDO0FBQ3BCLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGtCQUFrQixDQUFJLE1BQXNCLEVBQUUsRUFBVTtJQUN0RSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFekMsSUFBSSxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksWUFBWSxRQUFRLEVBQUUsQ0FBQztRQUMvQyxNQUFNLElBQUksS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELE9BQU8scUJBQXFCLENBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDOUQsQ0FBQztBQUVEOztHQUVHO0FBQ0ksS0FBSyxVQUFVLHlCQUF5QixDQUM3QyxNQUFzQixFQUN0QixFQUFVLEVBQ1YsYUFBNEI7SUFFNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSTtRQUFFLE9BQU8sSUFBSSxDQUFDO0lBRXpDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxZQUFZLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDbEQsTUFBTSxJQUFJLEtBQUssQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxNQUFNLElBQUksR0FBRyxNQUFNLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBRXpELE9BQU8scUJBQXFCLENBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFFRCxTQUFnQix1QkFBdUIsQ0FDckMsTUFBc0IsRUFDdEIsRUFBVTtJQUVWLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUk7UUFBRSxPQUFPLElBQUksQ0FBQztJQUV6QyxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxZQUFZLFFBQVEsRUFBRSxDQUFDO1FBQy9DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0RBQW9ELENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsT0FDRSxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUc5QixDQUFDLEtBQUssQ0FBQztBQUNWLENBQUM7QUFFTSxLQUFLLFVBQVUsOEJBQThCLENBQ2xELE1BQXNCLEVBQ3RCLEVBQVUsRUFDVixhQUE0QjtJQUU1QixJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFekMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLFlBQVksUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUNsRCxNQUFNLElBQUksS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELE9BQ0UsQ0FBQyxNQUFNLHlCQUF5QixDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsYUFBYSxDQUFDLENBRzVELENBQUMsS0FBSyxDQUFDO0FBQ1YsQ0FBQyJ9
@@ -1,3 +0,0 @@
1
- import type { CollectionCustomizerFunction, TestableField } from './types';
2
- export declare function getAddedField(collectionCustomizerFunction: CollectionCustomizerFunction, ...args: any[]): TestableField;
3
- //# sourceMappingURL=add-field.d.ts.map
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAddedField = getAddedField;
4
- // eslint-disable-next-line import/prefer-default-export
5
- function getAddedField(collectionCustomizerFunction, ...args) {
6
- let field;
7
- const collection = {
8
- addField(name, definition) {
9
- if (field)
10
- throw new Error('You have two addField in your customization');
11
- field = { definition, name };
12
- return this;
13
- },
14
- };
15
- collectionCustomizerFunction(collection, ...args);
16
- return field;
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3VuaXRzL2FkZC1maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUdBLHNDQWtCQztBQW5CRCx3REFBd0Q7QUFDeEQsU0FBZ0IsYUFBYSxDQUMzQiw0QkFBMEQsRUFDMUQsR0FBRyxJQUFXO0lBRWQsSUFBSSxLQUFvQixDQUFDO0lBRXpCLE1BQU0sVUFBVSxHQUFHO1FBQ2pCLFFBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVTtZQUN2QixJQUFJLEtBQUs7Z0JBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1lBQzFFLEtBQUssR0FBRyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUU3QixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7S0FDRixDQUFDO0lBRUYsNEJBQTRCLENBQUMsVUFBaUIsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBRXpELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyJ9
@@ -1,3 +0,0 @@
1
- import type { CollectionCustomizerFunction, TestableHook } from './types';
2
- export declare function getAddedHook(collectionCustomizerFunction: CollectionCustomizerFunction, ...args: any[]): TestableHook;
3
- //# sourceMappingURL=add-hook.d.ts.map
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAddedHook = getAddedHook;
4
- // eslint-disable-next-line import/prefer-default-export
5
- function getAddedHook(collectionCustomizerFunction, ...args) {
6
- let hook;
7
- const collection = {
8
- addHook(position, type, handler) {
9
- if (hook)
10
- throw new Error('You have two addHook in your customization');
11
- hook = { position, type, handler };
12
- return this;
13
- },
14
- };
15
- collectionCustomizerFunction(collection, ...args);
16
- return hook;
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWhvb2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdW5pdHMvYWRkLWhvb2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSxvQ0FrQkM7QUFuQkQsd0RBQXdEO0FBQ3hELFNBQWdCLFlBQVksQ0FDMUIsNEJBQTBELEVBQzFELEdBQUcsSUFBVztJQUVkLElBQUksSUFBa0IsQ0FBQztJQUV2QixNQUFNLFVBQVUsR0FBRztRQUNqQixPQUFPLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPO1lBQzdCLElBQUksSUFBSTtnQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLDRDQUE0QyxDQUFDLENBQUM7WUFDeEUsSUFBSSxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUVuQyxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7S0FDRixDQUFDO0lBRUYsNEJBQTRCLENBQUMsVUFBaUIsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBRXpELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyJ9
@@ -1,3 +0,0 @@
1
- import type { CollectionCustomizerFunction, TestableImportedField } from './types';
2
- export declare function getImportedField(collectionCustomizerFunction: CollectionCustomizerFunction, ...args: any[]): TestableImportedField;
3
- //# sourceMappingURL=import-field.d.ts.map
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getImportedField = getImportedField;
4
- // eslint-disable-next-line import/prefer-default-export
5
- function getImportedField(collectionCustomizerFunction, ...args) {
6
- let field;
7
- const collection = {
8
- importField(name, options) {
9
- if (field)
10
- throw new Error('You have two importField in your customization');
11
- field = { options, name };
12
- return this;
13
- },
14
- };
15
- collectionCustomizerFunction(collection, ...args);
16
- return field;
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LWZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3VuaXRzL2ltcG9ydC1maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUdBLDRDQWtCQztBQW5CRCx3REFBd0Q7QUFDeEQsU0FBZ0IsZ0JBQWdCLENBQzlCLDRCQUEwRCxFQUMxRCxHQUFHLElBQVc7SUFFZCxJQUFJLEtBQTRCLENBQUM7SUFFakMsTUFBTSxVQUFVLEdBQUc7UUFDakIsV0FBVyxDQUFDLElBQUksRUFBRSxPQUFPO1lBQ3ZCLElBQUksS0FBSztnQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLGdEQUFnRCxDQUFDLENBQUM7WUFDN0UsS0FBSyxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO1lBRTFCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztLQUNGLENBQUM7SUFFRiw0QkFBNEIsQ0FBQyxVQUFpQixFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFFekQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDIn0=
@@ -1,9 +0,0 @@
1
- export * from './add-action';
2
- export * from './add-field';
3
- export * from './add-hook';
4
- export * from './import-field';
5
- export * from './many-to-one-relation';
6
- export * from './types';
7
- export * from './replace-search';
8
- export * from './use-plugin';
9
- //# sourceMappingURL=index.d.ts.map
@@ -1,25 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./add-action"), exports);
18
- __exportStar(require("./add-field"), exports);
19
- __exportStar(require("./add-hook"), exports);
20
- __exportStar(require("./import-field"), exports);
21
- __exportStar(require("./many-to-one-relation"), exports);
22
- __exportStar(require("./types"), exports);
23
- __exportStar(require("./replace-search"), exports);
24
- __exportStar(require("./use-plugin"), exports);
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdW5pdHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUE2QjtBQUM3Qiw4Q0FBNEI7QUFDNUIsNkNBQTJCO0FBQzNCLGlEQUErQjtBQUMvQix5REFBdUM7QUFDdkMsMENBQXdCO0FBQ3hCLG1EQUFpQztBQUNqQywrQ0FBNkIifQ==
@@ -1,3 +0,0 @@
1
- import type { CollectionCustomizerFunction, TestableAddedManyToOneRelation } from './types';
2
- export declare function getAddedManyToOneRelation(collectionCustomizerFunction: CollectionCustomizerFunction, ...args: any[]): TestableAddedManyToOneRelation;
3
- //# sourceMappingURL=many-to-one-relation.d.ts.map
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAddedManyToOneRelation = getAddedManyToOneRelation;
4
- // eslint-disable-next-line import/prefer-default-export
5
- function getAddedManyToOneRelation(collectionCustomizerFunction, ...args) {
6
- let relation;
7
- const collection = {
8
- addManyToOneRelation(name, foreignCollection, options) {
9
- if (relation)
10
- throw new Error('You have two addManyToOneRelation in your customization');
11
- relation = { name, foreignCollection, options };
12
- return this;
13
- },
14
- };
15
- collectionCustomizerFunction(collection, ...args);
16
- return relation;
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFueS10by1vbmUtcmVsYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdW5pdHMvbWFueS10by1vbmUtcmVsYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSw4REFrQkM7QUFuQkQsd0RBQXdEO0FBQ3hELFNBQWdCLHlCQUF5QixDQUN2Qyw0QkFBMEQsRUFDMUQsR0FBRyxJQUFXO0lBRWQsSUFBSSxRQUF3QyxDQUFDO0lBRTdDLE1BQU0sVUFBVSxHQUFHO1FBQ2pCLG9CQUFvQixDQUFDLElBQUksRUFBRSxpQkFBaUIsRUFBRSxPQUFPO1lBQ25ELElBQUksUUFBUTtnQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHlEQUF5RCxDQUFDLENBQUM7WUFDekYsUUFBUSxHQUFHLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLE9BQU8sRUFBRSxDQUFDO1lBRWhELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztLQUNGLENBQUM7SUFFRiw0QkFBNEIsQ0FBQyxVQUFpQixFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFFekQsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyJ9
@@ -1,3 +0,0 @@
1
- import type { CollectionCustomizerFunction, TestableSearchReplacement } from './types';
2
- export declare function getSearchReplacement(collectionCustomizerFunction: CollectionCustomizerFunction, ...args: any[]): TestableSearchReplacement;
3
- //# sourceMappingURL=replace-search.d.ts.map
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getSearchReplacement = getSearchReplacement;
4
- // eslint-disable-next-line import/prefer-default-export
5
- function getSearchReplacement(collectionCustomizerFunction, ...args) {
6
- let searchReplacement;
7
- const collection = {
8
- replaceSearch(definition) {
9
- if (searchReplacement)
10
- throw new Error('You have two replacements in your customization');
11
- searchReplacement = definition;
12
- return this;
13
- },
14
- };
15
- collectionCustomizerFunction(collection, ...args);
16
- return searchReplacement;
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZS1zZWFyY2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdW5pdHMvcmVwbGFjZS1zZWFyY2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSxvREFrQkM7QUFuQkQsd0RBQXdEO0FBQ3hELFNBQWdCLG9CQUFvQixDQUNsQyw0QkFBMEQsRUFDMUQsR0FBRyxJQUFXO0lBRWQsSUFBSSxpQkFBNEMsQ0FBQztJQUVqRCxNQUFNLFVBQVUsR0FBRztRQUNqQixhQUFhLENBQUMsVUFBVTtZQUN0QixJQUFJLGlCQUFpQjtnQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLGlEQUFpRCxDQUFDLENBQUM7WUFDMUYsaUJBQWlCLEdBQUcsVUFBVSxDQUFDO1lBRS9CLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztLQUNGLENBQUM7SUFFRiw0QkFBNEIsQ0FBQyxVQUFpQixFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFFekQsT0FBTyxpQkFBaUIsQ0FBQztBQUMzQixDQUFDIn0=
@@ -1,34 +0,0 @@
1
- import type { CollectionCustomizer } from '@forestadmin/datasource-customizer';
2
- import { ActionContextSingle, TSchema } from '@forestadmin/datasource-customizer';
3
- export type CollectionCustomizerFunction = (collection: CollectionCustomizer<any, any>, ...args: any[]) => void;
4
- export type TestableAction = {
5
- name: Parameters<CollectionCustomizer['addAction']>['0'];
6
- definition: Parameters<CollectionCustomizer['addAction']>['1'];
7
- };
8
- export type TestableHook = {
9
- position: Parameters<CollectionCustomizer['addHook']>['0'];
10
- type: Parameters<CollectionCustomizer['addHook']>['1'];
11
- handler: Parameters<CollectionCustomizer['addHook']>['2'];
12
- };
13
- export type TestableField = {
14
- name: Parameters<CollectionCustomizer['addField']>['0'];
15
- definition: Parameters<CollectionCustomizer['addField']>['1'];
16
- };
17
- export type TestableImportedField = {
18
- name: Parameters<CollectionCustomizer['importField']>['0'];
19
- options: Parameters<CollectionCustomizer['importField']>['1'];
20
- };
21
- export type TestableUsedPlugin = {
22
- options: Parameters<CollectionCustomizer['use']>['1'];
23
- };
24
- export type TestableSearchReplacement = Parameters<CollectionCustomizer['replaceSearch']>['0'];
25
- export type TestableAddedManyToOneRelation = {
26
- name: Parameters<CollectionCustomizer['addManyToOneRelation']>['0'];
27
- foreignCollection: Parameters<CollectionCustomizer['addManyToOneRelation']>['1'];
28
- options: Parameters<CollectionCustomizer['addManyToOneRelation']>['2'];
29
- };
30
- export type ActionContext = ActionContextSingle<TSchema, any> & {
31
- formValues: any;
32
- };
33
- export type Context = Record<string, any>;
34
- //# sourceMappingURL=types.d.ts.map
@@ -1,3 +0,0 @@
1
- import type { CollectionCustomizerFunction, TestableUsedPlugin } from './types';
2
- export declare function getUsedPlugin(collectionCustomizerFunction: CollectionCustomizerFunction, ...args: any[]): TestableUsedPlugin;
3
- //# sourceMappingURL=use-plugin.d.ts.map