@anthropic-ai/sdk 0.12.0 → 0.12.2

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/src/core.ts CHANGED
@@ -217,27 +217,27 @@ export abstract class APIClient {
217
217
  return `stainless-node-retry-${uuid4()}`;
218
218
  }
219
219
 
220
- get<Req extends {}, Rsp>(path: string, opts?: PromiseOrValue<RequestOptions<Req>>): APIPromise<Rsp> {
220
+ get<Req, Rsp>(path: string, opts?: PromiseOrValue<RequestOptions<Req>>): APIPromise<Rsp> {
221
221
  return this.methodRequest('get', path, opts);
222
222
  }
223
223
 
224
- post<Req extends {}, Rsp>(path: string, opts?: PromiseOrValue<RequestOptions<Req>>): APIPromise<Rsp> {
224
+ post<Req, Rsp>(path: string, opts?: PromiseOrValue<RequestOptions<Req>>): APIPromise<Rsp> {
225
225
  return this.methodRequest('post', path, opts);
226
226
  }
227
227
 
228
- patch<Req extends {}, Rsp>(path: string, opts?: PromiseOrValue<RequestOptions<Req>>): APIPromise<Rsp> {
228
+ patch<Req, Rsp>(path: string, opts?: PromiseOrValue<RequestOptions<Req>>): APIPromise<Rsp> {
229
229
  return this.methodRequest('patch', path, opts);
230
230
  }
231
231
 
232
- put<Req extends {}, Rsp>(path: string, opts?: PromiseOrValue<RequestOptions<Req>>): APIPromise<Rsp> {
232
+ put<Req, Rsp>(path: string, opts?: PromiseOrValue<RequestOptions<Req>>): APIPromise<Rsp> {
233
233
  return this.methodRequest('put', path, opts);
234
234
  }
235
235
 
236
- delete<Req extends {}, Rsp>(path: string, opts?: PromiseOrValue<RequestOptions<Req>>): APIPromise<Rsp> {
236
+ delete<Req, Rsp>(path: string, opts?: PromiseOrValue<RequestOptions<Req>>): APIPromise<Rsp> {
237
237
  return this.methodRequest('delete', path, opts);
238
238
  }
239
239
 
240
- private methodRequest<Req extends {}, Rsp>(
240
+ private methodRequest<Req, Rsp>(
241
241
  method: HTTPMethod,
242
242
  path: string,
243
243
  opts?: PromiseOrValue<RequestOptions<Req>>,
@@ -269,9 +269,7 @@ export abstract class APIClient {
269
269
  return null;
270
270
  }
271
271
 
272
- buildRequest<Req extends {}>(
273
- options: FinalRequestOptions<Req>,
274
- ): { req: RequestInit; url: string; timeout: number } {
272
+ buildRequest<Req>(options: FinalRequestOptions<Req>): { req: RequestInit; url: string; timeout: number } {
275
273
  const { method, path, query, headers: headers = {} } = options;
276
274
 
277
275
  const body =
@@ -301,18 +299,7 @@ export abstract class APIClient {
301
299
  headers[this.idempotencyHeader] = options.idempotencyKey;
302
300
  }
303
301
 
304
- const reqHeaders: Record<string, string> = {
305
- ...(contentLength && { 'Content-Length': contentLength }),
306
- ...this.defaultHeaders(options),
307
- ...headers,
308
- };
309
- // let builtin fetch set the Content-Type for multipart bodies
310
- if (isMultipartBody(options.body) && shimsKind !== 'node') {
311
- delete reqHeaders['Content-Type'];
312
- }
313
-
314
- // Strip any headers being explicitly omitted with null
315
- Object.keys(reqHeaders).forEach((key) => reqHeaders[key] === null && delete reqHeaders[key]);
302
+ const reqHeaders = this.buildHeaders({ options, headers, contentLength });
316
303
 
317
304
  const req: RequestInit = {
318
305
  method,
@@ -324,9 +311,35 @@ export abstract class APIClient {
324
311
  signal: options.signal ?? null,
325
312
  };
326
313
 
314
+ return { req, url, timeout };
315
+ }
316
+
317
+ private buildHeaders({
318
+ options,
319
+ headers,
320
+ contentLength,
321
+ }: {
322
+ options: FinalRequestOptions;
323
+ headers: Record<string, string | null | undefined>;
324
+ contentLength: string | null | undefined;
325
+ }): Record<string, string> {
326
+ const reqHeaders: Record<string, string> = {};
327
+ if (contentLength) {
328
+ reqHeaders['content-length'] = contentLength;
329
+ }
330
+
331
+ const defaultHeaders = this.defaultHeaders(options);
332
+ applyHeadersMut(reqHeaders, defaultHeaders);
333
+ applyHeadersMut(reqHeaders, headers);
334
+
335
+ // let builtin fetch set the Content-Type for multipart bodies
336
+ if (isMultipartBody(options.body) && shimsKind !== 'node') {
337
+ delete reqHeaders['content-type'];
338
+ }
339
+
327
340
  this.validateHeaders(reqHeaders, headers);
328
341
 
329
- return { req, url, timeout };
342
+ return reqHeaders;
330
343
  }
331
344
 
332
345
  /**
@@ -358,15 +371,15 @@ export abstract class APIClient {
358
371
  return APIError.generate(status, error, message, headers);
359
372
  }
360
373
 
361
- request<Req extends {}, Rsp>(
374
+ request<Req, Rsp>(
362
375
  options: PromiseOrValue<FinalRequestOptions<Req>>,
363
376
  remainingRetries: number | null = null,
364
377
  ): APIPromise<Rsp> {
365
378
  return new APIPromise(this.makeRequest(options, remainingRetries));
366
379
  }
367
380
 
368
- private async makeRequest(
369
- optionsInput: PromiseOrValue<FinalRequestOptions>,
381
+ private async makeRequest<Req>(
382
+ optionsInput: PromiseOrValue<FinalRequestOptions<Req>>,
370
383
  retriesRemaining: number | null,
371
384
  ): Promise<APIResponseProps> {
372
385
  const options = await optionsInput;
@@ -404,14 +417,17 @@ export abstract class APIClient {
404
417
 
405
418
  if (!response.ok) {
406
419
  if (retriesRemaining && this.shouldRetry(response)) {
420
+ const retryMessage = `retrying, ${retriesRemaining} attempts remaining`;
421
+ debug(`response (error; ${retryMessage})`, response.status, url, responseHeaders);
407
422
  return this.retryRequest(options, retriesRemaining, responseHeaders);
408
423
  }
409
424
 
410
425
  const errText = await response.text().catch((e) => castToError(e).message);
411
426
  const errJSON = safeJSON(errText);
412
427
  const errMessage = errJSON ? undefined : errText;
428
+ const retryMessage = retriesRemaining ? `(error; no more retries left)` : `(error; not retryable)`;
413
429
 
414
- debug('response', response.status, url, responseHeaders, errMessage);
430
+ debug(`response (error; ${retryMessage})`, response.status, url, responseHeaders, errMessage);
415
431
 
416
432
  const err = this.makeStatusError(response.status, errJSON, errMessage, responseHeaders);
417
433
  throw err;
@@ -428,7 +444,7 @@ export abstract class APIClient {
428
444
  return new PagePromise<PageClass, Item>(this, request, Page);
429
445
  }
430
446
 
431
- buildURL<Req extends Record<string, unknown>>(path: string, query: Req | null | undefined): string {
447
+ buildURL<Req>(path: string, query: Req | null | undefined): string {
432
448
  const url =
433
449
  isAbsoluteURL(path) ?
434
450
  new URL(path)
@@ -439,8 +455,8 @@ export abstract class APIClient {
439
455
  query = { ...defaultQuery, ...query } as Req;
440
456
  }
441
457
 
442
- if (query) {
443
- url.search = this.stringifyQuery(query);
458
+ if (typeof query === 'object' && query && !Array.isArray(query)) {
459
+ url.search = this.stringifyQuery(query as Record<string, unknown>);
444
460
  }
445
461
 
446
462
  return url.toString();
@@ -516,11 +532,21 @@ export abstract class APIClient {
516
532
  retriesRemaining: number,
517
533
  responseHeaders?: Headers | undefined,
518
534
  ): Promise<APIResponseProps> {
519
- // About the Retry-After header: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After
520
535
  let timeoutMillis: number | undefined;
536
+
537
+ // Note the `retry-after-ms` header may not be standard, but is a good idea and we'd like proactive support for it.
538
+ const retryAfterMillisHeader = responseHeaders?.['retry-after-ms'];
539
+ if (retryAfterMillisHeader) {
540
+ const timeoutMs = parseFloat(retryAfterMillisHeader);
541
+ if (!Number.isNaN(timeoutMs)) {
542
+ timeoutMillis = timeoutMs;
543
+ }
544
+ }
545
+
546
+ // About the Retry-After header: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After
521
547
  const retryAfterHeader = responseHeaders?.['retry-after'];
522
- if (retryAfterHeader) {
523
- const timeoutSeconds = parseInt(retryAfterHeader);
548
+ if (retryAfterHeader && !timeoutMillis) {
549
+ const timeoutSeconds = parseFloat(retryAfterHeader);
524
550
  if (!Number.isNaN(timeoutSeconds)) {
525
551
  timeoutMillis = timeoutSeconds * 1000;
526
552
  } else {
@@ -530,12 +556,7 @@ export abstract class APIClient {
530
556
 
531
557
  // If the API asks us to wait a certain amount of time (and it's a reasonable amount),
532
558
  // just do what it says, but otherwise calculate a default
533
- if (
534
- !timeoutMillis ||
535
- !Number.isInteger(timeoutMillis) ||
536
- timeoutMillis <= 0 ||
537
- timeoutMillis > 60 * 1000
538
- ) {
559
+ if (!(timeoutMillis && 0 <= timeoutMillis && timeoutMillis < 60 * 1000)) {
539
560
  const maxRetries = options.maxRetries ?? this.maxRetries;
540
561
  timeoutMillis = this.calculateDefaultRetryTimeoutMillis(retriesRemaining, maxRetries);
541
562
  }
@@ -602,7 +623,7 @@ export abstract class AbstractPage<Item> implements AsyncIterable<Item> {
602
623
  );
603
624
  }
604
625
  const nextOptions = { ...this.options };
605
- if ('params' in nextInfo) {
626
+ if ('params' in nextInfo && typeof nextOptions.query === 'object') {
606
627
  nextOptions.query = { ...nextOptions.query, ...nextInfo.params };
607
628
  } else if ('url' in nextInfo) {
608
629
  const params = [...Object.entries(nextOptions.query || {}), ...nextInfo.url.searchParams.entries()];
@@ -700,7 +721,7 @@ export type Headers = Record<string, string | null | undefined>;
700
721
  export type DefaultQuery = Record<string, string | undefined>;
701
722
  export type KeysEnum<T> = { [P in keyof Required<T>]: true };
702
723
 
703
- export type RequestOptions<Req extends {} = Record<string, unknown> | Readable> = {
724
+ export type RequestOptions<Req = unknown | Record<string, unknown> | Readable> = {
704
725
  method?: HTTPMethod;
705
726
  path?: string;
706
727
  query?: Req | undefined;
@@ -737,7 +758,7 @@ const requestOptionsKeys: KeysEnum<RequestOptions> = {
737
758
  __binaryResponse: true,
738
759
  };
739
760
 
740
- export const isRequestOptions = (obj: unknown): obj is RequestOptions<Record<string, unknown> | Readable> => {
761
+ export const isRequestOptions = (obj: unknown): obj is RequestOptions => {
741
762
  return (
742
763
  typeof obj === 'object' &&
743
764
  obj !== null &&
@@ -746,7 +767,7 @@ export const isRequestOptions = (obj: unknown): obj is RequestOptions<Record<str
746
767
  );
747
768
  };
748
769
 
749
- export type FinalRequestOptions<Req extends {} = Record<string, unknown> | Readable> = RequestOptions<Req> & {
770
+ export type FinalRequestOptions<Req = unknown | Record<string, unknown> | Readable> = RequestOptions<Req> & {
750
771
  method: HTTPMethod;
751
772
  path: string;
752
773
  };
@@ -948,14 +969,16 @@ export const ensurePresent = <T>(value: T | null | undefined): T => {
948
969
  /**
949
970
  * Read an environment variable.
950
971
  *
972
+ * Trims beginning and trailing whitespace.
973
+ *
951
974
  * Will return undefined if the environment variable doesn't exist or cannot be accessed.
952
975
  */
953
976
  export const readEnv = (env: string): string | undefined => {
954
977
  if (typeof process !== 'undefined') {
955
- return process.env?.[env] ?? undefined;
978
+ return process.env?.[env]?.trim() ?? undefined;
956
979
  }
957
980
  if (typeof Deno !== 'undefined') {
958
- return Deno.env?.get?.(env);
981
+ return Deno.env?.get?.(env)?.trim();
959
982
  }
960
983
  return undefined;
961
984
  };
@@ -1013,6 +1036,28 @@ export function hasOwn(obj: Object, key: string): boolean {
1013
1036
  return Object.prototype.hasOwnProperty.call(obj, key);
1014
1037
  }
1015
1038
 
1039
+ /**
1040
+ * Copies headers from "newHeaders" onto "targetHeaders",
1041
+ * using lower-case for all properties,
1042
+ * ignoring any keys with undefined values,
1043
+ * and deleting any keys with null values.
1044
+ */
1045
+ function applyHeadersMut(targetHeaders: Headers, newHeaders: Headers): void {
1046
+ for (const k in newHeaders) {
1047
+ if (!hasOwn(newHeaders, k)) continue;
1048
+ const lowerKey = k.toLowerCase();
1049
+ if (!lowerKey) continue;
1050
+
1051
+ const val = newHeaders[k];
1052
+
1053
+ if (val === null) {
1054
+ delete targetHeaders[lowerKey];
1055
+ } else if (val !== undefined) {
1056
+ targetHeaders[lowerKey] = val;
1057
+ }
1058
+ }
1059
+ }
1060
+
1016
1061
  export function debug(action: string, ...args: any[]) {
1017
1062
  if (typeof process !== 'undefined' && process.env['DEBUG'] === 'true') {
1018
1063
  console.log(`Anthropic:DEBUG:${action}`, ...args);
package/src/index.ts CHANGED
@@ -10,12 +10,12 @@ export interface ClientOptions {
10
10
  /**
11
11
  * Defaults to process.env['ANTHROPIC_API_KEY'].
12
12
  */
13
- apiKey?: string | null;
13
+ apiKey?: string | null | undefined;
14
14
 
15
15
  /**
16
16
  * Defaults to process.env['ANTHROPIC_AUTH_TOKEN'].
17
17
  */
18
- authToken?: string | null;
18
+ authToken?: string | null | undefined;
19
19
 
20
20
  /**
21
21
  * Override the default base URL for the API, e.g., "https://api.example.com/v2/"
@@ -84,8 +84,8 @@ export class Anthropic extends Core.APIClient {
84
84
  /**
85
85
  * API Client for interfacing with the Anthropic API.
86
86
  *
87
- * @param {string | null} [opts.apiKey=process.env['ANTHROPIC_API_KEY'] ?? null]
88
- * @param {string | null} [opts.authToken=process.env['ANTHROPIC_AUTH_TOKEN'] ?? null]
87
+ * @param {string | null | undefined} [opts.apiKey=process.env['ANTHROPIC_API_KEY'] ?? null]
88
+ * @param {string | null | undefined} [opts.authToken=process.env['ANTHROPIC_AUTH_TOKEN'] ?? null]
89
89
  * @param {string} [opts.baseURL=process.env['ANTHROPIC_BASE_URL'] ?? https://api.anthropic.com] - Override the default base URL for the API.
90
90
  * @param {number} [opts.timeout=10 minutes] - The maximum amount of time (in milliseconds) the client will wait for a response before timing out.
91
91
  * @param {number} [opts.httpAgent] - An HTTP agent used to manage HTTP(s) connections.
@@ -104,7 +104,7 @@ export class Anthropic extends Core.APIClient {
104
104
  apiKey,
105
105
  authToken,
106
106
  ...opts,
107
- baseURL: baseURL ?? `https://api.anthropic.com`,
107
+ baseURL: baseURL || `https://api.anthropic.com`,
108
108
  };
109
109
 
110
110
  super({
@@ -136,17 +136,17 @@ export class Anthropic extends Core.APIClient {
136
136
  }
137
137
 
138
138
  protected override validateHeaders(headers: Core.Headers, customHeaders: Core.Headers) {
139
- if (this.apiKey && headers['X-Api-Key']) {
139
+ if (this.apiKey && headers['x-api-key']) {
140
140
  return;
141
141
  }
142
- if (customHeaders['X-Api-Key'] === null) {
142
+ if (customHeaders['x-api-key'] === null) {
143
143
  return;
144
144
  }
145
145
 
146
- if (this.authToken && headers['Authorization']) {
146
+ if (this.authToken && headers['authorization']) {
147
147
  return;
148
148
  }
149
- if (customHeaders['Authorization'] === null) {
149
+ if (customHeaders['authorization'] === null) {
150
150
  return;
151
151
  }
152
152
 
package/src/lib/.keep ADDED
@@ -0,0 +1,4 @@
1
+ File generated from our OpenAPI spec by Stainless.
2
+
3
+ This directory can be used to store custom files to expand the SDK.
4
+ It is ignored by Stainless code generation and its content (other than this keep file) won't be touched.
package/src/uploads.ts CHANGED
@@ -184,7 +184,7 @@ export const isMultipartBody = (body: any): body is MultipartBody =>
184
184
  * Returns a multipart/form-data request if any part of the given request body contains a File / Blob value.
185
185
  * Otherwise returns the request as is.
186
186
  */
187
- export const maybeMultipartFormRequestOptions = async <T extends {} = Record<string, unknown>>(
187
+ export const maybeMultipartFormRequestOptions = async <T = Record<string, unknown>>(
188
188
  opts: RequestOptions<T>,
189
189
  ): Promise<RequestOptions<T | MultipartBody>> => {
190
190
  if (!hasUploadableValue(opts.body)) return opts;
@@ -193,7 +193,7 @@ export const maybeMultipartFormRequestOptions = async <T extends {} = Record<str
193
193
  return getMultipartRequestOptions(form, opts);
194
194
  };
195
195
 
196
- export const multipartFormRequestOptions = async <T extends {} = Record<string, unknown>>(
196
+ export const multipartFormRequestOptions = async <T = Record<string, unknown>>(
197
197
  opts: RequestOptions<T>,
198
198
  ): Promise<RequestOptions<T | MultipartBody>> => {
199
199
  const form = await createForm(opts.body);
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '0.12.0'; // x-release-please-version
1
+ export const VERSION = '0.12.2'; // x-release-please-version
package/uploads.d.ts CHANGED
@@ -69,7 +69,7 @@ export declare const isMultipartBody: (body: any) => body is MultipartBody;
69
69
  * Returns a multipart/form-data request if any part of the given request body contains a File / Blob value.
70
70
  * Otherwise returns the request as is.
71
71
  */
72
- export declare const maybeMultipartFormRequestOptions: <T extends {} = Record<string, unknown>>(opts: RequestOptions<T>) => Promise<RequestOptions<MultipartBody | T>>;
73
- export declare const multipartFormRequestOptions: <T extends {} = Record<string, unknown>>(opts: RequestOptions<T>) => Promise<RequestOptions<MultipartBody | T>>;
72
+ export declare const maybeMultipartFormRequestOptions: <T = Record<string, unknown>>(opts: RequestOptions<T>) => Promise<RequestOptions<MultipartBody | T>>;
73
+ export declare const multipartFormRequestOptions: <T = Record<string, unknown>>(opts: RequestOptions<T>) => Promise<RequestOptions<MultipartBody | T>>;
74
74
  export declare const createForm: <T = Record<string, unknown>>(body: T | undefined) => Promise<FormData>;
75
75
  //# sourceMappingURL=uploads.d.ts.map
package/uploads.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"uploads.d.ts","sourceRoot":"","sources":["src/uploads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EACL,QAAQ,EAER,KAAK,IAAI,EACT,KAAK,eAAe,EAEpB,KAAK,YAAY,EAElB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,KAAK,YAAY,GAAG,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;AAC9F,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,IAAI,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE7F;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,6EAA6E;IAC7E,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;CAE/C;AAED;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,QAAQ;IACxC,oFAAoF;IACpF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC3B;AAED,eAAO,MAAM,cAAc,UAAW,GAAG,0BAIP,CAAC;AAEnC,eAAO,MAAM,UAAU,UAAW,GAAG,sBAKlB,CAAC;AAEpB;;;GAGG;AACH,eAAO,MAAM,UAAU,UAAW,GAAG;mBAAwC,QAAQ,WAAW,CAAC;CAOxD,CAAC;AAE1C,eAAO,MAAM,YAAY,UAAW,GAAG,wBAEtC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;AAEnG;;;;;;;;GAQG;AACH,wBAAsB,MAAM,CAC1B,KAAK,EAAE,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,EAC7C,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,OAAO,GAAE,eAAe,GAAG,SAAc,GACxC,OAAO,CAAC,QAAQ,CAAC,CAuBnB;AAmDD,eAAO,MAAM,eAAe,SAAU,GAAG,0BACsD,CAAC;AAEhG;;;GAGG;AACH,eAAO,MAAM,gCAAgC,iHAO5C,CAAC;AAEF,eAAO,MAAM,2BAA2B,iHAKvC,CAAC;AAEF,eAAO,MAAM,UAAU,wDAA6D,QAAQ,QAAQ,CAInG,CAAC"}
1
+ {"version":3,"file":"uploads.d.ts","sourceRoot":"","sources":["src/uploads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EACL,QAAQ,EAER,KAAK,IAAI,EACT,KAAK,eAAe,EAEpB,KAAK,YAAY,EAElB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,KAAK,YAAY,GAAG,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;AAC9F,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,IAAI,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE7F;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,6EAA6E;IAC7E,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;CAE/C;AAED;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,QAAQ;IACxC,oFAAoF;IACpF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC3B;AAED,eAAO,MAAM,cAAc,UAAW,GAAG,0BAIP,CAAC;AAEnC,eAAO,MAAM,UAAU,UAAW,GAAG,sBAKlB,CAAC;AAEpB;;;GAGG;AACH,eAAO,MAAM,UAAU,UAAW,GAAG;mBAAwC,QAAQ,WAAW,CAAC;CAOxD,CAAC;AAE1C,eAAO,MAAM,YAAY,UAAW,GAAG,wBAEtC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;AAEnG;;;;;;;;GAQG;AACH,wBAAsB,MAAM,CAC1B,KAAK,EAAE,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,EAC7C,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,OAAO,GAAE,eAAe,GAAG,SAAc,GACxC,OAAO,CAAC,QAAQ,CAAC,CAuBnB;AAmDD,eAAO,MAAM,eAAe,SAAU,GAAG,0BACsD,CAAC;AAEhG;;;GAGG;AACH,eAAO,MAAM,gCAAgC,sGAO5C,CAAC;AAEF,eAAO,MAAM,2BAA2B,sGAKvC,CAAC;AAEF,eAAO,MAAM,UAAU,wDAA6D,QAAQ,QAAQ,CAInG,CAAC"}
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.12.0";
1
+ export declare const VERSION = "0.12.2";
2
2
  //# sourceMappingURL=version.d.ts.map
package/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = '0.12.0'; // x-release-please-version
4
+ exports.VERSION = '0.12.2'; // x-release-please-version
5
5
  //# sourceMappingURL=version.js.map
package/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '0.12.0'; // x-release-please-version
1
+ export const VERSION = '0.12.2'; // x-release-please-version
2
2
  //# sourceMappingURL=version.mjs.map