listbee 0.7.1 → 0.8.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.
Files changed (60) hide show
  1. package/README.md +67 -17
  2. package/dist/cjs/client.d.ts +4 -0
  3. package/dist/cjs/client.js +3 -0
  4. package/dist/cjs/client.js.map +1 -1
  5. package/dist/cjs/deliverable.d.ts +57 -0
  6. package/dist/cjs/deliverable.js +90 -0
  7. package/dist/cjs/deliverable.js.map +1 -0
  8. package/dist/cjs/errors.d.ts +11 -0
  9. package/dist/cjs/errors.js +16 -1
  10. package/dist/cjs/errors.js.map +1 -1
  11. package/dist/cjs/generated/api-types.d.ts +236 -2
  12. package/dist/cjs/generated/enums.d.ts +1 -0
  13. package/dist/cjs/generated/enums.js +1 -0
  14. package/dist/cjs/generated/enums.js.map +1 -1
  15. package/dist/cjs/generated/operations.d.ts +21 -0
  16. package/dist/cjs/generated/operations.js +3 -0
  17. package/dist/cjs/generated/operations.js.map +1 -1
  18. package/dist/cjs/generated/types.d.ts +2 -0
  19. package/dist/cjs/index.d.ts +2 -1
  20. package/dist/cjs/index.js +5 -1
  21. package/dist/cjs/index.js.map +1 -1
  22. package/dist/cjs/resources/listings.d.ts +43 -4
  23. package/dist/cjs/resources/listings.js +77 -3
  24. package/dist/cjs/resources/listings.js.map +1 -1
  25. package/dist/cjs/resources/orders.d.ts +9 -8
  26. package/dist/cjs/resources/orders.js +25 -8
  27. package/dist/cjs/resources/orders.js.map +1 -1
  28. package/dist/cjs/resources/utility.d.ts +15 -0
  29. package/dist/cjs/resources/utility.js +22 -0
  30. package/dist/cjs/resources/utility.js.map +1 -0
  31. package/dist/esm/client.d.ts +4 -0
  32. package/dist/esm/client.js +3 -0
  33. package/dist/esm/client.js.map +1 -1
  34. package/dist/esm/deliverable.d.ts +57 -0
  35. package/dist/esm/deliverable.js +86 -0
  36. package/dist/esm/deliverable.js.map +1 -0
  37. package/dist/esm/errors.d.ts +11 -0
  38. package/dist/esm/errors.js +14 -0
  39. package/dist/esm/errors.js.map +1 -1
  40. package/dist/esm/generated/api-types.d.ts +236 -2
  41. package/dist/esm/generated/enums.d.ts +1 -0
  42. package/dist/esm/generated/enums.js +1 -0
  43. package/dist/esm/generated/enums.js.map +1 -1
  44. package/dist/esm/generated/operations.d.ts +21 -0
  45. package/dist/esm/generated/operations.js +3 -0
  46. package/dist/esm/generated/operations.js.map +1 -1
  47. package/dist/esm/generated/types.d.ts +2 -0
  48. package/dist/esm/index.d.ts +2 -1
  49. package/dist/esm/index.js +3 -1
  50. package/dist/esm/index.js.map +1 -1
  51. package/dist/esm/resources/listings.d.ts +43 -4
  52. package/dist/esm/resources/listings.js +77 -3
  53. package/dist/esm/resources/listings.js.map +1 -1
  54. package/dist/esm/resources/orders.d.ts +9 -8
  55. package/dist/esm/resources/orders.js +25 -8
  56. package/dist/esm/resources/orders.js.map +1 -1
  57. package/dist/esm/resources/utility.d.ts +15 -0
  58. package/dist/esm/resources/utility.js +18 -0
  59. package/dist/esm/resources/utility.js.map +1 -0
  60. package/package.json +1 -1
@@ -4,6 +4,7 @@
4
4
  * POST /v1/orders/{id}/refund.
5
5
  */
6
6
  import type { BaseClient, CursorPage } from '../base-client.js';
7
+ import { Deliverable } from '../deliverable.js';
7
8
  import type { OrderResponse, ListOrdersParams, DeliverOrderParams, ShipOrderParams } from '../generated/types.js';
8
9
  import type { RequestOptions } from '../types/shared.js';
