@surgeapi/node 0.34.0 → 0.35.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 (97) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +31 -0
  3. package/client.d.mts +12 -6
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +12 -6
  6. package/client.d.ts.map +1 -1
  7. package/client.js +11 -2
  8. package/client.js.map +1 -1
  9. package/client.mjs +14 -5
  10. package/client.mjs.map +1 -1
  11. package/core/pagination.d.mts +60 -0
  12. package/core/pagination.d.mts.map +1 -0
  13. package/core/pagination.d.ts +60 -0
  14. package/core/pagination.d.ts.map +1 -0
  15. package/core/pagination.js +115 -0
  16. package/core/pagination.js.map +1 -0
  17. package/core/pagination.mjs +109 -0
  18. package/core/pagination.mjs.map +1 -0
  19. package/index.d.mts +1 -0
  20. package/index.d.mts.map +1 -1
  21. package/index.d.ts +1 -0
  22. package/index.d.ts.map +1 -1
  23. package/index.js +3 -1
  24. package/index.js.map +1 -1
  25. package/index.mjs +1 -0
  26. package/index.mjs.map +1 -1
  27. package/internal/parse.d.mts.map +1 -1
  28. package/internal/parse.d.ts.map +1 -1
  29. package/internal/parse.js +5 -0
  30. package/internal/parse.js.map +1 -1
  31. package/internal/parse.mjs +5 -0
  32. package/internal/parse.mjs.map +1 -1
  33. package/internal/tslib.js +17 -17
  34. package/package.json +11 -1
  35. package/pagination.d.mts +2 -0
  36. package/pagination.d.mts.map +1 -0
  37. package/pagination.d.ts +2 -0
  38. package/pagination.d.ts.map +1 -0
  39. package/pagination.js +6 -0
  40. package/pagination.js.map +1 -0
  41. package/pagination.mjs +2 -0
  42. package/pagination.mjs.map +1 -0
  43. package/resources/blasts.d.mts +4 -4
  44. package/resources/blasts.d.mts.map +1 -1
  45. package/resources/blasts.d.ts +4 -4
  46. package/resources/blasts.d.ts.map +1 -1
  47. package/resources/contacts.d.mts +19 -1
  48. package/resources/contacts.d.mts.map +1 -1
  49. package/resources/contacts.d.ts +19 -1
  50. package/resources/contacts.d.ts.map +1 -1
  51. package/resources/contacts.js +20 -0
  52. package/resources/contacts.js.map +1 -1
  53. package/resources/contacts.mjs +20 -0
  54. package/resources/contacts.mjs.map +1 -1
  55. package/resources/index.d.mts +3 -3
  56. package/resources/index.d.mts.map +1 -1
  57. package/resources/index.d.ts +3 -3
  58. package/resources/index.d.ts.map +1 -1
  59. package/resources/index.js.map +1 -1
  60. package/resources/index.mjs +3 -3
  61. package/resources/index.mjs.map +1 -1
  62. package/resources/messages.d.mts +20 -2
  63. package/resources/messages.d.mts.map +1 -1
  64. package/resources/messages.d.ts +20 -2
  65. package/resources/messages.d.ts.map +1 -1
  66. package/resources/messages.js +20 -0
  67. package/resources/messages.js.map +1 -1
  68. package/resources/messages.mjs +20 -0
  69. package/resources/messages.mjs.map +1 -1
  70. package/resources/phone-numbers.d.mts +19 -1
  71. package/resources/phone-numbers.d.mts.map +1 -1
  72. package/resources/phone-numbers.d.ts +19 -1
  73. package/resources/phone-numbers.d.ts.map +1 -1
  74. package/resources/phone-numbers.js +20 -0
  75. package/resources/phone-numbers.js.map +1 -1
  76. package/resources/phone-numbers.mjs +20 -0
  77. package/resources/phone-numbers.mjs.map +1 -1
  78. package/resources/webhooks.d.mts +4 -4
  79. package/resources/webhooks.d.mts.map +1 -1
  80. package/resources/webhooks.d.ts +4 -4
  81. package/resources/webhooks.d.ts.map +1 -1
  82. package/src/client.ts +60 -6
  83. package/src/core/pagination.ts +176 -0
  84. package/src/index.ts +1 -0
  85. package/src/internal/parse.ts +6 -0
  86. package/src/pagination.ts +2 -0
  87. package/src/resources/blasts.ts +4 -4
  88. package/src/resources/contacts.ts +31 -0
  89. package/src/resources/index.ts +22 -3
  90. package/src/resources/messages.ts +36 -2
  91. package/src/resources/phone-numbers.ts +35 -1
  92. package/src/resources/webhooks.ts +4 -4
  93. package/src/version.ts +1 -1
  94. package/version.d.mts +1 -1
  95. package/version.d.ts +1 -1
  96. package/version.js +1 -1
  97. package/version.mjs +1 -1
