@n8n/blob-storage 1.1.0 → 1.2.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.
@@ -0,0 +1,9 @@
1
+ import type { ByteStore, StorageLocation } from './types';
2
+ export declare class ByteStoreRegistry {
3
+ private readonly byteStores;
4
+ constructor(byteStores: Partial<Record<StorageLocation, ByteStore>>);
5
+ register(loc: StorageLocation, store: ByteStore): void;
6
+ has(loc: StorageLocation): boolean;
7
+ find(loc: StorageLocation): ByteStore | undefined;
8
+ get(loc: StorageLocation): ByteStore;
9
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ByteStoreRegistry = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ class ByteStoreRegistry {
6
+ constructor(byteStores) {
7
+ this.byteStores = new Map();
8
+ for (const [loc, store] of Object.entries(byteStores)) {
9
+ if (store)
10
+ this.byteStores.set(loc, store);
11
+ }
12
+ }
13
+ register(loc, store) {
14
+ this.byteStores.set(loc, store);
15
+ }
16
+ has(loc) {
17
+ return this.byteStores.has(loc);
18
+ }
19
+ find(loc) {
20
+ return this.byteStores.get(loc);
21
+ }
22
+ get(loc) {
23
+ const store = this.byteStores.get(loc);
24
+ if (!store) {
25
+ throw new n8n_workflow_1.UnexpectedError(`Byte store for location "${loc}" is not configured.`);
26
+ }
27
+ return store;
28
+ }
29
+ }
30
+ exports.ByteStoreRegistry = ByteStoreRegistry;
31
+ //# sourceMappingURL=byte-store-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"byte-store-registry.js","sourceRoot":"","sources":["../src/byte-store-registry.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAS/C;IAGC,YAAY,UAAuD;QAFlD,eAAU,GAAG,IAAI,GAAG,EAA8B,CAAC;QAGnE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACvD,IAAI,KAAK;gBAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAsB,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC;IACF,CAAC;IAED,QAAQ,CAAC,GAAoB,EAAE,KAAgB;QAC9C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,GAAG,CAAC,GAAoB;QACvB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAGD,IAAI,CAAC,GAAoB;QACxB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAGD,GAAG,CAAC,GAAoB;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,MAAM,IAAI,8BAAe,CAAC,4BAA4B,GAAG,sBAAsB,CAAC,CAAC;QAClF,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC;CACD"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export type { BlobMetadata, PreWriteBlobMetadata, ByteStore, ByteStoreKey, StorageLocation, JsonEntry, Stored, JsonStoreOptions, } from './types';
2
+ export { ByteStoreRegistry } from './byte-store-registry';
2
3
  export { FsByteStore, type FsByteStoreOptions } from './fs-byte-store';
3
4
  export { S3ByteStore } from './s3-byte-store.ee';
4
5
  export { AzureByteStore } from './azure-byte-store.ee';
package/dist/index.js CHANGED
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AzureBlobConfig = exports.ObjectStoreConfig = exports.createFixedSizeChunker = exports.SkippedEntryDeletionError = exports.JsonStore = exports.AzureByteStore = exports.S3ByteStore = exports.FsByteStore = void 0;
3
+ exports.AzureBlobConfig = exports.ObjectStoreConfig = exports.createFixedSizeChunker = exports.SkippedEntryDeletionError = exports.JsonStore = exports.AzureByteStore = exports.S3ByteStore = exports.FsByteStore = exports.ByteStoreRegistry = void 0;
4
+ var byte_store_registry_1 = require("./byte-store-registry");
5
+ Object.defineProperty(exports, "ByteStoreRegistry", { enumerable: true, get: function () { return byte_store_registry_1.ByteStoreRegistry; } });
4
6
  var fs_byte_store_1 = require("./fs-byte-store");
5
7
  Object.defineProperty(exports, "FsByteStore", { enumerable: true, get: function () { return fs_byte_store_1.FsByteStore; } });
6
8
  var s3_byte_store_ee_1 = require("./s3-byte-store.ee");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAUA,iDAAuE;AAA9D,4GAAA,WAAW,OAAA;AACpB,uDAAiD;AAAxC,+GAAA,WAAW,OAAA;AACpB,6DAAuD;AAA9C,qHAAA,cAAc,OAAA;AACvB,2CAAyC;AAAhC,uGAAA,SAAS,OAAA;AAClB,+EAA2E;AAAlE,yIAAA,yBAAyB,OAAA;AAClC,+CAAwD;AAA/C,sHAAA,sBAAsB,OAAA;AAC/B,0EAAuE;AAA9D,wHAAA,iBAAiB,OAAA;AAE1B,oEAAiE;AAAxD,oHAAA,eAAe,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAUA,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA;AAC1B,iDAAuE;AAA9D,4GAAA,WAAW,OAAA;AACpB,uDAAiD;AAAxC,+GAAA,WAAW,OAAA;AACpB,6DAAuD;AAA9C,qHAAA,cAAc,OAAA;AACvB,2CAAyC;AAAhC,uGAAA,SAAS,OAAA;AAClB,+EAA2E;AAAlE,yIAAA,yBAAyB,OAAA;AAClC,+CAAwD;AAA/C,sHAAA,sBAAsB,OAAA;AAC/B,0EAAuE;AAA9D,wHAAA,iBAAiB,OAAA;AAE1B,oEAAiE;AAAxD,oHAAA,eAAe,OAAA"}
@@ -12,7 +12,6 @@ export declare class JsonStore<Ref, Payload extends object> {
12
12
  private groupByLocation;
13
13
  private tryRead;
14
14
  private parse;
15
- private getByteStore;
16
15
  private markCorrupt;
17
16
  private isCorruptEntryError;
18
17
  }
@@ -6,26 +6,23 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.JsonStore = void 0;
7
7
  const chunk_1 = __importDefault(require("lodash/chunk"));
8
8
  const n8n_workflow_1 = require("n8n-workflow");
9
+ const byte_store_registry_1 = require("./byte-store-registry");
9
10
  const skipped_entry_deletion_error_1 = require("./skipped-entry-deletion.error");
10
11
  const CORRUPT_ENTRY = Symbol('corruptEntry');
11
12
  const MAX_READ_CONCURRENCY = 50;
12
13
  class JsonStore {
13
14
  constructor(options) {
14
15
  this.options = options;
15
- this.byteStores = new Map();
16
- for (const [loc, store] of Object.entries(options.byteStores)) {
17
- if (store)
18
- this.byteStores.set(loc, store);
19
- }
16
+ this.byteStores = new byte_store_registry_1.ByteStoreRegistry(options.byteStores);
20
17
  }
21
18
  registerByteStore(loc, store) {
22
- this.byteStores.set(loc, store);
19
+ this.byteStores.register(loc, store);
23
20
  }
24
21
  hasLocation(loc) {
25
22
  return this.byteStores.has(loc);
26
23
  }
27
24
  async write(ref, payload, loc) {
28
- const store = this.getByteStore(loc);
25
+ const store = this.byteStores.get(loc);
29
26
  if ('version' in payload) {
30
27
  throw new n8n_workflow_1.UnexpectedError('Payload must not contain the reserved `version` key.');
31
28
  }
@@ -38,7 +35,7 @@ class JsonStore {
38
35
  }
39
36
  }
40
37
  async read(ref, loc) {
41
- const store = this.getByteStore(loc);
38
+ const store = this.byteStores.get(loc);
42
39
  const key = this.options.key(ref);
43
40
  const bytes = await store.read(key);
44
41
  if (!bytes)
@@ -50,7 +47,7 @@ class JsonStore {
50
47
  if (refs.length === 0)
51
48
  return entries;
52
49
  await Promise.all([...this.groupByLocation(refs)].map(async ([loc, group]) => {
53
- const store = this.getByteStore(loc);
50
+ const store = this.byteStores.get(loc);
54
51
  for (const batch of (0, chunk_1.default)(group, MAX_READ_CONCURRENCY)) {
55
52
  const results = await Promise.all(batch.map(async (ref) => await this.tryRead(ref, store)));
56
53
  results.forEach((entry, idx) => {
@@ -65,7 +62,7 @@ class JsonStore {
65
62
  if (refs.length === 0)
66
63
  return;
67
64
  await Promise.all([...this.groupByLocation(refs)].map(async ([loc, group]) => {
68
- const store = this.byteStores.get(loc);
65
+ const store = this.byteStores.find(loc);
69
66
  if (!store) {
70
67
  this.options.reportError(new skipped_entry_deletion_error_1.SkippedEntryDeletionError(loc, group.length));
71
68
  return;
@@ -109,13 +106,6 @@ class JsonStore {
109
106
  throw this.markCorrupt(this.options.createCorruptedError(ref, error));
110
107
  }
111
108
  }
112
- getByteStore(loc) {
113
- const store = this.byteStores.get(loc);
114
- if (!store) {
115
- throw new n8n_workflow_1.UnexpectedError(`JSON store for location "${loc}" is not configured.`);
116
- }
117
- return store;
118
- }
119
109
  markCorrupt(error) {
120
110
  Object.defineProperty(error, CORRUPT_ENTRY, { value: true });
121
111
  return error;
@@ -1 +1 @@
1
- {"version":3,"file":"json-store.js","sourceRoot":"","sources":["../src/json-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json-store.js","sourceRoot":"","sources":["../src/json-store.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@n8n/blob-storage",
3
- "version": "1.1.0",
3
+ "version": "1.2.1",
4
4
  "description": "Blob storage layer for n8n, with filesystem, S3, and Azure Blob backends",
5
5
  "main": "dist/index.js",
6
6
  "module": "src/index.ts",
7
7
  "types": "dist/index.d.ts",
8
8
  "files": [
9
9
  "dist/**/*",
10
- "LICENSE.md",
11
- "LICENSE_EE.md"
10
+ "LICENSE_EE.md",
11
+ "LICENSE.md"
12
12
  ],
13
13
  "exports": {
14
14
  ".": {
@@ -30,13 +30,13 @@
30
30
  "@azure/storage-blob": "^12.32.0",
31
31
  "lodash": "4.18.1",
32
32
  "reflect-metadata": "0.2.2",
33
- "zod": "3.25.67",
34
- "@n8n/backend-common": "1.33.0",
35
- "@n8n/backend-network": "1.7.0",
36
- "@n8n/config": "2.31.0",
37
- "n8n-workflow": "2.33.0",
38
- "@n8n/utils": "1.41.0",
39
- "@n8n/di": "0.16.0"
33
+ "zod": "3.25.76",
34
+ "@n8n/backend-common": "1.34.1",
35
+ "@n8n/backend-network": "1.8.1",
36
+ "@n8n/utils": "1.42.0",
37
+ "@n8n/di": "0.16.0",
38
+ "@n8n/config": "2.32.0",
39
+ "n8n-workflow": "2.34.1"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@types/lodash": "4.17.17",
@@ -47,8 +47,8 @@
47
47
  "vitest": "^4.1.9",
48
48
  "vitest-mock-extended": "^3.1.0",
49
49
  "@n8n/eslint-config": "0.0.1",
50
- "@n8n/vitest-config": "1.19.0",
51
- "@n8n/typescript-config": "1.9.0"
50
+ "@n8n/typescript-config": "1.9.0",
51
+ "@n8n/vitest-config": "1.19.0"
52
52
  },
53
53
  "license": "SEE LICENSE IN LICENSE.md",
54
54
  "homepage": "https://n8n.io",