9
10
  export declare class OrdersResource {
@@ -24,17 +25,17 @@ export declare class OrdersResource {
24
25
  */
25
26
  get(orderId: string): Promise<OrderResponse>;
26
27
  /**
27
- * Deliver an order push deliverables and transition to FULFILLED.
28
+ * Deliver an order with digital content.
29
+ * Accepts Deliverable objects or raw dicts. Files uploaded transparently.
28
30
  *
29
- * For external fulfillment listings, this allows your app to push
30
- * generated content back to ListBee for delivery.
31
- *
32
- * @param orderId - The order ID.
33
- * @param params - Delivery parameters including the deliverables array.
31
+ * @param orderId - The order's unique identifier.
32
+ * @param params - Deliverables array.
34
33
  * @param options - Request options.
35
- * @returns The updated OrderResponse.
34
+ * @returns The delivered OrderResponse.
36
35
  */
37
- deliver(orderId: string, params: DeliverOrderParams, options?: RequestOptions): Promise<OrderResponse>;
36
+ deliver(orderId: string, params: DeliverOrderParams | {
37
+ deliverables: (Deliverable | Record<string, unknown>)[];
38
+ }, options?: RequestOptions): Promise<OrderResponse>;
38
39
  /**
39
40
  * Mark an order as shipped with tracking information.
40
41
  *
@@ -3,6 +3,8 @@
3
3
  * POST /v1/orders/{id}/deliver, POST /v1/orders/{id}/ship,
4
4
  * POST /v1/orders/{id}/refund.
5
5
  */
6
+ import { Deliverable } from '../deliverable.js';
7
+ import { FilesResource } from './files.js';
6
8
  export class OrdersResource {
7
9
  constructor(_client) {
8
10
  this._client = _client;
@@ -44,18 +46,33 @@ export class OrdersResource {
44
46
  return (await response.json());
45
47
  }
46
48
  /**
47
- * Deliver an order push deliverables and transition to FULFILLED.
49
+ * Deliver an order with digital content.
50
+ * Accepts Deliverable objects or raw dicts. Files uploaded transparently.
48
51
  *
49
- * For external fulfillment listings, this allows your app to push
50
- * generated content back to ListBee for delivery.
51
- *
52
- * @param orderId - The order ID.
53
- * @param params - Delivery parameters including the deliverables array.
52
+ * @param orderId - The order's unique identifier.
53
+ * @param params - Deliverables array.
54
54
  * @param options - Request options.
55
- * @returns The updated OrderResponse.
55
+ * @returns The delivered OrderResponse.
56
56
  */
57
57
  async deliver(orderId, params, options) {
58
- const response = await this._client.post(`/v1/orders/${orderId}/deliver`, params, options);
58
+ const files = new FilesResource(this._client);
59
+ const resolved = [];
60
+ for (const d of params.deliverables) {
61
+ if (d instanceof Deliverable) {
62
+ let token;
63
+ if (d.needsUpload) {
64
+ const fileResp = await files.upload(d.toUploadData(), options);
65
+ token = fileResp.id;
66
+ }
67
+ resolved.push(d.toApiBody(token));
68
+ }
69
+ else {
70
+ resolved.push(d);
71
+ }
72
+ }
73
+ const response = await this._client.post(`/v1/orders/${orderId}/deliver`, {
74
+ deliverables: resolved,
75
+ }, options);
59
76
  return (await response.json());
60
77
  }
61
78
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"orders.js","sourceRoot":"","sources":["../../../src/resources/orders.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,MAAM,OAAO,cAAc;IACzB,YAA6B,OAAmB;QAAnB,YAAO,GAAP,OAAO,CAAY;IAAG,CAAC;IAEpD;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,SAA2B,EAAE;QACtC,MAAM,WAAW,GAA8C;YAC7D,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;SAC1B,CAAC;QACF,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;YAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;QACjE,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI;YAAE,WAAW,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;QACpE,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI;YAAE,WAAW,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC;QAChF,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;YACjC,WAAW,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;QACtD,CAAC;QACD,IAAI,MAAM,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;YAClC,WAAW,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC;QACxD,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;YAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;QAEjE,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAgB,YAAY,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAqB,CAAC,CAAC;IACzG,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,CAAC,OAAe;QACvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC;IAClD,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,MAA0B,EAAE,OAAwB;QACjF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,OAAO,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAC3F,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC;IAClD,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,IAAI,CAAC,OAAe,EAAE,MAAuB,EAAE,OAAwB;QAC3E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,OAAO,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACxF,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC;IAClD,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,OAAwB;QACpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,OAAO,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAC7F,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC;IAClD,CAAC;CAEF"}
1
+ {"version":3,"file":"orders.js","sourceRoot":"","sources":["../../../src/resources/orders.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { BaseClient } from "../base-client.js";
2
+ import type { PingResponse } from "../generated/types.js";
3
+ /**
4
+ * Utility resource — connectivity checks and diagnostics.
5
+ */
6
+ export declare class Utility {
7
+ private readonly _client;
8
+ constructor(_client: BaseClient);
9
+ /**
10
+ * Check API connectivity and verify the API key is valid.
11
+ *
12
+ * @returns A PingResponse with status ok if the API is reachable.
13
+ */
14
+ ping(): Promise<PingResponse>;
15
+ }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Utility resource — connectivity checks and diagnostics.
3
+ */
4
+ export class Utility {
5
+ constructor(_client) {
6
+ this._client = _client;
7
+ }
8
+ /**
9
+ * Check API connectivity and verify the API key is valid.
10
+ *
11
+ * @returns A PingResponse with status ok if the API is reachable.
12
+ */
13
+ async ping() {
14
+ const response = await this._client.get('/v1/ping');
15
+ return (await response.json());
16
+ }
17
+ }
18
+ //# sourceMappingURL=utility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utility.js","sourceRoot":"","sources":["../../../src/resources/utility.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,OAAO,OAAO;IAClB,YAA6B,OAAmB;QAAnB,YAAO,GAAP,OAAO,CAAY;IAAG,CAAC;IAEpD;;;;OAIG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACpD,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAiB,CAAC;IACjD,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "listbee",
3
- "version": "0.7.1",
3
+ "version": "0.8.1",
4
4
  "description": "Official TypeScript SDK for the ListBee API — one API call to sell and deliver digital content.",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://listbee.so",