@decaf-ts/integrations 0.1.3 → 0.2.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 (172) hide show
  1. package/dist/integrations.cjs +1 -1
  2. package/docker/azure-blob-compose.yml +21 -0
  3. package/docker/gcs-blob-compose.yml +21 -0
  4. package/docker/ipfs-compose.yml +25 -0
  5. package/docker/minio-compose.yml +25 -0
  6. package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +293 -0
  7. package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +1 -0
  8. package/lib/cjs/blob/azure/index.cjs +24 -0
  9. package/lib/cjs/blob/azure/index.cjs.map +1 -0
  10. package/lib/cjs/blob/core/BlobErrors.cjs +74 -0
  11. package/lib/cjs/blob/core/BlobErrors.cjs.map +1 -0
  12. package/lib/cjs/blob/core/BlobKey.cjs +37 -0
  13. package/lib/cjs/blob/core/BlobKey.cjs.map +1 -0
  14. package/lib/cjs/blob/core/BlobStoreFactory.cjs +57 -0
  15. package/lib/cjs/blob/core/BlobStoreFactory.cjs.map +1 -0
  16. package/lib/cjs/blob/core/BlobStoreService.cjs +42 -0
  17. package/lib/cjs/blob/core/BlobStoreService.cjs.map +1 -0
  18. package/lib/cjs/blob/core/BlobTypes.cjs +4 -0
  19. package/lib/cjs/blob/core/BlobTypes.cjs.map +1 -0
  20. package/lib/cjs/blob/core/BlobValue.cjs +72 -0
  21. package/lib/cjs/blob/core/BlobValue.cjs.map +1 -0
  22. package/lib/cjs/blob/core/index.cjs +29 -0
  23. package/lib/cjs/blob/core/index.cjs.map +1 -0
  24. package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +272 -0
  25. package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +1 -0
  26. package/lib/cjs/blob/gcp/index.cjs +24 -0
  27. package/lib/cjs/blob/gcp/index.cjs.map +1 -0
  28. package/lib/cjs/blob/index.cjs +25 -0
  29. package/lib/cjs/blob/index.cjs.map +1 -0
  30. package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs +182 -0
  31. package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs.map +1 -0
  32. package/lib/cjs/blob/ipfs/IpfsKeyIndex.cjs +27 -0
  33. package/lib/cjs/blob/ipfs/IpfsKeyIndex.cjs.map +1 -0
  34. package/lib/cjs/blob/ipfs/LocalJsonIpfsKeyIndex.cjs +35 -0
  35. package/lib/cjs/blob/ipfs/LocalJsonIpfsKeyIndex.cjs.map +1 -0
  36. package/lib/cjs/blob/ipfs/MemoryIpfsKeyIndex.cjs +45 -0
  37. package/lib/cjs/blob/ipfs/MemoryIpfsKeyIndex.cjs.map +1 -0
  38. package/lib/cjs/blob/ipfs/PostgresIpfsKeyIndex.cjs +35 -0
  39. package/lib/cjs/blob/ipfs/PostgresIpfsKeyIndex.cjs.map +1 -0
  40. package/lib/cjs/blob/ipfs/index.cjs +28 -0
  41. package/lib/cjs/blob/ipfs/index.cjs.map +1 -0
  42. package/lib/cjs/blob/local/LocalBlobStoreService.cjs +288 -0
  43. package/lib/cjs/blob/local/LocalBlobStoreService.cjs.map +1 -0
  44. package/lib/cjs/blob/local/index.cjs +24 -0
  45. package/lib/cjs/blob/local/index.cjs.map +1 -0
  46. package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs +146 -0
  47. package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs.map +1 -0
  48. package/lib/cjs/blob/memory/index.cjs +24 -0
  49. package/lib/cjs/blob/memory/index.cjs.map +1 -0
  50. package/lib/cjs/blob/s3/MinioBlobStoreService.cjs +14 -0
  51. package/lib/cjs/blob/s3/MinioBlobStoreService.cjs.map +1 -0
  52. package/lib/cjs/blob/s3/R2BlobStoreService.cjs +14 -0
  53. package/lib/cjs/blob/s3/R2BlobStoreService.cjs.map +1 -0
  54. package/lib/cjs/blob/s3/S3BlobStoreService.cjs +322 -0
  55. package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +1 -0
  56. package/lib/cjs/blob/s3/index.cjs +26 -0
  57. package/lib/cjs/blob/s3/index.cjs.map +1 -0
  58. package/lib/cjs/docker/DockerComposeService.cjs +2 -2
  59. package/lib/cjs/docker/DockerComposeService.cjs.map +1 -1
  60. package/lib/cjs/index.cjs +3 -3
  61. package/lib/esm/blob/azure/AzureBlobStoreService.js +288 -0
  62. package/lib/esm/blob/azure/AzureBlobStoreService.js.map +1 -0
  63. package/lib/esm/blob/azure/index.js +7 -0
  64. package/lib/esm/blob/azure/index.js.map +1 -0
  65. package/lib/esm/blob/core/BlobErrors.js +61 -0
  66. package/lib/esm/blob/core/BlobErrors.js.map +1 -0
  67. package/lib/esm/blob/core/BlobKey.js +32 -0
  68. package/lib/esm/blob/core/BlobKey.js.map +1 -0
  69. package/lib/esm/blob/core/BlobStoreFactory.js +52 -0
  70. package/lib/esm/blob/core/BlobStoreFactory.js.map +1 -0
  71. package/lib/esm/blob/core/BlobStoreService.js +37 -0
  72. package/lib/esm/blob/core/BlobStoreService.js.map +1 -0
  73. package/lib/esm/blob/core/BlobTypes.js +2 -0
  74. package/lib/esm/blob/core/BlobTypes.js.map +1 -0
  75. package/lib/esm/blob/core/BlobValue.js +66 -0
  76. package/lib/esm/blob/core/BlobValue.js.map +1 -0
  77. package/lib/esm/blob/core/index.js +12 -0
  78. package/lib/esm/blob/core/index.js.map +1 -0
  79. package/lib/esm/blob/gcp/GcsBlobStoreService.js +267 -0
  80. package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +1 -0
  81. package/lib/esm/blob/gcp/index.js +7 -0
  82. package/lib/esm/blob/gcp/index.js.map +1 -0
  83. package/lib/esm/blob/index.js +8 -0
  84. package/lib/esm/blob/index.js.map +1 -0
  85. package/lib/esm/blob/ipfs/IpfsBlobStoreService.js +177 -0
  86. package/lib/esm/blob/ipfs/IpfsBlobStoreService.js.map +1 -0
  87. package/lib/esm/blob/ipfs/IpfsKeyIndex.js +23 -0
  88. package/lib/esm/blob/ipfs/IpfsKeyIndex.js.map +1 -0
  89. package/lib/esm/blob/ipfs/LocalJsonIpfsKeyIndex.js +30 -0
  90. package/lib/esm/blob/ipfs/LocalJsonIpfsKeyIndex.js.map +1 -0
  91. package/lib/esm/blob/ipfs/MemoryIpfsKeyIndex.js +40 -0
  92. package/lib/esm/blob/ipfs/MemoryIpfsKeyIndex.js.map +1 -0
  93. package/lib/esm/blob/ipfs/PostgresIpfsKeyIndex.js +30 -0
  94. package/lib/esm/blob/ipfs/PostgresIpfsKeyIndex.js.map +1 -0
  95. package/lib/esm/blob/ipfs/index.js +11 -0
  96. package/lib/esm/blob/ipfs/index.js.map +1 -0
  97. package/lib/esm/blob/local/LocalBlobStoreService.js +283 -0
  98. package/lib/esm/blob/local/LocalBlobStoreService.js.map +1 -0
  99. package/lib/esm/blob/local/index.js +7 -0
  100. package/lib/esm/blob/local/index.js.map +1 -0
  101. package/lib/esm/blob/memory/MemoryBlobStoreService.js +141 -0
  102. package/lib/esm/blob/memory/MemoryBlobStoreService.js.map +1 -0
  103. package/lib/esm/blob/memory/index.js +7 -0
  104. package/lib/esm/blob/memory/index.js.map +1 -0
  105. package/lib/esm/blob/s3/MinioBlobStoreService.js +9 -0
  106. package/lib/esm/blob/s3/MinioBlobStoreService.js.map +1 -0
  107. package/lib/esm/blob/s3/R2BlobStoreService.js +9 -0
  108. package/lib/esm/blob/s3/R2BlobStoreService.js.map +1 -0
  109. package/lib/esm/blob/s3/S3BlobStoreService.js +317 -0
  110. package/lib/esm/blob/s3/S3BlobStoreService.js.map +1 -0
  111. package/lib/esm/blob/s3/index.js +9 -0
  112. package/lib/esm/blob/s3/index.js.map +1 -0
  113. package/lib/esm/docker/DockerComposeService.js +2 -2
  114. package/lib/esm/docker/DockerComposeService.js.map +1 -1
  115. package/lib/esm/index.js +3 -3
  116. package/lib/types/blob/azure/AzureBlobStoreService.d.cts +25 -0
  117. package/lib/types/blob/azure/AzureBlobStoreService.d.mts +25 -0
  118. package/lib/types/blob/azure/index.d.cts +6 -0
  119. package/lib/types/blob/azure/index.d.mts +6 -0
  120. package/lib/types/blob/core/BlobErrors.d.cts +14 -0
  121. package/lib/types/blob/core/BlobErrors.d.mts +14 -0
  122. package/lib/types/blob/core/BlobKey.d.cts +9 -0
  123. package/lib/types/blob/core/BlobKey.d.mts +9 -0
  124. package/lib/types/blob/core/BlobStoreFactory.d.cts +5 -0
  125. package/lib/types/blob/core/BlobStoreFactory.d.mts +5 -0
  126. package/lib/types/blob/core/BlobStoreService.d.cts +28 -0
  127. package/lib/types/blob/core/BlobStoreService.d.mts +28 -0
  128. package/lib/types/blob/core/BlobTypes.d.cts +122 -0
  129. package/lib/types/blob/core/BlobTypes.d.mts +122 -0
  130. package/lib/types/blob/core/BlobValue.d.cts +13 -0
  131. package/lib/types/blob/core/BlobValue.d.mts +13 -0
  132. package/lib/types/blob/core/index.d.cts +11 -0
  133. package/lib/types/blob/core/index.d.mts +11 -0
  134. package/lib/types/blob/gcp/GcsBlobStoreService.d.cts +25 -0
  135. package/lib/types/blob/gcp/GcsBlobStoreService.d.mts +25 -0
  136. package/lib/types/blob/gcp/index.d.cts +6 -0
  137. package/lib/types/blob/gcp/index.d.mts +6 -0
  138. package/lib/types/blob/index.d.cts +7 -0
  139. package/lib/types/blob/index.d.mts +7 -0
  140. package/lib/types/blob/ipfs/IpfsBlobStoreService.d.cts +26 -0
  141. package/lib/types/blob/ipfs/IpfsBlobStoreService.d.mts +26 -0
  142. package/lib/types/blob/ipfs/IpfsKeyIndex.d.cts +9 -0
  143. package/lib/types/blob/ipfs/IpfsKeyIndex.d.mts +9 -0
  144. package/lib/types/blob/ipfs/LocalJsonIpfsKeyIndex.d.cts +11 -0
  145. package/lib/types/blob/ipfs/LocalJsonIpfsKeyIndex.d.mts +11 -0
  146. package/lib/types/blob/ipfs/MemoryIpfsKeyIndex.d.cts +15 -0
  147. package/lib/types/blob/ipfs/MemoryIpfsKeyIndex.d.mts +15 -0
  148. package/lib/types/blob/ipfs/PostgresIpfsKeyIndex.d.cts +11 -0
  149. package/lib/types/blob/ipfs/PostgresIpfsKeyIndex.d.mts +11 -0
  150. package/lib/types/blob/ipfs/index.d.cts +10 -0
  151. package/lib/types/blob/ipfs/index.d.mts +10 -0
  152. package/lib/types/blob/local/LocalBlobStoreService.d.cts +30 -0
  153. package/lib/types/blob/local/LocalBlobStoreService.d.mts +30 -0
  154. package/lib/types/blob/local/index.d.cts +6 -0
  155. package/lib/types/blob/local/index.d.mts +6 -0
  156. package/lib/types/blob/memory/MemoryBlobStoreService.d.cts +28 -0
  157. package/lib/types/blob/memory/MemoryBlobStoreService.d.mts +28 -0
  158. package/lib/types/blob/memory/index.d.cts +6 -0
  159. package/lib/types/blob/memory/index.d.mts +6 -0
  160. package/lib/types/blob/s3/MinioBlobStoreService.d.cts +8 -0
  161. package/lib/types/blob/s3/MinioBlobStoreService.d.mts +8 -0
  162. package/lib/types/blob/s3/R2BlobStoreService.d.cts +8 -0
  163. package/lib/types/blob/s3/R2BlobStoreService.d.mts +8 -0
  164. package/lib/types/blob/s3/S3BlobStoreService.d.cts +25 -0
  165. package/lib/types/blob/s3/S3BlobStoreService.d.mts +25 -0
  166. package/lib/types/blob/s3/index.d.cts +8 -0
  167. package/lib/types/blob/s3/index.d.mts +8 -0
  168. package/lib/types/docker/DockerComposeService.d.cts +6 -0
  169. package/lib/types/docker/DockerComposeService.d.mts +6 -0
  170. package/lib/types/index.d.cts +2 -2
  171. package/lib/types/index.d.mts +2 -2
  172. package/package.json +88 -6
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BlobStoreService = void 0;
4
+ /**
5
+ * @module integrations/blob/core/service
6
+ * @summary Blob store service abstraction.
7
+ * @description Base abstraction for binary large object backends.
8
+ */
9
+ const core_1 = require("@decaf-ts/core");
10
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
11
+ const BlobKey_js_1 = require("./BlobKey.cjs");
12
+ class BlobStoreService extends core_1.ClientBasedService {
13
+ constructor() {
14
+ super();
15
+ }
16
+ get provider() {
17
+ return this.config.provider;
18
+ }
19
+ get sourceId() {
20
+ return this.config.sourceId;
21
+ }
22
+ physicalKey(key) {
23
+ return (0, BlobKey_js_1.physicalKey)(key, this.config.prefix);
24
+ }
25
+ cleanKey(key) {
26
+ return (0, BlobKey_js_1.cleanKey)(key);
27
+ }
28
+ getConfigFromArgs(...args) {
29
+ const config = args[0];
30
+ if (!config || typeof config !== "object") {
31
+ throw new db_decorators_1.ValidationError("Blob store config must be the first initialize argument");
32
+ }
33
+ return config;
34
+ }
35
+ uri(key, scheme, extra) {
36
+ const base = `${scheme}://${this.sourceId}/${this.physicalKey(key)}`;
37
+ return extra ? `${base}?${extra}` : base;
38
+ }
39
+ }
40
+ exports.BlobStoreService = BlobStoreService;
41
+ //# sourceMappingURL=BlobStoreService.js.map
42
+ //# sourceMappingURL=BlobStoreService.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blob/core/BlobStoreService.cjs","sourceRoot":"","sources":["blob/core/BlobStoreService.js"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,yCAAqD;AACrD,2DAA0D;AAC1D,6CAAqD;AACrD,MAAa,gBAAiB,SAAQ,yBAAkB;IACpD;QACI,KAAK,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAChC,CAAC;IACD,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAChC,CAAC;IACD,WAAW,CAAC,GAAG;QACX,OAAO,IAAA,wBAAW,EAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IACD,QAAQ,CAAC,GAAG;QACR,OAAO,IAAA,qBAAQ,EAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IACD,iBAAiB,CAAC,GAAG,IAAI;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxC,MAAM,IAAI,+BAAe,CAAC,yDAAyD,CAAC,CAAC;QACzF,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK;QAClB,MAAM,IAAI,GAAG,GAAG,MAAM,MAAM,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;QACrE,OAAO,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7C,CAAC;CACJ;AA3BD,4CA2BC;AACD,4CAA4C"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=BlobTypes.js.map
4
+ //# sourceMappingURL=BlobTypes.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blob/core/BlobTypes.cjs","sourceRoot":"","sources":["blob/core/BlobTypes.js"],"names":[],"mappings":";;AACA,qCAAqC"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toAsyncIterable = toAsyncIterable;
4
+ exports.collectToBuffer = collectToBuffer;
5
+ exports.computeSha256 = computeSha256;
6
+ /**
7
+ * @module integrations/blob/core/value
8
+ * @summary Blob value helpers.
9
+ * @description Utilities for normalizing blob values and collecting them into buffers.
10
+ */
11
+ const common_1 = require("@decaf-ts/crypto/common");
12
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
13
+ /**
14
+ * Converts any supported BlobValue into an AsyncIterable of Uint8Array chunks.
15
+ */
16
+ function toAsyncIterable(value) {
17
+ if (value instanceof Uint8Array) {
18
+ return (async function* () {
19
+ yield value;
20
+ })();
21
+ }
22
+ const anyValue = value;
23
+ if (anyValue && typeof anyValue[Symbol.asyncIterator] === "function") {
24
+ return anyValue;
25
+ }
26
+ if (anyValue && typeof anyValue.getReader === "function") {
27
+ return (async function* () {
28
+ const reader = anyValue.getReader();
29
+ try {
30
+ let result = await reader.read();
31
+ while (!result.done) {
32
+ yield result.value;
33
+ result = await reader.read();
34
+ }
35
+ }
36
+ finally {
37
+ reader.releaseLock();
38
+ }
39
+ })();
40
+ }
41
+ if (anyValue && typeof anyValue[Symbol.iterator] === "function") {
42
+ return (async function* () {
43
+ for (const chunk of anyValue) {
44
+ yield chunk;
45
+ }
46
+ })();
47
+ }
48
+ throw new db_decorators_1.ValidationError(`Unsupported blob value type: ${typeof value}`);
49
+ }
50
+ /**
51
+ * Collects an AsyncIterable of Uint8Array chunks into a single Buffer.
52
+ */
53
+ async function collectToBuffer(value) {
54
+ if (value instanceof Uint8Array) {
55
+ return Buffer.from(value);
56
+ }
57
+ const chunks = [];
58
+ for await (const chunk of toAsyncIterable(value)) {
59
+ chunks.push(Buffer.from(chunk));
60
+ }
61
+ return Buffer.concat(chunks);
62
+ }
63
+ /**
64
+ * Computes the sha256 hex digest of a blob value.
65
+ */
66
+ async function computeSha256(value) {
67
+ const buffer = await collectToBuffer(value);
68
+ const crypto = (await (0, common_1.getCrypto)());
69
+ return crypto.createHash("sha256").update(buffer).digest("hex");
70
+ }
71
+ //# sourceMappingURL=BlobValue.js.map
72
+ //# sourceMappingURL=BlobValue.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blob/core/BlobValue.cjs","sourceRoot":"","sources":["blob/core/BlobValue.js"],"names":[],"mappings":";;AAUA,0CAiCC;AAID,0CASC;AAID,sCAIC;AAhED;;;;GAIG;AACH,oDAAoD;AACpD,2DAA0D;AAC1D;;GAEG;AACH,SAAgB,eAAe,CAAC,KAAK;IACjC,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,SAAS,CAAC;YACnB,MAAM,KAAK,CAAC;QAChB,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC;IACvB,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,UAAU,EAAE,CAAC;QACnE,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;QACvD,OAAO,CAAC,KAAK,SAAS,CAAC;YACnB,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC;gBACD,IAAI,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACjC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAClB,MAAM,MAAM,CAAC,KAAK,CAAC;oBACnB,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACjC,CAAC;YACL,CAAC;oBACO,CAAC;gBACL,MAAM,CAAC,WAAW,EAAE,CAAC;YACzB,CAAC;QACL,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IACD,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE,CAAC;QAC9D,OAAO,CAAC,KAAK,SAAS,CAAC;YACnB,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;gBAC3B,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IACD,MAAM,IAAI,+BAAe,CAAC,gCAAgC,OAAO,KAAK,EAAE,CAAC,CAAC;AAC9E,CAAC;AACD;;GAEG;AACI,KAAK,UAAU,eAAe,CAAC,KAAK;IACvC,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACjC,CAAC;AACD;;GAEG;AACI,KAAK,UAAU,aAAa,CAAC,KAAK;IACrC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,CAAC,MAAM,IAAA,kBAAS,GAAE,CAAC,CAAC;IACnC,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpE,CAAC;AACD,qCAAqC"}
@@ -0,0 +1,29 @@
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
+ /**
18
+ * @module integrations/blob/core
19
+ * @summary Blob core exports.
20
+ * @description Re-exports the blob store core types, errors, key/value helpers, service abstraction, and factory.
21
+ */
22
+ __exportStar(require("./BlobTypes.cjs"), exports);
23
+ __exportStar(require("./BlobErrors.cjs"), exports);
24
+ __exportStar(require("./BlobKey.cjs"), exports);
25
+ __exportStar(require("./BlobValue.cjs"), exports);
26
+ __exportStar(require("./BlobStoreService.cjs"), exports);
27
+ __exportStar(require("./BlobStoreFactory.cjs"), exports);
28
+ //# sourceMappingURL=index.js.map
29
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blob/core/index.cjs","sourceRoot":"","sources":["blob/core/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;GAIG;AACH,iDAA+B;AAC/B,kDAAgC;AAChC,+CAA6B;AAC7B,iDAA+B;AAC/B,wDAAsC;AACtC,wDAAsC;AACtC,iCAAiC"}
@@ -0,0 +1,272 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GcsBlobStoreService = void 0;
4
+ /**
5
+ * @module integrations/blob/gcp/service
6
+ * @summary Google Cloud Storage blob store service.
7
+ * @description Blob store backed by Google Cloud Storage via @google-cloud/storage.
8
+ */
9
+ const storage_1 = require("@google-cloud/storage");
10
+ const core_1 = require("@decaf-ts/core");
11
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
12
+ const BlobStoreService_js_1 = require("./../core/BlobStoreService.cjs");
13
+ const BlobValue_js_1 = require("./../core/BlobValue.cjs");
14
+ class GcsBlobStoreService extends BlobStoreService_js_1.BlobStoreService {
15
+ async initialize(...args) {
16
+ const { log } = (await this.logCtx(args, "initialize", true)).for(this.initialize);
17
+ const config = this.getConfigFromArgs(...args);
18
+ if (!config.bucket) {
19
+ throw new db_decorators_1.InternalError("GcsBlobStoreService requires a bucket");
20
+ }
21
+ const storageOptions = {};
22
+ if (config.projectId)
23
+ storageOptions.projectId = config.projectId;
24
+ if (config.credentials)
25
+ storageOptions.credentials = config.credentials;
26
+ if (config.apiEndpoint)
27
+ storageOptions.apiEndpoint = config.apiEndpoint;
28
+ this.storage = new storage_1.Storage(storageOptions);
29
+ const client = this.storage.bucket(config.bucket);
30
+ this._config = config;
31
+ this._client = client;
32
+ log.verbose(`Initialized GCS blob store ${config.sourceId}`);
33
+ return { config, client };
34
+ }
35
+ async put(key, value, options = {}, ...args) {
36
+ const { log } = (await this.logCtx(args, "put", true)).for(this.put);
37
+ log.verbose(`Putting blob ${key}`);
38
+ const objectName = this.physicalKey(key);
39
+ if (options.ifNotExists) {
40
+ if (await this.has(key)) {
41
+ throw new db_decorators_1.ConflictError(`Blob already exists: ${key}`);
42
+ }
43
+ }
44
+ const buffer = await (0, BlobValue_js_1.collectToBuffer)(value);
45
+ if (options.expectedSha256) {
46
+ const sha256 = await (0, BlobValue_js_1.computeSha256)(buffer);
47
+ if (options.expectedSha256 !== sha256) {
48
+ throw new db_decorators_1.ValidationError(`Checksum mismatch for ${key}`);
49
+ }
50
+ }
51
+ try {
52
+ const file = this.client.file(objectName);
53
+ const metadata = { ...(options.metadata ?? {}) };
54
+ await file.save(buffer, {
55
+ contentType: options.contentType,
56
+ metadata,
57
+ });
58
+ const [info] = await file.getMetadata();
59
+ const resultMetadata = {
60
+ contentType: options.contentType,
61
+ contentLength: Number(info.size ?? buffer.length),
62
+ etag: info.etag,
63
+ custom: options.metadata,
64
+ };
65
+ return {
66
+ key,
67
+ uri: this.uri(key, "gcs"),
68
+ provider: this.provider,
69
+ sourceId: this.sourceId,
70
+ metadata: resultMetadata,
71
+ };
72
+ }
73
+ catch (error) {
74
+ throw this.parseError(error);
75
+ }
76
+ }
77
+ async get(key, options = {}, ...args) {
78
+ const { log } = (await this.logCtx(args, "get", true)).for(this.get);
79
+ log.verbose(`Getting blob ${key}`);
80
+ const objectName = this.physicalKey(key);
81
+ try {
82
+ const file = this.client.file(objectName);
83
+ const [exists] = await file.exists();
84
+ if (!exists) {
85
+ throw new db_decorators_1.NotFoundError(`Blob not found: ${key}`);
86
+ }
87
+ const readOptions = {};
88
+ if (options.range) {
89
+ readOptions.start = options.range.start;
90
+ if (options.range.end !== undefined)
91
+ readOptions.end = options.range.end;
92
+ }
93
+ const [info] = await file.getMetadata();
94
+ const stream = file.createReadStream(readOptions);
95
+ const metadata = {
96
+ contentType: info.contentType,
97
+ contentLength: Number(info.size),
98
+ etag: info.etag,
99
+ };
100
+ return {
101
+ key,
102
+ value: (0, BlobValue_js_1.toAsyncIterable)(stream),
103
+ uri: this.uri(key, "gcs"),
104
+ provider: this.provider,
105
+ sourceId: this.sourceId,
106
+ metadata,
107
+ };
108
+ }
109
+ catch (error) {
110
+ throw this.parseError(error);
111
+ }
112
+ }
113
+ async has(key, ...args) {
114
+ const { log } = (await this.logCtx(args, "has", true)).for(this.has);
115
+ log.verbose(`Checking blob ${key}`);
116
+ try {
117
+ const [exists] = await this.client.file(this.physicalKey(key)).exists();
118
+ return exists;
119
+ }
120
+ catch (error) {
121
+ throw this.parseError(error);
122
+ }
123
+ }
124
+ async stat(key, ...args) {
125
+ const { log } = (await this.logCtx(args, "stat", true)).for(this.stat);
126
+ log.verbose(`Statting blob ${key}`);
127
+ try {
128
+ const [info] = await this.client.file(this.physicalKey(key)).getMetadata();
129
+ return {
130
+ contentType: info.contentType,
131
+ contentLength: Number(info.size),
132
+ etag: info.etag,
133
+ custom: info.metadata,
134
+ };
135
+ }
136
+ catch (error) {
137
+ throw this.parseError(error);
138
+ }
139
+ }
140
+ async delete(key, ...args) {
141
+ const { log } = (await this.logCtx(args, "delete", true)).for(this.delete);
142
+ log.verbose(`Deleting blob ${key}`);
143
+ try {
144
+ await this.client.file(this.physicalKey(key)).delete({ ignoreNotFound: true });
145
+ }
146
+ catch (error) {
147
+ throw this.parseError(error);
148
+ }
149
+ }
150
+ async copy(fromKey, toKey, options = {}, ...args) {
151
+ const { log } = (await this.logCtx(args, "copy", true)).for(this.copy);
152
+ log.verbose(`Copying blob ${fromKey} to ${toKey}`);
153
+ try {
154
+ const sourceFile = this.client.file(this.physicalKey(fromKey));
155
+ const targetFile = this.client.file(this.physicalKey(toKey));
156
+ const [copied] = await sourceFile.copy(targetFile);
157
+ const [info] = await copied.getMetadata();
158
+ const metadata = {
159
+ contentType: options.contentType ?? info.contentType,
160
+ contentLength: Number(info.size),
161
+ etag: info.etag,
162
+ custom: options.metadata,
163
+ };
164
+ return {
165
+ key: toKey,
166
+ uri: this.uri(toKey, "gcs"),
167
+ provider: this.provider,
168
+ sourceId: this.sourceId,
169
+ metadata,
170
+ };
171
+ }
172
+ catch (error) {
173
+ throw this.parseError(error);
174
+ }
175
+ }
176
+ async list(options = {}, ...args) {
177
+ const { log } = (await this.logCtx(args, "list", true)).for(this.list);
178
+ log.verbose("Listing blobs");
179
+ const prefix = this.physicalKey(options.prefix ?? "");
180
+ try {
181
+ const items = [];
182
+ const [files] = await this.client.getFiles({
183
+ prefix: prefix || undefined,
184
+ maxResults: options.limit,
185
+ pageToken: options.cursor,
186
+ });
187
+ for (const file of files) {
188
+ const [info] = await file.getMetadata();
189
+ items.push({
190
+ key: file.name,
191
+ metadata: {
192
+ contentLength: Number(info.size),
193
+ etag: info.etag,
194
+ contentType: info.contentType,
195
+ },
196
+ });
197
+ }
198
+ return { items };
199
+ }
200
+ catch (error) {
201
+ throw this.parseError(error);
202
+ }
203
+ }
204
+ async url(key, options = {}, ...args) {
205
+ const { log } = (await this.logCtx(args, "url", true)).for(this.url);
206
+ log.verbose(`Building url for blob ${key}`);
207
+ const objectName = this.physicalKey(key);
208
+ const operation = options.operation ?? "get";
209
+ const expiresIn = options.expiresInSeconds ?? 300;
210
+ try {
211
+ const file = this.client.file(objectName);
212
+ const action = operation === "put" ? "write" : "read";
213
+ const config = {
214
+ version: "v4",
215
+ action,
216
+ expires: Date.now() + expiresIn * 1000,
217
+ };
218
+ if (options.contentType)
219
+ config.contentType = options.contentType;
220
+ const [url] = await file.getSignedUrl(config);
221
+ return {
222
+ url,
223
+ method: operation === "put" ? "PUT" : "GET",
224
+ expiresAt: new Date(Date.now() + expiresIn * 1000),
225
+ headers: options.contentType
226
+ ? { "Content-Type": options.contentType }
227
+ : undefined,
228
+ };
229
+ }
230
+ catch (error) {
231
+ throw this.parseError(error);
232
+ }
233
+ }
234
+ parseError(error) {
235
+ const err = error;
236
+ if (err instanceof db_decorators_1.NotFoundError ||
237
+ err instanceof db_decorators_1.ConflictError ||
238
+ err instanceof core_1.AuthorizationError ||
239
+ err instanceof core_1.ForbiddenError ||
240
+ err instanceof db_decorators_1.ValidationError ||
241
+ err instanceof core_1.ConnectionError ||
242
+ err instanceof core_1.UnsupportedError ||
243
+ err instanceof db_decorators_1.InternalError) {
244
+ return err;
245
+ }
246
+ const message = err.message || "Unknown error";
247
+ const lower = message.toLowerCase();
248
+ const code = err?.code || err?.status;
249
+ if (lower.includes("not found") || code === 404 || code === "ENOENT" || code === 5) {
250
+ return new db_decorators_1.NotFoundError(err);
251
+ }
252
+ if (lower.includes("already exists") || code === 409 || code === "EEXIST" || code === 6) {
253
+ return new db_decorators_1.ConflictError(err);
254
+ }
255
+ if (lower.includes("unauthorized") || code === 401 || code === 16) {
256
+ return new core_1.AuthorizationError(err);
257
+ }
258
+ if (lower.includes("permission") || code === 403 || code === 7) {
259
+ return new core_1.ForbiddenError(err);
260
+ }
261
+ if (lower.includes("rate limit") || code === 429 || code === 8) {
262
+ return new db_decorators_1.ConflictError(err);
263
+ }
264
+ if (lower.includes("timeout") || lower.includes("unavailable") || lower.includes("connection") || code === 14 || code === 503) {
265
+ return new core_1.ConnectionError(err);
266
+ }
267
+ return new db_decorators_1.InternalError(err);
268
+ }
269
+ }
270
+ exports.GcsBlobStoreService = GcsBlobStoreService;
271
+ //# sourceMappingURL=GcsBlobStoreService.js.map
272
+ //# sourceMappingURL=GcsBlobStoreService.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blob/gcp/GcsBlobStoreService.cjs","sourceRoot":"","sources":["blob/gcp/GcsBlobStoreService.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
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
+ /**
18
+ * @module integrations/blob/gcp
19
+ * @summary Google Cloud Storage blob store exports.
20
+ * @description Re-exports the GCS blob store service.
21
+ */
22
+ __exportStar(require("./GcsBlobStoreService.cjs"), exports);
23
+ //# sourceMappingURL=index.js.map
24
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blob/gcp/index.cjs","sourceRoot":"","sources":["blob/gcp/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;GAIG;AACH,2DAAyC;AACzC,iCAAiC"}
@@ -0,0 +1,25 @@
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
+ /**
18
+ * @module integrations/blob
19
+ * @summary Blob store management helpers for the integrations package.
20
+ * @description Re-exports the blob store core abstractions only. Provider implementations are exported
21
+ * through their own subpaths so the core entry does not eagerly load optional provider SDKs.
22
+ */
23
+ __exportStar(require("./core/index.cjs"), exports);
24
+ //# sourceMappingURL=index.js.map
25
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blob/index.cjs","sourceRoot":"","sources":["blob/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,kDAAgC;AAChC,iCAAiC"}