@interfere/types 6.0.0 → 8.0.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 (84) hide show
  1. package/dist/data/source-maps.d.mts +1 -8
  2. package/dist/data/source-maps.d.mts.map +1 -1
  3. package/dist/data/source-maps.mjs +1 -1
  4. package/dist/data/source-maps.mjs.map +1 -1
  5. package/dist/integrations/index.d.mts +1 -17
  6. package/dist/integrations/index.d.mts.map +1 -1
  7. package/dist/integrations/index.mjs +5 -7
  8. package/dist/integrations/index.mjs.map +1 -1
  9. package/dist/integrations/platforms/github.d.mts +1 -6
  10. package/dist/integrations/platforms/github.d.mts.map +1 -1
  11. package/dist/integrations/platforms/github.mjs +2 -4
  12. package/dist/integrations/platforms/github.mjs.map +1 -1
  13. package/dist/integrations/platforms/vercel.d.mts +1 -23
  14. package/dist/integrations/platforms/vercel.d.mts.map +1 -1
  15. package/dist/integrations/platforms/vercel.mjs +2 -4
  16. package/dist/integrations/platforms/vercel.mjs.map +1 -1
  17. package/dist/sdk/env.d.mts +3 -7
  18. package/dist/sdk/env.d.mts.map +1 -1
  19. package/dist/sdk/env.mjs +1 -1
  20. package/dist/sdk/env.mjs.map +1 -1
  21. package/dist/sdk/envelope.d.mts +4 -162
  22. package/dist/sdk/envelope.d.mts.map +1 -1
  23. package/dist/sdk/envelope.mjs +5 -7
  24. package/dist/sdk/envelope.mjs.map +1 -1
  25. package/dist/sdk/identify.d.mts +2 -0
  26. package/dist/sdk/identify.d.mts.map +1 -1
  27. package/dist/sdk/identify.mjs +2 -0
  28. package/dist/sdk/identify.mjs.map +1 -1
  29. package/dist/sdk/runtime.d.mts +2 -5
  30. package/dist/sdk/runtime.d.mts.map +1 -1
  31. package/dist/sdk/runtime.mjs +1 -5
  32. package/dist/sdk/runtime.mjs.map +1 -1
  33. package/dist/util/omit-undefined.d.mts +5 -0
  34. package/dist/util/omit-undefined.d.mts.map +1 -0
  35. package/dist/util/omit-undefined.mjs +8 -0
  36. package/dist/util/omit-undefined.mjs.map +1 -0
  37. package/package.json +4 -4
  38. package/dist/auth/public-token.d.mts +0 -9
  39. package/dist/auth/public-token.d.mts.map +0 -1
  40. package/dist/auth/public-token.mjs +0 -7
  41. package/dist/auth/public-token.mjs.map +0 -1
  42. package/dist/data/surface.d.mts +0 -7
  43. package/dist/data/surface.d.mts.map +0 -1
  44. package/dist/data/surface.mjs +0 -4
  45. package/dist/data/surface.mjs.map +0 -1
  46. package/dist/events/identify.d.mts +0 -13
  47. package/dist/events/identify.d.mts.map +0 -1
  48. package/dist/events/identify.mjs +0 -11
  49. package/dist/events/identify.mjs.map +0 -1
  50. package/dist/events/rage-click.d.mts +0 -17
  51. package/dist/events/rage-click.d.mts.map +0 -1
  52. package/dist/events/rage-click.mjs +0 -15
  53. package/dist/events/rage-click.mjs.map +0 -1
  54. package/dist/events/replay-chunk.d.mts +0 -16
  55. package/dist/events/replay-chunk.d.mts.map +0 -1
  56. package/dist/events/replay-chunk.mjs +0 -14
  57. package/dist/events/replay-chunk.mjs.map +0 -1
  58. package/dist/events/session-summary.d.mts +0 -15
  59. package/dist/events/session-summary.d.mts.map +0 -1
  60. package/dist/events/session-summary.mjs +0 -13
  61. package/dist/events/session-summary.mjs.map +0 -1
  62. package/dist/events/ui-event.d.mts +0 -11
  63. package/dist/events/ui-event.d.mts.map +0 -1
  64. package/dist/events/ui-event.mjs +0 -9
  65. package/dist/events/ui-event.mjs.map +0 -1
  66. package/dist/sdk/capture.d.mts +0 -8
  67. package/dist/sdk/capture.d.mts.map +0 -1
  68. package/dist/sdk/capture.mjs +0 -12
  69. package/dist/sdk/capture.mjs.map +0 -1
  70. package/dist/sdk/config.d.mts +0 -183
  71. package/dist/sdk/config.d.mts.map +0 -1
  72. package/dist/sdk/config.mjs +0 -71
  73. package/dist/sdk/config.mjs.map +0 -1
  74. package/dist/sdk/packages.d.mts +0 -7
  75. package/dist/sdk/packages.d.mts.map +0 -1
  76. package/dist/sdk/packages.mjs +0 -9
  77. package/dist/sdk/packages.mjs.map +0 -1
  78. package/dist/sdk/plugins/lib/schemas.d.mts +0 -22
  79. package/dist/sdk/plugins/lib/schemas.d.mts.map +0 -1
  80. package/dist/sdk/plugins/lib/schemas.mjs +0 -1
  81. package/dist/sdk/plugins/payload/ai-summary.d.mts +0 -13
  82. package/dist/sdk/plugins/payload/ai-summary.d.mts.map +0 -1
  83. package/dist/sdk/plugins/payload/ai-summary.mjs +0 -11
  84. package/dist/sdk/plugins/payload/ai-summary.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.mjs","names":[],"sources":["../../src/sdk/runtime.ts"],"sourcesContent":["import { z } from \"zod/v4\";\n\nexport const envSchema = z\n .enum([\"development\", \"preview\", \"production\"])\n .nullable();\n\nexport type Env = z.infer<typeof envSchema>;\n\nexport const runtimeSchema = z.enum([\"browser\", \"node\", \"edge\"]).nullable();\n\nexport type Runtime = z.infer<typeof runtimeSchema>;\n\nexport function inferRuntime(options?: {\n readonly nextRuntime?: unknown;\n}): Runtime {\n // Browser\n if (\n typeof window !== \"undefined\" &&\n typeof document !== \"undefined\" &&\n typeof navigator !== \"undefined\"\n ) {\n return \"browser\";\n }\n\n // Edge (Vercel sets globalThis.EdgeRuntime = \"edge-runtime\")\n if (\n typeof (globalThis as { EdgeRuntime?: unknown }).EdgeRuntime === \"string\"\n ) {\n return \"edge\";\n }\n\n // Next.js Edge (explicit signal)\n if (options?.nextRuntime === \"edge\") {\n return \"edge\";\n }\n\n // Node\n if (\n typeof process !== \"undefined\" &&\n typeof process.versions?.node === \"string\"\n ) {\n return \"node\";\n }\n\n return null;\n}\n\nexport function normalizeEnv(value: unknown): Env {\n if (typeof value !== \"string\") {\n return null;\n }\n\n const env = value.toLowerCase();\n\n if (envSchema.safeParse(env).success) {\n return env as Env;\n }\n\n return null;\n}\n\nexport function normalizeRuntime(\n value: unknown,\n options?: { readonly nextRuntime?: unknown }\n): Runtime {\n if (runtimeSchema.safeParse(value).success) {\n return value as Runtime;\n }\n\n return inferRuntime(options);\n}\n"],"mappings":";;AAEA,MAAa,YAAY,EACtB,KAAK;CAAC;CAAe;CAAW;CAAa,CAAC,CAC9C,UAAU;AAIb,MAAa,gBAAgB,EAAE,KAAK;CAAC;CAAW;CAAQ;CAAO,CAAC,CAAC,UAAU;AAI3E,SAAgB,aAAa,SAEjB;AAEV,KACE,OAAO,WAAW,eAClB,OAAO,aAAa,eACpB,OAAO,cAAc,YAErB,QAAO;AAIT,KACE,OAAQ,WAAyC,gBAAgB,SAEjE,QAAO;AAIT,KAAI,SAAS,gBAAgB,OAC3B,QAAO;AAIT,KACE,OAAO,YAAY,eACnB,OAAO,QAAQ,UAAU,SAAS,SAElC,QAAO;AAGT,QAAO;;AAGT,SAAgB,aAAa,OAAqB;AAChD,KAAI,OAAO,UAAU,SACnB,QAAO;CAGT,MAAM,MAAM,MAAM,aAAa;AAE/B,KAAI,UAAU,UAAU,IAAI,CAAC,QAC3B,QAAO;AAGT,QAAO;;AAGT,SAAgB,iBACd,OACA,SACS;AACT,KAAI,cAAc,UAAU,MAAM,CAAC,QACjC,QAAO;AAGT,QAAO,aAAa,QAAQ"}
