@solworks/poll-api-client 0.1.4 → 0.1.6
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/client.d.ts +1 -0
- package/dist/client.js +19 -2
- package/package.json +1 -1
package/dist/client.d.ts
CHANGED
package/dist/client.js
CHANGED
|
@@ -39,9 +39,14 @@ export class PollClient {
|
|
|
39
39
|
let errorMessage;
|
|
40
40
|
try {
|
|
41
41
|
errorBody = await response.json();
|
|
42
|
+
const body = errorBody;
|
|
43
|
+
const errField = body?.error;
|
|
44
|
+
const msgField = body?.message;
|
|
45
|
+
// error field may be an object (e.g. { error: { message: "..." } })
|
|
42
46
|
errorMessage =
|
|
43
|
-
|
|
44
|
-
|
|
47
|
+
(typeof errField === 'string' ? errField : undefined) ??
|
|
48
|
+
(typeof errField === 'object' && errField !== null ? errField.message : undefined) ??
|
|
49
|
+
(typeof msgField === 'string' ? msgField : undefined) ??
|
|
45
50
|
response.statusText;
|
|
46
51
|
}
|
|
47
52
|
catch {
|
|
@@ -226,4 +231,16 @@ export class PollClient {
|
|
|
226
231
|
async revokeToken(tokenId) {
|
|
227
232
|
return this.request('DELETE', `/api/auth/token/${tokenId}`);
|
|
228
233
|
}
|
|
234
|
+
// ── Analytics ──────────────────────────────────────────────────────
|
|
235
|
+
async trackEvent(event, properties) {
|
|
236
|
+
try {
|
|
237
|
+
await this.request('POST', '/api/analytics/event', {
|
|
238
|
+
event,
|
|
239
|
+
properties,
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
catch {
|
|
243
|
+
// Fire-and-forget; never throw
|
|
244
|
+
}
|
|
245
|
+
}
|
|
229
246
|
}
|