@@ -0,0 +1,60 @@
1
+ import { FinalRequestOptions } from "../internal/request-options.js";
2
+ import { type Surge } from "../client.js";
3
+ import { APIPromise } from "./api-promise.js";
4
+ import { type APIResponseProps } from "../internal/parse.js";
5
+ export type PageRequestOptions = Pick<FinalRequestOptions, 'query' | 'headers' | 'body' | 'path' | 'method'>;
6
+ export declare abstract class AbstractPage<Item> implements AsyncIterable<Item> {
7
+ #private;
8
+ protected options: FinalRequestOptions;
9
+ protected response: Response;
10
+ protected body: unknown;
11
+ constructor(client: Surge, response: Response, body: unknown, options: FinalRequestOptions);
12
+ abstract nextPageRequestOptions(): PageRequestOptions | null;
13
+ abstract getPaginatedItems(): Item[];
14
+ hasNextPage(): boolean;
15
+ getNextPage(): Promise<this>;
16
+ iterPages(): AsyncGenerator<this>;
17
+ [Symbol.asyncIterator](): AsyncGenerator<Item>;
18
+ }
19
+ /**
20
+ * This subclass of Promise will resolve to an instantiated Page once the request completes.
21
+ *
22
+ * It also implements AsyncIterable to allow auto-paginating iteration on an unawaited list call, eg:
23
+ *
24
+ * for await (const item of client.items.list()) {
25
+ * console.log(item)
26
+ * }
27
+ */
28
+ export declare class PagePromise<PageClass extends AbstractPage<Item>, Item = ReturnType<PageClass['getPaginatedItems']>[number]> extends APIPromise<PageClass> implements AsyncIterable<Item> {
29
+ constructor(client: Surge, request: Promise<APIResponseProps>, Page: new (...args: ConstructorParameters<typeof AbstractPage>) => PageClass);
30
+ /**
31
+ * Allow auto-paginating iteration on an unawaited list call, eg:
32
+ *
33
+ * for await (const item of client.items.list()) {
34
+ * console.log(item)
35
+ * }
36
+ */
37
+ [Symbol.asyncIterator](): AsyncGenerator<Item>;
38
+ }
39
+ export interface CursorResponse<Item> {
40
+ data: Array<Item>;
41
+ pagination: CursorResponse.Pagination;
42
+ }
43
+ export declare namespace CursorResponse {
44
+ interface Pagination {
45
+ next_cursor?: string;
46
+ previous_cursor?: string;
47
+ }
48
+ }
49
+ export interface CursorParams {
50
+ after?: string;
51
+ before?: string;
52
+ }
53
+ export declare class Cursor<Item> extends AbstractPage<Item> implements CursorResponse<Item> {
54
+ data: Array<Item>;
55
+ pagination: CursorResponse.Pagination;
56
+ constructor(client: Surge, response: Response, body: CursorResponse<Item>, options: FinalRequestOptions);
57
+ getPaginatedItems(): Item[];
58
+ nextPageRequestOptions(): PageRequestOptions | null;
59
+ }
60
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/core/pagination.ts"],"names":[],"mappings":"OAGO,EAAE,mBAAmB,EAAE;OAEvB,EAAE,KAAK,KAAK,EAAE;OACd,EAAE,UAAU,EAAE;OACd,EAAE,KAAK,gBAAgB,EAAE;AAGhC,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,mBAAmB,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,CAAC;AAE7G,8BAAsB,YAAY,CAAC,IAAI,CAAE,YAAW,aAAa,CAAC,IAAI,CAAC;;IAErE,SAAS,CAAC,OAAO,EAAE,mBAAmB,CAAC;IAEvC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC;gBAEZ,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB;IAO1F,QAAQ,CAAC,sBAAsB,IAAI,kBAAkB,GAAG,IAAI;IAE5D,QAAQ,CAAC,iBAAiB,IAAI,IAAI,EAAE;IAEpC,WAAW,IAAI,OAAO;IAMhB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAW3B,SAAS,IAAI,cAAc,CAAC,IAAI,CAAC;IASjC,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC;CAOtD;AAED;;;;;;;;GAQG;AACH,qBAAa,WAAW,CACpB,SAAS,SAAS,YAAY,CAAC,IAAI,CAAC,EACpC,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,CAE3D,SAAQ,UAAU,CAAC,SAAS,CAC5B,YAAW,aAAa,CAAC,IAAI,CAAC;gBAG5B,MAAM,EAAE,KAAK,EACb,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAClC,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,qBAAqB,CAAC,OAAO,YAAY,CAAC,KAAK,SAAS;IAU9E;;;;;;OAMG;IACI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC;CAMtD;AAED,MAAM,WAAW,cAAc,CAAC,IAAI;IAClC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAElB,UAAU,EAAE,cAAc,CAAC,UAAU,CAAC;CACvC;AAED,yBAAiB,cAAc,CAAC;IAC9B,UAAiB,UAAU;QACzB,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B;CACF;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,MAAM,CAAC,IAAI,CAAE,SAAQ,YAAY,CAAC,IAAI,CAAE,YAAW,cAAc,CAAC,IAAI,CAAC;IAClF,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAElB,UAAU,EAAE,cAAc,CAAC,UAAU,CAAC;gBAE1B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,mBAAmB;IAOvG,iBAAiB,IAAI,IAAI,EAAE;IAI3B,sBAAsB,IAAI,kBAAkB,GAAG,IAAI;CA8BpD"}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ var _AbstractPage_client;
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.Cursor = exports.PagePromise = exports.AbstractPage = void 0;
6
+ const tslib_1 = require("../internal/tslib.js");
7
+ const error_1 = require("./error.js");
8
+ const parse_1 = require("../internal/parse.js");
9
+ const api_promise_1 = require("./api-promise.js");
10
+ const values_1 = require("../internal/utils/values.js");
11
+ class AbstractPage {
12
+ constructor(client, response, body, options) {
13
+ _AbstractPage_client.set(this, void 0);
14
+ tslib_1.__classPrivateFieldSet(this, _AbstractPage_client, client, "f");
15
+ this.options = options;
16
+ this.response = response;
17
+ this.body = body;
18
+ }
19
+ hasNextPage() {
20
+ const items = this.getPaginatedItems();
21
+ if (!items.length)
22
+ return false;
23
+ return this.nextPageRequestOptions() != null;
24
+ }
25
+ async getNextPage() {
26
+ const nextOptions = this.nextPageRequestOptions();
27
+ if (!nextOptions) {
28
+ throw new error_1.SurgeError('No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.');
29
+ }
30
+ return await tslib_1.__classPrivateFieldGet(this, _AbstractPage_client, "f").requestAPIList(this.constructor, nextOptions);
31
+ }
32
+ async *iterPages() {
33
+ let page = this;
34
+ yield page;
35
+ while (page.hasNextPage()) {
36
+ page = await page.getNextPage();
37
+ yield page;
38
+ }
39
+ }
40
+ async *[(_AbstractPage_client = new WeakMap(), Symbol.asyncIterator)]() {
41
+ for await (const page of this.iterPages()) {
42
+ for (const item of page.getPaginatedItems()) {
43
+ yield item;
44
+ }
45
+ }
46
+ }
47
+ }
48
+ exports.AbstractPage = AbstractPage;
49
+ /**
50
+ * This subclass of Promise will resolve to an instantiated Page once the request completes.
51
+ *
52
+ * It also implements AsyncIterable to allow auto-paginating iteration on an unawaited list call, eg:
53
+ *
54
+ * for await (const item of client.items.list()) {
55
+ * console.log(item)
56
+ * }
57
+ */
58
+ class PagePromise extends api_promise_1.APIPromise {
59
+ constructor(client, request, Page) {
60
+ super(client, request, async (client, props) => new Page(client, props.response, await (0, parse_1.defaultParseResponse)(client, props), props.options));
61
+ }
62
+ /**
63
+ * Allow auto-paginating iteration on an unawaited list call, eg:
64
+ *
65
+ * for await (const item of client.items.list()) {
66
+ * console.log(item)
67
+ * }
68
+ */
69
+ async *[Symbol.asyncIterator]() {
70
+ const page = await this;
71
+ for await (const item of page) {
72
+ yield item;
73
+ }
74
+ }
75
+ }
76
+ exports.PagePromise = PagePromise;
77
+ class Cursor extends AbstractPage {
78
+ constructor(client, response, body, options) {
79
+ super(client, response, body, options);
80
+ this.data = body.data || [];
81
+ this.pagination = body.pagination || {};
82
+ }
83
+ getPaginatedItems() {
84
+ return this.data ?? [];
85
+ }
86
+ nextPageRequestOptions() {
87
+ if (this.options.query?.['before']) {
88
+ // in reverse
89
+ const previous_cursor = this.pagination?.previous_cursor;
90
+ if (!previous_cursor) {
91
+ return null;
92
+ }
93
+ return {
94
+ ...this.options,
95
+ query: {
96
+ ...(0, values_1.maybeObj)(this.options.query),
97
+ before: previous_cursor,
98
+ },
99
+ };
100
+ }
101
+ const cursor = this.pagination?.next_cursor;
102
+ if (!cursor) {
103
+ return null;
104
+ }
105
+ return {
106
+ ...this.options,
107
+ query: {
108
+ ...(0, values_1.maybeObj)(this.options.query),
109
+ after: cursor,
110
+ },
111
+ };
112
+ }
113
+ }
114
+ exports.Cursor = Cursor;
115
+ //# sourceMappingURL=pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/core/pagination.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,109 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ var _AbstractPage_client;
3
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "../internal/tslib.mjs";
4
+ import { SurgeError } from "./error.mjs";
5
+ import { defaultParseResponse } from "../internal/parse.mjs";
6
+ import { APIPromise } from "./api-promise.mjs";
7
+ import { maybeObj } from "../internal/utils/values.mjs";
8
+ export class AbstractPage {
9
+ constructor(client, response, body, options) {
10
+ _AbstractPage_client.set(this, void 0);
11
+ __classPrivateFieldSet(this, _AbstractPage_client, client, "f");
12
+ this.options = options;
13
+ this.response = response;
14
+ this.body = body;
15
+ }
16
+ hasNextPage() {
17
+ const items = this.getPaginatedItems();
18
+ if (!items.length)
19
+ return false;
20
+ return this.nextPageRequestOptions() != null;
21
+ }
22
+ async getNextPage() {
23
+ const nextOptions = this.nextPageRequestOptions();
24
+ if (!nextOptions) {
25
+ throw new SurgeError('No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.');
26
+ }
27
+ return await __classPrivateFieldGet(this, _AbstractPage_client, "f").requestAPIList(this.constructor, nextOptions);
28
+ }
29
+ async *iterPages() {
30
+ let page = this;
31
+ yield page;
32
+ while (page.hasNextPage()) {
33
+ page = await page.getNextPage();
34
+ yield page;
35
+ }
36
+ }
37
+ async *[(_AbstractPage_client = new WeakMap(), Symbol.asyncIterator)]() {
38
+ for await (const page of this.iterPages()) {
39
+ for (const item of page.getPaginatedItems()) {
40
+ yield item;
41
+ }
42
+ }
43
+ }
44
+ }
45
+ /**
46
+ * This subclass of Promise will resolve to an instantiated Page once the request completes.
47
+ *
48
+ * It also implements AsyncIterable to allow auto-paginating iteration on an unawaited list call, eg:
49
+ *
50
+ * for await (const item of client.items.list()) {
51
+ * console.log(item)
52
+ * }
53
+ */
54
+ export class PagePromise extends APIPromise {
55
+ constructor(client, request, Page) {
56
+ super(client, request, async (client, props) => new Page(client, props.response, await defaultParseResponse(client, props), props.options));
57
+ }
58
+ /**
59
+ * Allow auto-paginating iteration on an unawaited list call, eg:
60
+ *
61
+ * for await (const item of client.items.list()) {
62
+ * console.log(item)
63
+ * }
64
+ */
65
+ async *[Symbol.asyncIterator]() {
66
+ const page = await this;
67
+ for await (const item of page) {
68
+ yield item;
69
+ }
70
+ }
71
+ }
72
+ export class Cursor extends AbstractPage {
73
+ constructor(client, response, body, options) {
74
+ super(client, response, body, options);
75
+ this.data = body.data || [];
76
+ this.pagination = body.pagination || {};
77
+ }
78
+ getPaginatedItems() {
79
+ return this.data ?? [];
80
+ }
81
+ nextPageRequestOptions() {
82
+ if (this.options.query?.['before']) {
83
+ // in reverse
84
+ const previous_cursor = this.pagination?.previous_cursor;
85
+ if (!previous_cursor) {
86
+ return null;
87
+ }
88
+ return {
89
+ ...this.options,
90
+ query: {
91
+ ...maybeObj(this.options.query),
92
+ before: previous_cursor,
93
+ },
94
+ };
95
+ }
96
+ const cursor = this.pagination?.next_cursor;
97
+ if (!cursor) {
98
+ return null;
99
+ }
100
+ return {
101
+ ...this.options,
102
+ query: {
103
+ ...maybeObj(this.options.query),
104
+ after: cursor,
105
+ },
106
+ };
107
+ }
108
+ }
109
+ //# sourceMappingURL=pagination.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.mjs","sourceRoot":"","sources":["../src/core/pagination.ts"],"names":[],"mappings":"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"}
package/index.d.mts CHANGED
@@ -2,5 +2,6 @@ export { Surge as default } from "./client.mjs";
2
2
  export { type Uploadable, toFile } from "./core/uploads.mjs";
