@interfere/types 0.0.3 → 0.1.0-alpha.1

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 (108) hide show
  1. package/dist/auth/public-token.d.mts +9 -0
  2. package/dist/auth/public-token.d.mts.map +1 -0
  3. package/dist/auth/public-token.mjs +9 -0
  4. package/dist/auth/public-token.mjs.map +1 -0
  5. package/dist/auth/secret-key.d.mts +5 -0
  6. package/dist/auth/secret-key.d.mts.map +1 -0
  7. package/dist/auth/secret-key.mjs +6 -0
  8. package/dist/auth/secret-key.mjs.map +1 -0
  9. package/dist/data/frame.d.mts +20 -0
  10. package/dist/data/frame.d.mts.map +1 -0
  11. package/dist/data/frame.mjs +12 -0
  12. package/dist/data/frame.mjs.map +1 -0
  13. package/dist/data/session.d.mts +7 -0
  14. package/dist/data/session.d.mts.map +1 -0
  15. package/dist/data/session.mjs +7 -0
  16. package/dist/data/session.mjs.map +1 -0
  17. package/dist/data/source-maps.d.mts +95 -0
  18. package/dist/data/source-maps.d.mts.map +1 -0
  19. package/dist/data/source-maps.mjs +45 -0
  20. package/dist/data/source-maps.mjs.map +1 -0
  21. package/dist/data/surface.d.mts +7 -0
  22. package/dist/data/surface.d.mts.map +1 -0
  23. package/dist/data/surface.mjs +8 -0
  24. package/dist/data/surface.mjs.map +1 -0
  25. package/dist/releases/definition.d.mts +89 -0
  26. package/dist/releases/definition.d.mts.map +1 -0
  27. package/dist/releases/definition.mjs +36 -0
  28. package/dist/releases/definition.mjs.map +1 -0
  29. package/dist/releases/sources/version-control.d.mts +16 -0
  30. package/dist/releases/sources/version-control.d.mts.map +1 -0
  31. package/dist/releases/sources/version-control.mjs +13 -0
  32. package/dist/releases/sources/version-control.mjs.map +1 -0
  33. package/dist/releases/targets/cloud-platform.d.mts +27 -0
  34. package/dist/releases/targets/cloud-platform.d.mts.map +1 -0
  35. package/dist/releases/targets/cloud-platform.mjs +24 -0
  36. package/dist/releases/targets/cloud-platform.mjs.map +1 -0
  37. package/dist/sdk/capture.d.mts +8 -0
  38. package/dist/sdk/capture.d.mts.map +1 -0
  39. package/dist/sdk/capture.mjs +16 -0
  40. package/dist/sdk/capture.mjs.map +1 -0
  41. package/dist/sdk/config.d.mts +184 -0
  42. package/dist/sdk/config.d.mts.map +1 -0
  43. package/dist/sdk/config.mjs +69 -0
  44. package/dist/sdk/config.mjs.map +1 -0
  45. package/dist/sdk/envelope.d.mts +190 -0
  46. package/dist/sdk/envelope.d.mts.map +1 -0
  47. package/dist/sdk/envelope.mjs +57 -0
  48. package/dist/sdk/envelope.mjs.map +1 -0
  49. package/dist/sdk/packages.d.mts +7 -0
  50. package/dist/sdk/packages.d.mts.map +1 -0
  51. package/dist/sdk/packages.mjs +11 -0
  52. package/dist/sdk/packages.mjs.map +1 -0
  53. package/dist/sdk/plugins/lib/schemas.d.mts +23 -0
  54. package/dist/sdk/plugins/lib/schemas.d.mts.map +1 -0
  55. package/dist/sdk/plugins/lib/schemas.mjs +1 -0
  56. package/dist/sdk/plugins/lib/types.d.mts +19 -0
  57. package/dist/sdk/plugins/lib/types.d.mts.map +1 -0
  58. package/dist/sdk/plugins/lib/types.mjs +8 -0
  59. package/dist/sdk/plugins/lib/types.mjs.map +1 -0
  60. package/dist/sdk/plugins/manifest.d.mts +110 -0
  61. package/dist/sdk/plugins/manifest.d.mts.map +1 -0
  62. package/dist/sdk/plugins/manifest.mjs +75 -0
  63. package/dist/sdk/plugins/manifest.mjs.map +1 -0
  64. package/dist/sdk/plugins/payload/ai-summary.d.mts +13 -0
  65. package/dist/sdk/plugins/payload/ai-summary.d.mts.map +1 -0
  66. package/dist/sdk/plugins/payload/ai-summary.mjs +13 -0
  67. package/dist/sdk/plugins/payload/ai-summary.mjs.map +1 -0
  68. package/dist/sdk/plugins/payload/errors.d.mts +36 -0
  69. package/dist/sdk/plugins/payload/errors.d.mts.map +1 -0
  70. package/dist/sdk/plugins/payload/errors.mjs +19 -0
  71. package/dist/sdk/plugins/payload/errors.mjs.map +1 -0
  72. package/dist/sdk/plugins/payload/page-events.d.mts +19 -0
  73. package/dist/sdk/plugins/payload/page-events.d.mts.map +1 -0
  74. package/dist/sdk/plugins/payload/page-events.mjs +15 -0
  75. package/dist/sdk/plugins/payload/page-events.mjs.map +1 -0
  76. package/dist/sdk/plugins/payload/rage-click.d.mts +15 -0
  77. package/dist/sdk/plugins/payload/rage-click.d.mts.map +1 -0
  78. package/dist/sdk/plugins/payload/rage-click.mjs +15 -0
  79. package/dist/sdk/plugins/payload/rage-click.mjs.map +1 -0
  80. package/dist/sdk/plugins/payload/replay.d.mts +11 -0
  81. package/dist/sdk/plugins/payload/replay.d.mts.map +1 -0
  82. package/dist/sdk/plugins/payload/replay.mjs +11 -0
  83. package/dist/sdk/plugins/payload/replay.mjs.map +1 -0
  84. package/dist/sdk/runtime.d.mts +19 -0
  85. package/dist/sdk/runtime.d.mts.map +1 -0
  86. package/dist/sdk/runtime.mjs +26 -0
  87. package/dist/sdk/runtime.mjs.map +1 -0
  88. package/package.json +68 -9
  89. package/dist/config.d.ts +0 -32
  90. package/dist/config.d.ts.map +0 -1
  91. package/dist/config.js +0 -15
  92. package/dist/config.js.map +0 -1
  93. package/dist/envelope.d.ts +0 -45
  94. package/dist/envelope.d.ts.map +0 -1
  95. package/dist/envelope.js +0 -27
  96. package/dist/envelope.js.map +0 -1
  97. package/dist/index.d.ts +0 -5
  98. package/dist/index.d.ts.map +0 -1
  99. package/dist/index.js +0 -5
  100. package/dist/index.js.map +0 -1
  101. package/dist/project.d.ts +0 -4
  102. package/dist/project.d.ts.map +0 -1
  103. package/dist/project.js +0 -3
  104. package/dist/project.js.map +0 -1
  105. package/dist/session.d.ts +0 -4
  106. package/dist/session.d.ts.map +0 -1
  107. package/dist/session.js +0 -3
  108. package/dist/session.js.map +0 -1
