@sarangkale66/pixxo-sdk-node 1.0.2 → 1.0.3

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/README.md CHANGED
@@ -1,31 +1,31 @@
1
- # Pixxo Node.js SDK
2
-
3
- > Drop-in replacement for the [ImageKit Node.js SDK](https://github.com/imagekit-developer/imagekit-nodejs). Swap `import ImageKit from 'imagekit'` with `import Pixxo from 'pixxo'` — zero refactor required.
4
-
5
- ## Installation
6
-
7
- ```bash
8
- npm install pixxo
9
- ```
10
-
11
- ## Quick Start
12
-
13
- ```ts
14
- import Pixxo from "pixxo";
15
- import fs from "fs";
16
-
17
- const pixxo = new Pixxo({
18
- email: "you@example.com",
19
- password: "your-password",
20
- });
21
-
1
+ # Pixxo Node.js SDK
2
+
3
+ > Drop-in replacement for the [ImageKit Node.js SDK](https://github.com/imagekit-developer/imagekit-nodejs). Swap `import ImageKit from 'imagekit'` with `import Pixxo from 'pixxo'` — zero refactor required.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install pixxo
9
+ ```
10
+
11
+ ## Quick Start
12
+
13
+ ```ts
14
+ import Pixxo from "pixxo";
15
+ import fs from "fs";
16
+
17
+ const pixxo = new Pixxo({
18
+ email: "you@example.com",
19
+ password: "your-password",
20
+ });
21
+
22
22
  const result = await pixxo.upload({
23
23
  file: fs.readFileSync("receipt.pdf"),
24
24
  fileName: "receipt.pdf",
25
25
  folder: "/receipts",
26
26
  });
27
-
28
- console.log(result.url); // https://px.pixxo.io/…
27
+
28
+ console.log(result.url); // https://px.pixxo.io/…
29
29
  console.log(result.fileId); // MongoDB ObjectId
30
30
  console.log(result.name); // receipt.pdf
31
31
  ```
@@ -39,79 +39,79 @@ const result = await pixxo.upload({
39
39
  folder: "/products/images",
40
40
  });
41
41
  ```
42
-
43
- ## Constructor Options
44
-
45
- | Option | Type | Required | Default | Description |
46
- |---|---|---|---|---|
47
- | `email` | `string` | ✅ | — | Pixxo account email |
48
- | `password` | `string` | ✅ | — | Pixxo account password |
49
- | `baseUrl` | `string` | — | `https://api.pixxo.io` | API base URL |
50
- | `cdnDomain` | `string` | — | `px.pixxo.io` | CDN domain for returned URLs |
51
- | `maxRetries` | `number` | — | `2` | Retry attempts for S3 upload failures |
52
- | `publicKey` | `string` | — | — | *Ignored* (ImageKit compat) |
53
- | `privateKey` | `string` | — | — | *Ignored* (ImageKit compat) |
54
- | `urlEndpoint` | `string` | — | — | *Ignored* (ImageKit compat) |
55
-
56
- ## `upload(options)`
57
-
58
- ### Options
59
-
60
- | Option | Type | Required | Description |
61
- |---|---|---|---|
62
- | `file` | `Buffer \| string` | ✅ | Buffer, base64 string, or file path |
63
- | `fileName` | `string` | ✅ | File name with extension |
64
- | `folder` | `string` | — | Destination folder (e.g. `"/receipts"`) |
65
- | `useUniqueFileName` | `boolean` | — | Append unique suffix (default: `true`) |
66
-
67
- ### Response
68
-
69
- ```ts
70
- {
71
- url: string; // CDN URL
72
- fileId: string; // Pixxo asset ID
73
- name: string; // Stored file name
74
- fileType: string; // MIME type
75
- size: number; // Size in bytes
76
- folderId: string | null;
77
- s3Key: string;
78
- }
79
- ```
80
-
81
- ## Migration from ImageKit
82
-
83
- ```diff
84
- - import ImageKit from "imagekit";
85
- + import Pixxo from "pixxo";
86
-
87
- - const imagekit = new ImageKit({
88
- - publicKey: "...",
89
- - privateKey: "...",
90
- - urlEndpoint: "...",
91
- - });
92
- + const imagekit = new Pixxo({
93
- + email: "you@example.com",
94
- + password: "your-password",
95
- + });
96
-
97
- // Everything else stays the same!
98
- const result = await imagekit.upload({
99
- file: buffer,
100
- fileName: "photo.jpg",
101
- folder: "/products",
102
- });
103
- console.log(result.url);
104
- ```
105
-
106
- ## Features
107
-
108
- - **Token caching** — authenticates once, reuses token until expiry
109
- - **Automatic retry** — exponential back-off for S3 upload failures
110
- - **Recursive folder creation** — deeply nested paths just work
111
- - **Multiple file input types** — Buffer, base64, file path
112
- - **ImageKit-compatible response** — `url`, `fileId`, `name`
113
- - **Zero dependencies** — uses native `fetch` (Node 18+)
114
-
115
- ## License
116
-
117
- MIT
42
+
43
+ ## Constructor Options
44
+
45
+ | Option | Type | Required | Default | Description |
46
+ |---|---|---|---|---|
47
+ | `email` | `string` | ✅ | — | Pixxo account email |
48
+ | `password` | `string` | ✅ | — | Pixxo account password |
49
+ | `baseUrl` | `string` | — | `https://api.pixxo.io` | API base URL |
50
+ | `cdnDomain` | `string` | — | `px.pixxo.io` | CDN domain for returned URLs |
51
+ | `maxRetries` | `number` | — | `2` | Retry attempts for S3 upload failures |
52
+ | `publicKey` | `string` | — | — | *Ignored* (ImageKit compat) |
53
+ | `privateKey` | `string` | — | — | *Ignored* (ImageKit compat) |
54
+ | `urlEndpoint` | `string` | — | — | *Ignored* (ImageKit compat) |
55
+
56
+ ## `upload(options)`
57
+
58
+ ### Options
59
+
60
+ | Option | Type | Required | Description |
61
+ |---|---|---|---|
62
+ | `file` | `Buffer \| string` | ✅ | Buffer, base64 string, or file path |
63
+ | `fileName` | `string` | ✅ | File name with extension |
64
+ | `folder` | `string` | — | Destination folder (e.g. `"/receipts"`) |
65
+ | `useUniqueFileName` | `boolean` | — | Append unique suffix (default: `true`) |
66
+
67
+ ### Response
68
+
69
+ ```ts
70
+ {
71
+ url: string; // CDN URL
72
+ fileId: string; // Pixxo asset ID
73
+ name: string; // Stored file name
74
+ fileType: string; // MIME type
75
+ size: number; // Size in bytes
76
+ folderId: string | null;
77
+ s3Key: string;
78
+ }
79
+ ```
80
+
81
+ ## Migration from ImageKit
82
+
83
+ ```diff
84
+ - import ImageKit from "imagekit";
85
+ + import Pixxo from "pixxo";
86
+
87
+ - const imagekit = new ImageKit({
88
+ - publicKey: "...",
89
+ - privateKey: "...",
90
+ - urlEndpoint: "...",
91
+ - });
92
+ + const imagekit = new Pixxo({
93
+ + email: "you@example.com",
94
+ + password: "your-password",
95
+ + });
96
+
97
+ // Everything else stays the same!
98
+ const result = await imagekit.upload({
99
+ file: buffer,
100
+ fileName: "photo.jpg",
101
+ folder: "/products",
102
+ });
103
+ console.log(result.url);
104
+ ```
105
+
106
+ ## Features
107
+
108
+ - **Token caching** — authenticates once, reuses token until expiry
109
+ - **Automatic retry** — exponential back-off for S3 upload failures
110
+ - **Recursive folder creation** — deeply nested paths just work
111
+ - **Multiple file input types** — Buffer, base64, file path
112
+ - **ImageKit-compatible response** — `url`, `fileId`, `name`
113
+ - **Zero dependencies** — uses native `fetch` (Node 18+)
114
+
115
+ ## License
116
+
117
+ MIT
@@ -1 +1 @@
1
- {"version":3,"file":"pixxo.d.ts","sourceRoot":"","sources":["../src/pixxo.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAGV,WAAW,EACX,aAAa,EACb,cAAc,EAEf,MAAM,SAAS,CAAC;AAajB,cAAM,KAAK;IACT,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,uBAAuB;IACvB,OAAO,CAAC,KAAK,CAAuB;IACpC,mDAAmD;IACnD,OAAO,CAAC,WAAW,CAAa;gBAEpB,MAAM,EAAE,WAAW;IAa/B;;OAEG;YACW,QAAQ;IAuBtB;;;;;;;;;;;;;OAaG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;YAiF/C,eAAe;IAyB7B;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;;OAGG;IACH,OAAO,CAAC,WAAW;CAGpB;AAED,SAAS,KAAK,CAAC"}
1
+ {"version":3,"file":"pixxo.d.ts","sourceRoot":"","sources":["../src/pixxo.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAGV,WAAW,EACX,aAAa,EACb,cAAc,EAEf,MAAM,SAAS,CAAC;AAajB,cAAM,KAAK;IACT,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,uBAAuB;IACvB,OAAO,CAAC,KAAK,CAAuB;IACpC,mDAAmD;IACnD,OAAO,CAAC,WAAW,CAAa;gBAEpB,MAAM,EAAE,WAAW;IAa/B;;OAEG;YACW,QAAQ;IAuBtB;;;;;;;;;;;;;OAaG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;YAoF/C,eAAe;IAyB7B;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;;OAGG;IACH,OAAO,CAAC,WAAW;CAGpB;AAED,SAAS,KAAK,CAAC"}
package/dist/pixxo.js CHANGED
@@ -68,7 +68,7 @@ class Pixxo {
68
68
  // ── Resolve file ─────────────────────────────────────────────────
69
69
  const resolvedFile = (0, utils_1.resolveUploadFile)(options.file);
70
70
  const buffer = resolvedFile.buffer;
71
- const fileName = options.fileName;
71
+ const fileName = (0, utils_1.ensureFileExtension)(options.fileName, resolvedFile.extension);
72
72
  const fileType = resolvedFile.mimeType || (0, utils_1.getMimeType)(fileName);
73
73
  const fileSize = buffer.length;
74
74
  // ── Normalise folder ─────────────────────────────────────────────
package/dist/pixxo.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pixxo.js","sourceRoot":"","sources":["../src/pixxo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pixxo.js","sourceRoot":"","sources":["../src/pixxo.ts"],"names":[],"mappings":"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"}
package/dist/utils.d.ts CHANGED
@@ -31,6 +31,17 @@ export declare function resolveUploadFile(file: Buffer | string): ResolvedUpload
31
31
  * - file path → read from disk
32
32
  */
33
33
  export declare function resolveFileToBuffer(file: Buffer | string): Buffer;
34
+ /**
35
+ * Ensure `fileName` ends with the correct extension. If the name already
36
+ * has a recognised extension, it is left untouched. Otherwise, the
37
+ * detected extension (if any) is appended.
38
+ *
39
+ * ensureFileExtension("avatar", "png") -> "avatar.png"
40
+ * ensureFileExtension("avatar.jpg", "png") -> "avatar.jpg"
41
+ * ensureFileExtension("my.course", "png") -> "my.course.png"
42
+ * ensureFileExtension("avatar", undefined) -> "avatar"
43
+ */
44
+ export declare function ensureFileExtension(fileName: string, detectedExtension?: string): string;
34
45
  /**
35
46
  * Convert ImageKit‑style folder (`/receipts`) to Pixxo style (`receipts`).
36
47
  * Also trims trailing slashes and collapses duplicate slashes.
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AA8CA;;;GAGG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGpD;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAwED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAeA;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,kBAAkB,CA+B3E;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAEjE;AAID;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAM3D;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AA6CA;;;GAGG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGpD;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAuED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAeA;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,kBAAkB,CA+B3E;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAEjE;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,MAAM,GACzB,MAAM,CAWR;AAID;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAM3D;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C"}
package/dist/utils.js CHANGED
@@ -37,6 +37,7 @@ exports.getMimeType = getMimeType;
37
37
  exports.decodeBase64Image = decodeBase64Image;
38
38
  exports.resolveUploadFile = resolveUploadFile;
39
39
  exports.resolveFileToBuffer = resolveFileToBuffer;
40
+ exports.ensureFileExtension = ensureFileExtension;
40
41
  exports.normalizeFolderPath = normalizeFolderPath;
41
42
  exports.sleep = sleep;
42
43
  const fs = __importStar(require("fs"));
@@ -195,6 +196,30 @@ function resolveUploadFile(file) {
195
196
  function resolveFileToBuffer(file) {
196
197
  return resolveUploadFile(file).buffer;
197
198
  }
199
+ /**
200
+ * Ensure `fileName` ends with the correct extension. If the name already
201
+ * has a recognised extension, it is left untouched. Otherwise, the
202
+ * detected extension (if any) is appended.
203
+ *
204
+ * ensureFileExtension("avatar", "png") -> "avatar.png"
205
+ * ensureFileExtension("avatar.jpg", "png") -> "avatar.jpg"
206
+ * ensureFileExtension("my.course", "png") -> "my.course.png"
207
+ * ensureFileExtension("avatar", undefined) -> "avatar"
208
+ */
209
+ function ensureFileExtension(fileName, detectedExtension) {
210
+ if (!fileName)
211
+ return fileName;
212
+ const existingExt = path.extname(fileName).toLowerCase();
213
+ // Only treat as "already has extension" if it's a known one
214
+ if (existingExt && MIME_MAP[existingExt])
215
+ return fileName;
216
+ if (!detectedExtension)
217
+ return fileName;
218
+ const ext = detectedExtension.replace(/^\.+/, "").toLowerCase();
219
+ if (!ext)
220
+ return fileName;
221
+ return `${fileName}.${ext}`;
222
+ }
198
223
  // ─── Folder path normalisation ─────────────────────────────────────────────
199
224
  /**
200
225
  * Convert ImageKit‑style folder (`/receipts`) to Pixxo style (`receipts`).
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,33 +1,33 @@
1
- {
2
- "name": "@sarangkale66/pixxo-sdk-node",
3
- "version": "1.0.2",
4
- "description": "Pixxo Node.js SDK — drop-in replacement for ImageKit SDK",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "files": [
8
- "dist"
9
- ],
10
- "scripts": {
11
- "build": "tsc",
12
- "prepublishOnly": "npm run build",
13
- "typecheck": "tsc --noEmit"
14
- },
15
- "keywords": [
16
- "pixxo",
17
- "imagekit",
18
- "image",
19
- "upload",
20
- "cdn",
21
- "asset-management",
22
- "s3"
23
- ],
24
- "author": "",
25
- "license": "MIT",
26
- "devDependencies": {
27
- "@types/node": "^20.12.0",
28
- "typescript": "^5.4.5"
29
- },
30
- "engines": {
31
- "node": ">=18.0.0"
32
- }
1
+ {
2
+ "name": "@sarangkale66/pixxo-sdk-node",
3
+ "version": "1.0.3",
4
+ "description": "Pixxo Node.js SDK — drop-in replacement for ImageKit SDK",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "files": [
8
+ "dist"
9
+ ],
10
+ "scripts": {
11
+ "build": "tsc",
12
+ "prepublishOnly": "npm run build",
13
+ "typecheck": "tsc --noEmit"
14
+ },
15
+ "keywords": [
16
+ "pixxo",
17
+ "imagekit",
18
+ "image",
19
+ "upload",
20
+ "cdn",
21
+ "asset-management",
22
+ "s3"
23
+ ],
24
+ "author": "",
25
+ "license": "MIT",
26
+ "devDependencies": {
27
+ "@types/node": "^20.12.0",
28
+ "typescript": "^5.4.5"
29
+ },
30
+ "engines": {
31
+ "node": ">=18.0.0"
32
+ }
33
33
  }