3
3
  export { APIPromise } from "./core/api-promise.mjs";
4
4
  export { Surge, type ClientOptions } from "./client.mjs";
5
+ export { PagePromise } from "./core/pagination.mjs";
5
6
  export { SurgeError, APIError, APIConnectionError, APIConnectionTimeoutError, APIUserAbortError, NotFoundError, ConflictError, RateLimitError, BadRequestError, AuthenticationError, InternalServerError, PermissionDeniedError, UnprocessableEntityError, } from "./core/error.mjs";
6
7
  //# sourceMappingURL=index.d.mts.map
package/index.d.mts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAEO,EAAE,KAAK,IAAI,OAAO,EAAE;OAEpB,EAAE,KAAK,UAAU,EAAE,MAAM,EAAE;OAC3B,EAAE,UAAU,EAAE;OACd,EAAE,KAAK,EAAE,KAAK,aAAa,EAAE;OAC7B,EACL,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,GACzB"}
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAEO,EAAE,KAAK,IAAI,OAAO,EAAE;OAEpB,EAAE,KAAK,UAAU,EAAE,MAAM,EAAE;OAC3B,EAAE,UAAU,EAAE;OACd,EAAE,KAAK,EAAE,KAAK,aAAa,EAAE;OAC7B,EAAE,WAAW,EAAE;OACf,EACL,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,GACzB"}
package/index.d.ts CHANGED
@@ -2,5 +2,6 @@ export { Surge as default } from "./client.js";
2
2
  export { type Uploadable, toFile } from "./core/uploads.js";
