@quacklytics/client 0.4.1-nightly.sha-28117aa3c531 → 0.5.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.
package/README.md CHANGED
@@ -11,7 +11,7 @@ const analytics = createClient({
11
11
  autocapture: true,
12
12
  });
13
13
 
14
- // Start from your consent UI. Before a decision, events are buffered locally.
14
+ // Start from your consent UI. Before a decision, events are sent anonymously.
15
15
  analytics.setConsent("granted");
16
16
  await analytics.track("signup", { plan: "pro" });
17
17
  await analytics.identify("account-123", { plan: "pro" });
@@ -50,9 +50,9 @@ The service resolves SDK actors as `anonymous:<id>` and `user:<id>` in its perso
50
50
 
51
51
  Default consent is `required`. Three modes follow from the visitor's decision:
52
52
 
53
- - **Undecided:** nothing is sent. Captures (including `identify`) are buffered in localStorage, survive reloads, and return `{ status: 'buffered' }`. The buffer is bounded by `maxQueueSize`, `maxQueueBytes` and `maxQueueAgeMs`.
54
- - **Granted:** buffered captures are released with the persistent visitor/session identity, in order, so pre-consent activity and any buffered `identify` are attributed normally. Collection continues with full identity.
55
- - **Denied:** buffered events are released anonymously and collection continues in anonymous mode. Events are sent with `anonymous: true` and no identifiers; nothing about the visitor is stored. The service derives a `daily:<hash>` visitor from HMAC-SHA-256 over the project, client IP and user agent, keyed with a random salt per UTC day. Salts older than yesterday are deleted the next time a declined visitor's event is processed, after which an ID can no longer be linked back to anyone. These visitors appear as `anonymous:daily:<hash>` in SQL. A visit continues one session until 30 minutes of inactivity, including across midnight. `identify`/`reset` are disabled and buffered `identify` calls are discarded. Visitors behind the same IP with the same browser are counted as one.
53
+ - **Undecided:** events are sent in anonymous mode (see Denied), so the visitor is counted like one who declined. The browser keeps only the random IDs of those events in localStorage, bounded by `maxQueueSize` and `maxQueueAgeMs`. `identify` calls wait in localStorage, survive reloads, and return `{ status: 'buffered' }`; that buffer is also bounded by `maxQueueBytes`.
54
+ - **Granted:** the browser claims the events it sent while undecided. The service moves them from their daily visitor onto the persistent visitor, split into the sessions they would have had; a visit still in progress continues as the current session. Waiting `identify` calls are sent next, so pre-consent activity is attributed normally. Only events still attributed to a daily visitor move, so identified or already claimed events can't be taken over, and claiming one requires knowing its random ID. Claims travel in their own requests: a service that predates them rejects only the claims (reported through `onError`), and those events stay with their daily visitor. Collection continues with full identity.
55
+ - **Denied:** collection continues in anonymous mode. The kept event IDs are deleted, so events from while the visitor was undecided stay with their daily visitor. Events are sent with `anonymous: true` and no identifiers; only the decision is stored. The service derives a `daily:<hash>` visitor from HMAC-SHA-256 over the project, client IP and user agent, keyed with a random salt per UTC day. Salts older than yesterday are deleted the next time an anonymous event is processed, after which an ID can no longer be linked back to anyone. These visitors appear as `anonymous:daily:<hash>` in SQL. A visit continues one session until 30 minutes of inactivity, including across midnight. `identify`/`reset` are disabled and waiting `identify` calls are discarded. Visitors behind the same IP with the same browser are counted as one.
56
56
 
57
57
  `setConsent('denied')` after granting clears the visitor identity and pending outbox, cancels delivery, persists the choice and switches to anonymous mode. Already sent data cannot be recalled. Each identity change records the current page once. `consent: 'granted'` explicitly opts into immediate collection, but a persisted denial still takes precedence.
58
58
 
@@ -99,4 +99,4 @@ await client.destroy();
99
99
 