@@ -0,0 +1,184 @@
1
+ import { z } from "zod/v4";
2
+
3
+ //#region src/sdk/config.d.ts
4
+ declare const offlineStorageSchema: z.ZodDefault<z.ZodObject<{
5
+ enabled: z.ZodDefault<z.ZodBoolean>;
6
+ maxQueueSize: z.ZodDefault<z.ZodNumber>;
7
+ }, z.core.$strip>>;
8
+ type OfflineStorage = z.infer<typeof offlineStorageSchema>;
9
+ declare const apiBaseUrlSchema: z.ZodUnion<readonly [z.ZodString, z.ZodEnum<{
10
+ "https://api.interfere.com": "https://api.interfere.com";
11
+ "http://localhost:3001": "http://localhost:3001";
12
+ }>]>;
13
+ declare const featuresSchema: z.ZodDefault<z.ZodObject<{
14
+ errors: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
15
+ replay: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
16
+ rageClick: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
17
+ aiSummary: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
18
+ pageEvents: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
19
+ serverTracing: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
20
+ }, z.core.$strip>>;
21
+ type Features = z.infer<typeof featuresSchema>;
22
+ declare const configSchema: z.ZodPipe<z.ZodIntersection<z.ZodObject<{
23
+ features: z.ZodDefault<z.ZodObject<{
24
+ errors: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
25
+ replay: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
26
+ rageClick: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
27
+ aiSummary: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
28
+ pageEvents: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
29
+ serverTracing: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
30
+ }, z.core.$strip>>;
31
+ metadata: z.ZodObject<{
32
+ buildId: z.ZodNullable<z.ZodString>;
33
+ releaseId: z.ZodNullable<z.ZodString>;
34
+ environment: z.ZodNullable<z.ZodEnum<{
35
+ development: "development";
36
+ preview: "preview";
37
+ production: "production";
38
+ }>>;
39
+ runtime: z.ZodNullable<z.ZodEnum<{
40
+ edge: "edge";
41
+ browser: "browser";
42
+ node: "node";
43
+ }>>;
44
+ }, z.core.$strip>;
45
+ batch: z.ZodDefault<z.ZodObject<{
46
+ size: z.ZodDefault<z.ZodNumber>;
47
+ ms: z.ZodDefault<z.ZodNumber>;
48
+ }, z.core.$strip>>;
49
+ offline: z.ZodDefault<z.ZodObject<{
50
+ enabled: z.ZodDefault<z.ZodBoolean>;
51
+ maxQueueSize: z.ZodDefault<z.ZodNumber>;
52
+ }, z.core.$strip>>;
53
+ }, z.core.$strip>, z.ZodUnion<readonly [z.ZodObject<{
54
+ proxyUrl: z.ZodString;
55
+ }, z.core.$strip>, z.ZodObject<{
56
+ ingestUrl: z.ZodString;
57
+ surfaceToken: z.ZodString;
58
+ }, z.core.$strip>]>>, z.ZodTransform<({
59
+ features: {
60
+ errors?: boolean | undefined;
61
+ replay?: boolean | undefined;
62
+ rageClick?: boolean | undefined;
63
+ aiSummary?: boolean | undefined;
64
+ pageEvents?: boolean | undefined;
65
+ serverTracing?: boolean | undefined;
66
+ };
67
+ metadata: {
68
+ buildId: string | null;
69
+ releaseId: string | null;
70
+ environment: "development" | "preview" | "production" | null;
71
+ runtime: "edge" | "browser" | "node" | null;
72
+ };
73
+ batch: {
74
+ size: number;
75
+ ms: number;
76
+ };
77
+ offline: {
78
+ enabled: boolean;
79
+ maxQueueSize: number;
80
+ };
81
+ } & {
82
+ proxyUrl: string;
83
+ }) | ({
84
+ features: {
85
+ errors?: boolean | undefined;
86
+ replay?: boolean | undefined;
87
+ rageClick?: boolean | undefined;
88
+ aiSummary?: boolean | undefined;
89
+ pageEvents?: boolean | undefined;
90
+ serverTracing?: boolean | undefined;
91
+ };
92
+ metadata: {
93
+ buildId: string | null;
94
+ releaseId: string | null;
95
+ environment: "development" | "preview" | "production" | null;
96
+ runtime: "edge" | "browser" | "node" | null;
97
+ };
98
+ batch: {
99
+ size: number;
100
+ ms: number;
101
+ };
102
+ offline: {
103
+ enabled: boolean;
104
+ maxQueueSize: number;
105
+ };
106
+ } & {
107
+ ingestUrl: string;
108
+ surfaceToken: string;
109
+ }), {
110
+ features: {
111
+ errors?: boolean | undefined;
112
+ replay?: boolean | undefined;
113
+ rageClick?: boolean | undefined;
114
+ aiSummary?: boolean | undefined;
115
+ pageEvents?: boolean | undefined;
116
+ serverTracing?: boolean | undefined;
117
+ };
118
+ metadata: {
119
+ buildId: string | null;
120
+ releaseId: string | null;
121
+ environment: "development" | "preview" | "production" | null;
122
+ runtime: "edge" | "browser" | "node" | null;
123
+ };
124
+ batch: {
125
+ size: number;
126
+ ms: number;
127
+ };
128
+ offline: {
129
+ enabled: boolean;
130
+ maxQueueSize: number;
131
+ };
132
+ } & ({
133
+ proxyUrl: string;
134
+ } | {
135
+ ingestUrl: string;
136
+ surfaceToken: string;
137
+ })>>;
138
+ type Config = z.output<typeof configSchema>;
139
+ declare const configInputSchema: z.ZodIntersection<z.ZodObject<{
140
+ features: z.ZodOptional<z.ZodDefault<z.ZodObject<{
141
+ errors: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
142
+ replay: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
143
+ rageClick: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
144
+ aiSummary: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
145
+ pageEvents: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
146
+ serverTracing: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
147
+ }, z.core.$strip>>>;
148
+ metadata: z.ZodOptional<z.ZodObject<{
149
+ buildId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
150
+ releaseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
151
+ environment: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
152
+ development: "development";
153
+ preview: "preview";
154
+ production: "production";
155
+ }>>>;
156
+ runtime: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
157
+ edge: "edge";
158
+ browser: "browser";
159
+ node: "node";
160
+ }>>>;
161
+ }, z.core.$strip>>;
162
+ batch: z.ZodOptional<z.ZodObject<{
163
+ size: z.ZodOptional<z.ZodNumber>;
164
+ ms: z.ZodOptional<z.ZodNumber>;
165
+ }, z.core.$strip>>;
166
+ offline: z.ZodOptional<z.ZodDefault<z.ZodObject<{
167
+ enabled: z.ZodDefault<z.ZodBoolean>;
168
+ maxQueueSize: z.ZodDefault<z.ZodNumber>;
169
+ }, z.core.$strip>>>;
170
+ }, z.core.$strip>, z.ZodUnion<readonly [z.ZodObject<{
171
+ proxyUrl: z.ZodString;
172
+ }, z.core.$strip>, z.ZodObject<{
173
+ ingestUrl: z.ZodString;
174
+ surfaceToken: z.ZodString;
175
+ }, z.core.$strip>]>>;
176
+ type ConfigInput = z.infer<typeof configInputSchema>;
177
+ declare const persistenceTypeSchema: z.ZodEnum<{
178
+ localStorage: "localStorage";
179
+ sessionStorage: "sessionStorage";
180
+ memory: "memory";
181
+ }>;
182
+ type PersistenceType = z.infer<typeof persistenceTypeSchema>;
183
+ //#endregion
184
+ export { Config, ConfigInput, Features, OfflineStorage, PersistenceType, apiBaseUrlSchema, configInputSchema, configSchema, featuresSchema, offlineStorageSchema, persistenceTypeSchema };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.mts","names":[],"sources":["../../src/sdk/config.ts"],"sourcesContent":[],"mappings":";;;cAYa,sBAAoB,CAAA,CAAA,WAAA,CAAA,CAAA;;EAApB,YAAA,cAcoC,YAAA,CAAA;;KAErC,cAAA,GAAiB,CAAA,CAAE,aAAa;cAE/B,kBAAgB,CAAA,CAAA,mBAAA,CAAA,CAAA,WAAA,CAAA,CAAA;;;CAlBI,CAAA,CAAA,CAAA;AAAA,cAuBpB,cAvBoB,EAuBN,CAAA,CAAA,UAvBM,CAuBN,CAAA,CAAA,SAvBM,CAAA;EAAA,MAAA,eAAA,aAAA,aAAA,CAAA,CAAA;EAgBrB,MAAA,eAAc,aAAkB,aAAA,CAAA,CAAA;EAE/B,SAAA,eAGX,aAAA,aAAA,CAAA,CAAA;EAH2B,SAAA,eAAA,aAAA,aAAA,CAAA,CAAA;EAAA,UAAA,eAAA,aAAA,aAAA,CAAA,CAAA;EAAA,aAAA,eAAA,aAAA,aAAA,CAAA,CAAA;CAAA,eAAA,CAAA,CAAA;AAKhB,KAgBD,QAAA,GAAW,CAAA,CAAE,KAFtB,CAAA,OAEmC,cAFnC,CAAA;cAkCU,cAAY,CAAA,CAAA,QAAA,CAAA,CAAA,gBAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;MAhDE,OAAA,EAAA,SAAA;MAAA,IAAA,EAAA,MAAA;IAAA,CAAA,CAAA,CAAA;EAgBf,CAAA,eAAQ,CAAA;EAgCP,KAAA,cAaT,YAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAbqB,QAAA,EAAA;;;;;;;;;EAAA,CAAA;;IAAA,OAAA,EAAA,OAAA;IAAA,YAAA,EAAA,MAAA;EAeb,CAAA;AAEZ,CAAA,GAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAFD,MAAA,GAAS,CAAA,CAAE,cAAc;cAExB,mBAAiB,CAAA,CAAA,gBAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;IAAA,CAAA,CAAA,CAAA,CAAA;;;;;;;;;EAAA,CAAA,eAAA,CAAA,CAAA,CAAA;CAAA,eAAA,CAAA,YAAA,CAAA,SAAA,YAAA,CAAA;EAuBlB,QAAA,aAAW;AAEvB,CAAA,eAAa,CAAA,aAIX,CAAA;EAEU,SAAA,aAAe;;;KARf,WAAA,GAAc,CAAA,CAAE,aAAa;cAE5B,uBAAqB,CAAA,CAAA;;;;;KAMtB,eAAA,GAAkB,CAAA,CAAE,aAAa"}
@@ -0,0 +1,69 @@
1
+ import { PLUGIN_MANIFEST } from "./plugins/manifest.mjs";
2
+ import { API_URL } from "@interfere/constants/api";
3
+ import { z } from "zod/v4";
4
+ import { envSchema, runtimeSchema } from "#sdk/runtime";
5
+
6
+ //#region src/sdk/config.ts
7
+ const DEFAULT_BATCH_SIZE = 10;
8
+ const DEFAULT_BATCH_MS = 250;
9
+ const offlineStorageSchema = z.object({
10
+ enabled: z.boolean().default(false),
11
+ maxQueueSize: z.number().default(100)
12
+ }).default({
13
+ enabled: false,
14
+ maxQueueSize: 100
15
+ });
16
+ const apiBaseUrlSchema = z.union([z.string(), z.enum([API_URL, "http://localhost:3001"])]);
17
+ const featuresSchema = z.object(Object.fromEntries(PLUGIN_MANIFEST.map((plugin) => [plugin.name, z.boolean().default(plugin.defaultEnabled)]))).partial().default(Object.fromEntries(PLUGIN_MANIFEST.map((plugin) => [plugin.name, plugin.defaultEnabled])));
18
+ const baseSdkConfigSchema = z.object({
19
+ features: featuresSchema,
20
+ metadata: z.object({
21
+ buildId: z.string().nullable(),
22
+ releaseId: z.string().nullable(),
23
+ environment: envSchema,
24
+ runtime: runtimeSchema
25
+ }),
26
+ batch: z.object({
27
+ size: z.number().default(DEFAULT_BATCH_SIZE),
28
+ ms: z.number().default(DEFAULT_BATCH_MS)
29
+ }).default(() => ({
30
+ size: DEFAULT_BATCH_SIZE,
31
+ ms: DEFAULT_BATCH_MS
32
+ })),
33
+ offline: offlineStorageSchema
34
+ });
35
+ const proxyConfigSchema = z.object({ proxyUrl: z.string() });
36
+ const directConfigSchema = z.object({
37
+ ingestUrl: z.string(),
38
+ surfaceToken: z.string()
39
+ });
40
+ const configSchema = baseSdkConfigSchema.and(z.union([proxyConfigSchema, directConfigSchema])).transform((cfg) => {
41
+ const replayDefault = cfg.metadata.environment !== "development";
42
+ if (cfg.features.replay === void 0) cfg.features = {
43
+ ...cfg.features,
44
+ replay: replayDefault
45
+ };
46
+ return cfg;
47
+ });
48
+ const configInputSchema = z.object({
49
+ features: featuresSchema.optional(),
50
+ metadata: z.object({
51
+ buildId: z.string().nullable(),
52
+ releaseId: z.string().nullable(),
53
+ environment: envSchema,
54
+ runtime: runtimeSchema
55
+ }).partial().optional(),
56
+ batch: z.object({
57
+ size: z.number(),
58
+ ms: z.number()
59
+ }).partial().optional(),
60
+ offline: offlineStorageSchema.optional()
61
+ }).and(z.union([proxyConfigSchema, directConfigSchema]));
62
+ const persistenceTypeSchema = z.enum([
63
+ "localStorage",
64
+ "sessionStorage",
65
+ "memory"
66
+ ]);
67
+
68
+ //#endregion
69
+ export { apiBaseUrlSchema, configInputSchema, configSchema, featuresSchema, offlineStorageSchema, persistenceTypeSchema };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.mjs","names":[],"sources":["../../src/sdk/config.ts"],"sourcesContent":["import { API_URL } from \"@interfere/constants/api\";\n\nimport { z } from \"zod/v4\";\n\nimport { envSchema, runtimeSchema } from \"#sdk/runtime\";\n\nimport type { PluginKey } from \"./plugins/lib/types.js\";\nimport { PLUGIN_MANIFEST } from \"./plugins/manifest.js\";\n\nconst DEFAULT_BATCH_SIZE = 10;\nconst DEFAULT_BATCH_MS = 250;\n\nexport const offlineStorageSchema = z\n .object({\n /**\n * Whether to enable offline storage (IndexedDB persistence).\n * When enabled, envelopes that fail to send are stored and retried when connectivity returns.\n * @default false\n */\n enabled: z.boolean().default(false),\n /**\n * Maximum number of envelopes to store offline.\n * @default 100\n */\n maxQueueSize: z.number().default(100),\n })\n .default({ enabled: false, maxQueueSize: 100 });\n\nexport type OfflineStorage = z.infer<typeof offlineStorageSchema>;\n\nexport const apiBaseUrlSchema = z.union([\n z.string(),\n z.enum([API_URL, \"http://localhost:3001\"]),\n]);\n\nexport const featuresSchema = z\n .object(\n Object.fromEntries(\n PLUGIN_MANIFEST.map((plugin) => [\n plugin.name,\n z.boolean().default(plugin.defaultEnabled),\n ])\n ) as Record<PluginKey, z.ZodDefault<z.ZodBoolean>>\n )\n .partial()\n .default(\n Object.fromEntries(\n PLUGIN_MANIFEST.map((plugin) => [plugin.name, plugin.defaultEnabled])\n )\n );\n\nexport type Features = z.infer<typeof featuresSchema>;\n\nconst baseSdkConfigSchema = z.object({\n features: featuresSchema,\n metadata: z.object({\n buildId: z.string().nullable(),\n releaseId: z.string().nullable(),\n environment: envSchema,\n runtime: runtimeSchema,\n }),\n batch: z\n .object({\n size: z.number().default(DEFAULT_BATCH_SIZE),\n ms: z.number().default(DEFAULT_BATCH_MS),\n })\n .default(() => ({ size: DEFAULT_BATCH_SIZE, ms: DEFAULT_BATCH_MS })),\n /**\n * Offline storage configuration.\n * When enabled, envelopes that fail to send are persisted to IndexedDB and\n * retried when connectivity returns.\n * @default { enabled: false }\n */\n offline: offlineStorageSchema,\n});\n\nconst proxyConfigSchema = z.object({ proxyUrl: z.string() });\n\nconst directConfigSchema = z.object({\n ingestUrl: z.string(),\n surfaceToken: z.string(),\n});\n\nexport const configSchema = baseSdkConfigSchema\n .and(z.union([proxyConfigSchema, directConfigSchema]))\n .transform((cfg) => {\n const env = cfg.metadata.environment;\n const replayDefault = env !== \"development\";\n\n if (cfg.features.replay === undefined) {\n cfg.features = {\n ...cfg.features,\n replay: replayDefault,\n };\n }\n return cfg;\n });\n\nexport type Config = z.output<typeof configSchema>;\n\nexport const configInputSchema = z\n .object({\n features: featuresSchema.optional(),\n metadata: z\n .object({\n buildId: z.string().nullable(),\n releaseId: z.string().nullable(),\n environment: envSchema,\n runtime: runtimeSchema,\n })\n .partial()\n .optional(),\n batch: z\n .object({\n size: z.number(),\n ms: z.number(),\n })\n .partial()\n .optional(),\n offline: offlineStorageSchema.optional(),\n })\n .and(z.union([proxyConfigSchema, directConfigSchema]));\n\nexport type ConfigInput = z.infer<typeof configInputSchema>;\n\nexport const persistenceTypeSchema = z.enum([\n \"localStorage\",\n \"sessionStorage\",\n \"memory\",\n]);\n\nexport type PersistenceType = z.infer<typeof persistenceTypeSchema>;\n"],"mappings":";;;;;;AASA,MAAM,qBAAqB;AAC3B,MAAM,mBAAmB;AAEzB,MAAa,uBAAuB,EACjC,OAAO;CAMN,SAAS,EAAE,SAAS,CAAC,QAAQ,MAAM;CAKnC,cAAc,EAAE,QAAQ,CAAC,QAAQ,IAAI;CACtC,CAAC,CACD,QAAQ;CAAE,SAAS;CAAO,cAAc;CAAK,CAAC;AAIjD,MAAa,mBAAmB,EAAE,MAAM,CACtC,EAAE,QAAQ,EACV,EAAE,KAAK,CAAC,SAAS,wBAAwB,CAAC,CAC3C,CAAC;AAEF,MAAa,iBAAiB,EAC3B,OACC,OAAO,YACL,gBAAgB,KAAK,WAAW,CAC9B,OAAO,MACP,EAAE,SAAS,CAAC,QAAQ,OAAO,eAAe,CAC3C,CAAC,CACH,CACF,CACA,SAAS,CACT,QACC,OAAO,YACL,gBAAgB,KAAK,WAAW,CAAC,OAAO,MAAM,OAAO,eAAe,CAAC,CACtE,CACF;AAIH,MAAM,sBAAsB,EAAE,OAAO;CACnC,UAAU;CACV,UAAU,EAAE,OAAO;EACjB,SAAS,EAAE,QAAQ,CAAC,UAAU;EAC9B,WAAW,EAAE,QAAQ,CAAC,UAAU;EAChC,aAAa;EACb,SAAS;EACV,CAAC;CACF,OAAO,EACJ,OAAO;EACN,MAAM,EAAE,QAAQ,CAAC,QAAQ,mBAAmB;EAC5C,IAAI,EAAE,QAAQ,CAAC,QAAQ,iBAAiB;EACzC,CAAC,CACD,eAAe;EAAE,MAAM;EAAoB,IAAI;EAAkB,EAAE;CAOtE,SAAS;CACV,CAAC;AAEF,MAAM,oBAAoB,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;AAE5D,MAAM,qBAAqB,EAAE,OAAO;CAClC,WAAW,EAAE,QAAQ;CACrB,cAAc,EAAE,QAAQ;CACzB,CAAC;AAEF,MAAa,eAAe,oBACzB,IAAI,EAAE,MAAM,CAAC,mBAAmB,mBAAmB,CAAC,CAAC,CACrD,WAAW,QAAQ;CAElB,MAAM,gBADM,IAAI,SAAS,gBACK;AAE9B,KAAI,IAAI,SAAS,WAAW,OAC1B,KAAI,WAAW;EACb,GAAG,IAAI;EACP,QAAQ;EACT;AAEH,QAAO;EACP;AAIJ,MAAa,oBAAoB,EAC9B,OAAO;CACN,UAAU,eAAe,UAAU;CACnC,UAAU,EACP,OAAO;EACN,SAAS,EAAE,QAAQ,CAAC,UAAU;EAC9B,WAAW,EAAE,QAAQ,CAAC,UAAU;EAChC,aAAa;EACb,SAAS;EACV,CAAC,CACD,SAAS,CACT,UAAU;CACb,OAAO,EACJ,OAAO;EACN,MAAM,EAAE,QAAQ;EAChB,IAAI,EAAE,QAAQ;EACf,CAAC,CACD,SAAS,CACT,UAAU;CACb,SAAS,qBAAqB,UAAU;CACzC,CAAC,CACD,IAAI,EAAE,MAAM,CAAC,mBAAmB,mBAAmB,CAAC,CAAC;AAIxD,MAAa,wBAAwB,EAAE,KAAK;CAC1C;CACA;CACA;CACD,CAAC"}
@@ -0,0 +1,190 @@
1
+ import { EventType } from "./plugins/lib/types.mjs";
2
+ import { z } from "zod/v4";
3
+
4
+ //#region src/sdk/envelope.d.ts
5
+ declare const envelopeVersion: z.ZodUnion<readonly [z.ZodLiteral<0>]>;
6
+ type EnvelopeVersion = z.infer<typeof envelopeVersion>;
7
+ declare const envelopeSchema: z.ZodIntersection<z.ZodObject<{
8
+ uuid: z.ZodUUID;
9
+ v: z.ZodUnion<readonly [z.ZodLiteral<0>]>;
10
+ runtime: z.ZodNullable<z.ZodEnum<{
11
+ edge: "edge";
12
+ browser: "browser";
13
+ node: "node";
14
+ }>>;
15
+ environment: z.ZodNullable<z.ZodEnum<{
16
+ development: "development";
17
+ preview: "preview";
18
+ production: "production";
19
+ }>>;
20
+ buildId: z.ZodNullable<z.ZodString>;
21
+ releaseId: z.ZodNullable<z.ZodString>;
22
+ clientTs: z.ZodInt;
23
+ sessionId: z.ZodNullable<z.ZodUUID>;
24
+ }, z.core.$strip>, z.ZodDiscriminatedUnion<[z.ZodObject<{
25
+ type: z.ZodLiteral<"error">;
26
+ payload: z.ZodObject<{
27
+ frames: z.ZodArray<z.ZodObject<{
28
+ file: z.ZodObject<{
29
+ reported: z.ZodNullable<z.ZodString>;
30
+ }, z.core.$strip>;
31
+ line: z.ZodObject<{
32
+ reported: z.ZodNullable<z.ZodNumber>;
33
+ }, z.core.$strip>;
34
+ column: z.ZodObject<{
35
+ reported: z.ZodNullable<z.ZodNumber>;
36
+ }, z.core.$strip>;
37
+ fn: z.ZodObject<{
38
+ reported: z.ZodNullable<z.ZodString>;
39
+ }, z.core.$strip>;
40
+ }, z.core.$strip>>;
41
+ message: z.ZodNullable<z.ZodString>;
42
+ name: z.ZodNullable<z.ZodString>;
43
+ stack: z.ZodNullable<z.ZodString>;
44
+ errorSource: z.ZodEnum<{
45
+ client: "client";
46
+ server: "server";
47
+ edge: "edge";
48
+ }>;
49
+ }, z.core.$strip>;
50
+ }, z.core.$strip>, z.ZodObject<{
51
+ type: z.ZodLiteral<"session_summary">;
52
+ payload: z.ZodObject<{
53
+ summary: z.ZodString;
54
+ pageTitle: z.ZodString;
55
+ pageUrl: z.ZodURL;
56
+ contentLength: z.ZodNumber;
57
+ timestamp: z.ZodNumber;
58
+ }, z.core.$strip>;
59
+ }, z.core.$strip>, z.ZodObject<{
60
+ type: z.ZodLiteral<"pageview">;
61
+ payload: z.ZodObject<{
62
+ url: z.ZodString;
63
+ title: z.ZodOptional<z.ZodString>;
64
+ }, z.core.$strip>;
65
+ }, z.core.$strip>, z.ZodObject<{
66
+ type: z.ZodLiteral<"pageleave">;
67
+ payload: z.ZodObject<{
68
+ url: z.ZodString;
69
+ durationMs: z.ZodOptional<z.ZodNumber>;
70
+ }, z.core.$strip>;
71
+ }, z.core.$strip>, z.ZodObject<{
72
+ type: z.ZodLiteral<"ui_event">;
73
+ payload: z.ZodObject<{
74
+ event: z.ZodRecord<z.ZodString, z.ZodUnknown>;
75
+ }, z.core.$strip>;
76
+ }, z.core.$strip>, z.ZodObject<{
77
+ type: z.ZodLiteral<"replay_chunk">;
78
+ payload: z.ZodObject<{
79
+ ts: z.ZodNumber;
80
+ count: z.ZodNumber;
81
+ events: z.ZodArray<z.ZodString>;
82
+ }, z.core.$strip>;
83
+ }, z.core.$strip>, z.ZodObject<{
84
+ type: z.ZodLiteral<"rage_click">;
85
+ payload: z.ZodObject<{
86
+ count: z.ZodNumber;
87
+ timeWindow: z.ZodNumber;
88
+ selector: z.ZodString;
89
+ text: z.ZodString;
90
+ x: z.ZodNumber;
91
+ y: z.ZodNumber;
92
+ timestamp: z.ZodNumber;
93
+ }, z.core.$strip>;
94
+ }, z.core.$strip>], "type">>;
95
+ type Envelope<Type extends EventType | undefined = undefined> = Type extends EventType ? Extract<z.infer<typeof envelopeSchema>, {
96
+ type: Type;
97
+ }> : z.infer<typeof envelopeSchema>;
98
+ declare const stampedEnvelopeSchema: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
99
+ uuid: z.ZodUUID;
100
+ v: z.ZodUnion<readonly [z.ZodLiteral<0>]>;
101
+ runtime: z.ZodNullable<z.ZodEnum<{
102
+ edge: "edge";
103
+ browser: "browser";
104
+ node: "node";
105
+ }>>;
106
+ environment: z.ZodNullable<z.ZodEnum<{
107
+ development: "development";
108
+ preview: "preview";
109
+ production: "production";
110
+ }>>;
111
+ buildId: z.ZodNullable<z.ZodString>;
112
+ releaseId: z.ZodNullable<z.ZodString>;
113
+ clientTs: z.ZodInt;
114
+ sessionId: z.ZodNullable<z.ZodUUID>;
115
+ }, z.core.$strip>, z.ZodDiscriminatedUnion<[z.ZodObject<{
116
+ type: z.ZodLiteral<"error">;
117
+ payload: z.ZodObject<{
118
+ frames: z.ZodArray<z.ZodObject<{
119
+ file: z.ZodObject<{
120
+ reported: z.ZodNullable<z.ZodString>;
121
+ }, z.core.$strip>;
122
+ line: z.ZodObject<{
123
+ reported: z.ZodNullable<z.ZodNumber>;
124
+ }, z.core.$strip>;
125
+ column: z.ZodObject<{
126
+ reported: z.ZodNullable<z.ZodNumber>;
127
+ }, z.core.$strip>;
128
+ fn: z.ZodObject<{
129
+ reported: z.ZodNullable<z.ZodString>;
130
+ }, z.core.$strip>;
131
+ }, z.core.$strip>>;
132
+ message: z.ZodNullable<z.ZodString>;
133
+ name: z.ZodNullable<z.ZodString>;
134
+ stack: z.ZodNullable<z.ZodString>;
135
+ errorSource: z.ZodEnum<{
136
+ client: "client";
137
+ server: "server";
138
+ edge: "edge";
139
+ }>;
140
+ }, z.core.$strip>;
141
+ }, z.core.$strip>, z.ZodObject<{
142
+ type: z.ZodLiteral<"session_summary">;
143
+ payload: z.ZodObject<{
144
+ summary: z.ZodString;
145
+ pageTitle: z.ZodString;
146
+ pageUrl: z.ZodURL;
147
+ contentLength: z.ZodNumber;
148
+ timestamp: z.ZodNumber;
149
+ }, z.core.$strip>;
150
+ }, z.core.$strip>, z.ZodObject<{
151
+ type: z.ZodLiteral<"pageview">;
152
+ payload: z.ZodObject<{
153
+ url: z.ZodString;
154
+ title: z.ZodOptional<z.ZodString>;
155
+ }, z.core.$strip>;
156
+ }, z.core.$strip>, z.ZodObject<{
157
+ type: z.ZodLiteral<"pageleave">;
158
+ payload: z.ZodObject<{
159
+ url: z.ZodString;
160
+ durationMs: z.ZodOptional<z.ZodNumber>;
161
+ }, z.core.$strip>;
162
+ }, z.core.$strip>, z.ZodObject<{
163
+ type: z.ZodLiteral<"ui_event">;
164
+ payload: z.ZodObject<{
165
+ event: z.ZodRecord<z.ZodString, z.ZodUnknown>;
166
+ }, z.core.$strip>;
167
+ }, z.core.$strip>, z.ZodObject<{
168
+ type: z.ZodLiteral<"replay_chunk">;
169
+ payload: z.ZodObject<{
170
+ ts: z.ZodNumber;
171
+ count: z.ZodNumber;
172
+ events: z.ZodArray<z.ZodString>;
173
+ }, z.core.$strip>;
174
+ }, z.core.$strip>, z.ZodObject<{
175
+ type: z.ZodLiteral<"rage_click">;
176
+ payload: z.ZodObject<{
177
+ count: z.ZodNumber;
178
+ timeWindow: z.ZodNumber;
179
+ selector: z.ZodString;
180
+ text: z.ZodString;
181
+ x: z.ZodNumber;
182
+ y: z.ZodNumber;
183
+ timestamp: z.ZodNumber;
184
+ }, z.core.$strip>;
185
+ }, z.core.$strip>], "type">>, z.ZodObject<{
186
+ surfaceSlug: z.ZodString;
187
+ }, z.core.$strip>>;
188
+ type StampedEnvelope = z.infer<typeof stampedEnvelopeSchema>;
189
+ //#endregion
190
+ export { Envelope, EnvelopeVersion, StampedEnvelope, envelopeSchema, stampedEnvelopeSchema };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"envelope.d.mts","names":[],"sources":["../../src/sdk/envelope.ts"],"sourcesContent":[],"mappings":";;;;cAiBM,iBAAe,CAAA,CAAA,mBAAA,CAAA,CAAA;KAET,eAAA,GAAkB,CAAA,CAAE,aAAa;AAFvC,cAiBO,cAjBQ,EAiBM,CAAA,CAAA,eAjBN,CAiBM,CAAA,CAAA,SAjBN,CAAA;EAET,IAAA,WAAA;EAeC,CAAA,YAAA,CAAA,SAqCZ,aAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;EArC0B,IAAA,cAAA,CAAA,OAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAuCf,sBAAsB,qCAChC,aAAa,YACT,QAAQ,CAAA,CAAE,aAAa;QAAyB;KAChD,CAAA,CAAE,aAAa;cAER,uBAAqB,CAAA,CAAA,gBAAA,CAAA,CAAA,gBAAA,CAAA,CAAA;;;;;;;;;;;;;;;EA5CP,QAAA,UAAA;EAAA,SAAA,eAAA,UAAA,CAAA;AAuC3B,CAAA,eAAoB,CAAA,yBAAA,CAAA,YAAA,CAAA;EAAc,IAAA,cAAA,CAAA,OAAA,CAAA;EAChC,OAAA,aAAA,CAAA;IAAa,MAAA,YAAA,YAAA,CAAA;MACc,IAAA,aAAA,CAAA;QAAb,QAAA,eAAA,YAAA,CAAA;MAAsC,CAAA,eAAA,CAAA;MAAhD,IAAA,aAAA,CAAA;QACe,QAAA,eAAA,YAAA,CAAA;MAAb,CAAA,eAAA,CAAA;MAAK,MAAA,aAAA,CAAA;QAEA,QAAA,eAKZ,YAAA,CAAA;;;;;;;;;;;;;;;;EALiC,IAAA,cAAA,CAAA,iBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAOtB,eAAA,GAAkB,CAAA,CAAE,aAAa"}
@@ -0,0 +1,57 @@
1
+ import { eventTypeSchema } from "./plugins/lib/types.mjs";
2
+ import { sessionSummaryPayloadSchema } from "#sdk/plugins/payload/ai-summary";
3
+ import { errorEnvelopePayloadSchema } from "#sdk/plugins/payload/errors";
4
+ import { pageleavePayloadSchema, pageviewPayloadSchema, uiEventPayloadSchema } from "#sdk/plugins/payload/page-events";
5
+ import { rageClickPayloadSchema } from "#sdk/plugins/payload/rage-click";
6
+ import { z } from "zod/v4";
7
+ import { envSchema, runtimeSchema } from "#sdk/runtime";
8
+ import { sessionIdSchema } from "#data/session";
9
+ import { surfaceSlugSchema } from "#data/surface";
10
+ import { replayChunkPayloadSchema } from "#sdk/plugins/payload/replay";
11
+
12
+ //#region src/sdk/envelope.ts
13
+ const envelopeVersion = z.union([z.literal(0)]);
14
+ const envelopeHeadersSchema = z.object({
15
+ uuid: z.uuidv7(),
16
+ v: envelopeVersion,
17
+ runtime: runtimeSchema,
18
+ environment: envSchema,
19
+ buildId: z.string().nullable(),
20
+ releaseId: z.string().nullable(),
21
+ clientTs: z.int(),
22
+ sessionId: sessionIdSchema.nullable()
23
+ });
24
+ const envelopeSchema = envelopeHeadersSchema.and(z.discriminatedUnion("type", [
25
+ z.object({
26
+ type: z.literal(eventTypeSchema.enum.error),
27
+ payload: errorEnvelopePayloadSchema
28
+ }),
29
+ z.object({
30
+ type: z.literal(eventTypeSchema.enum.session_summary),
31
+ payload: sessionSummaryPayloadSchema
32
+ }),
33
+ z.object({
34
+ type: z.literal(eventTypeSchema.enum.pageview),
35
+ payload: pageviewPayloadSchema
36
+ }),
37
+ z.object({
38
+ type: z.literal(eventTypeSchema.enum.pageleave),
39
+ payload: pageleavePayloadSchema
40
+ }),
41
+ z.object({
42
+ type: z.literal(eventTypeSchema.enum.ui_event),
43
+ payload: uiEventPayloadSchema
44
+ }),
45
+ z.object({
46
+ type: z.literal(eventTypeSchema.enum.replay_chunk),
47
+ payload: replayChunkPayloadSchema
48
+ }),
49
+ z.object({
50
+ type: z.literal(eventTypeSchema.enum.rage_click),
51
+ payload: rageClickPayloadSchema
52
+ })
53
+ ]));
54
+ const stampedEnvelopeSchema = z.intersection(envelopeSchema, z.object({ surfaceSlug: surfaceSlugSchema }));
55
+
56
+ //#endregion
57
+ export { envelopeSchema, stampedEnvelopeSchema };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"envelope.mjs","names":[],"sources":["../../src/sdk/envelope.ts"],"sourcesContent":["import { z } from \"zod/v4\";\n\nimport { sessionIdSchema } from \"#data/session\";\nimport { surfaceSlugSchema } from \"#data/surface\";\nimport { sessionSummaryPayloadSchema } from \"#sdk/plugins/payload/ai-summary\";\nimport { errorEnvelopePayloadSchema } from \"#sdk/plugins/payload/errors\";\nimport {\n pageleavePayloadSchema,\n pageviewPayloadSchema,\n uiEventPayloadSchema,\n} from \"#sdk/plugins/payload/page-events\";\nimport { rageClickPayloadSchema } from \"#sdk/plugins/payload/rage-click\";\nimport { replayChunkPayloadSchema } from \"#sdk/plugins/payload/replay\";\nimport { envSchema, runtimeSchema } from \"#sdk/runtime\";\n\nimport { type EventType, eventTypeSchema } from \"./plugins/lib/types.js\";\n\nconst envelopeVersion = z.union([z.literal(0)]);\n\nexport type EnvelopeVersion = z.infer<typeof envelopeVersion>;\n\nconst envelopeHeadersSchema = z.object({\n uuid: z.uuidv7(),\n v: envelopeVersion,\n\n runtime: runtimeSchema,\n environment: envSchema,\n buildId: z.string().nullable(),\n releaseId: z.string().nullable(),\n\n clientTs: z.int(),\n sessionId: sessionIdSchema.nullable(),\n});\n\nexport const envelopeSchema = envelopeHeadersSchema.and(\n z.discriminatedUnion(\"type\", [\n z.object({\n type: z.literal(eventTypeSchema.enum.error),\n payload: errorEnvelopePayloadSchema,\n }),\n\n z.object({\n type: z.literal(eventTypeSchema.enum.session_summary),\n payload: sessionSummaryPayloadSchema,\n }),\n\n z.object({\n type: z.literal(eventTypeSchema.enum.pageview),\n payload: pageviewPayloadSchema,\n }),\n\n z.object({\n type: z.literal(eventTypeSchema.enum.pageleave),\n payload: pageleavePayloadSchema,\n }),\n\n z.object({\n type: z.literal(eventTypeSchema.enum.ui_event),\n payload: uiEventPayloadSchema,\n }),\n\n z.object({\n type: z.literal(eventTypeSchema.enum.replay_chunk),\n payload: replayChunkPayloadSchema,\n }),\n\n z.object({\n type: z.literal(eventTypeSchema.enum.rage_click),\n payload: rageClickPayloadSchema,\n }),\n ])\n);\n\nexport type Envelope<Type extends EventType | undefined = undefined> =\n Type extends EventType\n ? Extract<z.infer<typeof envelopeSchema>, { type: Type }>\n : z.infer<typeof envelopeSchema>;\n\nexport const stampedEnvelopeSchema = z.intersection(\n envelopeSchema,\n z.object({\n surfaceSlug: surfaceSlugSchema,\n })\n);\n\nexport type StampedEnvelope = z.infer<typeof stampedEnvelopeSchema>;\n"],"mappings":";;;;;;;;;;;;AAiBA,MAAM,kBAAkB,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;AAI/C,MAAM,wBAAwB,EAAE,OAAO;CACrC,MAAM,EAAE,QAAQ;CAChB,GAAG;CAEH,SAAS;CACT,aAAa;CACb,SAAS,EAAE,QAAQ,CAAC,UAAU;CAC9B,WAAW,EAAE,QAAQ,CAAC,UAAU;CAEhC,UAAU,EAAE,KAAK;CACjB,WAAW,gBAAgB,UAAU;CACtC,CAAC;AAEF,MAAa,iBAAiB,sBAAsB,IAClD,EAAE,mBAAmB,QAAQ;CAC3B,EAAE,OAAO;EACP,MAAM,EAAE,QAAQ,gBAAgB,KAAK,MAAM;EAC3C,SAAS;EACV,CAAC;CAEF,EAAE,OAAO;EACP,MAAM,EAAE,QAAQ,gBAAgB,KAAK,gBAAgB;EACrD,SAAS;EACV,CAAC;CAEF,EAAE,OAAO;EACP,MAAM,EAAE,QAAQ,gBAAgB,KAAK,SAAS;EAC9C,SAAS;EACV,CAAC;CAEF,EAAE,OAAO;EACP,MAAM,EAAE,QAAQ,gBAAgB,KAAK,UAAU;EAC/C,SAAS;EACV,CAAC;CAEF,EAAE,OAAO;EACP,MAAM,EAAE,QAAQ,gBAAgB,KAAK,SAAS;EAC9C,SAAS;EACV,CAAC;CAEF,EAAE,OAAO;EACP,MAAM,EAAE,QAAQ,gBAAgB,KAAK,aAAa;EAClD,SAAS;EACV,CAAC;CAEF,EAAE,OAAO;EACP,MAAM,EAAE,QAAQ,gBAAgB,KAAK,WAAW;EAChD,SAAS;EACV,CAAC;CACH,CAAC,CACH;AAOD,MAAa,wBAAwB,EAAE,aACrC,gBACA,EAAE,OAAO,EACP,aAAa,mBACd,CAAC,CACH"}
@@ -0,0 +1,7 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/sdk/packages.d.ts
4
+ declare const interferePackageSchema: z.ZodUnion<readonly [z.ZodLiteral<"react">, z.ZodLiteral<"next">, z.ZodString]>;
5
+ type InterferePackage = z.infer<typeof interferePackageSchema>;
6
+ //#endregion
7
+ export { InterferePackage, interferePackageSchema };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packages.d.mts","names":[],"sources":["../../src/sdk/packages.ts"],"sourcesContent":[],"mappings":";;;cAEa,wBAAsB,CAAA,CAAA,mBAAA,CAAA,CAAA,qBAAA,CAAA,CAAA,oBAAA,CAAA,CAAA;KAMvB,gBAAA,GAAmB,CAAA,CAAE,aAAa"}
@@ -0,0 +1,11 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/sdk/packages.ts
4
+ const interferePackageSchema = z.union([
5
+ z.literal("react"),
6
+ z.literal("next"),
7
+ z.string()
8
+ ]);
9
+
10
+ //#endregion
11
+ export { interferePackageSchema };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packages.mjs","names":[],"sources":["../../src/sdk/packages.ts"],"sourcesContent":["import { z } from \"zod\";\n\nexport const interferePackageSchema = z.union([\n z.literal(\"react\"),\n z.literal(\"next\"),\n z.string(),\n]);\n\nexport type InterferePackage = z.infer<typeof interferePackageSchema>;\n"],"mappings":";;;AAEA,MAAa,yBAAyB,EAAE,MAAM;CAC5C,EAAE,QAAQ,QAAQ;CAClB,EAAE,QAAQ,OAAO;CACjB,EAAE,QAAQ;CACX,CAAC"}
@@ -0,0 +1,23 @@
1
+ import z$1 from "zod";
2
+
3
+ //#region src/sdk/plugins/lib/schemas.d.ts
4
+
5
+ /**
6
+ * Shape of a single event registration within a plugin.
7
+ * The `payloadSchema` is optional and can be any Zod schema.
8
+ */
9
+ interface PluginEventRegistration {
10
+ readonly name: string;
11
+ readonly enrich: boolean;
12
+ readonly payloadSchema?: z$1.ZodTypeAny;
13
+ }
14
+ /**
15
+ * Shape of a single plugin registration.
16
+ */
17
+ interface PluginRegistration {
18
+ readonly name: string;
19
+ readonly defaultEnabled: boolean;
20
+ readonly events: readonly PluginEventRegistration[];
21
+ }
22
+ //#endregion
23
+ export { PluginEventRegistration, PluginRegistration };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.mts","names":[],"sources":["../../../../src/sdk/plugins/lib/schemas.ts"],"sourcesContent":[],"mappings":";;;;;;AAMA;AASA;UATiB,uBAAA;;;2BAGU,GAAA,CAAE;;;;;UAMZ,kBAAA;;;4BAGW"}
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1,19 @@
1
+ import { PLUGIN_MANIFEST } from "../manifest.mjs";
2
+ import z$1 from "zod";
3
+
4
+ //#region src/sdk/plugins/lib/types.d.ts
5
+ type PluginManifestType = typeof PLUGIN_MANIFEST;
6
+ type PluginRegistrationInManifest = PluginManifestType[number];
7
+ type PluginKey = PluginRegistrationInManifest["name"];
8
+ declare const eventTypeSchema: z$1.ZodEnum<{
9
+ error: "error";
10
+ replay_chunk: "replay_chunk";
11
+ rage_click: "rage_click";
12
+ session_summary: "session_summary";
13
+ pageview: "pageview";
14
+ pageleave: "pageleave";
15
+ ui_event: "ui_event";
16
+ }>;
17
+ type EventType = z$1.infer<typeof eventTypeSchema>;
18
+ //#endregion
19
+ export { EventType, PluginKey, eventTypeSchema };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.mts","names":[],"sources":["../../../../src/sdk/plugins/lib/types.ts"],"sourcesContent":[],"mappings":";;;;KAIK,kBAAA,UAA4B;KAE5B,4BAAA,GAA+B;AAF/B,KAIO,SAAA,GAAY,4BAJwB,CAAA,MAAA,CAAA;AAE3C,cAIQ,eAJoB,EAIL,GAAA,CAAA,OAJQ,CAAA;EAExB,KAAA,EAAA,OAAS;EAER,YAAA,EAAA,cAEZ;EAEW,UAAA,EAAS,YAAkB;;;;;;KAA3B,SAAA,GAAY,GAAA,CAAE,aAAa"}
@@ -0,0 +1,8 @@
1
+ import { PLUGIN_MANIFEST } from "../manifest.mjs";
2
+ import z$1 from "zod";
3
+
4
+ //#region src/sdk/plugins/lib/types.ts
5
+ const eventTypeSchema = z$1.enum(PLUGIN_MANIFEST.flatMap(({ events }) => events.map(({ name }) => name)));
6
+
7
+ //#endregion
8
+ export { eventTypeSchema };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.mjs","names":["z"],"sources":["../../../../src/sdk/plugins/lib/types.ts"],"sourcesContent":["import z from \"zod\";\n\nimport { PLUGIN_MANIFEST } from \"../manifest.js\";\n\ntype PluginManifestType = typeof PLUGIN_MANIFEST;\n\ntype PluginRegistrationInManifest = PluginManifestType[number];\n\nexport type PluginKey = PluginRegistrationInManifest[\"name\"];\n\nexport const eventTypeSchema = z.enum(\n PLUGIN_MANIFEST.flatMap(({ events }) => events.map(({ name }) => name))\n);\n\nexport type EventType = z.infer<typeof eventTypeSchema>;\n"],"mappings":";;;;AAUA,MAAa,kBAAkBA,IAAE,KAC/B,gBAAgB,SAAS,EAAE,aAAa,OAAO,KAAK,EAAE,WAAW,KAAK,CAAC,CACxE"}