@seamapi/http 1.32.0 → 1.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/connect.cjs +242 -201
  2. package/dist/connect.cjs.map +1 -1
  3. package/dist/connect.d.cts +428 -85
  4. package/lib/seam/connect/resolve-action-attempt.d.ts +488 -52
  5. package/lib/seam/connect/routes/access-codes.d.ts +4 -0
  6. package/lib/seam/connect/routes/access-codes.js +8 -0
  7. package/lib/seam/connect/routes/access-codes.js.map +1 -1
  8. package/lib/seam/connect/routes/acs-encoders.d.ts +4 -0
  9. package/lib/seam/connect/routes/acs-encoders.js +9 -0
  10. package/lib/seam/connect/routes/acs-encoders.js.map +1 -1
  11. package/lib/seam/connect/routes/connected-accounts.d.ts +4 -0
  12. package/lib/seam/connect/routes/connected-accounts.js +8 -0
  13. package/lib/seam/connect/routes/connected-accounts.js.map +1 -1
  14. package/lib/seam/connect/routes/index.d.ts +2 -2
  15. package/lib/seam/connect/routes/index.js +2 -2
  16. package/lib/seam/connect/routes/index.js.map +1 -1
  17. package/lib/seam/connect/routes/{networks.d.ts → thermostats-daily-programs.d.ts} +19 -15
  18. package/lib/seam/connect/routes/{networks.js → thermostats-daily-programs.js} +23 -14
  19. package/lib/seam/connect/routes/thermostats-daily-programs.js.map +1 -0
  20. package/lib/seam/connect/routes/thermostats.d.ts +6 -0
  21. package/lib/seam/connect/routes/thermostats.js +13 -0
  22. package/lib/seam/connect/routes/thermostats.js.map +1 -1
  23. package/lib/seam/connect/routes/{bridges.d.ts → unstable-partner.d.ts} +8 -18
  24. package/lib/seam/connect/routes/{bridges.js → unstable-partner.js} +8 -25
  25. package/lib/seam/connect/routes/unstable-partner.js.map +1 -0
  26. package/lib/seam/connect/routes/workspaces.d.ts +4 -0
  27. package/lib/seam/connect/routes/workspaces.js +8 -0
  28. package/lib/seam/connect/routes/workspaces.js.map +1 -1
  29. package/lib/seam/connect/seam-http.d.ts +1 -2
  30. package/lib/seam/connect/seam-http.js +1 -4
  31. package/lib/seam/connect/seam-http.js.map +1 -1
  32. package/lib/version.d.ts +1 -1
  33. package/lib/version.js +1 -1
  34. package/package.json +4 -4
  35. package/src/lib/seam/connect/routes/access-codes.ts +20 -0
  36. package/src/lib/seam/connect/routes/acs-encoders.ts +25 -0
  37. package/src/lib/seam/connect/routes/connected-accounts.ts +18 -0
  38. package/src/lib/seam/connect/routes/index.ts +2 -2
  39. package/src/lib/seam/connect/routes/{networks.ts → thermostats-daily-programs.ts} +64 -31
  40. package/src/lib/seam/connect/routes/thermostats.ts +33 -0
  41. package/src/lib/seam/connect/routes/{bridges.ts → unstable-partner.ts} +14 -53
  42. package/src/lib/seam/connect/routes/workspaces.ts +17 -0
  43. package/src/lib/seam/connect/seam-http.ts +0 -5
  44. package/src/lib/version.ts +1 -1
  45. package/lib/seam/connect/routes/bridges.js.map +0 -1
  46. package/lib/seam/connect/routes/networks.js.map +0 -1
@@ -3,8 +3,6 @@
3
3
  * Do not edit this file or add other files to this directory.
4
4
  */
5
5
 