3
3
  export { APIPromise } from "./core/api-promise.js";
4
4
  export { Surge, type ClientOptions } from "./client.js";
5
+ export { PagePromise } from "./core/pagination.js";
5
6
  export { SurgeError, APIError, APIConnectionError, APIConnectionTimeoutError, APIUserAbortError, NotFoundError, ConflictError, RateLimitError, BadRequestError, AuthenticationError, InternalServerError, PermissionDeniedError, UnprocessableEntityError, } from "./core/error.js";
6
7
  //# sourceMappingURL=index.d.ts.map
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAEO,EAAE,KAAK,IAAI,OAAO,EAAE;OAEpB,EAAE,KAAK,UAAU,EAAE,MAAM,EAAE;OAC3B,EAAE,UAAU,EAAE;OACd,EAAE,KAAK,EAAE,KAAK,aAAa,EAAE;OAC7B,EACL,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,GACzB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAEO,EAAE,KAAK,IAAI,OAAO,EAAE;OAEpB,EAAE,KAAK,UAAU,EAAE,MAAM,EAAE;OAC3B,EAAE,UAAU,EAAE;OACd,EAAE,KAAK,EAAE,KAAK,aAAa,EAAE;OAC7B,EAAE,WAAW,EAAE;OACf,EACL,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,GACzB"}
package/index.js CHANGED
@@ -4,7 +4,7 @@ exports = module.exports = function (...args) {
4
4
  return new exports.default(...args)
5
5
  }
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.UnprocessableEntityError = exports.PermissionDeniedError = exports.InternalServerError = exports.AuthenticationError = exports.BadRequestError = exports.RateLimitError = exports.ConflictError = exports.NotFoundError = exports.APIUserAbortError = exports.APIConnectionTimeoutError = exports.APIConnectionError = exports.APIError = exports.SurgeError = exports.Surge = exports.APIPromise = exports.toFile = exports.default = void 0;
7
+ exports.UnprocessableEntityError = exports.PermissionDeniedError = exports.InternalServerError = exports.AuthenticationError = exports.BadRequestError = exports.RateLimitError = exports.ConflictError = exports.NotFoundError = exports.APIUserAbortError = exports.APIConnectionTimeoutError = exports.APIConnectionError = exports.APIError = exports.SurgeError = exports.PagePromise = exports.Surge = exports.APIPromise = exports.toFile = exports.default = void 0;
8
8
  var client_1 = require("./client.js");
