@seamapi/http 0.10.0 → 0.10.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/dist/connect.cjs +40 -20
- package/dist/connect.cjs.map +1 -1
- package/dist/connect.d.cts +9 -1
- package/lib/params-serializer.js +12 -14
- package/lib/params-serializer.js.map +1 -1
- package/lib/seam/connect/auth.js.map +1 -1
- package/lib/seam/connect/client.js +0 -2
- package/lib/seam/connect/client.js.map +1 -1
- package/lib/seam/connect/error-interceptor.js +11 -3
- package/lib/seam/connect/error-interceptor.js.map +1 -1
- package/lib/seam/connect/options.js.map +1 -1
- package/lib/seam/connect/parse-options.js.map +1 -1
- package/lib/seam/connect/resolve-action-attempt.js.map +1 -1
- package/lib/seam/connect/routes/access-codes-unmanaged.js.map +1 -1
- package/lib/seam/connect/routes/access-codes.js.map +1 -1
- package/lib/seam/connect/routes/acs-access-groups.js.map +1 -1
- package/lib/seam/connect/routes/acs-credential-pools.js.map +1 -1
- package/lib/seam/connect/routes/acs-credential-provisioning-automations.js.map +1 -1
- package/lib/seam/connect/routes/acs-credentials.js.map +1 -1
- package/lib/seam/connect/routes/acs-entrances.d.ts +4 -0
- package/lib/seam/connect/routes/acs-entrances.js +7 -0
- package/lib/seam/connect/routes/acs-entrances.js.map +1 -1
- package/lib/seam/connect/routes/acs-systems.js.map +1 -1
- package/lib/seam/connect/routes/acs-users.js.map +1 -1
- package/lib/seam/connect/routes/acs.js.map +1 -1
- package/lib/seam/connect/routes/action-attempts.js.map +1 -1
- package/lib/seam/connect/routes/client-sessions.js.map +1 -1
- package/lib/seam/connect/routes/connect-webviews.js.map +1 -1
- package/lib/seam/connect/routes/connected-accounts.d.ts +4 -0
- package/lib/seam/connect/routes/connected-accounts.js +8 -0
- package/lib/seam/connect/routes/connected-accounts.js.map +1 -1
- package/lib/seam/connect/routes/devices-unmanaged.js.map +1 -1
- package/lib/seam/connect/routes/devices.js.map +1 -1
- package/lib/seam/connect/routes/events.js.map +1 -1
- package/lib/seam/connect/routes/locks.js.map +1 -1
- package/lib/seam/connect/routes/noise-sensors-noise-thresholds.js.map +1 -1
- package/lib/seam/connect/routes/noise-sensors.js.map +1 -1
- package/lib/seam/connect/routes/thermostats-climate-setting-schedules.js.map +1 -1
- package/lib/seam/connect/routes/thermostats.js.map +1 -1
- package/lib/seam/connect/routes/user-identities.js.map +1 -1
- package/lib/seam/connect/routes/webhooks.js.map +1 -1
- package/lib/seam/connect/routes/workspaces.js.map +1 -1
- package/lib/seam/connect/seam-http-multi-workspace.js.map +1 -1
- package/lib/seam/connect/seam-http.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +10 -10
- package/src/lib/params-serializer.ts +8 -19
- package/src/lib/seam/connect/client.ts +0 -2
- package/src/lib/seam/connect/error-interceptor.ts +11 -3
- package/src/lib/seam/connect/routes/acs-entrances.ts +17 -0
- package/src/lib/seam/connect/routes/connected-accounts.ts +23 -0
- package/src/lib/version.ts +1 -1
package/dist/connect.cjs
CHANGED
|
@@ -476,8 +476,7 @@ var errorInterceptor = async (err) => {
|
|
|
476
476
|
throw err;
|
|
477
477
|
const { response } = err;
|
|
478
478
|
const status = response?.status;
|
|
479
|
-
const
|
|
480
|
-
const requestId = headers?.["seam-request-id"] ?? "";
|
|
479
|
+
const requestId = getRequestId(err);
|
|
481
480
|
if (status == null)
|
|
482
481
|
throw err;
|
|
483
482
|
if (status === 401) {
|
|
@@ -497,7 +496,7 @@ var isApiErrorResponse = (response) => {
|
|
|
497
496
|
const { headers, data } = response;
|
|
498
497
|
if (headers == null)
|
|
499
498
|
return false;
|
|
500
|
-
const contentType = headers["
|
|
499
|
+
const contentType = headers["Content-Type"];
|
|
501
500
|
if (typeof contentType === "string" && !contentType.startsWith("application/json")) {
|
|
502
501
|
return false;
|
|
503
502
|
}
|
|
@@ -506,6 +505,15 @@ var isApiErrorResponse = (response) => {
|
|
|
506
505
|
}
|
|
507
506
|
return false;
|
|
508
507
|
};
|
|
508
|
+
var getRequestId = (err) => {
|
|
509
|
+
const headers = err.response?.headers;
|
|
510
|
+
if (headers == null)
|
|
511
|
+
return "";
|
|
512
|
+
const requestId = headers["seam-request-id"];
|
|
513
|
+
if (requestId == null)
|
|
514
|
+
return "";
|
|
515
|
+
return requestId;
|
|
516
|
+
};
|
|
509
517
|
|
|
510
518
|
// src/lib/seam/connect/resolve-action-attempt.ts
|
|
511
519
|
var resolveActionAttempt = async (actionAttempt, actionAttempts, { timeout = 5e3, pollingInterval = 500 }) => {
|
|
@@ -598,30 +606,25 @@ var paramsSerializer = (params) => {
|
|
|
598
606
|
);
|
|
599
607
|
}
|
|
600
608
|
for (const v of value) {
|
|
601
|
-
|
|
602
|
-
searchParams.append(name, v);
|
|
609
|
+
searchParams.append(name, serialize(name, v));
|
|
603
610
|
}
|
|
604
611
|
continue;
|
|
605
612
|
}
|
|
606
|
-
|
|
607
|
-
searchParams.set(name, value);
|
|
613
|
+
searchParams.set(name, serialize(name, value));
|
|
608
614
|
}
|
|
609
615
|
searchParams.sort();
|
|
610
616
|
return searchParams.toString();
|
|
611
617
|
};
|
|
612
|
-
var
|
|
613
|
-
if (v
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
);
|
|
621
|
-
}
|
|
622
|
-
if (typeof v === "object") {
|
|
623
|
-
throw new UnserializableParamError(k, "is an object or contains an object");
|
|
624
|
-
}
|
|
618
|
+
var serialize = (k, v) => {
|
|
619
|
+
if (typeof v === "string")
|
|
620
|
+
return v.toString();
|
|
621
|
+
if (typeof v === "number")
|
|
622
|
+
return v.toString();
|
|
623
|
+
if (typeof v === "bigint")
|
|
624
|
+
return v.toString();
|
|
625
|
+
if (typeof v === "boolean")
|
|
626
|
+
return v.toString();
|
|
627
|
+
throw new UnserializableParamError(k, `is a ${typeof v}`);
|
|
625
628
|
};
|
|
626
629
|
var UnserializableParamError = class extends Error {
|
|
627
630
|
constructor(name, message) {
|
|
@@ -1431,6 +1434,13 @@ var SeamHttpAcsEntrances = class _SeamHttpAcsEntrances {
|
|
|
1431
1434
|
});
|
|
1432
1435
|
return data.acs_entrance;
|
|
1433
1436
|
}
|
|
1437
|
+
async grantAccess(body) {
|
|
1438
|
+
await this.client.request({
|
|
1439
|
+
url: "/acs/entrances/grant_access",
|
|
1440
|
+
method: "post",
|
|
1441
|
+
data: body
|
|
1442
|
+
});
|
|
1443
|
+
}
|
|
1434
1444
|
async list(body) {
|
|
1435
1445
|
const { data } = await this.client.request({
|
|
1436
1446
|
url: "/acs/entrances/list",
|
|
@@ -2011,6 +2021,16 @@ var SeamHttpConnectedAccounts = class _SeamHttpConnectedAccounts {
|
|
|
2011
2021
|
});
|
|
2012
2022
|
return data.connected_accounts;
|
|
2013
2023
|
}
|
|
2024
|
+
async update(body) {
|
|
2025
|
+
const { data } = await this.client.request(
|
|
2026
|
+
{
|
|
2027
|
+
url: "/connected_accounts/update",
|
|
2028
|
+
method: "post",
|
|
2029
|
+
data: body
|
|
2030
|
+
}
|
|
2031
|
+
);
|
|
2032
|
+
return data.connected_account;
|
|
2033
|
+
}
|
|
2014
2034
|
};
|
|
2015
2035
|
|
|
2016
2036
|
// src/lib/seam/connect/routes/devices-unmanaged.ts
|