@alepha/bucket-vercel 0.10.0 → 0.10.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.
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "blob"
11
11
  ],
12
12
  "author": "Feunard",
13
- "version": "0.10.0",
13
+ "version": "0.10.1",
14
14
  "type": "module",
15
15
  "engines": {
16
16
  "node": ">=22.0.0"
@@ -23,17 +23,17 @@
23
23
  "src"
24
24
  ],
25
25
  "dependencies": {
26
- "@alepha/bucket": "0.10.0",
27
- "@alepha/core": "0.10.0",
28
- "@alepha/datetime": "0.10.0",
29
- "@alepha/file": "0.10.0",
30
- "@alepha/logger": "0.10.0",
26
+ "@alepha/bucket": "0.10.1",
27
+ "@alepha/core": "0.10.1",
28
+ "@alepha/datetime": "0.10.1",
29
+ "@alepha/file": "0.10.1",
30
+ "@alepha/logger": "0.10.1",
31
31
  "@vercel/blob": "^2.0.0"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@biomejs/biome": "^2.2.4",
35
35
  "@types/node": "^24.5.2",
36
- "tsdown": "^0.15.3",
36
+ "tsdown": "^0.15.5",
37
37
  "typescript": "^5.9.2",
38
38
  "vitest": "^3.2.4"
39
39
  },
