diff --git a/.fern/metadata.json b/.fern/metadata.json index eb5c29ba1..da8095ae7 100644 --- a/.fern/metadata.json +++ b/.fern/metadata.json @@ -1,7 +1,7 @@ { - "cliVersion": "2.2.5", + "cliVersion": "3.20.0", "generatorName": "fernapi/fern-typescript-sdk", - "generatorVersion": "3.33.0", + "generatorVersion": "3.40.0", "generatorConfig": { "namespaceExport": "Square", "allowCustomFetcher": true, diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bb43fde64..6cb691402 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,7 +27,13 @@ jobs: uses: actions/setup-node@v3 - name: Compile - run: yarn && yarn test:unit + run: yarn && yarn build + + - name: Unit Test + run: yarn test:unit + + - name: Wire Test + run: yarn test:wire publish: needs: [ compile ] diff --git a/package.json b/package.json index 3e168ab12..fdd8ec547 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,11 @@ { "name": "square", - "version": "43.2.1", + "version": "43.3.0", "private": false, - "repository": "github:square/square-nodejs-sdk", + "repository": { + "type": "git", + "url": "git+https://github.com/square/square-nodejs-sdk.git" + }, "license": "MIT", "main": "./index.js", "types": "./index.d.ts", diff --git a/src/BaseClient.ts b/src/BaseClient.ts index 796b29c04..933cf338d 100644 --- a/src/BaseClient.ts +++ b/src/BaseClient.ts @@ -1,14 +1,14 @@ // This file was auto-generated by Fern from our API Definition. +import { BearerAuthProvider } from "./auth/BearerAuthProvider.js"; import * as core from "./core"; import { mergeHeaders } from "./core/headers"; import type * as environments from "./environments"; -export interface BaseClientOptions { +export type BaseClientOptions = { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - token?: core.Supplier; /** Override the Square-Version header */ version?: "2025-10-16"; /** Additional headers to include in requests. */ @@ -22,7 +22,7 @@ export interface BaseClientOptions { fetcher?: core.FetchFunction; /** Configure logging for the client. */ logging?: core.logging.LogConfig | core.logging.Logger; -} +} & BearerAuthProvider.AuthOptions; export interface BaseRequestOptions { /** The maximum time to wait for a response in seconds. */ @@ -39,13 +39,22 @@ export interface BaseRequestOptions { headers?: Record | null | undefined>; } -export function normalizeClientOptions(options: T): T { +export type NormalizedClientOptions = T & { + logging: core.logging.Logger; + authProvider?: core.AuthProvider; +}; + +export type NormalizedClientOptionsWithAuth = NormalizedClientOptions & { + authProvider: core.AuthProvider; +}; + +export function normalizeClientOptions(options: T): NormalizedClientOptions { const headers = mergeHeaders( { "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "square", - "X-Fern-SDK-Version": "43.2.1", - "User-Agent": "square/43.2.1", + "X-Fern-SDK-Version": "43.3.0", + "User-Agent": "square/43.3.0", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version, "Square-Version": options?.version ?? "2025-10-16", @@ -57,5 +66,23 @@ export function normalizeClientOptions(options: T): ...options, logging: core.logging.createLogger(options?.logging), headers, - } as T; + } as NormalizedClientOptions; +} + +export function normalizeClientOptionsWithAuth( + options: T, +): NormalizedClientOptionsWithAuth { + const normalized = normalizeClientOptions(options) as NormalizedClientOptionsWithAuth; + const normalizedWithNoOpAuthProvider = withNoOpAuthProvider(normalized); + normalized.authProvider ??= new BearerAuthProvider(normalizedWithNoOpAuthProvider); + return normalized; +} + +function withNoOpAuthProvider( + options: NormalizedClientOptions, +): NormalizedClientOptionsWithAuth { + return { + ...options, + authProvider: new core.NoOpAuthProvider(), + }; } diff --git a/src/Client.ts b/src/Client.ts index f81557c60..1fb6b568d 100644 --- a/src/Client.ts +++ b/src/Client.ts @@ -37,16 +37,16 @@ import { V1TransactionsClient } from "./api/resources/v1Transactions/client/Clie import { VendorsClient } from "./api/resources/vendors/client/Client"; import { WebhooksClient } from "./api/resources/webhooks/client/Client"; import type { BaseClientOptions, BaseRequestOptions } from "./BaseClient"; -import { normalizeClientOptions } from "./BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "./BaseClient"; export declare namespace SquareClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class SquareClient { - protected readonly _options: SquareClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _mobile: MobileClient | undefined; protected _oAuth: OAuthClient | undefined; protected _v1Transactions: V1TransactionsClient | undefined; @@ -85,7 +85,7 @@ export class SquareClient { protected _webhooks: WebhooksClient | undefined; constructor(options: SquareClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get mobile(): MobileClient { diff --git a/src/api/resources/applePay/client/Client.ts b/src/api/resources/applePay/client/Client.ts index 5579b3dad..5637a5886 100644 --- a/src/api/resources/applePay/client/Client.ts +++ b/src/api/resources/applePay/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace ApplePayClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class ApplePayClient { - protected readonly _options: ApplePayClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: ApplePayClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -57,12 +58,11 @@ export class ApplePayClient { request: Square.RegisterDomainRequest, requestOptions?: ApplePayClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -108,29 +108,6 @@ export class ApplePayClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/apple-pay/domains."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/apple-pay/domains"); } } diff --git a/src/api/resources/bankAccounts/client/Client.ts b/src/api/resources/bankAccounts/client/Client.ts index bacd34365..8bc82a418 100644 --- a/src/api/resources/bankAccounts/client/Client.ts +++ b/src/api/resources/bankAccounts/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace BankAccountsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class BankAccountsClient { - protected readonly _options: BankAccountsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: BankAccountsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -54,12 +55,11 @@ export class BankAccountsClient { if (locationId !== undefined) { _queryParams.location_id = locationId; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -97,21 +97,7 @@ export class BankAccountsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/bank-accounts."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/bank-accounts"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -150,12 +136,11 @@ export class BankAccountsClient { requestOptions?: BankAccountsClient.RequestOptions, ): Promise> { const { v1BankAccountId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -195,23 +180,12 @@ export class BankAccountsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bank-accounts/by-v1-id/{v1_bank_account_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bank-accounts/by-v1-id/{v1_bank_account_id}", + ); } /** @@ -238,12 +212,11 @@ export class BankAccountsClient { requestOptions?: BankAccountsClient.RequestOptions, ): Promise> { const { bankAccountId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -283,31 +256,11 @@ export class BankAccountsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bank-accounts/{bank_account_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bank-accounts/{bank_account_id}", + ); } } diff --git a/src/api/resources/bookings/client/Client.ts b/src/api/resources/bookings/client/Client.ts index 423a86aba..3065ccfd5 100644 --- a/src/api/resources/bookings/client/Client.ts +++ b/src/api/resources/bookings/client/Client.ts @@ -1,10 +1,11 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; @@ -14,20 +15,20 @@ import { LocationProfilesClient } from "../resources/locationProfiles/client/Cli import { TeamMemberProfilesClient } from "../resources/teamMemberProfiles/client/Client"; export declare namespace BookingsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class BookingsClient { - protected readonly _options: BookingsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _customAttributeDefinitions: CustomAttributeDefinitionsClient | undefined; protected _customAttributes: CustomAttributesClient | undefined; protected _locationProfiles: LocationProfilesClient | undefined; protected _teamMemberProfiles: TeamMemberProfilesClient | undefined; constructor(options: BookingsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get customAttributeDefinitions(): CustomAttributeDefinitionsClient { @@ -95,12 +96,11 @@ export class BookingsClient { if (startAtMax !== undefined) { _queryParams.start_at_max = startAtMax; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -138,21 +138,7 @@ export class BookingsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/bookings."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/bookings"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -203,12 +189,11 @@ export class BookingsClient { request: Square.CreateBookingRequest, requestOptions?: BookingsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -254,21 +239,7 @@ export class BookingsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/bookings."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/bookings"); } /** @@ -300,12 +271,11 @@ export class BookingsClient { request: Square.SearchAvailabilityRequest, requestOptions?: BookingsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -351,23 +321,12 @@ export class BookingsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/bookings/availability/search.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/bookings/availability/search", + ); } /** @@ -395,12 +354,11 @@ export class BookingsClient { request: Square.BulkRetrieveBookingsRequest, requestOptions?: BookingsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -446,21 +404,7 @@ export class BookingsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/bookings/bulk-retrieve."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/bookings/bulk-retrieve"); } /** @@ -480,12 +424,11 @@ export class BookingsClient { private async __getBusinessProfile( requestOptions?: BookingsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -525,23 +468,12 @@ export class BookingsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bookings/business-booking-profile.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bookings/business-booking-profile", + ); } /** @@ -567,12 +499,11 @@ export class BookingsClient { requestOptions?: BookingsClient.RequestOptions, ): Promise> { const { locationId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -612,23 +543,12 @@ export class BookingsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bookings/location-booking-profiles/{location_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bookings/location-booking-profiles/{location_id}", + ); } /** @@ -655,12 +575,11 @@ export class BookingsClient { request: Square.BulkRetrieveTeamMemberBookingProfilesRequest, requestOptions?: BookingsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -706,23 +625,12 @@ export class BookingsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/bookings/team-member-booking-profiles/bulk-retrieve.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/bookings/team-member-booking-profiles/bulk-retrieve", + ); } /** @@ -751,12 +659,11 @@ export class BookingsClient { requestOptions?: BookingsClient.RequestOptions, ): Promise> { const { bookingId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -796,21 +703,7 @@ export class BookingsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/bookings/{booking_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/bookings/{booking_id}"); } /** @@ -843,12 +736,11 @@ export class BookingsClient { requestOptions?: BookingsClient.RequestOptions, ): Promise> { const { bookingId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -894,21 +786,7 @@ export class BookingsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/bookings/{booking_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/bookings/{booking_id}"); } /** @@ -940,12 +818,11 @@ export class BookingsClient { requestOptions?: BookingsClient.RequestOptions, ): Promise> { const { bookingId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -991,31 +868,11 @@ export class BookingsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/bookings/{booking_id}/cancel.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/bookings/{booking_id}/cancel", + ); } } diff --git a/src/api/resources/bookings/resources/customAttributeDefinitions/client/Client.ts b/src/api/resources/bookings/resources/customAttributeDefinitions/client/Client.ts index 33df4821f..80b36dfaa 100644 --- a/src/api/resources/bookings/resources/customAttributeDefinitions/client/Client.ts +++ b/src/api/resources/bookings/resources/customAttributeDefinitions/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CustomAttributeDefinitionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomAttributeDefinitionsClient { - protected readonly _options: CustomAttributeDefinitionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CustomAttributeDefinitionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -53,12 +54,11 @@ export class CustomAttributeDefinitionsClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -96,23 +96,12 @@ export class CustomAttributeDefinitionsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bookings/custom-attribute-definitions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bookings/custom-attribute-definitions", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -156,12 +145,11 @@ export class CustomAttributeDefinitionsClient { request: Square.bookings.CreateBookingCustomAttributeDefinitionRequest, requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -207,23 +195,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/bookings/custom-attribute-definitions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/bookings/custom-attribute-definitions", + ); } /** @@ -258,12 +235,11 @@ export class CustomAttributeDefinitionsClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -303,23 +279,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bookings/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bookings/custom-attribute-definitions/{key}", + ); } /** @@ -352,12 +317,11 @@ export class CustomAttributeDefinitionsClient { requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { const { key, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -403,23 +367,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/bookings/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/bookings/custom-attribute-definitions/{key}", + ); } /** @@ -451,12 +404,11 @@ export class CustomAttributeDefinitionsClient { requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { const { key } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -496,31 +448,11 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/bookings/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/bookings/custom-attribute-definitions/{key}", + ); } } diff --git a/src/api/resources/bookings/resources/customAttributes/client/Client.ts b/src/api/resources/bookings/resources/customAttributes/client/Client.ts index c5dcaa4fb..329cd2613 100644 --- a/src/api/resources/bookings/resources/customAttributes/client/Client.ts +++ b/src/api/resources/bookings/resources/customAttributes/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CustomAttributesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomAttributesClient { - protected readonly _options: CustomAttributesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CustomAttributesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -55,12 +56,11 @@ export class CustomAttributesClient { request: Square.bookings.BulkDeleteBookingCustomAttributesRequest, requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -106,23 +106,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/bookings/custom-attributes/bulk-delete.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/bookings/custom-attributes/bulk-delete", + ); } /** @@ -158,12 +147,11 @@ export class CustomAttributesClient { request: Square.bookings.BulkUpsertBookingCustomAttributesRequest, requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -209,23 +197,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/bookings/custom-attributes/bulk-upsert.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/bookings/custom-attributes/bulk-upsert", + ); } /** @@ -264,12 +241,11 @@ export class CustomAttributesClient { if (withDefinitions !== undefined) { _queryParams.with_definitions = withDefinitions?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -307,23 +283,12 @@ export class CustomAttributesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bookings/{booking_id}/custom-attributes.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bookings/{booking_id}/custom-attributes", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -377,12 +342,11 @@ export class CustomAttributesClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -422,23 +386,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bookings/{booking_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bookings/{booking_id}/custom-attributes/{key}", + ); } /** @@ -472,12 +425,11 @@ export class CustomAttributesClient { requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { const { bookingId, key, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -523,23 +475,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/bookings/{booking_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/bookings/{booking_id}/custom-attributes/{key}", + ); } /** @@ -572,12 +513,11 @@ export class CustomAttributesClient { requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { const { bookingId, key } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -617,31 +557,11 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/bookings/{booking_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/bookings/{booking_id}/custom-attributes/{key}", + ); } } diff --git a/src/api/resources/bookings/resources/locationProfiles/client/Client.ts b/src/api/resources/bookings/resources/locationProfiles/client/Client.ts index 1ab1fa5ff..3f2f36704 100644 --- a/src/api/resources/bookings/resources/locationProfiles/client/Client.ts +++ b/src/api/resources/bookings/resources/locationProfiles/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace LocationProfilesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class LocationProfilesClient { - protected readonly _options: LocationProfilesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: LocationProfilesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -50,12 +51,11 @@ export class LocationProfilesClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -93,23 +93,12 @@ export class LocationProfilesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bookings/location-booking-profiles.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bookings/location-booking-profiles", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -124,13 +113,4 @@ export class LocationProfilesClient { }, }); } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; - } } diff --git a/src/api/resources/bookings/resources/teamMemberProfiles/client/Client.ts b/src/api/resources/bookings/resources/teamMemberProfiles/client/Client.ts index d73681869..1a13fa9e2 100644 --- a/src/api/resources/bookings/resources/teamMemberProfiles/client/Client.ts +++ b/src/api/resources/bookings/resources/teamMemberProfiles/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace TeamMemberProfilesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class TeamMemberProfilesClient { - protected readonly _options: TeamMemberProfilesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: TeamMemberProfilesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -58,12 +59,11 @@ export class TeamMemberProfilesClient { if (locationId !== undefined) { _queryParams.location_id = locationId; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -101,23 +101,12 @@ export class TeamMemberProfilesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bookings/team-member-booking-profiles.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bookings/team-member-booking-profiles", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -156,12 +145,11 @@ export class TeamMemberProfilesClient { requestOptions?: TeamMemberProfilesClient.RequestOptions, ): Promise> { const { teamMemberId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -201,31 +189,11 @@ export class TeamMemberProfilesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/bookings/team-member-booking-profiles/{team_member_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/bookings/team-member-booking-profiles/{team_member_id}", + ); } } diff --git a/src/api/resources/cards/client/Client.ts b/src/api/resources/cards/client/Client.ts index 34127e617..30cd333da 100644 --- a/src/api/resources/cards/client/Client.ts +++ b/src/api/resources/cards/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace CardsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CardsClient { - protected readonly _options: CardsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CardsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -64,12 +65,11 @@ export class CardsClient { omitUndefined: true, }); } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -107,21 +107,7 @@ export class CardsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/cards."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/cards"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -173,12 +159,11 @@ export class CardsClient { request: Square.CreateCardRequest, requestOptions?: CardsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -224,21 +209,7 @@ export class CardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/cards."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/cards"); } /** @@ -264,12 +235,11 @@ export class CardsClient { requestOptions?: CardsClient.RequestOptions, ): Promise> { const { cardId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -309,21 +279,7 @@ export class CardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/cards/{card_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/cards/{card_id}"); } /** @@ -350,12 +306,11 @@ export class CardsClient { requestOptions?: CardsClient.RequestOptions, ): Promise> { const { cardId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -395,29 +350,6 @@ export class CardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/cards/{card_id}/disable."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/cards/{card_id}/disable"); } } diff --git a/src/api/resources/cashDrawers/client/Client.ts b/src/api/resources/cashDrawers/client/Client.ts index 0c62334dd..516290a28 100644 --- a/src/api/resources/cashDrawers/client/Client.ts +++ b/src/api/resources/cashDrawers/client/Client.ts @@ -1,19 +1,19 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import { ShiftsClient } from "../resources/shifts/client/Client"; export declare namespace CashDrawersClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; } export class CashDrawersClient { - protected readonly _options: CashDrawersClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _shifts: ShiftsClient | undefined; constructor(options: CashDrawersClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get shifts(): ShiftsClient { diff --git a/src/api/resources/cashDrawers/resources/shifts/client/Client.ts b/src/api/resources/cashDrawers/resources/shifts/client/Client.ts index 17a834cae..9a722ac80 100644 --- a/src/api/resources/cashDrawers/resources/shifts/client/Client.ts +++ b/src/api/resources/cashDrawers/resources/shifts/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace ShiftsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class ShiftsClient { - protected readonly _options: ShiftsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: ShiftsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -68,12 +69,11 @@ export class ShiftsClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -111,23 +111,12 @@ export class ShiftsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/cash-drawers/shifts.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/cash-drawers/shifts", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -170,12 +159,11 @@ export class ShiftsClient { const { shiftId, locationId } = request; const _queryParams: Record = {}; _queryParams.location_id = locationId; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -215,23 +203,12 @@ export class ShiftsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/cash-drawers/shifts/{shift_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/cash-drawers/shifts/{shift_id}", + ); } /** @@ -265,12 +242,11 @@ export class ShiftsClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -308,23 +284,12 @@ export class ShiftsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/cash-drawers/shifts/{shift_id}/events.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/cash-drawers/shifts/{shift_id}/events", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -339,13 +304,4 @@ export class ShiftsClient { }, }); } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; - } } diff --git a/src/api/resources/catalog/client/Client.ts b/src/api/resources/catalog/client/Client.ts index 8c5e8f886..b11a31ab5 100644 --- a/src/api/resources/catalog/client/Client.ts +++ b/src/api/resources/catalog/client/Client.ts @@ -1,10 +1,11 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; @@ -12,18 +13,18 @@ import { ImagesClient } from "../resources/images/client/Client"; import { ObjectClient } from "../resources/object/client/Client"; export declare namespace CatalogClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CatalogClient { - protected readonly _options: CatalogClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _images: ImagesClient | undefined; protected _object: ObjectClient | undefined; constructor(options: CatalogClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get images(): ImagesClient { @@ -69,12 +70,11 @@ export class CatalogClient { request: Square.BatchDeleteCatalogObjectsRequest, requestOptions?: CatalogClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -120,21 +120,7 @@ export class CatalogClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/catalog/batch-delete."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/catalog/batch-delete"); } /** @@ -165,12 +151,11 @@ export class CatalogClient { request: Square.BatchGetCatalogObjectsRequest, requestOptions?: CatalogClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -216,21 +201,7 @@ export class CatalogClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/catalog/batch-retrieve."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/catalog/batch-retrieve"); } /** @@ -282,12 +253,11 @@ export class CatalogClient { request: Square.BatchUpsertCatalogObjectsRequest, requestOptions?: CatalogClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -333,21 +303,7 @@ export class CatalogClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/catalog/batch-upsert."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/catalog/batch-upsert"); } /** @@ -366,12 +322,11 @@ export class CatalogClient { private async __info( requestOptions?: CatalogClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -411,21 +366,7 @@ export class CatalogClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/catalog/info."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/catalog/info"); } /** @@ -465,12 +406,11 @@ export class CatalogClient { if (catalogVersion !== undefined) { _queryParams.catalog_version = catalogVersion?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -508,21 +448,7 @@ export class CatalogClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/catalog/list."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/catalog/list"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -576,12 +502,11 @@ export class CatalogClient { request: Square.SearchCatalogObjectsRequest = {}, requestOptions?: CatalogClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -627,21 +552,7 @@ export class CatalogClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/catalog/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/catalog/search"); } /** @@ -696,12 +607,11 @@ export class CatalogClient { request: Square.SearchCatalogItemsRequest = {}, requestOptions?: CatalogClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -747,23 +657,12 @@ export class CatalogClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/catalog/search-catalog-items.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/catalog/search-catalog-items", + ); } /** @@ -792,12 +691,11 @@ export class CatalogClient { request: Square.UpdateItemModifierListsRequest, requestOptions?: CatalogClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -843,23 +741,12 @@ export class CatalogClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/catalog/update-item-modifier-lists.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/catalog/update-item-modifier-lists", + ); } /** @@ -888,12 +775,11 @@ export class CatalogClient { request: Square.UpdateItemTaxesRequest, requestOptions?: CatalogClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -939,31 +825,11 @@ export class CatalogClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/catalog/update-item-taxes.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/catalog/update-item-taxes", + ); } } diff --git a/src/api/resources/catalog/resources/images/client/Client.ts b/src/api/resources/catalog/resources/images/client/Client.ts index 191aedf19..1d08b0153 100644 --- a/src/api/resources/catalog/resources/images/client/Client.ts +++ b/src/api/resources/catalog/resources/images/client/Client.ts @@ -1,26 +1,27 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import { toJson } from "../../../../../../core/json"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace ImagesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class ImagesClient { - protected readonly _options: ImagesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: ImagesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -67,10 +68,11 @@ export class ImagesClient { } const _maybeEncodedRequest = await _request.getRequest(); + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), "Square-Version": requestOptions?.version ?? "2025-10-16", ..._maybeEncodedRequest.headers, }), @@ -116,21 +118,7 @@ export class ImagesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/catalog/images."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/catalog/images"); } /** @@ -177,10 +165,11 @@ export class ImagesClient { } const _maybeEncodedRequest = await _request.getRequest(); + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), "Square-Version": requestOptions?.version ?? "2025-10-16", ..._maybeEncodedRequest.headers, }), @@ -226,29 +215,6 @@ export class ImagesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/catalog/images/{image_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/catalog/images/{image_id}"); } } diff --git a/src/api/resources/catalog/resources/object/client/Client.ts b/src/api/resources/catalog/resources/object/client/Client.ts index 653ef2342..5126f4f16 100644 --- a/src/api/resources/catalog/resources/object/client/Client.ts +++ b/src/api/resources/catalog/resources/object/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace ObjectClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class ObjectClient { - protected readonly _options: ObjectClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: ObjectClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -52,12 +53,11 @@ export class ObjectClient { request: Square.catalog.UpsertCatalogObjectRequest, requestOptions?: ObjectClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -103,21 +103,7 @@ export class ObjectClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/catalog/object."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/catalog/object"); } /** @@ -165,12 +151,11 @@ export class ObjectClient { _queryParams.include_category_path_to_root = includeCategoryPathToRoot?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -210,23 +195,12 @@ export class ObjectClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/catalog/object/{object_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/catalog/object/{object_id}", + ); } /** @@ -261,12 +235,11 @@ export class ObjectClient { requestOptions?: ObjectClient.RequestOptions, ): Promise> { const { objectId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -306,31 +279,11 @@ export class ObjectClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/catalog/object/{object_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/catalog/object/{object_id}", + ); } } diff --git a/src/api/resources/channels/client/Client.ts b/src/api/resources/channels/client/Client.ts index 0975335ce..6d2b1cc6f 100644 --- a/src/api/resources/channels/client/Client.ts +++ b/src/api/resources/channels/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace ChannelsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class ChannelsClient { - protected readonly _options: ChannelsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: ChannelsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -66,12 +67,11 @@ export class ChannelsClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -109,21 +109,7 @@ export class ChannelsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/channels."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/channels"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -161,12 +147,11 @@ export class ChannelsClient { request: Square.BulkRetrieveChannelsRequest, requestOptions?: ChannelsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -212,21 +197,7 @@ export class ChannelsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/channels/bulk-retrieve."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/channels/bulk-retrieve"); } /** @@ -252,12 +223,11 @@ export class ChannelsClient { requestOptions?: ChannelsClient.RequestOptions, ): Promise> { const { channelId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -297,29 +267,6 @@ export class ChannelsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/channels/{channel_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/channels/{channel_id}"); } } diff --git a/src/api/resources/checkout/client/Client.ts b/src/api/resources/checkout/client/Client.ts index 5825d213e..ab5466639 100644 --- a/src/api/resources/checkout/client/Client.ts +++ b/src/api/resources/checkout/client/Client.ts @@ -1,27 +1,28 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; import { PaymentLinksClient } from "../resources/paymentLinks/client/Client"; export declare namespace CheckoutClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CheckoutClient { - protected readonly _options: CheckoutClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _paymentLinks: PaymentLinksClient | undefined; constructor(options: CheckoutClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get paymentLinks(): PaymentLinksClient { @@ -51,12 +52,11 @@ export class CheckoutClient { requestOptions?: CheckoutClient.RequestOptions, ): Promise> { const { locationId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -96,23 +96,12 @@ export class CheckoutClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/online-checkout/location-settings/{location_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/online-checkout/location-settings/{location_id}", + ); } /** @@ -139,12 +128,11 @@ export class CheckoutClient { requestOptions?: CheckoutClient.RequestOptions, ): Promise> { const { locationId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -190,23 +178,12 @@ export class CheckoutClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/online-checkout/location-settings/{location_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/online-checkout/location-settings/{location_id}", + ); } /** @@ -226,12 +203,11 @@ export class CheckoutClient { private async __retrieveMerchantSettings( requestOptions?: CheckoutClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -271,23 +247,12 @@ export class CheckoutClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/online-checkout/merchant-settings.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/online-checkout/merchant-settings", + ); } /** @@ -312,12 +277,11 @@ export class CheckoutClient { request: Square.UpdateMerchantSettingsRequest, requestOptions?: CheckoutClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -363,31 +327,11 @@ export class CheckoutClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/online-checkout/merchant-settings.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/online-checkout/merchant-settings", + ); } } diff --git a/src/api/resources/checkout/resources/paymentLinks/client/Client.ts b/src/api/resources/checkout/resources/paymentLinks/client/Client.ts index 7b1ab8db1..d0ad233ae 100644 --- a/src/api/resources/checkout/resources/paymentLinks/client/Client.ts +++ b/src/api/resources/checkout/resources/paymentLinks/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace PaymentLinksClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class PaymentLinksClient { - protected readonly _options: PaymentLinksClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: PaymentLinksClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -50,12 +51,11 @@ export class PaymentLinksClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -93,23 +93,12 @@ export class PaymentLinksClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/online-checkout/payment-links.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/online-checkout/payment-links", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -155,12 +144,11 @@ export class PaymentLinksClient { request: Square.checkout.CreatePaymentLinkRequest = {}, requestOptions?: PaymentLinksClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -206,23 +194,12 @@ export class PaymentLinksClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/online-checkout/payment-links.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/online-checkout/payment-links", + ); } /** @@ -248,12 +225,11 @@ export class PaymentLinksClient { requestOptions?: PaymentLinksClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -293,23 +269,12 @@ export class PaymentLinksClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/online-checkout/payment-links/{id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/online-checkout/payment-links/{id}", + ); } /** @@ -343,12 +308,11 @@ export class PaymentLinksClient { requestOptions?: PaymentLinksClient.RequestOptions, ): Promise> { const { id, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -394,23 +358,12 @@ export class PaymentLinksClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/online-checkout/payment-links/{id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/online-checkout/payment-links/{id}", + ); } /** @@ -436,12 +389,11 @@ export class PaymentLinksClient { requestOptions?: PaymentLinksClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -481,31 +433,11 @@ export class PaymentLinksClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/online-checkout/payment-links/{id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/online-checkout/payment-links/{id}", + ); } } diff --git a/src/api/resources/customers/client/Client.ts b/src/api/resources/customers/client/Client.ts index 748a6c5b0..8f17236bb 100644 --- a/src/api/resources/customers/client/Client.ts +++ b/src/api/resources/customers/client/Client.ts @@ -1,10 +1,11 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; @@ -15,13 +16,13 @@ import { GroupsClient } from "../resources/groups/client/Client"; import { SegmentsClient } from "../resources/segments/client/Client"; export declare namespace CustomersClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomersClient { - protected readonly _options: CustomersClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _customAttributeDefinitions: CustomAttributeDefinitionsClient | undefined; protected _groups: GroupsClient | undefined; protected _segments: SegmentsClient | undefined; @@ -29,7 +30,7 @@ export class CustomersClient { protected _customAttributes: CustomAttributesClient | undefined; constructor(options: CustomersClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get customAttributeDefinitions(): CustomAttributeDefinitionsClient { @@ -102,12 +103,11 @@ export class CustomersClient { if (count !== undefined) { _queryParams.count = count?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -145,21 +145,7 @@ export class CustomersClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/customers."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/customers"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -219,12 +205,11 @@ export class CustomersClient { request: Square.CreateCustomerRequest = {}, requestOptions?: CustomersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -270,21 +255,7 @@ export class CustomersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/customers."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/customers"); } /** @@ -352,12 +323,11 @@ export class CustomersClient { request: Square.BulkCreateCustomersRequest, requestOptions?: CustomersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -403,21 +373,7 @@ export class CustomersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/customers/bulk-create."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/customers/bulk-create"); } /** @@ -444,12 +400,11 @@ export class CustomersClient { request: Square.BulkDeleteCustomersRequest, requestOptions?: CustomersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -495,21 +450,7 @@ export class CustomersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/customers/bulk-delete."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/customers/bulk-delete"); } /** @@ -536,12 +477,11 @@ export class CustomersClient { request: Square.BulkRetrieveCustomersRequest, requestOptions?: CustomersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -587,21 +527,7 @@ export class CustomersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/customers/bulk-retrieve."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/customers/bulk-retrieve"); } /** @@ -639,12 +565,11 @@ export class CustomersClient { request: Square.BulkUpdateCustomersRequest, requestOptions?: CustomersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -690,21 +615,7 @@ export class CustomersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/customers/bulk-update."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/customers/bulk-update"); } /** @@ -759,12 +670,11 @@ export class CustomersClient { request: Square.SearchCustomersRequest = {}, requestOptions?: CustomersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -810,21 +720,7 @@ export class CustomersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/customers/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/customers/search"); } /** @@ -850,12 +746,11 @@ export class CustomersClient { requestOptions?: CustomersClient.RequestOptions, ): Promise> { const { customerId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -895,21 +790,7 @@ export class CustomersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/customers/{customer_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/customers/{customer_id}"); } /** @@ -941,12 +822,11 @@ export class CustomersClient { requestOptions?: CustomersClient.RequestOptions, ): Promise> { const { customerId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -992,21 +872,7 @@ export class CustomersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/customers/{customer_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/customers/{customer_id}"); } /** @@ -1040,12 +906,11 @@ export class CustomersClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -1085,31 +950,11 @@ export class CustomersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/customers/{customer_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/customers/{customer_id}", + ); } } diff --git a/src/api/resources/customers/resources/cards/client/Client.ts b/src/api/resources/customers/resources/cards/client/Client.ts index 4e4e36436..9ef6fddbb 100644 --- a/src/api/resources/customers/resources/cards/client/Client.ts +++ b/src/api/resources/customers/resources/cards/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CardsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CardsClient { - protected readonly _options: CardsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CardsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -59,12 +60,11 @@ export class CardsClient { requestOptions?: CardsClient.RequestOptions, ): Promise> { const { customerId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -110,23 +110,12 @@ export class CardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/customers/{customer_id}/cards.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/customers/{customer_id}/cards", + ); } /** @@ -153,12 +142,11 @@ export class CardsClient { requestOptions?: CardsClient.RequestOptions, ): Promise> { const { customerId, cardId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -198,31 +186,11 @@ export class CardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/customers/{customer_id}/cards/{card_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/customers/{customer_id}/cards/{card_id}", + ); } } diff --git a/src/api/resources/customers/resources/customAttributeDefinitions/client/Client.ts b/src/api/resources/customers/resources/customAttributeDefinitions/client/Client.ts index ab2242066..24140dddc 100644 --- a/src/api/resources/customers/resources/customAttributeDefinitions/client/Client.ts +++ b/src/api/resources/customers/resources/customAttributeDefinitions/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CustomAttributeDefinitionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomAttributeDefinitionsClient { - protected readonly _options: CustomAttributeDefinitionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CustomAttributeDefinitionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -55,12 +56,11 @@ export class CustomAttributeDefinitionsClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -98,23 +98,12 @@ export class CustomAttributeDefinitionsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/customers/custom-attribute-definitions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/customers/custom-attribute-definitions", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -170,12 +159,11 @@ export class CustomAttributeDefinitionsClient { request: Square.customers.CreateCustomerCustomAttributeDefinitionRequest, requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -221,23 +209,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/customers/custom-attribute-definitions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/customers/custom-attribute-definitions", + ); } /** @@ -273,12 +250,11 @@ export class CustomAttributeDefinitionsClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -318,23 +294,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/customers/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/customers/custom-attribute-definitions/{key}", + ); } /** @@ -370,12 +335,11 @@ export class CustomAttributeDefinitionsClient { requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { const { key, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -421,23 +385,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/customers/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/customers/custom-attribute-definitions/{key}", + ); } /** @@ -468,12 +421,11 @@ export class CustomAttributeDefinitionsClient { requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { const { key } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -513,23 +465,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/customers/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/customers/custom-attribute-definitions/{key}", + ); } /** @@ -603,12 +544,11 @@ export class CustomAttributeDefinitionsClient { request: Square.customers.BatchUpsertCustomerCustomAttributesRequest, requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -654,31 +594,11 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/customers/custom-attributes/bulk-upsert.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/customers/custom-attributes/bulk-upsert", + ); } } diff --git a/src/api/resources/customers/resources/customAttributes/client/Client.ts b/src/api/resources/customers/resources/customAttributes/client/Client.ts index b7f710c5a..8d62fac57 100644 --- a/src/api/resources/customers/resources/customAttributes/client/Client.ts +++ b/src/api/resources/customers/resources/customAttributes/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CustomAttributesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomAttributesClient { - protected readonly _options: CustomAttributesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CustomAttributesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -62,12 +63,11 @@ export class CustomAttributesClient { if (withDefinitions !== undefined) { _queryParams.with_definitions = withDefinitions?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -105,23 +105,12 @@ export class CustomAttributesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/customers/{customer_id}/custom-attributes.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/customers/{customer_id}/custom-attributes", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -179,12 +168,11 @@ export class CustomAttributesClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -224,23 +212,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/customers/{customer_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/customers/{customer_id}/custom-attributes/{key}", + ); } /** @@ -278,12 +255,11 @@ export class CustomAttributesClient { requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { const { customerId, key, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -329,23 +305,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/customers/{customer_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/customers/{customer_id}/custom-attributes/{key}", + ); } /** @@ -376,12 +341,11 @@ export class CustomAttributesClient { requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { const { customerId, key } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -421,31 +385,11 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/customers/{customer_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/customers/{customer_id}/custom-attributes/{key}", + ); } } diff --git a/src/api/resources/customers/resources/groups/client/Client.ts b/src/api/resources/customers/resources/groups/client/Client.ts index 778f7d564..930a30ec2 100644 --- a/src/api/resources/customers/resources/groups/client/Client.ts +++ b/src/api/resources/customers/resources/groups/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace GroupsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class GroupsClient { - protected readonly _options: GroupsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: GroupsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -50,12 +51,11 @@ export class GroupsClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -93,21 +93,7 @@ export class GroupsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/customers/groups."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/customers/groups"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -149,12 +135,11 @@ export class GroupsClient { request: Square.customers.CreateCustomerGroupRequest, requestOptions?: GroupsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -200,21 +185,7 @@ export class GroupsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/customers/groups."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/customers/groups"); } /** @@ -240,12 +211,11 @@ export class GroupsClient { requestOptions?: GroupsClient.RequestOptions, ): Promise> { const { groupId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -285,23 +255,12 @@ export class GroupsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/customers/groups/{group_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/customers/groups/{group_id}", + ); } /** @@ -330,12 +289,11 @@ export class GroupsClient { requestOptions?: GroupsClient.RequestOptions, ): Promise> { const { groupId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -381,23 +339,12 @@ export class GroupsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/customers/groups/{group_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/customers/groups/{group_id}", + ); } /** @@ -423,12 +370,11 @@ export class GroupsClient { requestOptions?: GroupsClient.RequestOptions, ): Promise> { const { groupId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -468,23 +414,12 @@ export class GroupsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/customers/groups/{group_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/customers/groups/{group_id}", + ); } /** @@ -514,12 +449,11 @@ export class GroupsClient { requestOptions?: GroupsClient.RequestOptions, ): Promise> { const { customerId, groupId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -559,23 +493,12 @@ export class GroupsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/customers/{customer_id}/groups/{group_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/customers/{customer_id}/groups/{group_id}", + ); } /** @@ -605,12 +528,11 @@ export class GroupsClient { requestOptions?: GroupsClient.RequestOptions, ): Promise> { const { customerId, groupId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -650,31 +572,11 @@ export class GroupsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/customers/{customer_id}/groups/{group_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/customers/{customer_id}/groups/{group_id}", + ); } } diff --git a/src/api/resources/customers/resources/segments/client/Client.ts b/src/api/resources/customers/resources/segments/client/Client.ts index adf6195eb..e3bf21c80 100644 --- a/src/api/resources/customers/resources/segments/client/Client.ts +++ b/src/api/resources/customers/resources/segments/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace SegmentsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class SegmentsClient { - protected readonly _options: SegmentsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: SegmentsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -50,12 +51,11 @@ export class SegmentsClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -93,23 +93,12 @@ export class SegmentsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/customers/segments.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/customers/segments", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -148,12 +137,11 @@ export class SegmentsClient { requestOptions?: SegmentsClient.RequestOptions, ): Promise> { const { segmentId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -193,31 +181,11 @@ export class SegmentsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/customers/segments/{segment_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/customers/segments/{segment_id}", + ); } } diff --git a/src/api/resources/devices/client/Client.ts b/src/api/resources/devices/client/Client.ts index 561d50912..8d325dfdc 100644 --- a/src/api/resources/devices/client/Client.ts +++ b/src/api/resources/devices/client/Client.ts @@ -1,27 +1,28 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; import { CodesClient } from "../resources/codes/client/Client"; export declare namespace DevicesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class DevicesClient { - protected readonly _options: DevicesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _codes: CodesClient | undefined; constructor(options: DevicesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get codes(): CodesClient { @@ -66,12 +67,11 @@ export class DevicesClient { if (locationId !== undefined) { _queryParams.location_id = locationId; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -109,21 +109,7 @@ export class DevicesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/devices."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/devices"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -162,12 +148,11 @@ export class DevicesClient { requestOptions?: DevicesClient.RequestOptions, ): Promise> { const { deviceId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -207,29 +192,6 @@ export class DevicesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/devices/{device_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/devices/{device_id}"); } } diff --git a/src/api/resources/devices/resources/codes/client/Client.ts b/src/api/resources/devices/resources/codes/client/Client.ts index 49c724f12..ac3bc4248 100644 --- a/src/api/resources/devices/resources/codes/client/Client.ts +++ b/src/api/resources/devices/resources/codes/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CodesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CodesClient { - protected readonly _options: CodesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CodesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -64,12 +65,11 @@ export class CodesClient { omitUndefined: true, }); } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -107,21 +107,7 @@ export class CodesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/devices/codes."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/devices/codes"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -165,12 +151,11 @@ export class CodesClient { request: Square.devices.CreateDeviceCodeRequest, requestOptions?: CodesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -216,21 +201,7 @@ export class CodesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/devices/codes."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/devices/codes"); } /** @@ -256,12 +227,11 @@ export class CodesClient { requestOptions?: CodesClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -301,29 +271,6 @@ export class CodesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/devices/codes/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/devices/codes/{id}"); } } diff --git a/src/api/resources/disputes/client/Client.ts b/src/api/resources/disputes/client/Client.ts index c0872974c..5bcd7333e 100644 --- a/src/api/resources/disputes/client/Client.ts +++ b/src/api/resources/disputes/client/Client.ts @@ -1,28 +1,29 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import { toJson } from "../../../../core/json"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; import { EvidenceClient } from "../resources/evidence/client/Client"; export declare namespace DisputesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class DisputesClient { - protected readonly _options: DisputesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _evidence: EvidenceClient | undefined; constructor(options: DisputesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get evidence(): EvidenceClient { @@ -62,12 +63,11 @@ export class DisputesClient { if (locationId !== undefined) { _queryParams.location_id = locationId; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -105,21 +105,7 @@ export class DisputesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/disputes."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/disputes"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -158,12 +144,11 @@ export class DisputesClient { requestOptions?: DisputesClient.RequestOptions, ): Promise> { const { disputeId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -203,21 +188,7 @@ export class DisputesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/disputes/{dispute_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/disputes/{dispute_id}"); } /** @@ -247,12 +218,11 @@ export class DisputesClient { requestOptions?: DisputesClient.RequestOptions, ): Promise> { const { disputeId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -292,23 +262,12 @@ export class DisputesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/disputes/{dispute_id}/accept.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/disputes/{dispute_id}/accept", + ); } /** @@ -353,10 +312,11 @@ export class DisputesClient { } const _maybeEncodedRequest = await _request.getRequest(); + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), "Square-Version": requestOptions?.version ?? "2025-10-16", ..._maybeEncodedRequest.headers, }), @@ -402,23 +362,12 @@ export class DisputesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/disputes/{dispute_id}/evidence-files.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/disputes/{dispute_id}/evidence-files", + ); } /** @@ -447,12 +396,11 @@ export class DisputesClient { requestOptions?: DisputesClient.RequestOptions, ): Promise> { const { disputeId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -498,23 +446,12 @@ export class DisputesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/disputes/{dispute_id}/evidence-text.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/disputes/{dispute_id}/evidence-text", + ); } /** @@ -546,12 +483,11 @@ export class DisputesClient { requestOptions?: DisputesClient.RequestOptions, ): Promise> { const { disputeId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -591,31 +527,11 @@ export class DisputesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/disputes/{dispute_id}/submit-evidence.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/disputes/{dispute_id}/submit-evidence", + ); } } diff --git a/src/api/resources/disputes/resources/evidence/client/Client.ts b/src/api/resources/disputes/resources/evidence/client/Client.ts index 8f51f0132..417f7ec40 100644 --- a/src/api/resources/disputes/resources/evidence/client/Client.ts +++ b/src/api/resources/disputes/resources/evidence/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace EvidenceClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class EvidenceClient { - protected readonly _options: EvidenceClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: EvidenceClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -47,12 +48,11 @@ export class EvidenceClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -90,23 +90,12 @@ export class EvidenceClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/disputes/{dispute_id}/evidence.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/disputes/{dispute_id}/evidence", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -148,12 +137,11 @@ export class EvidenceClient { requestOptions?: EvidenceClient.RequestOptions, ): Promise> { const { disputeId, evidenceId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -193,23 +181,12 @@ export class EvidenceClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/disputes/{dispute_id}/evidence/{evidence_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/disputes/{dispute_id}/evidence/{evidence_id}", + ); } /** @@ -237,12 +214,11 @@ export class EvidenceClient { requestOptions?: EvidenceClient.RequestOptions, ): Promise> { const { disputeId, evidenceId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -282,31 +258,11 @@ export class EvidenceClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/disputes/{dispute_id}/evidence/{evidence_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/disputes/{dispute_id}/evidence/{evidence_id}", + ); } } diff --git a/src/api/resources/employees/client/Client.ts b/src/api/resources/employees/client/Client.ts index e913ba5f2..3db76d0fb 100644 --- a/src/api/resources/employees/client/Client.ts +++ b/src/api/resources/employees/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace EmployeesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class EmployeesClient { - protected readonly _options: EmployeesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: EmployeesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -61,12 +62,11 @@ export class EmployeesClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -104,21 +104,7 @@ export class EmployeesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/employees."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/employees"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -157,12 +143,11 @@ export class EmployeesClient { requestOptions?: EmployeesClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -202,29 +187,6 @@ export class EmployeesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/employees/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/employees/{id}"); } } diff --git a/src/api/resources/events/client/Client.ts b/src/api/resources/events/client/Client.ts index c1ee6ea62..4d655e9ce 100644 --- a/src/api/resources/events/client/Client.ts +++ b/src/api/resources/events/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace EventsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class EventsClient { - protected readonly _options: EventsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: EventsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -42,12 +43,11 @@ export class EventsClient { request: Square.SearchEventsRequest = {}, requestOptions?: EventsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -93,21 +93,7 @@ export class EventsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/events."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/events"); } /** @@ -129,12 +115,11 @@ export class EventsClient { private async __disableEvents( requestOptions?: EventsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -174,21 +159,7 @@ export class EventsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/events/disable."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/events/disable"); } /** @@ -208,12 +179,11 @@ export class EventsClient { private async __enableEvents( requestOptions?: EventsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -253,21 +223,7 @@ export class EventsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/events/enable."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/events/enable"); } /** @@ -298,12 +254,11 @@ export class EventsClient { _queryParams.api_version = apiVersion; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -343,29 +298,6 @@ export class EventsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/events/types."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/events/types"); } } diff --git a/src/api/resources/giftCards/client/Client.ts b/src/api/resources/giftCards/client/Client.ts index b1a85117c..3fa63d741 100644 --- a/src/api/resources/giftCards/client/Client.ts +++ b/src/api/resources/giftCards/client/Client.ts @@ -1,27 +1,28 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; import { ActivitiesClient } from "../resources/activities/client/Client"; export declare namespace GiftCardsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class GiftCardsClient { - protected readonly _options: GiftCardsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _activities: ActivitiesClient | undefined; constructor(options: GiftCardsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get activities(): ActivitiesClient { @@ -69,12 +70,11 @@ export class GiftCardsClient { if (customerId !== undefined) { _queryParams.customer_id = customerId; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -112,21 +112,7 @@ export class GiftCardsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/gift-cards."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/gift-cards"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -172,12 +158,11 @@ export class GiftCardsClient { request: Square.CreateGiftCardRequest, requestOptions?: GiftCardsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -223,21 +208,7 @@ export class GiftCardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/gift-cards."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/gift-cards"); } /** @@ -262,12 +233,11 @@ export class GiftCardsClient { request: Square.GetGiftCardFromGanRequest, requestOptions?: GiftCardsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -313,21 +283,7 @@ export class GiftCardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/gift-cards/from-gan."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/gift-cards/from-gan"); } /** @@ -352,12 +308,11 @@ export class GiftCardsClient { request: Square.GetGiftCardFromNonceRequest, requestOptions?: GiftCardsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -403,21 +358,7 @@ export class GiftCardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/gift-cards/from-nonce."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/gift-cards/from-nonce"); } /** @@ -444,12 +385,11 @@ export class GiftCardsClient { requestOptions?: GiftCardsClient.RequestOptions, ): Promise> { const { giftCardId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -495,23 +435,12 @@ export class GiftCardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/gift-cards/{gift_card_id}/link-customer.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/gift-cards/{gift_card_id}/link-customer", + ); } /** @@ -538,12 +467,11 @@ export class GiftCardsClient { requestOptions?: GiftCardsClient.RequestOptions, ): Promise> { const { giftCardId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -589,23 +517,12 @@ export class GiftCardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/gift-cards/{gift_card_id}/unlink-customer.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/gift-cards/{gift_card_id}/unlink-customer", + ); } /** @@ -631,12 +548,11 @@ export class GiftCardsClient { requestOptions?: GiftCardsClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -676,29 +592,6 @@ export class GiftCardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/gift-cards/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/gift-cards/{id}"); } } diff --git a/src/api/resources/giftCards/resources/activities/client/Client.ts b/src/api/resources/giftCards/resources/activities/client/Client.ts index 26d1f4f83..bce03f9cf 100644 --- a/src/api/resources/giftCards/resources/activities/client/Client.ts +++ b/src/api/resources/giftCards/resources/activities/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace ActivitiesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class ActivitiesClient { - protected readonly _options: ActivitiesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: ActivitiesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -77,12 +78,11 @@ export class ActivitiesClient { if (sortOrder !== undefined) { _queryParams.sort_order = sortOrder; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -120,23 +120,12 @@ export class ActivitiesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/gift-cards/activities.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/gift-cards/activities", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -184,12 +173,11 @@ export class ActivitiesClient { request: Square.giftCards.CreateGiftCardActivityRequest, requestOptions?: ActivitiesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -235,29 +223,6 @@ export class ActivitiesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/gift-cards/activities."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/gift-cards/activities"); } } diff --git a/src/api/resources/inventory/client/Client.ts b/src/api/resources/inventory/client/Client.ts index b9bb81d50..32e667fd7 100644 --- a/src/api/resources/inventory/client/Client.ts +++ b/src/api/resources/inventory/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace InventoryClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class InventoryClient { - protected readonly _options: InventoryClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: InventoryClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -46,12 +47,11 @@ export class InventoryClient { requestOptions?: InventoryClient.RequestOptions, ): Promise> { const { adjustmentId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -91,23 +91,12 @@ export class InventoryClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/inventory/adjustment/{adjustment_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/inventory/adjustment/{adjustment_id}", + ); } /** @@ -134,12 +123,11 @@ export class InventoryClient { requestOptions?: InventoryClient.RequestOptions, ): Promise> { const { adjustmentId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -179,23 +167,12 @@ export class InventoryClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/inventory/adjustments/{adjustment_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/inventory/adjustments/{adjustment_id}", + ); } /** @@ -234,12 +211,11 @@ export class InventoryClient { request: Square.BatchChangeInventoryRequest, requestOptions?: InventoryClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -285,21 +261,7 @@ export class InventoryClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/inventory/batch-change."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/inventory/batch-change"); } /** @@ -330,12 +292,11 @@ export class InventoryClient { request: Square.BatchRetrieveInventoryChangesRequest, requestOptions?: InventoryClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -381,23 +342,12 @@ export class InventoryClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/inventory/batch-retrieve-changes.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/inventory/batch-retrieve-changes", + ); } /** @@ -425,12 +375,11 @@ export class InventoryClient { request: Square.BatchGetInventoryCountsRequest, requestOptions?: InventoryClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -476,23 +425,12 @@ export class InventoryClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/inventory/batch-retrieve-counts.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/inventory/batch-retrieve-counts", + ); } /** @@ -534,12 +472,11 @@ export class InventoryClient { request: Square.BatchChangeInventoryRequest, requestOptions?: InventoryClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -585,23 +522,12 @@ export class InventoryClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/inventory/changes/batch-create.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/inventory/changes/batch-create", + ); } /** @@ -635,12 +561,11 @@ export class InventoryClient { async ( request: Square.BatchRetrieveInventoryChangesRequest, ): Promise> => { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -684,23 +609,12 @@ export class InventoryClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/inventory/changes/batch-retrieve.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/inventory/changes/batch-retrieve", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -747,12 +661,11 @@ export class InventoryClient { async ( request: Square.BatchGetInventoryCountsRequest, ): Promise> => { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -796,23 +709,12 @@ export class InventoryClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/inventory/counts/batch-retrieve.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/inventory/counts/batch-retrieve", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -852,12 +754,11 @@ export class InventoryClient { requestOptions?: InventoryClient.RequestOptions, ): Promise> { const { physicalCountId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -897,23 +798,12 @@ export class InventoryClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/inventory/physical-count/{physical_count_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/inventory/physical-count/{physical_count_id}", + ); } /** @@ -940,12 +830,11 @@ export class InventoryClient { requestOptions?: InventoryClient.RequestOptions, ): Promise> { const { physicalCountId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -985,23 +874,12 @@ export class InventoryClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/inventory/physical-counts/{physical_count_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/inventory/physical-counts/{physical_count_id}", + ); } /** @@ -1028,12 +906,11 @@ export class InventoryClient { requestOptions?: InventoryClient.RequestOptions, ): Promise> { const { transferId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -1073,23 +950,12 @@ export class InventoryClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/inventory/transfers/{transfer_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/inventory/transfers/{transfer_id}", + ); } /** @@ -1124,12 +990,11 @@ export class InventoryClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -1167,23 +1032,12 @@ export class InventoryClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/inventory/{catalog_object_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/inventory/{catalog_object_id}", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -1240,12 +1094,11 @@ export class InventoryClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -1283,23 +1136,12 @@ export class InventoryClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/inventory/{catalog_object_id}/changes.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/inventory/{catalog_object_id}/changes", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -1314,13 +1156,4 @@ export class InventoryClient { }, }); } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; - } } diff --git a/src/api/resources/invoices/client/Client.ts b/src/api/resources/invoices/client/Client.ts index ae1562f96..b5b418be9 100644 --- a/src/api/resources/invoices/client/Client.ts +++ b/src/api/resources/invoices/client/Client.ts @@ -1,26 +1,27 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import { toJson } from "../../../../core/json"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace InvoicesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class InvoicesClient { - protected readonly _options: InvoicesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: InvoicesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -53,12 +54,11 @@ export class InvoicesClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -96,21 +96,7 @@ export class InvoicesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/invoices."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/invoices"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -192,12 +178,11 @@ export class InvoicesClient { request: Square.CreateInvoiceRequest, requestOptions?: InvoicesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -243,21 +228,7 @@ export class InvoicesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/invoices."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/invoices"); } /** @@ -298,12 +269,11 @@ export class InvoicesClient { request: Square.SearchInvoicesRequest, requestOptions?: InvoicesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -349,21 +319,7 @@ export class InvoicesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/invoices/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/invoices/search"); } /** @@ -389,12 +345,11 @@ export class InvoicesClient { requestOptions?: InvoicesClient.RequestOptions, ): Promise> { const { invoiceId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -434,21 +389,7 @@ export class InvoicesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/invoices/{invoice_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/invoices/{invoice_id}"); } /** @@ -485,12 +426,11 @@ export class InvoicesClient { requestOptions?: InvoicesClient.RequestOptions, ): Promise> { const { invoiceId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -536,21 +476,7 @@ export class InvoicesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/invoices/{invoice_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/invoices/{invoice_id}"); } /** @@ -584,12 +510,11 @@ export class InvoicesClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -629,21 +554,7 @@ export class InvoicesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling DELETE /v2/invoices/{invoice_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "DELETE", "/v2/invoices/{invoice_id}"); } /** @@ -694,10 +605,11 @@ export class InvoicesClient { } const _maybeEncodedRequest = await _request.getRequest(); + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), "Square-Version": requestOptions?.version ?? "2025-10-16", ..._maybeEncodedRequest.headers, }), @@ -743,23 +655,12 @@ export class InvoicesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/invoices/{invoice_id}/attachments.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/invoices/{invoice_id}/attachments", + ); } /** @@ -787,12 +688,11 @@ export class InvoicesClient { requestOptions?: InvoicesClient.RequestOptions, ): Promise> { const { invoiceId, attachmentId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -832,23 +732,12 @@ export class InvoicesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/invoices/{invoice_id}/attachments/{attachment_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/invoices/{invoice_id}/attachments/{attachment_id}", + ); } /** @@ -878,12 +767,11 @@ export class InvoicesClient { requestOptions?: InvoicesClient.RequestOptions, ): Promise> { const { invoiceId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -929,23 +817,12 @@ export class InvoicesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/invoices/{invoice_id}/cancel.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/invoices/{invoice_id}/cancel", + ); } /** @@ -986,12 +863,11 @@ export class InvoicesClient { requestOptions?: InvoicesClient.RequestOptions, ): Promise> { const { invoiceId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -1037,31 +913,11 @@ export class InvoicesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/invoices/{invoice_id}/publish.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/invoices/{invoice_id}/publish", + ); } } diff --git a/src/api/resources/labor/client/Client.ts b/src/api/resources/labor/client/Client.ts index d10e8a1c8..2e80968b3 100644 --- a/src/api/resources/labor/client/Client.ts +++ b/src/api/resources/labor/client/Client.ts @@ -1,10 +1,11 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; @@ -15,13 +16,13 @@ import { TeamMemberWagesClient } from "../resources/teamMemberWages/client/Clien import { WorkweekConfigsClient } from "../resources/workweekConfigs/client/Client"; export declare namespace LaborClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class LaborClient { - protected readonly _options: LaborClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _breakTypes: BreakTypesClient | undefined; protected _employeeWages: EmployeeWagesClient | undefined; protected _shifts: ShiftsClient | undefined; @@ -29,7 +30,7 @@ export class LaborClient { protected _workweekConfigs: WorkweekConfigsClient | undefined; constructor(options: LaborClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get breakTypes(): BreakTypesClient { @@ -92,12 +93,11 @@ export class LaborClient { request: Square.CreateScheduledShiftRequest, requestOptions?: LaborClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -143,21 +143,7 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/labor/scheduled-shifts."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/labor/scheduled-shifts"); } /** @@ -190,12 +176,11 @@ export class LaborClient { request: Square.BulkPublishScheduledShiftsRequest, requestOptions?: LaborClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -241,23 +226,12 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/labor/scheduled-shifts/bulk-publish.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/labor/scheduled-shifts/bulk-publish", + ); } /** @@ -293,12 +267,11 @@ export class LaborClient { request: Square.SearchScheduledShiftsRequest = {}, requestOptions?: LaborClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -344,23 +317,12 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/labor/scheduled-shifts/search.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/labor/scheduled-shifts/search", + ); } /** @@ -386,12 +348,11 @@ export class LaborClient { requestOptions?: LaborClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -431,23 +392,12 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/labor/scheduled-shifts/{id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/labor/scheduled-shifts/{id}", + ); } /** @@ -494,12 +444,11 @@ export class LaborClient { requestOptions?: LaborClient.RequestOptions, ): Promise> { const { id, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -545,23 +494,12 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/labor/scheduled-shifts/{id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/labor/scheduled-shifts/{id}", + ); } /** @@ -591,12 +529,11 @@ export class LaborClient { requestOptions?: LaborClient.RequestOptions, ): Promise> { const { id, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -642,23 +579,12 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/labor/scheduled-shifts/{id}/publish.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/labor/scheduled-shifts/{id}/publish", + ); } /** @@ -726,12 +652,11 @@ export class LaborClient { request: Square.CreateTimecardRequest, requestOptions?: LaborClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -777,21 +702,7 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/labor/timecards."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/labor/timecards"); } /** @@ -841,12 +752,11 @@ export class LaborClient { request: Square.SearchTimecardsRequest = {}, requestOptions?: LaborClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -892,21 +802,7 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/labor/timecards/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/labor/timecards/search"); } /** @@ -932,12 +828,11 @@ export class LaborClient { requestOptions?: LaborClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -977,21 +872,7 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/labor/timecards/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/labor/timecards/{id}"); } /** @@ -1052,12 +933,11 @@ export class LaborClient { requestOptions?: LaborClient.RequestOptions, ): Promise> { const { id, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -1103,21 +983,7 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/labor/timecards/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/labor/timecards/{id}"); } /** @@ -1143,12 +1009,11 @@ export class LaborClient { requestOptions?: LaborClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -1188,29 +1053,6 @@ export class LaborClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling DELETE /v2/labor/timecards/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "DELETE", "/v2/labor/timecards/{id}"); } } diff --git a/src/api/resources/labor/resources/breakTypes/client/Client.ts b/src/api/resources/labor/resources/breakTypes/client/Client.ts index 8e068679f..f27f4f8dd 100644 --- a/src/api/resources/labor/resources/breakTypes/client/Client.ts +++ b/src/api/resources/labor/resources/breakTypes/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace BreakTypesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class BreakTypesClient { - protected readonly _options: BreakTypesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: BreakTypesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -54,12 +55,11 @@ export class BreakTypesClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -97,21 +97,7 @@ export class BreakTypesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/labor/break-types."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/labor/break-types"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -168,12 +154,11 @@ export class BreakTypesClient { request: Square.labor.CreateBreakTypeRequest, requestOptions?: BreakTypesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -219,21 +204,7 @@ export class BreakTypesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/labor/break-types."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/labor/break-types"); } /** @@ -259,12 +230,11 @@ export class BreakTypesClient { requestOptions?: BreakTypesClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -304,21 +274,7 @@ export class BreakTypesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/labor/break-types/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/labor/break-types/{id}"); } /** @@ -351,12 +307,11 @@ export class BreakTypesClient { requestOptions?: BreakTypesClient.RequestOptions, ): Promise> { const { id, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -402,21 +357,7 @@ export class BreakTypesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/labor/break-types/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/labor/break-types/{id}"); } /** @@ -444,12 +385,11 @@ export class BreakTypesClient { requestOptions?: BreakTypesClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -489,29 +429,6 @@ export class BreakTypesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling DELETE /v2/labor/break-types/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "DELETE", "/v2/labor/break-types/{id}"); } } diff --git a/src/api/resources/labor/resources/employeeWages/client/Client.ts b/src/api/resources/labor/resources/employeeWages/client/Client.ts index 7c91bc303..576023582 100644 --- a/src/api/resources/labor/resources/employeeWages/client/Client.ts +++ b/src/api/resources/labor/resources/employeeWages/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace EmployeeWagesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class EmployeeWagesClient { - protected readonly _options: EmployeeWagesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: EmployeeWagesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -54,12 +55,11 @@ export class EmployeeWagesClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -97,23 +97,12 @@ export class EmployeeWagesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/labor/employee-wages.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/labor/employee-wages", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -152,12 +141,11 @@ export class EmployeeWagesClient { requestOptions?: EmployeeWagesClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -197,29 +185,6 @@ export class EmployeeWagesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/labor/employee-wages/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/labor/employee-wages/{id}"); } } diff --git a/src/api/resources/labor/resources/shifts/client/Client.ts b/src/api/resources/labor/resources/shifts/client/Client.ts index 4a82b4c74..d92557a22 100644 --- a/src/api/resources/labor/resources/shifts/client/Client.ts +++ b/src/api/resources/labor/resources/shifts/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace ShiftsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class ShiftsClient { - protected readonly _options: ShiftsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: ShiftsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -87,12 +88,11 @@ export class ShiftsClient { request: Square.labor.CreateShiftRequest, requestOptions?: ShiftsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -138,21 +138,7 @@ export class ShiftsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/labor/shifts."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/labor/shifts"); } /** @@ -202,12 +188,11 @@ export class ShiftsClient { request: Square.labor.SearchShiftsRequest = {}, requestOptions?: ShiftsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -253,21 +238,7 @@ export class ShiftsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/labor/shifts/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/labor/shifts/search"); } /** @@ -293,12 +264,11 @@ export class ShiftsClient { requestOptions?: ShiftsClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -338,21 +308,7 @@ export class ShiftsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/labor/shifts/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/labor/shifts/{id}"); } /** @@ -412,12 +368,11 @@ export class ShiftsClient { requestOptions?: ShiftsClient.RequestOptions, ): Promise> { const { id, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -463,21 +418,7 @@ export class ShiftsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/labor/shifts/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/labor/shifts/{id}"); } /** @@ -503,12 +444,11 @@ export class ShiftsClient { requestOptions?: ShiftsClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -548,29 +488,6 @@ export class ShiftsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling DELETE /v2/labor/shifts/{id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "DELETE", "/v2/labor/shifts/{id}"); } } diff --git a/src/api/resources/labor/resources/teamMemberWages/client/Client.ts b/src/api/resources/labor/resources/teamMemberWages/client/Client.ts index 872737f7b..59bd1c9ba 100644 --- a/src/api/resources/labor/resources/teamMemberWages/client/Client.ts +++ b/src/api/resources/labor/resources/teamMemberWages/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace TeamMemberWagesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class TeamMemberWagesClient { - protected readonly _options: TeamMemberWagesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: TeamMemberWagesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -54,12 +55,11 @@ export class TeamMemberWagesClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -97,23 +97,12 @@ export class TeamMemberWagesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/labor/team-member-wages.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/labor/team-member-wages", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -152,12 +141,11 @@ export class TeamMemberWagesClient { requestOptions?: TeamMemberWagesClient.RequestOptions, ): Promise> { const { id } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -197,31 +185,11 @@ export class TeamMemberWagesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/labor/team-member-wages/{id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/labor/team-member-wages/{id}", + ); } } diff --git a/src/api/resources/labor/resources/workweekConfigs/client/Client.ts b/src/api/resources/labor/resources/workweekConfigs/client/Client.ts index 896eb1cf9..ddae083bd 100644 --- a/src/api/resources/labor/resources/workweekConfigs/client/Client.ts +++ b/src/api/resources/labor/resources/workweekConfigs/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace WorkweekConfigsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class WorkweekConfigsClient { - protected readonly _options: WorkweekConfigsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: WorkweekConfigsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -50,12 +51,11 @@ export class WorkweekConfigsClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -93,23 +93,12 @@ export class WorkweekConfigsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/labor/workweek-configs.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/labor/workweek-configs", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -153,12 +142,11 @@ export class WorkweekConfigsClient { requestOptions?: WorkweekConfigsClient.RequestOptions, ): Promise> { const { id, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -204,31 +192,11 @@ export class WorkweekConfigsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/labor/workweek-configs/{id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/labor/workweek-configs/{id}", + ); } } diff --git a/src/api/resources/locations/client/Client.ts b/src/api/resources/locations/client/Client.ts index aef3dcf22..0128556a5 100644 --- a/src/api/resources/locations/client/Client.ts +++ b/src/api/resources/locations/client/Client.ts @@ -1,10 +1,11 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; @@ -13,19 +14,19 @@ import { CustomAttributesClient } from "../resources/customAttributes/client/Cli import { TransactionsClient } from "../resources/transactions/client/Client"; export declare namespace LocationsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class LocationsClient { - protected readonly _options: LocationsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _customAttributeDefinitions: CustomAttributeDefinitionsClient | undefined; protected _customAttributes: CustomAttributesClient | undefined; protected _transactions: TransactionsClient | undefined; constructor(options: LocationsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get customAttributeDefinitions(): CustomAttributeDefinitionsClient { @@ -58,12 +59,11 @@ export class LocationsClient { private async __list( requestOptions?: LocationsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -103,21 +103,7 @@ export class LocationsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/locations."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/locations"); } /** @@ -157,12 +143,11 @@ export class LocationsClient { request: Square.CreateLocationRequest = {}, requestOptions?: LocationsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -208,21 +193,7 @@ export class LocationsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/locations."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/locations"); } /** @@ -249,12 +220,11 @@ export class LocationsClient { requestOptions?: LocationsClient.RequestOptions, ): Promise> { const { locationId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -294,21 +264,7 @@ export class LocationsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/locations/{location_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/locations/{location_id}"); } /** @@ -352,12 +308,11 @@ export class LocationsClient { requestOptions?: LocationsClient.RequestOptions, ): Promise> { const { locationId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -403,21 +358,7 @@ export class LocationsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/locations/{location_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/locations/{location_id}"); } /** @@ -523,12 +464,11 @@ export class LocationsClient { requestOptions?: LocationsClient.RequestOptions, ): Promise> { const { locationId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -574,31 +514,11 @@ export class LocationsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/locations/{location_id}/checkouts.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/locations/{location_id}/checkouts", + ); } } diff --git a/src/api/resources/locations/resources/customAttributeDefinitions/client/Client.ts b/src/api/resources/locations/resources/customAttributeDefinitions/client/Client.ts index 46bc33be1..847626dce 100644 --- a/src/api/resources/locations/resources/customAttributeDefinitions/client/Client.ts +++ b/src/api/resources/locations/resources/customAttributeDefinitions/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CustomAttributeDefinitionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomAttributeDefinitionsClient { - protected readonly _options: CustomAttributeDefinitionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CustomAttributeDefinitionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -60,12 +61,11 @@ export class CustomAttributeDefinitionsClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -103,23 +103,12 @@ export class CustomAttributeDefinitionsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/locations/custom-attribute-definitions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/locations/custom-attribute-definitions", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -171,12 +160,11 @@ export class CustomAttributeDefinitionsClient { request: Square.locations.CreateLocationCustomAttributeDefinitionRequest, requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -222,23 +210,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/locations/custom-attribute-definitions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/locations/custom-attribute-definitions", + ); } /** @@ -272,12 +249,11 @@ export class CustomAttributeDefinitionsClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -317,23 +293,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/locations/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/locations/custom-attribute-definitions/{key}", + ); } /** @@ -366,12 +331,11 @@ export class CustomAttributeDefinitionsClient { requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { const { key, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -417,23 +381,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/locations/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/locations/custom-attribute-definitions/{key}", + ); } /** @@ -462,12 +415,11 @@ export class CustomAttributeDefinitionsClient { requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { const { key } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -507,31 +459,11 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/locations/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/locations/custom-attribute-definitions/{key}", + ); } } diff --git a/src/api/resources/locations/resources/customAttributes/client/Client.ts b/src/api/resources/locations/resources/customAttributes/client/Client.ts index 65a3191e6..4845e39de 100644 --- a/src/api/resources/locations/resources/customAttributes/client/Client.ts +++ b/src/api/resources/locations/resources/customAttributes/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CustomAttributesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomAttributesClient { - protected readonly _options: CustomAttributesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CustomAttributesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -56,12 +57,11 @@ export class CustomAttributesClient { request: Square.locations.BulkDeleteLocationCustomAttributesRequest, requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -107,23 +107,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/locations/custom-attributes/bulk-delete.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/locations/custom-attributes/bulk-delete", + ); } /** @@ -179,12 +168,11 @@ export class CustomAttributesClient { request: Square.locations.BulkUpsertLocationCustomAttributesRequest, requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -230,23 +218,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/locations/custom-attributes/bulk-upsert.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/locations/custom-attributes/bulk-upsert", + ); } /** @@ -294,12 +271,11 @@ export class CustomAttributesClient { if (withDefinitions !== undefined) { _queryParams.with_definitions = withDefinitions?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -337,23 +313,12 @@ export class CustomAttributesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/locations/{location_id}/custom-attributes.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/locations/{location_id}/custom-attributes", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -408,12 +373,11 @@ export class CustomAttributesClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -453,23 +417,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/locations/{location_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/locations/{location_id}/custom-attributes/{key}", + ); } /** @@ -504,12 +457,11 @@ export class CustomAttributesClient { requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { const { locationId, key, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -555,23 +507,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/locations/{location_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/locations/{location_id}/custom-attributes/{key}", + ); } /** @@ -600,12 +541,11 @@ export class CustomAttributesClient { requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { const { locationId, key } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -645,31 +585,11 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/locations/{location_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/locations/{location_id}/custom-attributes/{key}", + ); } } diff --git a/src/api/resources/locations/resources/transactions/client/Client.ts b/src/api/resources/locations/resources/transactions/client/Client.ts index 8c44874ac..1ce3a0e2d 100644 --- a/src/api/resources/locations/resources/transactions/client/Client.ts +++ b/src/api/resources/locations/resources/transactions/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace TransactionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class TransactionsClient { - protected readonly _options: TransactionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: TransactionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -74,12 +75,11 @@ export class TransactionsClient { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -119,23 +119,12 @@ export class TransactionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/locations/{location_id}/transactions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/locations/{location_id}/transactions", + ); } /** @@ -162,12 +151,11 @@ export class TransactionsClient { requestOptions?: TransactionsClient.RequestOptions, ): Promise> { const { locationId, transactionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -207,23 +195,12 @@ export class TransactionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/locations/{location_id}/transactions/{transaction_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/locations/{location_id}/transactions/{transaction_id}", + ); } /** @@ -255,12 +232,11 @@ export class TransactionsClient { requestOptions?: TransactionsClient.RequestOptions, ): Promise> { const { locationId, transactionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -300,23 +276,12 @@ export class TransactionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/locations/{location_id}/transactions/{transaction_id}/capture.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/locations/{location_id}/transactions/{transaction_id}/capture", + ); } /** @@ -348,12 +313,11 @@ export class TransactionsClient { requestOptions?: TransactionsClient.RequestOptions, ): Promise> { const { locationId, transactionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -393,31 +357,11 @@ export class TransactionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/locations/{location_id}/transactions/{transaction_id}/void.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/locations/{location_id}/transactions/{transaction_id}/void", + ); } } diff --git a/src/api/resources/loyalty/client/Client.ts b/src/api/resources/loyalty/client/Client.ts index 3c1136eb3..b6e636287 100644 --- a/src/api/resources/loyalty/client/Client.ts +++ b/src/api/resources/loyalty/client/Client.ts @@ -1,10 +1,11 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; @@ -13,19 +14,19 @@ import { ProgramsClient } from "../resources/programs/client/Client"; import { RewardsClient } from "../resources/rewards/client/Client"; export declare namespace LoyaltyClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class LoyaltyClient { - protected readonly _options: LoyaltyClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _accounts: AccountsClient | undefined; protected _programs: ProgramsClient | undefined; protected _rewards: RewardsClient | undefined; constructor(options: LoyaltyClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get accounts(): AccountsClient { @@ -76,12 +77,11 @@ export class LoyaltyClient { request: Square.SearchLoyaltyEventsRequest = {}, requestOptions?: LoyaltyClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -127,29 +127,6 @@ export class LoyaltyClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/loyalty/events/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/loyalty/events/search"); } } diff --git a/src/api/resources/loyalty/resources/accounts/client/Client.ts b/src/api/resources/loyalty/resources/accounts/client/Client.ts index 372059c4b..49f32e9c7 100644 --- a/src/api/resources/loyalty/resources/accounts/client/Client.ts +++ b/src/api/resources/loyalty/resources/accounts/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace AccountsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class AccountsClient { - protected readonly _options: AccountsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: AccountsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -50,12 +51,11 @@ export class AccountsClient { request: Square.loyalty.CreateLoyaltyAccountRequest, requestOptions?: AccountsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -101,21 +101,7 @@ export class AccountsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/loyalty/accounts."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/loyalty/accounts"); } /** @@ -149,12 +135,11 @@ export class AccountsClient { request: Square.loyalty.SearchLoyaltyAccountsRequest = {}, requestOptions?: AccountsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -200,21 +185,7 @@ export class AccountsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/loyalty/accounts/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/loyalty/accounts/search"); } /** @@ -240,12 +211,11 @@ export class AccountsClient { requestOptions?: AccountsClient.RequestOptions, ): Promise> { const { accountId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -285,23 +255,12 @@ export class AccountsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/loyalty/accounts/{account_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/loyalty/accounts/{account_id}", + ); } /** @@ -345,12 +304,11 @@ export class AccountsClient { requestOptions?: AccountsClient.RequestOptions, ): Promise> { const { accountId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -396,23 +354,12 @@ export class AccountsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/loyalty/accounts/{account_id}/accumulate.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/loyalty/accounts/{account_id}/accumulate", + ); } /** @@ -447,12 +394,11 @@ export class AccountsClient { requestOptions?: AccountsClient.RequestOptions, ): Promise> { const { accountId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -498,31 +444,11 @@ export class AccountsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/loyalty/accounts/{account_id}/adjust.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/loyalty/accounts/{account_id}/adjust", + ); } } diff --git a/src/api/resources/loyalty/resources/programs/client/Client.ts b/src/api/resources/loyalty/resources/programs/client/Client.ts index ec5248058..61f087274 100644 --- a/src/api/resources/loyalty/resources/programs/client/Client.ts +++ b/src/api/resources/loyalty/resources/programs/client/Client.ts @@ -1,27 +1,28 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; import { PromotionsClient } from "../resources/promotions/client/Client"; export declare namespace ProgramsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class ProgramsClient { - protected readonly _options: ProgramsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _promotions: PromotionsClient | undefined; constructor(options: ProgramsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get promotions(): PromotionsClient { @@ -49,12 +50,11 @@ export class ProgramsClient { private async __list( requestOptions?: ProgramsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -94,21 +94,7 @@ export class ProgramsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/loyalty/programs."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/loyalty/programs"); } /** @@ -136,12 +122,11 @@ export class ProgramsClient { requestOptions?: ProgramsClient.RequestOptions, ): Promise> { const { programId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -181,23 +166,12 @@ export class ProgramsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/loyalty/programs/{program_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/loyalty/programs/{program_id}", + ); } /** @@ -239,12 +213,11 @@ export class ProgramsClient { requestOptions?: ProgramsClient.RequestOptions, ): Promise> { const { programId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -290,31 +263,11 @@ export class ProgramsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/loyalty/programs/{program_id}/calculate.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/loyalty/programs/{program_id}/calculate", + ); } } diff --git a/src/api/resources/loyalty/resources/programs/resources/promotions/client/Client.ts b/src/api/resources/loyalty/resources/programs/resources/promotions/client/Client.ts index 4b8aa03d4..7db918564 100644 --- a/src/api/resources/loyalty/resources/programs/resources/promotions/client/Client.ts +++ b/src/api/resources/loyalty/resources/programs/resources/promotions/client/Client.ts @@ -1,25 +1,29 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../../../BaseClient"; +import { + type NormalizedClientOptionsWithAuth, + normalizeClientOptionsWithAuth, +} from "../../../../../../../../BaseClient"; import * as core from "../../../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../core/headers"; import * as environments from "../../../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../../../errors/index"; import * as serializers from "../../../../../../../../serialization/index"; import type * as Square from "../../../../../../../index"; export declare namespace PromotionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class PromotionsClient { - protected readonly _options: PromotionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: PromotionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -59,12 +63,11 @@ export class PromotionsClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -102,23 +105,12 @@ export class PromotionsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/loyalty/programs/{program_id}/promotions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/loyalty/programs/{program_id}/promotions", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -184,12 +176,11 @@ export class PromotionsClient { requestOptions?: PromotionsClient.RequestOptions, ): Promise> { const { programId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -235,23 +226,12 @@ export class PromotionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/loyalty/programs/{program_id}/promotions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/loyalty/programs/{program_id}/promotions", + ); } /** @@ -278,12 +258,11 @@ export class PromotionsClient { requestOptions?: PromotionsClient.RequestOptions, ): Promise> { const { programId, promotionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -323,23 +302,12 @@ export class PromotionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/loyalty/programs/{program_id}/promotions/{promotion_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/loyalty/programs/{program_id}/promotions/{promotion_id}", + ); } /** @@ -371,12 +339,11 @@ export class PromotionsClient { requestOptions?: PromotionsClient.RequestOptions, ): Promise> { const { programId, promotionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -416,31 +383,11 @@ export class PromotionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/loyalty/programs/{program_id}/promotions/{promotion_id}/cancel.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/loyalty/programs/{program_id}/promotions/{promotion_id}/cancel", + ); } } diff --git a/src/api/resources/loyalty/resources/rewards/client/Client.ts b/src/api/resources/loyalty/resources/rewards/client/Client.ts index c67ce6f31..2f9c72a23 100644 --- a/src/api/resources/loyalty/resources/rewards/client/Client.ts +++ b/src/api/resources/loyalty/resources/rewards/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace RewardsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class RewardsClient { - protected readonly _options: RewardsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: RewardsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -56,12 +57,11 @@ export class RewardsClient { request: Square.loyalty.CreateLoyaltyRewardRequest, requestOptions?: RewardsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -107,21 +107,7 @@ export class RewardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/loyalty/rewards."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/loyalty/rewards"); } /** @@ -155,12 +141,11 @@ export class RewardsClient { request: Square.loyalty.SearchLoyaltyRewardsRequest = {}, requestOptions?: RewardsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -206,21 +191,7 @@ export class RewardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/loyalty/rewards/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/loyalty/rewards/search"); } /** @@ -246,12 +217,11 @@ export class RewardsClient { requestOptions?: RewardsClient.RequestOptions, ): Promise> { const { rewardId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -291,23 +261,12 @@ export class RewardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/loyalty/rewards/{reward_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/loyalty/rewards/{reward_id}", + ); } /** @@ -341,12 +300,11 @@ export class RewardsClient { requestOptions?: RewardsClient.RequestOptions, ): Promise> { const { rewardId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -386,23 +344,12 @@ export class RewardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/loyalty/rewards/{reward_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/loyalty/rewards/{reward_id}", + ); } /** @@ -440,12 +387,11 @@ export class RewardsClient { requestOptions?: RewardsClient.RequestOptions, ): Promise> { const { rewardId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -491,31 +437,11 @@ export class RewardsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/loyalty/rewards/{reward_id}/redeem.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/loyalty/rewards/{reward_id}/redeem", + ); } } diff --git a/src/api/resources/merchants/client/Client.ts b/src/api/resources/merchants/client/Client.ts index c841f2685..1e2cf060e 100644 --- a/src/api/resources/merchants/client/Client.ts +++ b/src/api/resources/merchants/client/Client.ts @@ -1,10 +1,11 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; @@ -12,18 +13,18 @@ import { CustomAttributeDefinitionsClient } from "../resources/customAttributeDe import { CustomAttributesClient } from "../resources/customAttributes/client/Client"; export declare namespace MerchantsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class MerchantsClient { - protected readonly _options: MerchantsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _customAttributeDefinitions: CustomAttributeDefinitionsClient | undefined; protected _customAttributes: CustomAttributesClient | undefined; constructor(options: MerchantsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get customAttributeDefinitions(): CustomAttributeDefinitionsClient { @@ -67,12 +68,11 @@ export class MerchantsClient { if (cursor !== undefined) { _queryParams.cursor = cursor?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -110,21 +110,7 @@ export class MerchantsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/merchants."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/merchants"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -163,12 +149,11 @@ export class MerchantsClient { requestOptions?: MerchantsClient.RequestOptions, ): Promise> { const { merchantId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -208,29 +193,6 @@ export class MerchantsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/merchants/{merchant_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/merchants/{merchant_id}"); } } diff --git a/src/api/resources/merchants/resources/customAttributeDefinitions/client/Client.ts b/src/api/resources/merchants/resources/customAttributeDefinitions/client/Client.ts index d220083af..4661d154a 100644 --- a/src/api/resources/merchants/resources/customAttributeDefinitions/client/Client.ts +++ b/src/api/resources/merchants/resources/customAttributeDefinitions/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CustomAttributeDefinitionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomAttributeDefinitionsClient { - protected readonly _options: CustomAttributeDefinitionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CustomAttributeDefinitionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -60,12 +61,11 @@ export class CustomAttributeDefinitionsClient { if (cursor !== undefined) { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -103,23 +103,12 @@ export class CustomAttributeDefinitionsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/merchants/custom-attribute-definitions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/merchants/custom-attribute-definitions", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -171,12 +160,11 @@ export class CustomAttributeDefinitionsClient { request: Square.merchants.CreateMerchantCustomAttributeDefinitionRequest, requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -222,23 +210,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/merchants/custom-attribute-definitions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/merchants/custom-attribute-definitions", + ); } /** @@ -272,12 +249,11 @@ export class CustomAttributeDefinitionsClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -317,23 +293,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/merchants/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/merchants/custom-attribute-definitions/{key}", + ); } /** @@ -366,12 +331,11 @@ export class CustomAttributeDefinitionsClient { requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { const { key, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -417,23 +381,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/merchants/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/merchants/custom-attribute-definitions/{key}", + ); } /** @@ -462,12 +415,11 @@ export class CustomAttributeDefinitionsClient { requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { const { key } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -507,31 +459,11 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/merchants/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/merchants/custom-attribute-definitions/{key}", + ); } } diff --git a/src/api/resources/merchants/resources/customAttributes/client/Client.ts b/src/api/resources/merchants/resources/customAttributes/client/Client.ts index 4284a3da1..6db105ae2 100644 --- a/src/api/resources/merchants/resources/customAttributes/client/Client.ts +++ b/src/api/resources/merchants/resources/customAttributes/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CustomAttributesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomAttributesClient { - protected readonly _options: CustomAttributesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CustomAttributesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -53,12 +54,11 @@ export class CustomAttributesClient { request: Square.merchants.BulkDeleteMerchantCustomAttributesRequest, requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -104,23 +104,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/merchants/custom-attributes/bulk-delete.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/merchants/custom-attributes/bulk-delete", + ); } /** @@ -169,12 +158,11 @@ export class CustomAttributesClient { request: Square.merchants.BulkUpsertMerchantCustomAttributesRequest, requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -220,23 +208,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/merchants/custom-attributes/bulk-upsert.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/merchants/custom-attributes/bulk-upsert", + ); } /** @@ -284,12 +261,11 @@ export class CustomAttributesClient { if (withDefinitions !== undefined) { _queryParams.with_definitions = withDefinitions?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -327,23 +303,12 @@ export class CustomAttributesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/merchants/{merchant_id}/custom-attributes.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/merchants/{merchant_id}/custom-attributes", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -398,12 +363,11 @@ export class CustomAttributesClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -443,23 +407,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/merchants/{merchant_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/merchants/{merchant_id}/custom-attributes/{key}", + ); } /** @@ -494,12 +447,11 @@ export class CustomAttributesClient { requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { const { merchantId, key, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -545,23 +497,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/merchants/{merchant_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/merchants/{merchant_id}/custom-attributes/{key}", + ); } /** @@ -590,12 +531,11 @@ export class CustomAttributesClient { requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { const { merchantId, key } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -635,31 +575,11 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/merchants/{merchant_id}/custom-attributes/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/merchants/{merchant_id}/custom-attributes/{key}", + ); } } diff --git a/src/api/resources/mobile/client/Client.ts b/src/api/resources/mobile/client/Client.ts index e2c4a0e6c..d6af69879 100644 --- a/src/api/resources/mobile/client/Client.ts +++ b/src/api/resources/mobile/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace MobileClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class MobileClient { - protected readonly _options: MobileClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: MobileClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -58,12 +59,11 @@ export class MobileClient { request: Square.CreateMobileAuthorizationCodeRequest = {}, requestOptions?: MobileClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -109,29 +109,6 @@ export class MobileClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /mobile/authorization-code."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/mobile/authorization-code"); } } diff --git a/src/api/resources/oAuth/client/Client.ts b/src/api/resources/oAuth/client/Client.ts index e5078aa95..558e83b9b 100644 --- a/src/api/resources/oAuth/client/Client.ts +++ b/src/api/resources/oAuth/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace OAuthClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class OAuthClient { - protected readonly _options: OAuthClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: OAuthClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -58,12 +59,11 @@ export class OAuthClient { request: Square.RevokeTokenRequest = {}, requestOptions?: OAuthClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -109,21 +109,7 @@ export class OAuthClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /oauth2/revoke."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/oauth2/revoke"); } /** @@ -219,21 +205,7 @@ export class OAuthClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /oauth2/token."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/oauth2/token"); } /** @@ -266,12 +238,11 @@ export class OAuthClient { private async __retrieveTokenStatus( requestOptions?: OAuthClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -311,21 +282,7 @@ export class OAuthClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /oauth2/token/status."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/oauth2/token/status"); } /** @@ -339,7 +296,9 @@ export class OAuthClient { } private async __authorize(requestOptions?: OAuthClient.RequestOptions): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, @@ -372,29 +331,6 @@ export class OAuthClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /oauth2/authorize."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/oauth2/authorize"); } } diff --git a/src/api/resources/orders/client/Client.ts b/src/api/resources/orders/client/Client.ts index f274686c4..6827de36d 100644 --- a/src/api/resources/orders/client/Client.ts +++ b/src/api/resources/orders/client/Client.ts @@ -1,10 +1,11 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; @@ -12,18 +13,18 @@ import { CustomAttributeDefinitionsClient } from "../resources/customAttributeDe import { CustomAttributesClient } from "../resources/customAttributes/client/Client"; export declare namespace OrdersClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class OrdersClient { - protected readonly _options: OrdersClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _customAttributeDefinitions: CustomAttributeDefinitionsClient | undefined; protected _customAttributes: CustomAttributesClient | undefined; constructor(options: OrdersClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get customAttributeDefinitions(): CustomAttributeDefinitionsClient { @@ -107,12 +108,11 @@ export class OrdersClient { request: Square.CreateOrderRequest, requestOptions?: OrdersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -158,21 +158,7 @@ export class OrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/orders."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/orders"); } /** @@ -200,12 +186,11 @@ export class OrdersClient { request: Square.BatchGetOrdersRequest, requestOptions?: OrdersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -251,21 +236,7 @@ export class OrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/orders/batch-retrieve."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/orders/batch-retrieve"); } /** @@ -312,12 +283,11 @@ export class OrdersClient { request: Square.CalculateOrderRequest, requestOptions?: OrdersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -363,21 +333,7 @@ export class OrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/orders/calculate."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/orders/calculate"); } /** @@ -405,12 +361,11 @@ export class OrdersClient { request: Square.CloneOrderRequest, requestOptions?: OrdersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -456,21 +411,7 @@ export class OrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/orders/clone."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/orders/clone"); } /** @@ -530,12 +471,11 @@ export class OrdersClient { request: Square.SearchOrdersRequest = {}, requestOptions?: OrdersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -581,21 +521,7 @@ export class OrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/orders/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/orders/search"); } /** @@ -621,12 +547,11 @@ export class OrdersClient { requestOptions?: OrdersClient.RequestOptions, ): Promise> { const { orderId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -666,21 +591,7 @@ export class OrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/orders/{order_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/orders/{order_id}"); } /** @@ -735,12 +646,11 @@ export class OrdersClient { requestOptions?: OrdersClient.RequestOptions, ): Promise> { const { orderId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -786,21 +696,7 @@ export class OrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/orders/{order_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/orders/{order_id}"); } /** @@ -841,12 +737,11 @@ export class OrdersClient { requestOptions?: OrdersClient.RequestOptions, ): Promise> { const { orderId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -892,29 +787,6 @@ export class OrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/orders/{order_id}/pay."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/orders/{order_id}/pay"); } } diff --git a/src/api/resources/orders/resources/customAttributeDefinitions/client/Client.ts b/src/api/resources/orders/resources/customAttributeDefinitions/client/Client.ts index ae99a3bbe..c2c346ffe 100644 --- a/src/api/resources/orders/resources/customAttributeDefinitions/client/Client.ts +++ b/src/api/resources/orders/resources/customAttributeDefinitions/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CustomAttributeDefinitionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomAttributeDefinitionsClient { - protected readonly _options: CustomAttributeDefinitionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CustomAttributeDefinitionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -62,12 +63,11 @@ export class CustomAttributeDefinitionsClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -105,23 +105,12 @@ export class CustomAttributeDefinitionsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/orders/custom-attribute-definitions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/orders/custom-attribute-definitions", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -172,12 +161,11 @@ export class CustomAttributeDefinitionsClient { request: Square.orders.CreateOrderCustomAttributeDefinitionRequest, requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -223,23 +211,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/orders/custom-attribute-definitions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/orders/custom-attribute-definitions", + ); } /** @@ -275,12 +252,11 @@ export class CustomAttributeDefinitionsClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -320,23 +296,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/orders/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/orders/custom-attribute-definitions/{key}", + ); } /** @@ -370,12 +335,11 @@ export class CustomAttributeDefinitionsClient { requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { const { key, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -421,23 +385,12 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/orders/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/orders/custom-attribute-definitions/{key}", + ); } /** @@ -465,12 +418,11 @@ export class CustomAttributeDefinitionsClient { requestOptions?: CustomAttributeDefinitionsClient.RequestOptions, ): Promise> { const { key } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -510,31 +462,11 @@ export class CustomAttributeDefinitionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/orders/custom-attribute-definitions/{key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/orders/custom-attribute-definitions/{key}", + ); } } diff --git a/src/api/resources/orders/resources/customAttributes/client/Client.ts b/src/api/resources/orders/resources/customAttributes/client/Client.ts index 7b66d1088..ee4bcd662 100644 --- a/src/api/resources/orders/resources/customAttributes/client/Client.ts +++ b/src/api/resources/orders/resources/customAttributes/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CustomAttributesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CustomAttributesClient { - protected readonly _options: CustomAttributesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CustomAttributesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -66,12 +67,11 @@ export class CustomAttributesClient { request: Square.orders.BulkDeleteOrderCustomAttributesRequest, requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -117,23 +117,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/orders/custom-attributes/bulk-delete.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/orders/custom-attributes/bulk-delete", + ); } /** @@ -188,12 +177,11 @@ export class CustomAttributesClient { request: Square.orders.BulkUpsertOrderCustomAttributesRequest, requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -239,23 +227,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/orders/custom-attributes/bulk-upsert.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/orders/custom-attributes/bulk-upsert", + ); } /** @@ -305,12 +282,11 @@ export class CustomAttributesClient { if (withDefinitions !== undefined) { _queryParams.with_definitions = withDefinitions?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -348,23 +324,12 @@ export class CustomAttributesClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/orders/{order_id}/custom-attributes.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/orders/{order_id}/custom-attributes", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -422,12 +387,11 @@ export class CustomAttributesClient { _queryParams.with_definition = withDefinition?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -467,23 +431,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/orders/{order_id}/custom-attributes/{custom_attribute_key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/orders/{order_id}/custom-attributes/{custom_attribute_key}", + ); } /** @@ -523,12 +476,11 @@ export class CustomAttributesClient { requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { const { orderId, customAttributeKey, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -574,23 +526,12 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/orders/{order_id}/custom-attributes/{custom_attribute_key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/orders/{order_id}/custom-attributes/{custom_attribute_key}", + ); } /** @@ -621,12 +562,11 @@ export class CustomAttributesClient { requestOptions?: CustomAttributesClient.RequestOptions, ): Promise> { const { orderId, customAttributeKey } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -666,31 +606,11 @@ export class CustomAttributesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/orders/{order_id}/custom-attributes/{custom_attribute_key}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/orders/{order_id}/custom-attributes/{custom_attribute_key}", + ); } } diff --git a/src/api/resources/payments/client/Client.ts b/src/api/resources/payments/client/Client.ts index 0af30c97f..bcf35fd17 100644 --- a/src/api/resources/payments/client/Client.ts +++ b/src/api/resources/payments/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace PaymentsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class PaymentsClient { - protected readonly _options: PaymentsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: PaymentsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -124,12 +125,11 @@ export class PaymentsClient { omitUndefined: true, }); } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -167,21 +167,7 @@ export class PaymentsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/payments."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/payments"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -240,12 +226,11 @@ export class PaymentsClient { request: Square.CreatePaymentRequest, requestOptions?: PaymentsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -291,21 +276,7 @@ export class PaymentsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/payments."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/payments"); } /** @@ -340,12 +311,11 @@ export class PaymentsClient { request: Square.CancelPaymentByIdempotencyKeyRequest, requestOptions?: PaymentsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -391,21 +361,7 @@ export class PaymentsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/payments/cancel."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/payments/cancel"); } /** @@ -431,12 +387,11 @@ export class PaymentsClient { requestOptions?: PaymentsClient.RequestOptions, ): Promise> { const { paymentId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -476,21 +431,7 @@ export class PaymentsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/payments/{payment_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/payments/{payment_id}"); } /** @@ -529,12 +470,11 @@ export class PaymentsClient { requestOptions?: PaymentsClient.RequestOptions, ): Promise> { const { paymentId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -580,21 +520,7 @@ export class PaymentsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/payments/{payment_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/payments/{payment_id}"); } /** @@ -621,12 +547,11 @@ export class PaymentsClient { requestOptions?: PaymentsClient.RequestOptions, ): Promise> { const { paymentId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -666,23 +591,12 @@ export class PaymentsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/payments/{payment_id}/cancel.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/payments/{payment_id}/cancel", + ); } /** @@ -711,12 +625,11 @@ export class PaymentsClient { requestOptions?: PaymentsClient.RequestOptions, ): Promise> { const { paymentId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -762,31 +675,11 @@ export class PaymentsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/payments/{payment_id}/complete.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/payments/{payment_id}/complete", + ); } } diff --git a/src/api/resources/payouts/client/Client.ts b/src/api/resources/payouts/client/Client.ts index b45ec7dd2..d4f939be2 100644 --- a/src/api/resources/payouts/client/Client.ts +++ b/src/api/resources/payouts/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace PayoutsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class PayoutsClient { - protected readonly _options: PayoutsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: PayoutsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -76,12 +77,11 @@ export class PayoutsClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -119,21 +119,7 @@ export class PayoutsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/payouts."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/payouts"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -173,12 +159,11 @@ export class PayoutsClient { requestOptions?: PayoutsClient.RequestOptions, ): Promise> { const { payoutId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -218,21 +203,7 @@ export class PayoutsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/payouts/{payout_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/payouts/{payout_id}"); } /** @@ -272,12 +243,11 @@ export class PayoutsClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -315,23 +285,12 @@ export class PayoutsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/payouts/{payout_id}/payout-entries.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/payouts/{payout_id}/payout-entries", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -346,13 +305,4 @@ export class PayoutsClient { }, }); } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; - } } diff --git a/src/api/resources/refunds/client/Client.ts b/src/api/resources/refunds/client/Client.ts index d4fe1040d..40379d33d 100644 --- a/src/api/resources/refunds/client/Client.ts +++ b/src/api/resources/refunds/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace RefundsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class RefundsClient { - protected readonly _options: RefundsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: RefundsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -106,12 +107,11 @@ export class RefundsClient { omitUndefined: true, }); } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -149,21 +149,7 @@ export class RefundsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/refunds."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/refunds"); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -214,12 +200,11 @@ export class RefundsClient { request: Square.RefundPaymentRequest, requestOptions?: RefundsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -265,21 +250,7 @@ export class RefundsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/refunds."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/refunds"); } /** @@ -305,12 +276,11 @@ export class RefundsClient { requestOptions?: RefundsClient.RequestOptions, ): Promise> { const { refundId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -350,29 +320,6 @@ export class RefundsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/refunds/{refund_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/refunds/{refund_id}"); } } diff --git a/src/api/resources/sites/client/Client.ts b/src/api/resources/sites/client/Client.ts index f41fa2c00..20386cb06 100644 --- a/src/api/resources/sites/client/Client.ts +++ b/src/api/resources/sites/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace SitesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class SitesClient { - protected readonly _options: SitesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: SitesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -40,12 +41,11 @@ export class SitesClient { private async __list( requestOptions?: SitesClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -85,29 +85,6 @@ export class SitesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/sites."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/sites"); } } diff --git a/src/api/resources/snippets/client/Client.ts b/src/api/resources/snippets/client/Client.ts index 393e800b9..eadbd681d 100644 --- a/src/api/resources/snippets/client/Client.ts +++ b/src/api/resources/snippets/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace SnippetsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class SnippetsClient { - protected readonly _options: SnippetsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: SnippetsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -50,12 +51,11 @@ export class SnippetsClient { requestOptions?: SnippetsClient.RequestOptions, ): Promise> { const { siteId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -95,21 +95,7 @@ export class SnippetsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/sites/{site_id}/snippet."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/sites/{site_id}/snippet"); } /** @@ -144,12 +130,11 @@ export class SnippetsClient { requestOptions?: SnippetsClient.RequestOptions, ): Promise> { const { siteId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -195,21 +180,7 @@ export class SnippetsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/sites/{site_id}/snippet."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/sites/{site_id}/snippet"); } /** @@ -240,12 +211,11 @@ export class SnippetsClient { requestOptions?: SnippetsClient.RequestOptions, ): Promise> { const { siteId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -285,31 +255,11 @@ export class SnippetsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/sites/{site_id}/snippet.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/sites/{site_id}/snippet", + ); } } diff --git a/src/api/resources/subscriptions/client/Client.ts b/src/api/resources/subscriptions/client/Client.ts index 41fea99d4..8d3ef5df4 100644 --- a/src/api/resources/subscriptions/client/Client.ts +++ b/src/api/resources/subscriptions/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace SubscriptionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class SubscriptionsClient { - protected readonly _options: SubscriptionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: SubscriptionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -64,12 +65,11 @@ export class SubscriptionsClient { request: Square.CreateSubscriptionRequest, requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -115,21 +115,7 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/subscriptions."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/subscriptions"); } /** @@ -157,12 +143,11 @@ export class SubscriptionsClient { request: Square.BulkSwapPlanRequest, requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -208,23 +193,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/subscriptions/bulk-swap-plan.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/subscriptions/bulk-swap-plan", + ); } /** @@ -268,12 +242,11 @@ export class SubscriptionsClient { request: Square.SearchSubscriptionsRequest = {}, requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -319,21 +292,7 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/subscriptions/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/subscriptions/search"); } /** @@ -365,12 +324,11 @@ export class SubscriptionsClient { _queryParams.include = include; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -410,23 +368,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/subscriptions/{subscription_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/subscriptions/{subscription_id}", + ); } /** @@ -456,12 +403,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -507,23 +453,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/subscriptions/{subscription_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/subscriptions/{subscription_id}", + ); } /** @@ -550,12 +485,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId, actionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -595,23 +529,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/subscriptions/{subscription_id}/actions/{action_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/subscriptions/{subscription_id}/actions/{action_id}", + ); } /** @@ -639,12 +562,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -690,23 +612,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/subscriptions/{subscription_id}/billing-anchor.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/subscriptions/{subscription_id}/billing-anchor", + ); } /** @@ -734,12 +645,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -779,23 +689,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/subscriptions/{subscription_id}/cancel.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/subscriptions/{subscription_id}/cancel", + ); } /** @@ -827,12 +726,11 @@ export class SubscriptionsClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -870,23 +768,12 @@ export class SubscriptionsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/subscriptions/{subscription_id}/events.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/subscriptions/{subscription_id}/events", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -925,12 +812,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -976,23 +862,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/subscriptions/{subscription_id}/pause.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/subscriptions/{subscription_id}/pause", + ); } /** @@ -1018,12 +893,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -1069,23 +943,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/subscriptions/{subscription_id}/resume.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/subscriptions/{subscription_id}/resume", + ); } /** @@ -1117,12 +980,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -1168,31 +1030,11 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/subscriptions/{subscription_id}/swap-plan.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/subscriptions/{subscription_id}/swap-plan", + ); } } diff --git a/src/api/resources/team/client/Client.ts b/src/api/resources/team/client/Client.ts index 44884116b..ed44a352c 100644 --- a/src/api/resources/team/client/Client.ts +++ b/src/api/resources/team/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace TeamClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class TeamClient { - protected readonly _options: TeamClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: TeamClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -50,12 +51,11 @@ export class TeamClient { _queryParams.cursor = cursor; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -95,21 +95,7 @@ export class TeamClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/team-members/jobs."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/team-members/jobs"); } /** @@ -139,12 +125,11 @@ export class TeamClient { request: Square.CreateJobRequest, requestOptions?: TeamClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -190,21 +175,7 @@ export class TeamClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/team-members/jobs."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/team-members/jobs"); } /** @@ -230,12 +201,11 @@ export class TeamClient { requestOptions?: TeamClient.RequestOptions, ): Promise> { const { jobId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -275,23 +245,12 @@ export class TeamClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/team-members/jobs/{job_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/team-members/jobs/{job_id}", + ); } /** @@ -323,12 +282,11 @@ export class TeamClient { requestOptions?: TeamClient.RequestOptions, ): Promise> { const { jobId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -374,31 +332,11 @@ export class TeamClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/team-members/jobs/{job_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/team-members/jobs/{job_id}", + ); } } diff --git a/src/api/resources/teamMembers/client/Client.ts b/src/api/resources/teamMembers/client/Client.ts index f1a7c5af1..550e9ab4f 100644 --- a/src/api/resources/teamMembers/client/Client.ts +++ b/src/api/resources/teamMembers/client/Client.ts @@ -1,27 +1,28 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; import { WageSettingClient } from "../resources/wageSetting/client/Client"; export declare namespace TeamMembersClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class TeamMembersClient { - protected readonly _options: TeamMembersClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _wageSetting: WageSettingClient | undefined; constructor(options: TeamMembersClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get wageSetting(): WageSettingClient { @@ -86,12 +87,11 @@ export class TeamMembersClient { request: Square.CreateTeamMemberRequest, requestOptions?: TeamMembersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -137,21 +137,7 @@ export class TeamMembersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/team-members."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/team-members"); } /** @@ -207,12 +193,11 @@ export class TeamMembersClient { request: Square.BatchCreateTeamMembersRequest, requestOptions?: TeamMembersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -258,21 +243,7 @@ export class TeamMembersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/team-members/bulk-create."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/team-members/bulk-create"); } /** @@ -331,12 +302,11 @@ export class TeamMembersClient { request: Square.BatchUpdateTeamMembersRequest, requestOptions?: TeamMembersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -382,21 +352,7 @@ export class TeamMembersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/team-members/bulk-update."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/team-members/bulk-update"); } /** @@ -429,12 +385,11 @@ export class TeamMembersClient { request: Square.SearchTeamMembersRequest = {}, requestOptions?: TeamMembersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -480,21 +435,7 @@ export class TeamMembersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/team-members/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/team-members/search"); } /** @@ -521,12 +462,11 @@ export class TeamMembersClient { requestOptions?: TeamMembersClient.RequestOptions, ): Promise> { const { teamMemberId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -566,23 +506,12 @@ export class TeamMembersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/team-members/{team_member_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/team-members/{team_member_id}", + ); } /** @@ -642,12 +571,11 @@ export class TeamMembersClient { requestOptions?: TeamMembersClient.RequestOptions, ): Promise> { const { teamMemberId, body: _body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -693,31 +621,11 @@ export class TeamMembersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/team-members/{team_member_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/team-members/{team_member_id}", + ); } } diff --git a/src/api/resources/teamMembers/resources/wageSetting/client/Client.ts b/src/api/resources/teamMembers/resources/wageSetting/client/Client.ts index 56f3ebe62..ab0dd5161 100644 --- a/src/api/resources/teamMembers/resources/wageSetting/client/Client.ts +++ b/src/api/resources/teamMembers/resources/wageSetting/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace WageSettingClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class WageSettingClient { - protected readonly _options: WageSettingClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: WageSettingClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -50,12 +51,11 @@ export class WageSettingClient { requestOptions?: WageSettingClient.RequestOptions, ): Promise> { const { teamMemberId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -95,23 +95,12 @@ export class WageSettingClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/team-members/{team_member_id}/wage-setting.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/team-members/{team_member_id}/wage-setting", + ); } /** @@ -163,12 +152,11 @@ export class WageSettingClient { requestOptions?: WageSettingClient.RequestOptions, ): Promise> { const { teamMemberId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -214,31 +202,11 @@ export class WageSettingClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/team-members/{team_member_id}/wage-setting.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/team-members/{team_member_id}/wage-setting", + ); } } diff --git a/src/api/resources/terminal/client/Client.ts b/src/api/resources/terminal/client/Client.ts index 8b0d70f68..0dde00fc4 100644 --- a/src/api/resources/terminal/client/Client.ts +++ b/src/api/resources/terminal/client/Client.ts @@ -1,10 +1,11 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; @@ -13,19 +14,19 @@ import { CheckoutsClient } from "../resources/checkouts/client/Client"; import { RefundsClient } from "../resources/refunds/client/Client"; export declare namespace TerminalClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class TerminalClient { - protected readonly _options: TerminalClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _actions: ActionsClient | undefined; protected _checkouts: CheckoutsClient | undefined; protected _refunds: RefundsClient | undefined; constructor(options: TerminalClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get actions(): ActionsClient { @@ -65,12 +66,11 @@ export class TerminalClient { requestOptions?: TerminalClient.RequestOptions, ): Promise> { const { actionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -110,23 +110,12 @@ export class TerminalClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/terminals/actions/{action_id}/dismiss.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/terminals/actions/{action_id}/dismiss", + ); } /** @@ -152,12 +141,11 @@ export class TerminalClient { requestOptions?: TerminalClient.RequestOptions, ): Promise> { const { checkoutId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -197,23 +185,12 @@ export class TerminalClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/terminals/checkouts/{checkout_id}/dismiss.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/terminals/checkouts/{checkout_id}/dismiss", + ); } /** @@ -239,12 +216,11 @@ export class TerminalClient { requestOptions?: TerminalClient.RequestOptions, ): Promise> { const { terminalRefundId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -284,31 +260,11 @@ export class TerminalClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/terminals/refunds/{terminal_refund_id}/dismiss.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/terminals/refunds/{terminal_refund_id}/dismiss", + ); } } diff --git a/src/api/resources/terminal/resources/actions/client/Client.ts b/src/api/resources/terminal/resources/actions/client/Client.ts index 58fd69a33..690749582 100644 --- a/src/api/resources/terminal/resources/actions/client/Client.ts +++ b/src/api/resources/terminal/resources/actions/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace ActionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class ActionsClient { - protected readonly _options: ActionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: ActionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -53,12 +54,11 @@ export class ActionsClient { request: Square.terminal.CreateTerminalActionRequest, requestOptions?: ActionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -104,21 +104,7 @@ export class ActionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/terminals/actions."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/terminals/actions"); } /** @@ -153,12 +139,11 @@ export class ActionsClient { request: Square.terminal.SearchTerminalActionsRequest = {}, requestOptions?: ActionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -204,21 +189,7 @@ export class ActionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/terminals/actions/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/terminals/actions/search"); } /** @@ -244,12 +215,11 @@ export class ActionsClient { requestOptions?: ActionsClient.RequestOptions, ): Promise> { const { actionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -289,23 +259,12 @@ export class ActionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/terminals/actions/{action_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/terminals/actions/{action_id}", + ); } /** @@ -331,12 +290,11 @@ export class ActionsClient { requestOptions?: ActionsClient.RequestOptions, ): Promise> { const { actionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -376,31 +334,11 @@ export class ActionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/terminals/actions/{action_id}/cancel.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/terminals/actions/{action_id}/cancel", + ); } } diff --git a/src/api/resources/terminal/resources/checkouts/client/Client.ts b/src/api/resources/terminal/resources/checkouts/client/Client.ts index db5d41260..7f04534ed 100644 --- a/src/api/resources/terminal/resources/checkouts/client/Client.ts +++ b/src/api/resources/terminal/resources/checkouts/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace CheckoutsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class CheckoutsClient { - protected readonly _options: CheckoutsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: CheckoutsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -56,12 +57,11 @@ export class CheckoutsClient { request: Square.terminal.CreateTerminalCheckoutRequest, requestOptions?: CheckoutsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -107,21 +107,7 @@ export class CheckoutsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/terminals/checkouts."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/terminals/checkouts"); } /** @@ -151,12 +137,11 @@ export class CheckoutsClient { request: Square.terminal.SearchTerminalCheckoutsRequest = {}, requestOptions?: CheckoutsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -202,23 +187,12 @@ export class CheckoutsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/terminals/checkouts/search.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/terminals/checkouts/search", + ); } /** @@ -244,12 +218,11 @@ export class CheckoutsClient { requestOptions?: CheckoutsClient.RequestOptions, ): Promise> { const { checkoutId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -289,23 +262,12 @@ export class CheckoutsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/terminals/checkouts/{checkout_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/terminals/checkouts/{checkout_id}", + ); } /** @@ -331,12 +293,11 @@ export class CheckoutsClient { requestOptions?: CheckoutsClient.RequestOptions, ): Promise> { const { checkoutId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -376,31 +337,11 @@ export class CheckoutsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/terminals/checkouts/{checkout_id}/cancel.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/terminals/checkouts/{checkout_id}/cancel", + ); } } diff --git a/src/api/resources/terminal/resources/refunds/client/Client.ts b/src/api/resources/terminal/resources/refunds/client/Client.ts index 509e7c40c..e21e8592d 100644 --- a/src/api/resources/terminal/resources/refunds/client/Client.ts +++ b/src/api/resources/terminal/resources/refunds/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace RefundsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class RefundsClient { - protected readonly _options: RefundsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: RefundsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -53,12 +54,11 @@ export class RefundsClient { request: Square.terminal.CreateTerminalRefundRequest, requestOptions?: RefundsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -104,21 +104,7 @@ export class RefundsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/terminals/refunds."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/terminals/refunds"); } /** @@ -148,12 +134,11 @@ export class RefundsClient { request: Square.terminal.SearchTerminalRefundsRequest = {}, requestOptions?: RefundsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -199,21 +184,7 @@ export class RefundsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/terminals/refunds/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/terminals/refunds/search"); } /** @@ -239,12 +210,11 @@ export class RefundsClient { requestOptions?: RefundsClient.RequestOptions, ): Promise> { const { terminalRefundId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -284,23 +254,12 @@ export class RefundsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/terminals/refunds/{terminal_refund_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/terminals/refunds/{terminal_refund_id}", + ); } /** @@ -326,12 +285,11 @@ export class RefundsClient { requestOptions?: RefundsClient.RequestOptions, ): Promise> { const { terminalRefundId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -371,31 +329,11 @@ export class RefundsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/terminals/refunds/{terminal_refund_id}/cancel.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/terminals/refunds/{terminal_refund_id}/cancel", + ); } } diff --git a/src/api/resources/transferOrders/client/Client.ts b/src/api/resources/transferOrders/client/Client.ts index 2d10116b8..aa9e0f55d 100644 --- a/src/api/resources/transferOrders/client/Client.ts +++ b/src/api/resources/transferOrders/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace TransferOrdersClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class TransferOrdersClient { - protected readonly _options: TransferOrdersClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: TransferOrdersClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -78,12 +79,11 @@ export class TransferOrdersClient { request: Square.CreateTransferOrderRequest, requestOptions?: TransferOrdersClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -129,21 +129,7 @@ export class TransferOrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/transfer-orders."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/transfer-orders"); } /** @@ -183,12 +169,11 @@ export class TransferOrdersClient { async ( request: Square.SearchTransferOrdersRequest, ): Promise> => { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -232,23 +217,12 @@ export class TransferOrdersClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/transfer-orders/search.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/transfer-orders/search", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -293,12 +267,11 @@ export class TransferOrdersClient { requestOptions?: TransferOrdersClient.RequestOptions, ): Promise> { const { transferOrderId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -338,23 +311,12 @@ export class TransferOrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/transfer-orders/{transfer_order_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/transfer-orders/{transfer_order_id}", + ); } /** @@ -402,12 +364,11 @@ export class TransferOrdersClient { requestOptions?: TransferOrdersClient.RequestOptions, ): Promise> { const { transferOrderId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -453,23 +414,12 @@ export class TransferOrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/transfer-orders/{transfer_order_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/transfer-orders/{transfer_order_id}", + ); } /** @@ -505,12 +455,11 @@ export class TransferOrdersClient { _queryParams.version = version?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -550,23 +499,12 @@ export class TransferOrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/transfer-orders/{transfer_order_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/transfer-orders/{transfer_order_id}", + ); } /** @@ -603,12 +541,11 @@ export class TransferOrdersClient { requestOptions?: TransferOrdersClient.RequestOptions, ): Promise> { const { transferOrderId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -654,23 +591,12 @@ export class TransferOrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/transfer-orders/{transfer_order_id}/cancel.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/transfer-orders/{transfer_order_id}/cancel", + ); } /** @@ -725,12 +651,11 @@ export class TransferOrdersClient { requestOptions?: TransferOrdersClient.RequestOptions, ): Promise> { const { transferOrderId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -776,23 +701,12 @@ export class TransferOrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/transfer-orders/{transfer_order_id}/receive.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/transfer-orders/{transfer_order_id}/receive", + ); } /** @@ -827,12 +741,11 @@ export class TransferOrdersClient { requestOptions?: TransferOrdersClient.RequestOptions, ): Promise> { const { transferOrderId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -878,31 +791,11 @@ export class TransferOrdersClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/transfer-orders/{transfer_order_id}/start.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/transfer-orders/{transfer_order_id}/start", + ); } } diff --git a/src/api/resources/v1Transactions/client/Client.ts b/src/api/resources/v1Transactions/client/Client.ts index d5513f1b8..f86ba2e82 100644 --- a/src/api/resources/v1Transactions/client/Client.ts +++ b/src/api/resources/v1Transactions/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace V1TransactionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class V1TransactionsClient { - protected readonly _options: V1TransactionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: V1TransactionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -64,12 +65,11 @@ export class V1TransactionsClient { _queryParams.batch_token = batchToken; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -109,21 +109,7 @@ export class V1TransactionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v1/{location_id}/orders."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v1/{location_id}/orders"); } /** @@ -150,12 +136,11 @@ export class V1TransactionsClient { requestOptions?: V1TransactionsClient.RequestOptions, ): Promise> { const { locationId, orderId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -195,23 +180,12 @@ export class V1TransactionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v1/{location_id}/orders/{order_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v1/{location_id}/orders/{order_id}", + ); } /** @@ -239,12 +213,11 @@ export class V1TransactionsClient { requestOptions?: V1TransactionsClient.RequestOptions, ): Promise> { const { locationId, orderId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -290,31 +263,11 @@ export class V1TransactionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v1/{location_id}/orders/{order_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v1/{location_id}/orders/{order_id}", + ); } } diff --git a/src/api/resources/vendors/client/Client.ts b/src/api/resources/vendors/client/Client.ts index bf62ea1d1..115062907 100644 --- a/src/api/resources/vendors/client/Client.ts +++ b/src/api/resources/vendors/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers"; import * as environments from "../../../../environments"; +import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../errors/index"; import * as serializers from "../../../../serialization/index"; import type * as Square from "../../../index"; export declare namespace VendorsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class VendorsClient { - protected readonly _options: VendorsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: VendorsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -64,12 +65,11 @@ export class VendorsClient { request: Square.BatchCreateVendorsRequest, requestOptions?: VendorsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -115,21 +115,7 @@ export class VendorsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/vendors/bulk-create."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/vendors/bulk-create"); } /** @@ -154,12 +140,11 @@ export class VendorsClient { request: Square.BatchGetVendorsRequest = {}, requestOptions?: VendorsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -205,21 +190,7 @@ export class VendorsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/vendors/bulk-retrieve."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/vendors/bulk-retrieve"); } /** @@ -251,12 +222,11 @@ export class VendorsClient { request: Square.BatchUpdateVendorsRequest, requestOptions?: VendorsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -302,21 +272,7 @@ export class VendorsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/vendors/bulk-update."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/vendors/bulk-update"); } /** @@ -360,12 +316,11 @@ export class VendorsClient { request: Square.CreateVendorRequest, requestOptions?: VendorsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -411,21 +366,7 @@ export class VendorsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/vendors/create."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/vendors/create"); } /** @@ -448,12 +389,11 @@ export class VendorsClient { request: Square.SearchVendorsRequest = {}, requestOptions?: VendorsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -499,21 +439,7 @@ export class VendorsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/vendors/search."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/vendors/search"); } /** @@ -539,12 +465,11 @@ export class VendorsClient { requestOptions?: VendorsClient.RequestOptions, ): Promise> { const { vendorId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -584,21 +509,7 @@ export class VendorsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/vendors/{vendor_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/vendors/{vendor_id}"); } /** @@ -633,12 +544,11 @@ export class VendorsClient { requestOptions?: VendorsClient.RequestOptions, ): Promise> { const { vendorId, body: _body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -684,29 +594,6 @@ export class VendorsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling PUT /v2/vendors/{vendor_id}."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "PUT", "/v2/vendors/{vendor_id}"); } } diff --git a/src/api/resources/webhooks/client/Client.ts b/src/api/resources/webhooks/client/Client.ts index 06c9693a0..ca9c63219 100644 --- a/src/api/resources/webhooks/client/Client.ts +++ b/src/api/resources/webhooks/client/Client.ts @@ -1,21 +1,21 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions } from "../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../BaseClient"; import { EventTypesClient } from "../resources/eventTypes/client/Client"; import { SubscriptionsClient } from "../resources/subscriptions/client/Client"; export declare namespace WebhooksClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; } export class WebhooksClient { - protected readonly _options: WebhooksClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; protected _eventTypes: EventTypesClient | undefined; protected _subscriptions: SubscriptionsClient | undefined; constructor(options: WebhooksClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } public get eventTypes(): EventTypesClient { diff --git a/src/api/resources/webhooks/resources/eventTypes/client/Client.ts b/src/api/resources/webhooks/resources/eventTypes/client/Client.ts index 4605f4a68..098e70779 100644 --- a/src/api/resources/webhooks/resources/eventTypes/client/Client.ts +++ b/src/api/resources/webhooks/resources/eventTypes/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace EventTypesClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class EventTypesClient { - protected readonly _options: EventTypesClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: EventTypesClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -50,12 +51,11 @@ export class EventTypesClient { _queryParams.api_version = apiVersion; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -95,29 +95,6 @@ export class EventTypesClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling GET /v2/webhooks/event-types."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v2/webhooks/event-types"); } } diff --git a/src/api/resources/webhooks/resources/subscriptions/client/Client.ts b/src/api/resources/webhooks/resources/subscriptions/client/Client.ts index 622abbddb..e9f82dc2d 100644 --- a/src/api/resources/webhooks/resources/subscriptions/client/Client.ts +++ b/src/api/resources/webhooks/resources/subscriptions/client/Client.ts @@ -1,25 +1,26 @@ // This file was auto-generated by Fern from our API Definition. import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../BaseClient"; -import { normalizeClientOptions } from "../../../../../../BaseClient"; +import { type NormalizedClientOptionsWithAuth, normalizeClientOptionsWithAuth } from "../../../../../../BaseClient"; import * as core from "../../../../../../core"; import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers"; import * as environments from "../../../../../../environments"; +import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError"; import * as errors from "../../../../../../errors/index"; import * as serializers from "../../../../../../serialization/index"; import type * as Square from "../../../../../index"; export declare namespace SubscriptionsClient { - export interface Options extends BaseClientOptions {} + export type Options = BaseClientOptions; export interface RequestOptions extends BaseRequestOptions {} } export class SubscriptionsClient { - protected readonly _options: SubscriptionsClient.Options; + protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: SubscriptionsClient.Options = {}) { - this._options = normalizeClientOptions(options); + this._options = normalizeClientOptionsWithAuth(options); } /** @@ -61,12 +62,11 @@ export class SubscriptionsClient { if (limit !== undefined) { _queryParams.limit = limit?.toString() ?? null; } + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -104,23 +104,12 @@ export class SubscriptionsClient { rawResponse: _response.rawResponse, }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/webhooks/subscriptions.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/webhooks/subscriptions", + ); }, ); const dataWithRawResponse = await list(request).withRawResponse(); @@ -164,12 +153,11 @@ export class SubscriptionsClient { request: Square.webhooks.CreateWebhookSubscriptionRequest, requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -215,21 +203,7 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError("Timeout exceeded when calling POST /v2/webhooks/subscriptions."); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/webhooks/subscriptions"); } /** @@ -255,12 +229,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -300,23 +273,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling GET /v2/webhooks/subscriptions/{subscription_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "GET", + "/v2/webhooks/subscriptions/{subscription_id}", + ); } /** @@ -346,12 +308,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -397,23 +358,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling PUT /v2/webhooks/subscriptions/{subscription_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "PUT", + "/v2/webhooks/subscriptions/{subscription_id}", + ); } /** @@ -439,12 +389,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -484,23 +433,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling DELETE /v2/webhooks/subscriptions/{subscription_id}.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "DELETE", + "/v2/webhooks/subscriptions/{subscription_id}", + ); } /** @@ -527,12 +465,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -578,23 +515,12 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/webhooks/subscriptions/{subscription_id}/signature-key.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/webhooks/subscriptions/{subscription_id}/signature-key", + ); } /** @@ -621,12 +547,11 @@ export class SubscriptionsClient { requestOptions?: SubscriptionsClient.RequestOptions, ): Promise> { const { subscriptionId, ..._body } = request; + const _authRequest: core.AuthRequest = await this._options.authProvider.getAuthRequest(); const _headers: core.Fetcher.Args["headers"] = mergeHeaders( + _authRequest.headers, this._options?.headers, - mergeOnlyDefinedHeaders({ - Authorization: await this._getAuthorizationHeader(), - "Square-Version": requestOptions?.version ?? "2025-10-16", - }), + mergeOnlyDefinedHeaders({ "Square-Version": requestOptions?.version ?? "2025-10-16" }), requestOptions?.headers, ); const _response = await (this._options.fetcher ?? core.fetcher)({ @@ -672,31 +597,11 @@ export class SubscriptionsClient { }); } - switch (_response.error.reason) { - case "non-json": - throw new errors.SquareError({ - statusCode: _response.error.statusCode, - body: _response.error.rawBody, - rawResponse: _response.rawResponse, - }); - case "timeout": - throw new errors.SquareTimeoutError( - "Timeout exceeded when calling POST /v2/webhooks/subscriptions/{subscription_id}/test.", - ); - case "unknown": - throw new errors.SquareError({ - message: _response.error.errorMessage, - rawResponse: _response.rawResponse, - }); - } - } - - protected async _getAuthorizationHeader(): Promise { - const bearer = (await core.Supplier.get(this._options.token)) ?? process?.env.SQUARE_TOKEN; - if (bearer != null) { - return `Bearer ${bearer}`; - } - - return undefined; + return handleNonStatusCodeError( + _response.error, + _response.rawResponse, + "POST", + "/v2/webhooks/subscriptions/{subscription_id}/test", + ); } } diff --git a/src/auth/BearerAuthProvider.ts b/src/auth/BearerAuthProvider.ts new file mode 100644 index 000000000..22eb5ac98 --- /dev/null +++ b/src/auth/BearerAuthProvider.ts @@ -0,0 +1,38 @@ +// This file was auto-generated by Fern from our API Definition. + +import * as core from "../core"; +import * as errors from "../errors/index"; + +export namespace BearerAuthProvider { + export interface AuthOptions { + token?: core.Supplier | undefined; + } + + export interface Options extends AuthOptions {} +} + +export class BearerAuthProvider implements core.AuthProvider { + private readonly token: core.Supplier | undefined; + + constructor(options: BearerAuthProvider.Options) { + this.token = options.token; + } + + public static canCreate(options: BearerAuthProvider.Options): boolean { + return options.token != null || process.env?.SQUARE_TOKEN != null; + } + + public async getAuthRequest(_arg?: { endpointMetadata?: core.EndpointMetadata }): Promise { + const token = (await core.Supplier.get(this.token)) ?? process.env?.SQUARE_TOKEN; + if (token == null) { + throw new errors.SquareError({ + message: + "Please specify a token by either passing it in to the constructor or initializing a SQUARE_TOKEN environment variable", + }); + } + + return { + headers: { Authorization: `Bearer ${token}` }, + }; + } +} diff --git a/src/auth/index.ts b/src/auth/index.ts new file mode 100644 index 000000000..bb4f660ad --- /dev/null +++ b/src/auth/index.ts @@ -0,0 +1 @@ +export { BearerAuthProvider } from "./BearerAuthProvider"; diff --git a/src/core/auth/AuthProvider.ts b/src/core/auth/AuthProvider.ts index ed076ec5d..ccb4263ea 100644 --- a/src/core/auth/AuthProvider.ts +++ b/src/core/auth/AuthProvider.ts @@ -1,5 +1,6 @@ +import type { EndpointMetadata } from "../fetcher/EndpointMetadata"; import type { AuthRequest } from "./AuthRequest"; export interface AuthProvider { - getAuthRequest(): Promise; + getAuthRequest(arg?: { endpointMetadata?: EndpointMetadata }): Promise; } diff --git a/src/core/auth/BearerToken.ts b/src/core/auth/BearerToken.ts index fe987fc9c..c44a06c38 100644 --- a/src/core/auth/BearerToken.ts +++ b/src/core/auth/BearerToken.ts @@ -2,13 +2,18 @@ export type BearerToken = string; const BEARER_AUTH_HEADER_PREFIX = /^Bearer /i; -export const BearerToken = { - toAuthorizationHeader: (token: BearerToken | undefined): string | undefined => { - if (token == null) { - return undefined; - } - return `Bearer ${token}`; - }, +function toAuthorizationHeader(token: string | undefined): string | undefined { + if (token == null) { + return undefined; + } + return `Bearer ${token}`; +} + +export const BearerToken: { + toAuthorizationHeader: typeof toAuthorizationHeader; + fromAuthorizationHeader: (header: string) => BearerToken; +} = { + toAuthorizationHeader: toAuthorizationHeader, fromAuthorizationHeader: (header: string): BearerToken => { return header.replace(BEARER_AUTH_HEADER_PREFIX, "").trim() as BearerToken; }, diff --git a/src/core/auth/NoOpAuthProvider.ts b/src/core/auth/NoOpAuthProvider.ts new file mode 100644 index 000000000..b7486e33d --- /dev/null +++ b/src/core/auth/NoOpAuthProvider.ts @@ -0,0 +1,8 @@ +import type { AuthProvider } from "./AuthProvider"; +import type { AuthRequest } from "./AuthRequest"; + +export class NoOpAuthProvider implements AuthProvider { + public getAuthRequest(): Promise { + return Promise.resolve({ headers: {} }); + } +} diff --git a/src/core/auth/index.ts b/src/core/auth/index.ts index c7786e5ba..49c181aec 100644 --- a/src/core/auth/index.ts +++ b/src/core/auth/index.ts @@ -2,3 +2,4 @@ export type { AuthProvider } from "./AuthProvider"; export type { AuthRequest } from "./AuthRequest"; export { BasicAuth } from "./BasicAuth"; export { BearerToken } from "./BearerToken"; +export { NoOpAuthProvider } from "./NoOpAuthProvider"; diff --git a/src/core/fetcher/BinaryResponse.ts b/src/core/fetcher/BinaryResponse.ts index 79ab71923..bca7f4c77 100644 --- a/src/core/fetcher/BinaryResponse.ts +++ b/src/core/fetcher/BinaryResponse.ts @@ -1,25 +1,23 @@ -import type { ResponseWithBody } from "./ResponseWithBody"; - export type BinaryResponse = { /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/bodyUsed) */ - bodyUsed: boolean; + bodyUsed: Response["bodyUsed"]; /** * Returns a ReadableStream of the response body. * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/body) */ - stream: () => ReadableStream; + stream: () => Response["body"]; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/arrayBuffer) */ - arrayBuffer: () => Promise; + arrayBuffer: () => ReturnType; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/blob) */ - blob: () => Promise; + blob: () => ReturnType; /** * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/bytes) * Some versions of the Fetch API may not support this method. */ - bytes?(): Promise; + bytes?(): ReturnType; }; -export function getBinaryResponse(response: ResponseWithBody): BinaryResponse { +export function getBinaryResponse(response: Response): BinaryResponse { const binaryResponse: BinaryResponse = { get bodyUsed() { return response.bodyUsed; diff --git a/src/core/fetcher/Fetcher.ts b/src/core/fetcher/Fetcher.ts index d6cb76c95..555be6572 100644 --- a/src/core/fetcher/Fetcher.ts +++ b/src/core/fetcher/Fetcher.ts @@ -35,7 +35,7 @@ export declare namespace Fetcher { logging?: LogConfig | Logger; } - export type Error = FailedStatusCodeError | NonJsonError | TimeoutError | UnknownError; + export type Error = FailedStatusCodeError | NonJsonError | BodyIsNullError | TimeoutError | UnknownError; export interface FailedStatusCodeError { reason: "status-code"; @@ -49,6 +49,11 @@ export declare namespace Fetcher { rawBody: string; } + export interface BodyIsNullError { + reason: "body-is-null"; + statusCode: number; + } + export interface TimeoutError { reason: "timeout"; } @@ -285,9 +290,10 @@ export async function fetcherImpl(args: Fetcher.Args): Promise; -}; - -export function isResponseWithBody(response: Response): response is ResponseWithBody { - return (response as ResponseWithBody).body != null; -} diff --git a/src/core/fetcher/getResponseBody.ts b/src/core/fetcher/getResponseBody.ts index c103c6aa0..879228351 100644 --- a/src/core/fetcher/getResponseBody.ts +++ b/src/core/fetcher/getResponseBody.ts @@ -1,13 +1,9 @@ import { fromJson } from "../json"; import { getBinaryResponse } from "./BinaryResponse"; -import { isResponseWithBody } from "./ResponseWithBody"; import { chooseStreamWrapper } from "./stream-wrappers/chooseStreamWrapper"; export async function getResponseBody(response: Response, responseType?: string): Promise { - if (!isResponseWithBody(response)) { - return undefined; - } switch (responseType) { case "binary-response": return getBinaryResponse(response); @@ -16,8 +12,27 @@ export async function getResponseBody(response: Response, responseType?: string) case "arrayBuffer": return await response.arrayBuffer(); case "sse": + if (response.body == null) { + return { + ok: false, + error: { + reason: "body-is-null", + statusCode: response.status, + }, + }; + } return response.body; case "streaming": + if (response.body == null) { + return { + ok: false, + error: { + reason: "body-is-null", + statusCode: response.status, + }, + }; + } + return chooseStreamWrapper(response.body); case "text": diff --git a/src/core/fetcher/makeRequest.ts b/src/core/fetcher/makeRequest.ts index 03a3ccbe8..a00ac2e23 100644 --- a/src/core/fetcher/makeRequest.ts +++ b/src/core/fetcher/makeRequest.ts @@ -13,7 +13,7 @@ export const makeRequest = async ( ): Promise => { const signals: AbortSignal[] = []; - let timeoutAbortId: NodeJS.Timeout | undefined; + let timeoutAbortId: ReturnType | undefined; if (timeoutMs != null) { const { signal, abortId } = getTimeoutSignal(timeoutMs); timeoutAbortId = abortId; diff --git a/src/core/fetcher/signals.ts b/src/core/fetcher/signals.ts index c9fcaeff1..7bd3757ec 100644 --- a/src/core/fetcher/signals.ts +++ b/src/core/fetcher/signals.ts @@ -1,6 +1,6 @@ const TIMEOUT = "timeout"; -export function getTimeoutSignal(timeoutMs: number): { signal: AbortSignal; abortId: NodeJS.Timeout } { +export function getTimeoutSignal(timeoutMs: number): { signal: AbortSignal; abortId: ReturnType } { const controller = new AbortController(); const abortId = setTimeout(() => controller.abort(TIMEOUT), timeoutMs); return { signal: controller.signal, abortId }; diff --git a/src/core/pagination/CustomPager.ts b/src/core/pagination/CustomPager.ts new file mode 100644 index 000000000..6149b429e --- /dev/null +++ b/src/core/pagination/CustomPager.ts @@ -0,0 +1,188 @@ +import type { HttpResponsePromise, RawResponse, WithRawResponse } from "../fetcher/index"; + +/** + * Parser function type for custom pagination. + * SDK authors implement this to define how to extract items and determine pagination state. + * + * @template TItem The type of items in the paginated response. + * @template TRequest The type of the request object. + * @template TResponse The type of the API response. + */ +export type CustomPagerParser = ( + request: TRequest, + response: WithRawResponse, +) => Promise<{ + /** The request to use for fetching the next page, if any */ + nextRequest?: TRequest; + /** Whether there is a next page available */ + hasNextPage: boolean; + /** The request to use for fetching the previous page, if any */ + previousRequest?: TRequest; + /** Whether there is a previous page available */ + hasPreviousPage: boolean; + /** The items extracted from the current response */ + items: TItem[]; +}>; + +/** + * A custom pager for paginated API responses where the pagination logic + * must be implemented by the SDK author. + * + * SDK authors provide a parser callback to extract items and determine + * pagination state from responses. + * + * @template TItem The type of the items in the page. + * @template TRequest The type of the request object. + * @template TResponse The type of the API response. + */ +export class CustomPager implements AsyncIterable { + /** The items from the current page */ + public data: TItem[]; + /** The raw HTTP response */ + public rawResponse: RawResponse; + /** The parsed response object */ + public response: TResponse; + + private context: { + sendRequest: (request: TRequest) => HttpResponsePromise; + currentRequest: TRequest; + }; + private parser: CustomPagerParser; + private nextRequest?: TRequest; + private previousRequest?: TRequest; + private _hasNextPage: boolean; + private _hasPreviousPage: boolean; + + private constructor(args: { + response: TResponse; + rawResponse: RawResponse; + items: TItem[]; + hasNextPage: boolean; + hasPreviousPage: boolean; + nextRequest?: TRequest; + previousRequest?: TRequest; + context: { + sendRequest: (request: TRequest) => HttpResponsePromise; + currentRequest: TRequest; + }; + parser: CustomPagerParser; + }) { + this.response = args.response; + this.rawResponse = args.rawResponse; + this.data = args.items; + this._hasNextPage = args.hasNextPage; + this._hasPreviousPage = args.hasPreviousPage; + this.nextRequest = args.nextRequest; + this.previousRequest = args.previousRequest; + this.context = args.context; + this.parser = args.parser; + } + + /** + * @returns whether there is a next page to load + */ + public hasNextPage(): boolean { + return this._hasNextPage; + } + + /** + * @returns whether there is a previous page to load + */ + public hasPreviousPage(): boolean { + return this._hasPreviousPage; + } + + /** + * Retrieves the next page of results. + * @returns this pager with updated data + * @throws Error if there is no next page + */ + public async getNextPage(): Promise { + if (!this._hasNextPage || !this.nextRequest) { + throw new Error("No next page available"); + } + const { data, rawResponse } = await this.context.sendRequest(this.nextRequest).withRawResponse(); + const parsed = await this.parser(this.nextRequest, { data, rawResponse }); + this.response = data; + this.rawResponse = rawResponse; + this.data = parsed.items; + this._hasNextPage = parsed.hasNextPage; + this._hasPreviousPage = parsed.hasPreviousPage; + this.context.currentRequest = this.nextRequest; + this.nextRequest = parsed.nextRequest; + this.previousRequest = parsed.previousRequest; + return this; + } + + /** + * Retrieves the previous page of results. + * @returns this pager with updated data + * @throws Error if there is no previous page + */ + public async getPreviousPage(): Promise { + if (!this._hasPreviousPage || !this.previousRequest) { + throw new Error("No previous page available"); + } + const { data, rawResponse } = await this.context.sendRequest(this.previousRequest).withRawResponse(); + const parsed = await this.parser(this.previousRequest, { data, rawResponse }); + this.response = data; + this.rawResponse = rawResponse; + this.data = parsed.items; + this._hasNextPage = parsed.hasNextPage; + this._hasPreviousPage = parsed.hasPreviousPage; + this.context.currentRequest = this.previousRequest; + this.nextRequest = parsed.nextRequest; + this.previousRequest = parsed.previousRequest; + return this; + } + + private async *iterMessages(): AsyncGenerator { + for (const item of this.data) { + yield item; + } + + while (this.hasNextPage()) { + await this.getNextPage(); + for (const item of this.data) { + yield item; + } + } + } + + async *[Symbol.asyncIterator](): AsyncIterator { + for await (const message of this.iterMessages()) { + yield message; + } + } + + /** + * Creates a CustomPager by making the initial request and parsing the response. + * + * @param args.sendRequest Function to send a request and get a response + * @param args.initialRequest The initial request to start pagination + * @param args.parse The parser function to extract items and pagination state + * @returns A new CustomPager instance + */ + public static async create(args: { + sendRequest: (request: TRequest) => HttpResponsePromise; + initialRequest: TRequest; + parse: CustomPagerParser; + }): Promise> { + const { data, rawResponse } = await args.sendRequest(args.initialRequest).withRawResponse(); + const parsed = await args.parse(args.initialRequest, { data, rawResponse }); + return new CustomPager({ + response: data, + rawResponse, + items: parsed.items, + hasNextPage: parsed.hasNextPage, + hasPreviousPage: parsed.hasPreviousPage, + nextRequest: parsed.nextRequest, + previousRequest: parsed.previousRequest, + context: { + sendRequest: args.sendRequest, + currentRequest: args.initialRequest, + }, + parser: args.parse, + }); + } +} diff --git a/src/core/pagination/exports.ts b/src/core/pagination/exports.ts index 8a1c4b3bd..49bbd21d7 100644 --- a/src/core/pagination/exports.ts +++ b/src/core/pagination/exports.ts @@ -1 +1,2 @@ +export { CustomPager, type CustomPagerParser } from "./CustomPager"; export type { Page } from "./Page"; diff --git a/src/core/pagination/index.ts b/src/core/pagination/index.ts index 46cc304af..d7daf04d5 100644 --- a/src/core/pagination/index.ts +++ b/src/core/pagination/index.ts @@ -1 +1,2 @@ +export { CustomPager, type CustomPagerParser } from "./CustomPager"; export { Page } from "./Page"; diff --git a/src/core/runtime/runtime.ts b/src/core/runtime/runtime.ts index 08fd2563f..56ebbb87c 100644 --- a/src/core/runtime/runtime.ts +++ b/src/core/runtime/runtime.ts @@ -99,6 +99,18 @@ function evaluateRuntime(): Runtime { }; } + /** + * A constant that indicates whether the environment the code is running is in React-Native. + * This check should come before Node.js detection since React Native may have a process polyfill. + * https://github.com/facebook/react-native/blob/main/packages/react-native/Libraries/Core/setUpNavigator.js + */ + const isReactNative = typeof navigator !== "undefined" && navigator?.product === "ReactNative"; + if (isReactNative) { + return { + type: "react-native", + }; + } + /** * A constant that indicates whether the environment the code is running is Node.JS. */ @@ -116,17 +128,6 @@ function evaluateRuntime(): Runtime { }; } - /** - * A constant that indicates whether the environment the code is running is in React-Native. - * https://github.com/facebook/react-native/blob/main/packages/react-native/Libraries/Core/setUpNavigator.js - */ - const isReactNative = typeof navigator !== "undefined" && navigator?.product === "ReactNative"; - if (isReactNative) { - return { - type: "react-native", - }; - } - return { type: "unknown", }; diff --git a/src/core/schemas/builders/object/object.ts b/src/core/schemas/builders/object/object.ts index c239249e2..bdad80767 100644 --- a/src/core/schemas/builders/object/object.ts +++ b/src/core/schemas/builders/object/object.ts @@ -244,17 +244,19 @@ export function getObjectUtils(schema: BaseObjectSchema { return validateAndTransformExtendedObject({ extensionKeys: extension._getRawProperties(), - value: raw as object, + value: raw, transformBase: (rawBase) => schema.parse(rawBase, opts), transformExtension: (rawExtension) => extension.parse(rawExtension, opts), + breadcrumbsPrefix: opts?.breadcrumbsPrefix, }); }, json: (parsed, opts) => { return validateAndTransformExtendedObject({ extensionKeys: extension._getParsedProperties(), - value: parsed as object, + value: parsed, transformBase: (parsedBase) => schema.json(parsedBase, opts), transformExtension: (parsedExtension) => extension.json(parsedExtension, opts), + breadcrumbsPrefix: opts?.breadcrumbsPrefix, }); }, getType: () => SchemaType.OBJECT, @@ -316,12 +318,26 @@ function validateAndTransformExtendedObject MaybeValid; transformExtension: (value: object) => MaybeValid; + breadcrumbsPrefix?: string[]; }): MaybeValid { + if (!isPlainObject(value)) { + return { + ok: false, + errors: [ + { + path: breadcrumbsPrefix, + message: getErrorMessageForIncorrectType(value, "object"), + }, + ], + }; + } + const extensionPropertiesSet = new Set(extensionKeys); const [extensionProperties, baseProperties] = partition(keys(value), (key) => extensionPropertiesSet.has(key as keyof PreTransformedExtension), diff --git a/src/core/schemas/builders/primitives/never.ts b/src/core/schemas/builders/primitives/never.ts index 91f85d74c..3de77c3fd 100644 --- a/src/core/schemas/builders/primitives/never.ts +++ b/src/core/schemas/builders/primitives/never.ts @@ -1,5 +1,5 @@ -import { type Schema, SchemaType } from "../../Schema.js"; -import { createIdentitySchemaCreator } from "../../utils/createIdentitySchemaCreator.js"; +import { type Schema, SchemaType } from "../../Schema"; +import { createIdentitySchemaCreator } from "../../utils/createIdentitySchemaCreator"; export const never: () => Schema = createIdentitySchemaCreator( SchemaType.NEVER, diff --git a/src/errors/SquareTimeoutError.ts b/src/errors/SquareTimeoutError.ts index d56259097..b410e2c0b 100644 --- a/src/errors/SquareTimeoutError.ts +++ b/src/errors/SquareTimeoutError.ts @@ -3,6 +3,11 @@ export class SquareTimeoutError extends Error { constructor(message: string) { super(message); - Object.setPrototypeOf(this, SquareTimeoutError.prototype); + Object.setPrototypeOf(this, new.target.prototype); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } + + this.name = this.constructor.name; } } diff --git a/src/errors/handleNonStatusCodeError.ts b/src/errors/handleNonStatusCodeError.ts new file mode 100644 index 000000000..c293714bf --- /dev/null +++ b/src/errors/handleNonStatusCodeError.ts @@ -0,0 +1,37 @@ +// This file was auto-generated by Fern from our API Definition. + +import type * as core from "../core"; +import * as errors from "./index"; + +export function handleNonStatusCodeError( + error: core.Fetcher.Error, + rawResponse: core.RawResponse, + method: string, + path: string, +): never { + switch (error.reason) { + case "non-json": + throw new errors.SquareError({ + statusCode: error.statusCode, + body: error.rawBody, + rawResponse: rawResponse, + }); + case "body-is-null": + throw new errors.SquareError({ + statusCode: error.statusCode, + rawResponse: rawResponse, + }); + case "timeout": + throw new errors.SquareTimeoutError(`Timeout exceeded when calling ${method} ${path}.`); + case "unknown": + throw new errors.SquareError({ + message: error.errorMessage, + rawResponse: rawResponse, + }); + default: + throw new errors.SquareError({ + message: "Unknown error", + rawResponse: rawResponse, + }); + } +} diff --git a/src/version.ts b/src/version.ts index a6cd8df95..707514078 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const SDK_VERSION = "43.2.1"; +export const SDK_VERSION = "43.3.0"; diff --git a/tests/wire/bankAccounts.test.ts b/tests/wire/bankAccounts.test.ts index 4797efa9c..212cba932 100644 --- a/tests/wire/bankAccounts.test.ts +++ b/tests/wire/bankAccounts.test.ts @@ -60,67 +60,12 @@ describe("BankAccountsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - bankAccounts: [ - { - id: "ao6iaQ9vhDiaQD7n3GB", - accountNumberSuffix: "971", - country: "US", - currency: "USD", - accountType: "CHECKING", - holderName: "Jane Doe", - primaryBankIdentificationNumber: "112200303", - secondaryBankIdentificationNumber: "secondary_bank_identification_number", - debitMandateReferenceId: "debit_mandate_reference_id", - referenceId: "reference_id", - locationId: "S8GWD5example", - status: "VERIFICATION_IN_PROGRESS", - creditable: false, - debitable: false, - fingerprint: "fingerprint", - version: 5, - bankName: "Bank Name", - }, - { - id: "4x7WXuaxrkQkVlka3GB", - accountNumberSuffix: "972", - country: "US", - currency: "USD", - accountType: "CHECKING", - holderName: "Jane Doe", - primaryBankIdentificationNumber: "112200303", - secondaryBankIdentificationNumber: "secondary_bank_identification_number", - debitMandateReferenceId: "debit_mandate_reference_id", - referenceId: "reference_id", - locationId: "S8GWD5example", - status: "VERIFICATION_IN_PROGRESS", - creditable: false, - debitable: false, - fingerprint: "fingerprint", - version: 5, - bankName: "Bank Name", - }, - ], - cursor: "cursor", - }; const page = await client.bankAccounts.list({ cursor: "cursor", limit: 1, locationId: "location_id", }); - - expect(expected.bankAccounts).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.bankAccounts).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("GetByV1Id", async () => { diff --git a/tests/wire/bookings/customAttributeDefinitions.test.ts b/tests/wire/bookings/customAttributeDefinitions.test.ts index aab6e0aca..4c76f462a 100644 --- a/tests/wire/bookings/customAttributeDefinitions.test.ts +++ b/tests/wire/bookings/customAttributeDefinitions.test.ts @@ -46,52 +46,11 @@ describe("CustomAttributeDefinitionsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - customAttributeDefinitions: [ - { - key: "favoriteShampoo", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.String", - }, - name: "Favorite shampoo", - description: "Update the description as desired.", - visibility: "VISIBILITY_READ_ONLY", - version: 3, - updatedAt: "2022-11-16T15:39:38Z", - createdAt: "2022-11-16T15:27:30Z", - }, - { - key: "partySize", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.Number", - }, - name: "Party size", - description: "Number of people in the party for dine-in", - visibility: "VISIBILITY_HIDDEN", - version: 1, - updatedAt: "2022-11-16T15:49:05Z", - createdAt: "2022-11-16T15:49:05Z", - }, - ], - cursor: "YEk4UPbUEsu8MUV0xouO5hCiFcD9T5ztB6UWEJq5vZnqBFmoBEi0j1j6HWYTFGMRre4p7T5wAQBj3Th1NX3XgBFcQVEVsIxUQ2NsbwjRitfoEZDml9uxxQXepowyRvCuSThHPbJSn7M7wInl3x8XypQF9ahVVQXegJ0CxEKc0SBH", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.bookings.customAttributeDefinitions.list({ limit: 1, cursor: "cursor", }); - - expect(expected.customAttributeDefinitions).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.customAttributeDefinitions).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/bookings/customAttributes.test.ts b/tests/wire/bookings/customAttributes.test.ts index 1d17c090d..a7ce360a9 100644 --- a/tests/wire/bookings/customAttributes.test.ts +++ b/tests/wire/bookings/customAttributes.test.ts @@ -302,46 +302,13 @@ describe("CustomAttributesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - customAttributes: [ - { - key: "favoriteShampoo", - value: "Hydro-Cool", - version: 1, - visibility: "VISIBILITY_READ_ONLY", - updatedAt: "2022-11-16T15:50:27Z", - createdAt: "2022-11-16T15:50:27Z", - }, - { - key: "hasShoes", - value: false, - version: 1, - visibility: "VISIBILITY_HIDDEN", - updatedAt: "2022-11-16T15:51:53Z", - createdAt: "2022-11-16T15:51:53Z", - }, - ], - cursor: "cursor", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.bookings.customAttributes.list({ bookingId: "booking_id", limit: 1, cursor: "cursor", withDefinitions: true, }); - - expect(expected.customAttributes).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.customAttributes).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { diff --git a/tests/wire/bookings/locationProfiles.test.ts b/tests/wire/bookings/locationProfiles.test.ts index 92ae16404..0845252c8 100644 --- a/tests/wire/bookings/locationProfiles.test.ts +++ b/tests/wire/bookings/locationProfiles.test.ts @@ -28,37 +28,10 @@ describe("LocationProfilesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - locationBookingProfiles: [ - { - locationId: "LY6WNBPVM6VGV", - bookingSiteUrl: "https://squareup.com/book/LY6WNBPVM6VGV/testbusiness", - onlineBookingEnabled: true, - }, - { - locationId: "PYTRNBPVMJUPV", - bookingSiteUrl: "booking_site_url", - onlineBookingEnabled: false, - }, - ], - cursor: "cursor", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.bookings.locationProfiles.list({ limit: 1, cursor: "cursor", }); - - expect(expected.locationBookingProfiles).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.locationBookingProfiles).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); }); diff --git a/tests/wire/bookings/teamMemberProfiles.test.ts b/tests/wire/bookings/teamMemberProfiles.test.ts index e824ad876..ceea6e09e 100644 --- a/tests/wire/bookings/teamMemberProfiles.test.ts +++ b/tests/wire/bookings/teamMemberProfiles.test.ts @@ -36,44 +36,13 @@ describe("TeamMemberProfilesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - teamMemberBookingProfiles: [ - { - teamMemberId: "TMXUrsBWWcHTt79t", - description: "description", - displayName: "Sandbox Seller", - isBookable: true, - profileImageUrl: "profile_image_url", - }, - { - teamMemberId: "TMaJcbiRqPIGZuS9", - description: "description", - displayName: "Sandbox Staff", - isBookable: true, - profileImageUrl: "profile_image_url", - }, - ], - cursor: "cursor", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.bookings.teamMemberProfiles.list({ bookableOnly: true, limit: 1, cursor: "cursor", locationId: "location_id", }); - - expect(expected.teamMemberBookingProfiles).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.teamMemberBookingProfiles).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { diff --git a/tests/wire/cashDrawers/shifts.test.ts b/tests/wire/cashDrawers/shifts.test.ts index c5cbbf20c..1fa1ee9f6 100644 --- a/tests/wire/cashDrawers/shifts.test.ts +++ b/tests/wire/cashDrawers/shifts.test.ts @@ -36,42 +36,6 @@ describe("ShiftsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - cursor: "cursor", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - cashDrawerShifts: [ - { - id: "DCC99978-09A6-4926-849F-300BE9C5793A", - state: "CLOSED", - openedAt: "2019-11-22T00:42:54.000Z", - endedAt: "2019-11-22T00:44:49.000Z", - closedAt: "2019-11-22T00:44:49.000Z", - description: "Misplaced some change", - openedCashMoney: { - amount: BigInt("10000"), - currency: "USD", - }, - expectedCashMoney: { - amount: BigInt("10000"), - currency: "USD", - }, - closedCashMoney: { - amount: BigInt("9970"), - currency: "USD", - }, - createdAt: "created_at", - updatedAt: "updated_at", - locationId: "location_id", - }, - ], - }; const page = await client.cashDrawers.shifts.list({ locationId: "location_id", sortOrder: "DESC", @@ -80,11 +44,7 @@ describe("ShiftsClient", () => { limit: 1, cursor: "cursor", }); - - expect(expected.cashDrawerShifts).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.cashDrawerShifts).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { @@ -254,95 +214,12 @@ describe("ShiftsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - cursor: "cursor", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - cashDrawerShiftEvents: [ - { - id: "9F07DB01-D85A-4B77-88C3-D5C64CEB5155", - eventType: "CASH_TENDER_PAYMENT", - eventMoney: { - amount: BigInt("100"), - currency: "USD", - }, - createdAt: "2019-11-22T00:43:02.000Z", - description: "", - teamMemberId: "", - }, - { - id: "B2854CEA-A781-49B3-8F31-C64558231F48", - eventType: "CASH_TENDER_PAYMENT", - eventMoney: { - amount: BigInt("250"), - currency: "USD", - }, - createdAt: "2019-11-22T00:43:12.000Z", - description: "", - teamMemberId: "", - }, - { - id: "B5FB7F72-95CD-44A3-974D-26C41064D042", - eventType: "CASH_TENDER_CANCELLED_PAYMENT", - eventMoney: { - amount: BigInt("250"), - currency: "USD", - }, - createdAt: "2019-11-22T00:43:23.000Z", - description: "", - teamMemberId: "", - }, - { - id: "0B425480-8504-40B4-A867-37B23543931B", - eventType: "CASH_TENDER_REFUND", - eventMoney: { - amount: BigInt("100"), - currency: "USD", - }, - createdAt: "2019-11-22T00:43:46.000Z", - description: "", - teamMemberId: "", - }, - { - id: "8C66E60E-FDCF-4EEF-A98D-3B14B7ED5CBE", - eventType: "PAID_IN", - eventMoney: { - amount: BigInt("10000"), - currency: "USD", - }, - createdAt: "2019-11-22T00:44:18.000Z", - description: "Transfer from another drawer", - teamMemberId: "", - }, - { - id: "D5ACA7FE-C64D-4ADA-8BC8-82118A2DAE4F", - eventType: "PAID_OUT", - eventMoney: { - amount: BigInt("10000"), - currency: "USD", - }, - createdAt: "2019-11-22T00:44:29.000Z", - description: "Transfer out to another drawer", - teamMemberId: "", - }, - ], - }; const page = await client.cashDrawers.shifts.listEvents({ shiftId: "shift_id", locationId: "location_id", limit: 1, cursor: "cursor", }); - - expect(expected.cashDrawerShiftEvents).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.cashDrawerShiftEvents).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); }); diff --git a/tests/wire/checkout/paymentLinks.test.ts b/tests/wire/checkout/paymentLinks.test.ts index 89bc7d651..cc8fd1eb9 100644 --- a/tests/wire/checkout/paymentLinks.test.ts +++ b/tests/wire/checkout/paymentLinks.test.ts @@ -45,53 +45,11 @@ describe("PaymentLinksClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - paymentLinks: [ - { - id: "TN4BWEDJ9AI5MBIV", - version: 2, - description: "description", - orderId: "Qqc6yppGvxVwc46Cch4zHTaJqc4F", - checkoutOptions: { - askForShippingAddress: true, - }, - url: "https://square.link/u/EXAMPLE", - longUrl: "long_url", - createdAt: "2022-04-26T00:15:15Z", - updatedAt: "2022-04-26T00:18:24Z", - paymentNote: "test", - }, - { - id: "RY5UNCUMPJN5XKCT", - version: 1, - description: "", - orderId: "EmBmGt3zJD15QeO1dxzBTxMxtwfZY", - url: "https://square.link/u/EXAMPLE", - longUrl: "long_url", - createdAt: "2022-04-11T23:14:59Z", - updatedAt: "updated_at", - paymentNote: "payment_note", - }, - ], - cursor: "MTY1NQ==", - }; const page = await client.checkout.paymentLinks.list({ cursor: "cursor", limit: 1, }); - - expect(expected.paymentLinks).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.paymentLinks).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/customers/customAttributeDefinitions.test.ts b/tests/wire/customers/customAttributeDefinitions.test.ts index fb4680123..a14735ec3 100644 --- a/tests/wire/customers/customAttributeDefinitions.test.ts +++ b/tests/wire/customers/customAttributeDefinitions.test.ts @@ -46,52 +46,11 @@ describe("CustomAttributeDefinitionsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - customAttributeDefinitions: [ - { - key: "favoritemovie", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.String", - }, - name: "Favorite Movie", - description: "Update the description as desired.", - visibility: "VISIBILITY_READ_ONLY", - version: 3, - updatedAt: "2022-04-26T15:39:38Z", - createdAt: "2022-04-26T15:27:30Z", - }, - { - key: "ownsmovie", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.Boolean", - }, - name: "Owns Movie", - description: "Customer owns movie.", - visibility: "VISIBILITY_HIDDEN", - version: 1, - updatedAt: "2022-04-26T15:49:05Z", - createdAt: "2022-04-26T15:49:05Z", - }, - ], - cursor: "YEk4UPbUEsu8MUV0xouO5hCiFcD9T5ztB6UWEJq5vZnqBFmoBEi0j1j6HWYTFGMRre4p7T5wAQBj3Th1NX3XgBFcQVEVsIxUQ2NsbwjRitfoEZDml9uxxQXepowyRvCuSThHPbJSn7M7wInl3x8XypQF9ahVVQXegJ0CxEKc0SBH", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.customers.customAttributeDefinitions.list({ limit: 1, cursor: "cursor", }); - - expect(expected.customAttributeDefinitions).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.customAttributeDefinitions).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/customers/customAttributes.test.ts b/tests/wire/customers/customAttributes.test.ts index 29ac31498..b792a2307 100644 --- a/tests/wire/customers/customAttributes.test.ts +++ b/tests/wire/customers/customAttributes.test.ts @@ -38,46 +38,13 @@ describe("CustomAttributesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - customAttributes: [ - { - key: "favoritemovie", - value: "Dune", - version: 1, - visibility: "VISIBILITY_READ_ONLY", - updatedAt: "2022-04-26T15:50:27Z", - createdAt: "2022-04-26T15:50:27Z", - }, - { - key: "ownsmovie", - value: false, - version: 1, - visibility: "VISIBILITY_HIDDEN", - updatedAt: "2022-04-26T15:51:53Z", - createdAt: "2022-04-26T15:51:53Z", - }, - ], - cursor: "cursor", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.customers.customAttributes.list({ customerId: "customer_id", limit: 1, cursor: "cursor", withDefinitions: true, }); - - expect(expected.customAttributes).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.customAttributes).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { diff --git a/tests/wire/devices/codes.test.ts b/tests/wire/devices/codes.test.ts index a401ad505..83d7dd5a0 100644 --- a/tests/wire/devices/codes.test.ts +++ b/tests/wire/devices/codes.test.ts @@ -48,56 +48,13 @@ describe("CodesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - deviceCodes: [ - { - id: "B3Z6NAMYQSMTM", - name: "Counter 1", - code: "EBCARJ", - deviceId: "907CS13101300122", - productType: "TERMINAL_API", - locationId: "B5E4484SHHNYH", - status: "PAIRED", - pairBy: "2020-02-06T18:49:33.000Z", - createdAt: "2020-02-06T18:44:33.000Z", - statusChangedAt: "2020-02-06T18:47:28.000Z", - pairedAt: "paired_at", - }, - { - id: "YKGMJMYK8H4PQ", - name: "Unused device code", - code: "GVXNYN", - deviceId: "device_id", - productType: "TERMINAL_API", - locationId: "A6SYFRSV4WAFW", - status: "UNPAIRED", - pairBy: "2020-02-07T20:00:04.000Z", - createdAt: "2020-02-07T19:55:04.000Z", - statusChangedAt: "2020-02-07T19:55:04.000Z", - pairedAt: "paired_at", - }, - ], - cursor: "cursor", - }; const page = await client.devices.codes.list({ cursor: "cursor", locationId: "location_id", productType: "TERMINAL_API", status: "UNKNOWN", }); - - expect(expected.deviceCodes).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.deviceCodes).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/giftCards.test.ts b/tests/wire/giftCards.test.ts index f877a33d2..f29a792c8 100644 --- a/tests/wire/giftCards.test.ts +++ b/tests/wire/giftCards.test.ts @@ -42,45 +42,6 @@ describe("GiftCardsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - giftCards: [ - { - id: "gftc:00113070ba5745f0b2377c1b9570cb03", - type: "DIGITAL", - ganSource: "SQUARE", - state: "ACTIVE", - balanceMoney: { - amount: BigInt("3900"), - currency: "USD", - }, - gan: "7783320008524605", - createdAt: "2021-06-09T22:26:54.000Z", - customerIds: ["customer_ids"], - }, - { - id: "gftc:00128a12725b41e58e0de1d20497a9dd", - type: "DIGITAL", - ganSource: "SQUARE", - state: "ACTIVE", - balanceMoney: { - amount: BigInt("2000"), - currency: "USD", - }, - gan: "7783320002692465", - createdAt: "2021-05-20T22:26:54.000Z", - customerIds: ["customer_ids"], - }, - ], - cursor: "JbFmyvUpaNKsfC1hoLSA4WlqkgkZXTWeKuStajR5BkP7OE0ETAbeWSi6U6u7sH", - }; const page = await client.giftCards.list({ type: "type", state: "state", @@ -88,11 +49,7 @@ describe("GiftCardsClient", () => { cursor: "cursor", customerId: "customer_id", }); - - expect(expected.giftCards).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.giftCards).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/giftCards/activities.test.ts b/tests/wire/giftCards/activities.test.ts index 202f8f995..6618f0c95 100644 --- a/tests/wire/giftCards/activities.test.ts +++ b/tests/wire/giftCards/activities.test.ts @@ -81,134 +81,6 @@ describe("ActivitiesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - giftCardActivities: [ - { - id: "gcact_897698f894b44b3db46c6147e26a0e19", - type: "REDEEM", - locationId: "81FN9BNFZTKS4", - createdAt: "2021-06-02T22:26:38.000Z", - giftCardId: "gftc:6d55a72470d940c6ba09c0ab8ad08d20", - giftCardGan: "7783320002929081", - giftCardBalanceMoney: { - amount: BigInt("700"), - currency: "USD", - }, - redeemActivityDetails: { - amountMoney: { - amount: BigInt("300"), - currency: "USD", - }, - }, - clearBalanceActivityDetails: { - reason: "SUSPICIOUS_ACTIVITY", - }, - deactivateActivityDetails: { - reason: "SUSPICIOUS_ACTIVITY", - }, - adjustIncrementActivityDetails: { - amountMoney: {}, - reason: "COMPLIMENTARY", - }, - adjustDecrementActivityDetails: { - amountMoney: {}, - reason: "SUSPICIOUS_ACTIVITY", - }, - unlinkedActivityRefundActivityDetails: { - amountMoney: {}, - }, - importActivityDetails: { - amountMoney: {}, - }, - blockActivityDetails: { - reason: "CHARGEBACK_BLOCK", - }, - unblockActivityDetails: { - reason: "CHARGEBACK_UNBLOCK", - }, - importReversalActivityDetails: { - amountMoney: {}, - }, - transferBalanceToActivityDetails: { - transferFromGiftCardId: "transfer_from_gift_card_id", - amountMoney: {}, - }, - transferBalanceFromActivityDetails: { - transferToGiftCardId: "transfer_to_gift_card_id", - amountMoney: {}, - }, - }, - { - id: "gcact_b968ebfc7d46437b945be7b9e09123b4", - type: "ACTIVATE", - locationId: "81FN9BNFZTKS4", - createdAt: "2021-05-20T22:26:54.000Z", - giftCardId: "gftc:6d55a72470d940c6ba09c0ab8ad08d20", - giftCardGan: "7783320002929081", - giftCardBalanceMoney: { - amount: BigInt("1000"), - currency: "USD", - }, - activateActivityDetails: { - amountMoney: { - amount: BigInt("1000"), - currency: "USD", - }, - orderId: "jJNGHm4gLI6XkFbwtiSLqK72KkAZY", - lineItemUid: "eIWl7X0nMuO9Ewbh0ChIx", - }, - redeemActivityDetails: { - amountMoney: {}, - }, - clearBalanceActivityDetails: { - reason: "SUSPICIOUS_ACTIVITY", - }, - deactivateActivityDetails: { - reason: "SUSPICIOUS_ACTIVITY", - }, - adjustIncrementActivityDetails: { - amountMoney: {}, - reason: "COMPLIMENTARY", - }, - adjustDecrementActivityDetails: { - amountMoney: {}, - reason: "SUSPICIOUS_ACTIVITY", - }, - unlinkedActivityRefundActivityDetails: { - amountMoney: {}, - }, - importActivityDetails: { - amountMoney: {}, - }, - blockActivityDetails: { - reason: "CHARGEBACK_BLOCK", - }, - unblockActivityDetails: { - reason: "CHARGEBACK_UNBLOCK", - }, - importReversalActivityDetails: { - amountMoney: {}, - }, - transferBalanceToActivityDetails: { - transferFromGiftCardId: "transfer_from_gift_card_id", - amountMoney: {}, - }, - transferBalanceFromActivityDetails: { - transferToGiftCardId: "transfer_to_gift_card_id", - amountMoney: {}, - }, - }, - ], - cursor: "cursor", - }; const page = await client.giftCards.activities.list({ giftCardId: "gift_card_id", type: "type", @@ -219,11 +91,7 @@ describe("ActivitiesClient", () => { cursor: "cursor", sortOrder: "sort_order", }); - - expect(expected.giftCardActivities).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.giftCardActivities).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/labor/breakTypes.test.ts b/tests/wire/labor/breakTypes.test.ts index 26d693d71..a3abbab1b 100644 --- a/tests/wire/labor/breakTypes.test.ts +++ b/tests/wire/labor/breakTypes.test.ts @@ -42,49 +42,12 @@ describe("BreakTypesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - breakTypes: [ - { - id: "REGS1EQR1TPZ5", - locationId: "PAA1RJZZKXBFG", - breakName: "Coffee Break", - expectedDuration: "PT5M", - isPaid: false, - version: 1, - createdAt: "2019-01-22T20:47:37Z", - updatedAt: "2019-01-22T20:47:37Z", - }, - { - id: "92EPDRQKJ5088", - locationId: "PAA1RJZZKXBFG", - breakName: "Lunch Break", - expectedDuration: "PT1H", - isPaid: true, - version: 3, - createdAt: "2019-01-25T19:26:30Z", - updatedAt: "2019-01-25T19:26:30Z", - }, - ], - cursor: "2fofTniCgT0yIPAq26kmk0YyFQJZfbWkh73OOnlTHmTAx13NgED", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.labor.breakTypes.list({ locationId: "location_id", limit: 1, cursor: "cursor", }); - - expect(expected.breakTypes).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.breakTypes).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/labor/employeeWages.test.ts b/tests/wire/labor/employeeWages.test.ts index 20b255e15..e10be846f 100644 --- a/tests/wire/labor/employeeWages.test.ts +++ b/tests/wire/labor/employeeWages.test.ts @@ -46,65 +46,12 @@ describe("EmployeeWagesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - employeeWages: [ - { - id: "pXS3qCv7BERPnEGedM4S8mhm", - employeeId: "33fJchumvVdJwxV0H6L9", - title: "Manager", - hourlyRate: { - amount: BigInt("3250"), - currency: "USD", - }, - }, - { - id: "rZduCkzYDUVL3ovh1sQgbue6", - employeeId: "33fJchumvVdJwxV0H6L9", - title: "Cook", - hourlyRate: { - amount: BigInt("2600"), - currency: "USD", - }, - }, - { - id: "FxLbs5KpPUHa8wyt5ctjubDX", - employeeId: "33fJchumvVdJwxV0H6L9", - title: "Barista", - hourlyRate: { - amount: BigInt("1600"), - currency: "USD", - }, - }, - { - id: "vD1wCgijMDR3cX5TPnu7VXto", - employeeId: "33fJchumvVdJwxV0H6L9", - title: "Cashier", - hourlyRate: { - amount: BigInt("1700"), - currency: "USD", - }, - }, - ], - cursor: "2fofTniCgT0yIPAq26kmk0YyFQJZfbWkh73OOnlTHmTAx13NgED", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.labor.employeeWages.list({ employeeId: "employee_id", limit: 1, cursor: "cursor", }); - - expect(expected.employeeWages).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.employeeWages).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { diff --git a/tests/wire/labor/teamMemberWages.test.ts b/tests/wire/labor/teamMemberWages.test.ts index f1b95d065..64e3ad890 100644 --- a/tests/wire/labor/teamMemberWages.test.ts +++ b/tests/wire/labor/teamMemberWages.test.ts @@ -54,73 +54,12 @@ describe("TeamMemberWagesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - teamMemberWages: [ - { - id: "pXS3qCv7BERPnEGedM4S8mhm", - teamMemberId: "33fJchumvVdJwxV0H6L9", - title: "Manager", - hourlyRate: { - amount: BigInt("3250"), - currency: "USD", - }, - jobId: "jxJNN6eCJsLrhg5UFJrDWDGE", - tipEligible: false, - }, - { - id: "rZduCkzYDUVL3ovh1sQgbue6", - teamMemberId: "33fJchumvVdJwxV0H6L9", - title: "Cook", - hourlyRate: { - amount: BigInt("2600"), - currency: "USD", - }, - jobId: "gcbz15vKGnMKmaWJJ152kjim", - tipEligible: true, - }, - { - id: "FxLbs5KpPUHa8wyt5ctjubDX", - teamMemberId: "33fJchumvVdJwxV0H6L9", - title: "Barista", - hourlyRate: { - amount: BigInt("1600"), - currency: "USD", - }, - jobId: "FzbJAtt9qEWncK1BWgVCxQ6M", - tipEligible: true, - }, - { - id: "vD1wCgijMDR3cX5TPnu7VXto", - teamMemberId: "33fJchumvVdJwxV0H6L9", - title: "Cashier", - hourlyRate: { - amount: BigInt("1700"), - currency: "USD", - }, - jobId: "N4YKVLzFj3oGtNocqoYHYpW3", - tipEligible: true, - }, - ], - cursor: "2fofTniCgT0yIPAq26kmk0YyFQJZfbWkh73OOnlTHmTAx13NgED", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.labor.teamMemberWages.list({ teamMemberId: "team_member_id", limit: 1, cursor: "cursor", }); - - expect(expected.teamMemberWages).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.teamMemberWages).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { diff --git a/tests/wire/labor/workweekConfigs.test.ts b/tests/wire/labor/workweekConfigs.test.ts index 0b110a0c0..5685c4cc5 100644 --- a/tests/wire/labor/workweekConfigs.test.ts +++ b/tests/wire/labor/workweekConfigs.test.ts @@ -30,36 +30,11 @@ describe("WorkweekConfigsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - workweekConfigs: [ - { - id: "FY4VCAQN700GM", - startOfWeek: "MON", - startOfDayLocalTime: "10:00", - version: 11, - createdAt: "2016-02-04T00:58:24Z", - updatedAt: "2019-02-28T01:04:35Z", - }, - ], - cursor: "2fofTniCgT0yIPAq26kmk0YyFQJZfbWkh73OOnlTHmTAx13NgED", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.labor.workweekConfigs.list({ limit: 1, cursor: "cursor", }); - - expect(expected.workweekConfigs).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.workweekConfigs).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { diff --git a/tests/wire/locations/customAttributeDefinitions.test.ts b/tests/wire/locations/customAttributeDefinitions.test.ts index bc461d255..dba98cfa6 100644 --- a/tests/wire/locations/customAttributeDefinitions.test.ts +++ b/tests/wire/locations/customAttributeDefinitions.test.ts @@ -46,53 +46,12 @@ describe("CustomAttributeDefinitionsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - customAttributeDefinitions: [ - { - key: "phone-number", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.PhoneNumber", - }, - name: "phone number", - description: "Location's phone number", - visibility: "VISIBILITY_READ_ONLY", - version: 1, - updatedAt: "2022-12-02T19:50:21.832Z", - createdAt: "2022-12-02T19:50:21.832Z", - }, - { - key: "bestseller", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.String", - }, - name: "Bestseller", - description: "Bestselling item at location", - visibility: "VISIBILITY_READ_WRITE_VALUES", - version: 4, - updatedAt: "2022-12-03T10:17:52.341Z", - createdAt: "2022-12-02T19:06:36.559Z", - }, - ], - cursor: "ImfNzWVSiAYyiAR4gEcxDJ75KZAOSjX8H2BVHUTR0ofCtp4SdYvrUKbwYY2aCH2WqZ2FsfAuylEVUlTfaINg3ecIlFpP9Y5Ie66w9NSg9nqdI5fCJ6qdH2s0za5m2plFonsjIuFaoN89j78ROUwuSOzD6mFZPcJHhJ0CxEKc0SBH", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.locations.customAttributeDefinitions.list({ visibilityFilter: "ALL", limit: 1, cursor: "cursor", }); - - expect(expected.customAttributeDefinitions).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.customAttributeDefinitions).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/locations/customAttributes.test.ts b/tests/wire/locations/customAttributes.test.ts index 4e9b19320..701bbd0a0 100644 --- a/tests/wire/locations/customAttributes.test.ts +++ b/tests/wire/locations/customAttributes.test.ts @@ -274,35 +274,6 @@ describe("CustomAttributesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - customAttributes: [ - { - key: "phone-number", - value: "+12223334444", - version: 1, - visibility: "VISIBILITY_READ_WRITE_VALUES", - updatedAt: "2022-12-12T18:13:03.745Z", - createdAt: "2022-12-12T18:13:03.745Z", - }, - { - key: "bestseller", - value: "hot cocoa", - version: 1, - visibility: "VISIBILITY_READ_WRITE_VALUES", - updatedAt: "2022-12-12T19:27:57.975Z", - createdAt: "2022-12-12T19:27:57.975Z", - }, - ], - cursor: "cursor", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.locations.customAttributes.list({ locationId: "location_id", visibilityFilter: "ALL", @@ -310,11 +281,7 @@ describe("CustomAttributesClient", () => { cursor: "cursor", withDefinitions: true, }); - - expect(expected.customAttributes).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.customAttributes).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { diff --git a/tests/wire/loyalty/programs/promotions.test.ts b/tests/wire/loyalty/programs/promotions.test.ts index b69dac25c..c1cc1d0ff 100644 --- a/tests/wire/loyalty/programs/promotions.test.ts +++ b/tests/wire/loyalty/programs/promotions.test.ts @@ -72,95 +72,13 @@ describe("PromotionsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - loyaltyPromotions: [ - { - id: "loypromo_f0f9b849-725e-378d-b810-511237e07b67", - name: "Tuesday Happy Hour Promo", - incentive: { - type: "POINTS_MULTIPLIER", - pointsMultiplierData: { - pointsMultiplier: 3, - multiplier: "3.000", - }, - }, - availableTime: { - startDate: "2022-08-16", - timePeriods: [ - "BEGIN:VEVENT\nDTSTART:20220816T160000\nDURATION:PT2H\nRRULE:FREQ=WEEKLY;BYDAY=TU\nEND:VEVENT", - ], - }, - triggerLimit: { - times: 1, - interval: "DAY", - }, - status: "ACTIVE", - createdAt: "2022-08-16T08:38:54Z", - canceledAt: "canceled_at", - updatedAt: "2022-08-16T08:38:54Z", - loyaltyProgramId: "d619f755-2d17-41f3-990d-c04ecedd64dd", - qualifyingItemVariationIds: ["CJ3RYL56ITAKMD4VRCM7XERS", "AT3RYLR3TUA9C34VRCB7X5RR"], - qualifyingCategoryIds: ["qualifying_category_ids"], - }, - { - id: "loypromo_e696f057-2286-35ff-8108-132241328106", - name: "July Special", - incentive: { - type: "POINTS_MULTIPLIER", - pointsMultiplierData: { - pointsMultiplier: 2, - multiplier: "2.000", - }, - }, - availableTime: { - startDate: "2022-07-01", - endDate: "2022-08-01", - timePeriods: [ - "BEGIN:VEVENT\nDTSTART:20220704T090000\nDURATION:PT8H\nRRULE:FREQ=WEEKLY;UNTIL=20220801T000000;BYDAY=MO\nEND:VEVENT", - "BEGIN:VEVENT\nDTSTART:20220705T090000\nDURATION:PT8H\nRRULE:FREQ=WEEKLY;UNTIL=20220801T000000;BYDAY=TU\nEND:VEVENT", - "BEGIN:VEVENT\nDTSTART:20220706T090000\nDURATION:PT8H\nRRULE:FREQ=WEEKLY;UNTIL=20220801T000000;BYDAY=WE\nEND:VEVENT", - "BEGIN:VEVENT\nDTSTART:20220707T090000\nDURATION:PT8H\nRRULE:FREQ=WEEKLY;UNTIL=20220801T000000;BYDAY=TH\nEND:VEVENT", - "BEGIN:VEVENT\nDTSTART:20220701T090000\nDURATION:PT8H\nRRULE:FREQ=WEEKLY;UNTIL=20220801T000000;BYDAY=FR\nEND:VEVENT", - ], - }, - triggerLimit: { - times: 5, - interval: "ALL_TIME", - }, - status: "ENDED", - createdAt: "2022-06-27T15:37:38Z", - canceledAt: "canceled_at", - updatedAt: "2022-06-27T15:37:38Z", - loyaltyProgramId: "d619f755-2d17-41f3-990d-c04ecedd64dd", - minimumSpendAmountMoney: { - amount: BigInt("2000"), - currency: "USD", - }, - qualifyingItemVariationIds: ["qualifying_item_variation_ids"], - qualifyingCategoryIds: ["XTQPYLR3IIU9C44VRCB3XD12"], - }, - ], - cursor: "cursor", - }; const page = await client.loyalty.programs.promotions.list({ programId: "program_id", status: "ACTIVE", cursor: "cursor", limit: 1, }); - - expect(expected.loyaltyPromotions).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.loyaltyPromotions).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/merchants/customAttributeDefinitions.test.ts b/tests/wire/merchants/customAttributeDefinitions.test.ts index 538d60d06..166b913bd 100644 --- a/tests/wire/merchants/customAttributeDefinitions.test.ts +++ b/tests/wire/merchants/customAttributeDefinitions.test.ts @@ -46,53 +46,12 @@ describe("CustomAttributeDefinitionsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - customAttributeDefinitions: [ - { - key: "has_seen_tutorial", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.Boolean", - }, - name: "NAME", - description: "Whether the merchant has seen the tutorial screen for using the app.", - visibility: "VISIBILITY_READ_WRITE_VALUES", - version: 1, - updatedAt: "2023-05-05T16:50:21.832Z", - createdAt: "2023-05-05T16:50:21.832Z", - }, - { - key: "alternative_seller_name", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.String", - }, - name: "Alternative Merchant Name", - description: "This is the other name this merchant goes by.", - visibility: "VISIBILITY_READ_ONLY", - version: 4, - updatedAt: "2023-05-05T10:17:52.341Z", - createdAt: "2023-05-05T19:06:36.559Z", - }, - ], - cursor: "ImfNzWVSiAYyiAR4gEcxDJ75KZAOSjX8H2BVHUTR0ofCtp4SdYvrUKbwYY2aCH2WqZ2FsfAuylEVUlTfaINg3ecIlFpP9Y5Ie66w9NSg9nqdI5fCJ6qdH2s0za5m2plFonsjIuFaoN89j78ROUwuSOzD6mFZPcJHhJ0CxEKc0SBH", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.merchants.customAttributeDefinitions.list({ visibilityFilter: "ALL", limit: 1, cursor: "cursor", }); - - expect(expected.customAttributeDefinitions).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.customAttributeDefinitions).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/merchants/customAttributes.test.ts b/tests/wire/merchants/customAttributes.test.ts index b90cd452b..80c6dc106 100644 --- a/tests/wire/merchants/customAttributes.test.ts +++ b/tests/wire/merchants/customAttributes.test.ts @@ -216,35 +216,6 @@ describe("CustomAttributesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - customAttributes: [ - { - key: "has_seen_tutorial", - value: true, - version: 1, - visibility: "VISIBILITY_READ_WRITE_VALUES", - updatedAt: "2023-05-05T18:13:03.745Z", - createdAt: "2023-05-05T18:13:03.745Z", - }, - { - key: "alternative_seller_name", - value: "Ultimate Sneaker Store", - version: 1, - visibility: "VISIBILITY_READ_ONLY", - updatedAt: "2023-05-05T19:27:57.975Z", - createdAt: "2023-05-05T19:27:57.975Z", - }, - ], - cursor: "cursor", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.merchants.customAttributes.list({ merchantId: "merchant_id", visibilityFilter: "ALL", @@ -252,11 +223,7 @@ describe("CustomAttributesClient", () => { cursor: "cursor", withDefinitions: true, }); - - expect(expected.customAttributes).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.customAttributes).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { diff --git a/tests/wire/orders/customAttributeDefinitions.test.ts b/tests/wire/orders/customAttributeDefinitions.test.ts index 4564532cd..dfe47e6c3 100644 --- a/tests/wire/orders/customAttributeDefinitions.test.ts +++ b/tests/wire/orders/customAttributeDefinitions.test.ts @@ -58,65 +58,12 @@ describe("CustomAttributeDefinitionsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - customAttributeDefinitions: [ - { - key: "cover-count", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.Number", - }, - name: "Cover count", - description: "The number of people seated at a table", - visibility: "VISIBILITY_READ_WRITE_VALUES", - version: 1, - updatedAt: "2022-11-16T18:03:44.051Z", - createdAt: "2022-11-16T18:03:44.051Z", - }, - { - key: "seat-number", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.Number", - }, - name: "Seat number", - description: "The identifier for a particular seat", - visibility: "VISIBILITY_READ_WRITE_VALUES", - version: 1, - updatedAt: "2022-11-16T18:04:32.059Z", - createdAt: "2022-11-16T18:04:32.059Z", - }, - { - key: "table-number", - schema: { - $ref: "https://developer-production-s.squarecdn.com/schemas/v1/common.json#squareup.common.Number", - }, - name: "Table number", - description: "The identifier for a particular table", - visibility: "VISIBILITY_READ_WRITE_VALUES", - version: 1, - updatedAt: "2022-11-16T18:04:21.912Z", - createdAt: "2022-11-16T18:04:21.912Z", - }, - ], - cursor: "cursor", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.orders.customAttributeDefinitions.list({ visibilityFilter: "ALL", cursor: "cursor", limit: 1, }); - - expect(expected.customAttributeDefinitions).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.customAttributeDefinitions).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("create", async () => { diff --git a/tests/wire/orders/customAttributes.test.ts b/tests/wire/orders/customAttributes.test.ts index e62d62380..5beb0c0fd 100644 --- a/tests/wire/orders/customAttributes.test.ts +++ b/tests/wire/orders/customAttributes.test.ts @@ -210,27 +210,6 @@ describe("CustomAttributesClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - customAttributes: [ - { - key: "wayne-test-15", - value: "TEST", - version: 1, - visibility: "VISIBILITY_READ_WRITE_VALUES", - updatedAt: "2022-11-10T17:31:36.111Z", - createdAt: "2022-11-10T17:31:36.111Z", - }, - ], - cursor: "cursor", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.orders.customAttributes.list({ orderId: "order_id", visibilityFilter: "ALL", @@ -238,11 +217,7 @@ describe("CustomAttributesClient", () => { limit: 1, withDefinitions: true, }); - - expect(expected.customAttributes).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.customAttributes).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { diff --git a/tests/wire/payouts.test.ts b/tests/wire/payouts.test.ts index 40fe8ebe0..0c3693ebd 100644 --- a/tests/wire/payouts.test.ts +++ b/tests/wire/payouts.test.ts @@ -236,66 +236,12 @@ describe("PayoutsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - payoutEntries: [ - { - id: "poe_ZQWcw41d0SGJS6IWd4cSi8mKHk", - payoutId: "po_4d28e6c4-7dd5-4de4-8ec9-a059277646a6", - effectiveAt: "2021-12-14T23:31:49Z", - type: "REFUND", - grossAmountMoney: { - amount: BigInt("-50"), - }, - feeAmountMoney: { - amount: BigInt("-2"), - }, - netAmountMoney: { - amount: BigInt("-48"), - }, - typeRefundDetails: { - paymentId: "HVdG62HeMlti8YYf94oxrN", - refundId: "HVdG62HeMlti8YYf94oxrN_dR8Nztxg7umf94oxrN12Ji5r2KW14FAY", - }, - }, - { - id: "poe_EibbY9Ob1d0SGJS6IWd4cSiSi6wkaPk", - payoutId: "po_4d28e6c4-7dd5-4de4-8ec9-a059277646a6", - effectiveAt: "2021-12-14T23:31:49Z", - type: "CHARGE", - grossAmountMoney: { - amount: BigInt("100"), - }, - feeAmountMoney: { - amount: BigInt("19"), - }, - netAmountMoney: { - amount: BigInt("81"), - }, - typeChargeDetails: { - paymentId: "HVdG62H5K3291d0SGJS6IWd4cSi8YY", - }, - }, - ], - cursor: "TbfI80z98Xc2LdApCyZ2NvCYLpkPurYLR16GRIttpMJ55mrSIMzHgtkcRQdT0mOnTtfHO", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.payouts.listEntries({ payoutId: "payout_id", sortOrder: "DESC", cursor: "cursor", limit: 1, }); - - expect(expected.payoutEntries).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.payoutEntries).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); }); diff --git a/tests/wire/subscriptions.test.ts b/tests/wire/subscriptions.test.ts index a2d4ee64a..6eb1d55cd 100644 --- a/tests/wire/subscriptions.test.ts +++ b/tests/wire/subscriptions.test.ts @@ -899,89 +899,12 @@ describe("SubscriptionsClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - subscriptionEvents: [ - { - id: "06809161-3867-4598-8269-8aea5be4f9de", - subscriptionEventType: "START_SUBSCRIPTION", - effectiveDate: "2020-04-24", - monthlyBillingAnchorDate: 1, - phases: [{}], - planVariationId: "6JHXF3B2CW3YKHDV4XEM674H", - }, - { - id: "f2736603-cd2e-47ec-8675-f815fff54f88", - subscriptionEventType: "DEACTIVATE_SUBSCRIPTION", - effectiveDate: "2020-05-01", - monthlyBillingAnchorDate: 1, - info: { - detail: "The customer with ID `V74BMG0GPS2KNCWJE1BTYJ37Y0` does not have a name on record.", - code: "CUSTOMER_NO_NAME", - }, - phases: [{}], - planVariationId: "6JHXF3B2CW3YKHDV4XEM674H", - }, - { - id: "b426fc85-6859-450b-b0d0-fe3a5d1b565f", - subscriptionEventType: "RESUME_SUBSCRIPTION", - effectiveDate: "2022-05-01", - monthlyBillingAnchorDate: 1, - phases: [{}], - planVariationId: "6JHXF3B2CW3YKHDV4XEM674H", - }, - { - id: "09f14de1-2f53-4dae-9091-49aa53f83d01", - subscriptionEventType: "PAUSE_SUBSCRIPTION", - effectiveDate: "2022-09-01", - monthlyBillingAnchorDate: 1, - phases: [{}], - planVariationId: "6JHXF3B2CW3YKHDV4XEM674H", - }, - { - id: "f28a73ac-1a1b-4b0f-8eeb-709a72945776", - subscriptionEventType: "RESUME_SUBSCRIPTION", - effectiveDate: "2022-12-01", - monthlyBillingAnchorDate: 1, - phases: [{}], - planVariationId: "6JHXF3B2CW3YKHDV4XEM674H", - }, - { - id: "1eee8790-472d-4efe-8c69-8ad84e9cefe0", - subscriptionEventType: "PLAN_CHANGE", - effectiveDate: "2023-04-01", - monthlyBillingAnchorDate: 1, - phases: [{}], - planVariationId: "02CD53CFA4d1498AFAD42", - }, - { - id: "a0c08083-5db0-4800-85c7-d398de4fbb6e", - subscriptionEventType: "STOP_SUBSCRIPTION", - effectiveDate: "2023-06-21", - monthlyBillingAnchorDate: 1, - phases: [{}], - planVariationId: "6JHXF3B2CW3YKHDV4XEM674H", - }, - ], - cursor: "cursor", - }; const page = await client.subscriptions.listEvents({ subscriptionId: "subscription_id", cursor: "cursor", limit: 1, }); - - expect(expected.subscriptionEvents).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.subscriptionEvents).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("pause", async () => { diff --git a/tests/wire/transferOrders.test.ts b/tests/wire/transferOrders.test.ts index 5967ad587..de9067475 100644 --- a/tests/wire/transferOrders.test.ts +++ b/tests/wire/transferOrders.test.ts @@ -215,69 +215,6 @@ describe("TransferOrdersClient", () => { .jsonBody(rawResponseBody) .build(); - const expected = { - transferOrders: [ - { - id: "EXAMPLE_TRANSFER_ORDER_ID_123", - sourceLocationId: "EXAMPLE_SOURCE_LOCATION_ID_123", - destinationLocationId: "EXAMPLE_DEST_LOCATION_ID_456", - status: "STARTED", - createdAt: "2025-01-15T10:30:00Z", - updatedAt: "2025-01-15T10:32:00Z", - expectedAt: "2025-11-09T05:00:00Z", - completedAt: "completed_at", - notes: "Inventory rebalance between stores", - trackingNumber: "TRACK123456789", - createdByTeamMemberId: "EXAMPLE_TEAM_MEMBER_ID_789", - lineItems: [ - { - uid: "1", - itemVariationId: "EXAMPLE_ITEM_VARIATION_ID_001", - quantityOrdered: "5", - quantityPending: "5", - quantityReceived: "0", - quantityDamaged: "0", - quantityCanceled: "0", - }, - ], - version: BigInt("1753118664873"), - }, - { - id: "EXAMPLE_TRANSFER_ORDER_ID_456", - sourceLocationId: "EXAMPLE_SOURCE_LOCATION_ID_123", - destinationLocationId: "EXAMPLE_DEST_LOCATION_ID_456", - status: "PARTIALLY_RECEIVED", - createdAt: "2025-01-14T14:20:00Z", - updatedAt: "2025-01-15T09:45:00Z", - expectedAt: "2025-11-08T12:00:00Z", - completedAt: "completed_at", - notes: "Seasonal stock transfer", - trackingNumber: "tracking_number", - createdByTeamMemberId: "created_by_team_member_id", - lineItems: [ - { - uid: "1", - itemVariationId: "EXAMPLE_ITEM_VARIATION_ID_002", - quantityOrdered: "10", - quantityPending: "3", - quantityReceived: "7", - quantityDamaged: "0", - quantityCanceled: "0", - }, - ], - version: BigInt("1753115540123"), - }, - ], - cursor: "eyJsYXN0X3VwZGF0ZWRfYXQiOjE3NTMxMTU1NDBfMTIzfQ==", - errors: [ - { - category: "API_ERROR", - code: "INTERNAL_SERVER_ERROR", - detail: "detail", - field: "field", - }, - ], - }; const page = await client.transferOrders.search({ query: { filter: { @@ -293,11 +230,7 @@ describe("TransferOrdersClient", () => { cursor: "eyJsYXN0X3VwZGF0ZWRfYXQiOjE3NTMxMTg2NjQ4NzN9", limit: 10, }); - - expect(expected.transferOrders).toEqual(page.data); - expect(page.hasNextPage()).toBe(true); - const nextPage = await page.getNextPage(); - expect(expected.transferOrders).toEqual(nextPage.data); + expect(page.data).toEqual([]); }); test("get", async () => { diff --git a/yarn.lock b/yarn.lock index 580640dd6..bdbb52c35 100644 --- a/yarn.lock +++ b/yarn.lock @@ -904,9 +904,9 @@ form-data "^4.0.4" "@types/node@*": - version "24.10.1" - resolved "https://registry.yarnpkg.com/@types/node/-/node-24.10.1.tgz#91e92182c93db8bd6224fca031e2370cef9a8f01" - integrity sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ== + version "25.0.1" + resolved "https://registry.yarnpkg.com/@types/node/-/node-25.0.1.tgz#9c41c277a1b16491174497cd075f8de7c27a1ac4" + integrity sha512-czWPzKIAXucn9PtsttxmumiQ9N0ok9FrBwgRWrwmVLlp86BrMExzvXRLFYRJ+Ex3g6yqj+KuaxfX1JTgV2lpfg== dependencies: undici-types "~7.16.0" @@ -923,9 +923,9 @@ undici-types "~5.26.4" "@types/readable-stream@^4.0.18": - version "4.0.22" - resolved "https://registry.yarnpkg.com/@types/readable-stream/-/readable-stream-4.0.22.tgz#882fda4f17b6580acb257df3f22ca69c05470b29" - integrity sha512-/FFhJpfCLAPwAcN3mFycNUa77ddnr8jTgF5VmSNetaemWB2cIlfCA9t0YTM3JAT0wOcv8D4tjPo7pkDhK3EJIg== + version "4.0.23" + resolved "https://registry.yarnpkg.com/@types/readable-stream/-/readable-stream-4.0.23.tgz#fcd0f7472f45ceb43154f08f0083ccd1c76e53ce" + integrity sha512-wwXrtQvbMHxCbBgjHaMGEmImFTQxxpfMOR/ZoQnXxB1woqkUbdLGFDgauo00Py9IudiaqSeiBiulSV9i6XIPig== dependencies: "@types/node" "*" @@ -1286,10 +1286,10 @@ base64-js@^1.3.1: resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -baseline-browser-mapping@^2.8.25: - version "2.8.29" - resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.8.29.tgz#d8800b71399c783cb1bf2068c2bcc3b6cfd7892c" - integrity sha512-sXdt2elaVnhpDNRDz+1BDx1JQoJRuNk7oVlAlbGiFkLikHCAQiccexF/9e91zVi6RCgqspl04aP+6Cnl9zRLrA== +baseline-browser-mapping@^2.9.0: + version "2.9.7" + resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.9.7.tgz#d36ce64f2a2c468f6f743c8db495d319120007db" + integrity sha512-k9xFKplee6KIio3IDbwj+uaCLpqzOwakOgmqzPezM0sFJlFKcg30vk2wOiAJtkTSfx0SSQDSe8q+mWA/fSH5Zg== brace-expansion@^1.1.7: version "1.1.12" @@ -1307,15 +1307,15 @@ braces@^3.0.3: fill-range "^7.1.1" browserslist@^4.24.0, browserslist@^4.26.3: - version "4.28.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.28.0.tgz#9cefece0a386a17a3cd3d22ebf67b9deca1b5929" - integrity sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ== + version "4.28.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.28.1.tgz#7f534594628c53c63101079e27e40de490456a95" + integrity sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA== dependencies: - baseline-browser-mapping "^2.8.25" - caniuse-lite "^1.0.30001754" - electron-to-chromium "^1.5.249" + baseline-browser-mapping "^2.9.0" + caniuse-lite "^1.0.30001759" + electron-to-chromium "^1.5.263" node-releases "^2.0.27" - update-browserslist-db "^1.1.4" + update-browserslist-db "^1.2.0" bs-logger@^0.2.6: version "0.2.6" @@ -1367,10 +1367,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001754: - version "1.0.30001756" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001756.tgz#fe80104631102f88e58cad8aa203a2c3e5ec9ebd" - integrity sha512-4HnCNKbMLkLdhJz3TToeVWHSnfJvPaq6vu/eRP0Ahub/07n484XHhBF5AJoSGHdVrS8tKFauUQz8Bp9P7LVx7A== +caniuse-lite@^1.0.30001759: + version "1.0.30001760" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001760.tgz#bdd1960fafedf8d5f04ff16e81460506ff9b798f" + integrity sha512-7AAMPcueWELt1p3mi13HR/LHH0TJLT11cnwDJEs3xA4+CK/PLKeO9Kl1oru24htkyUKtkGCvAx4ohB0Ttry8Dw== chalk@^4.0.0, chalk@^4.1.0: version "4.1.2" @@ -1574,10 +1574,10 @@ dunder-proto@^1.0.1: es-errors "^1.3.0" gopd "^1.2.0" -electron-to-chromium@^1.5.249: - version "1.5.258" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.258.tgz#094b0280928b1bf967b202e4be5b335aa4754b69" - integrity sha512-rHUggNV5jKQ0sSdWwlaRDkFc3/rRJIVnOSe9yR4zrR07m3ZxhP4N27Hlg8VeJGGYgFTxK5NqDmWI4DSH72vIJg== +electron-to-chromium@^1.5.263: + version "1.5.267" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.267.tgz#5d84f2df8cdb6bfe7e873706bb21bd4bfb574dc7" + integrity sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw== emittery@^0.13.1: version "0.13.1" @@ -1590,9 +1590,9 @@ emoji-regex@^8.0.0: integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== enhanced-resolve@^5.0.0, enhanced-resolve@^5.17.3: - version "5.18.3" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz#9b5f4c5c076b8787c78fe540392ce76a88855b44" - integrity sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww== + version "5.18.4" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.18.4.tgz#c22d33055f3952035ce6a144ce092447c525f828" + integrity sha512-LgQMM4WXU3QI+SYgEc2liRgznaD5ojbmY3sb8LxyguVkIg5FxdpTkvk72te2R38/TGKxH634oLxXRGY6d7AP+Q== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" @@ -2757,9 +2757,9 @@ npm-run-path@^4.0.1: path-key "^3.0.0" nwsapi@^2.2.2: - version "2.2.22" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.22.tgz#109f9530cda6c156d6a713cdf5939e9f0de98b9d" - integrity sha512-ujSMe1OWVn55euT1ihwCI1ZcAaAU3nxUiDwfDQldc51ZXaB9m2AyOn6/jh1BLe2t/G8xd6uKG1UBF2aZJeg2SQ== + version "2.2.23" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.23.tgz#59712c3a88e6de2bb0b6ccc1070397267019cf6c" + integrity sha512-7wfH4sLbt4M0gCDzGE6vzQBo0bfTKjU7Sfpqy/7gs1qBfYz2vEJH6vXcBKpO3+6Yu1telwd0t9HpyOoLEQQbIQ== once@^1.3.0: version "1.4.0" @@ -3200,9 +3200,9 @@ tapable@^2.2.0, tapable@^2.3.0: integrity sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg== terser-webpack-plugin@^5.3.11: - version "5.3.14" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz#9031d48e57ab27567f02ace85c7d690db66c3e06" - integrity sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw== + version "5.3.16" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.16.tgz#741e448cc3f93d8026ebe4f7ef9e4afacfd56330" + integrity sha512-h9oBFCWrq78NyWWVcSwZarJkZ01c2AyGrzs1crmHZO3QUg9D61Wu4NPjBy69n7JqylFF5y+CsUZYmYEIZ3mR+Q== dependencies: "@jridgewell/trace-mapping" "^0.3.25" jest-worker "^27.4.5" @@ -3234,17 +3234,17 @@ tiny-warning@^1.0.3: resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754" integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== -tldts-core@^7.0.18: - version "7.0.18" - resolved "https://registry.yarnpkg.com/tldts-core/-/tldts-core-7.0.18.tgz#78edfd38e8c35e20fb4d2cde63c759139e169d31" - integrity sha512-jqJC13oP4FFAahv4JT/0WTDrCF9Okv7lpKtOZUGPLiAnNbACcSg8Y8T+Z9xthOmRBqi/Sob4yi0TE0miRCvF7Q== +tldts-core@^7.0.19: + version "7.0.19" + resolved "https://registry.yarnpkg.com/tldts-core/-/tldts-core-7.0.19.tgz#9dd8a457a09b4e65c8266c029f1847fa78dead20" + integrity sha512-lJX2dEWx0SGH4O6p+7FPwYmJ/bu1JbcGJ8RLaG9b7liIgZ85itUVEPbMtWRVrde/0fnDPEPHW10ZsKW3kVsE9A== tldts@^7.0.5: - version "7.0.18" - resolved "https://registry.yarnpkg.com/tldts/-/tldts-7.0.18.tgz#72cac7a2bdb6bba78f8a09fdf7ef84843b09aa94" - integrity sha512-lCcgTAgMxQ1JKOWrVGo6E69Ukbnx4Gc1wiYLRf6J5NN4HRYJtCby1rPF8rkQ4a6qqoFBK5dvjJ1zJ0F7VfDSvw== + version "7.0.19" + resolved "https://registry.yarnpkg.com/tldts/-/tldts-7.0.19.tgz#84cd7a7f04e68ec93b93b106fac038c527b99368" + integrity sha512-8PWx8tvC4jDB39BQw1m4x8y5MH1BcQ5xHeL2n7UVFulMPH/3Q0uiamahFJ3lXA0zO2SUyRXuVVbWSDmstlt9YA== dependencies: - tldts-core "^7.0.18" + tldts-core "^7.0.19" tmpl@1.0.5: version "1.0.5" @@ -3288,9 +3288,9 @@ tr46@~0.0.3: integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== ts-jest@^29.3.4: - version "29.4.5" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.4.5.tgz#a6b0dc401e521515d5342234be87f1ca96390a6f" - integrity sha512-HO3GyiWn2qvTQA4kTgjDcXiMwYQt68a1Y8+JuLRVpdIzm+UOLSHgl/XqR4c6nzJkq5rOkjc02O2I7P7l/Yof0Q== + version "29.4.6" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.4.6.tgz#51cb7c133f227396818b71297ad7409bb77106e9" + integrity sha512-fSpWtOO/1AjSNQguk43hb/JCo16oJDnMJf3CdEGNkqsEX3t0KX96xvyX1D7PfLCpVoKu4MfVrqUkFyblYoY4lA== dependencies: bs-logger "^0.2.6" fast-json-stable-stringify "^2.1.0" @@ -3358,10 +3358,10 @@ universalify@^0.2.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== -update-browserslist-db@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.4.tgz#7802aa2ae91477f255b86e0e46dbc787a206ad4a" - integrity sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A== +update-browserslist-db@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.2.2.tgz#cfb4358afa08b3d5731a2ecd95eebf4ddef8033e" + integrity sha512-E85pfNzMQ9jpKkA7+TJAi4TJN+tBCuWh5rUcS/sv6cFi+1q9LYDwDI5dpUL0u/73EElyQ8d3TEaeW4sPedBqYA== dependencies: escalade "^3.2.0" picocolors "^1.1.1"