@aranova/tracking-react 1.16.0 → 1.17.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,8 +1,8 @@
1
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
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
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-KbTcowYa.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-DFz3BUiP.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
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';
7
7
  export { CountryCode } from 'libphonenumber-js';
8
8
  import 'zod/mini';
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
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
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
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-C0FMkN4m.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-CkfA5XOM.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
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';
7
7
  export { CountryCode } from 'libphonenumber-js';
8
8
  import 'zod/mini';
package/dist/index.js CHANGED
@@ -815,9 +815,18 @@ function parseBookingRules(value) {
815
815
  special_hours: parseWindowsMap(r.special_hours),
816
816
  vehicle_required: r.vehicle_required === true,
817
817
  vehicle_deferred: r.vehicle_deferred === true,
818
- drop_off_options: isStringList(r.drop_off_options) ? r.drop_off_options : []
818
+ drop_off_options: isStringList(r.drop_off_options) ? r.drop_off_options : [],
819
+ booked_counts: parseCounts(r.booked_counts)
819
820
  };
820
821
  }
822
+ function parseCounts(value) {
823
+ if (!value || typeof value !== "object" || Array.isArray(value)) return {};
824
+ const counts = {};
825
+ for (const [date, count] of Object.entries(value)) {
826
+ if (typeof count === "number" && Number.isInteger(count) && count >= 0) counts[date] = count;
827
+ }
828
+ return counts;
829
+ }
821
830
  function parseBookingOption(value) {
822
831
  if (!value || typeof value !== "object") return [];
823
832
  const o = value;
@@ -1633,7 +1642,8 @@ function camelRules(rules) {
1633
1642
  specialHours: rules.special_hours,
1634
1643
  vehicleRequired: rules.vehicle_required,
1635
1644
  vehicleDeferred: rules.vehicle_deferred,
1636
- dropOffOptions: rules.drop_off_options
1645
+ dropOffOptions: rules.drop_off_options,
1646
+ bookedCounts: rules.booked_counts ?? {}
1637
1647
  };
1638
1648
  }
1639
1649
  var WEEKDAYS = ["sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday"];
@@ -1666,7 +1676,8 @@ function bookableSlots(rules, { timeZone, now = /* @__PURE__ */ new Date() }) {
1666
1676
  date,
1667
1677
  weekday,
1668
1678
  morning: [...windows.morning],
1669
- afternoon: [...windows.afternoon]
1679
+ afternoon: [...windows.afternoon],
1680
+ booked: rules.bookedCounts?.[date] ?? 0
1670
1681
  });
1671
1682
  }
1672
1683
  return days;
@@ -2090,9 +2101,16 @@ function timeWindow(start, end, label) {
2090
2101
  }
2091
2102
 
2092
2103
  // ../tracking-core/src/resources/http/errors.ts
2093
- var AranovaApiError = class extends Error {
2104
+ var API_ERROR_BRAND = /* @__PURE__ */ Symbol.for("aranova.api_error");
2105
+ var AranovaApiError = class _AranovaApiError extends Error {
2106
+ /** `instanceof` checks the brand, so an error from another entry's copy of this class passes. */
2107
+ static [Symbol.hasInstance](value) {
2108
+ if (this !== _AranovaApiError) return Function.prototype[Symbol.hasInstance].call(this, value);
2109
+ return typeof value === "object" && value !== null && value[API_ERROR_BRAND] === true;
2110
+ }
2094
2111
  constructor(message, options) {
2095
2112
  super(message);
2113
+ Object.defineProperty(this, API_ERROR_BRAND, { value: true });
2096
2114
  this.name = "AranovaApiError";
2097
2115
  this.status = options.status;
2098
2116
  this.code = options.code;