@iann29/rastro 0.1.0-alpha.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.
Files changed (126) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +352 -0
  3. package/assets/rastro-live-atlas.png +0 -0
  4. package/dist/client/_generated/_ignore.d.ts +1 -0
  5. package/dist/client/_generated/_ignore.d.ts.map +1 -0
  6. package/dist/client/_generated/_ignore.js +3 -0
  7. package/dist/client/_generated/_ignore.js.map +1 -0
  8. package/dist/client/index.d.ts +960 -0
  9. package/dist/client/index.d.ts.map +1 -0
  10. package/dist/client/index.js +591 -0
  11. package/dist/client/index.js.map +1 -0
  12. package/dist/component/_generated/api.d.ts +60 -0
  13. package/dist/component/_generated/api.d.ts.map +1 -0
  14. package/dist/component/_generated/api.js +31 -0
  15. package/dist/component/_generated/api.js.map +1 -0
  16. package/dist/component/_generated/component.d.ts +569 -0
  17. package/dist/component/_generated/component.d.ts.map +1 -0
  18. package/dist/component/_generated/component.js +11 -0
  19. package/dist/component/_generated/component.js.map +1 -0
  20. package/dist/component/_generated/dataModel.d.ts +46 -0
  21. package/dist/component/_generated/dataModel.d.ts.map +1 -0
  22. package/dist/component/_generated/dataModel.js +11 -0
  23. package/dist/component/_generated/dataModel.js.map +1 -0
  24. package/dist/component/_generated/server.d.ts +133 -0
  25. package/dist/component/_generated/server.d.ts.map +1 -0
  26. package/dist/component/_generated/server.js +80 -0
  27. package/dist/component/_generated/server.js.map +1 -0
  28. package/dist/component/affiliates.d.ts +28 -0
  29. package/dist/component/affiliates.d.ts.map +1 -0
  30. package/dist/component/affiliates.js +110 -0
  31. package/dist/component/affiliates.js.map +1 -0
  32. package/dist/component/constants.d.ts +28 -0
  33. package/dist/component/constants.d.ts.map +1 -0
  34. package/dist/component/constants.js +28 -0
  35. package/dist/component/constants.js.map +1 -0
  36. package/dist/component/convex.config.d.ts +3 -0
  37. package/dist/component/convex.config.d.ts.map +1 -0
  38. package/dist/component/convex.config.js +3 -0
  39. package/dist/component/convex.config.js.map +1 -0
  40. package/dist/component/errors.d.ts +3 -0
  41. package/dist/component/errors.d.ts.map +1 -0
  42. package/dist/component/errors.js +5 -0
  43. package/dist/component/errors.js.map +1 -0
  44. package/dist/component/funnels.d.ts +36 -0
  45. package/dist/component/funnels.d.ts.map +1 -0
  46. package/dist/component/funnels.js +117 -0
  47. package/dist/component/funnels.js.map +1 -0
  48. package/dist/component/goals.d.ts +30 -0
  49. package/dist/component/goals.d.ts.map +1 -0
  50. package/dist/component/goals.js +110 -0
  51. package/dist/component/goals.js.map +1 -0
  52. package/dist/component/guards.d.ts +2 -0
  53. package/dist/component/guards.d.ts.map +1 -0
  54. package/dist/component/guards.js +4 -0
  55. package/dist/component/guards.js.map +1 -0
  56. package/dist/component/http.d.ts +3 -0
  57. package/dist/component/http.d.ts.map +1 -0
  58. package/dist/component/http.js +270 -0
  59. package/dist/component/http.js.map +1 -0
  60. package/dist/component/ingest.d.ts +51 -0
  61. package/dist/component/ingest.d.ts.map +1 -0
  62. package/dist/component/ingest.js +991 -0
  63. package/dist/component/ingest.js.map +1 -0
  64. package/dist/component/live.d.ts +9 -0
  65. package/dist/component/live.d.ts.map +1 -0
  66. package/dist/component/live.js +36 -0
  67. package/dist/component/live.js.map +1 -0
  68. package/dist/component/reports.d.ts +330 -0
  69. package/dist/component/reports.d.ts.map +1 -0
  70. package/dist/component/reports.js +595 -0
  71. package/dist/component/reports.js.map +1 -0
  72. package/dist/component/retention.d.ts +10 -0
  73. package/dist/component/retention.d.ts.map +1 -0
  74. package/dist/component/retention.js +107 -0
  75. package/dist/component/retention.js.map +1 -0
  76. package/dist/component/sanitize.d.ts +20 -0
  77. package/dist/component/sanitize.d.ts.map +1 -0
  78. package/dist/component/sanitize.js +269 -0
  79. package/dist/component/sanitize.js.map +1 -0
  80. package/dist/component/schema.d.ts +517 -0
  81. package/dist/component/schema.d.ts.map +1 -0
  82. package/dist/component/schema.js +209 -0
  83. package/dist/component/schema.js.map +1 -0
  84. package/dist/component/sites.d.ts +54 -0
  85. package/dist/component/sites.d.ts.map +1 -0
  86. package/dist/component/sites.js +164 -0
  87. package/dist/component/sites.js.map +1 -0
  88. package/dist/component/validators.d.ts +377 -0
  89. package/dist/component/validators.d.ts.map +1 -0
  90. package/dist/component/validators.js +176 -0
  91. package/dist/component/validators.js.map +1 -0
  92. package/dist/react/index.d.ts +40 -0
  93. package/dist/react/index.d.ts.map +1 -0
  94. package/dist/react/index.js +31 -0
  95. package/dist/react/index.js.map +1 -0
  96. package/dist/tracker/generated.d.ts +5 -0
  97. package/dist/tracker/generated.d.ts.map +1 -0
  98. package/dist/tracker/generated.js +6 -0
  99. package/dist/tracker/generated.js.map +1 -0
  100. package/dist/tracker/tracker.d.ts +27 -0
  101. package/dist/tracker/tracker.d.ts.map +1 -0
  102. package/dist/tracker/tracker.js +108 -0
  103. package/dist/tracker/tracker.js.map +1 -0
  104. package/dist/tracker.min.js +1 -0
  105. package/package.json +121 -0
  106. package/src/component/_generated/api.ts +76 -0
  107. package/src/component/_generated/component.ts +706 -0
  108. package/src/component/_generated/dataModel.ts +60 -0
  109. package/src/component/_generated/server.ts +169 -0
  110. package/src/component/affiliates.ts +119 -0
  111. package/src/component/constants.ts +28 -0
  112. package/src/component/convex.config.ts +3 -0
  113. package/src/component/errors.ts +20 -0
  114. package/src/component/funnels.ts +134 -0
  115. package/src/component/goals.ts +122 -0
  116. package/src/component/guards.ts +3 -0
  117. package/src/component/http.ts +301 -0
  118. package/src/component/ingest.ts +1364 -0
  119. package/src/component/live.ts +36 -0
  120. package/src/component/reports.ts +720 -0
  121. package/src/component/retention.ts +180 -0
  122. package/src/component/sanitize.ts +278 -0
  123. package/src/component/schema.ts +232 -0
  124. package/src/component/sites.ts +188 -0
  125. package/src/component/validators.ts +226 -0
  126. package/src/test.ts +19 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,591 @@
