@solworks/poll-api-client 0.1.5 → 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 CHANGED
@@ -59,4 +59,5 @@ export declare class PollClient {
59
59
  revokeToken(tokenId: string): Promise<{
60
60
  success: boolean;
61
61
  }>;
62
+ trackEvent(event: string, properties?: Record<string, unknown>): Promise<void>;
62
63
  }
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
- errorBody?.error ??
44
- errorBody?.message ??
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
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@solworks/poll-api-client",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "description": "Typed HTTP client for the Poll.fun REST API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",