@strapi/data-transfer 4.12.2 → 4.13.0-beta.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 (169) hide show
  1. package/dist/engine/diagnostic.d.ts +40 -0
  2. package/dist/engine/diagnostic.js +50 -0
  3. package/dist/engine/diagnostic.js.map +1 -0
  4. package/dist/engine/errors.d.ts +28 -0
  5. package/dist/engine/errors.js +29 -0
  6. package/dist/engine/errors.js.map +1 -0
  7. package/dist/engine/index.d.ts +64 -0
  8. package/dist/engine/index.js +664 -0
  9. package/dist/engine/index.js.map +1 -0
  10. package/dist/engine/validation/index.d.ts +2 -0
  11. package/dist/engine/validation/index.js +19 -0
  12. package/dist/engine/validation/index.js.map +1 -0
  13. package/dist/engine/validation/provider.d.ts +3 -0
  14. package/dist/engine/validation/provider.js +18 -0
  15. package/dist/engine/validation/provider.js.map +1 -0
  16. package/dist/engine/validation/schemas/index.d.ts +7 -0
  17. package/dist/engine/validation/schemas/index.js +70 -0
  18. package/dist/engine/validation/schemas/index.js.map +1 -0
  19. package/dist/errors/base.d.ts +8 -0
  20. package/dist/errors/base.js +13 -0
  21. package/dist/errors/base.js.map +1 -0
  22. package/dist/errors/constants.d.ts +3 -0
  23. package/dist/errors/constants.js +9 -0
  24. package/dist/errors/constants.js.map +1 -0
  25. package/dist/errors/index.d.ts +2 -0
  26. package/dist/errors/index.js +19 -0
  27. package/dist/errors/index.js.map +1 -0
  28. package/dist/errors/providers.d.ts +23 -0
  29. package/dist/errors/providers.js +32 -0
  30. package/dist/errors/providers.js.map +1 -0
  31. package/dist/file/index.d.ts +1 -0
  32. package/dist/file/index.js +28 -0
  33. package/dist/file/index.js.map +1 -0
  34. package/dist/file/providers/destination/index.d.ts +46 -0
  35. package/dist/file/providers/destination/index.js +181 -0
  36. package/dist/file/providers/destination/index.js.map +1 -0
  37. package/dist/file/providers/destination/utils.d.ts +9 -0
  38. package/dist/file/providers/destination/utils.js +62 -0
  39. package/dist/file/providers/destination/utils.js.map +1 -0
  40. package/dist/file/providers/index.d.ts +2 -0
  41. package/dist/file/providers/index.js +19 -0
  42. package/dist/file/providers/index.js.map +1 -0
  43. package/dist/file/providers/source/index.d.ts +40 -0
  44. package/dist/file/providers/source/index.js +242 -0
  45. package/dist/file/providers/source/index.js.map +1 -0
  46. package/dist/file/providers/source/utils.d.ts +37 -0
  47. package/dist/file/providers/source/utils.js +62 -0
  48. package/dist/file/providers/source/utils.js.map +1 -0
  49. package/dist/index.d.ts +4 -0
  50. package/dist/index.js +31 -0
  51. package/dist/index.js.map +1 -0
  52. package/dist/strapi/index.d.ts +3 -0
  53. package/dist/strapi/index.js +30 -0
  54. package/dist/strapi/index.js.map +1 -0
  55. package/dist/strapi/providers/index.d.ts +4 -0
  56. package/dist/strapi/providers/index.js +23 -0
  57. package/dist/strapi/providers/index.js.map +1 -0
  58. package/dist/strapi/providers/local-destination/index.d.ts +34 -0
  59. package/dist/strapi/providers/local-destination/index.js +321 -0
  60. package/dist/strapi/providers/local-destination/index.js.map +1 -0
  61. package/dist/strapi/providers/local-destination/strategies/index.d.ts +1 -0
  62. package/dist/strapi/providers/local-destination/strategies/index.js +28 -0
  63. package/dist/strapi/providers/local-destination/strategies/index.js.map +1 -0
  64. package/dist/strapi/providers/local-destination/strategies/restore/configuration.d.ts +5 -0
  65. package/dist/strapi/providers/local-destination/strategies/restore/configuration.js +51 -0
  66. package/dist/strapi/providers/local-destination/strategies/restore/configuration.js.map +1 -0
  67. package/dist/strapi/providers/local-destination/strategies/restore/entities.d.ts +11 -0
  68. package/dist/strapi/providers/local-destination/strategies/restore/entities.js +103 -0
  69. package/dist/strapi/providers/local-destination/strategies/restore/entities.js.map +1 -0
  70. package/dist/strapi/providers/local-destination/strategies/restore/index.d.ts +32 -0
  71. package/dist/strapi/providers/local-destination/strategies/restore/index.js +107 -0
  72. package/dist/strapi/providers/local-destination/strategies/restore/index.js.map +1 -0
  73. package/dist/strapi/providers/local-destination/strategies/restore/links.d.ts +4 -0
  74. package/dist/strapi/providers/local-destination/strategies/restore/links.js +32 -0
  75. package/dist/strapi/providers/local-destination/strategies/restore/links.js.map +1 -0
  76. package/dist/strapi/providers/local-source/assets.d.ts +5 -0
  77. package/dist/strapi/providers/local-source/assets.js +98 -0
  78. package/dist/strapi/providers/local-source/assets.js.map +1 -0
  79. package/dist/strapi/providers/local-source/configuration.d.ts +5 -0
  80. package/dist/strapi/providers/local-source/configuration.js +36 -0
  81. package/dist/strapi/providers/local-source/configuration.js.map +1 -0
  82. package/dist/strapi/providers/local-source/entities.d.ts +10 -0
  83. package/dist/strapi/providers/local-source/entities.js +85 -0
  84. package/dist/strapi/providers/local-source/entities.js.map +1 -0
  85. package/dist/strapi/providers/local-source/index.d.ts +26 -0
  86. package/dist/strapi/providers/local-source/index.js +98 -0
  87. package/dist/strapi/providers/local-source/index.js.map +1 -0
  88. package/dist/strapi/providers/local-source/links.d.ts +5 -0
  89. package/dist/strapi/providers/local-source/links.js +23 -0
  90. package/dist/strapi/providers/local-source/links.js.map +1 -0
  91. package/dist/strapi/providers/remote-destination/index.d.ts +39 -0
  92. package/dist/strapi/providers/remote-destination/index.js +269 -0
  93. package/dist/strapi/providers/remote-destination/index.js.map +1 -0
  94. package/dist/strapi/providers/remote-source/index.d.ts +39 -0
  95. package/dist/strapi/providers/remote-source/index.js +239 -0
  96. package/dist/strapi/providers/remote-source/index.js.map +1 -0
  97. package/dist/strapi/providers/utils.d.ts +39 -0
  98. package/dist/strapi/providers/utils.js +138 -0
  99. package/dist/strapi/providers/utils.js.map +1 -0
  100. package/dist/strapi/queries/entity.d.ts +2 -0
  101. package/dist/strapi/queries/entity.js +130 -0
  102. package/dist/strapi/queries/entity.js.map +1 -0
  103. package/dist/strapi/queries/index.d.ts +2 -0
  104. package/dist/strapi/queries/index.js +29 -0
  105. package/dist/strapi/queries/index.js.map +1 -0
  106. package/dist/strapi/queries/link.d.ts +7 -0
  107. package/dist/strapi/queries/link.js +215 -0
  108. package/dist/strapi/queries/link.js.map +1 -0
  109. package/dist/strapi/remote/constants.d.ts +4 -0
  110. package/dist/strapi/remote/constants.js +6 -0
  111. package/dist/strapi/remote/constants.js.map +1 -0
  112. package/dist/strapi/remote/flows/default.d.ts +3 -0
  113. package/dist/strapi/remote/flows/default.js +41 -0
  114. package/dist/strapi/remote/flows/default.js.map +1 -0
  115. package/dist/strapi/remote/flows/index.d.ts +18 -0
  116. package/dist/strapi/remote/flows/index.js +59 -0
  117. package/dist/strapi/remote/flows/index.js.map +1 -0
  118. package/dist/strapi/remote/handlers/abstract.d.ts +71 -0
  119. package/dist/strapi/remote/handlers/abstract.js +3 -0
  120. package/dist/strapi/remote/handlers/abstract.js.map +1 -0
  121. package/dist/strapi/remote/handlers/constants.d.ts +2 -0
  122. package/dist/strapi/remote/handlers/constants.js +5 -0
  123. package/dist/strapi/remote/handlers/constants.js.map +1 -0
  124. package/dist/strapi/remote/handlers/index.d.ts +3 -0
  125. package/dist/strapi/remote/handlers/index.js +10 -0
  126. package/dist/strapi/remote/handlers/index.js.map +1 -0
  127. package/dist/strapi/remote/handlers/pull.d.ts +22 -0
  128. package/dist/strapi/remote/handlers/pull.js +243 -0
  129. package/dist/strapi/remote/handlers/pull.js.map +1 -0
  130. package/dist/strapi/remote/handlers/push.d.ts +75 -0
  131. package/dist/strapi/remote/handlers/push.js +311 -0
  132. package/dist/strapi/remote/handlers/push.js.map +1 -0
  133. package/dist/strapi/remote/handlers/utils.d.ts +25 -0
  134. package/dist/strapi/remote/handlers/utils.js +217 -0
  135. package/dist/strapi/remote/handlers/utils.js.map +1 -0
  136. package/dist/strapi/remote/index.d.ts +2 -0
  137. package/dist/strapi/remote/index.js +29 -0
  138. package/dist/strapi/remote/index.js.map +1 -0
  139. package/dist/utils/encryption/decrypt.d.ts +11 -0
  140. package/dist/utils/encryption/decrypt.js +47 -0
  141. package/dist/utils/encryption/decrypt.js.map +1 -0
  142. package/dist/utils/encryption/encrypt.d.ts +11 -0
  143. package/dist/utils/encryption/encrypt.js +47 -0
  144. package/dist/utils/encryption/encrypt.js.map +1 -0
  145. package/dist/utils/encryption/index.d.ts +2 -0
  146. package/dist/utils/encryption/index.js +19 -0
  147. package/dist/utils/encryption/index.js.map +1 -0
  148. package/dist/utils/index.d.ts +6 -0
  149. package/dist/utils/index.js +33 -0
  150. package/dist/utils/index.js.map +1 -0
  151. package/dist/utils/json.d.ts +30 -0
  152. package/dist/utils/json.js +68 -0
  153. package/dist/utils/json.js.map +1 -0
  154. package/dist/utils/middleware.d.ts +2 -0
  155. package/dist/utils/middleware.js +14 -0
  156. package/dist/utils/middleware.js.map +1 -0
  157. package/dist/utils/providers.d.ts +2 -0
  158. package/dist/utils/providers.js +11 -0
  159. package/dist/utils/providers.js.map +1 -0
  160. package/dist/utils/schema.d.ts +6 -0
  161. package/dist/utils/schema.js +29 -0
  162. package/dist/utils/schema.js.map +1 -0
  163. package/dist/utils/stream.d.ts +27 -0
  164. package/dist/utils/stream.js +59 -0
  165. package/dist/utils/stream.js.map +1 -0
  166. package/dist/utils/transaction.d.ts +3 -0
  167. package/dist/utils/transaction.js +88 -0
  168. package/dist/utils/transaction.js.map +1 -0
  169. package/package.json +4 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './schemas';