6
- import type { RouteRequestBody, RouteResponse } from '@seamapi/types/connect'
7
-
8
6
  import {
9
7
  getAuthHeadersForClientSessionToken,
10
8
  warnOnInsecureuserIdentifierKey,
@@ -30,13 +28,12 @@ import {
30
28
  limitToSeamHttpRequestOptions,
31
29
  parseOptions,
32
30
  } from 'lib/seam/connect/parse-options.js'
33
- import { SeamHttpRequest } from 'lib/seam/connect/seam-http-request.js'
31
+ import type { SeamHttpRequest } from 'lib/seam/connect/seam-http-request.js'
34
32
  import { SeamPaginator } from 'lib/seam/connect/seam-paginator.js'
35
- import type { SetNonNullable } from 'lib/types.js'
36
33
 
37
34
  import { SeamHttpClientSessions } from './client-sessions.js'
38
35
 
39
- export class SeamHttpBridges {
36
+ export class SeamHttpUnstablePartner {
40
37
  client: Client
41
38
  readonly defaults: Required<SeamHttpRequestOptions>
42
39
 
@@ -49,23 +46,23 @@ export class SeamHttpBridges {
49
46
  static fromClient(
50
47
  client: SeamHttpOptionsWithClient['client'],
51
48
  options: Omit<SeamHttpOptionsWithClient, 'client'> = {},
52
- ): SeamHttpBridges {
49
+ ): SeamHttpUnstablePartner {
53
50
  const constructorOptions = { ...options, client }
54
51
  if (!isSeamHttpOptionsWithClient(constructorOptions)) {
55
52
  throw new SeamHttpInvalidOptionsError('Missing client')
56
53
  }
57
- return new SeamHttpBridges(constructorOptions)
54
+ return new SeamHttpUnstablePartner(constructorOptions)
58
55
  }
59
56
 
60
57
  static fromApiKey(
61
58
  apiKey: SeamHttpOptionsWithApiKey['apiKey'],
62
59
  options: Omit<SeamHttpOptionsWithApiKey, 'apiKey'> = {},
63
- ): SeamHttpBridges {
60
+ ): SeamHttpUnstablePartner {
64
61
  const constructorOptions = { ...options, apiKey }
65
62
  if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
66
63
  throw new SeamHttpInvalidOptionsError('Missing apiKey')
67
64
  }
68
- return new SeamHttpBridges(constructorOptions)
65
+ return new SeamHttpUnstablePartner(constructorOptions)
69
66
  }
70
67
 
71
68
  static fromClientSessionToken(
@@ -74,19 +71,19 @@ export class SeamHttpBridges {
74
71
  SeamHttpOptionsWithClientSessionToken,
75
72
  'clientSessionToken'
76
73
  > = {},
77
- ): SeamHttpBridges {
74
+ ): SeamHttpUnstablePartner {
78
75
  const constructorOptions = { ...options, clientSessionToken }
79
76
  if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
80
77
  throw new SeamHttpInvalidOptionsError('Missing clientSessionToken')
81
78
  }
82
- return new SeamHttpBridges(constructorOptions)
79
+ return new SeamHttpUnstablePartner(constructorOptions)
83
80
  }
84
81
 
85
82
  static async fromPublishableKey(
86
83
  publishableKey: string,
87
84
  userIdentifierKey: string,
88
85
  options: SeamHttpFromPublishableKeyOptions = {},
89
- ): Promise<SeamHttpBridges> {
86
+ ): Promise<SeamHttpUnstablePartner> {
90
87
  warnOnInsecureuserIdentifierKey(userIdentifierKey)
91
88
  const clientOptions = parseOptions({ ...options, publishableKey })
92
89
  if (isSeamHttpOptionsWithClient(clientOptions)) {
@@ -99,7 +96,7 @@ export class SeamHttpBridges {
99
96
  const { token } = await clientSessions.getOrCreate({
100
97
  user_identifier_key: userIdentifierKey,
101
98
  })
102
- return SeamHttpBridges.fromClientSessionToken(token, options)
99
+ return SeamHttpUnstablePartner.fromClientSessionToken(token, options)
103
100
  }
104
101
 
105
102
  static fromConsoleSessionToken(
@@ -109,14 +106,14 @@ export class SeamHttpBridges {
109
106
  SeamHttpOptionsWithConsoleSessionToken,
110
107
  'consoleSessionToken' | 'workspaceId'
111
108
  > = {},
112
- ): SeamHttpBridges {
109
+ ): SeamHttpUnstablePartner {
113
110
  const constructorOptions = { ...options, consoleSessionToken, workspaceId }
114
111
  if (!isSeamHttpOptionsWithConsoleSessionToken(constructorOptions)) {
115
112
  throw new SeamHttpInvalidOptionsError(
116
113
  'Missing consoleSessionToken or workspaceId',
117
114
  )
118
115
  }
119
- return new SeamHttpBridges(constructorOptions)
116
+ return new SeamHttpUnstablePartner(constructorOptions)
120
117
  }
121
118
 
122
119
  static fromPersonalAccessToken(
@@ -126,14 +123,14 @@ export class SeamHttpBridges {
126
123
  SeamHttpOptionsWithPersonalAccessToken,
127
124
  'personalAccessToken' | 'workspaceId'
128
125
  > = {},
129
- ): SeamHttpBridges {
126
+ ): SeamHttpUnstablePartner {
130
127
  const constructorOptions = { ...options, personalAccessToken, workspaceId }
131
128
  if (!isSeamHttpOptionsWithPersonalAccessToken(constructorOptions)) {
132
129
  throw new SeamHttpInvalidOptionsError(
133
130
  'Missing personalAccessToken or workspaceId',
134
131
  )
135
132
  }
136
- return new SeamHttpBridges(constructorOptions)
133
+ return new SeamHttpUnstablePartner(constructorOptions)
137
134
  }
138
135
 
139
136
  createPaginator<const TResponse, const TResponseKey extends keyof TResponse>(
@@ -160,40 +157,4 @@ export class SeamHttpBridges {
160
157
  const clientSessions = SeamHttpClientSessions.fromClient(this.client)
161
158
  await clientSessions.get()
162
159
  }
163
-
164
- get(body?: BridgesGetParams): SeamHttpRequest<BridgesGetResponse, 'bridge'> {
165
- return new SeamHttpRequest(this, {
166
- pathname: '/bridges/get',
167
- method: 'post',
168
- body,
169
- responseKey: 'bridge',
170
- })
171
- }
172
-
173
- list(
174
- body?: BridgesListParams,
175
- ): SeamHttpRequest<BridgesListResponse, 'bridges'> {
176
- return new SeamHttpRequest(this, {
177
- pathname: '/bridges/list',
178
- method: 'post',
179
- body,
180
- responseKey: 'bridges',
181
- })
182
- }
183
160
  }
184
-
185
- export type BridgesGetParams = RouteRequestBody<'/bridges/get'>
186
-
187
- export type BridgesGetResponse = SetNonNullable<
188
- Required<RouteResponse<'/bridges/get'>>
189
- >
190
-
191
- export type BridgesGetOptions = never
192
-
193
- export type BridgesListParams = RouteRequestBody<'/bridges/list'>
194
-
195
- export type BridgesListResponse = SetNonNullable<
196
- Required<RouteResponse<'/bridges/list'>>
197
- >
198
-
199
- export type BridgesListOptions = never
@@ -206,6 +206,15 @@ export class SeamHttpWorkspaces {
206
206
  options,
207
207
  })
208
208
  }
209
+
210
+ update(body?: WorkspacesUpdateBody): SeamHttpRequest<void, undefined> {
211
+ return new SeamHttpRequest(this, {
212
+ pathname: '/workspaces/update',
213
+ method: 'post',
214
+ body,
215
+ responseKey: undefined,
216
+ })
217
+ }
209
218
  }
210
219
 
211
220
  export type WorkspacesCreateBody = RouteRequestBody<'/workspaces/create'>
@@ -243,3 +252,11 @@ export type WorkspacesResetSandboxOptions = Pick<
243
252
  SeamHttpRequestOptions,
244
253
  'waitForActionAttempt'
245
254
  >
255
+
256
+ export type WorkspacesUpdateBody = RouteRequestBody<'/workspaces/update'>
257
+
258
+ export type WorkspacesUpdateResponse = SetNonNullable<
259
+ Required<RouteResponse<'/workspaces/update'>>
260
+ >
261
+
262
+ export type WorkspacesUpdateOptions = never
@@ -32,7 +32,6 @@ import {
32
32
  SeamHttpDevices,
33
33
  SeamHttpEvents,
34
34
  SeamHttpLocks,
35
- SeamHttpNetworks,
36
35
  SeamHttpNoiseSensors,
37
36
  SeamHttpPhones,
38
37
  SeamHttpThermostats,
@@ -206,10 +205,6 @@ export class SeamHttp {
206
205
  return SeamHttpLocks.fromClient(this.client, this.defaults)
207
206
  }
208
207
 
209
- get networks(): SeamHttpNetworks {
210
- return SeamHttpNetworks.fromClient(this.client, this.defaults)
211
- }
212
-
213
208
  get noiseSensors(): SeamHttpNoiseSensors {
214
209
  return SeamHttpNoiseSensors.fromClient(this.client, this.defaults)
215
210
  }
@@ -1,3 +1,3 @@
1
- const seamapiJavascriptHttpVersion = '1.32.0'
1
+ const seamapiJavascriptHttpVersion = '1.33.0'
2
2
 
3
3
  export default seamapiJavascriptHttpVersion
@@ -1 +0,0 @@
1
- {"version":3,"file":"bridges.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/bridges.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"networks.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/networks.ts"],"names":[],"mappings":"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"}