Skip to content

Commit

Permalink
Handle isSeamHttpOptionsWithClient in createAxiosClient
Browse files Browse the repository at this point in the history
  • Loading branch information
razor-x committed Sep 26, 2023
1 parent 62939dd commit 1b3d888
Show file tree
Hide file tree
Showing 21 changed files with 22 additions and 40 deletions.
2 changes: 2 additions & 0 deletions src/lib/seam/connect/axios.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,15 @@ import axios, { type Axios } from 'axios'

import { getAuthHeaders } from './auth.js'
import {
isSeamHttpOptionsWithClient,
isSeamHttpOptionsWithClientSessionToken,
type SeamHttpOptions,
} from './client-options.js'

export const createAxiosClient = (
options: Required<SeamHttpOptions>,
): Axios => {
if (isSeamHttpOptionsWithClient(options)) return options.client
// TODO: axiosRetry? Allow options to configure this if so
return axios.create({
baseURL: options.endpoint,
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttp {
constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
this.#legacy = options.enableLegacyMethodBehaivor
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/access-codes-unmanaged.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpAccessCodesUnmanaged {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/access-codes.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpAccessCodes {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/acs-access-groups.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpAcsAccessGroups {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/acs-credentials.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpAcsCredentials {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/acs-systems.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpAcsSystems {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/acs-users.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpAcsUsers {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/action-attempts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpActionAttempts {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/client-sessions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpClientSessions {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/connect-webviews.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpConnectWebviews {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/connected-accounts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpConnectedAccounts {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/devices-unmanaged.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpDevicesUnmanaged {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/devices.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpDevices {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/events.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpEvents {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/locks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpLocks {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpNoiseSensorsNoiseThresholds {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpThermostatsClimateSettingSchedules {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/thermostats.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpThermostats {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/webhooks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpWebhooks {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down
3 changes: 1 addition & 2 deletions src/lib/seam/connect/routes/workspaces.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ export class SeamHttpWorkspaces {

constructor(apiKeyOrOptions: string | SeamHttpOptions) {
const options = parseOptions(apiKeyOrOptions)
const client = 'client' in options ? options.client : null
this.client = client ?? createAxiosClient(options)
this.client = createAxiosClient(options)
}

static fromClient(
Expand Down

0 comments on commit 1b3d888

Please sign in to comment.