@seamapi/http 2.4.3 → 2.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/request-parameters.d.ts +1 -1
- package/lib/request-parameters.js +7 -2
- package/lib/request-parameters.js.map +1 -1
- package/lib/routes/access-codes/access-codes.d.ts +1 -1
- package/lib/routes/access-codes/access-codes.js +30 -11
- package/lib/routes/access-codes/access-codes.js.map +1 -1
- package/lib/routes/access-codes/simulate/simulate.js +3 -2
- package/lib/routes/access-codes/simulate/simulate.js.map +1 -1
- package/lib/routes/access-codes/unmanaged/unmanaged.d.ts +1 -1
- package/lib/routes/access-codes/unmanaged/unmanaged.js +15 -6
- package/lib/routes/access-codes/unmanaged/unmanaged.js.map +1 -1
- package/lib/routes/access-grants/access-grants.d.ts +1 -1
- package/lib/routes/access-grants/access-grants.js +21 -8
- package/lib/routes/access-grants/access-grants.js.map +1 -1
- package/lib/routes/access-grants/unmanaged/unmanaged.js +9 -4
- package/lib/routes/access-grants/unmanaged/unmanaged.js.map +1 -1
- package/lib/routes/access-methods/access-methods.d.ts +1 -1
- package/lib/routes/access-methods/access-methods.js +21 -8
- package/lib/routes/access-methods/access-methods.js.map +1 -1
- package/lib/routes/access-methods/unmanaged/unmanaged.js +6 -3
- package/lib/routes/access-methods/unmanaged/unmanaged.js.map +1 -1
- package/lib/routes/acs/access-groups/access-groups.js +21 -8
- package/lib/routes/acs/access-groups/access-groups.js.map +1 -1
- package/lib/routes/acs/credentials/credentials.js +24 -9
- package/lib/routes/acs/credentials/credentials.js.map +1 -1
- package/lib/routes/acs/encoders/encoders.js +15 -6
- package/lib/routes/acs/encoders/encoders.js.map +1 -1
- package/lib/routes/acs/encoders/simulate/simulate.js +12 -5
- package/lib/routes/acs/encoders/simulate/simulate.js.map +1 -1
- package/lib/routes/acs/entrances/entrances.js +15 -6
- package/lib/routes/acs/entrances/entrances.js.map +1 -1
- package/lib/routes/acs/systems/systems.js +12 -5
- package/lib/routes/acs/systems/systems.js.map +1 -1
- package/lib/routes/acs/users/users.d.ts +1 -1
- package/lib/routes/acs/users/users.js +33 -12
- package/lib/routes/acs/users/users.js.map +1 -1
- package/lib/routes/action-attempts/action-attempts.js +6 -3
- package/lib/routes/action-attempts/action-attempts.js.map +1 -1
- package/lib/routes/client-sessions/client-sessions.d.ts +1 -1
- package/lib/routes/client-sessions/client-sessions.js +21 -8
- package/lib/routes/client-sessions/client-sessions.js.map +1 -1
- package/lib/routes/connect-webviews/connect-webviews.js +12 -5
- package/lib/routes/connect-webviews/connect-webviews.js.map +1 -1
- package/lib/routes/connected-accounts/connected-accounts.d.ts +1 -1
- package/lib/routes/connected-accounts/connected-accounts.js +15 -6
- package/lib/routes/connected-accounts/connected-accounts.js.map +1 -1
- package/lib/routes/connected-accounts/simulate/simulate.js +3 -2
- package/lib/routes/connected-accounts/simulate/simulate.js.map +1 -1
- package/lib/routes/customers/customers.js +9 -4
- package/lib/routes/customers/customers.js.map +1 -1
- package/lib/routes/devices/devices.d.ts +1 -1
- package/lib/routes/devices/devices.js +15 -6
- package/lib/routes/devices/devices.js.map +1 -1
- package/lib/routes/devices/simulate/simulate.js +18 -7
- package/lib/routes/devices/simulate/simulate.js.map +1 -1
- package/lib/routes/devices/unmanaged/unmanaged.d.ts +1 -1
- package/lib/routes/devices/unmanaged/unmanaged.js +9 -4
- package/lib/routes/devices/unmanaged/unmanaged.js.map +1 -1
- package/lib/routes/events/events.d.ts +1 -1
- package/lib/routes/events/events.js +6 -3
- package/lib/routes/events/events.js.map +1 -1
- package/lib/routes/instant-keys/instant-keys.d.ts +1 -1
- package/lib/routes/instant-keys/instant-keys.js +9 -4
- package/lib/routes/instant-keys/instant-keys.js.map +1 -1
- package/lib/routes/locks/locks.d.ts +1 -1
- package/lib/routes/locks/locks.js +15 -6
- package/lib/routes/locks/locks.js.map +1 -1
- package/lib/routes/locks/simulate/simulate.js +6 -3
- package/lib/routes/locks/simulate/simulate.js.map +1 -1
- package/lib/routes/noise-sensors/noise-sensors.js +3 -2
- package/lib/routes/noise-sensors/noise-sensors.js.map +1 -1
- package/lib/routes/noise-sensors/noise-thresholds/noise-thresholds.js +15 -6
- package/lib/routes/noise-sensors/noise-thresholds/noise-thresholds.js.map +1 -1
- package/lib/routes/noise-sensors/simulate/simulate.js +3 -2
- package/lib/routes/noise-sensors/simulate/simulate.js.map +1 -1
- package/lib/routes/phones/phones.js +9 -4
- package/lib/routes/phones/phones.js.map +1 -1
- package/lib/routes/phones/simulate/simulate.js +3 -2
- package/lib/routes/phones/simulate/simulate.js.map +1 -1
- package/lib/routes/spaces/spaces.d.ts +1 -1
- package/lib/routes/spaces/spaces.js +36 -13
- package/lib/routes/spaces/spaces.js.map +1 -1
- package/lib/routes/thermostats/daily-programs/daily-programs.js +13 -4
- package/lib/routes/thermostats/daily-programs/daily-programs.js.map +1 -1
- package/lib/routes/thermostats/schedules/schedules.js +20 -6
- package/lib/routes/thermostats/schedules/schedules.js.map +1 -1
- package/lib/routes/thermostats/simulate/simulate.js +6 -3
- package/lib/routes/thermostats/simulate/simulate.js.map +1 -1
- package/lib/routes/thermostats/thermostats.js +42 -15
- package/lib/routes/thermostats/thermostats.js.map +1 -1
- package/lib/routes/user-identities/unmanaged/unmanaged.js +9 -4
- package/lib/routes/user-identities/unmanaged/unmanaged.js.map +1 -1
- package/lib/routes/user-identities/user-identities.d.ts +1 -1
- package/lib/routes/user-identities/user-identities.js +42 -15
- package/lib/routes/user-identities/user-identities.js.map +1 -1
- package/lib/routes/webhooks/webhooks.js +15 -6
- package/lib/routes/webhooks/webhooks.js.map +1 -1
- package/lib/routes/workspaces/workspaces.js +15 -6
- package/lib/routes/workspaces/workspaces.js.map +1 -1
- package/lib/seam-http-request.d.ts +3 -0
- package/lib/seam-http-request.js +2 -0
- package/lib/seam-http-request.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +1 -1
- package/src/lib/request-parameters.ts +12 -1
- package/src/lib/routes/access-codes/access-codes.ts +31 -44
- package/src/lib/routes/access-codes/simulate/simulate.ts +3 -7
- package/src/lib/routes/access-codes/unmanaged/unmanaged.ts +16 -34
- package/src/lib/routes/access-grants/access-grants.ts +22 -22
- package/src/lib/routes/access-grants/unmanaged/unmanaged.ts +9 -19
- package/src/lib/routes/access-methods/access-methods.ts +22 -30
- package/src/lib/routes/access-methods/unmanaged/unmanaged.ts +6 -13
- package/src/lib/routes/acs/access-groups/access-groups.ts +21 -31
- package/src/lib/routes/acs/credentials/credentials.ts +24 -21
- package/src/lib/routes/acs/encoders/encoders.ts +15 -23
- package/src/lib/routes/acs/encoders/simulate/simulate.ts +12 -25
- package/src/lib/routes/acs/entrances/entrances.ts +15 -19
- package/src/lib/routes/acs/systems/systems.ts +12 -17
- package/src/lib/routes/acs/users/users.ts +34 -42
- package/src/lib/routes/action-attempts/action-attempts.ts +6 -5
- package/src/lib/routes/client-sessions/client-sessions.ts +22 -26
- package/src/lib/routes/connect-webviews/connect-webviews.ts +12 -9
- package/src/lib/routes/connected-accounts/connected-accounts.ts +16 -14
- package/src/lib/routes/connected-accounts/simulate/simulate.ts +3 -7
- package/src/lib/routes/customers/customers.ts +9 -7
- package/src/lib/routes/devices/devices.ts +16 -22
- package/src/lib/routes/devices/simulate/simulate.ts +18 -29
- package/src/lib/routes/devices/unmanaged/unmanaged.ts +10 -10
- package/src/lib/routes/events/events.ts +7 -8
- package/src/lib/routes/instant-keys/instant-keys.ts +10 -10
- package/src/lib/routes/locks/locks.ts +16 -14
- package/src/lib/routes/locks/simulate/simulate.ts +6 -13
- package/src/lib/routes/noise-sensors/noise-sensors.ts +3 -3
- package/src/lib/routes/noise-sensors/noise-thresholds/noise-thresholds.ts +15 -31
- package/src/lib/routes/noise-sensors/simulate/simulate.ts +3 -7
- package/src/lib/routes/phones/phones.ts +9 -7
- package/src/lib/routes/phones/simulate/simulate.ts +3 -7
- package/src/lib/routes/spaces/spaces.ts +37 -40
- package/src/lib/routes/thermostats/daily-programs/daily-programs.ts +13 -19
- package/src/lib/routes/thermostats/schedules/schedules.ts +20 -27
- package/src/lib/routes/thermostats/simulate/simulate.ts +6 -13
- package/src/lib/routes/thermostats/thermostats.ts +42 -57
- package/src/lib/routes/user-identities/unmanaged/unmanaged.ts +9 -19
- package/src/lib/routes/user-identities/user-identities.ts +43 -68
- package/src/lib/routes/webhooks/webhooks.ts +15 -11
- package/src/lib/routes/workspaces/workspaces.ts +15 -11
- package/src/lib/seam-http-request.ts +11 -0
- package/src/lib/version.ts +1 -1
|
@@ -28,7 +28,6 @@ import {
|
|
|
28
28
|
limitToSeamHttpRequestOptions,
|
|
29
29
|
parseOptions,
|
|
30
30
|
} from 'lib/parse-options.js'
|
|
31
|
-
import { assertValidRequestParameters } from 'lib/request-parameters.js'
|
|
32
31
|
import type { ActionAttempt } from 'lib/resources/action-attempt.js'
|
|
33
32
|
import type { Device } from 'lib/resources/device.js'
|
|
34
33
|
import { SeamHttpActionAttempts } from 'lib/routes/action-attempts/index.js'
|
|
@@ -187,16 +186,13 @@ export class SeamHttpThermostats {
|
|
|
187
186
|
parameters: ThermostatsActivateClimatePresetParameters,
|
|
188
187
|
options: ThermostatsActivateClimatePresetOptions = {},
|
|
189
188
|
): ThermostatsActivateClimatePresetRequest {
|
|
190
|
-
assertValidRequestParameters(
|
|
191
|
-
parameters,
|
|
192
|
-
'/thermostats/activate_climate_preset',
|
|
193
|
-
true,
|
|
194
|
-
)
|
|
195
|
-
|
|
196
189
|
return new SeamHttpRequest(this, {
|
|
197
190
|
pathname: '/thermostats/activate_climate_preset',
|
|
198
191
|
method: 'POST',
|
|
199
192
|
body: parameters,
|
|
193
|
+
parameters,
|
|
194
|
+
hasRequiredParameters: true,
|
|
195
|
+
requiredParameterNames: ['climate_preset_key', 'device_id'],
|
|
200
196
|
responseKey: 'action_attempt',
|
|
201
197
|
options,
|
|
202
198
|
actionAttempts: SeamHttpActionAttempts.fromClient(this.client, {
|
|
@@ -213,12 +209,13 @@ export class SeamHttpThermostats {
|
|
|
213
209
|
parameters: ThermostatsCoolParameters,
|
|
214
210
|
options: ThermostatsCoolOptions = {},
|
|
215
211
|
): ThermostatsCoolRequest {
|
|
216
|
-
assertValidRequestParameters(parameters, '/thermostats/cool', true)
|
|
217
|
-
|
|
218
212
|
return new SeamHttpRequest(this, {
|
|
219
213
|
pathname: '/thermostats/cool',
|
|
220
214
|
method: 'POST',
|
|
221
215
|
body: parameters,
|
|
216
|
+
parameters,
|
|
217
|
+
hasRequiredParameters: true,
|
|
218
|
+
requiredParameterNames: ['device_id'],
|
|
222
219
|
responseKey: 'action_attempt',
|
|
223
220
|
options,
|
|
224
221
|
actionAttempts: SeamHttpActionAttempts.fromClient(this.client, {
|
|
@@ -235,16 +232,13 @@ export class SeamHttpThermostats {
|
|
|
235
232
|
parameters: ThermostatsCreateClimatePresetParameters,
|
|
236
233
|
options: ThermostatsCreateClimatePresetOptions = {},
|
|
237
234
|
): ThermostatsCreateClimatePresetRequest {
|
|
238
|
-
assertValidRequestParameters(
|
|
239
|
-
parameters,
|
|
240
|
-
'/thermostats/create_climate_preset',
|
|
241
|
-
true,
|
|
242
|
-
)
|
|
243
|
-
|
|
244
235
|
return new SeamHttpRequest(this, {
|
|
245
236
|
pathname: '/thermostats/create_climate_preset',
|
|
246
237
|
method: 'POST',
|
|
247
238
|
body: parameters,
|
|
239
|
+
parameters,
|
|
240
|
+
hasRequiredParameters: true,
|
|
241
|
+
requiredParameterNames: ['climate_preset_key', 'device_id'],
|
|
248
242
|
responseKey: undefined,
|
|
249
243
|
options,
|
|
250
244
|
})
|
|
@@ -257,16 +251,13 @@ export class SeamHttpThermostats {
|
|
|
257
251
|
parameters: ThermostatsDeleteClimatePresetParameters,
|
|
258
252
|
options: ThermostatsDeleteClimatePresetOptions = {},
|
|
259
253
|
): ThermostatsDeleteClimatePresetRequest {
|
|
260
|
-
assertValidRequestParameters(
|
|
261
|
-
parameters,
|
|
262
|
-
'/thermostats/delete_climate_preset',
|
|
263
|
-
true,
|
|
264
|
-
)
|
|
265
|
-
|
|
266
254
|
return new SeamHttpRequest(this, {
|
|
267
255
|
pathname: '/thermostats/delete_climate_preset',
|
|
268
256
|
method: 'DELETE',
|
|
269
257
|
params: parameters,
|
|
258
|
+
parameters,
|
|
259
|
+
hasRequiredParameters: true,
|
|
260
|
+
requiredParameterNames: ['climate_preset_key', 'device_id'],
|
|
270
261
|
responseKey: undefined,
|
|
271
262
|
options,
|
|
272
263
|
})
|
|
@@ -279,12 +270,13 @@ export class SeamHttpThermostats {
|
|
|
279
270
|
parameters: ThermostatsHeatParameters,
|
|
280
271
|
options: ThermostatsHeatOptions = {},
|
|
281
272
|
): ThermostatsHeatRequest {
|
|
282
|
-
assertValidRequestParameters(parameters, '/thermostats/heat', true)
|
|
283
|
-
|
|
284
273
|
return new SeamHttpRequest(this, {
|
|
285
274
|
pathname: '/thermostats/heat',
|
|
286
275
|
method: 'POST',
|
|
287
276
|
body: parameters,
|
|
277
|
+
parameters,
|
|
278
|
+
hasRequiredParameters: true,
|
|
279
|
+
requiredParameterNames: ['device_id'],
|
|
288
280
|
responseKey: 'action_attempt',
|
|
289
281
|
options,
|
|
290
282
|
actionAttempts: SeamHttpActionAttempts.fromClient(this.client, {
|
|
@@ -301,12 +293,13 @@ export class SeamHttpThermostats {
|
|
|
301
293
|
parameters: ThermostatsHeatCoolParameters,
|
|
302
294
|
options: ThermostatsHeatCoolOptions = {},
|
|
303
295
|
): ThermostatsHeatCoolRequest {
|
|
304
|
-
assertValidRequestParameters(parameters, '/thermostats/heat_cool', true)
|
|
305
|
-
|
|
306
296
|
return new SeamHttpRequest(this, {
|
|
307
297
|
pathname: '/thermostats/heat_cool',
|
|
308
298
|
method: 'POST',
|
|
309
299
|
body: parameters,
|
|
300
|
+
parameters,
|
|
301
|
+
hasRequiredParameters: true,
|
|
302
|
+
requiredParameterNames: ['device_id'],
|
|
310
303
|
responseKey: 'action_attempt',
|
|
311
304
|
options,
|
|
312
305
|
actionAttempts: SeamHttpActionAttempts.fromClient(this.client, {
|
|
@@ -323,12 +316,13 @@ export class SeamHttpThermostats {
|
|
|
323
316
|
parameters?: ThermostatsListParameters,
|
|
324
317
|
options: ThermostatsListOptions = {},
|
|
325
318
|
): ThermostatsListRequest {
|
|
326
|
-
assertValidRequestParameters(parameters, '/thermostats/list', false)
|
|
327
|
-
|
|
328
319
|
return new SeamHttpRequest(this, {
|
|
329
320
|
pathname: '/thermostats/list',
|
|
330
321
|
method: 'POST',
|
|
331
322
|
body: parameters,
|
|
323
|
+
parameters,
|
|
324
|
+
hasRequiredParameters: false,
|
|
325
|
+
requiredParameterNames: [],
|
|
332
326
|
responseKey: 'devices',
|
|
333
327
|
options,
|
|
334
328
|
})
|
|
@@ -341,12 +335,13 @@ export class SeamHttpThermostats {
|
|
|
341
335
|
parameters: ThermostatsOffParameters,
|
|
342
336
|
options: ThermostatsOffOptions = {},
|
|
343
337
|
): ThermostatsOffRequest {
|
|
344
|
-
assertValidRequestParameters(parameters, '/thermostats/off', true)
|
|
345
|
-
|
|
346
338
|
return new SeamHttpRequest(this, {
|
|
347
339
|
pathname: '/thermostats/off',
|
|
348
340
|
method: 'POST',
|
|
349
341
|
body: parameters,
|
|
342
|
+
parameters,
|
|
343
|
+
hasRequiredParameters: true,
|
|
344
|
+
requiredParameterNames: ['device_id'],
|
|
350
345
|
responseKey: 'action_attempt',
|
|
351
346
|
options,
|
|
352
347
|
actionAttempts: SeamHttpActionAttempts.fromClient(this.client, {
|
|
@@ -363,16 +358,13 @@ export class SeamHttpThermostats {
|
|
|
363
358
|
parameters: ThermostatsSetFallbackClimatePresetParameters,
|
|
364
359
|
options: ThermostatsSetFallbackClimatePresetOptions = {},
|
|
365
360
|
): ThermostatsSetFallbackClimatePresetRequest {
|
|
366
|
-
assertValidRequestParameters(
|
|
367
|
-
parameters,
|
|
368
|
-
'/thermostats/set_fallback_climate_preset',
|
|
369
|
-
true,
|
|
370
|
-
)
|
|
371
|
-
|
|
372
361
|
return new SeamHttpRequest(this, {
|
|
373
362
|
pathname: '/thermostats/set_fallback_climate_preset',
|
|
374
363
|
method: 'POST',
|
|
375
364
|
body: parameters,
|
|
365
|
+
parameters,
|
|
366
|
+
hasRequiredParameters: true,
|
|
367
|
+
requiredParameterNames: ['climate_preset_key', 'device_id'],
|
|
376
368
|
responseKey: undefined,
|
|
377
369
|
options,
|
|
378
370
|
})
|
|
@@ -385,12 +377,13 @@ export class SeamHttpThermostats {
|
|
|
385
377
|
parameters: ThermostatsSetFanModeParameters,
|
|
386
378
|
options: ThermostatsSetFanModeOptions = {},
|
|
387
379
|
): ThermostatsSetFanModeRequest {
|
|
388
|
-
assertValidRequestParameters(parameters, '/thermostats/set_fan_mode', true)
|
|
389
|
-
|
|
390
380
|
return new SeamHttpRequest(this, {
|
|
391
381
|
pathname: '/thermostats/set_fan_mode',
|
|
392
382
|
method: 'POST',
|
|
393
383
|
body: parameters,
|
|
384
|
+
parameters,
|
|
385
|
+
hasRequiredParameters: true,
|
|
386
|
+
requiredParameterNames: ['device_id'],
|
|
394
387
|
responseKey: 'action_attempt',
|
|
395
388
|
options,
|
|
396
389
|
actionAttempts: SeamHttpActionAttempts.fromClient(this.client, {
|
|
@@ -407,12 +400,13 @@ export class SeamHttpThermostats {
|
|
|
407
400
|
parameters: ThermostatsSetHvacModeParameters,
|
|
408
401
|
options: ThermostatsSetHvacModeOptions = {},
|
|
409
402
|
): ThermostatsSetHvacModeRequest {
|
|
410
|
-
assertValidRequestParameters(parameters, '/thermostats/set_hvac_mode', true)
|
|
411
|
-
|
|
412
403
|
return new SeamHttpRequest(this, {
|
|
413
404
|
pathname: '/thermostats/set_hvac_mode',
|
|
414
405
|
method: 'POST',
|
|
415
406
|
body: parameters,
|
|
407
|
+
parameters,
|
|
408
|
+
hasRequiredParameters: true,
|
|
409
|
+
requiredParameterNames: ['device_id', 'hvac_mode_setting'],
|
|
416
410
|
responseKey: 'action_attempt',
|
|
417
411
|
options,
|
|
418
412
|
actionAttempts: SeamHttpActionAttempts.fromClient(this.client, {
|
|
@@ -429,16 +423,13 @@ export class SeamHttpThermostats {
|
|
|
429
423
|
parameters: ThermostatsSetTemperatureThresholdParameters,
|
|
430
424
|
options: ThermostatsSetTemperatureThresholdOptions = {},
|
|
431
425
|
): ThermostatsSetTemperatureThresholdRequest {
|
|
432
|
-
assertValidRequestParameters(
|
|
433
|
-
parameters,
|
|
434
|
-
'/thermostats/set_temperature_threshold',
|
|
435
|
-
true,
|
|
436
|
-
)
|
|
437
|
-
|
|
438
426
|
return new SeamHttpRequest(this, {
|
|
439
427
|
pathname: '/thermostats/set_temperature_threshold',
|
|
440
428
|
method: 'PATCH',
|
|
441
429
|
body: parameters,
|
|
430
|
+
parameters,
|
|
431
|
+
hasRequiredParameters: true,
|
|
432
|
+
requiredParameterNames: ['device_id'],
|
|
442
433
|
responseKey: undefined,
|
|
443
434
|
options,
|
|
444
435
|
})
|
|
@@ -451,16 +442,13 @@ export class SeamHttpThermostats {
|
|
|
451
442
|
parameters: ThermostatsUpdateClimatePresetParameters,
|
|
452
443
|
options: ThermostatsUpdateClimatePresetOptions = {},
|
|
453
444
|
): ThermostatsUpdateClimatePresetRequest {
|
|
454
|
-
assertValidRequestParameters(
|
|
455
|
-
parameters,
|
|
456
|
-
'/thermostats/update_climate_preset',
|
|
457
|
-
true,
|
|
458
|
-
)
|
|
459
|
-
|
|
460
445
|
return new SeamHttpRequest(this, {
|
|
461
446
|
pathname: '/thermostats/update_climate_preset',
|
|
462
447
|
method: 'PATCH',
|
|
463
448
|
body: parameters,
|
|
449
|
+
parameters,
|
|
450
|
+
hasRequiredParameters: true,
|
|
451
|
+
requiredParameterNames: ['climate_preset_key', 'device_id'],
|
|
464
452
|
responseKey: undefined,
|
|
465
453
|
options,
|
|
466
454
|
})
|
|
@@ -473,16 +461,13 @@ export class SeamHttpThermostats {
|
|
|
473
461
|
parameters: ThermostatsUpdateWeeklyProgramParameters,
|
|
474
462
|
options: ThermostatsUpdateWeeklyProgramOptions = {},
|
|
475
463
|
): ThermostatsUpdateWeeklyProgramRequest {
|
|
476
|
-
assertValidRequestParameters(
|
|
477
|
-
parameters,
|
|
478
|
-
'/thermostats/update_weekly_program',
|
|
479
|
-
true,
|
|
480
|
-
)
|
|
481
|
-
|
|
482
464
|
return new SeamHttpRequest(this, {
|
|
483
465
|
pathname: '/thermostats/update_weekly_program',
|
|
484
466
|
method: 'POST',
|
|
485
467
|
body: parameters,
|
|
468
|
+
parameters,
|
|
469
|
+
hasRequiredParameters: true,
|
|
470
|
+
requiredParameterNames: ['device_id'],
|
|
486
471
|
responseKey: 'action_attempt',
|
|
487
472
|
options,
|
|
488
473
|
actionAttempts: SeamHttpActionAttempts.fromClient(this.client, {
|
|
@@ -28,7 +28,6 @@ import {
|
|
|
28
28
|
limitToSeamHttpRequestOptions,
|
|
29
29
|
parseOptions,
|
|
30
30
|
} from 'lib/parse-options.js'
|
|
31
|
-
import { assertValidRequestParameters } from 'lib/request-parameters.js'
|
|
32
31
|
import type { UnmanagedUserIdentity } from 'lib/resources/unmanaged-user-identity.js'
|
|
33
32
|
import { SeamHttpClientSessions } from 'lib/routes/client-sessions/index.js'
|
|
34
33
|
import { SeamHttpRequest } from 'lib/seam-http-request.js'
|
|
@@ -169,16 +168,13 @@ export class SeamHttpUserIdentitiesUnmanaged {
|
|
|
169
168
|
parameters: UserIdentitiesUnmanagedGetParameters,
|
|
170
169
|
options: UserIdentitiesUnmanagedGetOptions = {},
|
|
171
170
|
): UserIdentitiesUnmanagedGetRequest {
|
|
172
|
-
assertValidRequestParameters(
|
|
173
|
-
parameters,
|
|
174
|
-
'/user_identities/unmanaged/get',
|
|
175
|
-
true,
|
|
176
|
-
)
|
|
177
|
-
|
|
178
171
|
return new SeamHttpRequest(this, {
|
|
179
172
|
pathname: '/user_identities/unmanaged/get',
|
|
180
173
|
method: 'GET',
|
|
181
174
|
params: parameters,
|
|
175
|
+
parameters,
|
|
176
|
+
hasRequiredParameters: true,
|
|
177
|
+
requiredParameterNames: ['user_identity_id'],
|
|
182
178
|
responseKey: 'user_identity',
|
|
183
179
|
options,
|
|
184
180
|
})
|
|
@@ -191,16 +187,13 @@ export class SeamHttpUserIdentitiesUnmanaged {
|
|
|
191
187
|
parameters?: UserIdentitiesUnmanagedListParameters,
|
|
192
188
|
options: UserIdentitiesUnmanagedListOptions = {},
|
|
193
189
|
): UserIdentitiesUnmanagedListRequest {
|
|
194
|
-
assertValidRequestParameters(
|
|
195
|
-
parameters,
|
|
196
|
-
'/user_identities/unmanaged/list',
|
|
197
|
-
false,
|
|
198
|
-
)
|
|
199
|
-
|
|
200
190
|
return new SeamHttpRequest(this, {
|
|
201
191
|
pathname: '/user_identities/unmanaged/list',
|
|
202
192
|
method: 'GET',
|
|
203
193
|
params: parameters,
|
|
194
|
+
parameters,
|
|
195
|
+
hasRequiredParameters: false,
|
|
196
|
+
requiredParameterNames: [],
|
|
204
197
|
responseKey: 'user_identities',
|
|
205
198
|
options,
|
|
206
199
|
})
|
|
@@ -215,16 +208,13 @@ export class SeamHttpUserIdentitiesUnmanaged {
|
|
|
215
208
|
parameters: UserIdentitiesUnmanagedUpdateParameters,
|
|
216
209
|
options: UserIdentitiesUnmanagedUpdateOptions = {},
|
|
217
210
|
): UserIdentitiesUnmanagedUpdateRequest {
|
|
218
|
-
assertValidRequestParameters(
|
|
219
|
-
parameters,
|
|
220
|
-
'/user_identities/unmanaged/update',
|
|
221
|
-
true,
|
|
222
|
-
)
|
|
223
|
-
|
|
224
211
|
return new SeamHttpRequest(this, {
|
|
225
212
|
pathname: '/user_identities/unmanaged/update',
|
|
226
213
|
method: 'PATCH',
|
|
227
214
|
body: parameters,
|
|
215
|
+
parameters,
|
|
216
|
+
hasRequiredParameters: true,
|
|
217
|
+
requiredParameterNames: ['is_managed', 'user_identity_id'],
|
|
228
218
|
responseKey: undefined,
|
|
229
219
|
options,
|
|
230
220
|
})
|
|
@@ -28,10 +28,7 @@ import {
|
|
|
28
28
|
limitToSeamHttpRequestOptions,
|
|
29
29
|
parseOptions,
|
|
30
30
|
} from 'lib/parse-options.js'
|
|
31
|
-
import {
|
|
32
|
-
assertValidRequestParameters,
|
|
33
|
-
type RequireAtLeastOne,
|
|
34
|
-
} from 'lib/request-parameters.js'
|
|
31
|
+
import type { RequireAtLeastOne } from 'lib/request-parameters.js'
|
|
35
32
|
import type { AcsEntrance } from 'lib/resources/acs-entrance.js'
|
|
36
33
|
import type { AcsSystem } from 'lib/resources/acs-system.js'
|
|
37
34
|
import type { AcsUser } from 'lib/resources/acs-user.js'
|
|
@@ -187,16 +184,13 @@ export class SeamHttpUserIdentities {
|
|
|
187
184
|
parameters: UserIdentitiesAddAcsUserParameters,
|
|
188
185
|
options: UserIdentitiesAddAcsUserOptions = {},
|
|
189
186
|
): UserIdentitiesAddAcsUserRequest {
|
|
190
|
-
assertValidRequestParameters(
|
|
191
|
-
parameters,
|
|
192
|
-
'/user_identities/add_acs_user',
|
|
193
|
-
true,
|
|
194
|
-
)
|
|
195
|
-
|
|
196
187
|
return new SeamHttpRequest(this, {
|
|
197
188
|
pathname: '/user_identities/add_acs_user',
|
|
198
189
|
method: 'PUT',
|
|
199
190
|
body: parameters,
|
|
191
|
+
parameters,
|
|
192
|
+
hasRequiredParameters: true,
|
|
193
|
+
requiredParameterNames: ['acs_user_id'],
|
|
200
194
|
responseKey: undefined,
|
|
201
195
|
options,
|
|
202
196
|
})
|
|
@@ -209,12 +203,13 @@ export class SeamHttpUserIdentities {
|
|
|
209
203
|
parameters?: UserIdentitiesCreateParameters,
|
|
210
204
|
options: UserIdentitiesCreateOptions = {},
|
|
211
205
|
): UserIdentitiesCreateRequest {
|
|
212
|
-
assertValidRequestParameters(parameters, '/user_identities/create', false)
|
|
213
|
-
|
|
214
206
|
return new SeamHttpRequest(this, {
|
|
215
207
|
pathname: '/user_identities/create',
|
|
216
208
|
method: 'POST',
|
|
217
209
|
body: parameters,
|
|
210
|
+
parameters,
|
|
211
|
+
hasRequiredParameters: false,
|
|
212
|
+
requiredParameterNames: [],
|
|
218
213
|
responseKey: 'user_identity',
|
|
219
214
|
options,
|
|
220
215
|
})
|
|
@@ -227,12 +222,13 @@ export class SeamHttpUserIdentities {
|
|
|
227
222
|
parameters: UserIdentitiesDeleteParameters,
|
|
228
223
|
options: UserIdentitiesDeleteOptions = {},
|
|
229
224
|
): UserIdentitiesDeleteRequest {
|
|
230
|
-
assertValidRequestParameters(parameters, '/user_identities/delete', true)
|
|
231
|
-
|
|
232
225
|
return new SeamHttpRequest(this, {
|
|
233
226
|
pathname: '/user_identities/delete',
|
|
234
227
|
method: 'DELETE',
|
|
235
228
|
params: parameters,
|
|
229
|
+
parameters,
|
|
230
|
+
hasRequiredParameters: true,
|
|
231
|
+
requiredParameterNames: ['user_identity_id'],
|
|
236
232
|
responseKey: undefined,
|
|
237
233
|
options,
|
|
238
234
|
})
|
|
@@ -245,16 +241,13 @@ export class SeamHttpUserIdentities {
|
|
|
245
241
|
parameters: UserIdentitiesGenerateInstantKeyParameters,
|
|
246
242
|
options: UserIdentitiesGenerateInstantKeyOptions = {},
|
|
247
243
|
): UserIdentitiesGenerateInstantKeyRequest {
|
|
248
|
-
assertValidRequestParameters(
|
|
249
|
-
parameters,
|
|
250
|
-
'/user_identities/generate_instant_key',
|
|
251
|
-
true,
|
|
252
|
-
)
|
|
253
|
-
|
|
254
244
|
return new SeamHttpRequest(this, {
|
|
255
245
|
pathname: '/user_identities/generate_instant_key',
|
|
256
246
|
method: 'POST',
|
|
257
247
|
body: parameters,
|
|
248
|
+
parameters,
|
|
249
|
+
hasRequiredParameters: true,
|
|
250
|
+
requiredParameterNames: ['user_identity_id'],
|
|
258
251
|
responseKey: 'instant_key',
|
|
259
252
|
options,
|
|
260
253
|
})
|
|
@@ -267,12 +260,13 @@ export class SeamHttpUserIdentities {
|
|
|
267
260
|
parameters: UserIdentitiesGetParameters,
|
|
268
261
|
options: UserIdentitiesGetOptions = {},
|
|
269
262
|
): UserIdentitiesGetRequest {
|
|
270
|
-
assertValidRequestParameters(parameters, '/user_identities/get', true)
|
|
271
|
-
|
|
272
263
|
return new SeamHttpRequest(this, {
|
|
273
264
|
pathname: '/user_identities/get',
|
|
274
265
|
method: 'GET',
|
|
275
266
|
params: parameters,
|
|
267
|
+
parameters,
|
|
268
|
+
hasRequiredParameters: true,
|
|
269
|
+
requiredParameterNames: [],
|
|
276
270
|
responseKey: 'user_identity',
|
|
277
271
|
options,
|
|
278
272
|
})
|
|
@@ -285,16 +279,13 @@ export class SeamHttpUserIdentities {
|
|
|
285
279
|
parameters: UserIdentitiesGrantAccessToDeviceParameters,
|
|
286
280
|
options: UserIdentitiesGrantAccessToDeviceOptions = {},
|
|
287
281
|
): UserIdentitiesGrantAccessToDeviceRequest {
|
|
288
|
-
assertValidRequestParameters(
|
|
289
|
-
parameters,
|
|
290
|
-
'/user_identities/grant_access_to_device',
|
|
291
|
-
true,
|
|
292
|
-
)
|
|
293
|
-
|
|
294
282
|
return new SeamHttpRequest(this, {
|
|
295
283
|
pathname: '/user_identities/grant_access_to_device',
|
|
296
284
|
method: 'PUT',
|
|
297
285
|
body: parameters,
|
|
286
|
+
parameters,
|
|
287
|
+
hasRequiredParameters: true,
|
|
288
|
+
requiredParameterNames: ['device_id', 'user_identity_id'],
|
|
298
289
|
responseKey: undefined,
|
|
299
290
|
options,
|
|
300
291
|
})
|
|
@@ -307,12 +298,13 @@ export class SeamHttpUserIdentities {
|
|
|
307
298
|
parameters?: UserIdentitiesListParameters,
|
|
308
299
|
options: UserIdentitiesListOptions = {},
|
|
309
300
|
): UserIdentitiesListRequest {
|
|
310
|
-
assertValidRequestParameters(parameters, '/user_identities/list', false)
|
|
311
|
-
|
|
312
301
|
return new SeamHttpRequest(this, {
|
|
313
302
|
pathname: '/user_identities/list',
|
|
314
303
|
method: 'POST',
|
|
315
304
|
body: parameters,
|
|
305
|
+
parameters,
|
|
306
|
+
hasRequiredParameters: false,
|
|
307
|
+
requiredParameterNames: [],
|
|
316
308
|
responseKey: 'user_identities',
|
|
317
309
|
options,
|
|
318
310
|
})
|
|
@@ -325,16 +317,13 @@ export class SeamHttpUserIdentities {
|
|
|
325
317
|
parameters: UserIdentitiesListAccessibleDevicesParameters,
|
|
326
318
|
options: UserIdentitiesListAccessibleDevicesOptions = {},
|
|
327
319
|
): UserIdentitiesListAccessibleDevicesRequest {
|
|
328
|
-
assertValidRequestParameters(
|
|
329
|
-
parameters,
|
|
330
|
-
'/user_identities/list_accessible_devices',
|
|
331
|
-
true,
|
|
332
|
-
)
|
|
333
|
-
|
|
334
320
|
return new SeamHttpRequest(this, {
|
|
335
321
|
pathname: '/user_identities/list_accessible_devices',
|
|
336
322
|
method: 'GET',
|
|
337
323
|
params: parameters,
|
|
324
|
+
parameters,
|
|
325
|
+
hasRequiredParameters: true,
|
|
326
|
+
requiredParameterNames: ['user_identity_id'],
|
|
338
327
|
responseKey: 'devices',
|
|
339
328
|
options,
|
|
340
329
|
})
|
|
@@ -347,16 +336,13 @@ export class SeamHttpUserIdentities {
|
|
|
347
336
|
parameters: UserIdentitiesListAccessibleEntrancesParameters,
|
|
348
337
|
options: UserIdentitiesListAccessibleEntrancesOptions = {},
|
|
349
338
|
): UserIdentitiesListAccessibleEntrancesRequest {
|
|
350
|
-
assertValidRequestParameters(
|
|
351
|
-
parameters,
|
|
352
|
-
'/user_identities/list_accessible_entrances',
|
|
353
|
-
true,
|
|
354
|
-
)
|
|
355
|
-
|
|
356
339
|
return new SeamHttpRequest(this, {
|
|
357
340
|
pathname: '/user_identities/list_accessible_entrances',
|
|
358
341
|
method: 'GET',
|
|
359
342
|
params: parameters,
|
|
343
|
+
parameters,
|
|
344
|
+
hasRequiredParameters: true,
|
|
345
|
+
requiredParameterNames: ['user_identity_id'],
|
|
360
346
|
responseKey: 'acs_entrances',
|
|
361
347
|
options,
|
|
362
348
|
})
|
|
@@ -369,16 +355,13 @@ export class SeamHttpUserIdentities {
|
|
|
369
355
|
parameters: UserIdentitiesListAcsSystemsParameters,
|
|
370
356
|
options: UserIdentitiesListAcsSystemsOptions = {},
|
|
371
357
|
): UserIdentitiesListAcsSystemsRequest {
|
|
372
|
-
assertValidRequestParameters(
|
|
373
|
-
parameters,
|
|
374
|
-
'/user_identities/list_acs_systems',
|
|
375
|
-
true,
|
|
376
|
-
)
|
|
377
|
-
|
|
378
358
|
return new SeamHttpRequest(this, {
|
|
379
359
|
pathname: '/user_identities/list_acs_systems',
|
|
380
360
|
method: 'GET',
|
|
381
361
|
params: parameters,
|
|
362
|
+
parameters,
|
|
363
|
+
hasRequiredParameters: true,
|
|
364
|
+
requiredParameterNames: ['user_identity_id'],
|
|
382
365
|
responseKey: 'acs_systems',
|
|
383
366
|
options,
|
|
384
367
|
})
|
|
@@ -391,16 +374,13 @@ export class SeamHttpUserIdentities {
|
|
|
391
374
|
parameters: UserIdentitiesListAcsUsersParameters,
|
|
392
375
|
options: UserIdentitiesListAcsUsersOptions = {},
|
|
393
376
|
): UserIdentitiesListAcsUsersRequest {
|
|
394
|
-
assertValidRequestParameters(
|
|
395
|
-
parameters,
|
|
396
|
-
'/user_identities/list_acs_users',
|
|
397
|
-
true,
|
|
398
|
-
)
|
|
399
|
-
|
|
400
377
|
return new SeamHttpRequest(this, {
|
|
401
378
|
pathname: '/user_identities/list_acs_users',
|
|
402
379
|
method: 'GET',
|
|
403
380
|
params: parameters,
|
|
381
|
+
parameters,
|
|
382
|
+
hasRequiredParameters: true,
|
|
383
|
+
requiredParameterNames: ['user_identity_id'],
|
|
404
384
|
responseKey: 'acs_users',
|
|
405
385
|
options,
|
|
406
386
|
})
|
|
@@ -413,16 +393,13 @@ export class SeamHttpUserIdentities {
|
|
|
413
393
|
parameters: UserIdentitiesRemoveAcsUserParameters,
|
|
414
394
|
options: UserIdentitiesRemoveAcsUserOptions = {},
|
|
415
395
|
): UserIdentitiesRemoveAcsUserRequest {
|
|
416
|
-
assertValidRequestParameters(
|
|
417
|
-
parameters,
|
|
418
|
-
'/user_identities/remove_acs_user',
|
|
419
|
-
true,
|
|
420
|
-
)
|
|
421
|
-
|
|
422
396
|
return new SeamHttpRequest(this, {
|
|
423
397
|
pathname: '/user_identities/remove_acs_user',
|
|
424
398
|
method: 'DELETE',
|
|
425
399
|
params: parameters,
|
|
400
|
+
parameters,
|
|
401
|
+
hasRequiredParameters: true,
|
|
402
|
+
requiredParameterNames: ['acs_user_id', 'user_identity_id'],
|
|
426
403
|
responseKey: undefined,
|
|
427
404
|
options,
|
|
428
405
|
})
|
|
@@ -435,16 +412,13 @@ export class SeamHttpUserIdentities {
|
|
|
435
412
|
parameters: UserIdentitiesRevokeAccessToDeviceParameters,
|
|
436
413
|
options: UserIdentitiesRevokeAccessToDeviceOptions = {},
|
|
437
414
|
): UserIdentitiesRevokeAccessToDeviceRequest {
|
|
438
|
-
assertValidRequestParameters(
|
|
439
|
-
parameters,
|
|
440
|
-
'/user_identities/revoke_access_to_device',
|
|
441
|
-
true,
|
|
442
|
-
)
|
|
443
|
-
|
|
444
415
|
return new SeamHttpRequest(this, {
|
|
445
416
|
pathname: '/user_identities/revoke_access_to_device',
|
|
446
417
|
method: 'DELETE',
|
|
447
418
|
params: parameters,
|
|
419
|
+
parameters,
|
|
420
|
+
hasRequiredParameters: true,
|
|
421
|
+
requiredParameterNames: ['device_id', 'user_identity_id'],
|
|
448
422
|
responseKey: undefined,
|
|
449
423
|
options,
|
|
450
424
|
})
|
|
@@ -457,12 +431,13 @@ export class SeamHttpUserIdentities {
|
|
|
457
431
|
parameters: UserIdentitiesUpdateParameters,
|
|
458
432
|
options: UserIdentitiesUpdateOptions = {},
|
|
459
433
|
): UserIdentitiesUpdateRequest {
|
|
460
|
-
assertValidRequestParameters(parameters, '/user_identities/update', true)
|
|
461
|
-
|
|
462
434
|
return new SeamHttpRequest(this, {
|
|
463
435
|
pathname: '/user_identities/update',
|
|
464
436
|
method: 'PATCH',
|
|
465
437
|
body: parameters,
|
|
438
|
+
parameters,
|
|
439
|
+
hasRequiredParameters: true,
|
|
440
|
+
requiredParameterNames: ['user_identity_id'],
|
|
466
441
|
responseKey: undefined,
|
|
467
442
|
options,
|
|
468
443
|
})
|
|
@@ -28,7 +28,6 @@ import {
|
|
|
28
28
|
limitToSeamHttpRequestOptions,
|
|
29
29
|
parseOptions,
|
|
30
30
|
} from 'lib/parse-options.js'
|
|
31
|
-
import { assertValidRequestParameters } from 'lib/request-parameters.js'
|
|
32
31
|
import type { Webhook } from 'lib/resources/webhook.js'
|
|
33
32
|
import { SeamHttpClientSessions } from 'lib/routes/client-sessions/index.js'
|
|
34
33
|
import { SeamHttpRequest } from 'lib/seam-http-request.js'
|
|
@@ -166,12 +165,13 @@ export class SeamHttpWebhooks {
|
|
|
166
165
|
parameters: WebhooksCreateParameters,
|
|
167
166
|
options: WebhooksCreateOptions = {},
|
|
168
167
|
): WebhooksCreateRequest {
|
|
169
|
-
assertValidRequestParameters(parameters, '/webhooks/create', true)
|
|
170
|
-
|
|
171
168
|
return new SeamHttpRequest(this, {
|
|
172
169
|
pathname: '/webhooks/create',
|
|
173
170
|
method: 'POST',
|
|
174
171
|
body: parameters,
|
|
172
|
+
parameters,
|
|
173
|
+
hasRequiredParameters: true,
|
|
174
|
+
requiredParameterNames: ['url'],
|
|
175
175
|
responseKey: 'webhook',
|
|
176
176
|
options,
|
|
177
177
|
})
|
|
@@ -184,12 +184,13 @@ export class SeamHttpWebhooks {
|
|
|
184
184
|
parameters: WebhooksDeleteParameters,
|
|
185
185
|
options: WebhooksDeleteOptions = {},
|
|
186
186
|
): WebhooksDeleteRequest {
|
|
187
|
-
assertValidRequestParameters(parameters, '/webhooks/delete', true)
|
|
188
|
-
|
|
189
187
|
return new SeamHttpRequest(this, {
|
|
190
188
|
pathname: '/webhooks/delete',
|
|
191
189
|
method: 'DELETE',
|
|
192
190
|
params: parameters,
|
|
191
|
+
parameters,
|
|
192
|
+
hasRequiredParameters: true,
|
|
193
|
+
requiredParameterNames: ['webhook_id'],
|
|
193
194
|
responseKey: undefined,
|
|
194
195
|
options,
|
|
195
196
|
})
|
|
@@ -202,12 +203,13 @@ export class SeamHttpWebhooks {
|
|
|
202
203
|
parameters: WebhooksGetParameters,
|
|
203
204
|
options: WebhooksGetOptions = {},
|
|
204
205
|
): WebhooksGetRequest {
|
|
205
|
-
assertValidRequestParameters(parameters, '/webhooks/get', true)
|
|
206
|
-
|
|
207
206
|
return new SeamHttpRequest(this, {
|
|
208
207
|
pathname: '/webhooks/get',
|
|
209
208
|
method: 'GET',
|
|
210
209
|
params: parameters,
|
|
210
|
+
parameters,
|
|
211
|
+
hasRequiredParameters: true,
|
|
212
|
+
requiredParameterNames: ['webhook_id'],
|
|
211
213
|
responseKey: 'webhook',
|
|
212
214
|
options,
|
|
213
215
|
})
|
|
@@ -220,12 +222,13 @@ export class SeamHttpWebhooks {
|
|
|
220
222
|
parameters?: WebhooksListParameters,
|
|
221
223
|
options: WebhooksListOptions = {},
|
|
222
224
|
): WebhooksListRequest {
|
|
223
|
-
assertValidRequestParameters(parameters, '/webhooks/list', false)
|
|
224
|
-
|
|
225
225
|
return new SeamHttpRequest(this, {
|
|
226
226
|
pathname: '/webhooks/list',
|
|
227
227
|
method: 'GET',
|
|
228
228
|
params: parameters,
|
|
229
|
+
parameters,
|
|
230
|
+
hasRequiredParameters: false,
|
|
231
|
+
requiredParameterNames: [],
|
|
229
232
|
responseKey: 'webhooks',
|
|
230
233
|
options,
|
|
231
234
|
})
|
|
@@ -238,12 +241,13 @@ export class SeamHttpWebhooks {
|
|
|
238
241
|
parameters: WebhooksUpdateParameters,
|
|
239
242
|
options: WebhooksUpdateOptions = {},
|
|
240
243
|
): WebhooksUpdateRequest {
|
|
241
|
-
assertValidRequestParameters(parameters, '/webhooks/update', true)
|
|
242
|
-
|
|
243
244
|
return new SeamHttpRequest(this, {
|
|
244
245
|
pathname: '/webhooks/update',
|
|
245
246
|
method: 'PUT',
|
|
246
247
|
body: parameters,
|
|
248
|
+
parameters,
|
|
249
|
+
hasRequiredParameters: true,
|
|
250
|
+
requiredParameterNames: ['event_types', 'webhook_id'],
|
|
247
251
|
responseKey: undefined,
|
|
248
252
|
options,
|
|
249
253
|
})
|