2
+ export * from './provider';
@@ -0,0 +1,19 @@
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("./schemas"), exports);
18
+ __exportStar(require("./provider"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engine/validation/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,6CAA2B"}
@@ -0,0 +1,3 @@
1
+ import type { IDestinationProvider, ISourceProvider, ProviderType } from '../../../types';
2
+ declare const validateProvider: <T extends ProviderType>(type: ProviderType, provider?: ([T] extends ["source"] ? ISourceProvider : IDestinationProvider) | null | undefined) => undefined;
3
+ export { validateProvider };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateProvider = void 0;
4
+ const fp_1 = require("lodash/fp");
5
+ const errors_1 = require("../errors");
6
+ const reject = (reason) => {
7
+ throw new errors_1.TransferEngineValidationError(`Invalid provider supplied. ${reason}`);
8
+ };
9
+ const validateProvider = (type, provider) => {
10
+ if (!provider) {
11
+ return reject(`Expected an instance of "${(0, fp_1.capitalize)(type)}Provider", but got "${typeof provider}" instead.`);
12
+ }
13
+ if (provider.type !== type) {
14
+ return reject(`Expected the provider to be of type "${type}" but got "${provider.type}" instead.`);
15
+ }
16
+ };
17
+ exports.validateProvider = validateProvider;
18
+ //# sourceMappingURL=provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/engine/validation/provider.ts"],"names":[],"mappings":";;;AAAA,kCAAuC;AAGvC,sCAA0D;AAE1D,MAAM,MAAM,GAAG,CAAC,MAAc,EAAS,EAAE;IACvC,MAAM,IAAI,sCAA6B,CAAC,8BAA8B,MAAM,EAAE,CAAC,CAAC;AAClF,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,IAAkB,EAClB,QAAmF,EACnF,EAAE;IACF,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,MAAM,CACX,4BAA4B,IAAA,eAAU,EAAC,IAAI,CAAC,uBAAuB,OAAO,QAAQ,YAAY,CAC/F,CAAC;KACH;IAED,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE;QAC1B,OAAO,MAAM,CACX,wCAAwC,IAAI,cAAc,QAAQ,CAAC,IAAI,YAAY,CACpF,CAAC;KACH;AACH,CAAC,CAAC;AAEO,4CAAgB"}
@@ -0,0 +1,7 @@
1
+ import type { Diff } from '../../../utils/json';
2
+ declare const strategies: {
3
+ exact(diffs: Diff[]): Diff[];
4
+ strict(diffs: Diff[]): Diff[];
5
+ };
6
+ declare const compareSchemas: <T, P>(a: T, b: P, strategy: keyof typeof strategies) => Diff[];
7
+ export { compareSchemas };
@@ -0,0 +1,70 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.compareSchemas = void 0;
27
+ const fp_1 = require("lodash/fp");
28
+ const utils = __importStar(require("../../../utils"));
29
+ const OPTIONAL_CONTENT_TYPES = ['audit-log'];
30
+ const isAttributeIgnorable = (diff) => {
31
+ return (diff.path.length === 3 &&
32
+ // Root property must be attributes
33
+ diff.path[0] === 'attributes' &&
34
+ // Need a valid string attribute name
35
+ typeof diff.path[1] === 'string' &&
36
+ // The diff must be on ignorable attribute properties
37
+ ['private', 'required', 'configurable'].includes(diff.path[2]));
38
+ };
39
+ // TODO: clean up the type checking, which will require cleaning up the typings in utils/json.ts
40
+ // exclude admin tables that are not transferrable and are optionally available (such as audit logs which are only available in EE)
41
+ const isOptionalAdminType = (diff) => {
42
+ if ('value' in diff && (0, fp_1.isObject)(diff.value)) {
43
+ const name = diff?.value?.info?.singularName;
44
+ return OPTIONAL_CONTENT_TYPES.includes(name);
45
+ }
46
+ if ('values' in diff && (0, fp_1.isArray)(diff.values) && (0, fp_1.isObject)(diff.values[0])) {
47
+ const name = diff?.values[0]?.info?.singularName;
48
+ return OPTIONAL_CONTENT_TYPES.includes(name);
49
+ }
50
+ return false;
51
+ };
52
+ const isIgnorableStrict = (diff) => isAttributeIgnorable(diff) || isOptionalAdminType(diff);
53
+ const strategies = {
54
+ // No diffs
55
+ exact(diffs) {
56
+ return diffs;
57
+ },
58
+ // Strict: all content types must match except:
59
+ // - the property within a content type is an ignorable one
60
+ // - those that are (not transferrable and optionally available), for example EE features such as audit logs
61
+ strict(diffs) {
62
+ return (0, fp_1.reject)(isIgnorableStrict, diffs);
63
+ },
64
+ };
65
+ const compareSchemas = (a, b, strategy) => {
66
+ const diffs = utils.json.diff(a, b);
67
+ return strategies[strategy](diffs);
68
+ };
69
+ exports.compareSchemas = compareSchemas;
70
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/engine/validation/schemas/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kCAAsD;AAEtD,sDAAwC;AAExC,MAAM,sBAAsB,GAAG,CAAC,WAAW,CAAU,CAAC;AAEtD,MAAM,oBAAoB,GAAG,CAAC,IAAU,EAAE,EAAE;IAC1C,OAAO,CACL,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;QACtB,mCAAmC;QACnC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY;QAC7B,qCAAqC;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ;QAChC,qDAAqD;QACrD,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAC/D,CAAC;AACJ,CAAC,CAAC;AAEF,gGAAgG;AAChG,mIAAmI;AACnI,MAAM,mBAAmB,GAAG,CAAC,IAAU,EAAE,EAAE;IACzC,IAAI,OAAO,IAAI,IAAI,IAAI,IAAA,aAAQ,EAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QAC3C,MAAM,IAAI,GAAI,IAAI,EAAE,KAAuB,EAAE,IAAI,EAAE,YAAY,CAAC;QAChE,OAAQ,sBAA4D,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KACrF;IACD,IAAI,QAAQ,IAAI,IAAI,IAAI,IAAA,YAAO,EAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAA,aAAQ,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;QACxE,MAAM,IAAI,GAAI,IAAI,EAAE,MAAM,CAAC,CAAC,CAAmB,EAAE,IAAI,EAAE,YAAY,CAAC;QACpE,OAAQ,sBAA4D,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KACrF;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,IAAU,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,UAAU,GAAG;IACjB,WAAW;IACX,KAAK,CAAC,KAAa;QACjB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,+CAA+C;IAC/C,2DAA2D;IAC3D,4GAA4G;IAC5G,MAAM,CAAC,KAAa;QAClB,OAAO,IAAA,WAAM,EAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;CACF,CAAC;AAEF,MAAM,cAAc,GAAG,CAAO,CAAI,EAAE,CAAI,EAAE,QAAiC,EAAE,EAAE;IAC7E,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC,CAAC;AAEO,wCAAc"}
@@ -0,0 +1,8 @@
1
+ import { Severity } from './constants';
2
+ declare class DataTransferError<T = unknown> extends Error {
3
+ origin: string;
4
+ severity: Severity;
5
+ details: T | null;
6
+ constructor(origin: string, severity: Severity, message?: string, details?: T | null);
7
+ }
8
+ export { DataTransferError };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DataTransferError = void 0;
4
+ class DataTransferError extends Error {
5
+ constructor(origin, severity, message, details) {
6
+ super(message);
7
+ this.origin = origin;
8
+ this.severity = severity;
9
+ this.details = details ?? null;
10
+ }
11
+ }
12
+ exports.DataTransferError = DataTransferError;
13
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/errors/base.ts"],"names":[],"mappings":";;;AAEA,MAAM,iBAA+B,SAAQ,KAAK;IAOhD,YAAY,MAAc,EAAE,QAAkB,EAAE,OAAgB,EAAE,OAAkB;QAClF,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,IAAI,CAAC;IACjC,CAAC;CACF;AAEQ,8CAAiB"}
@@ -0,0 +1,3 @@
1
+ import { ErrorDiagnosticSeverity } from '../engine/diagnostic';
2
+ export declare const SeverityKind: Record<string, ErrorDiagnosticSeverity>;
3
+ export type Severity = (typeof SeverityKind)[keyof typeof SeverityKind];
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SeverityKind = void 0;
4
+ exports.SeverityKind = {
5
+ FATAL: 'fatal',
6
+ ERROR: 'error',
7
+ SILLY: 'silly',
8
+ };
9
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/errors/constants.ts"],"names":[],"mappings":";;;AAEa,QAAA,YAAY,GAA4C;IACnE,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './constants';
2
+ export * from './base';
@@ -0,0 +1,19 @@
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("./constants"), exports);
18
+ __exportStar(require("./base"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,yCAAuB"}
@@ -0,0 +1,23 @@
1
+ import { ErrorCode } from '../../types';
2
+ import { DataTransferError } from './base';
3
+ import { Severity } from './constants';
4
+ type ProviderStep = 'initialization' | 'validation' | 'transfer';
5
+ export type ProviderErrorDetails<P extends ProviderStep = ProviderStep, U = never> = {
6
+ step: P;
7
+ code?: ErrorCode;
8
+ } & ([U] extends [never] ? unknown : {
9
+ details?: U;
10
+ });
11
+ export declare class ProviderError<P extends ProviderStep = ProviderStep, U = never, T extends ProviderErrorDetails<P, U> = ProviderErrorDetails<P, U>> extends DataTransferError<T> {
12
+ constructor(severity: Severity, message?: string, details?: T | null);
13
+ }
14
+ export declare class ProviderInitializationError extends ProviderError<'initialization'> {
15
+ constructor(message?: string);
16
+ }
17
+ export declare class ProviderValidationError<T = ProviderErrorDetails> extends ProviderError<'validation', T> {
18
+ constructor(message?: string, details?: T);
19
+ }
20
+ export declare class ProviderTransferError<T = ProviderErrorDetails> extends ProviderError<'transfer', T> {
21
+ constructor(message?: string, details?: T);
22
+ }
23
+ export {};
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProviderTransferError = exports.ProviderValidationError = exports.ProviderInitializationError = exports.ProviderError = void 0;
4
+ const base_1 = require("./base");
5
+ const constants_1 = require("./constants");
6
+ class ProviderError extends base_1.DataTransferError {
7
+ constructor(severity, message, details) {
8
+ super('provider', severity, message, details);
9
+ }
10
+ }
11
+ exports.ProviderError = ProviderError;
12
+ class ProviderInitializationError extends ProviderError {
13
+ constructor(message) {
14
+ super(constants_1.SeverityKind.FATAL, message, { step: 'initialization' });
15
+ }
16
+ }
17
+ exports.ProviderInitializationError = ProviderInitializationError;
18
+ // TODO: these types are not working correctly, ProviderTransferError() is accepting any details object rather than requiring T
19
+ class ProviderValidationError extends ProviderError {
20
+ constructor(message, details) {
21
+ super(constants_1.SeverityKind.SILLY, message, { step: 'validation', details });
22
+ }
23
+ }
24
+ exports.ProviderValidationError = ProviderValidationError;
25
+ // TODO: these types are not working correctly, ProviderTransferError() is accepting any details object rather than requiring T
26
+ class ProviderTransferError extends ProviderError {
27
+ constructor(message, details) {
28
+ super(constants_1.SeverityKind.FATAL, message, { step: 'transfer', details });
29
+ }
30
+ }
31
+ exports.ProviderTransferError = ProviderTransferError;
32
+ //# sourceMappingURL=providers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/errors/providers.ts"],"names":[],"mappings":";;;AACA,iCAA2C;AAC3C,2CAAqD;AASrD,MAAa,aAIX,SAAQ,wBAAoB;IAC5B,YAAY,QAAkB,EAAE,OAAgB,EAAE,OAAkB;QAClE,KAAK,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;CACF;AARD,sCAQC;AAED,MAAa,2BAA4B,SAAQ,aAA+B;IAC9E,YAAY,OAAgB;QAC1B,KAAK,CAAC,wBAAY,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;IACjE,CAAC;CACF;AAJD,kEAIC;AAED,+HAA+H;AAC/H,MAAa,uBAAkD,SAAQ,aAGtE;IACC,YAAY,OAAgB,EAAE,OAAW;QACvC,KAAK,CAAC,wBAAY,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;IACtE,CAAC;CACF;AAPD,0DAOC;AACD,+HAA+H;AAC/H,MAAa,qBAAgD,SAAQ,aAA4B;IAC/F,YAAY,OAAgB,EAAE,OAAW;QACvC,KAAK,CAAC,wBAAY,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;IACpE,CAAC;CACF;AAJD,sDAIC"}
@@ -0,0 +1 @@
1
+ export * as providers from './providers';
@@ -0,0 +1,28 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.providers = void 0;
27
+ exports.providers = __importStar(require("./providers"));
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/file/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAAyC"}
@@ -0,0 +1,46 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="stream-chain" />
3
+ /// <reference types="node" />
4
+ import zlib from 'zlib';
5
+ import { Writable } from 'stream';
6
+ import type { IDestinationProvider, IDestinationProviderTransferResults, IMetadata, ProviderType } from '../../../../types';
7
+ export interface ILocalFileDestinationProviderOptions {
8
+ encryption: {
9
+ enabled: boolean;
10
+ key?: string;
11
+ };
12
+ compression: {
13
+ enabled: boolean;
14
+ };
15
+ file: {
16
+ path: string;
17
+ maxSize?: number;
18
+ maxSizeJsonl?: number;
19
+ };
20
+ }
21
+ export interface ILocalFileDestinationProviderTransferResults extends IDestinationProviderTransferResults {
22
+ file?: {
23
+ path?: string;
24
+ };
25
+ }
26
+ export declare const createLocalFileDestinationProvider: (options: ILocalFileDestinationProviderOptions) => LocalFileDestinationProvider;
27
+ declare class LocalFileDestinationProvider implements IDestinationProvider {
28
+ #private;
29
+ name: string;
30
+ type: ProviderType;
31
+ options: ILocalFileDestinationProviderOptions;
32
+ results: ILocalFileDestinationProviderTransferResults;
33
+ constructor(options: ILocalFileDestinationProviderOptions);
34
+ setMetadata(target: ProviderType, metadata: IMetadata): IDestinationProvider;
35
+ createGzip(): zlib.Gzip;
36
+ bootstrap(): void | Promise<void>;
37
+ close(): Promise<void>;
38
+ rollback(): Promise<void>;
39
+ getMetadata(): null;
40
+ createSchemasWriteStream(): import("stream-chain");
41
+ createEntitiesWriteStream(): Writable;
42
+ createLinksWriteStream(): Writable;
43
+ createConfigurationWriteStream(): Writable;
44
+ createAssetsWriteStream(): Writable;
45
+ }
46
+ export {};
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
+ };
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
10
+ var _LocalFileDestinationProvider_instances, _LocalFileDestinationProvider_providersMetadata, _LocalFileDestinationProvider_archive, _LocalFileDestinationProvider_archivePath_get, _LocalFileDestinationProvider_writeMetadata, _LocalFileDestinationProvider_getMetadataStream;
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.createLocalFileDestinationProvider = void 0;
13
+ const path_1 = __importDefault(require("path"));
14
+ const zlib_1 = __importDefault(require("zlib"));
15
+ const stream_1 = require("stream");
16
+ const fs_extra_1 = require("fs-extra");
17
+ const tar_stream_1 = __importDefault(require("tar-stream"));
18
+ const Stringer_1 = require("stream-json/jsonl/Stringer");
19
+ const stream_chain_1 = require("stream-chain");
20
+ const encryption_1 = require("../../../utils/encryption");
21
+ const utils_1 = require("./utils");
22
+ const providers_1 = require("../../../errors/providers");
23
+ const createLocalFileDestinationProvider = (options) => {
24
+ return new LocalFileDestinationProvider(options);
25
+ };
26
+ exports.createLocalFileDestinationProvider = createLocalFileDestinationProvider;
27
+ class LocalFileDestinationProvider {
28
+ constructor(options) {
29
+ _LocalFileDestinationProvider_instances.add(this);
30
+ this.name = 'destination::local-file';
31
+ this.type = 'destination';
32
+ this.results = {};
33
+ _LocalFileDestinationProvider_providersMetadata.set(this, {});
34
+ _LocalFileDestinationProvider_archive.set(this, {});
35
+ this.options = options;
36
+ }
37
+ setMetadata(target, metadata) {
38
+ __classPrivateFieldGet(this, _LocalFileDestinationProvider_providersMetadata, "f")[target] = metadata;
39
+ return this;
40
+ }
41
+ createGzip() {
42
+ return zlib_1.default.createGzip();
43
+ }
44
+ bootstrap() {
45
+ const { compression, encryption } = this.options;
46
+ if (encryption.enabled && !encryption.key) {
47
+ throw new Error("Can't encrypt without a key");
48
+ }
49
+ __classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").stream = tar_stream_1.default.pack();
50
+ const outStream = (0, fs_extra_1.createWriteStream)(__classPrivateFieldGet(this, _LocalFileDestinationProvider_instances, "a", _LocalFileDestinationProvider_archivePath_get));
51
+ outStream.on('error', (err) => {
52
+ if (err.code === 'ENOSPC') {
53
+ throw new providers_1.ProviderTransferError("Your server doesn't have space to proceed with the import.");
54
+ }
55
+ throw err;
56
+ });
57
+ const archiveTransforms = [];
58
+ if (compression.enabled) {
59
+ archiveTransforms.push(this.createGzip());
60
+ }
61
+ if (encryption.enabled && encryption.key) {
62
+ archiveTransforms.push((0, encryption_1.createEncryptionCipher)(encryption.key));
63
+ }
64
+ __classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").pipeline = (0, stream_chain_1.chain)([__classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").stream, ...archiveTransforms, outStream]);
65
+ this.results.file = { path: __classPrivateFieldGet(this, _LocalFileDestinationProvider_instances, "a", _LocalFileDestinationProvider_archivePath_get) };
66
+ }
67
+ async close() {
68
+ const { stream, pipeline } = __classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f");
69
+ if (!stream) {
70
+ return;
71
+ }
72
+ await __classPrivateFieldGet(this, _LocalFileDestinationProvider_instances, "m", _LocalFileDestinationProvider_writeMetadata).call(this);
73
+ stream.finalize();
74
+ if (pipeline && !pipeline.closed) {
75
+ await new Promise((resolve, reject) => {
76
+ pipeline.on('close', resolve).on('error', reject);
77
+ });
78
+ }
79
+ }
80
+ async rollback() {
81
+ await this.close();
82
+ await (0, fs_extra_1.rm)(__classPrivateFieldGet(this, _LocalFileDestinationProvider_instances, "a", _LocalFileDestinationProvider_archivePath_get), { force: true });
83
+ }
84
+ getMetadata() {
85
+ return null;
86
+ }
87
+ createSchemasWriteStream() {
88
+ if (!__classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").stream) {
89
+ throw new Error('Archive stream is unavailable');
90
+ }
91
+ const filePathFactory = (0, utils_1.createFilePathFactory)('schemas');
92
+ const entryStream = (0, utils_1.createTarEntryStream)(__classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").stream, filePathFactory, this.options.file.maxSizeJsonl);
93
+ return (0, stream_chain_1.chain)([(0, Stringer_1.stringer)(), entryStream]);
94
+ }
95
+ createEntitiesWriteStream() {
96
+ if (!__classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").stream) {
97
+ throw new Error('Archive stream is unavailable');
98
+ }
99
+ const filePathFactory = (0, utils_1.createFilePathFactory)('entities');
100
+ const entryStream = (0, utils_1.createTarEntryStream)(__classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").stream, filePathFactory, this.options.file.maxSizeJsonl);
101
+ return (0, stream_chain_1.chain)([(0, Stringer_1.stringer)(), entryStream]);
102
+ }
103
+ createLinksWriteStream() {
104
+ if (!__classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").stream) {
105
+ throw new Error('Archive stream is unavailable');
106
+ }
107
+ const filePathFactory = (0, utils_1.createFilePathFactory)('links');
108
+ const entryStream = (0, utils_1.createTarEntryStream)(__classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").stream, filePathFactory, this.options.file.maxSizeJsonl);
109
+ return (0, stream_chain_1.chain)([(0, Stringer_1.stringer)(), entryStream]);
110
+ }
111
+ createConfigurationWriteStream() {
112
+ if (!__classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").stream) {
113
+ throw new Error('Archive stream is unavailable');
114
+ }
115
+ const filePathFactory = (0, utils_1.createFilePathFactory)('configuration');
116
+ const entryStream = (0, utils_1.createTarEntryStream)(__classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f").stream, filePathFactory, this.options.file.maxSizeJsonl);
117
+ return (0, stream_chain_1.chain)([(0, Stringer_1.stringer)(), entryStream]);
118
+ }
119
+ createAssetsWriteStream() {
120
+ const { stream: archiveStream } = __classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f");
121
+ if (!archiveStream) {
122
+ throw new Error('Archive stream is unavailable');
123
+ }
124
+ return new stream_1.Writable({
125
+ objectMode: true,
126
+ write(data, _encoding, callback) {
127
+ // always write tar files with posix paths so we have a standard format for paths regardless of system
128
+ const entryPath = path_1.default.posix.join('assets', 'uploads', data.filename);
129
+ const entryMetadataPath = path_1.default.posix.join('assets', 'metadata', `${data.filename}.json`);
130
+ const stringifiedMetadata = JSON.stringify(data.metadata);
131
+ archiveStream.entry({
132
+ name: entryMetadataPath,
133
+ size: stringifiedMetadata.length,
134
+ }, stringifiedMetadata);
135
+ const entry = archiveStream.entry({
136
+ name: entryPath,
137
+ size: data.stats.size,
138
+ });
139
+ if (!entry) {
140
+ callback(new Error(`Failed to created an asset tar entry for ${entryPath}`));
141
+ return;
142
+ }
143
+ data.stream.pipe(entry);
144
+ entry
145
+ .on('finish', () => {
146
+ callback(null);
147
+ })
148
+ .on('error', (error) => {
149
+ callback(error);
150
+ });
151
+ },
152
+ });
153
+ }
154
+ }
155
+ _LocalFileDestinationProvider_providersMetadata = new WeakMap(), _LocalFileDestinationProvider_archive = new WeakMap(), _LocalFileDestinationProvider_instances = new WeakSet(), _LocalFileDestinationProvider_archivePath_get = function _LocalFileDestinationProvider_archivePath_get() {
156
+ const { encryption, compression, file } = this.options;
157
+ let filePath = `${file.path}.tar`;
158
+ if (compression.enabled) {
159
+ filePath += '.gz';
160
+ }
161
+ if (encryption.enabled) {
162
+ filePath += '.enc';
163
+ }
164
+ return filePath;
165
+ }, _LocalFileDestinationProvider_writeMetadata = async function _LocalFileDestinationProvider_writeMetadata() {
166
+ const metadata = __classPrivateFieldGet(this, _LocalFileDestinationProvider_providersMetadata, "f").source;
167
+ if (metadata) {
168
+ await new Promise((resolve) => {
169
+ const outStream = __classPrivateFieldGet(this, _LocalFileDestinationProvider_instances, "m", _LocalFileDestinationProvider_getMetadataStream).call(this);
170
+ const data = JSON.stringify(metadata, null, 2);
171
+ stream_1.Readable.from(data).pipe(outStream).on('close', resolve);
172
+ });
173
+ }
174
+ }, _LocalFileDestinationProvider_getMetadataStream = function _LocalFileDestinationProvider_getMetadataStream() {
175
+ const { stream } = __classPrivateFieldGet(this, _LocalFileDestinationProvider_archive, "f");
176
+ if (!stream) {
177
+ throw new Error('Archive stream is unavailable');
178
+ }
179
+ return (0, utils_1.createTarEntryStream)(stream, () => 'metadata.json');
180
+ };
181
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/file/providers/destination/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /// <reference types="node" />
2
+ import { Writable } from 'stream';
3
+ import tar from 'tar-stream';
4
+ /**
5
+ * Create a file path factory for a given path & prefix.
6
+ * Upon being called, the factory will return a file path for a given index
7
+ */
8
+ export declare const createFilePathFactory: (type: string) => (fileIndex?: number) => string;
9
+ export declare const createTarEntryStream: (archive: tar.Pack, pathFactory: (index?: number) => string, maxSize?: number) => Writable;