100
100
  Server `send`/`sendBatch` use the first-party importer protocol, including `deferExport`, `backfill` (for archived months) and AbortSignal. They acknowledge committed batches and never collect browser context or create identities. Use `personId: 'user:account-123'` when intentionally joining a server event to the SDK's resolved user actor. `track()` uses the versioned queue and requires an explicit `flush()` in server runtimes. Browser `send`/`sendBatch` are convenience capture-and-flush methods and may split into multiple transactions; a later invalid event can leave earlier events queued. Explicit browser identity fields, `personProperties`, AbortSignal, `deferExport` and `backfill` are rejected: use identify/reset for browser identity and the server importer for explicit batches. Rejection means no collection.
101
101
 
102
- The `/protocol` entrypoint exports Zod schemas and inferred types for versioned events and identify operations. Keep protocol changes backward compatible or introduce a new version.
102
+ The `/protocol` entrypoint exports Zod schemas and inferred types for versioned events, identify and claim operations. Keep protocol changes backward compatible or introduce a new version.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -15,12 +15,15 @@ const savedQueue = z.object({
15
15
  pending: z.array(sdkOperation),
16
16
  batches: z.array(savedBatch),
17
17
  });
18
- // Captured before a consent decision; identity is attached once the visitor decides.
18
+ // Held before a consent decision; identity is attached once the visitor decides.
19
+ // This version holds only identify calls; earlier versions also held events.
19
20
  const bufferedOperation = z.discriminatedUnion("kind", [
20
21
  sdkEvent,
21
22
  identifyOperation.omit({ anonymousId: true }),
22
23
  ]);
23
24
  const savedBuffer = z.array(bufferedOperation);
25
+ // Events sent anonymously while undecided, which accepting moves onto the visitor.
26
+ const savedClaims = z.array(z.object({ id: z.uuid(), timestamp: z.iso.datetime({ offset: true }) }));
24
27
  const instances = new Map();
25
28
  const bytes = (value) => new TextEncoder().encode(value).byteLength;
