@aranova/tracking-next 0.27.0 → 1.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 (71) hide show
  1. package/dist/blog-server.d.mts +2 -1
  2. package/dist/blog-server.d.ts +2 -1
  3. package/dist/blog-server.js +121 -98
  4. package/dist/blog-server.js.map +1 -1
  5. package/dist/blog-server.mjs +86 -63
  6. package/dist/blog-server.mjs.map +1 -1
  7. package/dist/blog.d.mts +651 -1755
  8. package/dist/blog.d.ts +651 -1755
  9. package/dist/blog.js +121 -98
  10. package/dist/blog.js.map +1 -1
  11. package/dist/blog.mjs +86 -63
  12. package/dist/blog.mjs.map +1 -1
  13. package/dist/calendar-server.d.mts +2 -2
  14. package/dist/calendar-server.d.ts +2 -2
  15. package/dist/calendar-server.js +0 -26
  16. package/dist/calendar-server.js.map +1 -1
  17. package/dist/calendar-server.mjs +0 -26
  18. package/dist/calendar-server.mjs.map +1 -1
  19. package/dist/calendar.d.mts +3 -3
  20. package/dist/calendar.d.ts +3 -3
  21. package/dist/calendar.js +227 -126
  22. package/dist/calendar.js.map +1 -1
  23. package/dist/calendar.mjs +216 -125
  24. package/dist/calendar.mjs.map +1 -1
  25. package/dist/client.d.mts +4 -3
  26. package/dist/client.d.ts +4 -3
  27. package/dist/client.js +185 -277
  28. package/dist/client.js.map +1 -1
  29. package/dist/client.mjs +157 -249
  30. package/dist/client.mjs.map +1 -1
  31. package/dist/index.d.mts +8 -7
  32. package/dist/index.d.ts +8 -7
  33. package/dist/index.js +482 -484
  34. package/dist/index.js.map +1 -1
  35. package/dist/index.mjs +471 -484
  36. package/dist/index.mjs.map +1 -1
  37. package/dist/ingest-typed-BdKmlouW.d.ts +791 -0
  38. package/dist/ingest-typed-Bo7WPmpU.d.mts +791 -0
  39. package/dist/middleware.js +0 -467
  40. package/dist/middleware.js.map +1 -1
  41. package/dist/middleware.mjs +0 -467
  42. package/dist/middleware.mjs.map +1 -1
  43. package/dist/{phone-utils-BVzSNBf1.d.mts → phone-utils-CubQif9Z.d.mts} +18 -78
  44. package/dist/{phone-utils-BVzSNBf1.d.ts → phone-utils-CubQif9Z.d.ts} +18 -78
  45. package/dist/phone.d.mts +2 -2
  46. package/dist/phone.d.ts +2 -2
  47. package/dist/phone.js +0 -464
  48. package/dist/phone.js.map +1 -1
  49. package/dist/phone.mjs +0 -464
  50. package/dist/phone.mjs.map +1 -1
  51. package/dist/{sales-DQGzXSgL.d.mts → sales-D7KstKA-.d.mts} +89 -328
  52. package/dist/{sales-IGC2tq4J.d.ts → sales-DG150g3o.d.ts} +89 -328
  53. package/dist/sales.d.mts +2 -2
  54. package/dist/sales.d.ts +2 -2
  55. package/dist/sales.js +265 -127
  56. package/dist/sales.js.map +1 -1
  57. package/dist/sales.mjs +254 -127
  58. package/dist/sales.mjs.map +1 -1
  59. package/dist/server.d.mts +2 -2
  60. package/dist/server.d.ts +2 -2
  61. package/dist/server.js +0 -467
  62. package/dist/server.js.map +1 -1
  63. package/dist/server.mjs +0 -467
  64. package/dist/server.mjs.map +1 -1
  65. package/dist/transport-CDmGOiCq.d.ts +253 -0
  66. package/dist/transport-I_cMSFQ6.d.mts +253 -0
  67. package/package.json +2 -2
  68. package/dist/ingest-typed-BxLFlZ7N.d.mts +0 -1371
  69. package/dist/ingest-typed-ByQVRMvP.d.ts +0 -1371
  70. package/dist/transport-C-_rFSR4.d.ts +0 -721
  71. package/dist/transport-yUF5Wize.d.mts +0 -721
@@ -8,18 +8,15 @@ function registerCapability(capability) {
8
8
  registered.add(capability);
9
9
  }
10
10
 
