@aranova/tracking-react 1.17.0 → 1.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,9 +1,9 @@
1
- export { AdPlatformTracking, AdPlatformTrackingProps, BookedAttempt, BookingHandoffLink, BookingHandoffLinkProps, BookingHandoffOptions, BookingSubmitState, BookingSubmitStatus, ConsentBanner, ConsentBannerProps, CreateTrackingOptions, CreateTrackingResult, GoogleAdsTracking, GoogleAdsTrackingProps, PhoneField, PhoneFieldApi, PhoneFieldProps, PhoneInputProps, TrackingProviderProps, UseConsentResult, UseCookiePreferencesOptions, UseCookiePreferencesResult, UsePhoneFieldOptions, createLeadFormSubmit, createTracking, useBookingHandoffUrl, useBookingIntegration, useBookingSlots, useBookingSubmit, useConsent, useConsentState, useCookiePreferences, useGclid, usePhoneConfig, usePhoneField, useTrackingParams } from '@aranova/tracking-react/client';
2
- import { T as TrackingParams, a as TrackingInstallSurface, b as TrackingEnvironment, c as TrackingClientContext, d as TrackingEventCreatePayload, e as TrackingSessionUpsertPayload } from './phone-utils-CYr6AmEP.mjs';
3
- export { C as ConsentChoice, f as ConsentChoiceState, g as ConsentSource, h as ConsentState, D as DEFAULT_DECLINE_TTL_DAYS, i as DEFAULT_PHONE_COUNTRY, F as FormContractViolation, j as FormSubmitConfig, k as FormSubmitMetadata, G as GtagEnvironmentMap, J as JsonValue, L as LEAD_FORM_KINDS, l as LEAD_FORM_PRIMITIVES, m as LEAD_FORM_REGISTRY_VERSION, n as LEAD_FORM_ROLES, o as LEAD_FORM_ROLE_SPECS, p as LeadFormKind, q as LeadFormPrimitive, r as LeadFormRole, s as LeadFormRoleOption, t as LeadFormRoleSpec, M as MetaPixelEnvironmentMap, P as ParsedPhone, u as PhoneConfig, v as PhoneDisplayFormat, S as SetConsentOptions, w as TrackedField, x as TrackingInitConfig, y as formatPhone, z as formatPhoneAsTyped, A as getConsentChoice, B as getConsentState, E as leadFormPrimitiveSchemas, H as onConsentChange, I as optIn, K as optOut, N as parsePhone, O as phoneField, Q as resetConsent, R as setConsentState, U as toE164 } from './phone-utils-CYr6AmEP.mjs';
4
- export { A as AranovaApiError, B as BusinessConfig, a as BusinessConfigFeatures, b as BusinessConfigService, C as CompareTo, c as ConversionUserData, d as CurrencyRevenue, e as CustomerCurrencyDelta, f as CustomerCurrencyTotal, g as CustomerGetOptions, h as CustomerGetResult, i as CustomerKpis, j as CustomerKpisDeltas, k as CustomerKpisPrevious, l as CustomerListPage, m as CustomerListQuery, n as CustomerProfile, o as CustomerSegment, p as CustomerSegmentCount, q as CustomerSortField, r as CustomerSummary, s as CustomerSummaryQuery, D as DistinctCustomersByCurrency, E as EffectiveSaleProperty, G as Granularity, N as NAMED_RANGES, t as NamedRange, P as PublicServiceItem, S as SALE_SOURCES, u as SUPPORTED_CURRENCIES, v as Sale, w as SaleBuiltinRequirableField, x as SaleCursorPage, y as SaleFilters, z as SaleInput, F as SaleItem, H as SaleItemInput, I as SaleKeysetSortField, J as SaleListPage, K as SaleListQuery, L as SaleListQueryV2, M as SalePropertyOption, O as SalePropertyType, Q as SaleService, R as SaleServiceInput, T as SaleSortField, U as SaleSortOrder, V as SaleSource, W as SaleSourceFacts, X as SaleSummary, Y as SaleSummaryPrevious, Z as SaleSummaryQuery, _ as SaleSummaryQueryV2, $ as SaleSummaryV2, a0 as SaleUpdateInput, a1 as SalesBusinessClient, a2 as SalesCategoryBreakdown, a3 as SalesClient, a4 as SalesClientConfig, a5 as SalesCustomersClient, a6 as SalesServiceBreakdown, a7 as SalesTransportConfig, a8 as SalesTrendPoint, a9 as SummaryCurrencyDelta, aa as SummaryDeltas, ab as SummaryWindow, ac as SupportedCurrency, ad as TRACKING_RANGES, ae as TrackingOverviewRange, af as clearStashedUserData, ag as createSalesClient, ah as currencySchema, ai as fetchServices, aj as formatDateInTz, ak as formatMoney, al as fromMinor, am as saleCreateSchema, an as saleItemSchema, ao as saleServiceSchema, ap as saleUpdateSchema, aq as salesRequest, ar as stashUserData, as as toMinor } from './sales-B1u_IHLZ.mjs';
5
- export { B as BookableDay, a as BookingDetailsFailure, b as BookingDetailsInput, c as BookingDetailsOptions, d as BookingDetailsOutcome, e as BookingDetailsStatus, f as BookingDropOff, g as BookingFormSubmit, h as BookingHandoffPrefill, i as BookingInput, j as BookingInputFor, k as BookingIntegration, l as BookingMode, m as BookingOption, n as BookingOptionGroup, o as BookingOptionKey, p as BookingOutcome, q as BookingProvider, r as BookingRules, s as BookingServiceKey, t as BookingSimulation, u as BookingSubmitOptions, v as BookingVehicle, C as ConversionConfig, w as ConversionConfigStore, F as FormSubmitField, L as LeadFormAddress, x as LeadFormContracts, y as LeadFormExtraField, z as LeadFormFields, A as LeadFormKindDecl, D as LeadFormRequirementDecl, E as LeadFormSubmitInput, G as LeadFormSubmitOptions, H as LeadFormSubmitter, I as LeadFormTimeWindow, J as LeadFormTracking, K as LeadFormValue, S as SalesBookingsClient, T as TrackingConfigReference, M as bookableSlots, N as buildBookingHandoffUrl, O as getBookingIntegration, P as getTrackingConfigRuntime, Q as groupBookingOptions, R as newBookingAttemptKey, U as resolveConversionConfig, V as resolveTrackingConfigUrl, W as shopToday, X as slotFields, Y as timeWindow } from './bookings-DOh1WMhH.mjs';
6
- export { A as AutomaticEventName, C as CtaClickConfig, a as CtaClickMetadata, E as EVENT_SEMANTICS, b as EventCategory, c as EventClientVisibility, d as EventConfig, e as EventKind, f as EventMetadata, g as EventName, h as EventOutcomeRole, i as EventSemantics, F as FormStartConfig, j as FormStartMetadata, k as FormStepConfig, l as FormStepMetadata, M as ManualEventName, m as MultiPageSessionConfig, n as MultiPageSessionMetadata, P as PageExitConfig, o as PageExitMetadata, p as PageIdentity, q as PageViewConfig, r as PageViewMetadata, s as PhoneClickConfig, t as PhoneClickMetadata, R as RegisteredAutomaticEvents, u as RegisteredManualEvents, S as ScrollDepthConfig, v as ScrollDepthMetadata, w as SdkHeartbeatConfig, x as SdkHeartbeatMetadata, y as SiteLinkArrivalConfig, z as SiteLinkArrivalMetadata, B as SiteLinkClickConfig, D as SiteLinkClickMetadata, G as SpecificPageName, H as SpecificPageVisitConfig, I as SpecificPageVisitMetadata, T as TimeOnSiteConfig, J as TimeOnSiteMetadata, K as TrackableEvent, L as TriggerRegistryConfig, N as TypedTrackEventOptions, O as TypedTrackingClient, Q as getEventSemantics } from './ingest-typed-BO6Arbw-.mjs';
1
+ export { AdPlatformTracking, AdPlatformTrackingProps, BookedAttempt, BookingHandoffLink, BookingHandoffLinkProps, BookingHandoffOptions, BookingSubmitState, BookingSubmitStatus, ConsentBanner, ConsentBannerProps, CreateTrackingOptions, CreateTrackingResult, DEFAULT_VIDEO_CHECKPOINTS, GoogleAdsTracking, GoogleAdsTrackingProps, PhoneField, PhoneFieldApi, PhoneFieldProps, PhoneInputProps, TrackedVideo, TrackedVideoCallbacks, TrackedVideoEvent, TrackedVideoProps, TrackedVideoSources, TrackedVideoStage, TrackedVideoStageProps, TrackingProviderProps, UseConsentResult, UseCookiePreferencesOptions, UseCookiePreferencesResult, UsePhoneFieldOptions, VideoQuality, createLeadFormSubmit, createTracking, streamManifestUrl, streamPosterUrl, useBookingHandoffUrl, useBookingIntegration, useBookingSlots, useBookingSubmit, useConsent, useConsentState, useCookiePreferences, useGclid, usePhoneConfig, usePhoneField, useTrackedVideoConfig, useTrackingParams } from '@aranova/tracking-react/client';
2
+ import { T as TrackingParams, a as TrackingInstallSurface, b as TrackingEnvironment, c as TrackingClientContext, d as TrackingEventCreatePayload, e as TrackingSessionUpsertPayload } from './phone-utils-BlWj8oxq.mjs';
3
+ export { C as ConsentChoice, f as ConsentChoiceState, g as ConsentSource, h as ConsentState, D as DEFAULT_DECLINE_TTL_DAYS, i as DEFAULT_PHONE_COUNTRY, F as FormContractViolation, j as FormSubmitConfig, k as FormSubmitMetadata, G as GtagEnvironmentMap, J as JsonValue, L as LEAD_FORM_KINDS, l as LEAD_FORM_PRIMITIVES, m as LEAD_FORM_REGISTRY_VERSION, n as LEAD_FORM_ROLES, o as LEAD_FORM_ROLE_SPECS, p as LeadFormKind, q as LeadFormPrimitive, r as LeadFormRole, s as LeadFormRoleOption, t as LeadFormRoleSpec, M as MetaPixelEnvironmentMap, P as ParsedPhone, u as PhoneConfig, v as PhoneDisplayFormat, S as SetConsentOptions, w as TrackedField, x as TrackingInitConfig, y as formatPhone, z as formatPhoneAsTyped, A as getConsentChoice, B as getConsentState, E as leadFormPrimitiveSchemas, H as onConsentChange, I as optIn, K as optOut, N as parsePhone, O as phoneField, Q as resetConsent, R as setConsentState, U as toE164 } from './phone-utils-BlWj8oxq.mjs';
4
+ export { A as AranovaApiError, B as BusinessConfig, a as BusinessConfigFeatures, b as BusinessConfigService, C as CompareTo, c as ConversionUserData, d as CurrencyRevenue, e as CustomerCurrencyDelta, f as CustomerCurrencyTotal, g as CustomerGetOptions, h as CustomerGetResult, i as CustomerKpis, j as CustomerKpisDeltas, k as CustomerKpisPrevious, l as CustomerListPage, m as CustomerListQuery, n as CustomerProfile, o as CustomerSegment, p as CustomerSegmentCount, q as CustomerSortField, r as CustomerSummary, s as CustomerSummaryQuery, D as DistinctCustomersByCurrency, E as EffectiveSaleProperty, G as Granularity, N as NAMED_RANGES, t as NamedRange, P as PublicServiceItem, S as SALE_SOURCES, u as SUPPORTED_CURRENCIES, v as Sale, w as SaleBuiltinRequirableField, x as SaleCursorPage, y as SaleFilters, z as SaleInput, F as SaleItem, H as SaleItemInput, I as SaleKeysetSortField, J as SaleListPage, K as SaleListQuery, L as SaleListQueryV2, M as SalePropertyOption, O as SalePropertyType, Q as SaleService, R as SaleServiceInput, T as SaleSortField, U as SaleSortOrder, V as SaleSource, W as SaleSourceFacts, X as SaleSummary, Y as SaleSummaryPrevious, Z as SaleSummaryQuery, _ as SaleSummaryQueryV2, $ as SaleSummaryV2, a0 as SaleUpdateInput, a1 as SalesBusinessClient, a2 as SalesCategoryBreakdown, a3 as SalesClient, a4 as SalesClientConfig, a5 as SalesCustomersClient, a6 as SalesServiceBreakdown, a7 as SalesTransportConfig, a8 as SalesTrendPoint, a9 as SummaryCurrencyDelta, aa as SummaryDeltas, ab as SummaryWindow, ac as SupportedCurrency, ad as TRACKING_RANGES, ae as TrackingOverviewRange, af as clearStashedUserData, ag as createSalesClient, ah as currencySchema, ai as fetchServices, aj as formatDateInTz, ak as formatMoney, al as fromMinor, am as saleCreateSchema, an as saleItemSchema, ao as saleServiceSchema, ap as saleUpdateSchema, aq as salesRequest, ar as stashUserData, as as toMinor } from './sales-DriCnCbM.mjs';
5
+ export { B as BookableDay, a as BookingDetailsFailure, b as BookingDetailsInput, c as BookingDetailsOptions, d as BookingDetailsOutcome, e as BookingDetailsStatus, f as BookingDropOff, g as BookingFormSubmit, h as BookingHandoffPrefill, i as BookingInput, j as BookingInputFor, k as BookingIntegration, l as BookingMode, m as BookingOption, n as BookingOptionGroup, o as BookingOptionKey, p as BookingOutcome, q as BookingProvider, r as BookingRules, s as BookingServiceKey, t as BookingSimulation, u as BookingSubmitOptions, v as BookingVehicle, C as ConversionConfig, w as ConversionConfigStore, F as FormSubmitField, L as LeadFormAddress, x as LeadFormContracts, y as LeadFormDetailsFields, z as LeadFormDetailsInput, A as LeadFormDetailsResult, D as LeadFormExtraField, E as LeadFormFields, G as LeadFormKindDecl, H as LeadFormRequirementDecl, I as LeadFormSubmission, J as LeadFormSubmitInput, K as LeadFormSubmitOptions, M as LeadFormSubmitter, N as LeadFormTimeWindow, O as LeadFormTracking, P as LeadFormValue, S as SalesBookingsClient, T as TrackedVideoConfig, Q as TrackedVideoSourcesConfig, R as TrackingConfigReference, U as bookableSlots, V as buildBookingHandoffUrl, W as getBookingIntegration, X as getTrackingConfigRuntime, Y as groupBookingOptions, Z as newBookingAttemptKey, _ as resolveConversionConfig, $ as resolveTrackingConfigUrl, a0 as shopToday, a1 as slotFields, a2 as timeWindow } from './bookings-v3HA8gsC.mjs';
6
+ export { A as AutomaticEventName, C as CtaClickConfig, a as CtaClickMetadata, E as EVENT_SEMANTICS, b as EventCategory, c as EventClientVisibility, d as EventConfig, e as EventKind, f as EventMetadata, g as EventName, h as EventOutcomeRole, i as EventSemantics, F as FormDetailsConfig, j as FormDetailsMetadata, k as FormStartConfig, l as FormStartMetadata, m as FormStepConfig, n as FormStepMetadata, M as ManualEventName, o as MultiPageSessionConfig, p as MultiPageSessionMetadata, P as PageExitConfig, q as PageExitMetadata, r as PageIdentity, s as PageViewConfig, t as PageViewMetadata, u as PhoneClickConfig, v as PhoneClickMetadata, R as RegisteredAutomaticEvents, w as RegisteredManualEvents, S as ScrollDepthConfig, x as ScrollDepthMetadata, y as SdkHeartbeatConfig, z as SdkHeartbeatMetadata, B as SiteLinkArrivalConfig, D as SiteLinkArrivalMetadata, G as SiteLinkClickConfig, H as SiteLinkClickMetadata, I as SpecificPageName, J as SpecificPageVisitConfig, K as SpecificPageVisitMetadata, T as TimeOnSiteConfig, L as TimeOnSiteMetadata, N as TrackableEvent, O as TrackingClient, Q as TriggerRegistryConfig, U as TypedTrackEventOptions, V as TypedTrackingClient, W as VideoPlayConfig, X as VideoPlayMetadata, Y as VideoProgressConfig, Z as VideoProgressMetadata, _ as VideoProgressTriggerReason, $ as VideoVariant, a0 as VideoWatchRange, a1 as getEventSemantics } from './ingest-typed-BEFQd3WM.mjs';
7
7
  export { CountryCode } from 'libphonenumber-js';