1
+ import { mutationGeneric, paginationOptsValidator, paginationResultValidator, queryGeneric, } from "convex/server";
2
+ import { v } from "convex/values";
3
+ import { eventPropertiesValidator, eventTypeValidator, funnelStepValidator, goalMatchTypeValidator, ingestContextValidator, ingestResultValidator, trackerEventValidator, } from "../component/validators.js";
4
+ export { eventPropertiesValidator, eventTypeValidator, funnelStepValidator, goalMatchTypeValidator, ingestContextValidator, ingestResultValidator, trackerEventValidator, };
5
+ export class Rastro {
6
+ component;
7
+ constructor(component) {
8
+ this.component = component;
9
+ }
10
+ createSite(ctx, args) {
11
+ return ctx.runMutation(this.component.sites.create, args);
12
+ }
13
+ updateSite(ctx, args) {
14
+ return ctx.runMutation(this.component.sites.update, args);
15
+ }
16
+ getSite(ctx, siteId) {
17
+ return ctx.runQuery(this.component.sites.get, { siteId });
18
+ }
19
+ listSites(ctx, args) {
20
+ return ctx.runQuery(this.component.sites.listByOwner, args);
21
+ }
22
+ ingest(ctx, args) {
23
+ return ctx.runMutation(this.component.ingest.ingestBatch, args);
24
+ }
25
+ trackConversion(ctx, args) {
26
+ return ctx.runMutation(this.component.ingest.trackConversion, args);
27
+ }
28
+ overview(ctx, args) {
29
+ return ctx.runQuery(this.component.reports.overview, args);
30
+ }
31
+ liveVisitors(ctx, args) {
32
+ return ctx.runQuery(this.component.reports.liveVisitors, args);
33
+ }
34
+ listSessions(ctx, args) {
35
+ return ctx.runQuery(this.component.reports.listSessions, args);
36
+ }
37
+ sessionJourney(ctx, args) {
38
+ return ctx.runQuery(this.component.reports.sessionJourney, args);
39
+ }
40
+ listConversions(ctx, args) {
41
+ return ctx.runQuery(this.component.reports.listConversions, args);
42
+ }
43
+ visitorJourney(ctx, args) {
44
+ return ctx.runQuery(this.component.reports.visitorJourney, args);
45
+ }
46
+ goalsReport(ctx, args) {
47
+ return ctx.runQuery(this.component.reports.goalsReport, args);
48
+ }
49
+ funnelsReport(ctx, args) {
50
+ return ctx.runQuery(this.component.reports.funnelsReport, args);
51
+ }
52
+ affiliatesReport(ctx, args) {
53
+ return ctx.runQuery(this.component.reports.affiliatesReport, args);
54
+ }
55
+ upsertGoal(ctx, args) {
56
+ return ctx.runMutation(this.component.goals.upsert, args);
57
+ }
58
+ listGoals(ctx, siteId) {
59
+ return ctx.runQuery(this.component.goals.list, { siteId });
60
+ }
61
+ removeGoal(ctx, siteId, goalId) {
62
+ return ctx.runMutation(this.component.goals.remove, { siteId, goalId });
63
+ }
64
+ upsertFunnel(ctx, args) {
65
+ return ctx.runMutation(this.component.funnels.upsert, args);
66
+ }
67
+ listFunnels(ctx, siteId) {
68
+ return ctx.runQuery(this.component.funnels.list, { siteId });
69
+ }
70
+ removeFunnel(ctx, siteId, funnelId) {
71
+ return ctx.runMutation(this.component.funnels.remove, { siteId, funnelId });
72
+ }
73
+ upsertAffiliate(ctx, args) {
74
+ return ctx.runMutation(this.component.affiliates.upsert, args);
75
+ }
76
+ listAffiliates(ctx, siteId) {
77
+ return ctx.runQuery(this.component.affiliates.list, { siteId });
78
+ }
79
+ removeAffiliate(ctx, siteId, affiliateId) {
80
+ return ctx.runMutation(this.component.affiliates.remove, { siteId, affiliateId });
81
+ }
82
+ cleanup(ctx, args) {
83
+ return ctx.runMutation(this.component.retention.cleanup, args);
84
+ }
85
+ }
86
+ const hostSiteValidator = v.object({
87
+ _id: v.string(),
88
+ _creationTime: v.number(),
89
+ ownerId: v.string(),
90
+ name: v.string(),
91
+ domains: v.array(v.string()),
92
+ networkId: v.optional(v.string()),
93
+ timezone: v.optional(v.string()),
94
+ currency: v.optional(v.string()),
95
+ cookieless: v.boolean(),
96
+ createdAt: v.number(),
97
+ updatedAt: v.number(),
98
+ });
99
+ const hostSessionValidator = v.object({
100
+ _id: v.string(),
101
+ _creationTime: v.number(),
102
+ siteId: v.string(),
103
+ sessionId: v.string(),
104
+ visitorId: v.string(),
105
+ startedAt: v.number(),
106
+ lastSeenAt: v.number(),
107
+ entryPath: v.string(),
108
+ exitPath: v.string(),
109
+ referrer: v.optional(v.string()),
110
+ source: v.string(),
111
+ utmSource: v.optional(v.string()),
112
+ utmMedium: v.optional(v.string()),
113
+ utmCampaign: v.optional(v.string()),
114
+ country: v.optional(v.string()),
115
+ city: v.optional(v.string()),
116
+ latitude: v.optional(v.number()),
117
+ longitude: v.optional(v.number()),
118
+ browser: v.string(),
119
+ os: v.string(),
120
+ device: v.string(),
121
+ eventCount: v.number(),
122
+ pageviewCount: v.number(),
123
+ durationMs: v.number(),
124
+ conversionCount: v.number(),
125
+ revenueCents: v.number(),
126
+ currency: v.optional(v.string()),
127
+ affiliateSlug: v.optional(v.string()),
128
+ affiliateId: v.optional(v.string()),
129
+ affiliateAttributedAt: v.optional(v.number()),
130
+ affiliateExpiresAt: v.optional(v.number()),
131
+ });
132
+ const hostEventValidator = v.object({
133
+ _id: v.string(),
134
+ _creationTime: v.number(),
135
+ siteId: v.string(),
136
+ eventId: v.string(),
137
+ sessionId: v.string(),
138
+ visitorId: v.string(),
139
+ type: eventTypeValidator,
140
+ name: v.optional(v.string()),
141
+ path: v.string(),
142
+ referrer: v.optional(v.string()),
143
+ timestamp: v.number(),
144
+ sequence: v.number(),
145
+ target: v.optional(v.string()),
146
+ href: v.optional(v.string()),
147
+ properties: v.optional(eventPropertiesValidator),
148
+ revenueCents: v.optional(v.number()),
149
+ currency: v.optional(v.string()),
150
+ affiliateSlug: v.optional(v.string()),
151
+ country: v.optional(v.string()),
152
+ city: v.optional(v.string()),
153
+ latitude: v.optional(v.number()),
154
+ longitude: v.optional(v.number()),
155
+ browser: v.string(),
156
+ os: v.string(),
157
+ device: v.string(),
158
+ });
159
+ const hostLiveVisitorValidator = v.object({
160
+ _id: v.string(),
161
+ _creationTime: v.number(),
162
+ siteId: v.string(),
163
+ sessionId: v.string(),
164
+ visitorId: v.string(),
165
+ path: v.string(),
166
+ startedAt: v.number(),
167
+ lastSeenAt: v.number(),
168
+ expiresAt: v.number(),
169
+ country: v.optional(v.string()),
170
+ city: v.optional(v.string()),
171
+ latitude: v.optional(v.number()),
172
+ longitude: v.optional(v.number()),
173
+ browser: v.string(),
174
+ os: v.string(),
175
+ source: v.string(),
176
+ device: v.string(),
177
+ pageviewCount: v.number(),
178
+ eventCount: v.number(),
179
+ });
180
+ const hostConversionValidator = v.object({
181
+ _id: v.string(),
182
+ _creationTime: v.number(),
183
+ siteId: v.string(),
184
+ eventId: v.string(),
185
+ sessionId: v.string(),
186
+ visitorId: v.string(),
187
+ timestamp: v.number(),
188
+ path: v.string(),
189
+ revenueCents: v.number(),
190
+ currency: v.string(),
191
+ source: v.union(v.literal("tracker"), v.literal("trusted")),
192
+ goalKey: v.optional(v.string()),
193
+ affiliateId: v.optional(v.string()),
194
+ affiliateAttributedAt: v.optional(v.number()),
195
+ affiliateExpiresAt: v.optional(v.number()),
196
+ affiliateSlug: v.optional(v.string()),
197
+ commissionCents: v.number(),
198
+ });
199
+ const hostMetricTotalsValidator = v.object({
200
+ events: v.number(),
201
+ pageviews: v.number(),
202
+ clicks: v.number(),
203
+ customEvents: v.number(),
204
+ outboundClicks: v.number(),
205
+ sessions: v.number(),
206
+ visitors: v.number(),
207
+ conversions: v.number(),
208
+ revenueCents: v.number(),
209
+ });
210
+ const hostTopItemValidator = v.object({
211
+ value: v.string(),
212
+ count: v.number(),
213
+ revenueCents: v.number(),
214
+ });
215
+ const hostOverviewValidator = v.object({
216
+ from: v.number(),
217
+ to: v.number(),
218
+ interval: v.union(v.literal("hour"), v.literal("day")),
219
+ currency: v.string(),
220
+ totals: hostMetricTotalsValidator,
221
+ timeSeries: v.array(hostMetricTotalsValidator.extend({ timestamp: v.number() })),
222
+ topSources: v.array(hostTopItemValidator),
223
+ topPages: v.array(hostTopItemValidator),
224
+ topCountries: v.array(hostTopItemValidator),
225
+ topDevices: v.array(hostTopItemValidator),
226
+ topBrowsers: v.array(hostTopItemValidator),
227
+ topEvents: v.array(hostTopItemValidator),
228
+ topGoals: v.array(hostTopItemValidator),
229
+ });
230
+ const hostGoalValidator = v.object({
231
+ _id: v.string(),
232
+ _creationTime: v.number(),
233
+ siteId: v.string(),
234
+ key: v.string(),
235
+ name: v.string(),
236
+ matchType: goalMatchTypeValidator,
237
+ matchValue: v.string(),
238
+ valueCents: v.optional(v.number()),
239
+ active: v.boolean(),
240
+ createdAt: v.number(),
241
+ updatedAt: v.number(),
242
+ });
243
+ const hostFunnelValidator = v.object({
244
+ _id: v.string(),
245
+ _creationTime: v.number(),
246
+ siteId: v.string(),
247
+ key: v.string(),
248
+ name: v.string(),
249
+ steps: v.array(funnelStepValidator),
250
+ conversionWindowMs: v.number(),
251
+ active: v.boolean(),
252
+ createdAt: v.number(),
253
+ updatedAt: v.number(),
254
+ });
255
+ const hostAffiliateValidator = v.object({
256
+ _id: v.string(),
257
+ _creationTime: v.number(),
258
+ siteId: v.string(),
259
+ slug: v.string(),
260
+ name: v.string(),
261
+ commissionBps: v.number(),
262
+ attributionWindowDays: v.number(),
263
+ active: v.boolean(),
264
+ createdAt: v.number(),
265
+ updatedAt: v.number(),
266
+ });
267
+ const hostGoalsReportValidator = v.object({
268
+ goals: v.array(hostGoalValidator.extend({ completions: v.number(), valueCents: v.number() })),
269
+ truncated: v.boolean(),
270
+ });
271
+ const hostFunnelsReportValidator = v.array(hostFunnelValidator.extend({
272
+ stepsReport: v.array(v.object({ step: v.number(), name: v.string(), entrants: v.number(), completions: v.number() })),
273
+ truncated: v.boolean(),
274
+ }));
275
+ const hostAffiliatesReportValidator = v.object({
276
+ affiliates: v.array(hostAffiliateValidator.extend({
277
+ visits: v.number(),
278
+ uniqueVisitors: v.number(),
279
+ conversions: v.number(),
280
+ revenueCents: v.number(),
281
+ commissionCents: v.number(),
282
+ })),
283
+ truncated: v.boolean(),
284
+ });
285
+ export function exposeAnalyticsApi(component, options) {
286
+ const rastro = new Rastro(component);
287
+ return {
288
+ createSite: mutationGeneric({
289
+ args: {
290
+ ownerId: v.string(),
291
+ name: v.string(),
292
+ domains: v.array(v.string()),
293
+ networkId: v.optional(v.string()),
294
+ timezone: v.optional(v.string()),
295
+ currency: v.optional(v.string()),
296
+ cookieless: v.optional(v.boolean()),
297
+ },
298
+ returns: v.string(),
299
+ handler: async (ctx, args) => {
300
+ await options.authorize(ctx, { operation: "site.create", siteIds: [], ownerId: args.ownerId });
301
+ return await rastro.createSite(ctx, args);
302
+ },
303
+ }),
304
+ updateSite: mutationGeneric({
305
+ args: {
306
+ siteId: v.string(),
307
+ name: v.optional(v.string()),
308
+ domains: v.optional(v.array(v.string())),
309
+ networkId: v.optional(v.union(v.string(), v.null())),
310
+ timezone: v.optional(v.union(v.string(), v.null())),
311
+ currency: v.optional(v.string()),
312
+ cookieless: v.optional(v.boolean()),
313
+ },
314
+ returns: v.null(),
315
+ handler: async (ctx, args) => {
316
+ await options.authorize(ctx, { operation: "site.update", siteIds: [args.siteId] });
317
+ return await rastro.updateSite(ctx, args);
318
+ },
319
+ }),
320
+ getSite: queryGeneric({
321
+ args: { siteId: v.string() },
322
+ returns: v.union(hostSiteValidator, v.null()),
323
+ handler: async (ctx, args) => {
324
+ await options.authorize(ctx, { operation: "site.get", siteIds: [args.siteId] });
325
+ return await rastro.getSite(ctx, args.siteId);
326
+ },
327
+ }),
328
+ listSites: queryGeneric({
329
+ args: { ownerId: v.string(), limit: v.optional(v.number()) },
330
+ returns: v.array(hostSiteValidator),
331
+ handler: async (ctx, args) => {
332
+ await options.authorize(ctx, { operation: "site.list", siteIds: [], ownerId: args.ownerId });
333
+ return await rastro.listSites(ctx, args);
334
+ },
335
+ }),
336
+ ingest: mutationGeneric({
337
+ args: {
338
+ siteId: v.string(),
339
+ origin: v.string(),
340
+ events: v.array(trackerEventValidator),
341
+ context: v.optional(ingestContextValidator),
342
+ },
343
+ returns: ingestResultValidator,
344
+ handler: async (ctx, args) => {
345
+ await options.authorize(ctx, { operation: "ingest", siteIds: [args.siteId] });
346
+ return await rastro.ingest(ctx, args);
347
+ },
348
+ }),
349
+ trackConversion: mutationGeneric({
350
+ args: {
351
+ siteId: v.string(),
352
+ eventId: v.string(),
353
+ sessionId: v.string(),
354
+ visitorId: v.string(),
355
+ timestamp: v.number(),
356
+ revenueCents: v.number(),
357
+ currency: v.string(),
358
+ path: v.optional(v.string()),
359
+ goalKey: v.optional(v.string()),
360
+ properties: v.optional(eventPropertiesValidator),
361
+ },
362
+ returns: ingestResultValidator,
363
+ handler: async (ctx, args) => {
364
+ await options.authorize(ctx, { operation: "conversion.track", siteIds: [args.siteId] });
365
+ return await rastro.trackConversion(ctx, args);
366
+ },
367
+ }),
368
+ overview: queryGeneric({
369
+ args: {
370
+ siteIds: v.array(v.string()),
371
+ from: v.number(),
372
+ to: v.number(),
373
+ interval: v.optional(v.union(v.literal("hour"), v.literal("day"))),
374
+ },
375
+ returns: hostOverviewValidator,
376
+ handler: async (ctx, args) => {
377
+ await options.authorize(ctx, { operation: "report.overview", siteIds: args.siteIds });
378
+ return await rastro.overview(ctx, args);
379
+ },
380
+ }),
381
+ liveVisitors: queryGeneric({
382
+ args: {
383
+ siteIds: v.array(v.string()),
384
+ now: v.number(),
385
+ limit: v.optional(v.number()),
386
+ },
387
+ returns: v.array(hostLiveVisitorValidator),
388
+ handler: async (ctx, args) => {
389
+ await options.authorize(ctx, { operation: "report.live", siteIds: args.siteIds });
390
+ return await rastro.liveVisitors(ctx, args);
391
+ },
392
+ }),
393
+ listSessions: queryGeneric({
394
+ args: {
395
+ siteId: v.string(),
396
+ from: v.number(),
397
+ to: v.number(),
398
+ paginationOpts: paginationOptsValidator,
399
+ },
400
+ returns: paginationResultValidator(hostSessionValidator),
401
+ handler: async (ctx, args) => {
402
+ await options.authorize(ctx, { operation: "report.sessions", siteIds: [args.siteId] });
403
+ return await rastro.listSessions(ctx, args);
404
+ },
405
+ }),
406
+ sessionJourney: queryGeneric({
407
+ args: {
408
+ siteId: v.string(),
409
+ sessionId: v.string(),
410
+ from: v.number(),
411
+ to: v.number(),
412
+ paginationOpts: paginationOptsValidator,
413
+ },
414
+ returns: paginationResultValidator(hostEventValidator),
415
+ handler: async (ctx, args) => {
416
+ await options.authorize(ctx, { operation: "report.sessionJourney", siteIds: [args.siteId] });
417
+ return await rastro.sessionJourney(ctx, args);
418
+ },
419
+ }),
420
+ listConversions: queryGeneric({
421
+ args: {
422
+ siteId: v.string(),
423
+ from: v.number(),
424
+ to: v.number(),
425
+ paginationOpts: paginationOptsValidator,
426
+ },
427
+ returns: paginationResultValidator(hostConversionValidator),
428
+ handler: async (ctx, args) => {
429
+ await options.authorize(ctx, { operation: "report.conversions", siteIds: [args.siteId] });
430
+ return await rastro.listConversions(ctx, args);
431
+ },
432
+ }),
433
+ visitorJourney: queryGeneric({
434
+ args: {
435
+ siteIds: v.array(v.string()),
436
+ visitorId: v.string(),
437
+ from: v.number(),
438
+ to: v.number(),
439
+ limit: v.optional(v.number()),
440
+ },
441
+ returns: v.array(hostEventValidator),
442
+ handler: async (ctx, args) => {
443
+ await options.authorize(ctx, { operation: "report.visitorJourney", siteIds: args.siteIds });
444
+ return await rastro.visitorJourney(ctx, args);
445
+ },
446
+ }),
447
+ goalsReport: queryGeneric({
448
+ args: { siteId: v.string(), from: v.number(), to: v.number() },
449
+ returns: hostGoalsReportValidator,
450
+ handler: async (ctx, args) => {
451
+ await options.authorize(ctx, { operation: "report.goals", siteIds: [args.siteId] });
452
+ return await rastro.goalsReport(ctx, args);
453
+ },
454
+ }),
455
+ funnelsReport: queryGeneric({
456
+ args: { siteId: v.string(), from: v.number(), to: v.number() },
457
+ returns: hostFunnelsReportValidator,
458
+ handler: async (ctx, args) => {
459
+ await options.authorize(ctx, { operation: "report.funnels", siteIds: [args.siteId] });
460
+ return await rastro.funnelsReport(ctx, args);
461
+ },
462
+ }),
463
+ affiliatesReport: queryGeneric({
464
+ args: { siteId: v.string(), from: v.number(), to: v.number() },
465
+ returns: hostAffiliatesReportValidator,
466
+ handler: async (ctx, args) => {
467
+ await options.authorize(ctx, { operation: "report.affiliates", siteIds: [args.siteId] });
468
+ return await rastro.affiliatesReport(ctx, args);
469
+ },
470
+ }),
471
+ upsertGoal: mutationGeneric({
472
+ args: {
473
+ siteId: v.string(),
474
+ goalId: v.optional(v.string()),
475
+ key: v.string(),
476
+ name: v.string(),
477
+ matchType: goalMatchTypeValidator,
478
+ matchValue: v.string(),
479
+ valueCents: v.optional(v.number()),
480
+ active: v.optional(v.boolean()),
481
+ },
482
+ returns: v.string(),
483
+ handler: async (ctx, args) => {
484
+ await options.authorize(ctx, { operation: "goal.upsert", siteIds: [args.siteId] });
485
+ return await rastro.upsertGoal(ctx, args);
486
+ },
487
+ }),
488
+ listGoals: queryGeneric({
489
+ args: { siteId: v.string() },
490
+ returns: v.array(hostGoalValidator),
491
+ handler: async (ctx, args) => {
492
+ await options.authorize(ctx, { operation: "goal.list", siteIds: [args.siteId] });
493
+ return await rastro.listGoals(ctx, args.siteId);
494
+ },
495
+ }),
496
+ removeGoal: mutationGeneric({
497
+ args: { siteId: v.string(), goalId: v.string() },
498
+ returns: v.null(),
499
+ handler: async (ctx, args) => {
500
+ await options.authorize(ctx, { operation: "goal.remove", siteIds: [args.siteId] });
501
+ return await rastro.removeGoal(ctx, args.siteId, args.goalId);
502
+ },
503
+ }),
504
+ upsertFunnel: mutationGeneric({
505
+ args: {
506
+ siteId: v.string(),
507
+ funnelId: v.optional(v.string()),
508
+ key: v.string(),
509
+ name: v.string(),
510
+ steps: v.array(funnelStepValidator),
511
+ conversionWindowMs: v.number(),
512
+ active: v.optional(v.boolean()),
513
+ },
514
+ returns: v.string(),
515
+ handler: async (ctx, args) => {
516
+ await options.authorize(ctx, { operation: "funnel.upsert", siteIds: [args.siteId] });
517
+ return await rastro.upsertFunnel(ctx, args);
518
+ },
519
+ }),
520
+ listFunnels: queryGeneric({
521
+ args: { siteId: v.string() },
522
+ returns: v.array(hostFunnelValidator),
523
+ handler: async (ctx, args) => {
524
+ await options.authorize(ctx, { operation: "funnel.list", siteIds: [args.siteId] });
525
+ return await rastro.listFunnels(ctx, args.siteId);
526
+ },
527
+ }),
528
+ removeFunnel: mutationGeneric({
529
+ args: { siteId: v.string(), funnelId: v.string() },
530
+ returns: v.null(),
531
+ handler: async (ctx, args) => {
532
+ await options.authorize(ctx, { operation: "funnel.remove", siteIds: [args.siteId] });
533
+ return await rastro.removeFunnel(ctx, args.siteId, args.funnelId);
534
+ },
535
+ }),
536
+ upsertAffiliate: mutationGeneric({
537
+ args: {
538
+ siteId: v.string(),
539
+ affiliateId: v.optional(v.string()),
540
+ slug: v.string(),
541
+ name: v.string(),
542
+ commissionBps: v.number(),
543
+ attributionWindowDays: v.number(),
544
+ active: v.optional(v.boolean()),
545
+ },
546
+ returns: v.string(),
547
+ handler: async (ctx, args) => {
548
+ await options.authorize(ctx, { operation: "affiliate.upsert", siteIds: [args.siteId] });
549
+ return await rastro.upsertAffiliate(ctx, args);
550
+ },
551
+ }),
552
+ listAffiliates: queryGeneric({
553
+ args: { siteId: v.string() },
554
+ returns: v.array(hostAffiliateValidator),
555
+ handler: async (ctx, args) => {
556
+ await options.authorize(ctx, { operation: "affiliate.list", siteIds: [args.siteId] });
557
+ return await rastro.listAffiliates(ctx, args.siteId);
558
+ },
559
+ }),
560
+ removeAffiliate: mutationGeneric({
561
+ args: { siteId: v.string(), affiliateId: v.string() },
562
+ returns: v.null(),
563
+ handler: async (ctx, args) => {
564
+ await options.authorize(ctx, { operation: "affiliate.remove", siteIds: [args.siteId] });
565
+ return await rastro.removeAffiliate(ctx, args.siteId, args.affiliateId);
566
+ },
567
+ }),
568
+ cleanupAnalytics: mutationGeneric({
569
+ args: {
570
+ siteId: v.string(),
571
+ kind: v.union(v.literal("events"), v.literal("sessions"), v.literal("conversions"), v.literal("goalCompletions"), v.literal("aggregateHour"), v.literal("aggregateDay"), v.literal("funnelProgress"), v.literal("funnelSteps"), v.literal("affiliateStats"), v.literal("attributions"), v.literal("liveSessions"), v.literal("ingestWindows"), v.literal("siteIngestWindows")),
572
+ before: v.number(),
573
+ batchSize: v.optional(v.number()),
574
+ },
575
+ returns: v.object({ deleted: v.number(), hasMore: v.boolean() }),
576
+ handler: async (ctx, args) => {
577
+ await options.authorize(ctx, { operation: "retention.cleanup", siteIds: [args.siteId] });
578
+ return await rastro.cleanup(ctx, args);
579
+ },
580
+ }),
581
+ };
582
+ }
583
+ export function componentHttpPaths(prefix = "/rastro/") {
584
+ const normalized = prefix.endsWith("/") ? prefix.slice(0, -1) : prefix;
585
+ return {
586
+ events: `${normalized}/events`,
587
+ tracker: `${normalized}/tracker.js`,
588
+ health: `${normalized}/health`,
589
+ };
590
+ }
591
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}