9
9
  Object.defineProperty(exports, "default", { enumerable: true, get: function () { return client_1.Surge; } });
10
10
  var uploads_1 = require("./core/uploads.js");
@@ -13,6 +13,8 @@ var api_promise_1 = require("./core/api-promise.js");
13
13
  Object.defineProperty(exports, "APIPromise", { enumerable: true, get: function () { return api_promise_1.APIPromise; } });
14
14
  var client_2 = require("./client.js");
15
15
  Object.defineProperty(exports, "Surge", { enumerable: true, get: function () { return client_2.Surge; } });
16
+ var pagination_1 = require("./core/pagination.js");
17
+ Object.defineProperty(exports, "PagePromise", { enumerable: true, get: function () { return pagination_1.PagePromise; } });
16
18
  var error_1 = require("./core/error.js");
17
19
  Object.defineProperty(exports, "SurgeError", { enumerable: true, get: function () { return error_1.SurgeError; } });
18
20
  Object.defineProperty(exports, "APIError", { enumerable: true, get: function () { return error_1.APIError; } });
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,sCAA4C;AAAnC,iGAAA,KAAK,OAAW;AAEzB,6CAAyD;AAA/B,iGAAA,MAAM,OAAA;AAChC,qDAAgD;AAAvC,yGAAA,UAAU,OAAA;AACnB,sCAAqD;AAA5C,+FAAA,KAAK,OAAA;AACd,yCAcsB;AAbpB,mGAAA,UAAU,OAAA;AACV,iGAAA,QAAQ,OAAA;AACR,2GAAA,kBAAkB,OAAA;AAClB,kHAAA,yBAAyB,OAAA;AACzB,0GAAA,iBAAiB,OAAA;AACjB,sGAAA,aAAa,OAAA;AACb,sGAAA,aAAa,OAAA;AACb,uGAAA,cAAc,OAAA;AACd,wGAAA,eAAe,OAAA;AACf,4GAAA,mBAAmB,OAAA;AACnB,4GAAA,mBAAmB,OAAA;AACnB,8GAAA,qBAAqB,OAAA;AACrB,iHAAA,wBAAwB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,sCAA4C;AAAnC,iGAAA,KAAK,OAAW;AAEzB,6CAAyD;AAA/B,iGAAA,MAAM,OAAA;AAChC,qDAAgD;AAAvC,yGAAA,UAAU,OAAA;AACnB,sCAAqD;AAA5C,+FAAA,KAAK,OAAA;AACd,mDAAgD;AAAvC,yGAAA,WAAW,OAAA;AACpB,yCAcsB;AAbpB,mGAAA,UAAU,OAAA;AACV,iGAAA,QAAQ,OAAA;AACR,2GAAA,kBAAkB,OAAA;AAClB,kHAAA,yBAAyB,OAAA;AACzB,0GAAA,iBAAiB,OAAA;AACjB,sGAAA,aAAa,OAAA;AACb,sGAAA,aAAa,OAAA;AACb,uGAAA,cAAc,OAAA;AACd,wGAAA,eAAe,OAAA;AACf,4GAAA,mBAAmB,OAAA;AACnB,4GAAA,mBAAmB,OAAA;AACnB,8GAAA,qBAAqB,OAAA;AACrB,iHAAA,wBAAwB,OAAA"}
package/index.mjs CHANGED
@@ -3,5 +3,6 @@ export { Surge as default } from "./client.mjs";
3
3
  export { toFile } from "./core/uploads.mjs";
4
4
  export { APIPromise } from "./core/api-promise.mjs";
5
5
  export { Surge } from "./client.mjs";
6
+ export { PagePromise } from "./core/pagination.mjs";
6
7
  export { SurgeError, APIError, APIConnectionError, APIConnectionTimeoutError, APIUserAbortError, NotFoundError, ConflictError, RateLimitError, BadRequestError, AuthenticationError, InternalServerError, PermissionDeniedError, UnprocessableEntityError, } from "./core/error.mjs";
7
8
  //# sourceMappingURL=index.mjs.map
