@jazzdev/dpd-local-sdk 1.0.6 → 1.0.8

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/dist/index.d.mts CHANGED
@@ -50,7 +50,7 @@ interface PricingConfig {
50
50
  };
51
51
  }
52
52
  interface LabelConfig {
53
- format: 'zpl' | 'clp' | 'html';
53
+ format: 'zpl' | 'clp' | 'epl' | 'html';
54
54
  printer: {
55
55
  model: string;
56
56
  dpi: number;
@@ -263,7 +263,7 @@ interface CreateShipmentResult {
263
263
  }
264
264
  interface GenerateLabelParams {
265
265
  shipmentId: string | number;
266
- labelFormat: 'zpl' | 'clp' | 'html';
266
+ labelFormat: 'zpl' | 'clp' | 'epl' | 'html';
267
267
  }
268
268
  interface GenerateLabelResult {
269
269
  success: boolean;
@@ -420,7 +420,7 @@ declare function generateConsignmentRef(orderId: string): string;
420
420
  declare function createCompleteShipment(orderId: string, params: Omit<CreateShipmentParams, 'orderId'>, config: DPDModuleConfig, dbAdapter: DatabaseAdapter, storageAdapter: StorageAdapter): Promise<CreateShipmentResult & {
421
421
  labelUrl?: string;
422
422
  }>;
423
- declare function generateAndUploadLabel(shipmentId: string | number, consignmentNumber: string, labelFormat: 'zpl' | 'clp' | 'html', credentials: DPDCredentials, storageAdapter: StorageAdapter): Promise<GenerateLabelResult>;
423
+ declare function generateAndUploadLabel(shipmentId: string | number, consignmentNumber: string, labelFormat: 'zpl' | 'clp' | 'epl' | 'html', credentials: DPDCredentials, storageAdapter: StorageAdapter): Promise<GenerateLabelResult>;
424
424
  declare function validateDeliveryAddress(params: ValidateAddressParams, credentials: DPDCredentials): Promise<ValidateAddressResult>;
425
425
  declare function saveAddress(userId: string, address: Omit<SavedAddress, 'id' | 'userId' | 'createdAt' | 'updatedAt'>, credentials: DPDCredentials, dbAdapter: DatabaseAdapter): Promise<string>;
426
426
  declare function getSavedAddresses(userId: string, dbAdapter: DatabaseAdapter): Promise<SavedAddress[]>;
@@ -428,7 +428,7 @@ declare function getSavedAddress(addressId: string, dbAdapter: DatabaseAdapter):
428
428
  declare function updateSavedAddress(addressId: string, data: Partial<SavedAddress>, dbAdapter: DatabaseAdapter): Promise<void>;
429
429
  declare function deleteSavedAddress(addressId: string, dbAdapter: DatabaseAdapter): Promise<void>;
430
430
  declare function getLabelUrl(consignmentNumber: string, storageAdapter: StorageAdapter): Promise<string | null>;
431
- declare function regenerateLabel(shipmentId: string | number, consignmentNumber: string, labelFormat: 'zpl' | 'clp' | 'html', credentials: DPDCredentials, storageAdapter: StorageAdapter): Promise<GenerateLabelResult>;
431
+ declare function regenerateLabel(shipmentId: string | number, consignmentNumber: string, labelFormat: 'zpl' | 'clp' | 'epl' | 'html', credentials: DPDCredentials, storageAdapter: StorageAdapter): Promise<GenerateLabelResult>;
432
432
  declare function testDPDConnection(credentials: DPDCredentials): Promise<{
433
433
  success: boolean;
434
434
  message: string;
package/dist/index.d.ts CHANGED
@@ -50,7 +50,7 @@ interface PricingConfig {
50
50
  };
51
51
  }
52
52
  interface LabelConfig {
53
- format: 'zpl' | 'clp' | 'html';
53
+ format: 'zpl' | 'clp' | 'epl' | 'html';
54
54
  printer: {
55
55
  model: string;
56
56
  dpi: number;
@@ -263,7 +263,7 @@ interface CreateShipmentResult {
263
263
  }
264
264
  interface GenerateLabelParams {
265
265
  shipmentId: string | number;
266
- labelFormat: 'zpl' | 'clp' | 'html';
266
+ labelFormat: 'zpl' | 'clp' | 'epl' | 'html';
267
267
  }
268
268
  interface GenerateLabelResult {
269
269
  success: boolean;
@@ -420,7 +420,7 @@ declare function generateConsignmentRef(orderId: string): string;
420
420
  declare function createCompleteShipment(orderId: string, params: Omit<CreateShipmentParams, 'orderId'>, config: DPDModuleConfig, dbAdapter: DatabaseAdapter, storageAdapter: StorageAdapter): Promise<CreateShipmentResult & {
421
421
  labelUrl?: string;
422
422
  }>;
423
- declare function generateAndUploadLabel(shipmentId: string | number, consignmentNumber: string, labelFormat: 'zpl' | 'clp' | 'html', credentials: DPDCredentials, storageAdapter: StorageAdapter): Promise<GenerateLabelResult>;
423
+ declare function generateAndUploadLabel(shipmentId: string | number, consignmentNumber: string, labelFormat: 'zpl' | 'clp' | 'epl' | 'html', credentials: DPDCredentials, storageAdapter: StorageAdapter): Promise<GenerateLabelResult>;
424
424
  declare function validateDeliveryAddress(params: ValidateAddressParams, credentials: DPDCredentials): Promise<ValidateAddressResult>;
425
425
  declare function saveAddress(userId: string, address: Omit<SavedAddress, 'id' | 'userId' | 'createdAt' | 'updatedAt'>, credentials: DPDCredentials, dbAdapter: DatabaseAdapter): Promise<string>;
426
426
  declare function getSavedAddresses(userId: string, dbAdapter: DatabaseAdapter): Promise<SavedAddress[]>;
@@ -428,7 +428,7 @@ declare function getSavedAddress(addressId: string, dbAdapter: DatabaseAdapter):
428
428
  declare function updateSavedAddress(addressId: string, data: Partial<SavedAddress>, dbAdapter: DatabaseAdapter): Promise<void>;
429
429
  declare function deleteSavedAddress(addressId: string, dbAdapter: DatabaseAdapter): Promise<void>;
430
430
  declare function getLabelUrl(consignmentNumber: string, storageAdapter: StorageAdapter): Promise<string | null>;
431
- declare function regenerateLabel(shipmentId: string | number, consignmentNumber: string, labelFormat: 'zpl' | 'clp' | 'html', credentials: DPDCredentials, storageAdapter: StorageAdapter): Promise<GenerateLabelResult>;
431
+ declare function regenerateLabel(shipmentId: string | number, consignmentNumber: string, labelFormat: 'zpl' | 'clp' | 'epl' | 'html', credentials: DPDCredentials, storageAdapter: StorageAdapter): Promise<GenerateLabelResult>;
432
432
  declare function testDPDConnection(credentials: DPDCredentials): Promise<{
433
433
  success: boolean;
434
434
  message: string;
package/dist/index.js CHANGED
@@ -329,6 +329,36 @@ async function authenticatedRequest(credentials, options) {
329
329
  `Label request failed: ${response.status} ${response.statusText}`
330
330
  );
331
331
  }
332
+ try {
333
+ const parsed = JSON.parse(raw);
334
+ if (parsed?.error || parsed?.data === null) {
335
+ const errorObj = parsed?.error;
336
+ let errorMessage = "Label generation failed";
337
+ let errorCode = "UNKNOWN";
338
+ if (errorObj) {
339
+ if (errorObj.errorMessage) {
340
+ errorMessage = errorObj.errorMessage;
341
+ errorCode = errorObj.errorCode || errorObj.name || "UNKNOWN";
342
+ } else if (errorObj.name) {
343
+ errorMessage = errorObj.name;
344
+ errorCode = errorObj.name;
345
+ if (Array.isArray(errorObj.errors) && errorObj.errors.length > 0) {
346
+ const detailedError = errorObj.errors[0];
347
+ errorMessage = detailedError.errorMessage || detailedError.message || errorMessage;
348
+ errorCode = detailedError.errorCode || errorCode;
349
+ }
350
+ }
351
+ }
352
+ throw new Error(`DPD API Error ${errorCode}: ${errorMessage}`);
353
+ }
354
+ if (parsed?.data) {
355
+ return parsed.data;
356
+ }
357
+ } catch (parseError) {
358
+ if (parseError instanceof Error && parseError.message.startsWith("DPD API Error")) {
359
+ throw parseError;
360
+ }
361
+ }
332
362
  return raw;
333
363
  }
334
364
  try {
@@ -414,6 +444,8 @@ function getAcceptHeader(format) {
414
444
  return "text/vnd.zebra-zpl";
415
445
  case "clp":
416
446
  return "text/vnd.citizen-clp";
447
+ case "epl":
448
+ return "text/vnd.eltron-epl";
417
449
  default:
418
450
  return "text/vnd.zebra-zpl";
419
451
  }
package/dist/index.mjs CHANGED
@@ -241,6 +241,36 @@ async function authenticatedRequest(credentials, options) {
241
241
  `Label request failed: ${response.status} ${response.statusText}`
242
242
  );
243
243
  }
244
+ try {
245
+ const parsed = JSON.parse(raw);
246
+ if (parsed?.error || parsed?.data === null) {
247
+ const errorObj = parsed?.error;
248
+ let errorMessage = "Label generation failed";
249
+ let errorCode = "UNKNOWN";
250
+ if (errorObj) {
251
+ if (errorObj.errorMessage) {
252
+ errorMessage = errorObj.errorMessage;
253
+ errorCode = errorObj.errorCode || errorObj.name || "UNKNOWN";
254
+ } else if (errorObj.name) {
255
+ errorMessage = errorObj.name;
256
+ errorCode = errorObj.name;
257
+ if (Array.isArray(errorObj.errors) && errorObj.errors.length > 0) {
258
+ const detailedError = errorObj.errors[0];
259
+ errorMessage = detailedError.errorMessage || detailedError.message || errorMessage;
260
+ errorCode = detailedError.errorCode || errorCode;
261
+ }
262
+ }
263
+ }
264
+ throw new Error(`DPD API Error ${errorCode}: ${errorMessage}`);
265
+ }
266
+ if (parsed?.data) {
267
+ return parsed.data;
268
+ }
269
+ } catch (parseError) {
270
+ if (parseError instanceof Error && parseError.message.startsWith("DPD API Error")) {
271
+ throw parseError;
272
+ }
273
+ }
244
274
  return raw;
245
275
  }
246
276
  try {
@@ -326,6 +356,8 @@ function getAcceptHeader(format) {
326
356
  return "text/vnd.zebra-zpl";
327
357
  case "clp":
328
358
  return "text/vnd.citizen-clp";
359
+ case "epl":
360
+ return "text/vnd.eltron-epl";
329
361
  default:
330
362
  return "text/vnd.zebra-zpl";
331
363
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jazzdev/dpd-local-sdk",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "TypeScript SDK for DPD Local shipping API integration - database-agnostic and framework-independent",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -48,10 +48,11 @@
48
48
  "url": "https://github.com/TheJazzDev/dpd-local-sdk.git/issues"
49
49
  },
50
50
  "homepage": "https://github.com/TheJazzDev/dpd-local-sdk.git#readme",
51
- "peerDependencies": {},
52
51
  "devDependencies": {
53
52
  "@types/node": "^20.0.0",
53
+ "dotenv": "^17.2.3",
54
54
  "tsup": "^8.0.0",
55
+ "tsx": "^4.21.0",
55
56
  "typescript": "^5.3.0"
56
57
  },
57
58
  "engines": {