@iann29/rastro 0.4.0 → 0.6.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 +146 -24
- package/agent/integration.md +66 -29
- package/agent/manifest.json +19 -8
- package/agent/manifest.schema.json +28 -9
- package/dist/client/federation.d.ts +38 -8
- package/dist/client/federation.d.ts.map +1 -1
- package/dist/client/federation.js +18 -1
- package/dist/client/federation.js.map +1 -1
- package/dist/client/identity.d.ts +11 -0
- package/dist/client/identity.d.ts.map +1 -0
- package/dist/client/identity.js +123 -0
- package/dist/client/identity.js.map +1 -0
- package/dist/client/index.d.ts +501 -11
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +220 -4
- package/dist/client/index.js.map +1 -1
- package/dist/component/_generated/api.d.ts +8 -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 +158 -1
- package/dist/component/_generated/component.d.ts.map +1 -1
- package/dist/component/constants.d.ts +2 -0
- package/dist/component/constants.d.ts.map +1 -1
- package/dist/component/constants.js +7 -0
- package/dist/component/constants.js.map +1 -1
- package/dist/component/coverage.d.ts +1 -0
- package/dist/component/coverage.d.ts.map +1 -1
- package/dist/component/coverage.js +6 -1
- package/dist/component/coverage.js.map +1 -1
- package/dist/component/eventStore.d.ts +2 -0
- package/dist/component/eventStore.d.ts.map +1 -1
- package/dist/component/http.d.ts.map +1 -1
- package/dist/component/http.js +51 -1
- package/dist/component/http.js.map +1 -1
- package/dist/component/ingest.d.ts +2 -0
- package/dist/component/ingest.d.ts.map +1 -1
- package/dist/component/ingest.js +72 -22
- package/dist/component/ingest.js.map +1 -1
- package/dist/component/origin.d.ts +70 -0
- package/dist/component/origin.d.ts.map +1 -0
- package/dist/component/origin.js +230 -0
- package/dist/component/origin.js.map +1 -0
- package/dist/component/people.d.ts +79 -0
- package/dist/component/people.d.ts.map +1 -0
- package/dist/component/people.js +249 -0
- package/dist/component/people.js.map +1 -0
- package/dist/component/platforms.d.ts +33 -0
- package/dist/component/platforms.d.ts.map +1 -0
- package/dist/component/platforms.js +328 -0
- package/dist/component/platforms.js.map +1 -0
- package/dist/component/reports.d.ts +35 -74
- package/dist/component/reports.d.ts.map +1 -1
- package/dist/component/reports.js +59 -14
- package/dist/component/reports.js.map +1 -1
- package/dist/component/sanitize.d.ts +5 -0
- package/dist/component/sanitize.d.ts.map +1 -1
- package/dist/component/sanitize.js +33 -1
- package/dist/component/sanitize.js.map +1 -1
- package/dist/component/schema.d.ts +101 -7
- package/dist/component/schema.js +45 -1
- package/dist/component/schema.js.map +1 -1
- package/dist/component/trackedLinks.d.ts +91 -0
- package/dist/component/trackedLinks.d.ts.map +1 -0
- package/dist/component/trackedLinks.js +314 -0
- package/dist/component/trackedLinks.js.map +1 -0
- package/dist/component/useragent.d.ts +6 -0
- package/dist/component/useragent.d.ts.map +1 -1
- package/dist/component/useragent.js +9 -0
- package/dist/component/useragent.js.map +1 -1
- package/dist/component/validators.d.ts +101 -11
- package/dist/component/validators.d.ts.map +1 -1
- package/dist/component/validators.js +62 -1
- package/dist/component/validators.js.map +1 -1
- package/dist/component/visitors.d.ts +38 -2
- package/dist/component/visitors.d.ts.map +1 -1
- package/dist/component/visitors.js +162 -42
- package/dist/component/visitors.js.map +1 -1
- package/dist/react/index.d.ts +9 -5
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +36 -5
- package/dist/react/index.js.map +1 -1
- package/dist/tracker/generated.d.ts +6 -6
- package/dist/tracker/generated.d.ts.map +1 -1
- package/dist/tracker/generated.js +6 -6
- package/dist/tracker/generated.js.map +1 -1
- package/dist/tracker/tracker.d.ts +3 -1
- package/dist/tracker/tracker.d.ts.map +1 -1
- package/dist/tracker/tracker.js +56 -5
- package/dist/tracker/tracker.js.map +1 -1
- package/dist/tracker.min.js +1 -1
- package/docs/federation.md +24 -0
- package/docs/identity.md +307 -0
- package/docs/upgrading.md +190 -19
- package/llms.txt +11 -2
- package/package.json +5 -3
- package/src/component/_generated/api.ts +8 -0
- package/src/component/_generated/component.ts +251 -1
- package/src/component/constants.ts +7 -0
- package/src/component/coverage.ts +7 -1
- package/src/component/http.ts +56 -1
- package/src/component/ingest.ts +100 -28
- package/src/component/origin.ts +273 -0
- package/src/component/people.ts +321 -0
- package/src/component/platforms.ts +359 -0
- package/src/component/reports.ts +84 -13
- package/src/component/sanitize.ts +39 -1
- package/src/component/schema.ts +53 -0
- package/src/component/trackedLinks.ts +384 -0
- package/src/component/useragent.ts +11 -0
- package/src/component/validators.ts +120 -0
- package/src/component/visitors.ts +232 -55
- package/src/tracker/generated.ts +6 -6
|
@@ -1,10 +1,61 @@
|
|
|
1
1
|
import { type Infer } from "convex/values";
|
|
2
|
+
export declare const personAttributeValueValidator: import("convex/values").VUnion<string | number | boolean, [import("convex/values").VString<string, "required">, import("convex/values").VFloat64<number, "required">, import("convex/values").VBoolean<boolean, "required">], "required", never>;
|
|
3
|
+
export declare const personAttributesValidator: import("convex/values").VRecord<Record<string, string | number | boolean>, import("convex/values").VString<string, "required">, import("convex/values").VUnion<string | number | boolean, [import("convex/values").VString<string, "required">, import("convex/values").VFloat64<number, "required">, import("convex/values").VBoolean<boolean, "required">], "required", never>, "required", string>;
|
|
4
|
+
export type PersonAttributes = Infer<typeof personAttributesValidator>;
|
|
5
|
+
export declare const personFilterValidator: import("convex/values").VUnion<{
|
|
6
|
+
field: "email" | "name" | "visitorId";
|
|
7
|
+
prefix: string;
|
|
8
|
+
} | {
|
|
9
|
+
field: "attribute";
|
|
10
|
+
key: string;
|
|
11
|
+
value: string | number | boolean;
|
|
12
|
+
}, [import("convex/values").VObject<{
|
|
13
|
+
field: "email" | "name" | "visitorId";
|
|
14
|
+
prefix: string;
|
|
15
|
+
}, {
|
|
16
|
+
field: import("convex/values").VUnion<"email" | "name" | "visitorId", [import("convex/values").VLiteral<"name", "required">, import("convex/values").VLiteral<"email", "required">, import("convex/values").VLiteral<"visitorId", "required">], "required", never>;
|
|
17
|
+
prefix: import("convex/values").VString<string, "required">;
|
|
18
|
+
}, "required", "field" | "prefix">, import("convex/values").VObject<{
|
|
19
|
+
field: "attribute";
|
|
20
|
+
key: string;
|
|
21
|
+
value: string | number | boolean;
|
|
22
|
+
}, {
|
|
23
|
+
field: import("convex/values").VLiteral<"attribute", "required">;
|
|
24
|
+
key: import("convex/values").VString<string, "required">;
|
|
25
|
+
value: import("convex/values").VUnion<string | number | boolean, [import("convex/values").VString<string, "required">, import("convex/values").VFloat64<number, "required">, import("convex/values").VBoolean<boolean, "required">], "required", never>;
|
|
26
|
+
}, "required", "field" | "key" | "value">], "required", "field" | "key" | "prefix" | "value">;
|
|
27
|
+
export type PersonFilter = Infer<typeof personFilterValidator>;
|
|
28
|
+
/** A profile supplied by the product's trusted backend, shared by its visits. */
|
|
29
|
+
export declare const visitorProfileValidator: import("convex/values").VObject<{
|
|
30
|
+
attributes?: Record<string, string | number | boolean> | undefined;
|
|
31
|
+
email?: string | undefined;
|
|
32
|
+
identifiedAt: number;
|
|
33
|
+
name?: string | undefined;
|
|
34
|
+
updatedAt: number;
|
|
35
|
+
visitorId: string;
|
|
36
|
+
}, {
|
|
37
|
+
visitorId: import("convex/values").VString<string, "required">;
|
|
38
|
+
name: import("convex/values").VString<string | undefined, "optional">;
|
|
39
|
+
email: import("convex/values").VString<string | undefined, "optional">;
|
|
40
|
+
attributes: import("convex/values").VRecord<Record<string, string | number | boolean> | undefined, import("convex/values").VString<string, "required">, import("convex/values").VUnion<string | number | boolean, [import("convex/values").VString<string, "required">, import("convex/values").VFloat64<number, "required">, import("convex/values").VBoolean<boolean, "required">], "required", never>, "optional", string>;
|
|
41
|
+
identifiedAt: import("convex/values").VFloat64<number, "required">;
|
|
42
|
+
updatedAt: import("convex/values").VFloat64<number, "required">;
|
|
43
|
+
}, "required", "attributes" | "email" | "identifiedAt" | "name" | "updatedAt" | "visitorId" | `attributes.${string}`>;
|
|
44
|
+
export type VisitorProfile = Infer<typeof visitorProfileValidator>;
|
|
45
|
+
export declare const identifyVisitorFields: {
|
|
46
|
+
visitorId: import("convex/values").VString<string, "required">;
|
|
47
|
+
previousVisitorId: import("convex/values").VString<string | undefined, "optional">;
|
|
48
|
+
name: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VString<string, "required">, import("convex/values").VNull<null, "required">], "optional", never>;
|
|
49
|
+
email: import("convex/values").VUnion<string | null | undefined, [import("convex/values").VString<string, "required">, import("convex/values").VNull<null, "required">], "optional", never>;
|
|
50
|
+
attributes: import("convex/values").VRecord<Record<string, string | number | boolean | null> | undefined, import("convex/values").VString<string, "required">, import("convex/values").VUnion<string | number | boolean | null, [import("convex/values").VUnion<string | number | boolean, [import("convex/values").VString<string, "required">, import("convex/values").VFloat64<number, "required">, import("convex/values").VBoolean<boolean, "required">], "required", never>, import("convex/values").VNull<null, "required">], "required", never>, "optional", string>;
|
|
51
|
+
};
|
|
2
52
|
export declare const eventTypeValidator: import("convex/values").VUnion<"click" | "conversion" | "custom" | "heartbeat" | "leave" | "outbound" | "pageview" | "vital", [import("convex/values").VLiteral<"pageview", "required">, import("convex/values").VLiteral<"click", "required">, import("convex/values").VLiteral<"custom", "required">, import("convex/values").VLiteral<"conversion", "required">, import("convex/values").VLiteral<"heartbeat", "required">, import("convex/values").VLiteral<"leave", "required">, import("convex/values").VLiteral<"outbound", "required">, import("convex/values").VLiteral<"vital", "required">], "required", never>;
|
|
3
53
|
export declare const vitalMetricValidator: import("convex/values").VUnion<"CLS" | "FCP" | "INP" | "LCP" | "TTFB", [import("convex/values").VLiteral<"LCP", "required">, import("convex/values").VLiteral<"CLS", "required">, import("convex/values").VLiteral<"INP", "required">, import("convex/values").VLiteral<"FCP", "required">, import("convex/values").VLiteral<"TTFB", "required">], "required", never>;
|
|
4
54
|
export declare const propertyValueValidator: import("convex/values").VUnion<string | number | boolean | null, [import("convex/values").VString<string, "required">, import("convex/values").VFloat64<number, "required">, import("convex/values").VBoolean<boolean, "required">, import("convex/values").VNull<null, "required">], "required", never>;
|
|
5
55
|
export declare const eventPropertiesValidator: import("convex/values").VRecord<Record<string, string | number | boolean | null>, import("convex/values").VString<string, "required">, import("convex/values").VUnion<string | number | boolean | null, [import("convex/values").VString<string, "required">, import("convex/values").VFloat64<number, "required">, import("convex/values").VBoolean<boolean, "required">, import("convex/values").VNull<null, "required">], "required", never>, "required", string>;
|
|
6
56
|
export declare const trackerEventValidator: import("convex/values").VObject<{
|
|
7
57
|
affiliateSlug?: string | undefined;
|
|
58
|
+
clid?: string[] | undefined;
|
|
8
59
|
currency?: string | undefined;
|
|
9
60
|
eventId: string;
|
|
10
61
|
href?: string | undefined;
|
|
@@ -37,12 +88,14 @@ export declare const trackerEventValidator: import("convex/values").VObject<{
|
|
|
37
88
|
currency: import("convex/values").VString<string | undefined, "optional">;
|
|
38
89
|
affiliateSlug: import("convex/values").VString<string | undefined, "optional">;
|
|
39
90
|
value: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
40
|
-
|
|
91
|
+
clid: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
|
|
92
|
+
}, "required", "affiliateSlug" | "clid" | "currency" | "eventId" | "href" | "name" | "path" | "properties" | "referrer" | "revenueCents" | "sequence" | "sessionId" | "target" | "timestamp" | "type" | "value" | "visitorId" | `properties.${string}`>;
|
|
41
93
|
export declare const ingestContextValidator: import("convex/values").VObject<{
|
|
42
94
|
browser?: string | undefined;
|
|
43
95
|
city?: string | undefined;
|
|
44
96
|
country?: string | undefined;
|
|
45
97
|
device?: string | undefined;
|
|
98
|
+
inApp?: string | undefined;
|
|
46
99
|
latitude?: number | undefined;
|
|
47
100
|
longitude?: number | undefined;
|
|
48
101
|
os?: string | undefined;
|
|
@@ -56,17 +109,22 @@ export declare const ingestContextValidator: import("convex/values").VObject<{
|
|
|
56
109
|
os: import("convex/values").VString<string | undefined, "optional">;
|
|
57
110
|
device: import("convex/values").VString<string | undefined, "optional">;
|
|
58
111
|
visitorKey: import("convex/values").VString<string | undefined, "optional">;
|
|
59
|
-
|
|
112
|
+
inApp: import("convex/values").VString<string | undefined, "optional">;
|
|
113
|
+
}, "required", "browser" | "city" | "country" | "device" | "inApp" | "latitude" | "longitude" | "os" | "visitorKey">;
|
|
114
|
+
export declare const channelValidator: import("convex/values").VUnion<"affiliate" | "ai" | "direct" | "display" | "email" | "messaging" | "offline" | "organic_search" | "organic_social" | "paid_search" | "paid_social" | "referral", [import("convex/values").VLiteral<"direct", "required">, import("convex/values").VLiteral<"organic_search", "required">, import("convex/values").VLiteral<"paid_search", "required">, import("convex/values").VLiteral<"organic_social", "required">, import("convex/values").VLiteral<"paid_social", "required">, import("convex/values").VLiteral<"messaging", "required">, import("convex/values").VLiteral<"email", "required">, import("convex/values").VLiteral<"affiliate", "required">, import("convex/values").VLiteral<"ai", "required">, import("convex/values").VLiteral<"display", "required">, import("convex/values").VLiteral<"referral", "required">, import("convex/values").VLiteral<"offline", "required">], "required", never>;
|
|
115
|
+
export declare const evidenceValidator: import("convex/values").VUnion<"affiliate" | "clickId" | "inApp" | "legacy" | "none" | "referrer" | "utm", [import("convex/values").VLiteral<"utm", "required">, import("convex/values").VLiteral<"clickId", "required">, import("convex/values").VLiteral<"referrer", "required">, import("convex/values").VLiteral<"inApp", "required">, import("convex/values").VLiteral<"affiliate", "required">, import("convex/values").VLiteral<"none", "required">, import("convex/values").VLiteral<"legacy", "required">], "required", never>;
|
|
60
116
|
export declare const batchedEventValidator: import("convex/values").VObject<{
|
|
61
117
|
affiliateSlug?: string | undefined;
|
|
62
118
|
aggregateCountry?: string | undefined;
|
|
63
119
|
browser?: string | undefined;
|
|
64
120
|
city?: string | undefined;
|
|
121
|
+
clid?: string[] | undefined;
|
|
65
122
|
country?: string | undefined;
|
|
66
123
|
currency?: string | undefined;
|
|
67
124
|
device?: string | undefined;
|
|
68
125
|
eventId: string;
|
|
69
126
|
href?: string | undefined;
|
|
127
|
+
inApp?: string | undefined;
|
|
70
128
|
latitude?: number | undefined;
|
|
71
129
|
longitude?: number | undefined;
|
|
72
130
|
name?: string | undefined;
|
|
@@ -100,6 +158,7 @@ export declare const batchedEventValidator: import("convex/values").VObject<{
|
|
|
100
158
|
currency: import("convex/values").VString<string | undefined, "optional">;
|
|
101
159
|
affiliateSlug: import("convex/values").VString<string | undefined, "optional">;
|
|
102
160
|
value: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
161
|
+
clid: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
|
|
103
162
|
country: import("convex/values").VString<string | undefined, "optional">;
|
|
104
163
|
city: import("convex/values").VString<string | undefined, "optional">;
|
|
105
164
|
latitude: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
@@ -108,8 +167,9 @@ export declare const batchedEventValidator: import("convex/values").VObject<{
|
|
|
108
167
|
os: import("convex/values").VString<string | undefined, "optional">;
|
|
109
168
|
device: import("convex/values").VString<string | undefined, "optional">;
|
|
110
169
|
visitorKey: import("convex/values").VString<string | undefined, "optional">;
|
|
170
|
+
inApp: import("convex/values").VString<string | undefined, "optional">;
|
|
111
171
|
aggregateCountry: import("convex/values").VString<string | undefined, "optional">;
|
|
112
|
-
}, "required", "affiliateSlug" | "aggregateCountry" | "browser" | "city" | "country" | "currency" | "device" | "eventId" | "href" | "latitude" | "longitude" | "name" | "os" | "path" | "properties" | "referrer" | "revenueCents" | "sequence" | "sessionId" | "target" | "timestamp" | "type" | "value" | "visitorId" | "visitorKey" | `properties.${string}`>;
|
|
172
|
+
}, "required", "affiliateSlug" | "aggregateCountry" | "browser" | "city" | "clid" | "country" | "currency" | "device" | "eventId" | "href" | "inApp" | "latitude" | "longitude" | "name" | "os" | "path" | "properties" | "referrer" | "revenueCents" | "sequence" | "sessionId" | "target" | "timestamp" | "type" | "value" | "visitorId" | "visitorKey" | `properties.${string}`>;
|
|
113
173
|
export declare const siteFieldsValidator: import("convex/values").VObject<{
|
|
114
174
|
cookieless: boolean;
|
|
115
175
|
createdAt: number;
|
|
@@ -137,6 +197,7 @@ export declare const sessionFieldsValidator: import("convex/values").VObject<{
|
|
|
137
197
|
affiliateId?: import("convex/values").GenericId<"affiliates"> | undefined;
|
|
138
198
|
affiliateSlug?: string | undefined;
|
|
139
199
|
browser: string;
|
|
200
|
+
channel?: "affiliate" | "ai" | "direct" | "display" | "email" | "messaging" | "offline" | "organic_search" | "organic_social" | "paid_search" | "paid_social" | "referral" | undefined;
|
|
140
201
|
city?: string | undefined;
|
|
141
202
|
conversionCount: number;
|
|
142
203
|
country?: string | undefined;
|
|
@@ -145,6 +206,7 @@ export declare const sessionFieldsValidator: import("convex/values").VObject<{
|
|
|
145
206
|
durationMs: number;
|
|
146
207
|
entryPath: string;
|
|
147
208
|
eventCount: number;
|
|
209
|
+
evidence?: "affiliate" | "clickId" | "inApp" | "legacy" | "none" | "referrer" | "utm" | undefined;
|
|
148
210
|
exitPath: string;
|
|
149
211
|
lastSeenAt: number;
|
|
150
212
|
latitude?: number | undefined;
|
|
@@ -152,6 +214,7 @@ export declare const sessionFieldsValidator: import("convex/values").VObject<{
|
|
|
152
214
|
newVisitor?: boolean | undefined;
|
|
153
215
|
os: string;
|
|
154
216
|
pageviewCount: number;
|
|
217
|
+
platform?: string | undefined;
|
|
155
218
|
referrer?: string | undefined;
|
|
156
219
|
revenueCents: number;
|
|
157
220
|
sessionId: string;
|
|
@@ -175,6 +238,9 @@ export declare const sessionFieldsValidator: import("convex/values").VObject<{
|
|
|
175
238
|
exitPath: import("convex/values").VString<string, "required">;
|
|
176
239
|
referrer: import("convex/values").VString<string | undefined, "optional">;
|
|
177
240
|
source: import("convex/values").VString<string, "required">;
|
|
241
|
+
platform: import("convex/values").VString<string | undefined, "optional">;
|
|
242
|
+
channel: import("convex/values").VUnion<"affiliate" | "ai" | "direct" | "display" | "email" | "messaging" | "offline" | "organic_search" | "organic_social" | "paid_search" | "paid_social" | "referral" | undefined, [import("convex/values").VLiteral<"direct", "required">, import("convex/values").VLiteral<"organic_search", "required">, import("convex/values").VLiteral<"paid_search", "required">, import("convex/values").VLiteral<"organic_social", "required">, import("convex/values").VLiteral<"paid_social", "required">, import("convex/values").VLiteral<"messaging", "required">, import("convex/values").VLiteral<"email", "required">, import("convex/values").VLiteral<"affiliate", "required">, import("convex/values").VLiteral<"ai", "required">, import("convex/values").VLiteral<"display", "required">, import("convex/values").VLiteral<"referral", "required">, import("convex/values").VLiteral<"offline", "required">], "optional", never>;
|
|
243
|
+
evidence: import("convex/values").VUnion<"affiliate" | "clickId" | "inApp" | "legacy" | "none" | "referrer" | "utm" | undefined, [import("convex/values").VLiteral<"utm", "required">, import("convex/values").VLiteral<"clickId", "required">, import("convex/values").VLiteral<"referrer", "required">, import("convex/values").VLiteral<"inApp", "required">, import("convex/values").VLiteral<"affiliate", "required">, import("convex/values").VLiteral<"none", "required">, import("convex/values").VLiteral<"legacy", "required">], "optional", never>;
|
|
178
244
|
utmSource: import("convex/values").VString<string | undefined, "optional">;
|
|
179
245
|
utmMedium: import("convex/values").VString<string | undefined, "optional">;
|
|
180
246
|
utmCampaign: import("convex/values").VString<string | undefined, "optional">;
|
|
@@ -195,7 +261,7 @@ export declare const sessionFieldsValidator: import("convex/values").VObject<{
|
|
|
195
261
|
affiliateId: import("convex/values").VId<import("convex/values").GenericId<"affiliates"> | undefined, "optional">;
|
|
196
262
|
affiliateAttributedAt: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
197
263
|
affiliateExpiresAt: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
198
|
-
}, "required", "affiliateAttributedAt" | "affiliateExpiresAt" | "affiliateId" | "affiliateSlug" | "browser" | "city" | "conversionCount" | "country" | "currency" | "device" | "durationMs" | "entryPath" | "eventCount" | "exitPath" | "lastSeenAt" | "latitude" | "longitude" | "newVisitor" | "os" | "pageviewCount" | "referrer" | "revenueCents" | "sessionId" | "siteId" | "source" | "startedAt" | "utmCampaign" | "utmMedium" | "utmSource" | "visitorId" | "visitorKey">;
|
|
264
|
+
}, "required", "affiliateAttributedAt" | "affiliateExpiresAt" | "affiliateId" | "affiliateSlug" | "browser" | "channel" | "city" | "conversionCount" | "country" | "currency" | "device" | "durationMs" | "entryPath" | "eventCount" | "evidence" | "exitPath" | "lastSeenAt" | "latitude" | "longitude" | "newVisitor" | "os" | "pageviewCount" | "platform" | "referrer" | "revenueCents" | "sessionId" | "siteId" | "source" | "startedAt" | "utmCampaign" | "utmMedium" | "utmSource" | "visitorId" | "visitorKey">;
|
|
199
265
|
export declare const eventFieldsValidator: import("convex/values").VObject<{
|
|
200
266
|
affiliateSlug?: string | undefined;
|
|
201
267
|
browser: string;
|
|
@@ -245,17 +311,17 @@ export declare const eventFieldsValidator: import("convex/values").VObject<{
|
|
|
245
311
|
os: import("convex/values").VString<string, "required">;
|
|
246
312
|
device: import("convex/values").VString<string, "required">;
|
|
247
313
|
}, "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}`>;
|
|
248
|
-
export declare const dimensionTypeValidator: import("convex/values").VUnion<"browser" | "campaign" | "country" | "device" | "event" | "goal" | "medium" | "outbound" | "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">, import("convex/values").VLiteral<"medium", "required">, import("convex/values").VLiteral<"outbound", "required">], "required", never>;
|
|
314
|
+
export declare const dimensionTypeValidator: import("convex/values").VUnion<"browser" | "campaign" | "channel" | "country" | "device" | "event" | "evidence" | "goal" | "medium" | "outbound" | "page" | "platform" | "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">, import("convex/values").VLiteral<"medium", "required">, import("convex/values").VLiteral<"outbound", "required">, import("convex/values").VLiteral<"platform", "required">, import("convex/values").VLiteral<"channel", "required">, import("convex/values").VLiteral<"evidence", "required">], "required", never>;
|
|
249
315
|
export declare const dimensionSlotValidator: import("convex/values").VObject<{
|
|
250
316
|
count: number;
|
|
251
317
|
pageviews?: number | undefined;
|
|
252
318
|
revenueCents: number;
|
|
253
319
|
sessions?: number | undefined;
|
|
254
320
|
slot: number;
|
|
255
|
-
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "medium" | "outbound" | "page" | "source";
|
|
321
|
+
type: "browser" | "campaign" | "channel" | "country" | "device" | "event" | "evidence" | "goal" | "medium" | "outbound" | "page" | "platform" | "source";
|
|
256
322
|
value: string;
|
|
257
323
|
}, {
|
|
258
|
-
type: import("convex/values").VUnion<"browser" | "campaign" | "country" | "device" | "event" | "goal" | "medium" | "outbound" | "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">, import("convex/values").VLiteral<"medium", "required">, import("convex/values").VLiteral<"outbound", "required">], "required", never>;
|
|
324
|
+
type: import("convex/values").VUnion<"browser" | "campaign" | "channel" | "country" | "device" | "event" | "evidence" | "goal" | "medium" | "outbound" | "page" | "platform" | "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">, import("convex/values").VLiteral<"medium", "required">, import("convex/values").VLiteral<"outbound", "required">, import("convex/values").VLiteral<"platform", "required">, import("convex/values").VLiteral<"channel", "required">, import("convex/values").VLiteral<"evidence", "required">], "required", never>;
|
|
259
325
|
slot: import("convex/values").VFloat64<number, "required">;
|
|
260
326
|
value: import("convex/values").VString<string, "required">;
|
|
261
327
|
count: import("convex/values").VFloat64<number, "required">;
|
|
@@ -285,7 +351,7 @@ export declare const aggregateFieldsValidator: import("convex/values").VObject<{
|
|
|
285
351
|
revenueCents: number;
|
|
286
352
|
sessions?: number | undefined;
|
|
287
353
|
slot: number;
|
|
288
|
-
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "medium" | "outbound" | "page" | "source";
|
|
354
|
+
type: "browser" | "campaign" | "channel" | "country" | "device" | "event" | "evidence" | "goal" | "medium" | "outbound" | "page" | "platform" | "source";
|
|
289
355
|
value: string;
|
|
290
356
|
}[];
|
|
291
357
|
durationMs?: number | undefined;
|
|
@@ -335,7 +401,7 @@ export declare const aggregateFieldsValidator: import("convex/values").VObject<{
|
|
|
335
401
|
revenueCents: number;
|
|
336
402
|
sessions?: number | undefined;
|
|
337
403
|
slot: number;
|
|
338
|
-
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "medium" | "outbound" | "page" | "source";
|
|
404
|
+
type: "browser" | "campaign" | "channel" | "country" | "device" | "event" | "evidence" | "goal" | "medium" | "outbound" | "page" | "platform" | "source";
|
|
339
405
|
value: string;
|
|
340
406
|
}[], import("convex/values").VObject<{
|
|
341
407
|
count: number;
|
|
@@ -343,10 +409,10 @@ export declare const aggregateFieldsValidator: import("convex/values").VObject<{
|
|
|
343
409
|
revenueCents: number;
|
|
344
410
|
sessions?: number | undefined;
|
|
345
411
|
slot: number;
|
|
346
|
-
type: "browser" | "campaign" | "country" | "device" | "event" | "goal" | "medium" | "outbound" | "page" | "source";
|
|
412
|
+
type: "browser" | "campaign" | "channel" | "country" | "device" | "event" | "evidence" | "goal" | "medium" | "outbound" | "page" | "platform" | "source";
|
|
347
413
|
value: string;
|
|
348
414
|
}, {
|
|
349
|
-
type: import("convex/values").VUnion<"browser" | "campaign" | "country" | "device" | "event" | "goal" | "medium" | "outbound" | "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">, import("convex/values").VLiteral<"medium", "required">, import("convex/values").VLiteral<"outbound", "required">], "required", never>;
|
|
415
|
+
type: import("convex/values").VUnion<"browser" | "campaign" | "channel" | "country" | "device" | "event" | "evidence" | "goal" | "medium" | "outbound" | "page" | "platform" | "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">, import("convex/values").VLiteral<"medium", "required">, import("convex/values").VLiteral<"outbound", "required">, import("convex/values").VLiteral<"platform", "required">, import("convex/values").VLiteral<"channel", "required">, import("convex/values").VLiteral<"evidence", "required">], "required", never>;
|
|
350
416
|
slot: import("convex/values").VFloat64<number, "required">;
|
|
351
417
|
value: import("convex/values").VString<string, "required">;
|
|
352
418
|
count: import("convex/values").VFloat64<number, "required">;
|
|
@@ -443,6 +509,28 @@ export declare const affiliateFieldsValidator: import("convex/values").VObject<{
|
|
|
443
509
|
createdAt: import("convex/values").VFloat64<number, "required">;
|
|
444
510
|
updatedAt: import("convex/values").VFloat64<number, "required">;
|
|
445
511
|
}, "required", "active" | "attributionWindowDays" | "commissionBps" | "createdAt" | "name" | "siteId" | "slug" | "updatedAt">;
|
|
512
|
+
export declare const trackedLinkChannelValidator: import("convex/values").VUnion<"affiliate" | "display" | "email" | "messaging" | "offline" | "organic_social" | "paid_social" | "referral", [import("convex/values").VLiteral<"organic_social", "required">, import("convex/values").VLiteral<"paid_social", "required">, import("convex/values").VLiteral<"messaging", "required">, import("convex/values").VLiteral<"email", "required">, import("convex/values").VLiteral<"affiliate", "required">, import("convex/values").VLiteral<"display", "required">, import("convex/values").VLiteral<"referral", "required">, import("convex/values").VLiteral<"offline", "required">], "required", never>;
|
|
513
|
+
export declare const trackedLinkFieldsValidator: import("convex/values").VObject<{
|
|
514
|
+
campaign?: string | undefined;
|
|
515
|
+
channel: "affiliate" | "display" | "email" | "messaging" | "offline" | "organic_social" | "paid_social" | "referral";
|
|
516
|
+
createdAt: number;
|
|
517
|
+
createdBy: string;
|
|
518
|
+
destination: string;
|
|
519
|
+
disabledAt?: number | undefined;
|
|
520
|
+
platform: string;
|
|
521
|
+
siteId: import("convex/values").GenericId<"sites">;
|
|
522
|
+
slug: string;
|
|
523
|
+
}, {
|
|
524
|
+
siteId: import("convex/values").VId<import("convex/values").GenericId<"sites">, "required">;
|
|
525
|
+
slug: import("convex/values").VString<string, "required">;
|
|
526
|
+
destination: import("convex/values").VString<string, "required">;
|
|
527
|
+
platform: import("convex/values").VString<string, "required">;
|
|
528
|
+
channel: import("convex/values").VUnion<"affiliate" | "display" | "email" | "messaging" | "offline" | "organic_social" | "paid_social" | "referral", [import("convex/values").VLiteral<"organic_social", "required">, import("convex/values").VLiteral<"paid_social", "required">, import("convex/values").VLiteral<"messaging", "required">, import("convex/values").VLiteral<"email", "required">, import("convex/values").VLiteral<"affiliate", "required">, import("convex/values").VLiteral<"display", "required">, import("convex/values").VLiteral<"referral", "required">, import("convex/values").VLiteral<"offline", "required">], "required", never>;
|
|
529
|
+
campaign: import("convex/values").VString<string | undefined, "optional">;
|
|
530
|
+
createdAt: import("convex/values").VFloat64<number, "required">;
|
|
531
|
+
createdBy: import("convex/values").VString<string, "required">;
|
|
532
|
+
disabledAt: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
533
|
+
}, "required", "campaign" | "channel" | "createdAt" | "createdBy" | "destination" | "disabledAt" | "platform" | "siteId" | "slug">;
|
|
446
534
|
export declare const ingestResultValidator: import("convex/values").VObject<{
|
|
447
535
|
accepted: number;
|
|
448
536
|
duplicates: number;
|
|
@@ -480,4 +568,6 @@ export type IngestContext = Infer<typeof ingestContextValidator>;
|
|
|
480
568
|
export type EventProperties = Infer<typeof eventPropertiesValidator>;
|
|
481
569
|
export type FunnelStep = Infer<typeof funnelStepValidator>;
|
|
482
570
|
export type EventType = Infer<typeof eventTypeValidator>;
|
|
571
|
+
export type Channel = Infer<typeof channelValidator>;
|
|
572
|
+
export type Evidence = Infer<typeof evidenceValidator>;
|
|
483
573
|
//# sourceMappingURL=validators.d.ts.map
|
|
@@ -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,4lBAS9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,uWAMhC,CAAC;AAEF,eAAO,MAAM,sBAAsB,0SAKlC,CAAC;AAEF,eAAO,MAAM,wBAAwB,scAGpC,CAAC;AAEF,eAAO,MAAM,qBAAqB
|
|
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,6BAA6B,kPAIzC,CAAC;AACF,eAAO,MAAM,yBAAyB,uYAGrC,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AACvE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;6FAcjC,CAAC;AACF,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE/D,iFAAiF;AACjF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;qHAOlC,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAEnE,eAAO,MAAM,qBAAqB;IAChC,SAAS;IACT,iBAAiB;IAEjB,IAAI;IACJ,KAAK;IACL,UAAU;CAGX,CAAC;AAEF,eAAO,MAAM,kBAAkB,4lBAS9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,uWAMhC,CAAC;AAEF,eAAO,MAAM,sBAAsB,0SAKlC,CAAC;AAEF,eAAO,MAAM,wBAAwB,scAGpC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uPAsBhC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;oHAYjC,CAAC;AAKH,eAAO,MAAM,gBAAgB,s5BAe5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,ygBAQ7B,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mXAGhC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;iIAU9B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ufAsCjC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6TAwB/B,CAAC;AAEH,eAAO,MAAM,sBAAsB,u6BAiBlC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;+FAWjC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;qDAIjC,CAAC;AAEH,eAAO,MAAM,6BAA6B,uPAMzC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uYAuBnC,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;AAIH,eAAO,MAAM,2BAA2B,wnBASvC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;kIAUrC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;sDAIhC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;yKAWrC,CAAC;AAEH,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;AACzD,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACrD,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
|
|
@@ -1,4 +1,31 @@
|
|
|
1
1
|
import { v } from "convex/values";
|
|
2
|
+
export const personAttributeValueValidator = v.union(v.string(), v.number(), v.boolean());
|
|
3
|
+
export const personAttributesValidator = v.record(v.string(), personAttributeValueValidator);
|
|
4
|
+
export const personFilterValidator = v.union(v.object({
|
|
5
|
+
field: v.union(v.literal("name"), v.literal("email"), v.literal("visitorId")),
|
|
6
|
+
prefix: v.string(),
|
|
7
|
+
}), v.object({
|
|
8
|
+
field: v.literal("attribute"),
|
|
9
|
+
key: v.string(),
|
|
10
|
+
value: personAttributeValueValidator,
|
|
11
|
+
}));
|
|
12
|
+
/** A profile supplied by the product's trusted backend, shared by its visits. */
|
|
13
|
+
export const visitorProfileValidator = v.object({
|
|
14
|
+
visitorId: v.string(),
|
|
15
|
+
name: v.optional(v.string()),
|
|
16
|
+
email: v.optional(v.string()),
|
|
17
|
+
attributes: v.optional(personAttributesValidator),
|
|
18
|
+
identifiedAt: v.number(),
|
|
19
|
+
updatedAt: v.number(),
|
|
20
|
+
});
|
|
21
|
+
export const identifyVisitorFields = {
|
|
22
|
+
visitorId: v.string(),
|
|
23
|
+
previousVisitorId: v.optional(v.string()),
|
|
24
|
+
// Omission preserves the value; null explicitly removes it.
|
|
25
|
+
name: v.optional(v.union(v.string(), v.null())),
|
|
26
|
+
email: v.optional(v.union(v.string(), v.null())),
|
|
27
|
+
attributes: v.optional(v.record(v.string(), v.union(personAttributeValueValidator, v.null()))),
|
|
28
|
+
};
|
|
2
29
|
export const eventTypeValidator = v.union(v.literal("pageview"), v.literal("click"), v.literal("custom"), v.literal("conversion"), v.literal("heartbeat"), v.literal("leave"), v.literal("outbound"), v.literal("vital"));
|
|
3
30
|
export const vitalMetricValidator = v.union(v.literal("LCP"), v.literal("CLS"), v.literal("INP"), v.literal("FCP"), v.literal("TTFB"));
|
|
4
31
|
export const propertyValueValidator = v.union(v.string(), v.number(), v.boolean(), v.null());
|
|
@@ -22,6 +49,9 @@ export const trackerEventValidator = v.object({
|
|
|
22
49
|
// Web Vitals measurement: milliseconds, or CLS scaled by 1000. Only "vital"
|
|
23
50
|
// events carry it; sanitization strips it from every other type.
|
|
24
51
|
value: v.optional(v.number()),
|
|
52
|
+
// The names of the click-ID keys on the landing URL (`fbclid`, `gclid`…),
|
|
53
|
+
// never their values; sanitization keeps only the known ones (origin.ts).
|
|
54
|
+
clid: v.optional(v.array(v.string())),
|
|
25
55
|
});
|
|
26
56
|
export const ingestContextValidator = v.object({
|
|
27
57
|
country: v.optional(v.string()),
|
|
@@ -32,7 +62,18 @@ export const ingestContextValidator = v.object({
|
|
|
32
62
|
os: v.optional(v.string()),
|
|
33
63
|
device: v.optional(v.string()),
|
|
34
64
|
visitorKey: v.optional(v.string()),
|
|
65
|
+
// The platform whose in-app browser sent the batch (useragent.ts), derived
|
|
66
|
+
// by the HTTP action so the raw User-Agent never reaches a mutation.
|
|
67
|
+
inApp: v.optional(v.string()),
|
|
35
68
|
});
|
|
69
|
+
// How a session arrived (channel) and which rule proved it (evidence); see
|
|
70
|
+
// origin.ts. "legacy" is never stored: reports mark a session recorded before
|
|
71
|
+
// origins existed with it when they classify that session on read.
|
|
72
|
+
export const channelValidator = v.union(v.literal("direct"), v.literal("organic_search"), v.literal("paid_search"), v.literal("organic_social"), v.literal("paid_social"), v.literal("messaging"), v.literal("email"), v.literal("affiliate"), v.literal("ai"), v.literal("display"), v.literal("referral"),
|
|
73
|
+
// A link printed off the web: a QR code, a flyer, a receipt. Only a tracked
|
|
74
|
+
// link can say so, since the scan itself carries no referrer.
|
|
75
|
+
v.literal("offline"));
|
|
76
|
+
export const evidenceValidator = v.union(v.literal("utm"), v.literal("clickId"), v.literal("referrer"), v.literal("inApp"), v.literal("affiliate"), v.literal("none"), v.literal("legacy"));
|
|
36
77
|
export const batchedEventValidator = trackerEventValidator.extend({
|
|
37
78
|
...ingestContextValidator.fields,
|
|
38
79
|
aggregateCountry: v.optional(v.string()),
|
|
@@ -62,6 +103,10 @@ export const sessionFieldsValidator = v.object({
|
|
|
62
103
|
exitPath: v.string(),
|
|
63
104
|
referrer: v.optional(v.string()),
|
|
64
105
|
source: v.string(),
|
|
106
|
+
// The first touch's origin (origin.ts); absent on sessions recorded before.
|
|
107
|
+
platform: v.optional(v.string()),
|
|
108
|
+
channel: v.optional(channelValidator),
|
|
109
|
+
evidence: v.optional(evidenceValidator),
|
|
65
110
|
utmSource: v.optional(v.string()),
|
|
66
111
|
utmMedium: v.optional(v.string()),
|
|
67
112
|
utmCampaign: v.optional(v.string()),
|
|
@@ -111,7 +156,9 @@ export const eventFieldsValidator = v.object({
|
|
|
111
156
|
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"),
|
|
112
157
|
// Since 0.1.0: the lowercase utm_medium of the session, and the destination
|
|
113
158
|
// host of an outbound click (never its path).
|
|
114
|
-
v.literal("medium"), v.literal("outbound")
|
|
159
|
+
v.literal("medium"), v.literal("outbound"),
|
|
160
|
+
// The session's origin platform, channel and evidence (origin.ts).
|
|
161
|
+
v.literal("platform"), v.literal("channel"), v.literal("evidence"));
|
|
115
162
|
export const dimensionSlotValidator = v.object({
|
|
116
163
|
type: dimensionTypeValidator,
|
|
117
164
|
slot: v.number(),
|
|
@@ -194,6 +241,20 @@ export const affiliateFieldsValidator = v.object({
|
|
|
194
241
|
createdAt: v.number(),
|
|
195
242
|
updatedAt: v.number(),
|
|
196
243
|
});
|
|
244
|
+
// Where a tracked link was published: chosen at creation and carried to the
|
|
245
|
+
// landing page as its utm_medium.
|
|
246
|
+
export const trackedLinkChannelValidator = v.union(v.literal("organic_social"), v.literal("paid_social"), v.literal("messaging"), v.literal("email"), v.literal("affiliate"), v.literal("display"), v.literal("referral"), v.literal("offline"));
|
|
247
|
+
export const trackedLinkFieldsValidator = v.object({
|
|
248
|
+
siteId: v.id("sites"),
|
|
249
|
+
slug: v.string(),
|
|
250
|
+
destination: v.string(),
|
|
251
|
+
platform: v.string(),
|
|
252
|
+
channel: trackedLinkChannelValidator,
|
|
253
|
+
campaign: v.optional(v.string()),
|
|
254
|
+
createdAt: v.number(),
|
|
255
|
+
createdBy: v.string(),
|
|
256
|
+
disabledAt: v.optional(v.number()),
|
|
257
|
+
});
|
|
197
258
|
export const ingestResultValidator = v.object({
|
|
198
259
|
accepted: v.number(),
|
|
199
260
|
duplicates: v.number(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/component/validators.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/component/validators.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Id } from "./_generated/dataModel.js";
|
|
2
2
|
import { type QueryCtx } from "./_generated/server.js";
|
|
3
|
+
import { type VisitorProfile } from "./validators.js";
|
|
3
4
|
/**
|
|
4
5
|
* Folds an anonymous visitor id into the pseudonymous identity the host
|
|
5
6
|
* supplies after signup or sign-in. Links are one level deep: an alias can
|
|
@@ -7,13 +8,48 @@ import { type QueryCtx } from "./_generated/server.js";
|
|
|
7
8
|
* alias can never own aliases, so journeys stay bounded and unambiguous.
|
|
8
9
|
*/
|
|
9
10
|
export declare const link: import("convex/server").RegisteredMutation<"public", {
|
|
10
|
-
|
|
11
|
-
siteId: import("convex/values").GenericId<"sites">;
|
|
11
|
+
siteId: Id<"sites">;
|
|
12
12
|
visitorId: string;
|
|
13
|
+
previousVisitorId: string;
|
|
13
14
|
}, Promise<{
|
|
14
15
|
linked: boolean;
|
|
15
16
|
aliasCount: number;
|
|
16
17
|
}>>;
|
|
18
|
+
/** Upsert a person and link the pre-login visit in the same transaction. */
|
|
19
|
+
export declare const identify: import("convex/server").RegisteredMutation<"public", {
|
|
20
|
+
attributes?: Record<string, string | number | boolean | null> | undefined;
|
|
21
|
+
email?: string | null | undefined;
|
|
22
|
+
name?: string | null | undefined;
|
|
23
|
+
previousVisitorId?: string | undefined;
|
|
24
|
+
siteId: import("convex/values").GenericId<"sites">;
|
|
25
|
+
visitorId: string;
|
|
26
|
+
}, Promise<{
|
|
27
|
+
visitorId: string;
|
|
28
|
+
name?: string | undefined;
|
|
29
|
+
email?: string | undefined;
|
|
30
|
+
attributes?: Record<string, string | number | boolean> | undefined;
|
|
31
|
+
identifiedAt: number;
|
|
32
|
+
updatedAt: number;
|
|
33
|
+
}>>;
|
|
34
|
+
export declare const getProfile: import("convex/server").RegisteredQuery<"public", {
|
|
35
|
+
siteId: import("convex/values").GenericId<"sites">;
|
|
36
|
+
visitorId: string;
|
|
37
|
+
}, Promise<{
|
|
38
|
+
attributes?: Record<string, string | number | boolean> | undefined;
|
|
39
|
+
email?: string | undefined;
|
|
40
|
+
identifiedAt: number;
|
|
41
|
+
name?: string | undefined;
|
|
42
|
+
updatedAt: number;
|
|
43
|
+
visitorId: string;
|
|
44
|
+
} | null>>;
|
|
45
|
+
export declare function readVisitorProfile(ctx: QueryCtx, siteId: Id<"sites">, visitorId: string): Promise<VisitorProfile | null>;
|
|
46
|
+
/** Enrich a bounded report page; repeated sessions share one indexed lookup. */
|
|
47
|
+
export declare function withVisitorProfiles<Row extends {
|
|
48
|
+
siteId: Id<"sites">;
|
|
49
|
+
visitorId: string;
|
|
50
|
+
}>(ctx: QueryCtx, rows: Row[]): Promise<Array<Row & {
|
|
51
|
+
profile?: VisitorProfile;
|
|
52
|
+
}>>;
|
|
17
53
|
/** The identity a visitor id resolves to, followed by every alias it owns. */
|
|
18
54
|
export declare function resolveVisitorIdentities(ctx: QueryCtx, siteId: Id<"sites">, visitorId: string): Promise<string[]>;
|
|
19
55
|
//# sourceMappingURL=visitors.d.ts.map
|
|
@@ -1 +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;
|
|
1
|
+
{"version":3,"file":"visitors.d.ts","sourceRoot":"","sources":["../../src/component/visitors.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,2BAA2B,CAAC;AAOpD,OAAO,EAIL,KAAK,QAAQ,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAC;AAEzB;;;;;GAKG;AACH,eAAO,MAAM,IAAI;YAaL,EAAE,CAAC,OAAO,CAAC;eACR,MAAM;uBACE,MAAM;;;;GAP3B,CAAC;AAgFH,4EAA4E;AAC5E,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;GAkFnB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;;;;;;;UAKrB,CAAC;AAuBH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,QAAQ,EACb,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAMhC;AAED,gFAAgF;AAChF,wBAAsB,mBAAmB,CACvC,GAAG,SAAS;IAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAEtD,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,GAAG,EAAE,GACV,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG;IAAE,OAAO,CAAC,EAAE,cAAc,CAAA;CAAE,CAAC,CAAC,CAcpD;AAED,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"}
|