package/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,KAAK,IAAI,OAAO,EAAE;OAEpB,EAAmB,MAAM,EAAE;OAC3B,EAAE,UAAU,EAAE;OACd,EAAE,KAAK,EAAsB;OAC7B,EACL,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,GACzB"}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,KAAK,IAAI,OAAO,EAAE;OAEpB,EAAmB,MAAM,EAAE;OAC3B,EAAE,UAAU,EAAE;OACd,EAAE,KAAK,EAAsB;OAC7B,EAAE,WAAW,EAAE;OACf,EACL,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,GACzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse.d.mts","sourceRoot":"","sources":["../src/internal/parse.ts"],"names":[],"mappings":"OAEO,KAAK,EAAE,mBAAmB,EAAE;OAC5B,EAAE,KAAK,KAAK,EAAE;AAGrB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,UAAU,EAAE,eAAe,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAsB,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAkChG"}
1
+ {"version":3,"file":"parse.d.mts","sourceRoot":"","sources":["../src/internal/parse.ts"],"names":[],"mappings":"OAEO,KAAK,EAAE,mBAAmB,EAAE;OAC5B,EAAE,KAAK,KAAK,EAAE;AAGrB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,UAAU,EAAE,eAAe,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAsB,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAwChG"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/internal/parse.ts"],"names":[],"mappings":"OAEO,KAAK,EAAE,mBAAmB,EAAE;OAC5B,EAAE,KAAK,KAAK,EAAE;AAGrB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,UAAU,EAAE,eAAe,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAsB,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAkChG"}
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/internal/parse.ts"],"names":[],"mappings":"OAEO,KAAK,EAAE,mBAAmB,EAAE;OAC5B,EAAE,KAAK,KAAK,EAAE;AAGrB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,UAAU,EAAE,eAAe,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAsB,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAwChG"}
package/internal/parse.js CHANGED
@@ -17,6 +17,11 @@ async function defaultParseResponse(client, props) {
17
17
  const mediaType = contentType?.split(';')[0]?.trim();
18
18
  const isJSON = mediaType?.includes('application/json') || mediaType?.endsWith('+json');
19
19
  if (isJSON) {
20
+ const contentLength = response.headers.get('content-length');
21
+ if (contentLength === '0') {
22
+ // if there is no content we can't do anything
23
+ return undefined;
24
+ }
20
25
  const json = await response.json();
21
26
  return json;
22
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../src/internal/parse.ts"],"names":[],"mappings":";AAAA,sFAAsF;;AAetF,oDAkCC;AA7CD,wCAA8D;AAWvD,KAAK,UAAU,oBAAoB,CAAI,MAAa,EAAE,KAAuB;IAClF,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IACzE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;QAC7B,8DAA8D;QAC9D,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,OAAO,IAAS,CAAC;QACnB,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YACnC,OAAO,QAAwB,CAAC;QAClC,CAAC;QAED,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,SAAS,EAAE,QAAQ,CAAC,kBAAkB,CAAC,IAAI,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvF,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,IAAS,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,IAAoB,CAAC;IAC9B,CAAC,CAAC,EAAE,CAAC;IACL,IAAA,eAAS,EAAC,MAAM,CAAC,CAAC,KAAK,CACrB,IAAI,YAAY,mBAAmB,EACnC,IAAA,0BAAoB,EAAC;QACnB,mBAAmB;QACnB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,IAAI;QACJ,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;KACnC,CAAC,CACH,CAAC;IACF,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../src/internal/parse.ts"],"names":[],"mappings":";AAAA,sFAAsF;;AAetF,oDAwCC;AAnDD,wCAA8D;AAWvD,KAAK,UAAU,oBAAoB,CAAI,MAAa,EAAE,KAAuB;IAClF,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IACzE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;QAC7B,8DAA8D;QAC9D,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,OAAO,IAAS,CAAC;QACnB,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YACnC,OAAO,QAAwB,CAAC;QAClC,CAAC;QAED,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,SAAS,EAAE,QAAQ,CAAC,kBAAkB,CAAC,IAAI,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvF,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YAC7D,IAAI,aAAa,KAAK,GAAG,EAAE,CAAC;gBAC1B,8CAA8C;gBAC9C,OAAO,SAAc,CAAC;YACxB,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,IAAS,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,IAAoB,CAAC;IAC9B,CAAC,CAAC,EAAE,CAAC;IACL,IAAA,eAAS,EAAC,MAAM,CAAC,CAAC,KAAK,CACrB,IAAI,YAAY,mBAAmB,EACnC,IAAA,0BAAoB,EAAC;QACnB,mBAAmB;QACnB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,IAAI;QACJ,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;KACnC,CAAC,CACH,CAAC;IACF,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -14,6 +14,11 @@ export async function defaultParseResponse(client, props) {
14
14
  const mediaType = contentType?.split(';')[0]?.trim();
15
15
  const isJSON = mediaType?.includes('application/json') || mediaType?.endsWith('+json');
16
16
  if (isJSON) {
17
+ const contentLength = response.headers.get('content-length');
18
+ if (contentLength === '0') {
19
+ // if there is no content we can't do anything
20
+ return undefined;
21
+ }
17
22
  const json = await response.json();
18
23
  return json;
19
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parse.mjs","sourceRoot":"","sources":["../src/internal/parse.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAI/E,EAAE,oBAAoB,EAAE,SAAS,EAAE;AAW1C,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAI,MAAa,EAAE,KAAuB;IAClF,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IACzE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;QAC7B,8DAA8D;QAC9D,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,OAAO,IAAS,CAAC;QACnB,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YACnC,OAAO,QAAwB,CAAC;QAClC,CAAC;QAED,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,SAAS,EAAE,QAAQ,CAAC,kBAAkB,CAAC,IAAI,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvF,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,IAAS,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,IAAoB,CAAC;IAC9B,CAAC,CAAC,EAAE,CAAC;IACL,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CACrB,IAAI,YAAY,mBAAmB,EACnC,oBAAoB,CAAC;QACnB,mBAAmB;QACnB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,IAAI;QACJ,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;KACnC,CAAC,CACH,CAAC;IACF,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"parse.mjs","sourceRoot":"","sources":["../src/internal/parse.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAI/E,EAAE,oBAAoB,EAAE,SAAS,EAAE;AAW1C,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAI,MAAa,EAAE,KAAuB;IAClF,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IACzE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;QAC7B,8DAA8D;QAC9D,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,OAAO,IAAS,CAAC;QACnB,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YACnC,OAAO,QAAwB,CAAC;QAClC,CAAC;QAED,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,SAAS,EAAE,QAAQ,CAAC,kBAAkB,CAAC,IAAI,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvF,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YAC7D,IAAI,aAAa,KAAK,GAAG,EAAE,CAAC;gBAC1B,8CAA8C;gBAC9C,OAAO,SAAc,CAAC;YACxB,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,IAAS,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,IAAoB,CAAC;IAC9B,CAAC,CAAC,EAAE,CAAC;IACL,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CACrB,IAAI,YAAY,mBAAmB,EACnC,oBAAoB,CAAC;QACnB,mBAAmB;QACnB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,IAAI;QACJ,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;KACnC,CAAC,CACH,CAAC;IACF,OAAO,IAAI,CAAC;AACd,CAAC"}
package/internal/tslib.js CHANGED
@@ -1,10 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.__setModuleDefault = exports.__createBinding = void 0;
4
- exports.__exportStar = __exportStar;
5
4
  exports.__classPrivateFieldSet = __classPrivateFieldSet;
6
5
  exports.__classPrivateFieldGet = __classPrivateFieldGet;
6
+ exports.__exportStar = __exportStar;
7
7
  exports.__importStar = __importStar;
8
+ function __classPrivateFieldSet(receiver, state, value, kind, f) {
9
+ if (kind === "m")
10
+ throw new TypeError("Private method is not writable");
11
+ if (kind === "a" && !f)
12
+ throw new TypeError("Private accessor was defined without a setter");
13
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
14
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
15
+ return kind === "a" ? f.call(receiver, value) : f ? (f.value = value) : state.set(receiver, value), value;
16
+ }
17
+ function __classPrivateFieldGet(receiver, state, kind, f) {
18
+ if (kind === "a" && !f)
19
+ throw new TypeError("Private accessor was defined without a getter");
20
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
21
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
22
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
23
+ }
8
24
  var __createBinding = Object.create
9
25
  ? function (o, m, k, k2) {
10
26
  if (k2 === void 0)
@@ -31,22 +47,6 @@ function __exportStar(m, o) {
31
47
  if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p))
32
48
  __createBinding(o, m, p);
33
49
  }
34
- function __classPrivateFieldSet(receiver, state, value, kind, f) {
35
- if (kind === "m")
36
- throw new TypeError("Private method is not writable");
37
- if (kind === "a" && !f)
38
- throw new TypeError("Private accessor was defined without a setter");
39
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
40
- throw new TypeError("Cannot write private member to an object whose class did not declare it");
41
- return kind === "a" ? f.call(receiver, value) : f ? (f.value = value) : state.set(receiver, value), value;
42
- }
43
- function __classPrivateFieldGet(receiver, state, kind, f) {
44
- if (kind === "a" && !f)
45
- throw new TypeError("Private accessor was defined without a getter");
46
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
47
- throw new TypeError("Cannot read private member from an object whose class did not declare it");
48
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
49
- }
50
50
  var __setModuleDefault = Object.create
51
51
  ? function (o, v) {
52
52
  Object.defineProperty(o, "default", { enumerable: true, value: v });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@surgeapi/node",
3
- "version": "0.34.0",
3
+ "version": "0.35.0",
4
4
  "description": "The official TypeScript library for the Surge API",
5
5
  "author": "Surge <support@surge.app>",
6
6
  "types": "./index.d.ts",
@@ -77,6 +77,16 @@
77
77
  "./index.mjs": {
78
78
  "default": "./index.mjs"
79
79
  },
80
+ "./pagination": {
81
+ "import": "./pagination.mjs",
82
+ "require": "./pagination.js"
83
+ },
84
+ "./pagination.js": {
85
+ "default": "./pagination.js"
86
+ },
87
+ "./pagination.mjs": {
88
+ "default": "./pagination.mjs"
89
+ },
80
90
  "./resource": {
81
91
  "import": "./resource.mjs",
82
92
  "require": "./resource.js"
@@ -0,0 +1,2 @@
1
+ export * from "./core/pagination.mjs";
2
+ //# sourceMappingURL=pagination.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.mts","sourceRoot":"","sources":["src/pagination.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from "./core/pagination.js";
2
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["src/pagination.ts"],"names":[],"mappings":""}
package/pagination.js ADDED
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("./internal/tslib.js");
4
+ /** @deprecated Import from ./core/pagination instead */
5
+ tslib_1.__exportStar(require("./core/pagination.js"), exports);
6
+ //# sourceMappingURL=pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["src/pagination.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AACxD,+DAAkC"}
package/pagination.mjs ADDED
@@ -0,0 +1,2 @@
1
+ export * from "./core/pagination.mjs";
2
+ //# sourceMappingURL=pagination.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.mjs","sourceRoot":"","sources":["src/pagination.ts"],"names":[],"mappings":""}
@@ -26,7 +26,7 @@ export interface Blast {
26
26
  /**
27
27
  * The message body.
28
28
  */
29
- body?: string;
29
+ body?: string | null;
30
30
  /**
31
31
  * Optional name for the blast.
32
32
  */
@@ -49,9 +49,9 @@ export interface BlastCreateParams {
49
49
  /**
50
50
  * The message body.
51
51
  */
52
- body?: string;
52
+ body?: string | null;
53
53
  /**
54
- * @deprecated Deprecated. Use `to` instead.
54
+ * @deprecated Use `to` to specify recipients instead.
55
55
  */
56
56
  contacts?: Array<string>;
57
57
  /**
@@ -65,7 +65,7 @@ export interface BlastCreateParams {
65
65
  */
66
66
  name?: string;
67
67
  /**
68
- * @deprecated Deprecated. Use `to` instead.
68
+ * @deprecated Use `to` to specify recipients instead.
69
69
  */
70
70
  segments?: Array<string>;
71
71
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"blasts.d.mts","sourceRoot":"","sources":["../src/resources/blasts.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAGzB,qBAAa,MAAO,SAAQ,WAAW;IACrC;;;;;;;;;OASG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;CAGhG;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEtC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,yBAAiB,KAAK,CAAC;IACrB,UAAiB,UAAU;QACzB;;WAEG;QACH,GAAG,CAAC,EAAE,MAAM,CAAC;KACd;CACF;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAElD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEzB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,yBAAiB,iBAAiB,CAAC;IACjC;;OAEG;IACH,UAAiB,UAAU;QACzB;;WAEG;QACH,GAAG,EAAE,MAAM,CAAC;KACb;CACF;AAED,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,OAAO,EAAE,KAAK,KAAK,IAAI,KAAK,EAAE,KAAK,iBAAiB,IAAI,iBAAiB,EAAE,CAAC;CAC7E"}
1
+ {"version":3,"file":"blasts.d.mts","sourceRoot":"","sources":["../src/resources/blasts.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAGzB,qBAAa,MAAO,SAAQ,WAAW;IACrC;;;;;;;;;OASG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;CAGhG;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEtC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,yBAAiB,KAAK,CAAC;IACrB,UAAiB,UAAU;QACzB;;WAEG;QACH,GAAG,CAAC,EAAE,MAAM,CAAC;KACd;CACF;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAElD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEzB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,yBAAiB,iBAAiB,CAAC;IACjC;;OAEG;IACH,UAAiB,UAAU;QACzB;;WAEG;QACH,GAAG,EAAE,MAAM,CAAC;KACb;CACF;AAED,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,OAAO,EAAE,KAAK,KAAK,IAAI,KAAK,EAAE,KAAK,iBAAiB,IAAI,iBAAiB,EAAE,CAAC;CAC7E"}
@@ -26,7 +26,7 @@ export interface Blast {
26
26
  /**
27
27
  * The message body.
28
28
  */
29
- body?: string;
29
+ body?: string | null;
30
30
  /**
31
31
  * Optional name for the blast.
32
32
  */
@@ -49,9 +49,9 @@ export interface BlastCreateParams {
49
49
  /**
50
50
  * The message body.
51
51
  */
52
- body?: string;
52
+ body?: string | null;
53
53
  /**
54
- * @deprecated Deprecated. Use `to` instead.
54
+ * @deprecated Use `to` to specify recipients instead.
55
55
  */
56
56
  contacts?: Array<string>;
57
57
  /**
@@ -65,7 +65,7 @@ export interface BlastCreateParams {
65
65
  */
66
66
  name?: string;
67
67
  /**
68
- * @deprecated Deprecated. Use `to` instead.
68
+ * @deprecated Use `to` to specify recipients instead.
69
69
  */
70
70
  segments?: Array<string>;
71
71
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"blasts.d.ts","sourceRoot":"","sources":["../src/resources/blasts.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAGzB,qBAAa,MAAO,SAAQ,WAAW;IACrC;;;;;;;;;OASG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;CAGhG;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEtC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,yBAAiB,KAAK,CAAC;IACrB,UAAiB,UAAU;QACzB;;WAEG;QACH,GAAG,CAAC,EAAE,MAAM,CAAC;KACd;CACF;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAElD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEzB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,yBAAiB,iBAAiB,CAAC;IACjC;;OAEG;IACH,UAAiB,UAAU;QACzB;;WAEG;QACH,GAAG,EAAE,MAAM,CAAC;KACb;CACF;AAED,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,OAAO,EAAE,KAAK,KAAK,IAAI,KAAK,EAAE,KAAK,iBAAiB,IAAI,iBAAiB,EAAE,CAAC;CAC7E"}
1
+ {"version":3,"file":"blasts.d.ts","sourceRoot":"","sources":["../src/resources/blasts.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAGzB,qBAAa,MAAO,SAAQ,WAAW;IACrC;;;;;;;;;OASG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;CAGhG;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEtC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,yBAAiB,KAAK,CAAC;IACrB,UAAiB,UAAU;QACzB;;WAEG;QACH,GAAG,CAAC,EAAE,MAAM,CAAC;KACd;CACF;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAElD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEzB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,yBAAiB,iBAAiB,CAAC;IACjC;;OAEG;IACH,UAAiB,UAAU;QACzB;;WAEG;QACH,GAAG,EAAE,MAAM,CAAC;KACb;CACF;AAED,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,OAAO,EAAE,KAAK,KAAK,IAAI,KAAK,EAAE,KAAK,iBAAiB,IAAI,iBAAiB,EAAE,CAAC;CAC7E"}