@iann29/rastro 0.1.0-alpha.4 → 0.1.0-alpha.5
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 +128 -29
- package/agent/manifest.json +1 -1
- package/dist/client/index.d.ts +69 -11
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +19 -1
- package/dist/client/index.js.map +1 -1
- package/dist/component/_generated/api.d.ts +6 -0
- package/dist/component/_generated/api.d.ts.map +1 -1
- package/dist/component/_generated/api.js.map +1 -1
- package/dist/component/_generated/component.d.ts +19 -1
- package/dist/component/_generated/component.d.ts.map +1 -1
- package/dist/component/constants.d.ts +1 -0
- package/dist/component/constants.d.ts.map +1 -1
- package/dist/component/constants.js +1 -0
- package/dist/component/constants.js.map +1 -1
- package/dist/component/eventStore.d.ts +1 -0
- package/dist/component/eventStore.d.ts.map +1 -1
- package/dist/component/http.d.ts.map +1 -1
- package/dist/component/http.js +40 -29
- package/dist/component/http.js.map +1 -1
- package/dist/component/identity.d.ts +13 -0
- package/dist/component/identity.d.ts.map +1 -0
- package/dist/component/identity.js +58 -0
- package/dist/component/identity.js.map +1 -0
- package/dist/component/ingest.d.ts +1 -0
- package/dist/component/ingest.d.ts.map +1 -1
- package/dist/component/ingest.js +25 -6
- package/dist/component/ingest.js.map +1 -1
- package/dist/component/reports.d.ts +10 -1
- package/dist/component/reports.d.ts.map +1 -1
- package/dist/component/reports.js +22 -15
- package/dist/component/reports.js.map +1 -1
- package/dist/component/sanitize.d.ts.map +1 -1
- package/dist/component/sanitize.js +4 -1
- package/dist/component/sanitize.js.map +1 -1
- package/dist/component/schema.d.ts +37 -6
- package/dist/component/schema.js +13 -0
- package/dist/component/schema.js.map +1 -1
- package/dist/component/useragent.d.ts +9 -0
- package/dist/component/useragent.d.ts.map +1 -0
- package/dist/component/useragent.js +152 -0
- package/dist/component/useragent.js.map +1 -0
- package/dist/component/validators.d.ts +16 -10
- package/dist/component/validators.d.ts.map +1 -1
- package/dist/component/validators.js +3 -1
- package/dist/component/validators.js.map +1 -1
- package/dist/component/visitors.d.ts +19 -0
- package/dist/component/visitors.d.ts.map +1 -0
- package/dist/component/visitors.js +86 -0
- package/dist/component/visitors.js.map +1 -0
- package/dist/tracker/generated.d.ts +4 -4
- package/dist/tracker/generated.d.ts.map +1 -1
- package/dist/tracker/generated.js +4 -4
- package/dist/tracker/generated.js.map +1 -1
- package/dist/tracker/tracker.js +23 -11
- package/dist/tracker/tracker.js.map +1 -1
- package/dist/tracker.min.js +1 -1
- package/docs/federation.md +1 -1
- package/package.json +12 -8
- package/src/component/_generated/api.ts +6 -0
- package/src/component/_generated/component.ts +18 -1
- package/src/component/constants.ts +1 -0
- package/src/component/http.ts +55 -34
- package/src/component/identity.ts +74 -0
- package/src/component/ingest.ts +29 -3
- package/src/component/reports.ts +21 -14
- package/src/component/sanitize.ts +4 -1
- package/src/component/schema.ts +15 -0
- package/src/component/useragent.ts +171 -0
- package/src/component/validators.ts +3 -0
- package/src/component/visitors.ts +105 -0
|
@@ -55,10 +55,12 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
55
55
|
utmMedium?: string | undefined;
|
|
56
56
|
utmSource?: string | undefined;
|
|
57
57
|
visitorId: string;
|
|
58
|
+
visitorKey?: string | undefined;
|
|
58
59
|
}, {
|
|
59
60
|
siteId: import("convex/values").VId<import("convex/values").GenericId<"sites">, "required">;
|
|
60
61
|
sessionId: import("convex/values").VString<string, "required">;
|
|
61
62
|
visitorId: import("convex/values").VString<string, "required">;
|
|
63
|
+
visitorKey: import("convex/values").VString<string | undefined, "optional">;
|
|
62
64
|
startedAt: import("convex/values").VFloat64<number, "required">;
|
|
63
65
|
lastSeenAt: import("convex/values").VFloat64<number, "required">;
|
|
64
66
|
entryPath: import("convex/values").VString<string, "required">;
|
|
@@ -86,7 +88,7 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
86
88
|
affiliateAttributedAt: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
87
89
|
affiliateExpiresAt: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
88
90
|
geoLookupAttemptedAt: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
89
|
-
}, "required", "affiliateAttributedAt" | "affiliateExpiresAt" | "affiliateId" | "affiliateSlug" | "browser" | "city" | "conversionCount" | "country" | "currency" | "device" | "durationMs" | "entryPath" | "eventCount" | "exitPath" | "geoLookupAttemptedAt" | "lastSeenAt" | "latitude" | "longitude" | "os" | "pageviewCount" | "referrer" | "revenueCents" | "sessionId" | "siteId" | "source" | "startedAt" | "utmCampaign" | "utmMedium" | "utmSource" | "visitorId">, {
|
|
91
|
+
}, "required", "affiliateAttributedAt" | "affiliateExpiresAt" | "affiliateId" | "affiliateSlug" | "browser" | "city" | "conversionCount" | "country" | "currency" | "device" | "durationMs" | "entryPath" | "eventCount" | "exitPath" | "geoLookupAttemptedAt" | "lastSeenAt" | "latitude" | "longitude" | "os" | "pageviewCount" | "referrer" | "revenueCents" | "sessionId" | "siteId" | "source" | "startedAt" | "utmCampaign" | "utmMedium" | "utmSource" | "visitorId" | "visitorKey">, {
|
|
90
92
|
by_siteId_and_lastSeenAt: ["siteId", "lastSeenAt", "_creationTime"];
|
|
91
93
|
by_siteId_and_sessionId: ["siteId", "sessionId", "_creationTime"];
|
|
92
94
|
by_siteId_and_startedAt: ["siteId", "startedAt", "_creationTime"];
|
|
@@ -185,6 +187,7 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
185
187
|
timestamp: number;
|
|
186
188
|
type: "click" | "conversion" | "custom" | "heartbeat" | "outbound" | "pageview";
|
|
187
189
|
visitorId: string;
|
|
190
|
+
visitorKey?: string | undefined;
|
|
188
191
|
}[];
|
|
189
192
|
migrationVersion?: 1 | undefined;
|
|
190
193
|
sessionId: string;
|
|
@@ -219,6 +222,7 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
219
222
|
timestamp: number;
|
|
220
223
|
type: "click" | "conversion" | "custom" | "heartbeat" | "outbound" | "pageview";
|
|
221
224
|
visitorId: string;
|
|
225
|
+
visitorKey?: string | undefined;
|
|
222
226
|
}[], import("convex/values").VObject<{
|
|
223
227
|
affiliateSlug?: string | undefined;
|
|
224
228
|
aggregateCountry?: string | undefined;
|
|
@@ -243,6 +247,7 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
243
247
|
timestamp: number;
|
|
244
248
|
type: "click" | "conversion" | "custom" | "heartbeat" | "outbound" | "pageview";
|
|
245
249
|
visitorId: string;
|
|
250
|
+
visitorKey?: string | undefined;
|
|
246
251
|
}, {
|
|
247
252
|
eventId: import("convex/values").VString<string, "required">;
|
|
248
253
|
sessionId: import("convex/values").VString<string, "required">;
|
|
@@ -266,8 +271,9 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
266
271
|
browser: import("convex/values").VString<string | undefined, "optional">;
|
|
267
272
|
os: import("convex/values").VString<string | undefined, "optional">;
|
|
268
273
|
device: import("convex/values").VString<string | undefined, "optional">;
|
|
274
|
+
visitorKey: import("convex/values").VString<string | undefined, "optional">;
|
|
269
275
|
aggregateCountry: import("convex/values").VString<string | undefined, "optional">;
|
|
270
|
-
}, "required", "affiliateSlug" | "aggregateCountry" | "browser" | "city" | "country" | "currency" | "device" | "eventId" | "href" | "latitude" | "longitude" | "name" | "os" | "path" | "properties" | "referrer" | "revenueCents" | "sequence" | "sessionId" | "target" | "timestamp" | "type" | "visitorId" | `properties.${string}`>, "required">;
|
|
276
|
+
}, "required", "affiliateSlug" | "aggregateCountry" | "browser" | "city" | "country" | "currency" | "device" | "eventId" | "href" | "latitude" | "longitude" | "name" | "os" | "path" | "properties" | "referrer" | "revenueCents" | "sequence" | "sessionId" | "target" | "timestamp" | "type" | "visitorId" | "visitorKey" | `properties.${string}`>, "required">;
|
|
271
277
|
migrationVersion: import("convex/values").VLiteral<1 | undefined, "optional">;
|
|
272
278
|
}, "required", "bucketStart" | "events" | "migrationVersion" | "sessionId" | "siteId" | "visitorId">, {
|
|
273
279
|
by_siteId_and_bucketStart: ["siteId", "bucketStart", "_creationTime"];
|
|
@@ -283,7 +289,7 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
283
289
|
count: number;
|
|
284
290
|
revenueCents: number;
|
|
285
291
|
slot: number;
|
|
286
|
-
type: "browser" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
292
|
+
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
287
293
|
value: string;
|
|
288
294
|
}[];
|
|
289
295
|
events: number;
|
|
@@ -329,16 +335,16 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
329
335
|
count: number;
|
|
330
336
|
revenueCents: number;
|
|
331
337
|
slot: number;
|
|
332
|
-
type: "browser" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
338
|
+
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
333
339
|
value: string;
|
|
334
340
|
}[], import("convex/values").VObject<{
|
|
335
341
|
count: number;
|
|
336
342
|
revenueCents: number;
|
|
337
343
|
slot: number;
|
|
338
|
-
type: "browser" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
344
|
+
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
339
345
|
value: string;
|
|
340
346
|
}, {
|
|
341
|
-
type: import("convex/values").VUnion<"browser" | "country" | "device" | "event" | "goal" | "page" | "source", [import("convex/values").VLiteral<"source", "required">, import("convex/values").VLiteral<"page", "required">, import("convex/values").VLiteral<"country", "required">, import("convex/values").VLiteral<"device", "required">, import("convex/values").VLiteral<"browser", "required">, import("convex/values").VLiteral<"event", "required">, import("convex/values").VLiteral<"goal", "required">], "required", never>;
|
|
347
|
+
type: import("convex/values").VUnion<"browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source", [import("convex/values").VLiteral<"source", "required">, import("convex/values").VLiteral<"campaign", "required">, import("convex/values").VLiteral<"page", "required">, import("convex/values").VLiteral<"country", "required">, import("convex/values").VLiteral<"device", "required">, import("convex/values").VLiteral<"browser", "required">, import("convex/values").VLiteral<"event", "required">, import("convex/values").VLiteral<"goal", "required">], "required", never>;
|
|
342
348
|
slot: import("convex/values").VFloat64<number, "required">;
|
|
343
349
|
value: import("convex/values").VString<string, "required">;
|
|
344
350
|
count: import("convex/values").VFloat64<number, "required">;
|
|
@@ -671,6 +677,31 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
671
677
|
by_siteId: ["siteId", "_creationTime"];
|
|
672
678
|
by_siteId_and_slug: ["siteId", "slug", "_creationTime"];
|
|
673
679
|
}, {}, {}>;
|
|
680
|
+
visitorSecrets: import("convex/server").TableDefinition<import("convex/values").VObject<{
|
|
681
|
+
createdAt: number;
|
|
682
|
+
key: "current";
|
|
683
|
+
value: string;
|
|
684
|
+
}, {
|
|
685
|
+
key: import("convex/values").VLiteral<"current", "required">;
|
|
686
|
+
value: import("convex/values").VString<string, "required">;
|
|
687
|
+
createdAt: import("convex/values").VFloat64<number, "required">;
|
|
688
|
+
}, "required", "createdAt" | "key" | "value">, {
|
|
689
|
+
by_key: ["key", "_creationTime"];
|
|
690
|
+
}, {}, {}>;
|
|
691
|
+
visitorAliases: import("convex/server").TableDefinition<import("convex/values").VObject<{
|
|
692
|
+
linkedAt: number;
|
|
693
|
+
previousVisitorId: string;
|
|
694
|
+
siteId: import("convex/values").GenericId<"sites">;
|
|
695
|
+
visitorId: string;
|
|
696
|
+
}, {
|
|
697
|
+
siteId: import("convex/values").VId<import("convex/values").GenericId<"sites">, "required">;
|
|
698
|
+
visitorId: import("convex/values").VString<string, "required">;
|
|
699
|
+
previousVisitorId: import("convex/values").VString<string, "required">;
|
|
700
|
+
linkedAt: import("convex/values").VFloat64<number, "required">;
|
|
701
|
+
}, "required", "linkedAt" | "previousVisitorId" | "siteId" | "visitorId">, {
|
|
702
|
+
by_siteId_and_previousVisitorId: ["siteId", "previousVisitorId", "_creationTime"];
|
|
703
|
+
by_siteId_and_visitorId: ["siteId", "visitorId", "_creationTime"];
|
|
704
|
+
}, {}, {}>;
|
|
674
705
|
visitorAttributions: import("convex/server").TableDefinition<import("convex/values").VObject<{
|
|
675
706
|
affiliateId: import("convex/values").GenericId<"affiliates">;
|
|
676
707
|
affiliateSlug: string;
|
package/dist/component/schema.js
CHANGED
|
@@ -248,6 +248,19 @@ export default defineSchema({
|
|
|
248
248
|
affiliates: defineTable(affiliateFieldsValidator)
|
|
249
249
|
.index("by_siteId", ["siteId"])
|
|
250
250
|
.index("by_siteId_and_slug", ["siteId", "slug"]),
|
|
251
|
+
visitorSecrets: defineTable({
|
|
252
|
+
key: v.literal("current"),
|
|
253
|
+
value: v.string(),
|
|
254
|
+
createdAt: v.number(),
|
|
255
|
+
}).index("by_key", ["key"]),
|
|
256
|
+
visitorAliases: defineTable({
|
|
257
|
+
siteId: v.id("sites"),
|
|
258
|
+
visitorId: v.string(),
|
|
259
|
+
previousVisitorId: v.string(),
|
|
260
|
+
linkedAt: v.number(),
|
|
261
|
+
})
|
|
262
|
+
.index("by_siteId_and_visitorId", ["siteId", "visitorId"])
|
|
263
|
+
.index("by_siteId_and_previousVisitorId", ["siteId", "previousVisitorId"]),
|
|
251
264
|
visitorAttributions: defineTable({
|
|
252
265
|
siteId: v.id("sites"),
|
|
253
266
|
visitorId: v.string(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAClC,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AAEzB,eAAe,YAAY,CAAC;IAC1B,KAAK,EAAE,WAAW,CAAC,mBAAmB,CAAC;SACpC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC;SAChC,KAAK,CAAC,qBAAqB,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SACjD,KAAK,CAAC,cAAc,EAAE,CAAC,WAAW,CAAC,CAAC;IAEvC,QAAQ,EAAE,WAAW,CACnB,sBAAsB,CAAC,MAAM,CAAC;QAC5B,oBAAoB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KAC7C,CAAC,CACH;SACE,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SACzD,KAAK,CAAC,0BAA0B,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;SAC3D,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SACzD,KAAK,CAAC,wCAAwC,EAAE;QAC/C,QAAQ;QACR,WAAW;QACX,YAAY;KACb,CAAC;IAEJ,YAAY,EAAE,WAAW,CAAC;QACxB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,mBAAmB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC3C,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC5B,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAChC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACjC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;QACd,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,oBAAoB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC5C,uBAAuB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACxD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;KACvB,CAAC;SACC,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SACzD,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SACzD,KAAK,CAAC,0BAA0B,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;SAC3D,KAAK,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAEjE,eAAe,EAAE,WAAW,CAAC;QAC3B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;KACxB,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;IAEjC,gBAAgB,EAAE,WAAW,CAAC;QAC5B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;KAClB,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;IAEjC,YAAY,EAAE,WAAW,CAAC;QACxB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;QACtC,gBAAgB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;KAC3C,CAAC;SACC,KAAK,CAAC,yCAAyC,EAAE;QAChD,QAAQ;QACR,WAAW;QACX,aAAa;KACd,CAAC;SACD,KAAK,CAAC,2BAA2B,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;SAC7D,KAAK,CAAC,yCAAyC,EAAE;QAChD,QAAQ;QACR,WAAW;QACX,aAAa;KACd,CAAC;IAEJ,gBAAgB,EAAE,WAAW,CAAC,wBAAwB,CAAC;SACpD,KAAK,CAAC,qDAAqD,EAAE;QAC5D,QAAQ;QACR,aAAa;QACb,aAAa;QACb,OAAO;KACR,CAAC;SACD,KAAK,CAAC,2CAA2C,EAAE;QAClD,QAAQ;QACR,aAAa;QACb,aAAa;KACd,CAAC;IAEJ,gBAAgB,EAAE,WAAW,CAAC;QAC5B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACxB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;KACvB,CAAC;SACC,KAAK,CAAC,gDAAgD,EAAE;QACvD,QAAQ;QACR,QAAQ;QACR,aAAa;QACb,OAAO;KACR,CAAC;SACD,KAAK,CAAC,sCAAsC,EAAE;QAC7C,QAAQ;QACR,QAAQ;QACR,aAAa;KACd,CAAC;SACD,KAAK,CAAC,2BAA2B,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAEhE,kBAAkB,EAAE,WAAW,CAAC;QAC9B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC;QACzB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACxB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;YACtB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;YACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;SACxB,CAAC,CAAC;KACJ,CAAC;SACC,KAAK,CAAC,kDAAkD,EAAE;QACzD,QAAQ;QACR,UAAU;QACV,aAAa;QACb,OAAO;KACR,CAAC;SACD,KAAK,CAAC,wCAAwC,EAAE;QAC/C,QAAQ;QACR,UAAU;QACV,aAAa;KACd,CAAC;SACD,KAAK,CAAC,2BAA2B,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAEhE,qBAAqB,EAAE,WAAW,CAAC;QACjC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC;QAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACxB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,aAAa,EAAE,sBAAsB;QACrC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;QACxB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;KAC5B,CAAC;SACC,KAAK,CAAC,qDAAqD,EAAE;QAC5D,QAAQ;QACR,aAAa;QACb,aAAa;QACb,OAAO;KACR,CAAC;SACD,KAAK,CAAC,2CAA2C,EAAE;QAClD,QAAQ;QACR,aAAa;QACb,aAAa;KACd,CAAC;SACD,KAAK,CAAC,2BAA2B,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAEhE,iBAAiB,EAAE,WAAW,CAAC;QAC7B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACxB,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE;QAC9B,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACxE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;KACtB,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;IAEjC,iBAAiB,EAAE,WAAW,CAAC;QAC7B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;QACxB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;QAC3B,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;QAC1B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;KACtB,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;IAEjC,eAAe,EAAE,WAAW,CAAC;QAC3B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,MAAM,EAAE,CAAC,CAAC,KAAK,CACb,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EACpB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EACpB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CACtB;QACD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACtC,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACnC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;KACtB,CAAC,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAElD,KAAK,EAAE,WAAW,CAAC,mBAAmB,CAAC;SACpC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;SAC9B,KAAK,CAAC,mBAAmB,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAEhD,eAAe,EAAE,WAAW,CAAC;QAC3B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,kBAAkB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;KACvB,CAAC;SACC,KAAK,CAAC,kCAAkC,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;SAC1E,KAAK,CAAC,oCAAoC,EAAE;QAC3C,QAAQ;QACR,QAAQ;QACR,WAAW;KACZ,CAAC;SACD,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAE5D,OAAO,EAAE,WAAW,CAAC,qBAAqB,CAAC;SACxC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;SAC9B,KAAK,CAAC,mBAAmB,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAEhD,cAAc,EAAE,WAAW,CAAC;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KACpC,CAAC;SACC,KAAK,CAAC,sCAAsC,EAAE;QAC7C,QAAQ;QACR,UAAU;QACV,WAAW;KACZ,CAAC;SACD,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SACzD,KAAK,CAAC,0BAA0B,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAE9D,iBAAiB,EAAE,WAAW,CAAC;QAC7B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC;QACzB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;KACxB,CAAC;SACC,KAAK,CAAC,2DAA2D,EAAE;QAClE,QAAQ;QACR,UAAU;QACV,aAAa;QACb,MAAM;QACN,OAAO;KACR,CAAC;SACD,KAAK,CAAC,wCAAwC,EAAE;QAC/C,QAAQ;QACR,UAAU;QACV,aAAa;KACd,CAAC;SACD,KAAK,CAAC,2BAA2B,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAEhE,UAAU,EAAE,WAAW,CAAC,wBAAwB,CAAC;SAC9C,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;SAC9B,KAAK,CAAC,oBAAoB,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAElD,mBAAmB,EAAE,WAAW,CAAC;QAC/B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC;QAC/B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;QACxB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;KACtB,CAAC;SACC,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SACzD,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAE5D,mBAAmB,EAAE,WAAW,CAAC;QAC/B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC;QAC/B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;QACxB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;KAC5B,CAAC;SACC,KAAK,CAAC,qDAAqD,EAAE;QAC5D,QAAQ;QACR,aAAa;QACb,aAAa;QACb,OAAO;KACR,CAAC;SACD,KAAK,CAAC,2BAA2B,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAEhE,WAAW,EAAE,WAAW,CAAC;QACvB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;QACxB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC3D,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC/B,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAC3C,qBAAqB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC7C,kBAAkB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1C,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACrC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;KAC5B,CAAC;SACC,KAAK,CAAC,uBAAuB,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;SACrD,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SACzD,KAAK,CAAC,uCAAuC,EAAE;QAC9C,QAAQ;QACR,WAAW;QACX,WAAW;KACZ,CAAC;IAEJ,aAAa,EAAE,WAAW,CAAC;QACzB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;KACtB,CAAC;SACC,KAAK,CAAC,yCAAyC,EAAE;QAChD,QAAQ;QACR,WAAW;QACX,aAAa;KACd,CAAC;SACD,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAE5D,iBAAiB,EAAE,WAAW,CAAC;QAC7B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC;QACrB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;KACtB,CAAC;SACC,KAAK,CAAC,qCAAqC,EAAE;QAC5C,QAAQ;QACR,OAAO;QACP,aAAa;KACd,CAAC;SACD,KAAK,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;CAC7D,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type ClientClassification = {
|
|
2
|
+
browser: string;
|
|
3
|
+
os: string;
|
|
4
|
+
device: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function classifyClient(userAgent: string, headers: Headers): ClientClassification;
|
|
7
|
+
export declare function classifyUserAgent(userAgent: string): ClientClassification;
|
|
8
|
+
export declare function isKnownBot(userAgent: string): boolean;
|
|
9
|
+
//# sourceMappingURL=useragent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useragent.d.ts","sourceRoot":"","sources":["../../src/component/useragent.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AA2EF,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,GACf,oBAAoB,CAUtB;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,oBAAoB,CAMzE;AAoED,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAErD"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
// The tracker never reports the client: everything here is derived from headers
|
|
2
|
+
// the browser sets itself. Chromium sends the low-entropy `Sec-CH-UA` hints on
|
|
3
|
+
// cross-origin requests without an `Accept-CH` opt-in, which is the only way to
|
|
4
|
+
// tell Brave apart from Chrome — Brave deliberately ships Chrome's User-Agent.
|
|
5
|
+
// Firefox and Safari implement no client hints, so the User-Agent stays the
|
|
6
|
+
// fallback for them and for insecure origins, where no hint is sent at all.
|
|
7
|
+
const MAX_HINT_LENGTH = 512;
|
|
8
|
+
const MAX_HINT_BRANDS = 16;
|
|
9
|
+
const BRAND_PATTERN = /"((?:[^"\\]|\\.)*)"(?:\s*;\s*v\s*=\s*"(?:[^"\\]|\\.)*")?/g;
|
|
10
|
+
const PLATFORM_PATTERN = /^\s*"((?:[^"\\]|\\.)*)"\s*$/;
|
|
11
|
+
// `Sec-CH-UA` is attacker-controlled on a public ingestion route, so brands are
|
|
12
|
+
// allowlisted: anything unrecognized (including the GREASE entries Chromium
|
|
13
|
+
// injects, such as `Not.A/Brand`) falls back to the User-Agent instead of
|
|
14
|
+
// entering the browser dimension verbatim.
|
|
15
|
+
const HINT_BRANDS = new Map([
|
|
16
|
+
["brave", "Brave"],
|
|
17
|
+
["chromium", "Chromium"],
|
|
18
|
+
["google chrome", "Chrome"],
|
|
19
|
+
["microsoft edge", "Edge"],
|
|
20
|
+
["opera", "Opera"],
|
|
21
|
+
["opera gx", "Opera"],
|
|
22
|
+
["samsung internet", "Samsung Internet"],
|
|
23
|
+
["vivaldi", "Vivaldi"],
|
|
24
|
+
["yandex", "Yandex"],
|
|
25
|
+
]);
|
|
26
|
+
// Every Chromium brand list contains "Chromium", and Chrome adds "Google
|
|
27
|
+
// Chrome" beside it; both only win when no fork identifies itself.
|
|
28
|
+
const GENERIC_BRANDS = new Set(["Chrome", "Chromium"]);
|
|
29
|
+
const HINT_PLATFORMS = new Map([
|
|
30
|
+
["android", "Android"],
|
|
31
|
+
["chrome os", "ChromeOS"],
|
|
32
|
+
["chromium os", "ChromeOS"],
|
|
33
|
+
["ios", "iOS"],
|
|
34
|
+
["linux", "Linux"],
|
|
35
|
+
["macos", "macOS"],
|
|
36
|
+
["windows", "Windows"],
|
|
37
|
+
]);
|
|
38
|
+
// Ordered: every Chromium fork carries `Chrome/`, and every Chromium and Gecko
|
|
39
|
+
// browser on iOS carries `Safari/`, so the specific tokens must be tested
|
|
40
|
+
// first. Brave has no token at all and is only detectable through the hints.
|
|
41
|
+
const AGENT_BROWSERS = [
|
|
42
|
+
[/Edg(?:A|iOS)?\//, "Edge"],
|
|
43
|
+
[/(?:Firefox|FxiOS)\//, "Firefox"],
|
|
44
|
+
[/OPR\//, "Opera"],
|
|
45
|
+
[/SamsungBrowser\//, "Samsung Internet"],
|
|
46
|
+
[/Vivaldi\//, "Vivaldi"],
|
|
47
|
+
[/YaBrowser\//, "Yandex"],
|
|
48
|
+
[/(?:Chrome|CriOS)\//, "Chrome"],
|
|
49
|
+
[/Safari\//, "Safari"],
|
|
50
|
+
];
|
|
51
|
+
// Ordered: Android and ChromeOS user agents also carry the `Linux` token.
|
|
52
|
+
const AGENT_PLATFORMS = [
|
|
53
|
+
[/Android/, "Android"],
|
|
54
|
+
[/iPhone|iPad|iPod/, "iOS"],
|
|
55
|
+
[/CrOS/, "ChromeOS"],
|
|
56
|
+
[/Windows/, "Windows"],
|
|
57
|
+
[/Mac OS X/, "macOS"],
|
|
58
|
+
[/Linux/, "Linux"],
|
|
59
|
+
];
|
|
60
|
+
// Ordered: tablet user agents that carry `Android` must not be read as mobile.
|
|
61
|
+
const AGENT_DEVICES = [
|
|
62
|
+
[/iPad|Tablet/, "tablet"],
|
|
63
|
+
[/Mobile|Android|iPhone/, "mobile"],
|
|
64
|
+
];
|
|
65
|
+
export function classifyClient(userAgent, headers) {
|
|
66
|
+
const agent = classifyUserAgent(userAgent);
|
|
67
|
+
const brand = brandFromClientHints(headers.get("sec-ch-ua"));
|
|
68
|
+
const platform = platformFromClientHints(headers.get("sec-ch-ua-platform"));
|
|
69
|
+
const mobile = mobileFromClientHints(headers.get("sec-ch-ua-mobile"));
|
|
70
|
+
return {
|
|
71
|
+
browser: brand ?? agent.browser,
|
|
72
|
+
os: platform ?? agent.os,
|
|
73
|
+
device: deviceFromClientHints(mobile, platform) ?? agent.device,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
export function classifyUserAgent(userAgent) {
|
|
77
|
+
return {
|
|
78
|
+
browser: matchAgent(AGENT_BROWSERS, userAgent) ?? "Other",
|
|
79
|
+
os: matchAgent(AGENT_PLATFORMS, userAgent) ?? "Other",
|
|
80
|
+
device: matchAgent(AGENT_DEVICES, userAgent) ?? "desktop",
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
function matchAgent(table, userAgent) {
|
|
84
|
+
for (const [pattern, value] of table) {
|
|
85
|
+
if (pattern.test(userAgent))
|
|
86
|
+
return value;
|
|
87
|
+
}
|
|
88
|
+
return undefined;
|
|
89
|
+
}
|
|
90
|
+
function brandFromClientHints(header) {
|
|
91
|
+
if (!header || header.length > MAX_HINT_LENGTH)
|
|
92
|
+
return undefined;
|
|
93
|
+
let generic;
|
|
94
|
+
let seen = 0;
|
|
95
|
+
for (const match of header.matchAll(BRAND_PATTERN)) {
|
|
96
|
+
if (seen >= MAX_HINT_BRANDS)
|
|
97
|
+
break;
|
|
98
|
+
seen += 1;
|
|
99
|
+
const brand = HINT_BRANDS.get(unquote(match[1]).trim().toLowerCase());
|
|
100
|
+
if (!brand)
|
|
101
|
+
continue;
|
|
102
|
+
if (!GENERIC_BRANDS.has(brand))
|
|
103
|
+
return brand;
|
|
104
|
+
if (brand === "Chrome" || generic === undefined)
|
|
105
|
+
generic = brand;
|
|
106
|
+
}
|
|
107
|
+
return generic;
|
|
108
|
+
}
|
|
109
|
+
function platformFromClientHints(header) {
|
|
110
|
+
if (!header || header.length > MAX_HINT_LENGTH)
|
|
111
|
+
return undefined;
|
|
112
|
+
const match = PLATFORM_PATTERN.exec(header);
|
|
113
|
+
if (!match)
|
|
114
|
+
return undefined;
|
|
115
|
+
return HINT_PLATFORMS.get(unquote(match[1]).trim().toLowerCase());
|
|
116
|
+
}
|
|
117
|
+
function mobileFromClientHints(header) {
|
|
118
|
+
if (header === null)
|
|
119
|
+
return undefined;
|
|
120
|
+
const value = header.trim();
|
|
121
|
+
if (value === "?1")
|
|
122
|
+
return true;
|
|
123
|
+
if (value === "?0")
|
|
124
|
+
return false;
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
function deviceFromClientHints(mobile, platform) {
|
|
128
|
+
if (mobile === undefined)
|
|
129
|
+
return undefined;
|
|
130
|
+
if (mobile)
|
|
131
|
+
return "mobile";
|
|
132
|
+
// Chrome on Android tablets reports `Sec-CH-UA-Mobile: ?0`. The explicit
|
|
133
|
+
// `Sec-CH-UA-Form-Factors` hint is high entropy, so it would need an
|
|
134
|
+
// `Accept-CH` opt-in and a permissions-policy delegation from every tracked
|
|
135
|
+
// site; "Android but not mobile" is the only tablet signal available here.
|
|
136
|
+
if (platform === "Android")
|
|
137
|
+
return "tablet";
|
|
138
|
+
return "desktop";
|
|
139
|
+
}
|
|
140
|
+
function unquote(value) {
|
|
141
|
+
return value.replace(/\\(.)/g, "$1");
|
|
142
|
+
}
|
|
143
|
+
// Self-declared crawlers, link unfurlers, uptime monitors, HTTP libraries, and
|
|
144
|
+
// headless browsers. A URL inside the User-Agent is the crawler convention
|
|
145
|
+
// ("+https://…/bot.html"); no browser ships one. An empty User-Agent is left
|
|
146
|
+
// alone because some runtimes do not expose it at all, and a scripted browser
|
|
147
|
+
// that spoofs a stock User-Agent is indistinguishable from a person here.
|
|
148
|
+
const BOT_PATTERN = /bot|crawl|spider|slurp|headless|phantomjs|lighthouse|pingdom|gtmetrix|uptime|monitor|scrap|fetch|curl\/|wget\/|python|java\/|go-http-client|okhttp|axios|libwww|httpclient|facebookexternalhit|whatsapp|embedly|quora link preview|preview|mediapartners|feedfetcher|validator|https?:\/\//i;
|
|
149
|
+
export function isKnownBot(userAgent) {
|
|
150
|
+
return BOT_PATTERN.test(userAgent);
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=useragent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useragent.js","sourceRoot":"","sources":["../../src/component/useragent.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,6 +43,7 @@ export declare const ingestContextValidator: import("convex/values").VObject<{
|
|
|
43
43
|
latitude?: number | undefined;
|
|
44
44
|
longitude?: number | undefined;
|
|
45
45
|
os?: string | undefined;
|
|
46
|
+
visitorKey?: string | undefined;
|
|
46
47
|
}, {
|
|
47
48
|
country: import("convex/values").VString<string | undefined, "optional">;
|
|
48
49
|
city: import("convex/values").VString<string | undefined, "optional">;
|
|
@@ -51,7 +52,8 @@ export declare const ingestContextValidator: import("convex/values").VObject<{
|
|
|
51
52
|
browser: import("convex/values").VString<string | undefined, "optional">;
|
|
52
53
|
os: import("convex/values").VString<string | undefined, "optional">;
|
|
53
54
|
device: import("convex/values").VString<string | undefined, "optional">;
|
|
54
|
-
|
|
55
|
+
visitorKey: import("convex/values").VString<string | undefined, "optional">;
|
|
56
|
+
}, "required", "browser" | "city" | "country" | "device" | "latitude" | "longitude" | "os" | "visitorKey">;
|
|
55
57
|
export declare const batchedEventValidator: import("convex/values").VObject<{
|
|
56
58
|
affiliateSlug?: string | undefined;
|
|
57
59
|
aggregateCountry?: string | undefined;
|
|
@@ -76,6 +78,7 @@ export declare const batchedEventValidator: import("convex/values").VObject<{
|
|
|
76
78
|
timestamp: number;
|
|
77
79
|
type: "click" | "conversion" | "custom" | "heartbeat" | "outbound" | "pageview";
|
|
78
80
|
visitorId: string;
|
|
81
|
+
visitorKey?: string | undefined;
|
|
79
82
|
}, {
|
|
80
83
|
eventId: import("convex/values").VString<string, "required">;
|
|
81
84
|
sessionId: import("convex/values").VString<string, "required">;
|
|
@@ -99,8 +102,9 @@ export declare const batchedEventValidator: import("convex/values").VObject<{
|
|
|
99
102
|
browser: import("convex/values").VString<string | undefined, "optional">;
|
|
100
103
|
os: import("convex/values").VString<string | undefined, "optional">;
|
|
101
104
|
device: import("convex/values").VString<string | undefined, "optional">;
|
|
105
|
+
visitorKey: import("convex/values").VString<string | undefined, "optional">;
|
|
102
106
|
aggregateCountry: import("convex/values").VString<string | undefined, "optional">;
|
|
103
|
-
}, "required", "affiliateSlug" | "aggregateCountry" | "browser" | "city" | "country" | "currency" | "device" | "eventId" | "href" | "latitude" | "longitude" | "name" | "os" | "path" | "properties" | "referrer" | "revenueCents" | "sequence" | "sessionId" | "target" | "timestamp" | "type" | "visitorId" | `properties.${string}`>;
|
|
107
|
+
}, "required", "affiliateSlug" | "aggregateCountry" | "browser" | "city" | "country" | "currency" | "device" | "eventId" | "href" | "latitude" | "longitude" | "name" | "os" | "path" | "properties" | "referrer" | "revenueCents" | "sequence" | "sessionId" | "target" | "timestamp" | "type" | "visitorId" | "visitorKey" | `properties.${string}`>;
|
|
104
108
|
export declare const siteFieldsValidator: import("convex/values").VObject<{
|
|
105
109
|
cookieless: boolean;
|
|
106
110
|
createdAt: number;
|
|
@@ -152,10 +156,12 @@ export declare const sessionFieldsValidator: import("convex/values").VObject<{
|
|
|
152
156
|
utmMedium?: string | undefined;
|
|
153
157
|
utmSource?: string | undefined;
|
|
154
158
|
visitorId: string;
|
|
159
|
+
visitorKey?: string | undefined;
|
|
155
160
|
}, {
|
|
156
161
|
siteId: import("convex/values").VId<import("convex/values").GenericId<"sites">, "required">;
|
|
157
162
|
sessionId: import("convex/values").VString<string, "required">;
|
|
158
163
|
visitorId: import("convex/values").VString<string, "required">;
|
|
164
|
+
visitorKey: import("convex/values").VString<string | undefined, "optional">;
|
|
159
165
|
startedAt: import("convex/values").VFloat64<number, "required">;
|
|
160
166
|
lastSeenAt: import("convex/values").VFloat64<number, "required">;
|
|
161
167
|
entryPath: import("convex/values").VString<string, "required">;
|
|
@@ -182,7 +188,7 @@ export declare const sessionFieldsValidator: import("convex/values").VObject<{
|
|
|
182
188
|
affiliateId: import("convex/values").VId<import("convex/values").GenericId<"affiliates"> | undefined, "optional">;
|
|
183
189
|
affiliateAttributedAt: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
184
190
|
affiliateExpiresAt: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
185
|
-
}, "required", "affiliateAttributedAt" | "affiliateExpiresAt" | "affiliateId" | "affiliateSlug" | "browser" | "city" | "conversionCount" | "country" | "currency" | "device" | "durationMs" | "entryPath" | "eventCount" | "exitPath" | "lastSeenAt" | "latitude" | "longitude" | "os" | "pageviewCount" | "referrer" | "revenueCents" | "sessionId" | "siteId" | "source" | "startedAt" | "utmCampaign" | "utmMedium" | "utmSource" | "visitorId">;
|
|
191
|
+
}, "required", "affiliateAttributedAt" | "affiliateExpiresAt" | "affiliateId" | "affiliateSlug" | "browser" | "city" | "conversionCount" | "country" | "currency" | "device" | "durationMs" | "entryPath" | "eventCount" | "exitPath" | "lastSeenAt" | "latitude" | "longitude" | "os" | "pageviewCount" | "referrer" | "revenueCents" | "sessionId" | "siteId" | "source" | "startedAt" | "utmCampaign" | "utmMedium" | "utmSource" | "visitorId" | "visitorKey">;
|
|
186
192
|
export declare const eventFieldsValidator: import("convex/values").VObject<{
|
|
187
193
|
affiliateSlug?: string | undefined;
|
|
188
194
|
browser: string;
|
|
@@ -232,15 +238,15 @@ export declare const eventFieldsValidator: import("convex/values").VObject<{
|
|
|
232
238
|
os: import("convex/values").VString<string, "required">;
|
|
233
239
|
device: import("convex/values").VString<string, "required">;
|
|
234
240
|
}, "required", "affiliateSlug" | "browser" | "city" | "country" | "currency" | "device" | "eventId" | "href" | "latitude" | "longitude" | "name" | "os" | "path" | "properties" | "referrer" | "revenueCents" | "sequence" | "sessionId" | "siteId" | "target" | "timestamp" | "type" | "visitorId" | `properties.${string}`>;
|
|
235
|
-
export declare const dimensionTypeValidator: import("convex/values").VUnion<"browser" | "country" | "device" | "event" | "goal" | "page" | "source", [import("convex/values").VLiteral<"source", "required">, import("convex/values").VLiteral<"page", "required">, import("convex/values").VLiteral<"country", "required">, import("convex/values").VLiteral<"device", "required">, import("convex/values").VLiteral<"browser", "required">, import("convex/values").VLiteral<"event", "required">, import("convex/values").VLiteral<"goal", "required">], "required", never>;
|
|
241
|
+
export declare const dimensionTypeValidator: import("convex/values").VUnion<"browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source", [import("convex/values").VLiteral<"source", "required">, import("convex/values").VLiteral<"campaign", "required">, import("convex/values").VLiteral<"page", "required">, import("convex/values").VLiteral<"country", "required">, import("convex/values").VLiteral<"device", "required">, import("convex/values").VLiteral<"browser", "required">, import("convex/values").VLiteral<"event", "required">, import("convex/values").VLiteral<"goal", "required">], "required", never>;
|
|
236
242
|
export declare const dimensionSlotValidator: import("convex/values").VObject<{
|
|
237
243
|
count: number;
|
|
238
244
|
revenueCents: number;
|
|
239
245
|
slot: number;
|
|
240
|
-
type: "browser" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
246
|
+
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
241
247
|
value: string;
|
|
242
248
|
}, {
|
|
243
|
-
type: import("convex/values").VUnion<"browser" | "country" | "device" | "event" | "goal" | "page" | "source", [import("convex/values").VLiteral<"source", "required">, import("convex/values").VLiteral<"page", "required">, import("convex/values").VLiteral<"country", "required">, import("convex/values").VLiteral<"device", "required">, import("convex/values").VLiteral<"browser", "required">, import("convex/values").VLiteral<"event", "required">, import("convex/values").VLiteral<"goal", "required">], "required", never>;
|
|
249
|
+
type: import("convex/values").VUnion<"browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source", [import("convex/values").VLiteral<"source", "required">, import("convex/values").VLiteral<"campaign", "required">, import("convex/values").VLiteral<"page", "required">, import("convex/values").VLiteral<"country", "required">, import("convex/values").VLiteral<"device", "required">, import("convex/values").VLiteral<"browser", "required">, import("convex/values").VLiteral<"event", "required">, import("convex/values").VLiteral<"goal", "required">], "required", never>;
|
|
244
250
|
slot: import("convex/values").VFloat64<number, "required">;
|
|
245
251
|
value: import("convex/values").VString<string, "required">;
|
|
246
252
|
count: import("convex/values").VFloat64<number, "required">;
|
|
@@ -264,7 +270,7 @@ export declare const aggregateFieldsValidator: import("convex/values").VObject<{
|
|
|
264
270
|
count: number;
|
|
265
271
|
revenueCents: number;
|
|
266
272
|
slot: number;
|
|
267
|
-
type: "browser" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
273
|
+
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
268
274
|
value: string;
|
|
269
275
|
}[];
|
|
270
276
|
events: number;
|
|
@@ -310,16 +316,16 @@ export declare const aggregateFieldsValidator: import("convex/values").VObject<{
|
|
|
310
316
|
count: number;
|
|
311
317
|
revenueCents: number;
|
|
312
318
|
slot: number;
|
|
313
|
-
type: "browser" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
319
|
+
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
314
320
|
value: string;
|
|
315
321
|
}[], import("convex/values").VObject<{
|
|
316
322
|
count: number;
|
|
317
323
|
revenueCents: number;
|
|
318
324
|
slot: number;
|
|
319
|
-
type: "browser" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
325
|
+
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source";
|
|
320
326
|
value: string;
|
|
321
327
|
}, {
|
|
322
|
-
type: import("convex/values").VUnion<"browser" | "country" | "device" | "event" | "goal" | "page" | "source", [import("convex/values").VLiteral<"source", "required">, import("convex/values").VLiteral<"page", "required">, import("convex/values").VLiteral<"country", "required">, import("convex/values").VLiteral<"device", "required">, import("convex/values").VLiteral<"browser", "required">, import("convex/values").VLiteral<"event", "required">, import("convex/values").VLiteral<"goal", "required">], "required", never>;
|
|
328
|
+
type: import("convex/values").VUnion<"browser" | "campaign" | "country" | "device" | "event" | "goal" | "page" | "source", [import("convex/values").VLiteral<"source", "required">, import("convex/values").VLiteral<"campaign", "required">, import("convex/values").VLiteral<"page", "required">, import("convex/values").VLiteral<"country", "required">, import("convex/values").VLiteral<"device", "required">, import("convex/values").VLiteral<"browser", "required">, import("convex/values").VLiteral<"event", "required">, import("convex/values").VLiteral<"goal", "required">], "required", never>;
|
|
323
329
|
slot: import("convex/values").VFloat64<number, "required">;
|
|
324
330
|
value: import("convex/values").VString<string, "required">;
|
|
325
331
|
count: import("convex/values").VFloat64<number, "required">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/component/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAK,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AAE9C,eAAO,MAAM,kBAAkB,0dAO9B,CAAC;AAEF,eAAO,MAAM,sBAAsB,0SAKlC,CAAC;AAEF,eAAO,MAAM,wBAAwB,scAGpC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oOAgBhC,CAAC;AAEH,eAAO,MAAM,sBAAsB
|
|
1
|
+
{"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/component/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAK,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AAE9C,eAAO,MAAM,kBAAkB,0dAO9B,CAAC;AAEF,eAAO,MAAM,sBAAsB,0SAKlC,CAAC;AAEF,eAAO,MAAM,wBAAwB,scAGpC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oOAgBhC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;0GASjC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sVAKjC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;iIAU9B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kcA+BjC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6TAwB/B,CAAC;AAEH,eAAO,MAAM,sBAAsB,0kBASlC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;oEAMjC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;qDAIjC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kVAiBnC,CAAC;AAEH,eAAO,MAAM,sBAAsB,8LAGlC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;4HAU9B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;yCAI9B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iHAShC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;6HASnC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;sDAIhC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;yKAWrC,CAAC;AAGH,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC/D,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACjE,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AACrE,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAC3D,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
|
|
@@ -27,6 +27,7 @@ export const ingestContextValidator = v.object({
|
|
|
27
27
|
browser: v.optional(v.string()),
|
|
28
28
|
os: v.optional(v.string()),
|
|
29
29
|
device: v.optional(v.string()),
|
|
30
|
+
visitorKey: v.optional(v.string()),
|
|
30
31
|
});
|
|
31
32
|
export const batchedEventValidator = trackerEventValidator.extend({
|
|
32
33
|
...ingestContextValidator.fields,
|
|
@@ -47,6 +48,7 @@ export const sessionFieldsValidator = v.object({
|
|
|
47
48
|
siteId: v.id("sites"),
|
|
48
49
|
sessionId: v.string(),
|
|
49
50
|
visitorId: v.string(),
|
|
51
|
+
visitorKey: v.optional(v.string()),
|
|
50
52
|
startedAt: v.number(),
|
|
51
53
|
lastSeenAt: v.number(),
|
|
52
54
|
entryPath: v.string(),
|
|
@@ -99,7 +101,7 @@ export const eventFieldsValidator = v.object({
|
|
|
99
101
|
os: v.string(),
|
|
100
102
|
device: v.string(),
|
|
101
103
|
});
|
|
102
|
-
export const dimensionTypeValidator = v.union(v.literal("source"), v.literal("page"), v.literal("country"), v.literal("device"), v.literal("browser"), v.literal("event"), v.literal("goal"));
|
|
104
|
+
export const dimensionTypeValidator = v.union(v.literal("source"), v.literal("campaign"), v.literal("page"), v.literal("country"), v.literal("device"), v.literal("browser"), v.literal("event"), v.literal("goal"));
|
|
103
105
|
export const dimensionSlotValidator = v.object({
|
|
104
106
|
type: dimensionTypeValidator,
|
|
105
107
|
slot: v.number(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/component/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAc,MAAM,eAAe,CAAC;AAE9C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CACvC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EACrB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAClB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EACnB,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EACvB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EACtB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CACtB,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAC3C,CAAC,CAAC,MAAM,EAAE,EACV,CAAC,CAAC,MAAM,EAAE,EACV,CAAC,CAAC,OAAO,EAAE,EACX,CAAC,CAAC,IAAI,EAAE,CACT,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAC9C,CAAC,CAAC,MAAM,EAAE,EACV,sBAAsB,CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC9B,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC5B,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAChD,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACpC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAChC,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CACtC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC/B,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC5B,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACjC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC/B,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/component/validators.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Id } from "./_generated/dataModel.js";
|
|
2
|
+
import { type QueryCtx } from "./_generated/server.js";
|
|
3
|
+
/**
|
|
4
|
+
* Folds an anonymous visitor id into the pseudonymous identity the host
|
|
5
|
+
* supplies after signup or sign-in. Links are one level deep: an alias can
|
|
6
|
+
* belong to one identity, an identity can never become an alias, and an
|
|
7
|
+
* alias can never own aliases, so journeys stay bounded and unambiguous.
|
|
8
|
+
*/
|
|
9
|
+
export declare const link: import("convex/server").RegisteredMutation<"public", {
|
|
10
|
+
previousVisitorId: string;
|
|
11
|
+
siteId: import("convex/values").GenericId<"sites">;
|
|
12
|
+
visitorId: string;
|
|
13
|
+
}, Promise<{
|
|
14
|
+
linked: boolean;
|
|
15
|
+
aliasCount: number;
|
|
16
|
+
}>>;
|
|
17
|
+
/** The identity a visitor id resolves to, followed by every alias it owns. */
|
|
18
|
+
export declare function resolveVisitorIdentities(ctx: QueryCtx, siteId: Id<"sites">, visitorId: string): Promise<string[]>;
|
|
19
|
+
//# sourceMappingURL=visitors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"visitors.d.ts","sourceRoot":"","sources":["../../src/component/visitors.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEjE;;;;;GAKG;AACH,eAAO,MAAM,IAAI;;;;;;;GAiEf,CAAC;AAEH,8EAA8E;AAC9E,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,QAAQ,EACb,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,EAAE,CAAC,CAUnB"}
|