8
8
  import 'zod/mini';
9
9
  import 'zod/v4/core';
@@ -61,42 +61,18 @@ declare function createTrackingSessionUpsertPayload(trackingParams: TrackingPara
61
61
  */
62
62
  declare function createTrackingEventCreatePayload(trackingParams: TrackingParams, input: TrackingEventInput, context: TrackingClientContext): TrackingEventCreatePayload;
63
63
 
64
- /**
65
- * Input accepted by the low-level stringly-typed client.
66
- *
67
- * Prefer the typed `trackEvent(eventName, metadata)` facade exposed by
68
- * `useTracking()` in React/Next integrations.
69
- */
70
- interface TrackEventInput {
71
- /** Event name to enqueue. */
72
- eventType: string;
73
- /** URL associated with the event. Defaults to the current page URL. */
74
- pageUrl?: string | null;
75
- /** Event-specific metadata. */
76
- metadata?: Record<string, unknown> | null;
77
- /** Timestamp override. Defaults to queue time. */
78
- occurredAt?: Date | string | null;
64
+ interface VideoWatchRangeItem {
65
+ start_s: number;
66
+ end_s: number;
79
67
  }
68
+ /** Round to 2 decimal places so wire payloads stay compact and deterministic. */
69
+ declare function roundVideoSeconds(value: number): number;
80
70
  /**
81
- * Low-level tracking client responsible for queueing and flushing events.
71
+ * Merge overlapping or adjacent `[start_s, end_s]` playback intervals.
72
+ * Intervals shorter than 0.05s or inverted are discarded.
82
73
  */
83
- interface TrackingClient {
84
- /** Enqueue an event for batched delivery. */
85
- trackEvent: (input: TrackEventInput) => void;
86
- /** Flush queued events immediately (fetch, non-keepalive). */
87
- flush: () => Promise<void>;
88
- /**
89
- * Flush queued events through the keepalive transport so the request
90
- * survives document unload. Use from `pagehide`/`visibilitychange:hidden`
91
- * handlers — a plain `flush()` there is aborted by the browser on unload.
92
- */
93
- flushBeacon: () => void;
94
- /** Return the current rolling session id. */
95
- getSessionId: () => string;
96
- /** Return the persistent visitor id. */
97
- getVisitorId: () => string;
98
- /** Remove timers/listeners and prevent future flushes. */
99
- destroy: () => void;
100
- }
74
+ declare function mergeVideoRanges(ranges: ReadonlyArray<VideoWatchRangeItem>, epsilonSeconds?: number): VideoWatchRangeItem[];
75
+ /** Total unique watched seconds across merged ranges, clamped to `durationSeconds` when > 0. */
76
+ declare function sumVideoRangesSeconds(ranges: ReadonlyArray<VideoWatchRangeItem>, durationSeconds?: number): number;
101
77
 
102
- export { TRACKING_PARAM_KEYS, type TrackingClient, TrackingClientContext, TrackingEventCreatePayload, TrackingInstallSurface, TrackingParams, TrackingSessionUpsertPayload, captureTrackingParamsFromLocation, createTrackingClientContext, createTrackingEventCreatePayload, createTrackingSessionUpsertPayload };
78
+ export { TRACKING_PARAM_KEYS, TrackingClientContext, TrackingEventCreatePayload, TrackingInstallSurface, TrackingParams, TrackingSessionUpsertPayload, captureTrackingParamsFromLocation, createTrackingClientContext, createTrackingEventCreatePayload, createTrackingSessionUpsertPayload, mergeVideoRanges, roundVideoSeconds, sumVideoRangesSeconds };
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- export { AdPlatformTracking, AdPlatformTrackingProps, BookedAttempt, BookingHandoffLink, BookingHandoffLinkProps, BookingHandoffOptions, BookingSubmitState, BookingSubmitStatus, ConsentBanner, ConsentBannerProps, CreateTrackingOptions, CreateTrackingResult, GoogleAdsTracking, GoogleAdsTrackingProps, PhoneField, PhoneFieldApi, PhoneFieldProps, PhoneInputProps, TrackingProviderProps, UseConsentResult, UseCookiePreferencesOptions, UseCookiePreferencesResult, UsePhoneFieldOptions, createLeadFormSubmit, createTracking, useBookingHandoffUrl, useBookingIntegration, useBookingSlots, useBookingSubmit, useConsent, useConsentState, useCookiePreferences, useGclid, usePhoneConfig, usePhoneField, useTrackingParams } from '@aranova/tracking-react/client';
2
- import { T as TrackingParams, a as TrackingInstallSurface, b as TrackingEnvironment, c as TrackingClientContext, d as TrackingEventCreatePayload, e as TrackingSessionUpsertPayload } from './phone-utils-CYr6AmEP.js';
3
- export { C as ConsentChoice, f as ConsentChoiceState, g as ConsentSource, h as ConsentState, D as DEFAULT_DECLINE_TTL_DAYS, i as DEFAULT_PHONE_COUNTRY, F as FormContractViolation, j as FormSubmitConfig, k as FormSubmitMetadata, G as GtagEnvironmentMap, J as JsonValue, L as LEAD_FORM_KINDS, l as LEAD_FORM_PRIMITIVES, m as LEAD_FORM_REGISTRY_VERSION, n as LEAD_FORM_ROLES, o as LEAD_FORM_ROLE_SPECS, p as LeadFormKind, q as LeadFormPrimitive, r as LeadFormRole, s as LeadFormRoleOption, t as LeadFormRoleSpec, M as MetaPixelEnvironmentMap, P as ParsedPhone, u as PhoneConfig, v as PhoneDisplayFormat, S as SetConsentOptions, w as TrackedField, x as TrackingInitConfig, y as formatPhone, z as formatPhoneAsTyped, A as getConsentChoice, B as getConsentState, E as leadFormPrimitiveSchemas, H as onConsentChange, I as optIn, K as optOut, N as parsePhone, O as phoneField, Q as resetConsent, R as setConsentState, U as toE164 } from './phone-utils-CYr6AmEP.js';
4
- export { A as AranovaApiError, B as BusinessConfig, a as BusinessConfigFeatures, b as BusinessConfigService, C as CompareTo, c as ConversionUserData, d as CurrencyRevenue, e as CustomerCurrencyDelta, f as CustomerCurrencyTotal, g as CustomerGetOptions, h as CustomerGetResult, i as CustomerKpis, j as CustomerKpisDeltas, k as CustomerKpisPrevious, l as CustomerListPage, m as CustomerListQuery, n as CustomerProfile, o as CustomerSegment, p as CustomerSegmentCount, q as CustomerSortField, r as CustomerSummary, s as CustomerSummaryQuery, D as DistinctCustomersByCurrency, E as EffectiveSaleProperty, G as Granularity, N as NAMED_RANGES, t as NamedRange, P as PublicServiceItem, S as SALE_SOURCES, u as SUPPORTED_CURRENCIES, v as Sale, w as SaleBuiltinRequirableField, x as SaleCursorPage, y as SaleFilters, z as SaleInput, F as SaleItem, H as SaleItemInput, I as SaleKeysetSortField, J as SaleListPage, K as SaleListQuery, L as SaleListQueryV2, M as SalePropertyOption, O as SalePropertyType, Q as SaleService, R as SaleServiceInput, T as SaleSortField, U as SaleSortOrder, V as SaleSource, W as SaleSourceFacts, X as SaleSummary, Y as SaleSummaryPrevious, Z as SaleSummaryQuery, _ as SaleSummaryQueryV2, $ as SaleSummaryV2, a0 as SaleUpdateInput, a1 as SalesBusinessClient, a2 as SalesCategoryBreakdown, a3 as SalesClient, a4 as SalesClientConfig, a5 as SalesCustomersClient, a6 as SalesServiceBreakdown, a7 as SalesTransportConfig, a8 as SalesTrendPoint, a9 as SummaryCurrencyDelta, aa as SummaryDeltas, ab as SummaryWindow, ac as SupportedCurrency, ad as TRACKING_RANGES, ae as TrackingOverviewRange, af as clearStashedUserData, ag as createSalesClient, ah as currencySchema, ai as fetchServices, aj as formatDateInTz, ak as formatMoney, al as fromMinor, am as saleCreateSchema, an as saleItemSchema, ao as saleServiceSchema, ap as saleUpdateSchema, aq as salesRequest, ar as stashUserData, as as toMinor } from './sales-I2jXSS-l.js';
5
- export { B as BookableDay, a as BookingDetailsFailure, b as BookingDetailsInput, c as BookingDetailsOptions, d as BookingDetailsOutcome, e as BookingDetailsStatus, f as BookingDropOff, g as BookingFormSubmit, h as BookingHandoffPrefill, i as BookingInput, j as BookingInputFor, k as BookingIntegration, l as BookingMode, m as BookingOption, n as BookingOptionGroup, o as BookingOptionKey, p as BookingOutcome, q as BookingProvider, r as BookingRules, s as BookingServiceKey, t as BookingSimulation, u as BookingSubmitOptions, v as BookingVehicle, C as ConversionConfig, w as ConversionConfigStore, F as FormSubmitField, L as LeadFormAddress, x as LeadFormContracts, y as LeadFormExtraField, z as LeadFormFields, A as LeadFormKindDecl, D as LeadFormRequirementDecl, E as LeadFormSubmitInput, G as LeadFormSubmitOptions, H as LeadFormSubmitter, I as LeadFormTimeWindow, J as LeadFormTracking, K as LeadFormValue, S as SalesBookingsClient, T as TrackingConfigReference, M as bookableSlots, N as buildBookingHandoffUrl, O as getBookingIntegration, P as getTrackingConfigRuntime, Q as groupBookingOptions, R as newBookingAttemptKey, U as resolveConversionConfig, V as resolveTrackingConfigUrl, W as shopToday, X as slotFields, Y as timeWindow } from './bookings-2ZKfenQ7.js';
6
- export { A as AutomaticEventName, C as CtaClickConfig, a as CtaClickMetadata, E as EVENT_SEMANTICS, b as EventCategory, c as EventClientVisibility, d as EventConfig, e as EventKind, f as EventMetadata, g as EventName, h as EventOutcomeRole, i as EventSemantics, F as FormStartConfig, j as FormStartMetadata, k as FormStepConfig, l as FormStepMetadata, M as ManualEventName, m as MultiPageSessionConfig, n as MultiPageSessionMetadata, P as PageExitConfig, o as PageExitMetadata, p as PageIdentity, q as PageViewConfig, r as PageViewMetadata, s as PhoneClickConfig, t as PhoneClickMetadata, R as RegisteredAutomaticEvents, u as RegisteredManualEvents, S as ScrollDepthConfig, v as ScrollDepthMetadata, w as SdkHeartbeatConfig, x as SdkHeartbeatMetadata, y as SiteLinkArrivalConfig, z as SiteLinkArrivalMetadata, B as SiteLinkClickConfig, D as SiteLinkClickMetadata, G as SpecificPageName, H as SpecificPageVisitConfig, I as SpecificPageVisitMetadata, T as TimeOnSiteConfig, J as TimeOnSiteMetadata, K as TrackableEvent, L as TriggerRegistryConfig, N as TypedTrackEventOptions, O as TypedTrackingClient, Q as getEventSemantics } from './ingest-typed-D7I4aQ7p.js';
1
+ export { AdPlatformTracking, AdPlatformTrackingProps, BookedAttempt, BookingHandoffLink, BookingHandoffLinkProps, BookingHandoffOptions, BookingSubmitState, BookingSubmitStatus, ConsentBanner, ConsentBannerProps, CreateTrackingOptions, CreateTrackingResult, DEFAULT_VIDEO_CHECKPOINTS, GoogleAdsTracking, GoogleAdsTrackingProps, PhoneField, PhoneFieldApi, PhoneFieldProps, PhoneInputProps, TrackedVideo, TrackedVideoCallbacks, TrackedVideoEvent, TrackedVideoProps, TrackedVideoSources, TrackedVideoStage, TrackedVideoStageProps, TrackingProviderProps, UseConsentResult, UseCookiePreferencesOptions, UseCookiePreferencesResult, UsePhoneFieldOptions, VideoQuality, createLeadFormSubmit, createTracking, streamManifestUrl, streamPosterUrl, useBookingHandoffUrl, useBookingIntegration, useBookingSlots, useBookingSubmit, useConsent, useConsentState, useCookiePreferences, useGclid, usePhoneConfig, usePhoneField, useTrackedVideoConfig, useTrackingParams } from '@aranova/tracking-react/client';
2
+ import { T as TrackingParams, a as TrackingInstallSurface, b as TrackingEnvironment, c as TrackingClientContext, d as TrackingEventCreatePayload, e as TrackingSessionUpsertPayload } from './phone-utils-BlWj8oxq.js';
3
+ export { C as ConsentChoice, f as ConsentChoiceState, g as ConsentSource, h as ConsentState, D as DEFAULT_DECLINE_TTL_DAYS, i as DEFAULT_PHONE_COUNTRY, F as FormContractViolation, j as FormSubmitConfig, k as FormSubmitMetadata, G as GtagEnvironmentMap, J as JsonValue, L as LEAD_FORM_KINDS, l as LEAD_FORM_PRIMITIVES, m as LEAD_FORM_REGISTRY_VERSION, n as LEAD_FORM_ROLES, o as LEAD_FORM_ROLE_SPECS, p as LeadFormKind, q as LeadFormPrimitive, r as LeadFormRole, s as LeadFormRoleOption, t as LeadFormRoleSpec, M as MetaPixelEnvironmentMap, P as ParsedPhone, u as PhoneConfig, v as PhoneDisplayFormat, S as SetConsentOptions, w as TrackedField, x as TrackingInitConfig, y as formatPhone, z as formatPhoneAsTyped, A as getConsentChoice, B as getConsentState, E as leadFormPrimitiveSchemas, H as onConsentChange, I as optIn, K as optOut, N as parsePhone, O as phoneField, Q as resetConsent, R as setConsentState, U as toE164 } from './phone-utils-BlWj8oxq.js';
4
+ export { A as AranovaApiError, B as BusinessConfig, a as BusinessConfigFeatures, b as BusinessConfigService, C as CompareTo, c as ConversionUserData, d as CurrencyRevenue, e as CustomerCurrencyDelta, f as CustomerCurrencyTotal, g as CustomerGetOptions, h as CustomerGetResult, i as CustomerKpis, j as CustomerKpisDeltas, k as CustomerKpisPrevious, l as CustomerListPage, m as CustomerListQuery, n as CustomerProfile, o as CustomerSegment, p as CustomerSegmentCount, q as CustomerSortField, r as CustomerSummary, s as CustomerSummaryQuery, D as DistinctCustomersByCurrency, E as EffectiveSaleProperty, G as Granularity, N as NAMED_RANGES, t as NamedRange, P as PublicServiceItem, S as SALE_SOURCES, u as SUPPORTED_CURRENCIES, v as Sale, w as SaleBuiltinRequirableField, x as SaleCursorPage, y as SaleFilters, z as SaleInput, F as SaleItem, H as SaleItemInput, I as SaleKeysetSortField, J as SaleListPage, K as SaleListQuery, L as SaleListQueryV2, M as SalePropertyOption, O as SalePropertyType, Q as SaleService, R as SaleServiceInput, T as SaleSortField, U as SaleSortOrder, V as SaleSource, W as SaleSourceFacts, X as SaleSummary, Y as SaleSummaryPrevious, Z as SaleSummaryQuery, _ as SaleSummaryQueryV2, $ as SaleSummaryV2, a0 as SaleUpdateInput, a1 as SalesBusinessClient, a2 as SalesCategoryBreakdown, a3 as SalesClient, a4 as SalesClientConfig, a5 as SalesCustomersClient, a6 as SalesServiceBreakdown, a7 as SalesTransportConfig, a8 as SalesTrendPoint, a9 as SummaryCurrencyDelta, aa as SummaryDeltas, ab as SummaryWindow, ac as SupportedCurrency, ad as TRACKING_RANGES, ae as TrackingOverviewRange, af as clearStashedUserData, ag as createSalesClient, ah as currencySchema, ai as fetchServices, aj as formatDateInTz, ak as formatMoney, al as fromMinor, am as saleCreateSchema, an as saleItemSchema, ao as saleServiceSchema, ap as saleUpdateSchema, aq as salesRequest, ar as stashUserData, as as toMinor } from './sales-Cu8M8I8k.js';
5
+ export { B as BookableDay, a as BookingDetailsFailure, b as BookingDetailsInput, c as BookingDetailsOptions, d as BookingDetailsOutcome, e as BookingDetailsStatus, f as BookingDropOff, g as BookingFormSubmit, h as BookingHandoffPrefill, i as BookingInput, j as BookingInputFor, k as BookingIntegration, l as BookingMode, m as BookingOption, n as BookingOptionGroup, o as BookingOptionKey, p as BookingOutcome, q as BookingProvider, r as BookingRules, s as BookingServiceKey, t as BookingSimulation, u as BookingSubmitOptions, v as BookingVehicle, C as ConversionConfig, w as ConversionConfigStore, F as FormSubmitField, L as LeadFormAddress, x as LeadFormContracts, y as LeadFormDetailsFields, z as LeadFormDetailsInput, A as LeadFormDetailsResult, D as LeadFormExtraField, E as LeadFormFields, G as LeadFormKindDecl, H as LeadFormRequirementDecl, I as LeadFormSubmission, J as LeadFormSubmitInput, K as LeadFormSubmitOptions, M as LeadFormSubmitter, N as LeadFormTimeWindow, O as LeadFormTracking, P as LeadFormValue, S as SalesBookingsClient, T as TrackedVideoConfig, Q as TrackedVideoSourcesConfig, R as TrackingConfigReference, U as bookableSlots, V as buildBookingHandoffUrl, W as getBookingIntegration, X as getTrackingConfigRuntime, Y as groupBookingOptions, Z as newBookingAttemptKey, _ as resolveConversionConfig, $ as resolveTrackingConfigUrl, a0 as shopToday, a1 as slotFields, a2 as timeWindow } from './bookings-BDLyF70h.js';
6
+ export { A as AutomaticEventName, C as CtaClickConfig, a as CtaClickMetadata, E as EVENT_SEMANTICS, b as EventCategory, c as EventClientVisibility, d as EventConfig, e as EventKind, f as EventMetadata, g as EventName, h as EventOutcomeRole, i as EventSemantics, F as FormDetailsConfig, j as FormDetailsMetadata, k as FormStartConfig, l as FormStartMetadata, m as FormStepConfig, n as FormStepMetadata, M as ManualEventName, o as MultiPageSessionConfig, p as MultiPageSessionMetadata, P as PageExitConfig, q as PageExitMetadata, r as PageIdentity, s as PageViewConfig, t as PageViewMetadata, u as PhoneClickConfig, v as PhoneClickMetadata, R as RegisteredAutomaticEvents, w as RegisteredManualEvents, S as ScrollDepthConfig, x as ScrollDepthMetadata, y as SdkHeartbeatConfig, z as SdkHeartbeatMetadata, B as SiteLinkArrivalConfig, D as SiteLinkArrivalMetadata, G as SiteLinkClickConfig, H as SiteLinkClickMetadata, I as SpecificPageName, J as SpecificPageVisitConfig, K as SpecificPageVisitMetadata, T as TimeOnSiteConfig, L as TimeOnSiteMetadata, N as TrackableEvent, O as TrackingClient, Q as TriggerRegistryConfig, U as TypedTrackEventOptions, V as TypedTrackingClient, W as VideoPlayConfig, X as VideoPlayMetadata, Y as VideoProgressConfig, Z as VideoProgressMetadata, _ as VideoProgressTriggerReason, $ as VideoVariant, a0 as VideoWatchRange, a1 as getEventSemantics } from './ingest-typed-DChvvgwd.js';
7
7
  export { CountryCode } from 'libphonenumber-js';
8
8
  import 'zod/mini';
9
9
  import 'zod/v4/core';
@@ -61,42 +61,18 @@ declare function createTrackingSessionUpsertPayload(trackingParams: TrackingPara
61
61
  */
62
62
  declare function createTrackingEventCreatePayload(trackingParams: TrackingParams, input: TrackingEventInput, context: TrackingClientContext): TrackingEventCreatePayload;
63
63
 
64
- /**
65
- * Input accepted by the low-level stringly-typed client.
66
- *
67
- * Prefer the typed `trackEvent(eventName, metadata)` facade exposed by
68
- * `useTracking()` in React/Next integrations.
69
- */
70
- interface TrackEventInput {
71
- /** Event name to enqueue. */
72
- eventType: string;
73
- /** URL associated with the event. Defaults to the current page URL. */
74
- pageUrl?: string | null;
75
- /** Event-specific metadata. */
76
- metadata?: Record<string, unknown> | null;
77
- /** Timestamp override. Defaults to queue time. */
78
- occurredAt?: Date | string | null;
64
+ interface VideoWatchRangeItem {
65
+ start_s: number;
66
+ end_s: number;
79
67
  }
68
+ /** Round to 2 decimal places so wire payloads stay compact and deterministic. */
69
+ declare function roundVideoSeconds(value: number): number;
80
70
  /**
81
- * Low-level tracking client responsible for queueing and flushing events.
71
+ * Merge overlapping or adjacent `[start_s, end_s]` playback intervals.
72
+ * Intervals shorter than 0.05s or inverted are discarded.
82
73
  */
83
- interface TrackingClient {
84
- /** Enqueue an event for batched delivery. */
85
- trackEvent: (input: TrackEventInput) => void;
86
- /** Flush queued events immediately (fetch, non-keepalive). */
87
- flush: () => Promise<void>;
88
- /**
89
- * Flush queued events through the keepalive transport so the request
90
- * survives document unload. Use from `pagehide`/`visibilitychange:hidden`
91
- * handlers — a plain `flush()` there is aborted by the browser on unload.
92
- */
93
- flushBeacon: () => void;
94
- /** Return the current rolling session id. */
95
- getSessionId: () => string;
96
- /** Return the persistent visitor id. */
97
- getVisitorId: () => string;
98
- /** Remove timers/listeners and prevent future flushes. */
99
- destroy: () => void;
100
- }
74
+ declare function mergeVideoRanges(ranges: ReadonlyArray<VideoWatchRangeItem>, epsilonSeconds?: number): VideoWatchRangeItem[];
75
+ /** Total unique watched seconds across merged ranges, clamped to `durationSeconds` when > 0. */
76
+ declare function sumVideoRangesSeconds(ranges: ReadonlyArray<VideoWatchRangeItem>, durationSeconds?: number): number;
101
77
 
102
- export { TRACKING_PARAM_KEYS, type TrackingClient, TrackingClientContext, TrackingEventCreatePayload, TrackingInstallSurface, TrackingParams, TrackingSessionUpsertPayload, captureTrackingParamsFromLocation, createTrackingClientContext, createTrackingEventCreatePayload, createTrackingSessionUpsertPayload };
78
+ export { TRACKING_PARAM_KEYS, TrackingClientContext, TrackingEventCreatePayload, TrackingInstallSurface, TrackingParams, TrackingSessionUpsertPayload, captureTrackingParamsFromLocation, createTrackingClientContext, createTrackingEventCreatePayload, createTrackingSessionUpsertPayload, mergeVideoRanges, roundVideoSeconds, sumVideoRangesSeconds };