1
+ {"version":3,"file":"runtime.mjs","names":[],"sources":["../../src/sdk/runtime.ts"],"sourcesContent":["import { z } from \"zod/v4\";\n\nexport const envSchema = z\n .enum([\"development\", \"preview\", \"production\"])\n .nullable();\n\nexport type Env = z.infer<typeof envSchema>;\n\nexport const runtimeSchema = z.enum([\"browser\", \"node\", \"edge\"]).nullable();\n\nexport type Runtime = z.infer<typeof runtimeSchema>;\n\nexport function inferRuntime(options?: {\n readonly nextRuntime?: unknown;\n}): Runtime {\n // Browser\n if (\n typeof window !== \"undefined\" &&\n typeof document !== \"undefined\" &&\n typeof navigator !== \"undefined\"\n ) {\n return \"browser\";\n }\n\n // Edge (Vercel sets globalThis.EdgeRuntime = \"edge-runtime\")\n if (\n typeof (globalThis as { EdgeRuntime?: unknown }).EdgeRuntime === \"string\"\n ) {\n return \"edge\";\n }\n\n // Next.js Edge (explicit signal)\n if (options?.nextRuntime === \"edge\") {\n return \"edge\";\n }\n\n // Node\n if (\n typeof process !== \"undefined\" &&\n typeof process.versions?.node === \"string\"\n ) {\n return \"node\";\n }\n\n return null;\n}\n\nexport function normalizeEnv(value: unknown): Env {\n if (typeof value !== \"string\") {\n return null;\n }\n\n const env = value.toLowerCase();\n\n if (envSchema.safeParse(env).success) {\n return env as Env;\n }\n\n return null;\n}\n"],"mappings":";;AAEA,MAAa,YAAY,EACtB,KAAK;CAAC;CAAe;CAAW;CAAa,CAAC,CAC9C,UAAU;AAIb,MAAa,gBAAgB,EAAE,KAAK;CAAC;CAAW;CAAQ;CAAO,CAAC,CAAC,UAAU;AAI3E,SAAgB,aAAa,SAEjB;AAEV,KACE,OAAO,WAAW,eAClB,OAAO,aAAa,eACpB,OAAO,cAAc,YAErB,QAAO;AAIT,KACE,OAAQ,WAAyC,gBAAgB,SAEjE,QAAO;AAIT,KAAI,SAAS,gBAAgB,OAC3B,QAAO;AAIT,KACE,OAAO,YAAY,eACnB,OAAO,QAAQ,UAAU,SAAS,SAElC,QAAO;AAGT,QAAO;;AAGT,SAAgB,aAAa,OAAqB;AAChD,KAAI,OAAO,UAAU,SACnB,QAAO;CAGT,MAAM,MAAM,MAAM,aAAa;AAE/B,KAAI,UAAU,UAAU,IAAI,CAAC,QAC3B,QAAO;AAGT,QAAO"}
@@ -0,0 +1,5 @@
1
+ //#region src/util/omit-undefined.d.ts
2
+ type OmitUndefined<T extends object> = Partial<{ [K in keyof T]: Exclude<T[K], undefined> }>;
3
+ declare function omitUndefined<T extends object>(value: T): OmitUndefined<T>;
4
+ //#endregion
5
+ export { OmitUndefined, omitUndefined };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"omit-undefined.d.mts","names":[],"sources":["../../src/util/omit-undefined.ts"],"mappings":";KAAY,aAAA,qBAAkC,OAAA,eAChC,CAAA,GAAI,OAAA,CAAQ,CAAA,CAAE,CAAA;AAAA,iBAGZ,aAAA,kBAAA,CAAgC,KAAA,EAAO,CAAA,GAAI,aAAA,CAAc,CAAA"}
@@ -0,0 +1,8 @@
1
+ //#region src/util/omit-undefined.ts
2
+ function omitUndefined(value) {
3
+ const result = {};
4
+ for (const [key, entry] of Object.entries(value)) if (entry !== void 0) result[key] = entry;
5
+ return result;
6
+ }
7
+ //#endregion
8
+ export { omitUndefined };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"omit-undefined.mjs","names":[],"sources":["../../src/util/omit-undefined.ts"],"sourcesContent":["export type OmitUndefined<T extends object> = Partial<{\n [K in keyof T]: Exclude<T[K], undefined>;\n}>;\n\nexport function omitUndefined<T extends object>(value: T): OmitUndefined<T> {\n const result: Record<string, unknown> = {};\n\n for (const [key, entry] of Object.entries(value as Record<string, unknown>)) {\n if (entry !== undefined) {\n result[key] = entry;\n }\n }\n\n return result as OmitUndefined<T>;\n}\n"],"mappings":";AAIA,SAAgB,cAAgC,OAA4B;CAC1E,MAAM,SAAkC,EAAE;AAE1C,MAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,MAAiC,CACzE,KAAI,UAAU,KAAA,EACZ,QAAO,OAAO;AAIlB,QAAO"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@interfere/types",
3
- "version": "6.0.0",
3
+ "version": "8.0.0",
4
4
  "license": "MIT",