26
29
  export function createClient(config) {
@@ -139,15 +142,20 @@ export function createClient(config) {
139
142
  storageWrite("outbox", null, true);
140
143
  }
141
144
  let bufferInMemory = false, memoryBuffer = [];
145
+ // This page's claims survive another tab clearing them or storage failing.
146
+ let ownClaims = [], claimsStored = true;
142
147
  /** Full collection: persistent visitor identity, identify, and a stored outbox. */
143
148
  function active() {
144
149
  if (browser && consent === "granted" && storageRead("consent") === "denied")
145
150
  setConsent("denied", false);
146
151
  return !dead && consent === "granted";
147
152
  }
148
- /** Declined collection: the service assigns a cookieless daily visitor; nothing is stored. */
153
+ /**
154
+ * Declined or undecided collection: events carry no identifiers and the
155
+ * service assigns a cookieless daily visitor.
156
+ */
149
157
  function anonymous() {
150
- return !active() && !dead && consent === "denied";
158
+ return !active() && !dead && consent !== "granted";
151
159
  }
152
160
  function sending() {
153
161
  return active() || anonymous();
@@ -168,26 +176,93 @@ export function createClient(config) {
168
176
  if (!bufferInMemory)
169
177
  bufferInMemory = !storageWrite("buffer", entries.length ? JSON.stringify(entries) : null);
170
178
  }
179
+ const fresh = (entry) => Date.now() - Date.parse(entry.timestamp) <= maxAge;
171
180
  function buffer(operation) {
172
181
  const snapshot = bufferedOperation.parse(JSON.parse(JSON.stringify(operation)));
173
182
  if (bytes(JSON.stringify(snapshot)) > maxEventBytes)
174
183
  throw new Error("Analytics event exceeds maxEventBytes");
175
- const entries = [
176
- ...readBuffer().filter((entry) => Date.now() - Date.parse(entry.timestamp) <= maxAge),
177
- snapshot,
178
- ];
184
+ const entries = [...readBuffer().filter(fresh), snapshot];
179
185
  if (entries.length > maxQueueSize ||
180
186
  bytes(JSON.stringify(entries)) > maxQueueBytes)
181
187
  throw new Error("Analytics consent buffer is full");
182
188
  writeBuffer(entries);
183
189
  return { status: "buffered", id: snapshot.id };
184
190
  }
185
- /** Sends pre-consent captures under the identity the visitor's decision allows. */
191
+ function readClaims() {
192
+ try {
193
+ const parsed = savedClaims.safeParse(JSON.parse(storageRead("claims") ?? "[]"));
194
+ return parsed.success ? parsed.data : [];
195
+ }
196
+ catch {
197
+ return [];
198
+ }
199
+ }
200
+ /** Keeps an undecided capture's ID so that accepting can claim it. */
201
+ function remember(event) {
202
+ const entry = { id: event.id, timestamp: event.timestamp };
203
+ ownClaims = [...ownClaims.filter(fresh), entry].slice(-maxQueueSize);
204
+ if (claimsStored)
205
+ claimsStored = storageWrite("claims", JSON.stringify([...readClaims().filter(fresh), entry].slice(-maxQueueSize)));
206
+ }
207
+ /** Moves undecided captures onto the visitor, in the sessions they would have had. */
208
+ function claim(entries) {
209
+ const who = currentIdentity();
210
+ if (!who)
211
+ return;
212
+ const byTime = [
213
+ ...new Map(entries.map((entry) => [entry.id, entry])).values(),
214
+ ].sort((a, b) => Date.parse(a.timestamp) - Date.parse(b.timestamp));
215
+ const visits = [];
216
+ let last = -Infinity;
217
+ for (const entry of byTime) {
218
+ const time = Date.parse(entry.timestamp);
219
+ const visit = visits[visits.length - 1];
220
+ if (visit && time - last < sessionTimeout)
221
+ visit.push(entry);
222
+ else
223
+ visits.push([entry]);
224
+ last = time;
225
+ }
226
+ // Each event ID adds at most 39 bytes to a claim.
227
+ const size = Math.max(1, Math.min(1000, Math.floor((maxEventBytes - 400) / 39)));
228
+ for (const [index, visit] of visits.entries()) {
229
+ // A visit still in progress continues as the current session.
230
+ const sessionId = index === visits.length - 1 && Date.now() - last < sessionTimeout
231
+ ? who.sessionId
232
+ : crypto.randomUUID();
233
+ for (let start = 0; start < visit.length; start += size)
234
+ try {
235
+ enqueue(sdkOperation.parse({
236
+ kind: "claim",
237
+ id: crypto.randomUUID(),
238
+ timestamp: new Date().toISOString(),
239
+ anonymousId: who.anonymousId,
240
+ sessionId,
241
+ eventIds: visit
242
+ .slice(start, start + size)
243
+ .map((entry) => entry.id),
244
+ }));
245
+ }
246
+ catch (error) {
247
+ report(error);
248
+ }
249
+ }
250
+ }
251
+ /** Applies the visitor's decision to what was captured before it. */
186
252
  function release() {
187
- const entries = readBuffer().filter((entry) => Date.now() - Date.parse(entry.timestamp) <= maxAge);
188
- if (!entries.length || !sending())
253
+ if (!sending())
189
254
  return;
190
- writeBuffer([]);
255
+ const stored = readClaims();
256
+ const claims = [...stored, ...ownClaims].filter(fresh);
257
+ ownClaims = [];
258
+ if (stored.length)
259
+ storageWrite("claims", null);
260
+ // Declining leaves undecided events with their daily visitor.
261
+ if (active() && claims.length)
262
+ claim(claims);
263
+ const entries = readBuffer().filter(fresh);
264
+ if (entries.length)
265
+ writeBuffer([]);
191
266
  const full = active();
192
267
  for (const entry of entries) {
193
268
  try {
@@ -288,9 +363,9 @@ export function createClient(config) {
288
363
  return { status: "queued", id: operation.id };
289
364
  }
290
365
  function capture(name, properties, extra = {}) {
291
- const undecided = browser && !dead && consent === "pending";
292
- if (!undecided && !sending())
366
+ if (!sending())
293
367
  return { status: "disabled" };
368
+ const undecided = browser && consent === "pending";
294
369
  const timestamp = extra.timestamp ?? new Date().toISOString();
295
370
  const who = active() ? currentIdentity() : undefined;
296
371
  const capturedContext = context(allowed, browser);
@@ -327,7 +402,10 @@ export function createClient(config) {
327
402
  userId: event.userId,
328
403
  anonymous: event.anonymous,
329
404
  });
330
- return undecided ? buffer(final) : enqueue(final);
405
+ const result = enqueue(final);
406
+ if (undecided && result.status === "queued")
407
+ remember(final);
408
+ return result;
331
409
  }
332
410
  async function page(properties = {}) {
333
411
  if (dead || !browser)
@@ -362,6 +440,10 @@ export function createClient(config) {
362
440
  const requestId = crypto.randomUUID();
363
441
  while (pending[0] && operations.length < batchSize) {
364
442
  const next = pending[0];
443
+ // Services without claims reject the whole request, so claims travel alone.
444
+ if (operations[0] &&
445
+ (operations[0].kind === "claim") !== (next.kind === "claim"))
446
+ break;
365
447
  if (operations.length &&
366
448
  bytes(JSON.stringify({
367
449
  protocolVersion: 1,
@@ -500,14 +582,19 @@ export function createClient(config) {
500
582
  return;
501
583
  const previous = consent;
502
584
  consent = state;
585
+ // Other tabs adopt the stored identity when they see the decision.
586
+ if (state === "granted")
587
+ currentIdentity();
503
588
  if (save)
504
589
  storageWrite("consent", state);
505
590
  if (state === "denied") {
506
- clearDelivery();
591
+ // Undecided captures are already anonymous; only identified ones are withdrawn.
592
+ if (previous === "granted")
593
+ clearDelivery();
507
594
  identity = undefined;
508
595
  storageWrite("identity", null);
509
596
  }
510
- // Pre-consent pageviews are released below; a new identity needs its own pageview.
597
+ // Undecided pageviews were already sent and are claimed when granted; a new identity needs its own pageview.
511
598
  if (previous !== "pending" && previous !== state) {
512
599
  pageUrl = undefined;
513
600
  pageViewId = undefined;
@@ -664,7 +751,8 @@ export function createClient(config) {
664
751
  if (event.key === `${key}:identity`) {
665
752
  const previous = identity?.anonymousId;
666
753
  identity = readIdentity();
667
- if (previous !== identity?.anonymousId) {
754
+ // An undecided tab adopting an accepting tab's identity keeps its claimed page.
755
+ if (consent === "granted" && previous !== identity?.anonymousId) {
668
756
  pageUrl = undefined;
669
757
  pageViewId = undefined;
670
758
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod";
2
- export declare const SDK_VERSION = "0.4.1-nightly.sha-28117aa3c531";
2
+ export declare const SDK_VERSION = "0.5.0";
3
3
  export declare const jsonProperties: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
4
4
  export type EventProperties = z.infer<typeof jsonProperties>;
5
5
  export type JsonValue = z.infer<ReturnType<typeof z.json>>;
@@ -76,6 +76,18 @@ export declare const identifyOperation: z.ZodObject<{
76
76
  userId: z.ZodString;
77
77
  traits: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
78
78
  }, z.core.$strict>;
79
+ /**
80
+ * Moves events a browser sent anonymously while its visitor was undecided onto
81
+ * the visitor who accepted. Only events still attributed to a daily visitor move.
82
+ */
83
+ export declare const claimOperation: z.ZodObject<{
84
+ kind: z.ZodLiteral<"claim">;
85
+ id: z.ZodUUID;
86
+ timestamp: z.ZodISODateTime;
87
+ anonymousId: z.ZodString;
88
+ sessionId: z.ZodString;
89
+ eventIds: z.ZodArray<z.ZodUUID>;
90
+ }, z.core.$strict>;
79
91
  export declare const sdkOperation: z.ZodDiscriminatedUnion<[z.ZodObject<{
80
92
  kind: z.ZodLiteral<"event">;
81
93
  id: z.ZodUUID;
@@ -120,6 +132,13 @@ export declare const sdkOperation: z.ZodDiscriminatedUnion<[z.ZodObject<{
120
132
  anonymousId: z.ZodString;
121
133
  userId: z.ZodString;
122
134
  traits: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
135
+ }, z.core.$strict>, z.ZodObject<{
136
+ kind: z.ZodLiteral<"claim">;
137
+ id: z.ZodUUID;
138
+ timestamp: z.ZodISODateTime;
139
+ anonymousId: z.ZodString;
140
+ sessionId: z.ZodString;
141
+ eventIds: z.ZodArray<z.ZodUUID>;
123
142
  }, z.core.$strict>], "kind">;
124
143
  export declare const sdkRequest: z.ZodObject<{
125
144
  protocolVersion: z.ZodLiteral<1>;
@@ -168,6 +187,13 @@ export declare const sdkRequest: z.ZodObject<{
168
187
  anonymousId: z.ZodString;
169
188
  userId: z.ZodString;
170
189
  traits: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
190
+ }, z.core.$strict>, z.ZodObject<{
191
+ kind: z.ZodLiteral<"claim">;
192
+ id: z.ZodUUID;
193
+ timestamp: z.ZodISODateTime;
194
+ anonymousId: z.ZodString;
195
+ sessionId: z.ZodString;
196
+ eventIds: z.ZodArray<z.ZodUUID>;
171
197
  }, z.core.$strict>], "kind">>;
172
198
  }, z.core.$strict>;
173
199
  export declare const ingestAcknowledgment: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,WAAW,mCAAmC,CAAC;AAC5D,eAAO,MAAM,cAAc,2CAAiC,CAAC;AAC7D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC7D,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAE3D,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqBvB,CAAC;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA6CjB,CAAC;AACL,eAAO,MAAM,iBAAiB;;;;;;;kBASnB,CAAC;AACZ,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAGvB,CAAC;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAMZ,CAAC;AACZ,eAAO,MAAM,oBAAoB;;;;;iBAM/B,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAChD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,WAAW,UAAU,CAAC;AACnC,eAAO,MAAM,cAAc,2CAAiC,CAAC;AAC7D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC7D,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAE3D,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqBvB,CAAC;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA6CjB,CAAC;AACL,eAAO,MAAM,iBAAiB;;;;;;;kBASnB,CAAC;AACZ;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;kBAShB,CAAC;AACZ,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAIvB,CAAC;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAMZ,CAAC;AACZ,eAAO,MAAM,oBAAoB;;;;;iBAM/B,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAChD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
package/dist/protocol.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod";
2
- export const SDK_VERSION = "0.4.1-nightly.sha-28117aa3c531";
2
+ export const SDK_VERSION = "0.5.0";
3
3
  export const jsonProperties = z.record(z.string(), z.json());
4
4
  const identity = z.string().min(1).max(300);
5
5
  export const eventContext = z.object({
@@ -69,9 +69,24 @@ export const identifyOperation = z
69
69
  traits: jsonProperties,
70
70
  })
71
71
  .strict();
72
+ /**
73
+ * Moves events a browser sent anonymously while its visitor was undecided onto
74
+ * the visitor who accepted. Only events still attributed to a daily visitor move.
75
+ */
76
+ export const claimOperation = z
77
+ .object({
78
+ kind: z.literal("claim"),
79
+ id: z.uuid(),
80
+ timestamp: z.iso.datetime({ offset: true }),
81
+ anonymousId: identity,
82
+ sessionId: identity,
83
+ eventIds: z.array(z.uuid()).min(1).max(1000),
84
+ })
85
+ .strict();
72
86
  export const sdkOperation = z.discriminatedUnion("kind", [
73
87
  sdkEvent,
74
88
  identifyOperation,
89
+ claimOperation,
75
90
  ]);
76
91
  export const sdkRequest = z
77
92
  .object({
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.4.1-nightly.sha-28117aa3c531",
2
+ "version": "0.5.0",
3
3
  "name": "@quacklytics/client",
4
4
  "description": "First-party browser and server analytics client for Quacklytics.",
5
5
  "license": "MIT",