package/dist/index.cjs DELETED
@@ -1,146 +0,0 @@
1
- //#region rolldown:runtime
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __copyProps = (to, from, except, desc) => {
9
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
10
- key = keys[i];
11
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
12
- get: ((k) => from[k]).bind(null, key),
13
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
14
- });
15
- }
16
- return to;
17
- };
18
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
19
- value: mod,
20
- enumerable: true
21
- }) : target, mod));
22
-
23
- //#endregion
24
- const __alepha_bucket = __toESM(require("@alepha/bucket"));
25
- const __alepha_core = __toESM(require("@alepha/core"));
26
- const __alepha_datetime = __toESM(require("@alepha/datetime"));
27
- const __alepha_file = __toESM(require("@alepha/file"));
28
- const __alepha_logger = __toESM(require("@alepha/logger"));
29
- const __vercel_blob = __toESM(require("@vercel/blob"));
30
-
31
- //#region src/providers/VercelFileStorageProvider.ts
32
- const envSchema = __alepha_core.t.object({ BLOB_READ_WRITE_TOKEN: __alepha_core.t.string({ size: "long" }) });
33
- /**
34
- * Vercel Blob Storage implementation of File Storage Provider.
35
- */
36
- var VercelFileStorageProvider = class {
37
- log = (0, __alepha_logger.$logger)();
38
- env = (0, __alepha_core.$env)(envSchema);
39
- alepha = (0, __alepha_core.$inject)(__alepha_core.Alepha);
40
- time = (0, __alepha_core.$inject)(__alepha_datetime.DateTimeProvider);
41
- stores = /* @__PURE__ */ new Set();
42
- onStart = (0, __alepha_core.$hook)({
43
- on: "start",
44
- handler: async () => {
45
- for (const bucket of this.alepha.descriptors(__alepha_bucket.$bucket)) {
46
- if (bucket.provider !== this) continue;
47
- const storeName = this.convertName(bucket.name);
48
- this.log.debug(`Prepare store '${storeName}' ...`);
49
- this.stores.add(storeName);
50
- this.log.info(`Store '${bucket.name}' OK`);
51
- }
52
- }
53
- });
54
- convertName(name) {
55
- return name.replaceAll("/", "-").toLowerCase();
56
- }
57
- async upload(bucketName, file, fileId) {
58
- fileId = file.name;
59
- this.log.trace(`Uploading file '${file.name}' to bucket '${bucketName}' with id '${fileId}'...`);
60
- const storeName = this.convertName(bucketName);
61
- const pathname = `${storeName}/${fileId}`;
62
- try {
63
- const result = await (0, __vercel_blob.put)(pathname, file.stream(), {
64
- access: "public",
65
- contentType: file.type,
66
- token: this.env.BLOB_READ_WRITE_TOKEN
67
- });
68
- this.log.trace(`File uploaded successfully: ${result.url}`);
69
- return fileId;
70
- } catch (error) {
71
- this.log.error(`Failed to upload file: ${error}`);
72
- if (error instanceof Error) throw new __alepha_core.AlephaError(`Upload failed: ${error.message}`, { cause: error });
73
- throw error;
74
- }
75
- }
76
- async download(bucketName, fileId) {
77
- this.log.trace(`Downloading file '${fileId}' from bucket '${bucketName}'...`);
78
- const storeName = this.convertName(bucketName);
79
- const pathname = `${storeName}/${fileId}`;
80
- try {
81
- const headResult = await (0, __vercel_blob.head)(pathname, { token: this.env.BLOB_READ_WRITE_TOKEN });
82
- if (!headResult) throw new __alepha_bucket.FileNotFoundError(`File '${fileId}' not found in bucket '${bucketName}'`);
83
- const response = await fetch(headResult.url);
84
- if (!response.ok) throw new __alepha_bucket.FileNotFoundError(`Failed to fetch file: ${response.statusText}`);
85
- const stream = response.body;
86
- if (!stream) throw new __alepha_bucket.FileNotFoundError("File not found - empty response body");
87
- const originalType = response.headers.get("Content-Type") || "application/octet-stream";
88
- return (0, __alepha_file.createFile)(stream, {
89
- name: fileId,
90
- type: originalType,
91
- size: headResult.size
92
- });
93
- } catch (error) {
94
- if (error instanceof __alepha_bucket.FileNotFoundError) throw error;
95
- this.log.error(`Failed to download file: ${error}`);
96
- if (error instanceof Error) throw new __alepha_bucket.FileNotFoundError("Error downloading file", { cause: error });
97
- throw error;
98
- }
99
- }
100
- async exists(bucketName, fileId) {
101
- this.log.trace(`Checking existence of file '${fileId}' in bucket '${bucketName}'...`);
102
- const storeName = this.convertName(bucketName);
103
- const pathname = `${storeName}/${fileId}`;
104
- try {
105
- const result = await (0, __vercel_blob.head)(pathname, { token: this.env.BLOB_READ_WRITE_TOKEN });
106
- return result !== null;
107
- } catch (error) {
108
- return false;
109
- }
110
- }
111
- async delete(bucketName, fileId) {
112
- this.log.trace(`Deleting file '${fileId}' from bucket '${bucketName}'...`);
113
- const storeName = this.convertName(bucketName);
114
- const pathname = `${storeName}/${fileId}`;
115
- try {
116
- await (0, __vercel_blob.del)(pathname, { token: this.env.BLOB_READ_WRITE_TOKEN });
117
- } catch (error) {
118
- this.log.error(`Failed to delete file: ${error}`);
119
- if (error instanceof Error) throw new __alepha_bucket.FileNotFoundError("Error deleting file", { cause: error });
120
- throw error;
121
- }
122
- }
123
- };
124
-
125
- //#endregion
126
- //#region src/index.ts
127
- /**
128
- * Plugin for Alepha Bucket that provides Vercel Blob Storage capabilities.
129
- *
130
- * @see {@link VercelFileStorageProvider}
131
- * @module alepha.bucket.vercel
132
- */
133
- const AlephaBucketVercel = (0, __alepha_core.$module)({
134
- name: "alepha.bucket.vercel",
135
- services: [VercelFileStorageProvider],
136
- register: (alepha) => alepha.with({
137
- optional: true,
138
- provide: __alepha_bucket.FileStorageProvider,
139
- use: VercelFileStorageProvider
140
- }).with(__alepha_bucket.AlephaBucket)
141
- });
142
-
143
- //#endregion
144
- exports.AlephaBucketVercel = AlephaBucketVercel;
145
- exports.VercelFileStorageProvider = VercelFileStorageProvider;
146
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs","names":["t","Alepha","DateTimeProvider","$bucket","AlephaError","FileNotFoundError","FileStorageProvider","AlephaBucket"],"sources":["../src/providers/VercelFileStorageProvider.ts","../src/index.ts"],"sourcesContent":["import type { Readable } from \"node:stream\";\nimport {\n\t$bucket,\n\tFileNotFoundError,\n\ttype FileStorageProvider,\n} from \"@alepha/bucket\";\nimport {\n\t$env,\n\t$hook,\n\t$inject,\n\tAlepha,\n\tAlephaError,\n\ttype FileLike,\n\ttype Static,\n\tt,\n} from \"@alepha/core\";\nimport { DateTimeProvider } from \"@alepha/datetime\";\nimport { createFile } from \"@alepha/file\";\nimport { $logger } from \"@alepha/logger\";\nimport { del, head, put } from \"@vercel/blob\";\n\nconst envSchema = t.object({\n\tBLOB_READ_WRITE_TOKEN: t.string({\n\t\tsize: \"long\",\n\t}),\n});\n\ndeclare module \"@alepha/core\" {\n\tinterface Env extends Partial<Static<typeof envSchema>> {}\n}\n\n/**\n * Vercel Blob Storage implementation of File Storage Provider.\n */\nexport class VercelFileStorageProvider implements FileStorageProvider {\n\tprotected readonly log = $logger();\n\tprotected readonly env = $env(envSchema);\n\tprotected readonly alepha = $inject(Alepha);\n\tprotected readonly time = $inject(DateTimeProvider);\n\tprotected readonly stores: Set<string> = new Set();\n\n\tprotected readonly onStart = $hook({\n\t\ton: \"start\",\n\t\thandler: async () => {\n\t\t\tfor (const bucket of this.alepha.descriptors($bucket)) {\n\t\t\t\tif (bucket.provider !== this) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tconst storeName = this.convertName(bucket.name);\n\n\t\t\t\tthis.log.debug(`Prepare store '${storeName}' ...`);\n\n\t\t\t\t// Vercel Blob doesn't require explicit store/container creation\n\t\t\t\t// We just track the store names for reference\n\t\t\t\tthis.stores.add(storeName);\n\n\t\t\t\tthis.log.info(`Store '${bucket.name}' OK`);\n\t\t\t}\n\t\t},\n\t});\n\n\tpublic convertName(name: string): string {\n\t\t// Convert to a valid path-like name for Vercel Blob\n\t\treturn name.replaceAll(\"/\", \"-\").toLowerCase();\n\t}\n\n\tpublic async upload(\n\t\tbucketName: string,\n\t\tfile: FileLike,\n\t\tfileId?: string,\n\t): Promise<string> {\n\t\t// force file id as filename for Vercel because we can't store filename as metadata\n\t\t// it's bad, but we have no choice for now\n\t\tfileId = file.name;\n\n\t\tthis.log.trace(\n\t\t\t`Uploading file '${file.name}' to bucket '${bucketName}' with id '${fileId}'...`,\n\t\t);\n\n\t\tconst storeName = this.convertName(bucketName);\n\t\tconst pathname = `${storeName}/${fileId}`;\n\n\t\ttry {\n\t\t\tconst result = await put(pathname, file.stream() as Readable, {\n\t\t\t\taccess: \"public\",\n\t\t\t\tcontentType: file.type,\n\t\t\t\ttoken: this.env.BLOB_READ_WRITE_TOKEN,\n\t\t\t});\n\n\t\t\tthis.log.trace(`File uploaded successfully: ${result.url}`);\n\t\t\treturn fileId;\n\t\t} catch (error) {\n\t\t\tthis.log.error(`Failed to upload file: ${error}`);\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow new AlephaError(`Upload failed: ${error.message}`, {\n\t\t\t\t\tcause: error,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\tpublic async download(bucketName: string, fileId: string): Promise<FileLike> {\n\t\tthis.log.trace(\n\t\t\t`Downloading file '${fileId}' from bucket '${bucketName}'...`,\n\t\t);\n\n\t\tconst storeName = this.convertName(bucketName);\n\t\tconst pathname = `${storeName}/${fileId}`;\n\n\t\ttry {\n\t\t\t// check if the file exists and get metadata\n\t\t\tconst headResult = await head(pathname, {\n\t\t\t\ttoken: this.env.BLOB_READ_WRITE_TOKEN,\n\t\t\t});\n\n\t\t\tif (!headResult) {\n\t\t\t\tthrow new FileNotFoundError(\n\t\t\t\t\t`File '${fileId}' not found in bucket '${bucketName}'`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// fetch the actual file content\n\t\t\tconst response = await fetch(headResult.url);\n\n\t\t\tif (!response.ok) {\n\t\t\t\tthrow new FileNotFoundError(\n\t\t\t\t\t`Failed to fetch file: ${response.statusText}`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst stream = response.body;\n\t\t\tif (!stream) {\n\t\t\t\tthrow new FileNotFoundError(\"File not found - empty response body\");\n\t\t\t}\n\n\t\t\tconst originalType =\n\t\t\t\tresponse.headers.get(\"Content-Type\") || \"application/octet-stream\";\n\n\t\t\treturn createFile(stream, {\n\t\t\t\tname: fileId,\n\t\t\t\ttype: originalType,\n\t\t\t\tsize: headResult.size,\n\t\t\t});\n\t\t} catch (error) {\n\t\t\tif (error instanceof FileNotFoundError) {\n\t\t\t\tthrow error;\n\t\t\t}\n\n\t\t\tthis.log.error(`Failed to download file: ${error}`);\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow new FileNotFoundError(\"Error downloading file\", { cause: error });\n\t\t\t}\n\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\tpublic async exists(bucketName: string, fileId: string): Promise<boolean> {\n\t\tthis.log.trace(\n\t\t\t`Checking existence of file '${fileId}' in bucket '${bucketName}'...`,\n\t\t);\n\n\t\tconst storeName = this.convertName(bucketName);\n\t\tconst pathname = `${storeName}/${fileId}`;\n\n\t\ttry {\n\t\t\tconst result = await head(pathname, {\n\t\t\t\ttoken: this.env.BLOB_READ_WRITE_TOKEN,\n\t\t\t});\n\t\t\treturn result !== null;\n\t\t} catch (error) {\n\t\t\t// Vercel Blob head() throws for non-existent files\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic async delete(bucketName: string, fileId: string): Promise<void> {\n\t\tthis.log.trace(`Deleting file '${fileId}' from bucket '${bucketName}'...`);\n\n\t\tconst storeName = this.convertName(bucketName);\n\t\tconst pathname = `${storeName}/${fileId}`;\n\n\t\ttry {\n\t\t\tawait del(pathname, {\n\t\t\t\ttoken: this.env.BLOB_READ_WRITE_TOKEN,\n\t\t\t});\n\t\t} catch (error) {\n\t\t\tthis.log.error(`Failed to delete file: ${error}`);\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow new FileNotFoundError(\"Error deleting file\", { cause: error });\n\t\t\t}\n\t\t\tthrow error;\n\t\t}\n\t}\n}\n","import { AlephaBucket, FileStorageProvider } from \"@alepha/bucket\";\nimport { $module } from \"@alepha/core\";\nimport { VercelFileStorageProvider } from \"./providers/VercelFileStorageProvider.ts\";\n\n// ---------------------------------------------------------------------------------------------------------------------\n\nexport * from \"./providers/VercelFileStorageProvider.ts\";\n\n// ---------------------------------------------------------------------------------------------------------------------\n\n/**\n * Plugin for Alepha Bucket that provides Vercel Blob Storage capabilities.\n *\n * @see {@link VercelFileStorageProvider}\n * @module alepha.bucket.vercel\n */\nexport const AlephaBucketVercel = $module({\n\tname: \"alepha.bucket.vercel\",\n\tservices: [VercelFileStorageProvider],\n\tregister: (alepha) =>\n\t\talepha\n\t\t\t.with({\n\t\t\t\toptional: true,\n\t\t\t\tprovide: FileStorageProvider,\n\t\t\t\tuse: VercelFileStorageProvider,\n\t\t\t})\n\t\t\t.with(AlephaBucket),\n});\n"],"mappings":"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"}
package/dist/index.d.cts DELETED
@@ -1,43 +0,0 @@
1
- import * as _alepha_core1 from "@alepha/core";
2
- import { Alepha, FileLike, Static } from "@alepha/core";
3
- import * as _alepha_logger0 from "@alepha/logger";
4
- import { FileStorageProvider } from "@alepha/bucket";
5
- import { DateTimeProvider } from "@alepha/datetime";
6
-
7
- //#region src/providers/VercelFileStorageProvider.d.ts
8
- declare const envSchema: _alepha_core1.TObject<{
9
- BLOB_READ_WRITE_TOKEN: _alepha_core1.TString;
10
- }>;
11
- declare module "@alepha/core" {
12
- interface Env extends Partial<Static<typeof envSchema>> {}
13
- }
14
- /**
15
- * Vercel Blob Storage implementation of File Storage Provider.
16
- */
17
- declare class VercelFileStorageProvider implements FileStorageProvider {
18
- protected readonly log: _alepha_logger0.Logger;
19
- protected readonly env: {
20
- BLOB_READ_WRITE_TOKEN: string;
21
- };
22
- protected readonly alepha: Alepha;
23
- protected readonly time: DateTimeProvider;
24
- protected readonly stores: Set<string>;
25
- protected readonly onStart: _alepha_core1.HookDescriptor<"start">;
26
- convertName(name: string): string;
27
- upload(bucketName: string, file: FileLike, fileId?: string): Promise<string>;
28
- download(bucketName: string, fileId: string): Promise<FileLike>;
29
- exists(bucketName: string, fileId: string): Promise<boolean>;
30
- delete(bucketName: string, fileId: string): Promise<void>;
31
- }
32
- //#endregion
33
- //#region src/index.d.ts
34
- /**
35
- * Plugin for Alepha Bucket that provides Vercel Blob Storage capabilities.
36
- *
37
- * @see {@link VercelFileStorageProvider}
38
- * @module alepha.bucket.vercel
39
- */
40
- declare const AlephaBucketVercel: _alepha_core1.Service<_alepha_core1.Module>;
41
- //#endregion
42
- export { AlephaBucketVercel, VercelFileStorageProvider };
43
- //# sourceMappingURL=index.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/providers/VercelFileStorageProvider.ts","../src/index.ts"],"sourcesContent":[],"mappings":";;;;;;;cAqBM,yBAAS;yBAIb,aAAA,CAAA;;;EAJI,UAAA,GAIJ,SAGqB,OAHrB,CAG6B,MAH7B,CAAA,OAG2C,SAH3C,CAAA,CAAA,CAAA,CAAA;;;;AAJa;AAAA,cAaF,yBAAA,YAAqC,mBAbnC,CAAA;qBAO8B,GAAA,EAMN,eAAA,CAChB,MAPsB;qBAAd,GAAA,EAAA;IAAR,qBAAA,EAAA,MAAA;EAAO,CAAA;EAAA,mBAAA,MAAA,EASJ,MATI;EAMjB,mBAAA,IAAA,EAIW,gBAJe;EAAA,mBAAA,MAAA,EAKX,GALW,CAAA,MAAA,CAAA;qBAChB,OAAA,EAIQ,aAAA,CAEJ,cANJ,CAAA,OAAA,CAAA;aAEG,CAAA,IAAA,EAAA,MAAA,CAAA,EAAA,MAAA;QACF,CAAA,UAAA,EAAA,MAAA,EAAA,IAAA,EA+BhB,QA/BgB,EAAA,MAAA,CAAA,EAAA,MAAA,CAAA,EAiCpB,OAjCoB,CAAA,MAAA,CAAA;UACI,CAAA,UAAA,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAiEgC,OAjEhC,CAiEwC,QAjExC,CAAA;QAAG,CAAA,UAEJ,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAuH+B,OAvH/B,CAAA,OAAA,CAAA;QA4BnB,CAAA,UAAA,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EA8GkD,OA9GlD,CAAA,IAAA,CAAA;;;;;;;;;;AAhDF,cCLO,kBDSX,ECT6B,aAAA,CAAA,ODS7B,CCEA,aAAA,CAX6B,MAAA,CDS7B"}