5
5
  "description": "TypeScript & Zod types for Interfere",
6
6
  "keywords": [
@@ -106,13 +106,13 @@
106
106
  "typecheck": "tsc --noEmit --incremental"
107
107
  },
108
108
  "dependencies": {
109
- "@interfere/constants": "^6.0.0",
109
+ "@interfere/constants": "^8.0.0",
110
110
  "error-stack-parser-es": "^1.0.5",
111
111
  "zod": "^4.3.6"
112
112
  },
113
113
  "devDependencies": {
114
- "@interfere/typescript-config": "^6.0.0",
115
- "@interfere/vitest-config": "^6.0.0",
114
+ "@interfere/typescript-config": "^8.0.0",
115
+ "@interfere/vitest-config": "^8.0.0",
116
116
  "@types/node": "^24.12.0",
117
117
  "@vitest/coverage-v8": "^4.0.18",
118
118
  "tsdown": "^0.21.4",
@@ -1,9 +0,0 @@
1
- import { z } from "zod/v4";
2
-
3
- //#region src/auth/public-token.d.ts
4
- declare const PUBLIC_TOKEN_PREFIX = "int_pub_";
5
- declare const PUBLIC_TOKEN_REGEX: RegExp;
6
- declare const publicTokenSchema: z.ZodString;
7
- type PublicToken = z.infer<typeof publicTokenSchema>;
8
- //#endregion
9
- export { PUBLIC_TOKEN_PREFIX, PUBLIC_TOKEN_REGEX, PublicToken, publicTokenSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"public-token.d.mts","names":[],"sources":["../../src/auth/public-token.ts"],"mappings":";;;cAEa,mBAAA;AAAA,cACA,kBAAA,EAAkB,MAAA;AAAA,cAElB,iBAAA,EAAiB,CAAA,CAAA,SAAA;AAAA,KAElB,WAAA,GAAc,CAAA,CAAE,KAAA,QAAa,iBAAA"}
@@ -1,7 +0,0 @@
1
- import { z } from "zod/v4";
2
- //#region src/auth/public-token.ts
3
- const PUBLIC_TOKEN_PREFIX = "int_pub_";
4
- const PUBLIC_TOKEN_REGEX = /^int_pub_([a-zA-Z0-9]+)$/;
5
- const publicTokenSchema = z.string().startsWith(PUBLIC_TOKEN_PREFIX);
6
- //#endregion
7
- export { PUBLIC_TOKEN_PREFIX, PUBLIC_TOKEN_REGEX, publicTokenSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"public-token.mjs","names":[],"sources":["../../src/auth/public-token.ts"],"sourcesContent":["import { z } from \"zod/v4\";\n\nexport const PUBLIC_TOKEN_PREFIX = \"int_pub_\";\nexport const PUBLIC_TOKEN_REGEX = /^int_pub_([a-zA-Z0-9]+)$/;\n\nexport const publicTokenSchema = z.string().startsWith(PUBLIC_TOKEN_PREFIX);\n\nexport type PublicToken = z.infer<typeof publicTokenSchema>;\n"],"mappings":";;AAEA,MAAa,sBAAsB;AACnC,MAAa,qBAAqB;AAElC,MAAa,oBAAoB,EAAE,QAAQ,CAAC,WAAW,oBAAoB"}
@@ -1,7 +0,0 @@
1
- import { z } from "zod/v4";
2
-
3
- //#region src/data/surface.d.ts
4
- declare const surfaceSlugSchema: z.ZodString;
5
- type SurfaceSlug = z.infer<typeof surfaceSlugSchema>;
6
- //#endregion
7
- export { SurfaceSlug, surfaceSlugSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"surface.d.mts","names":[],"sources":["../../src/data/surface.ts"],"mappings":";;;cAIa,iBAAA,EAAiB,CAAA,CAAA,SAAA;AAAA,KAQlB,WAAA,GAAc,CAAA,CAAE,KAAA,QAAa,iBAAA"}
@@ -1,4 +0,0 @@
1
- import { z } from "zod/v4";
2
- const surfaceSlugSchema = z.string().min(1).max(255).regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/, { message: "Surface slug must be lowercase letters, numbers, and hyphens" });
3
- //#endregion
4
- export { surfaceSlugSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"surface.mjs","names":[],"sources":["../../src/data/surface.ts"],"sourcesContent":["import { z } from \"zod/v4\";\n\nconst SURFACE_SLUG_MAX_LENGTH = 255;\n\nexport const surfaceSlugSchema = z\n .string()\n .min(1)\n .max(SURFACE_SLUG_MAX_LENGTH)\n .regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/, {\n message: \"Surface slug must be lowercase letters, numbers, and hyphens\",\n });\n\nexport type SurfaceSlug = z.infer<typeof surfaceSlugSchema>;\n"],"mappings":";AAIA,MAAa,oBAAoB,EAC9B,QAAQ,CACR,IAAI,EAAE,CACN,IAL6B,IAKD,CAC5B,MAAM,8BAA8B,EACnC,SAAS,gEACV,CAAC"}
@@ -1,13 +0,0 @@
1
- import { z } from "zod/v4";
2
-
3
- //#region src/events/identify.d.ts
4
- declare const identifyFactsPayloadSchema: z.ZodObject<{
5
- identifier: z.ZodString;
6
- email: z.ZodOptional<z.ZodString>;
7
- name: z.ZodOptional<z.ZodString>;
8
- avatar: z.ZodOptional<z.ZodString>;
9
- traits: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
10
- }, z.core.$strip>;
11
- type IdentifyFactsPayload = z.infer<typeof identifyFactsPayloadSchema>;
12
- //#endregion
13
- export { IdentifyFactsPayload, identifyFactsPayloadSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"identify.d.mts","names":[],"sources":["../../src/events/identify.ts"],"mappings":";;;cAEa,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;;KAQ3B,oBAAA,GAAuB,CAAA,CAAE,KAAA,QAAa,0BAAA"}
@@ -1,11 +0,0 @@
1
- import { z } from "zod/v4";
2
- //#region src/events/identify.ts
3
- const identifyFactsPayloadSchema = z.object({
4
- identifier: z.string(),
5
- email: z.string().optional(),
6
- name: z.string().optional(),
7
- avatar: z.string().optional(),
8
- traits: z.record(z.string(), z.unknown()).optional()
9
- });
10
- //#endregion
11
- export { identifyFactsPayloadSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"identify.mjs","names":[],"sources":["../../src/events/identify.ts"],"sourcesContent":["import { z } from \"zod/v4\";\n\nexport const identifyFactsPayloadSchema = z.object({\n identifier: z.string(),\n email: z.string().optional(),\n name: z.string().optional(),\n avatar: z.string().optional(),\n traits: z.record(z.string(), z.unknown()).optional(),\n});\n\nexport type IdentifyFactsPayload = z.infer<typeof identifyFactsPayloadSchema>;\n"],"mappings":";;AAEA,MAAa,6BAA6B,EAAE,OAAO;CACjD,YAAY,EAAE,QAAQ;CACtB,OAAO,EAAE,QAAQ,CAAC,UAAU;CAC5B,MAAM,EAAE,QAAQ,CAAC,UAAU;CAC3B,QAAQ,EAAE,QAAQ,CAAC,UAAU;CAC7B,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC,UAAU;CACrD,CAAC"}
@@ -1,17 +0,0 @@
1
- import { z } from "zod/v4";
2
-
3
- //#region src/events/rage-click.d.ts
4
- declare const rageClickFactsPayloadSchema: z.ZodObject<{
5
- count: z.ZodNumber;
6
- timeWindow: z.ZodNumber;
7
- selector: z.ZodString;
8
- text: z.ZodString;
9
- x: z.ZodNumber;
10
- y: z.ZodNumber;
11
- timestamp: z.ZodNumber;
12
- runtime: z.ZodOptional<z.ZodString>;
13
- releaseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
14
- }, z.core.$strip>;
15
- type RageClickFactsPayload = z.infer<typeof rageClickFactsPayloadSchema>;
16
- //#endregion
17
- export { RageClickFactsPayload, rageClickFactsPayloadSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"rage-click.d.mts","names":[],"sources":["../../src/events/rage-click.ts"],"mappings":";;;cAEa,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;;;;;KAY5B,qBAAA,GAAwB,CAAA,CAAE,KAAA,QAAa,2BAAA"}
@@ -1,15 +0,0 @@
1
- import { z } from "zod/v4";
2
- //#region src/events/rage-click.ts
3
- const rageClickFactsPayloadSchema = z.object({
4
- count: z.number(),
5
- timeWindow: z.number(),
6
- selector: z.string(),
7
- text: z.string(),
8
- x: z.number(),
9
- y: z.number(),
10
- timestamp: z.number(),
11
- runtime: z.string().optional(),
12
- releaseId: z.string().nullable().optional()
13
- });
14
- //#endregion
15
- export { rageClickFactsPayloadSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"rage-click.mjs","names":[],"sources":["../../src/events/rage-click.ts"],"sourcesContent":["import { z } from \"zod/v4\";\n\nexport const rageClickFactsPayloadSchema = z.object({\n count: z.number(),\n timeWindow: z.number(),\n selector: z.string(),\n text: z.string(),\n x: z.number(),\n y: z.number(),\n timestamp: z.number(),\n runtime: z.string().optional(),\n releaseId: z.string().nullable().optional(),\n});\n\nexport type RageClickFactsPayload = z.infer<typeof rageClickFactsPayloadSchema>;\n"],"mappings":";;AAEA,MAAa,8BAA8B,EAAE,OAAO;CAClD,OAAO,EAAE,QAAQ;CACjB,YAAY,EAAE,QAAQ;CACtB,UAAU,EAAE,QAAQ;CACpB,MAAM,EAAE,QAAQ;CAChB,GAAG,EAAE,QAAQ;CACb,GAAG,EAAE,QAAQ;CACb,WAAW,EAAE,QAAQ;CACrB,SAAS,EAAE,QAAQ,CAAC,UAAU;CAC9B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU;CAC5C,CAAC"}
@@ -1,16 +0,0 @@
1
- import { z } from "zod/v4";
2
-
3
- //#region src/events/replay-chunk.d.ts
4
- declare const replayChunkFactsPayloadSchema: z.ZodObject<{
5
- ts: z.ZodNumber;
6
- count: z.ZodNumber;
7
- first_event_ts: z.ZodOptional<z.ZodNumber>;
8
- last_event_ts: z.ZodOptional<z.ZodNumber>;
9
- chunk_count: z.ZodOptional<z.ZodNumber>;
10
- runtime: z.ZodOptional<z.ZodString>;
11
- releaseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
12
- objectKey: z.ZodOptional<z.ZodString>;
13
- }, z.core.$strip>;
14
- type ReplayChunkFactsPayload = z.infer<typeof replayChunkFactsPayloadSchema>;
15
- //#endregion
16
- export { ReplayChunkFactsPayload, replayChunkFactsPayloadSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"replay-chunk.d.mts","names":[],"sources":["../../src/events/replay-chunk.ts"],"mappings":";;;cAEa,6BAAA,EAA6B,CAAA,CAAA,SAAA;;;;;;;;;;KAW9B,uBAAA,GAA0B,CAAA,CAAE,KAAA,QAC/B,6BAAA"}
@@ -1,14 +0,0 @@
1
- import { z } from "zod/v4";
2
- //#region src/events/replay-chunk.ts
3
- const replayChunkFactsPayloadSchema = z.object({
4
- ts: z.number(),
5
- count: z.number(),
6
- first_event_ts: z.number().optional(),
7
- last_event_ts: z.number().optional(),
8
- chunk_count: z.number().optional(),
9
- runtime: z.string().optional(),
10
- releaseId: z.string().nullable().optional(),
11
- objectKey: z.string().optional()
12
- });
13
- //#endregion
14
- export { replayChunkFactsPayloadSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"replay-chunk.mjs","names":[],"sources":["../../src/events/replay-chunk.ts"],"sourcesContent":["import { z } from \"zod/v4\";\n\nexport const replayChunkFactsPayloadSchema = z.object({\n ts: z.number(),\n count: z.number(),\n first_event_ts: z.number().optional(),\n last_event_ts: z.number().optional(),\n chunk_count: z.number().optional(),\n runtime: z.string().optional(),\n releaseId: z.string().nullable().optional(),\n objectKey: z.string().optional(),\n});\n\nexport type ReplayChunkFactsPayload = z.infer<\n typeof replayChunkFactsPayloadSchema\n>;\n"],"mappings":";;AAEA,MAAa,gCAAgC,EAAE,OAAO;CACpD,IAAI,EAAE,QAAQ;CACd,OAAO,EAAE,QAAQ;CACjB,gBAAgB,EAAE,QAAQ,CAAC,UAAU;CACrC,eAAe,EAAE,QAAQ,CAAC,UAAU;CACpC,aAAa,EAAE,QAAQ,CAAC,UAAU;CAClC,SAAS,EAAE,QAAQ,CAAC,UAAU;CAC9B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU;CAC3C,WAAW,EAAE,QAAQ,CAAC,UAAU;CACjC,CAAC"}
@@ -1,15 +0,0 @@
1
- import { z } from "zod/v4";
2
-
3
- //#region src/events/session-summary.d.ts
4
- declare const sessionSummaryFactsPayloadSchema: z.ZodObject<{
5
- summary: z.ZodString;
6
- pageTitle: z.ZodString;
7
- pageUrl: z.ZodString;
8
- contentLength: z.ZodNumber;
9
- timestamp: z.ZodNumber;
10
- runtime: z.ZodOptional<z.ZodString>;
11
- releaseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
12
- }, z.core.$strip>;
13
- type SessionSummaryFactsPayload = z.infer<typeof sessionSummaryFactsPayloadSchema>;
14
- //#endregion
15
- export { SessionSummaryFactsPayload, sessionSummaryFactsPayloadSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-summary.d.mts","names":[],"sources":["../../src/events/session-summary.ts"],"mappings":";;;cAEa,gCAAA,EAAgC,CAAA,CAAA,SAAA;;;;;;;;;KAUjC,0BAAA,GAA6B,CAAA,CAAE,KAAA,QAClC,gCAAA"}
@@ -1,13 +0,0 @@
1
- import { z } from "zod/v4";
2
- //#region src/events/session-summary.ts
3
- const sessionSummaryFactsPayloadSchema = z.object({
4
- summary: z.string(),
5
- pageTitle: z.string(),
6
- pageUrl: z.string(),
7
- contentLength: z.number(),
8
- timestamp: z.number(),
9
- runtime: z.string().optional(),
10
- releaseId: z.string().nullable().optional()
11
- });
12
- //#endregion
13
- export { sessionSummaryFactsPayloadSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-summary.mjs","names":[],"sources":["../../src/events/session-summary.ts"],"sourcesContent":["import { z } from \"zod/v4\";\n\nexport const sessionSummaryFactsPayloadSchema = z.object({\n summary: z.string(),\n pageTitle: z.string(),\n pageUrl: z.string(),\n contentLength: z.number(),\n timestamp: z.number(),\n runtime: z.string().optional(),\n releaseId: z.string().nullable().optional(),\n});\n\nexport type SessionSummaryFactsPayload = z.infer<\n typeof sessionSummaryFactsPayloadSchema\n>;\n"],"mappings":";;AAEA,MAAa,mCAAmC,EAAE,OAAO;CACvD,SAAS,EAAE,QAAQ;CACnB,WAAW,EAAE,QAAQ;CACrB,SAAS,EAAE,QAAQ;CACnB,eAAe,EAAE,QAAQ;CACzB,WAAW,EAAE,QAAQ;CACrB,SAAS,EAAE,QAAQ,CAAC,UAAU;CAC9B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU;CAC5C,CAAC"}
@@ -1,11 +0,0 @@
1
- import { z } from "zod/v4";
2
-
3
- //#region src/events/ui-event.d.ts
4
- declare const uiEventFactsPayloadSchema: z.ZodObject<{
5
- event: z.ZodRecord<z.ZodString, z.ZodUnknown>;
6
- runtime: z.ZodOptional<z.ZodString>;
7
- releaseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8
- }, z.core.$strip>;
9
- type UiEventFactsPayload = z.infer<typeof uiEventFactsPayloadSchema>;
10
- //#endregion
11
- export { UiEventFactsPayload, uiEventFactsPayloadSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"ui-event.d.mts","names":[],"sources":["../../src/events/ui-event.ts"],"mappings":";;;cAEa,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;;;KAM1B,mBAAA,GAAsB,CAAA,CAAE,KAAA,QAAa,yBAAA"}
@@ -1,9 +0,0 @@
1
- import { z } from "zod/v4";
2
- //#region src/events/ui-event.ts
3
- const uiEventFactsPayloadSchema = z.object({
4
- event: z.record(z.string(), z.unknown()),
5
- runtime: z.string().optional(),
6
- releaseId: z.string().nullable().optional()
7
- });
8
- //#endregion
9
- export { uiEventFactsPayloadSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"ui-event.mjs","names":[],"sources":["../../src/events/ui-event.ts"],"sourcesContent":["import { z } from \"zod/v4\";\n\nexport const uiEventFactsPayloadSchema = z.object({\n event: z.record(z.string(), z.unknown()),\n runtime: z.string().optional(),\n releaseId: z.string().nullable().optional(),\n});\n\nexport type UiEventFactsPayload = z.infer<typeof uiEventFactsPayloadSchema>;\n"],"mappings":";;AAEA,MAAa,4BAA4B,EAAE,OAAO;CAChD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC;CACxC,SAAS,EAAE,QAAQ,CAAC,UAAU;CAC9B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU;CAC5C,CAAC"}
@@ -1,8 +0,0 @@
1
- import { EventType } from "./envelope.mjs";
2
- import { z } from "zod/v4";
3
-
4
- //#region src/sdk/capture.d.ts
5
- declare const defaultCaptureSchemas: Partial<Record<EventType, z.ZodType>>;
6
- type CaptureDefaults = typeof defaultCaptureSchemas;
7
- //#endregion
8
- export { CaptureDefaults, defaultCaptureSchemas };
@@ -1 +0,0 @@
1
- {"version":3,"file":"capture.d.mts","names":[],"sources":["../../src/sdk/capture.ts"],"mappings":";;;;cAWa,qBAAA,EAAuB,OAAA,CAAQ,MAAA,CAAO,SAAA,EAAW,CAAA,CAAE,OAAA;AAAA,KAOpD,eAAA,UAAyB,qBAAA"}
@@ -1,12 +0,0 @@
1
- import { errorEnvelopePayloadSchema } from "#sdk/plugins/payload/errors";
2
- import { pageleavePayloadSchema, pageviewPayloadSchema } from "#sdk/plugins/payload/page-events";
3
- import { rageClickPayloadSchema } from "#sdk/plugins/payload/rage-click";
4
- //#region src/sdk/capture.ts
5
- const defaultCaptureSchemas = {
6
- error: errorEnvelopePayloadSchema,
7
- pageleave: pageleavePayloadSchema,
8
- pageview: pageviewPayloadSchema,
9
- rage_click: rageClickPayloadSchema
10
- };
11
- //#endregion
12
- export { defaultCaptureSchemas };
@@ -1 +0,0 @@
1
- {"version":3,"file":"capture.mjs","names":[],"sources":["../../src/sdk/capture.ts"],"sourcesContent":["import type { z } from \"zod/v4\";\n\nimport { errorEnvelopePayloadSchema } from \"#sdk/plugins/payload/errors\";\nimport {\n pageleavePayloadSchema,\n pageviewPayloadSchema,\n} from \"#sdk/plugins/payload/page-events\";\nimport { rageClickPayloadSchema } from \"#sdk/plugins/payload/rage-click\";\n\nimport type { EventType } from \"./envelope.js\";\n\nexport const defaultCaptureSchemas: Partial<Record<EventType, z.ZodType>> = {\n error: errorEnvelopePayloadSchema,\n pageleave: pageleavePayloadSchema,\n pageview: pageviewPayloadSchema,\n rage_click: rageClickPayloadSchema,\n};\n\nexport type CaptureDefaults = typeof defaultCaptureSchemas;\n"],"mappings":";;;;AAWA,MAAa,wBAA+D;CAC1E,OAAO;CACP,WAAW;CACX,UAAU;CACV,YAAY;CACb"}
@@ -1,183 +0,0 @@
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://in.interfere.com": "https://in.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
- device: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
16
- pageEvents: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
17
- rageClick: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
18
- replay: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
19
- }, z.core.$strip>>;
20
- type Features = z.infer<typeof featuresSchema>;
21
- declare const configSchema: z.ZodPipe<z.ZodIntersection<z.ZodObject<{
22
- features: z.ZodDefault<z.ZodObject<{
23
- errors: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
24
- device: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
25
- pageEvents: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
26
- rageClick: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
27
- replay: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
28
- }, z.core.$strip>>;
29
- metadata: z.ZodObject<{
30
- buildId: z.ZodNullable<z.ZodString>;
31
- releaseId: z.ZodNullable<z.ZodString>;
32
- environment: z.ZodNullable<z.ZodEnum<{
33
- development: "development";
34
- preview: "preview";
35
- production: "production";
36
- }>>;
37
- runtime: z.ZodNullable<z.ZodEnum<{
38
- browser: "browser";
39
- node: "node";
40
- edge: "edge";
41
- }>>;
42
- }, z.core.$strip>;
43
- batch: z.ZodDefault<z.ZodObject<{
44
- size: z.ZodDefault<z.ZodNumber>;
45
- ms: z.ZodDefault<z.ZodNumber>;
46
- maxBufferSize: z.ZodDefault<z.ZodNumber>;
47
- }, z.core.$strip>>;
48
- offline: z.ZodDefault<z.ZodObject<{
49
- enabled: z.ZodDefault<z.ZodBoolean>;
50
- maxQueueSize: z.ZodDefault<z.ZodNumber>;
51
- }, z.core.$strip>>;
52
- }, z.core.$strip>, z.ZodUnion<readonly [z.ZodObject<{
53
- proxyUrl: z.ZodString;
54
- }, z.core.$strip>, z.ZodObject<{
55
- ingestUrl: z.ZodString;
56
- surfaceToken: z.ZodString;
57
- }, z.core.$strip>]>>, z.ZodTransform<({
58
- features: {
59
- errors?: boolean | undefined;
60
- device?: boolean | undefined;
61
- pageEvents?: boolean | undefined;
62
- rageClick?: boolean | undefined;
63
- replay?: boolean | undefined;
64
- };
65
- metadata: {
66
- buildId: string | null;
67
- releaseId: string | null;
68
- environment: "development" | "preview" | "production" | null;
69
- runtime: "browser" | "node" | "edge" | null;
70
- };
71
- batch: {
72
- size: number;
73
- ms: number;
74
- maxBufferSize: number;
75
- };
76
- offline: {
77
- enabled: boolean;
78
- maxQueueSize: number;
79
- };
80
- } & {
81
- proxyUrl: string;
82
- }) | ({
83
- features: {
84
- errors?: boolean | undefined;
85
- device?: boolean | undefined;
86
- pageEvents?: boolean | undefined;
87
- rageClick?: boolean | undefined;
88
- replay?: boolean | undefined;
89
- };
90
- metadata: {
91
- buildId: string | null;
92
- releaseId: string | null;
93
- environment: "development" | "preview" | "production" | null;
94
- runtime: "browser" | "node" | "edge" | null;
95
- };
96
- batch: {
97
- size: number;
98
- ms: number;
99
- maxBufferSize: number;
100
- };
101
- offline: {
102
- enabled: boolean;
103
- maxQueueSize: number;
104
- };
105
- } & {
106
- ingestUrl: string;
107
- surfaceToken: string;
108
- }), {
109
- features: {
110
- errors?: boolean | undefined;
111
- device?: boolean | undefined;
112
- pageEvents?: boolean | undefined;
113
- rageClick?: boolean | undefined;
114
- replay?: boolean | undefined;
115
- };
116
- metadata: {
117
- buildId: string | null;
118
- releaseId: string | null;
119
- environment: "development" | "preview" | "production" | null;
120
- runtime: "browser" | "node" | "edge" | null;
121
- };
122
- batch: {
123
- size: number;
124
- ms: number;
125
- maxBufferSize: number;
126
- };
127
- offline: {
128
- enabled: boolean;
129
- maxQueueSize: number;
130
- };
131
- } & ({
132
- proxyUrl: string;
133
- } | {
134
- ingestUrl: string;
135
- surfaceToken: string;
136
- })>>;
137
- type Config = z.output<typeof configSchema>;
138
- declare const configInputSchema: z.ZodIntersection<z.ZodObject<{
139
- features: z.ZodOptional<z.ZodDefault<z.ZodObject<{
140
- errors: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
141
- device: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
142
- pageEvents: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
143
- rageClick: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
144
- replay: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
145
- }, z.core.$strip>>>;
146
- metadata: z.ZodOptional<z.ZodObject<{
147
- buildId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
148
- releaseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
149
- environment: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
150
- development: "development";
151
- preview: "preview";
152
- production: "production";
153
- }>>>;
154
- runtime: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
155
- browser: "browser";
156
- node: "node";
157
- edge: "edge";
158
- }>>>;
159
- }, z.core.$strip>>;
160
- batch: z.ZodOptional<z.ZodObject<{
161
- size: z.ZodOptional<z.ZodNumber>;
162
- ms: z.ZodOptional<z.ZodNumber>;
163
- maxBufferSize: z.ZodOptional<z.ZodNumber>;
164
- }, z.core.$strip>>;
165
- offline: z.ZodOptional<z.ZodDefault<z.ZodObject<{
166
- enabled: z.ZodDefault<z.ZodBoolean>;
167
- maxQueueSize: z.ZodDefault<z.ZodNumber>;
168
- }, z.core.$strip>>>;
169
- }, z.core.$strip>, z.ZodUnion<readonly [z.ZodObject<{
170
- proxyUrl: z.ZodString;
171
- }, z.core.$strip>, z.ZodObject<{
172
- ingestUrl: z.ZodString;
173
- surfaceToken: z.ZodString;
174
- }, z.core.$strip>]>>;
175
- type ConfigInput = z.infer<typeof configInputSchema>;
176
- declare const persistenceTypeSchema: z.ZodEnum<{
177
- localStorage: "localStorage";
178
- sessionStorage: "sessionStorage";
179
- memory: "memory";
180
- }>;
181
- type PersistenceType = z.infer<typeof persistenceTypeSchema>;
182
- //#endregion
183
- export { Config, ConfigInput, Features, OfflineStorage, PersistenceType, apiBaseUrlSchema, configInputSchema, configSchema, featuresSchema, offlineStorageSchema, persistenceTypeSchema };
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.mts","names":[],"sources":["../../src/sdk/config.ts"],"mappings":";;;cAYa,oBAAA,EAAoB,CAAA,CAAA,UAAA,CAAA,CAAA,CAAA,SAAA;;;;KAgBrB,cAAA,GAAiB,CAAA,CAAE,KAAA,QAAa,oBAAA;AAAA,cAE/B,gBAAA,EAAgB,CAAA,CAAA,QAAA,WAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,OAAA;;;;cAKhB,cAAA,EAAc,CAAA,CAAA,UAAA,CAAA,CAAA,CAAA,SAAA;;;;;;;KAgBf,QAAA,GAAW,CAAA,CAAE,KAAA,QAAa,cAAA;AAAA,cAqCzB,YAAA,EAAY,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA,eAAA,CAAA,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAeb,MAAA,GAAS,CAAA,CAAE,MAAA,QAAc,YAAA;AAAA,cAExB,iBAAA,EAAiB,CAAA,CAAA,eAAA,CAAA,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAwBlB,WAAA,GAAc,CAAA,CAAE,KAAA,QAAa,iBAAA;AAAA,cAE5B,qBAAA,EAAqB,CAAA,CAAA,OAAA;;;;;KAMtB,eAAA,GAAkB,CAAA,CAAE,KAAA,QAAa,qBAAA"}
@@ -1,71 +0,0 @@
1
- import { PLUGIN_MANIFEST } from "./plugins/manifest.mjs";
2
- import { z } from "zod/v4";
3
- import { API_URL } from "@interfere/constants/api";
4
- import { envSchema, runtimeSchema } from "#sdk/runtime";
5
- //#region src/sdk/config.ts
6
- const DEFAULT_BATCH_SIZE = 10;
7
- const DEFAULT_BATCH_MS = 250;
8
- const DEFAULT_MAX_BUFFER_SIZE = 1e3;
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
- maxBufferSize: z.number().default(DEFAULT_MAX_BUFFER_SIZE)
30
- }).default(() => ({
31
- size: DEFAULT_BATCH_SIZE,
32
- ms: DEFAULT_BATCH_MS,
33
- maxBufferSize: DEFAULT_MAX_BUFFER_SIZE
34
- })),
35
- offline: offlineStorageSchema
36
- });
37
- const proxyConfigSchema = z.object({ proxyUrl: z.string() });
38
- const directConfigSchema = z.object({
39
- ingestUrl: z.string(),
40
- surfaceToken: z.string()
41
- });
42
- const configSchema = baseSdkConfigSchema.and(z.union([proxyConfigSchema, directConfigSchema])).transform((cfg) => {
43
- const replayDefault = cfg.metadata.environment !== "development";
44
- if (cfg.features.replay === void 0) cfg.features = {
45
- ...cfg.features,
46
- replay: replayDefault
47
- };
48
- return cfg;
49
- });
50
- const configInputSchema = z.object({
51
- features: featuresSchema.optional(),
52
- metadata: z.object({
53
- buildId: z.string().nullable(),
54
- releaseId: z.string().nullable(),
55
- environment: envSchema,
56
- runtime: runtimeSchema
57
- }).partial().optional(),
58
- batch: z.object({
59
- size: z.number(),
60
- ms: z.number(),
61
- maxBufferSize: z.number()
62
- }).partial().optional(),
63
- offline: offlineStorageSchema.optional()
64
- }).and(z.union([proxyConfigSchema, directConfigSchema]));
65
- const persistenceTypeSchema = z.enum([
66
- "localStorage",
67
- "sessionStorage",
68
- "memory"
69
- ]);
70
- //#endregion
71
- export { apiBaseUrlSchema, configInputSchema, configSchema, featuresSchema, offlineStorageSchema, persistenceTypeSchema };
@@ -1 +0,0 @@
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 { PLUGIN_MANIFEST, type PluginKey } from \"./plugins/manifest.js\";\n\nconst DEFAULT_BATCH_SIZE = 10;\nconst DEFAULT_BATCH_MS = 250;\nconst DEFAULT_MAX_BUFFER_SIZE = 1000;\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 maxBufferSize: z.number().default(DEFAULT_MAX_BUFFER_SIZE),\n })\n .default(() => ({\n size: DEFAULT_BATCH_SIZE,\n ms: DEFAULT_BATCH_MS,\n maxBufferSize: DEFAULT_MAX_BUFFER_SIZE,\n })),\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 maxBufferSize: 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":";;;;;AAQA,MAAM,qBAAqB;AAC3B,MAAM,mBAAmB;AACzB,MAAM,0BAA0B;AAEhC,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;EACxC,eAAe,EAAE,QAAQ,CAAC,QAAQ,wBAAwB;EAC3D,CAAC,CACD,eAAe;EACd,MAAM;EACN,IAAI;EACJ,eAAe;EAChB,EAAE;CAOL,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,KAAA,EAC1B,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;EACd,eAAe,EAAE,QAAQ;EAC1B,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"}
@@ -1,7 +0,0 @@
1
- import { z } from "zod/v4";
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 };
@@ -1 +0,0 @@
1
- {"version":3,"file":"packages.d.mts","names":[],"sources":["../../src/sdk/packages.ts"],"mappings":";;;cAEa,sBAAA,EAAsB,CAAA,CAAA,QAAA,WAAA,CAAA,CAAA,UAAA,WAAA,CAAA,CAAA,UAAA,UAAA,CAAA,CAAA,SAAA;AAAA,KAMvB,gBAAA,GAAmB,CAAA,CAAE,KAAA,QAAa,sBAAA"}
@@ -1,9 +0,0 @@
1
- import { z } from "zod/v4";
2
- //#region src/sdk/packages.ts
3
- const interferePackageSchema = z.union([
4
- z.literal("react"),
5
- z.literal("next"),
6
- z.string()
7
- ]);
8
- //#endregion
9
- export { interferePackageSchema };