11
- // ../tracking-core/src/phone.ts
12
- import { AsYouType, parsePhoneNumberFromString } from "libphonenumber-js";
13
-
14
11
  // ../tracking-core/src/resources/tracking-config-runtime.ts
15
12
  var DEFAULT_CDN_BASE_URL = "https://demos.aranova.io";
16
13
  var RETRY_MAX_MS = 5 * 6e4;
17
14
 
18
15
  // ../tracking-core/src/resources/blog/schema.ts
19
- import { z as z2 } from "zod";
16
+ import * as z2 from "zod/mini";
20
17
 
21
18
  // ../tracking-core/src/resources/blog/theme.ts
22
- import { z } from "zod";
19
+ import * as z from "zod/mini";
23
20
  var BLOG_BREAKPOINTS = ["sm", "md", "lg", "xl", "2xl", "3xl"];
24
21
  var BLOG_BREAKPOINT_MIN_WIDTHS_PX = {
25
22
  sm: 640,
@@ -38,36 +35,41 @@ var LENGTH = /^-?\d+(\.\d+)?(px|rem|em|%|ch|vw)$/;
38
35
  var LINE_HEIGHT = /^-?\d+(\.\d+)?(px|rem|em|%|ch|vw)?$/;
39
36
  var FONT_FAMILY_TOKEN = /^['"]?[a-zA-Z0-9 -]+['"]?$/;
40
37
  var FONT_FAMILY_VAR_TOKEN = /^var\(--[a-zA-Z0-9-]+\)$/;
41
- var colorValueSchema = z.string().refine((v) => HEX_COLOR.test(v) || FUNCTIONAL_COLOR.test(v), {
42
- message: "must be a #hex or rgb()/rgba()/hsl()/hsla()/oklch() color"
43
- });
44
- var lengthValueSchema = z.string().regex(LENGTH, {
45
- message: "must be a CSS length (px|rem|em|%|ch|vw)"
46
- });
47
- var lineHeightValueSchema = z.string().regex(LINE_HEIGHT, {
48
- message: "must be a CSS length or unitless line-height"
49
- });
50
- var fontWeightSchema = z.number().int().min(100).max(1e3);
38
+ var colorValueSchema = z.string().check(
39
+ z.refine((v) => HEX_COLOR.test(v) || FUNCTIONAL_COLOR.test(v), {
40
+ error: "must be a #hex or rgb()/rgba()/hsl()/hsla()/oklch() color"
41
+ })
42
+ );
43
+ var lengthValueSchema = z.string().check(z.regex(LENGTH, { error: "must be a CSS length (px|rem|em|%|ch|vw)" }));
44
+ var lineHeightValueSchema = z.string().check(z.regex(LINE_HEIGHT, { error: "must be a CSS length or unitless line-height" }));
45
+ var fontWeightSchema = z.int().check(z.gte(100), z.lte(1e3));
51
46
  var alignValueSchema = z.enum(["left", "center", "right"]);
52
- var fontFamilySchema = z.string().refine(
53
- (v) => {
54
- const tokens = v.split(",").map((t) => t.trim());
55
- return tokens.length > 0 && tokens.every((t) => FONT_FAMILY_TOKEN.test(t) || FONT_FAMILY_VAR_TOKEN.test(t));
56
- },
57
- { message: "must be a comma-separated list of font-family or var(--custom-property) tokens" }
47
+ var fontFamilySchema = z.string().check(
48
+ z.refine(
49
+ (v) => {
50
+ const tokens = v.split(",").map((t) => t.trim());
51
+ return tokens.length > 0 && tokens.every((t) => FONT_FAMILY_TOKEN.test(t) || FONT_FAMILY_VAR_TOKEN.test(t));
52
+ },
53
+ { error: "must be a comma-separated list of font-family or var(--custom-property) tokens" }
54
+ )
58
55
  );
59
56
  function nullishField(schema) {
60
- return schema.nullish().transform((v) => v ?? void 0);
57
+ return z.optional(
58
+ z.pipe(
59
+ z.nullish(schema),
60
+ z.transform((v) => v ?? void 0)
61
+ )
62
+ );
61
63
  }
62
64
  function breakpointMapSchema(valueSchema) {
63
65
  return z.object({
64
66
  base: valueSchema,
65
- sm: nullishField(valueSchema).catch(void 0),
66
- md: nullishField(valueSchema).catch(void 0),
67
- lg: nullishField(valueSchema).catch(void 0),
68
- xl: nullishField(valueSchema).catch(void 0),
69
- "2xl": nullishField(valueSchema).catch(void 0),
70
- "3xl": nullishField(valueSchema).catch(void 0)
67
+ sm: z.catch(nullishField(valueSchema), void 0),
68
+ md: z.catch(nullishField(valueSchema), void 0),
69
+ lg: z.catch(nullishField(valueSchema), void 0),
70
+ xl: z.catch(nullishField(valueSchema), void 0),
71
+ "2xl": z.catch(nullishField(valueSchema), void 0),
72
+ "3xl": z.catch(nullishField(valueSchema), void 0)
71
73
  });
72
74
  }
73
75
  function responsive(valueSchema) {
@@ -131,14 +133,17 @@ var blogThemeSchema = z.object({
131
133
  function dropInvalidFields(shape) {
132
134
  const out = {};
133
135
  for (const [key, schema] of Object.entries(shape)) {
134
- out[key] = nullTolerant(schema).catch(void 0);
136
+ out[key] = z.catch(nullTolerant(schema), void 0);
135
137
  }
136
138
  return out;
137
139
  }
138
140
  function nullTolerant(schema) {
139
- if (schema instanceof z.ZodUnion) {
140
- const options = schema.options;
141
- return z.union([...options, z.null()]).optional().transform((v) => v ?? void 0);
141
+ if (schema instanceof z.ZodMiniUnion) {
142
+ const options = schema.def.options;
143
+ return z.pipe(
144
+ z.optional(z.union([...options, z.null()])),
145
+ z.transform((v) => v ?? void 0)
146
+ );
142
147
  }
143
148
  return nullishField(schema);
144
149
  }
@@ -263,91 +268,109 @@ function blogThemeToCssVars(theme) {
263
268
  var schemaVersionSchema = z2.literal(1);
264
269
  var blogHeroImageSchema = z2.object({
265
270
  url: z2.string(),
266
- alt: z2.string().catch(""),
267
- width: z2.number().int(),
268
- height: z2.number().int()
271
+ alt: z2.catch(z2.string(), ""),
272
+ width: z2.int(),
273
+ height: z2.int()
269
274
  });
270
275
  var blogManifestEntrySchema = z2.object({
271
276
  slug: z2.string(),
272
277
  title: z2.string(),
273
- description: z2.string().catch(""),
278
+ description: z2.catch(z2.string(), ""),
274
279
  content_hash: z2.string(),
275
280
  content_key: z2.string(),
276
281
  published_at: z2.string(),
277
282
  updated_at: z2.string(),
278
283
  // Estimated read time in whole minutes (computed at publish from the post
279
284
  // body). 0 when unknown; index cards render "N min read".
280
- reading_minutes: z2.number().int().catch(0),
285
+ reading_minutes: z2.catch(z2.int(), 0),
281
286
  // A malformed tags array / hero_image degrades gracefully instead of
282
287
  // dropping the whole entry.
283
- tags: z2.array(z2.string()).catch([]),
284
- hero_image: blogHeroImageSchema.nullable().catch(null)
288
+ tags: z2.catch(z2.array(z2.string()), []),
289
+ hero_image: z2.catch(z2.nullable(blogHeroImageSchema), null)
285
290
  });
286
291
  var blogManifestWireSchema = z2.object({
287
292
  schema_version: schemaVersionSchema,
288
293
  namespace: z2.string(),
289
294
  generated_at: z2.string(),
290
- posts: z2.array(blogManifestEntrySchema).catch([])
295
+ posts: z2.catch(z2.array(blogManifestEntrySchema), [])
291
296
  });
292
- var blogManifestSchema = blogManifestWireSchema.extend({
297
+ var blogManifestSchema = z2.extend(blogManifestWireSchema, {
293
298
  // A single malformed entry is dropped; the rest of the manifest survives.
294
- posts: z2.array(blogManifestEntrySchema.nullable().catch(null)).transform((entries) => entries.filter((e) => e !== null)).catch([])
299
+ posts: z2.catch(
300
+ z2.pipe(
301
+ z2.array(z2.catch(z2.nullable(blogManifestEntrySchema), null)),
302
+ z2.transform((entries) => entries.filter((e) => e !== null))
303
+ ),
304
+ []
305
+ )
295
306
  });
296
307
  var blogImageSchema = z2.object({
297
308
  id: z2.string(),
298
309
  url: z2.string(),
299
- alt: z2.string().catch(""),
300
- caption: z2.string().nullable().catch(null),
301
- role: z2.enum(["hero", "inline"]).catch("inline"),
302
- width: z2.number().int(),
303
- height: z2.number().int(),
304
- mime: z2.string().catch("")
310
+ alt: z2.catch(z2.string(), ""),
311
+ caption: z2.catch(z2.nullable(z2.string()), null),
312
+ role: z2.catch(z2.enum(["hero", "inline"]), "inline"),
313
+ width: z2.int(),
314
+ height: z2.int(),
315
+ mime: z2.catch(z2.string(), "")
305
316
  });
306
317
  var blogSeoSchema = z2.object({
307
- meta_title: z2.string().catch(""),
308
- meta_description: z2.string().catch(""),
309
- canonical_path: z2.string().catch(""),
310
- og_image: z2.string().nullable().catch(null)
318
+ meta_title: z2.catch(z2.string(), ""),
319
+ meta_description: z2.catch(z2.string(), ""),
320
+ canonical_path: z2.catch(z2.string(), ""),
321
+ og_image: z2.catch(z2.nullable(z2.string()), null)
311
322
  });
312
323
  var blogPostContentWireSchema = z2.object({
313
324
  schema_version: schemaVersionSchema,
314
325
  slug: z2.string(),
315
326
  title: z2.string(),
316
- description: z2.string().catch(""),
327
+ description: z2.catch(z2.string(), ""),
317
328
  mdx: z2.string(),
318
- images: z2.array(blogImageSchema).catch([]),
329
+ images: z2.catch(z2.array(blogImageSchema), []),
319
330
  // Already schema-validated at publish time, but re-sanitized on read (and
320
331
  // again before rendering) — the override schema itself drops invalid values.
321
332
  // Nullish: the backend serializes an unset override as an explicit `null`
322
333
  // (Pydantic `model_dump()`); it folds into `undefined` for TS consumers.
323
- theme_overrides: nullishField(blogThemeOverrideSchema).catch(void 0),
324
- seo: blogSeoSchema.catch({
334
+ theme_overrides: z2.catch(nullishField(blogThemeOverrideSchema), void 0),
335
+ seo: z2.catch(blogSeoSchema, {
325
336
  meta_title: "",
326
337
  meta_description: "",
327
338
  canonical_path: "",
328
339
  og_image: null
329
340
  }),
330
- jsonld: z2.record(z2.unknown()).catch({}),
341
+ jsonld: z2.catch(z2.record(z2.string(), z2.unknown()), {}),
331
342
  published_at: z2.string(),
332
343
  // The applied_at of the version this content was published from; `null`
333
344
  // when the backend has no separate modified date. Nullish on the wire
334
345
  // (Pydantic `model_dump()` emits explicit `null`s), folded to `null` for a
335
346
  // single TS sentinel; a malformed value degrades to `null` instead of
336
347
  // dropping the post.
337
- updated_at: z2.string().nullish().transform((v) => v ?? null).catch(null),
338
- version_number: z2.number().int().catch(0),
348
+ updated_at: z2.catch(
349
+ z2.pipe(
350
+ z2.nullish(z2.string()),
351
+ z2.transform((v) => v ?? null)
352
+ ),
353
+ null
354
+ ),
355
+ version_number: z2.catch(z2.int(), 0),
339
356
  content_hash: z2.string()
340
357
  });
341
- var blogPostContentSchema = blogPostContentWireSchema.extend({
358
+ var blogPostContentSchema = z2.extend(blogPostContentWireSchema, {
342
359
  // A single malformed image record is dropped; the post survives.
343
- images: z2.array(blogImageSchema.nullable().catch(null)).transform((images) => images.filter((i) => i !== null)).catch([])
360
+ images: z2.catch(
361
+ z2.pipe(
362
+ z2.array(z2.catch(z2.nullable(blogImageSchema), null)),
363
+ z2.transform((images) => images.filter((i) => i !== null))
364
+ ),
365
+ []
366
+ )
344
367
  });
345
368
  function parseBlogManifest(raw) {
346
- const parsed = blogManifestSchema.safeParse(raw);
369
+ const parsed = z2.safeParse(blogManifestSchema, raw);
347
370
  return parsed.success ? parsed.data : null;
348
371
  }
349
372
  function parseBlogPostContent(raw) {
350
- const parsed = blogPostContentSchema.safeParse(raw);
373
+ const parsed = z2.safeParse(blogPostContentSchema, raw);
351
374
  return parsed.success ? parsed.data : null;
352
375
  }
353
376