@superbright/indexeddb-orm 1.0.29 → 1.0.31

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 (58) hide show
  1. package/dist/adapters/structured-store.cjs +1 -1
  2. package/dist/adapters/structured-store.cjs.map +1 -1
  3. package/dist/adapters/structured-store.d.ts +1 -0
  4. package/dist/adapters/structured-store.mjs +8 -7
  5. package/dist/adapters/structured-store.mjs.map +1 -1
  6. package/dist/adapters/zustand-store.cjs +1 -1
  7. package/dist/adapters/zustand-store.cjs.map +1 -1
  8. package/dist/adapters/zustand-store.d.ts +3 -6
  9. package/dist/adapters/zustand-store.mjs +212 -164
  10. package/dist/adapters/zustand-store.mjs.map +1 -1
  11. package/dist/base/enums.cjs +1 -1
  12. package/dist/base/enums.cjs.map +1 -1
  13. package/dist/base/enums.d.ts +4 -0
  14. package/dist/base/enums.mjs +2 -1
  15. package/dist/base/enums.mjs.map +1 -1
  16. package/dist/base/userinquiry.d.ts +23 -0
  17. package/dist/base/visitor.d.ts +17 -0
  18. package/dist/base/visitorfilter.d.ts +25 -0
  19. package/dist/base/visitorquestionnaire.d.ts +25 -0
  20. package/dist/base/visitorunitengagement.d.ts +24 -0
  21. package/dist/features/units/transformers.cjs.map +1 -1
  22. package/dist/features/units/transformers.d.ts +2 -0
  23. package/dist/features/units/transformers.mjs.map +1 -1
  24. package/dist/index.cjs +1 -1
  25. package/dist/index.d.ts +1 -5
  26. package/dist/index.mjs +111 -127
  27. package/dist/index.mjs.map +1 -1
  28. package/dist/schema.cjs +1 -1
  29. package/dist/schema.cjs.map +1 -1
  30. package/dist/schema.d.ts +13 -41
  31. package/dist/schema.mjs +63 -74
  32. package/dist/schema.mjs.map +1 -1
  33. package/dist/stores/store.cjs +1 -1
  34. package/dist/stores/store.cjs.map +1 -1
  35. package/dist/stores/store.d.ts +3 -14
  36. package/dist/stores/store.mjs +58 -86
  37. package/dist/stores/store.mjs.map +1 -1
  38. package/package.json +1 -1
  39. package/dist/api/favorites.cjs +0 -2
  40. package/dist/api/favorites.cjs.map +0 -1
  41. package/dist/api/favorites.d.ts +0 -4
  42. package/dist/api/favorites.mjs +0 -34
  43. package/dist/api/favorites.mjs.map +0 -1
  44. package/dist/api/properties.cjs +0 -2
  45. package/dist/api/properties.cjs.map +0 -1
  46. package/dist/api/properties.d.ts +0 -22
  47. package/dist/api/properties.mjs +0 -197
  48. package/dist/api/properties.mjs.map +0 -1
  49. package/dist/api/users.cjs +0 -2
  50. package/dist/api/users.cjs.map +0 -1
  51. package/dist/api/users.d.ts +0 -5
  52. package/dist/api/users.mjs +0 -54
  53. package/dist/api/users.mjs.map +0 -1
  54. package/dist/units/favorites.cjs +0 -2
  55. package/dist/units/favorites.cjs.map +0 -1
  56. package/dist/units/favorites.d.ts +0 -7
  57. package/dist/units/favorites.mjs +0 -19
  58. package/dist/units/favorites.mjs.map +0 -1
package/dist/index.mjs CHANGED
@@ -1,131 +1,115 @@
1
- import { OpenDBError as t, SchemaMismatchError as o } from "./errors.mjs";
2
- import { ApiUserSchema as i, AppStoreDataSchema as m, FavoritesSchema as n, FiltersSchema as s, PropertySchema as p, PropertyStoreDataSchema as l, QueryParamsSchema as S, ResultsModeEnum as f, SCHEMA_VERSION as c, SortByEnum as d, TourContactDataSchema as u, UnifiedStoreDataSchema as x, UnitDataSchema as U, UnitFavoriteSchema as h, UnitSchema as y, UserPropertyStateSchema as M, UserSchema as v, UserUnitDataSchema as E, ViewedUnitSchema as g } from "./schema.mjs";
3
- import { getDB as D, resetDB as A } from "./db.mjs";
4
- import { defaultIdGenerator as T, ensureUser as R, getUserUUID as I } from "./api/users.mjs";
5
- import { debugDump as b, exportJSON as k } from "./debug.mjs";
6
- import { createORMStringStorage as V, kvGet as B, kvRemove as L, kvSet as _ } from "./storage.mjs";
7
- import { getFavoritedUnitsForProperty as H, isUnitFavorited as N, setFavoriteUnit as Q, toggleFavoriteUnit as w } from "./api/favorites.mjs";
8
- import { PropertyStore as W, propertyStore as Z } from "./api/properties.mjs";
9
- import { UnifiedStore as q, UnifiedStore as z, store as K } from "./stores/store.mjs";
10
- import { createUseUnitState as Y, createZustandUnifiedStore as $ } from "./adapters/zustand-store.mjs";
11
- import { createStructuredStore as re, createStructuredStoreActions as te } from "./adapters/structured-store.mjs";
12
- import { favorites as ae } from "./units/favorites.mjs";
13
- import { DEFAULT_PLACEHOLDER_IMAGE as me, DEFAULT_WEB_ORIGIN as ne, buildExploreUrl as se, buildImageUrl as pe, transformUnitsApiResponse as le, transformUnitsApiResponseToClient as Se, transformUnitsApiResponseToClientFilters as fe } from "./features/units/transformers.mjs";
14
- import { defaultSortParamMap as de, transformFiltersToPreferences as ue, transformFiltersToUnitsSearchParams as xe } from "./features/filters/transformers.mjs";
15
- import { dimensionToMmNumber as he, formatDimensions as ye, imperialToMm as Me, inchesToMm as ve, mmToInches as Ee, toInchesDisplay as ge } from "./utils/dimensions.mjs";
16
- import { configureValidation as De } from "./validation.mjs";
17
- import { OverviewImagesOnPropertyModel as Fe } from "./base/overviewimagesonproperty.mjs";
18
- import { AmenityImagesOnPropertyModel as Re } from "./base/amenityimagesonproperty.mjs";
19
- import { FloorPlanModel as Oe } from "./base/floorplan.mjs";
20
- import { MediaModel as ke } from "./base/media.mjs";
21
- import { PropertyModel as Ve } from "./base/property.mjs";
22
- import { PropertyHighlightModel as Le } from "./base/propertyhighlight.mjs";
23
- import { RoomModel as Ge } from "./base/room.mjs";
24
- import { StyleModel as Ne } from "./base/style.mjs";
25
- import { UnitModel as we } from "./base/unit.mjs";
26
- import { Currency as We, DeliveryStatus as Ze, ExternalService as je, FurnitureAvailability as qe, Highlights as ze, MediaType as Ke, QueueJobStatus as Xe, RenderStatus as Ye, Status as $e, UserRole as er } from "./base/enums.mjs";
27
- import { RenderedStyleModel as tr } from "./base/renderedstyle.mjs";
28
- import { PropertyAmenityModel as ar } from "./base/propertyamenity.mjs";
29
- import { FavoriteUnitModel as mr } from "./base/favoriteunit.mjs";
30
- import { UserModel as sr } from "./base/user.mjs";
31
- import { PropertyLinkModel as lr } from "./base/propertylink.mjs";
32
- import { AnalyticsProvider as fr, useAnalytics as cr } from "./features/analytics/AnalyticsProvider.mjs";
33
- import { QuestionEnumValues as ur, QuestionnaireInteractionValues as xr, SortEnumValues as Ur, buildTrackingEvents as hr, useTrackEvent as yr, useTrackingEvents as Mr } from "./features/analytics/analytics.mjs";
1
+ import { OpenDBError as o, SchemaMismatchError as t } from "./errors.mjs";
2
+ import { ApiUserSchema as m, AppStoreDataSchema as i, FiltersSchema as n, PropertySchema as s, PropertyStoreDataSchema as p, QueryParamsSchema as l, ResultsModeEnum as S, SCHEMA_VERSION as f, SortByEnum as c, TourContactDataSchema as u, UnifiedStoreDataSchema as d, UnitDataSchema as x, UnitSchema as M, UserPropertyStateSchema as h, UserSchema as U, UserUnitDataSchema as y, ViewedUnitSchema as E } from "./schema.mjs";
3
+ import { getDB as A, resetDB as D } from "./db.mjs";
4
+ import { debugDump as T, exportJSON as v } from "./debug.mjs";
5
+ import { createORMStringStorage as I, kvGet as F, kvRemove as O, kvSet as b } from "./storage.mjs";
6
+ import { UnifiedStore as C, UnifiedStore as V, store as B } from "./stores/store.mjs";
7
+ import { createZustandUnifiedStore as _ } from "./adapters/zustand-store.mjs";
8
+ import { createStructuredStore as N, createStructuredStoreActions as Q } from "./adapters/structured-store.mjs";
9
+ import { DEFAULT_PLACEHOLDER_IMAGE as w, DEFAULT_WEB_ORIGIN as J, buildExploreUrl as W, buildImageUrl as Z, transformUnitsApiResponse as j, transformUnitsApiResponseToClient as q, transformUnitsApiResponseToClientFilters as z } from "./features/units/transformers.mjs";
10
+ import { defaultSortParamMap as X, transformFiltersToPreferences as Y, transformFiltersToUnitsSearchParams as $ } from "./features/filters/transformers.mjs";
11
+ import { dimensionToMmNumber as re, formatDimensions as oe, imperialToMm as te, inchesToMm as ae, mmToInches as me, toInchesDisplay as ie } from "./utils/dimensions.mjs";
12
+ import { configureValidation as se } from "./validation.mjs";
13
+ import { OverviewImagesOnPropertyModel as le } from "./base/overviewimagesonproperty.mjs";
14
+ import { AmenityImagesOnPropertyModel as fe } from "./base/amenityimagesonproperty.mjs";
15
+ import { FloorPlanModel as ue } from "./base/floorplan.mjs";
16
+ import { MediaModel as xe } from "./base/media.mjs";
17
+ import { PropertyModel as he } from "./base/property.mjs";
18
+ import { PropertyHighlightModel as ye } from "./base/propertyhighlight.mjs";
19
+ import { RoomModel as ge } from "./base/room.mjs";
20
+ import { StyleModel as De } from "./base/style.mjs";
21
+ import { UnitModel as Te } from "./base/unit.mjs";
22
+ import { Currency as Re, DeliveryStatus as Ie, EngagementType as Fe, ExternalService as Oe, FurnitureAvailability as be, Highlights as ke, MediaType as Ce, QueueJobStatus as Ve, RenderStatus as Be, Status as Le, UserRole as _e } from "./base/enums.mjs";
23
+ import { RenderedStyleModel as Ne } from "./base/renderedstyle.mjs";
24
+ import { PropertyAmenityModel as Ge } from "./base/propertyamenity.mjs";
25
+ import { FavoriteUnitModel as Je } from "./base/favoriteunit.mjs";
26
+ import { UserModel as Ze } from "./base/user.mjs";
27
+ import { PropertyLinkModel as qe } from "./base/propertylink.mjs";
28
+ import { AnalyticsProvider as Ke, useAnalytics as Xe } from "./features/analytics/AnalyticsProvider.mjs";
29
+ import { QuestionEnumValues as $e, QuestionnaireInteractionValues as er, SortEnumValues as rr, buildTrackingEvents as or, useTrackEvent as tr, useTrackingEvents as ar } from "./features/analytics/analytics.mjs";
34
30
  export {
35
- Re as AmenityImagesOnPropertyModel,
36
- fr as AnalyticsProvider,
37
- i as ApiUserSchema,
38
- m as AppStoreDataSchema,
39
- We as Currency,
40
- me as DEFAULT_PLACEHOLDER_IMAGE,
41
- ne as DEFAULT_WEB_ORIGIN,
42
- Ze as DeliveryStatus,
43
- je as ExternalService,
44
- mr as FavoriteUnitModel,
45
- n as FavoritesSchema,
46
- s as FiltersSchema,
47
- Oe as FloorPlanModel,
48
- qe as FurnitureAvailability,
49
- ze as Highlights,
50
- ke as MediaModel,
51
- Ke as MediaType,
52
- t as OpenDBError,
53
- Fe as OverviewImagesOnPropertyModel,
54
- ar as PropertyAmenityModel,
55
- Le as PropertyHighlightModel,
56
- lr as PropertyLinkModel,
57
- Ve as PropertyModel,
58
- p as PropertySchema,
59
- W as PropertyStore,
60
- l as PropertyStoreDataSchema,
61
- S as QueryParamsSchema,
62
- ur as QuestionEnumValues,
63
- xr as QuestionnaireInteractionValues,
64
- Xe as QueueJobStatus,
65
- Ye as RenderStatus,
66
- tr as RenderedStyleModel,
67
- f as ResultsModeEnum,
68
- Ge as RoomModel,
69
- c as SCHEMA_VERSION,
70
- o as SchemaMismatchError,
71
- d as SortByEnum,
72
- Ur as SortEnumValues,
73
- $e as Status,
74
- q as Store,
75
- Ne as StyleModel,
31
+ fe as AmenityImagesOnPropertyModel,
32
+ Ke as AnalyticsProvider,
33
+ m as ApiUserSchema,
34
+ i as AppStoreDataSchema,
35
+ Re as Currency,
36
+ w as DEFAULT_PLACEHOLDER_IMAGE,
37
+ J as DEFAULT_WEB_ORIGIN,
38
+ Ie as DeliveryStatus,
39
+ Fe as EngagementType,
40
+ Oe as ExternalService,
41
+ Je as FavoriteUnitModel,
42
+ n as FiltersSchema,
43
+ ue as FloorPlanModel,
44
+ be as FurnitureAvailability,
45
+ ke as Highlights,
46
+ xe as MediaModel,
47
+ Ce as MediaType,
48
+ o as OpenDBError,
49
+ le as OverviewImagesOnPropertyModel,
50
+ Ge as PropertyAmenityModel,
51
+ ye as PropertyHighlightModel,
52
+ qe as PropertyLinkModel,
53
+ he as PropertyModel,
54
+ s as PropertySchema,
55
+ p as PropertyStoreDataSchema,
56
+ l as QueryParamsSchema,
57
+ $e as QuestionEnumValues,
58
+ er as QuestionnaireInteractionValues,
59
+ Ve as QueueJobStatus,
60
+ Be as RenderStatus,
61
+ Ne as RenderedStyleModel,
62
+ S as ResultsModeEnum,
63
+ ge as RoomModel,
64
+ f as SCHEMA_VERSION,
65
+ t as SchemaMismatchError,
66
+ c as SortByEnum,
67
+ rr as SortEnumValues,
68
+ Le as Status,
69
+ C as Store,
70
+ De as StyleModel,
76
71
  u as TourContactDataSchema,
77
- z as UnifiedStore,
78
- x as UnifiedStoreDataSchema,
79
- U as UnitDataSchema,
80
- h as UnitFavoriteSchema,
81
- we as UnitModel,
82
- y as UnitSchema,
83
- sr as UserModel,
84
- M as UserPropertyStateSchema,
85
- er as UserRole,
86
- v as UserSchema,
87
- E as UserUnitDataSchema,
88
- g as ViewedUnitSchema,
89
- se as buildExploreUrl,
90
- pe as buildImageUrl,
91
- hr as buildTrackingEvents,
92
- De as configureValidation,
93
- V as createORMStringStorage,
94
- re as createStructuredStore,
95
- te as createStructuredStoreActions,
96
- Y as createUseUnitState,
97
- $ as createZustandUnifiedStore,
98
- b as debugDump,
99
- T as defaultIdGenerator,
100
- de as defaultSortParamMap,
101
- he as dimensionToMmNumber,
102
- R as ensureUser,
103
- k as exportJSON,
104
- ae as favorites,
105
- ye as formatDimensions,
106
- D as getDB,
107
- H as getFavoritedUnitsForProperty,
108
- I as getUserUUID,
109
- Me as imperialToMm,
110
- ve as inchesToMm,
111
- N as isUnitFavorited,
112
- B as kvGet,
113
- L as kvRemove,
114
- _ as kvSet,
115
- Ee as mmToInches,
116
- Z as propertyStore,
117
- A as resetDB,
118
- Q as setFavoriteUnit,
119
- K as store,
120
- ge as toInchesDisplay,
121
- w as toggleFavoriteUnit,
122
- ue as transformFiltersToPreferences,
123
- xe as transformFiltersToUnitsSearchParams,
124
- le as transformUnitsApiResponse,
125
- Se as transformUnitsApiResponseToClient,
126
- fe as transformUnitsApiResponseToClientFilters,
127
- cr as useAnalytics,
128
- yr as useTrackEvent,
129
- Mr as useTrackingEvents
72
+ V as UnifiedStore,
73
+ d as UnifiedStoreDataSchema,
74
+ x as UnitDataSchema,
75
+ Te as UnitModel,
76
+ M as UnitSchema,
77
+ Ze as UserModel,
78
+ h as UserPropertyStateSchema,
79
+ _e as UserRole,
80
+ U as UserSchema,
81
+ y as UserUnitDataSchema,
82
+ E as ViewedUnitSchema,
83
+ W as buildExploreUrl,
84
+ Z as buildImageUrl,
85
+ or as buildTrackingEvents,
86
+ se as configureValidation,
87
+ I as createORMStringStorage,
88
+ N as createStructuredStore,
89
+ Q as createStructuredStoreActions,
90
+ _ as createZustandUnifiedStore,
91
+ T as debugDump,
92
+ X as defaultSortParamMap,
93
+ re as dimensionToMmNumber,
94
+ v as exportJSON,
95
+ oe as formatDimensions,
96
+ A as getDB,
97
+ te as imperialToMm,
98
+ ae as inchesToMm,
99
+ F as kvGet,
100
+ O as kvRemove,
101
+ b as kvSet,
102
+ me as mmToInches,
103
+ D as resetDB,
104
+ B as store,
105
+ ie as toInchesDisplay,
106
+ Y as transformFiltersToPreferences,
107
+ $ as transformFiltersToUnitsSearchParams,
108
+ j as transformUnitsApiResponse,
109
+ q as transformUnitsApiResponseToClient,
110
+ z as transformUnitsApiResponseToClientFilters,
111
+ Xe as useAnalytics,
112
+ tr as useTrackEvent,
113
+ ar as useTrackingEvents
130
114
  };
131
115
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/schema.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.cjs"),m=1,g=t.object({uuid:t.string().uuid(),createdAt:t.string().datetime().optional()}),u=t.object({isFavorite:t.boolean().optional(),viewedDate:t.string().optional()}),c=u,a=t.union([t.string(),t.number(),t.boolean(),t.record(t.unknown())]),b=t.union([a,t.array(a)]),n=t.object({date_availability:b.nullable().optional(),qty_bedrooms:t.union([t.array(a),t.null()]).optional(),base_price:t.number().nullable().optional(),highlights:t.array(a).optional()}),i=t.enum(["all","bestFit","closestMatch","favorites","loading"]),e=t.enum(["relevance","newest","cost_low_to_high","cost_high_to_low"]),r=t.object({limit:t.number().default(10),page:t.number().default(1),sortBy:e.default("relevance"),base_price:t.number().nullable().optional(),date_availability:t.array(t.string()).optional(),qty_bedrooms:t.array(t.number()).optional(),highlights:t.array(t.string()).optional(),nearBuilding:t.array(t.string()).optional(),nearNeighbourhood:t.array(t.string()).optional()}),y=t.object({data:t.record(c),filters:n,tempFilters:n,apiFilters:r,resultsMode:i,propertySlug:t.string().nullable(),resolvedQuestionnaireValues:t.record(t.array(t.string())),sortBy:e}),o=t.object({id:t.union([t.number().int(),t.string()]).optional(),name:t.string(),slug:t.string().nullable().optional(),qty_bedrooms:t.coerce.number().nullable().optional(),qty_bathrooms:t.coerce.number().nullable().optional(),base_price:t.coerce.number().nullable().optional(),dim_sq_ft:t.coerce.number().nullable().optional(),propertyId:t.union([t.number().int(),t.string()]).optional(),is_available:t.boolean().optional(),createdAt:t.string().datetime().optional(),updatedAt:t.string().datetime().optional(),date_availability:t.string().datetime().nullable().optional(),unitSetAvailableOn:t.string().datetime().nullable().optional(),floorPlanId:t.union([t.number().int(),t.string()]).nullable().optional(),property:t.unknown().optional(),amenities:t.array(t.unknown()).optional(),highlights:t.array(t.unknown()).optional(),floorPlan:t.unknown().nullable().optional(),renderedStyle:t.array(t.unknown()).optional(),video:t.unknown().nullable().optional(),videoThumbnail:t.unknown().nullable().optional(),embedGif:t.unknown().nullable().optional(),userId:t.union([t.number().int(),t.string()]).optional(),user:t.unknown().optional(),status:t.string().optional(),external_id:t.string().nullable().optional(),unitRenderedStyles:t.array(t.unknown()).optional()}),l=t.object({id:t.union([t.number().int(),t.string()]),createdAt:t.string().datetime(),updatedAt:t.string().datetime(),name:t.string(),slug:t.string().nullable().optional(),description:t.string(),contact_name:t.string().nullable().optional(),contact_email:t.string().optional(),contact_phone:t.string().nullable().optional(),notification_email:t.string().nullable().optional(),logo:t.unknown().nullable().optional(),leadMedia:t.unknown().nullable().optional(),overviewImages:t.array(t.unknown()).optional(),amenityImages:t.array(t.unknown()).optional(),address_street:t.string().optional(),address_city:t.string().optional(),address_state:t.string().nullable().optional(),ingestionFileName:t.string().nullable().optional(),address_zip:t.string().optional(),address_country:t.string().optional(),units:t.array(o).optional(),amenities:t.array(t.unknown()).optional(),highlights:t.array(t.unknown()).optional(),externalServices:t.array(t.unknown()).optional(),userId:t.union([t.number().int(),t.string()]).optional(),user:t.unknown().optional(),status:t.string().optional(),floorPlans:t.array(t.unknown()).optional()}),h=t.object({id:t.union([t.number().int(),t.string()]).optional(),email:t.string().email().optional(),first_name:t.string().optional(),last_name:t.string().optional(),password:t.string().optional(),salt:t.string().optional(),role:t.string().optional(),Property:t.array(l).optional(),Unit:t.array(o).optional(),floorPlans:t.array(t.unknown()).optional(),createdAt:t.string().datetime().optional(),updatedAt:t.string().datetime().optional()}),p=t.object({unitId:t.string(),viewedDate:t.string()}),d=t.object({timezone:t.string().optional(),favouriteUnits:t.array(t.coerce.string()).optional(),preferences:t.record(t.unknown()).optional()}),s=t.object({id:t.coerce.string(),slug:t.string(),favoritedUnits:t.array(t.string()),tourContactedOn:t.string().nullable(),viewedUnits:t.array(p),questionnaireResults:t.unknown().nullable().optional(),tourContactData:d.nullable().optional(),data:l.optional()}),S=t.object({data:t.record(s),propertySlug:t.string().nullable(),propertyId:t.string().nullable(),hasPreviouslySearched:t.array(t.string())}),w=t.object({id:t.number().int(),userId:t.number().int(),unitId:t.number().int(),createdAt:t.string().datetime()}),_=t.object({unitIds:t.array(t.string()),updatedAt:t.string().datetime()}),v=t.object({properties:t.record(s),currentPropertyId:t.string().nullable(),currentPropertySlug:t.string().nullable(),hasPreviouslySearched:t.array(t.string()),unitResults:t.array(o),filters:n,tempFilters:n,apiFilters:r,resultsMode:i,resolvedQuestionnaireValues:t.record(t.array(t.string())),sortBy:e});exports.ApiUserSchema=h;exports.AppStoreDataSchema=y;exports.FavoritesSchema=_;exports.FiltersSchema=n;exports.PropertySchema=l;exports.PropertyStoreDataSchema=S;exports.QueryParamsSchema=r;exports.ResultsModeEnum=i;exports.SCHEMA_VERSION=m;exports.SortByEnum=e;exports.TourContactDataSchema=d;exports.UnifiedStoreDataSchema=v;exports.UnitDataSchema=c;exports.UnitFavoriteSchema=w;exports.UnitSchema=o;exports.UserPropertyStateSchema=s;exports.UserSchema=g;exports.UserUnitDataSchema=u;exports.ViewedUnitSchema=p;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.cjs"),m=1,g=n.object({uuid:n.string().uuid(),createdAt:n.string().datetime().optional()}),u=n.object({isFavorite:n.boolean().optional(),viewedDate:n.string().optional()}),p=u,a=n.union([n.string(),n.number(),n.boolean(),n.record(n.unknown())]),b=n.union([a,n.array(a)]),t=n.object({date_availability:b.nullable().optional(),qty_bedrooms:n.union([n.array(a),n.null()]).optional(),base_price:n.number().nullable().optional(),highlights:n.array(a).optional()}),i=n.enum(["all","bestFit","closestMatch","favorites","loading"]),o=n.enum(["relevance","newest","cost_low_to_high","cost_high_to_low"]),r=n.object({limit:n.number().default(10),page:n.number().default(1),sortBy:o.default("relevance"),base_price:n.number().nullable().optional(),date_availability:n.array(n.string()).optional(),qty_bedrooms:n.array(n.number()).optional(),highlights:n.array(n.string()).optional(),nearBuilding:n.array(n.string()).optional(),nearNeighbourhood:n.array(n.string()).optional()}),y=n.object({data:n.record(p),filters:t,tempFilters:t,apiFilters:r,resultsMode:i,propertySlug:n.string().nullable(),resolvedQuestionnaireValues:n.record(n.array(n.string())),sortBy:o}),e=n.object({id:n.union([n.number().int(),n.string()]).optional(),name:n.string(),slug:n.string().nullable().optional(),qty_bedrooms:n.coerce.number().nullable().optional(),qty_bathrooms:n.coerce.number().nullable().optional(),base_price:n.coerce.number().nullable().optional(),dim_sq_ft:n.coerce.number().nullable().optional(),propertyId:n.union([n.number().int(),n.string()]).optional(),is_available:n.boolean().optional(),createdAt:n.string().datetime().optional(),updatedAt:n.string().datetime().optional(),date_availability:n.string().datetime().nullable().optional(),unitSetAvailableOn:n.string().datetime().nullable().optional(),floorPlanId:n.union([n.number().int(),n.string()]).nullable().optional(),property:n.unknown().optional(),amenities:n.array(n.unknown()).optional(),highlights:n.array(n.unknown()).optional(),floorPlan:n.unknown().nullable().optional(),renderedStyle:n.array(n.unknown()).optional(),video:n.unknown().nullable().optional(),videoThumbnail:n.unknown().nullable().optional(),embedGif:n.unknown().nullable().optional(),userId:n.union([n.number().int(),n.string()]).optional(),user:n.unknown().optional(),status:n.string().optional(),external_id:n.string().nullable().optional(),unitRenderedStyles:n.array(n.unknown()).optional()}),l=n.object({id:n.union([n.number().int(),n.string()]),createdAt:n.string().datetime(),updatedAt:n.string().datetime(),name:n.string(),slug:n.string().nullable().optional(),description:n.string(),contact_name:n.string().nullable().optional(),contact_email:n.string().optional(),contact_phone:n.string().nullable().optional(),notification_email:n.string().nullable().optional(),logo:n.unknown().nullable().optional(),leadMedia:n.unknown().nullable().optional(),overviewImages:n.array(n.unknown()).optional(),amenityImages:n.array(n.unknown()).optional(),address_street:n.string().optional(),address_city:n.string().optional(),address_state:n.string().nullable().optional(),ingestionFileName:n.string().nullable().optional(),address_zip:n.string().optional(),address_country:n.string().optional(),units:n.array(e).optional(),amenities:n.array(n.unknown()).optional(),highlights:n.array(n.unknown()).optional(),externalServices:n.array(n.unknown()).optional(),userId:n.union([n.number().int(),n.string()]).optional(),user:n.unknown().optional(),status:n.string().optional(),floorPlans:n.array(n.unknown()).optional()}),h=n.object({id:n.union([n.number().int(),n.string()]).optional(),email:n.string().email().optional(),first_name:n.string().optional(),last_name:n.string().optional(),password:n.string().optional(),salt:n.string().optional(),role:n.string().optional(),Property:n.array(l).optional(),Unit:n.array(e).optional(),floorPlans:n.array(n.unknown()).optional(),createdAt:n.string().datetime().optional(),updatedAt:n.string().datetime().optional()}),c=n.object({unitId:n.string(),viewedDate:n.string()}),d=n.object({timezone:n.string().optional(),favouriteUnits:n.array(n.coerce.string()).optional(),preferences:n.record(n.unknown()).optional()}),s=n.object({id:n.coerce.string(),slug:n.string(),favoritedUnits:n.array(n.string()).optional(),tourContactedOn:n.string().nullable(),viewedUnits:n.array(c),questionnaireResults:n.unknown().nullable().optional(),tourContactData:d.nullable().optional(),data:l.optional()}),S=n.object({data:n.record(s),propertySlug:n.string().nullable(),propertyId:n.string().nullable(),hasPreviouslySearched:n.array(n.string())}),w=n.object({properties:n.record(s),currentPropertyId:n.string().nullable(),currentPropertySlug:n.string().nullable(),hasPreviouslySearched:n.array(n.string()),unitResults:n.array(e),filters:t,tempFilters:t,apiFilters:r,resultsMode:i,resolvedQuestionnaireValues:n.record(n.array(n.string())),sortBy:o});exports.ApiUserSchema=h;exports.AppStoreDataSchema=y;exports.FiltersSchema=t;exports.PropertySchema=l;exports.PropertyStoreDataSchema=S;exports.QueryParamsSchema=r;exports.ResultsModeEnum=i;exports.SCHEMA_VERSION=m;exports.SortByEnum=o;exports.TourContactDataSchema=d;exports.UnifiedStoreDataSchema=w;exports.UnitDataSchema=p;exports.UnitSchema=e;exports.UserPropertyStateSchema=s;exports.UserSchema=g;exports.UserUnitDataSchema=u;exports.ViewedUnitSchema=c;
2
2
  //# sourceMappingURL=schema.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.cjs","sources":["../src/schema.ts"],"sourcesContent":["import { z } from \"zod\";\n\nexport const SCHEMA_VERSION = 1 as const;\n\n// Entities\nexport const UserSchema = z.object({\n uuid: z.string().uuid(),\n // stored as ISO string; include to match ensureUser()\n createdAt: z.string().datetime().optional(),\n});\nexport type User = z.infer<typeof UserSchema>;\n\n// User-specific Unit state\nexport const UserUnitDataSchema = z.object({\n isFavorite: z.boolean().optional(),\n viewedDate: z.string().optional(),\n});\n// Back-compat alias (to be deprecated): keep existing name\nexport const UnitDataSchema = UserUnitDataSchema;\nexport type UnitData = z.infer<typeof UserUnitDataSchema>;\n\n// Filters and query params\nconst FilterOptionValueSchema = z.union([\n z.string(),\n z.number(),\n z.boolean(),\n z.record(z.unknown()),\n]);\n\nconst FilterCollectionSchema = z.union([\n FilterOptionValueSchema,\n z.array(FilterOptionValueSchema),\n]);\n\nexport const FiltersSchema = z.object({\n date_availability: FilterCollectionSchema.nullable().optional(),\n qty_bedrooms: z.union([z.array(FilterOptionValueSchema), z.null()]).optional(),\n base_price: z.number().nullable().optional(),\n highlights: z.array(FilterOptionValueSchema).optional(),\n});\nexport type Filters = z.infer<typeof FiltersSchema>;\n\nexport const ResultsModeEnum = z.enum([\"all\", \"bestFit\", \"closestMatch\", \"favorites\", \"loading\"]);\nexport type ResultsMode = z.infer<typeof ResultsModeEnum>;\nexport const SortByEnum = z.enum([\"relevance\", \"newest\", \"cost_low_to_high\", \"cost_high_to_low\"]);\nexport type SortBy = z.infer<typeof SortByEnum>;\n\nexport const QueryParamsSchema = z.object({\n limit: z.number().default(10),\n page: z.number().default(1),\n sortBy: SortByEnum.default(\"relevance\"),\n base_price: z.number().nullable().optional(),\n date_availability: z.array(z.string()).optional(),\n qty_bedrooms: z.array(z.number()).optional(),\n highlights: z.array(z.string()).optional(),\n nearBuilding: z.array(z.string()).optional(),\n nearNeighbourhood: z.array(z.string()).optional(),\n});\nexport type QueryParams = z.infer<typeof QueryParamsSchema>;\n\n// App (standalone) persisted state\nexport const AppStoreDataSchema = z.object({\n data: z.record(UnitDataSchema),\n filters: FiltersSchema,\n tempFilters: FiltersSchema,\n apiFilters: QueryParamsSchema,\n resultsMode: ResultsModeEnum,\n propertySlug: z.string().nullable(),\n resolvedQuestionnaireValues: z.record(z.array(z.string())),\n sortBy: SortByEnum,\n});\nexport type AppStoreData = z.infer<typeof AppStoreDataSchema>;\n\n// Domain models (optional fields to mirror API shape without breaking)\n// Mirrors the backend Unit model with relaxed optional fields\nexport const UnitSchema = z.object({\n id: z.union([z.number().int(), z.string()]).optional(),\n name: z.string(),\n slug: z.string().nullable().optional(),\n qty_bedrooms: z.coerce.number().nullable().optional(),\n qty_bathrooms: z.coerce.number().nullable().optional(),\n base_price: z.coerce.number().nullable().optional(),\n dim_sq_ft: z.coerce.number().nullable().optional(),\n propertyId: z.union([z.number().int(), z.string()]).optional(),\n is_available: z.boolean().optional(),\n createdAt: z.string().datetime().optional(),\n updatedAt: z.string().datetime().optional(),\n date_availability: z.string().datetime().nullable().optional(),\n unitSetAvailableOn: z.string().datetime().nullable().optional(),\n floorPlanId: z.union([z.number().int(), z.string()]).nullable().optional(),\n // Relations and nested structures kept loose to avoid coupling\n property: z.unknown().optional(),\n amenities: z.array(z.unknown()).optional(),\n highlights: z.array(z.unknown()).optional(),\n floorPlan: z.unknown().nullable().optional(),\n renderedStyle: z.array(z.unknown()).optional(),\n video: z.unknown().nullable().optional(),\n videoThumbnail: z.unknown().nullable().optional(),\n embedGif: z.unknown().nullable().optional(),\n userId: z.union([z.number().int(), z.string()]).optional(),\n user: z.unknown().optional(),\n status: z.string().optional(),\n external_id: z.string().nullable().optional(),\n unitRenderedStyles: z.array(z.unknown()).optional(),\n});\nexport type Unit = z.infer<typeof UnitSchema>;\n\n// Mirrors the backend Property model with relaxed optional fields\nexport const PropertySchema = z.object({\n /**\n * Property (readable shape)\n *\n * interface Property {\n * id: number | string\n * createdAt: string // ISO\n * updatedAt: string // ISO\n * title: string\n * slug?: string | null\n * description: string\n * contactName?: string | null\n * contactEmail?: string\n * contactPhone?: string | null\n * notificationEmail?: string | null\n * logo?: unknown | null\n * leadMedia?: unknown | null\n * overviewImages?: unknown[]\n * amenityImages?: unknown[]\n * street?: string\n * city?: string\n * state?: string | null\n * zip?: string\n * country?: string\n * units?: Unit[]\n * amenities?: unknown[]\n * highlights?: unknown[]\n * externalServices?: unknown[]\n * userId?: number | string\n * user?: unknown\n * status?: string\n * floorPlans?: unknown[]\n * }\n */\n id: z.union([z.number().int(), z.string()]),\n createdAt: z.string().datetime(),\n updatedAt: z.string().datetime(),\n name: z.string(),\n slug: z.string().nullable().optional(),\n description: z.string(),\n contact_name: z.string().nullable().optional(),\n contact_email: z.string().optional(),\n contact_phone: z.string().nullable().optional(),\n notification_email: z.string().nullable().optional(),\n logo: z.unknown().nullable().optional(),\n leadMedia: z.unknown().nullable().optional(),\n overviewImages: z.array(z.unknown()).optional(),\n amenityImages: z.array(z.unknown()).optional(),\n address_street: z.string().optional(),\n address_city: z.string().optional(),\n address_state: z.string().nullable().optional(),\n ingestionFileName: z.string().nullable().optional(),\n address_zip: z.string().optional(),\n address_country: z.string().optional(),\n units: z.array(UnitSchema).optional(),\n amenities: z.array(z.unknown()).optional(),\n highlights: z.array(z.unknown()).optional(),\n externalServices: z.array(z.unknown()).optional(),\n userId: z.union([z.number().int(), z.string()]).optional(),\n user: z.unknown().optional(),\n status: z.string().optional(),\n floorPlans: z.array(z.unknown()).optional(),\n});\nexport type Property = z.infer<typeof PropertySchema>;\n\n// Mirrors the backend User model with relaxed optional fields\n// Named ApiUserSchema to avoid conflict with local UserSchema (uuid-only)\nexport const ApiUserSchema = z.object({\n id: z.union([z.number().int(), z.string()]).optional(),\n email: z.string().email().optional(),\n first_name: z.string().optional(),\n last_name: z.string().optional(),\n password: z.string().optional(),\n salt: z.string().optional(),\n role: z.string().optional(),\n Property: z.array(PropertySchema).optional(),\n Unit: z.array(UnitSchema).optional(),\n floorPlans: z.array(z.unknown()).optional(),\n createdAt: z.string().datetime().optional(),\n updatedAt: z.string().datetime().optional(),\n});\nexport type ApiUser = z.infer<typeof ApiUserSchema>;\n\n// Property-related schemas used by the PropertyStore and UnifiedStore\nexport const ViewedUnitSchema = z.object({\n unitId: z.string(),\n viewedDate: z.string(),\n});\nexport type ViewedUnit = z.infer<typeof ViewedUnitSchema>;\n\nexport const TourContactDataSchema = z.object({\n timezone: z.string().optional(),\n favouriteUnits: z.array(z.coerce.string()).optional(),\n preferences: z.record(z.unknown()).optional(),\n});\nexport type TourContactData = z.infer<typeof TourContactDataSchema>;\n\nexport const UserPropertyStateSchema = z.object({\n id: z.coerce.string(),\n slug: z.string(),\n favoritedUnits: z.array(z.string()),\n tourContactedOn: z.string().nullable(),\n viewedUnits: z.array(ViewedUnitSchema),\n questionnaireResults: z.unknown().nullable().optional(),\n tourContactData: TourContactDataSchema.nullable().optional(),\n // Full property payload persisted alongside per-property state\n data: PropertySchema.optional(),\n});\nexport type UserPropertyState = z.infer<typeof UserPropertyStateSchema>;\n\nexport const PropertyStoreDataSchema = z.object({\n data: z.record(UserPropertyStateSchema),\n propertySlug: z.string().nullable(),\n propertyId: z.string().nullable(),\n hasPreviouslySearched: z.array(z.string()),\n});\nexport type PropertyStoreData = z.infer<typeof PropertyStoreDataSchema>;\n\n// favorites\nexport const UnitFavoriteSchema = z.object({\n id: z.number().int(),\n userId: z.number().int(),\n unitId: z.number().int(),\n createdAt: z.string().datetime(),\n});\nexport type UnitFavorite = z.infer<typeof UnitFavoriteSchema>;\n\nexport const FavoritesSchema = z.object({\n // per-property favorites are stored under a KV key, so propertyId is implicit\n unitIds: z.array(z.string()),\n updatedAt: z.string().datetime(),\n});\nexport type Favorites = z.infer<typeof FavoritesSchema>;\n\n// Unified store schema (combines property + app persistent bits)\nexport const UnifiedStoreDataSchema = z.object({\n // Property-related data\n properties: z.record(UserPropertyStateSchema),\n currentPropertyId: z.string().nullable(),\n currentPropertySlug: z.string().nullable(),\n hasPreviouslySearched: z.array(z.string()),\n\n // App-level data\n unitResults: z.array(UnitSchema),\n filters: FiltersSchema,\n tempFilters: FiltersSchema,\n apiFilters: QueryParamsSchema,\n resultsMode: ResultsModeEnum,\n resolvedQuestionnaireValues: z.record(z.array(z.string())),\n sortBy: SortByEnum,\n});\nexport type UnifiedStoreData = z.infer<typeof UnifiedStoreDataSchema>;\n"],"names":["SCHEMA_VERSION","UserSchema","z.object","z.string","UserUnitDataSchema","z.boolean","UnitDataSchema","FilterOptionValueSchema","z.union","z.number","z.record","z.unknown","FilterCollectionSchema","z.array","FiltersSchema","z.null","ResultsModeEnum","z.enum","SortByEnum","QueryParamsSchema","AppStoreDataSchema","UnitSchema","z.coerce","PropertySchema","ApiUserSchema","ViewedUnitSchema","TourContactDataSchema","UserPropertyStateSchema","PropertyStoreDataSchema","UnitFavoriteSchema","FavoritesSchema","UnifiedStoreDataSchema"],"mappings":"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"}
1
+ {"version":3,"file":"schema.cjs","sources":["../src/schema.ts"],"sourcesContent":["import { z } from \"zod\";\n\nexport const SCHEMA_VERSION = 1 as const;\n\n// Entities\nexport const UserSchema = z.object({\n uuid: z.string().uuid(),\n // stored as ISO string; include to match ensureUser()\n createdAt: z.string().datetime().optional(),\n});\nexport type User = z.infer<typeof UserSchema>;\n\n// User-specific Unit state\nexport const UserUnitDataSchema = z.object({\n isFavorite: z.boolean().optional(),\n viewedDate: z.string().optional(),\n});\n// Back-compat alias (to be deprecated): keep existing name\nexport const UnitDataSchema = UserUnitDataSchema;\nexport type UnitData = z.infer<typeof UserUnitDataSchema>;\n\n// Filters and query params\nconst FilterOptionValueSchema = z.union([\n z.string(),\n z.number(),\n z.boolean(),\n z.record(z.unknown()),\n]);\n\nconst FilterCollectionSchema = z.union([\n FilterOptionValueSchema,\n z.array(FilterOptionValueSchema),\n]);\n\nexport const FiltersSchema = z.object({\n date_availability: FilterCollectionSchema.nullable().optional(),\n qty_bedrooms: z.union([z.array(FilterOptionValueSchema), z.null()]).optional(),\n base_price: z.number().nullable().optional(),\n highlights: z.array(FilterOptionValueSchema).optional(),\n});\nexport type Filters = z.infer<typeof FiltersSchema>;\n\nexport const ResultsModeEnum = z.enum([\"all\", \"bestFit\", \"closestMatch\", \"favorites\", \"loading\"]);\nexport type ResultsMode = z.infer<typeof ResultsModeEnum>;\nexport const SortByEnum = z.enum([\"relevance\", \"newest\", \"cost_low_to_high\", \"cost_high_to_low\"]);\nexport type SortBy = z.infer<typeof SortByEnum>;\n\nexport const QueryParamsSchema = z.object({\n limit: z.number().default(10),\n page: z.number().default(1),\n sortBy: SortByEnum.default(\"relevance\"),\n base_price: z.number().nullable().optional(),\n date_availability: z.array(z.string()).optional(),\n qty_bedrooms: z.array(z.number()).optional(),\n highlights: z.array(z.string()).optional(),\n nearBuilding: z.array(z.string()).optional(),\n nearNeighbourhood: z.array(z.string()).optional(),\n});\nexport type QueryParams = z.infer<typeof QueryParamsSchema>;\n\n// App (standalone) persisted state\nexport const AppStoreDataSchema = z.object({\n data: z.record(UnitDataSchema),\n filters: FiltersSchema,\n tempFilters: FiltersSchema,\n apiFilters: QueryParamsSchema,\n resultsMode: ResultsModeEnum,\n propertySlug: z.string().nullable(),\n resolvedQuestionnaireValues: z.record(z.array(z.string())),\n sortBy: SortByEnum,\n});\nexport type AppStoreData = z.infer<typeof AppStoreDataSchema>;\n\n// Domain models (optional fields to mirror API shape without breaking)\n// Mirrors the backend Unit model with relaxed optional fields\nexport const UnitSchema = z.object({\n id: z.union([z.number().int(), z.string()]).optional(),\n name: z.string(),\n slug: z.string().nullable().optional(),\n qty_bedrooms: z.coerce.number().nullable().optional(),\n qty_bathrooms: z.coerce.number().nullable().optional(),\n base_price: z.coerce.number().nullable().optional(),\n dim_sq_ft: z.coerce.number().nullable().optional(),\n propertyId: z.union([z.number().int(), z.string()]).optional(),\n is_available: z.boolean().optional(),\n createdAt: z.string().datetime().optional(),\n updatedAt: z.string().datetime().optional(),\n date_availability: z.string().datetime().nullable().optional(),\n unitSetAvailableOn: z.string().datetime().nullable().optional(),\n floorPlanId: z.union([z.number().int(), z.string()]).nullable().optional(),\n // Relations and nested structures kept loose to avoid coupling\n property: z.unknown().optional(),\n amenities: z.array(z.unknown()).optional(),\n highlights: z.array(z.unknown()).optional(),\n floorPlan: z.unknown().nullable().optional(),\n renderedStyle: z.array(z.unknown()).optional(),\n video: z.unknown().nullable().optional(),\n videoThumbnail: z.unknown().nullable().optional(),\n embedGif: z.unknown().nullable().optional(),\n userId: z.union([z.number().int(), z.string()]).optional(),\n user: z.unknown().optional(),\n status: z.string().optional(),\n external_id: z.string().nullable().optional(),\n unitRenderedStyles: z.array(z.unknown()).optional(),\n});\nexport type Unit = z.infer<typeof UnitSchema>;\n\n// Mirrors the backend Property model with relaxed optional fields\nexport const PropertySchema = z.object({\n /**\n * Property (readable shape)\n *\n * interface Property {\n * id: number | string\n * createdAt: string // ISO\n * updatedAt: string // ISO\n * title: string\n * slug?: string | null\n * description: string\n * contactName?: string | null\n * contactEmail?: string\n * contactPhone?: string | null\n * notificationEmail?: string | null\n * logo?: unknown | null\n * leadMedia?: unknown | null\n * overviewImages?: unknown[]\n * amenityImages?: unknown[]\n * street?: string\n * city?: string\n * state?: string | null\n * zip?: string\n * country?: string\n * units?: Unit[]\n * amenities?: unknown[]\n * highlights?: unknown[]\n * externalServices?: unknown[]\n * userId?: number | string\n * user?: unknown\n * status?: string\n * floorPlans?: unknown[]\n * }\n */\n id: z.union([z.number().int(), z.string()]),\n createdAt: z.string().datetime(),\n updatedAt: z.string().datetime(),\n name: z.string(),\n slug: z.string().nullable().optional(),\n description: z.string(),\n contact_name: z.string().nullable().optional(),\n contact_email: z.string().optional(),\n contact_phone: z.string().nullable().optional(),\n notification_email: z.string().nullable().optional(),\n logo: z.unknown().nullable().optional(),\n leadMedia: z.unknown().nullable().optional(),\n overviewImages: z.array(z.unknown()).optional(),\n amenityImages: z.array(z.unknown()).optional(),\n address_street: z.string().optional(),\n address_city: z.string().optional(),\n address_state: z.string().nullable().optional(),\n ingestionFileName: z.string().nullable().optional(),\n address_zip: z.string().optional(),\n address_country: z.string().optional(),\n units: z.array(UnitSchema).optional(),\n amenities: z.array(z.unknown()).optional(),\n highlights: z.array(z.unknown()).optional(),\n externalServices: z.array(z.unknown()).optional(),\n userId: z.union([z.number().int(), z.string()]).optional(),\n user: z.unknown().optional(),\n status: z.string().optional(),\n floorPlans: z.array(z.unknown()).optional(),\n});\nexport type Property = z.infer<typeof PropertySchema>;\n\n// Mirrors the backend User model with relaxed optional fields\n// Named ApiUserSchema to avoid conflict with local UserSchema (uuid-only)\nexport const ApiUserSchema = z.object({\n id: z.union([z.number().int(), z.string()]).optional(),\n email: z.string().email().optional(),\n first_name: z.string().optional(),\n last_name: z.string().optional(),\n password: z.string().optional(),\n salt: z.string().optional(),\n role: z.string().optional(),\n Property: z.array(PropertySchema).optional(),\n Unit: z.array(UnitSchema).optional(),\n floorPlans: z.array(z.unknown()).optional(),\n createdAt: z.string().datetime().optional(),\n updatedAt: z.string().datetime().optional(),\n});\nexport type ApiUser = z.infer<typeof ApiUserSchema>;\n\n// Property-related schemas used by the PropertyStore and UnifiedStore\nexport const ViewedUnitSchema = z.object({\n unitId: z.string(),\n viewedDate: z.string(),\n});\nexport type ViewedUnit = z.infer<typeof ViewedUnitSchema>;\n\nexport const TourContactDataSchema = z.object({\n timezone: z.string().optional(),\n favouriteUnits: z.array(z.coerce.string()).optional(),\n preferences: z.record(z.unknown()).optional(),\n});\nexport type TourContactData = z.infer<typeof TourContactDataSchema>;\n\nexport const UserPropertyStateSchema = z.object({\n id: z.coerce.string(),\n slug: z.string(),\n favoritedUnits: z.array(z.string()).optional(),\n tourContactedOn: z.string().nullable(),\n viewedUnits: z.array(ViewedUnitSchema),\n questionnaireResults: z.unknown().nullable().optional(),\n tourContactData: TourContactDataSchema.nullable().optional(),\n // Full property payload persisted alongside per-property state\n data: PropertySchema.optional(),\n});\nexport type UserPropertyState = z.infer<typeof UserPropertyStateSchema>;\n\nexport const PropertyStoreDataSchema = z.object({\n data: z.record(UserPropertyStateSchema),\n propertySlug: z.string().nullable(),\n propertyId: z.string().nullable(),\n hasPreviouslySearched: z.array(z.string()),\n});\nexport type PropertyStoreData = z.infer<typeof PropertyStoreDataSchema>;\n\n// Unified store schema (combines property + app persistent bits)\nexport const UnifiedStoreDataSchema = z.object({\n // Property-related data\n properties: z.record(UserPropertyStateSchema),\n currentPropertyId: z.string().nullable(),\n currentPropertySlug: z.string().nullable(),\n hasPreviouslySearched: z.array(z.string()),\n\n // App-level data\n unitResults: z.array(UnitSchema),\n filters: FiltersSchema,\n tempFilters: FiltersSchema,\n apiFilters: QueryParamsSchema,\n resultsMode: ResultsModeEnum,\n resolvedQuestionnaireValues: z.record(z.array(z.string())),\n sortBy: SortByEnum,\n});\nexport type UnifiedStoreData = z.infer<typeof UnifiedStoreDataSchema>;\n"],"names":["SCHEMA_VERSION","UserSchema","z.object","z.string","UserUnitDataSchema","z.boolean","UnitDataSchema","FilterOptionValueSchema","z.union","z.number","z.record","z.unknown","FilterCollectionSchema","z.array","FiltersSchema","z.null","ResultsModeEnum","z.enum","SortByEnum","QueryParamsSchema","AppStoreDataSchema","UnitSchema","z.coerce","PropertySchema","ApiUserSchema","ViewedUnitSchema","TourContactDataSchema","UserPropertyStateSchema","PropertyStoreDataSchema","UnifiedStoreDataSchema"],"mappings":"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"}
package/dist/schema.d.ts CHANGED
@@ -1160,7 +1160,7 @@ export type TourContactData = z.infer<typeof TourContactDataSchema>;
1160
1160
  export declare const UserPropertyStateSchema: z.ZodObject<{
1161
1161
  id: z.ZodString;
1162
1162
  slug: z.ZodString;
1163
- favoritedUnits: z.ZodArray<z.ZodString, "many">;
1163
+ favoritedUnits: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1164
1164
  tourContactedOn: z.ZodNullable<z.ZodString>;
1165
1165
  viewedUnits: z.ZodArray<z.ZodObject<{
1166
1166
  unitId: z.ZodString;
@@ -1450,7 +1450,6 @@ export declare const UserPropertyStateSchema: z.ZodObject<{
1450
1450
  }, "strip", z.ZodTypeAny, {
1451
1451
  id: string;
1452
1452
  slug: string;
1453
- favoritedUnits: string[];
1454
1453
  tourContactedOn: string | null;
1455
1454
  viewedUnits: {
1456
1455
  viewedDate: string;
@@ -1514,6 +1513,7 @@ export declare const UserPropertyStateSchema: z.ZodObject<{
1514
1513
  externalServices?: unknown[] | undefined;
1515
1514
  floorPlans?: unknown[] | undefined;
1516
1515
  } | undefined;
1516
+ favoritedUnits?: string[] | undefined;
1517
1517
  questionnaireResults?: unknown;
1518
1518
  tourContactData?: {
1519
1519
  timezone?: string | undefined;
@@ -1523,7 +1523,6 @@ export declare const UserPropertyStateSchema: z.ZodObject<{
1523
1523
  }, {
1524
1524
  id: string;
1525
1525
  slug: string;
1526
- favoritedUnits: string[];
1527
1526
  tourContactedOn: string | null;
1528
1527
  viewedUnits: {
1529
1528
  viewedDate: string;
@@ -1587,6 +1586,7 @@ export declare const UserPropertyStateSchema: z.ZodObject<{
1587
1586
  externalServices?: unknown[] | undefined;
1588
1587
  floorPlans?: unknown[] | undefined;
1589
1588
  } | undefined;
1589
+ favoritedUnits?: string[] | undefined;
1590
1590
  questionnaireResults?: unknown;
1591
1591
  tourContactData?: {
1592
1592
  timezone?: string | undefined;
@@ -1599,7 +1599,7 @@ export declare const PropertyStoreDataSchema: z.ZodObject<{
1599
1599
  data: z.ZodRecord<z.ZodString, z.ZodObject<{
1600
1600
  id: z.ZodString;
1601
1601
  slug: z.ZodString;
1602
- favoritedUnits: z.ZodArray<z.ZodString, "many">;
1602
+ favoritedUnits: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1603
1603
  tourContactedOn: z.ZodNullable<z.ZodString>;
1604
1604
  viewedUnits: z.ZodArray<z.ZodObject<{
1605
1605
  unitId: z.ZodString;
@@ -1889,7 +1889,6 @@ export declare const PropertyStoreDataSchema: z.ZodObject<{
1889
1889
  }, "strip", z.ZodTypeAny, {
1890
1890
  id: string;
1891
1891
  slug: string;
1892
- favoritedUnits: string[];
1893
1892
  tourContactedOn: string | null;
1894
1893
  viewedUnits: {
1895
1894
  viewedDate: string;
@@ -1953,6 +1952,7 @@ export declare const PropertyStoreDataSchema: z.ZodObject<{
1953
1952
  externalServices?: unknown[] | undefined;
1954
1953
  floorPlans?: unknown[] | undefined;
1955
1954
  } | undefined;
1955
+ favoritedUnits?: string[] | undefined;
1956
1956
  questionnaireResults?: unknown;
1957
1957
  tourContactData?: {
1958
1958
  timezone?: string | undefined;
@@ -1962,7 +1962,6 @@ export declare const PropertyStoreDataSchema: z.ZodObject<{
1962
1962
  }, {
1963
1963
  id: string;
1964
1964
  slug: string;
1965
- favoritedUnits: string[];
1966
1965
  tourContactedOn: string | null;
1967
1966
  viewedUnits: {
1968
1967
  viewedDate: string;
@@ -2026,6 +2025,7 @@ export declare const PropertyStoreDataSchema: z.ZodObject<{
2026
2025
  externalServices?: unknown[] | undefined;
2027
2026
  floorPlans?: unknown[] | undefined;
2028
2027
  } | undefined;
2028
+ favoritedUnits?: string[] | undefined;
2029
2029
  questionnaireResults?: unknown;
2030
2030
  tourContactData?: {
2031
2031
  timezone?: string | undefined;
@@ -2040,7 +2040,6 @@ export declare const PropertyStoreDataSchema: z.ZodObject<{
2040
2040
  data: Record<string, {
2041
2041
  id: string;
2042
2042
  slug: string;
2043
- favoritedUnits: string[];
2044
2043
  tourContactedOn: string | null;
2045
2044
  viewedUnits: {
2046
2045
  viewedDate: string;
@@ -2104,6 +2103,7 @@ export declare const PropertyStoreDataSchema: z.ZodObject<{
2104
2103
  externalServices?: unknown[] | undefined;
2105
2104
  floorPlans?: unknown[] | undefined;
2106
2105
  } | undefined;
2106
+ favoritedUnits?: string[] | undefined;
2107
2107
  questionnaireResults?: unknown;
2108
2108
  tourContactData?: {
2109
2109
  timezone?: string | undefined;
@@ -2118,7 +2118,6 @@ export declare const PropertyStoreDataSchema: z.ZodObject<{
2118
2118
  data: Record<string, {
2119
2119
  id: string;
2120
2120
  slug: string;
2121
- favoritedUnits: string[];
2122
2121
  tourContactedOn: string | null;
2123
2122
  viewedUnits: {
2124
2123
  viewedDate: string;
@@ -2182,6 +2181,7 @@ export declare const PropertyStoreDataSchema: z.ZodObject<{
2182
2181
  externalServices?: unknown[] | undefined;
2183
2182
  floorPlans?: unknown[] | undefined;
2184
2183
  } | undefined;
2184
+ favoritedUnits?: string[] | undefined;
2185
2185
  questionnaireResults?: unknown;
2186
2186
  tourContactData?: {
2187
2187
  timezone?: string | undefined;
@@ -2194,39 +2194,11 @@ export declare const PropertyStoreDataSchema: z.ZodObject<{
2194
2194
  hasPreviouslySearched: string[];
2195
2195
  }>;
2196
2196
  export type PropertyStoreData = z.infer<typeof PropertyStoreDataSchema>;
2197
- export declare const UnitFavoriteSchema: z.ZodObject<{
2198
- id: z.ZodNumber;
2199
- userId: z.ZodNumber;
2200
- unitId: z.ZodNumber;
2201
- createdAt: z.ZodString;
2202
- }, "strip", z.ZodTypeAny, {
2203
- createdAt: string;
2204
- id: number;
2205
- userId: number;
2206
- unitId: number;
2207
- }, {
2208
- createdAt: string;
2209
- id: number;
2210
- userId: number;
2211
- unitId: number;
2212
- }>;
2213
- export type UnitFavorite = z.infer<typeof UnitFavoriteSchema>;
2214
- export declare const FavoritesSchema: z.ZodObject<{
2215
- unitIds: z.ZodArray<z.ZodString, "many">;
2216
- updatedAt: z.ZodString;
2217
- }, "strip", z.ZodTypeAny, {
2218
- updatedAt: string;
2219
- unitIds: string[];
2220
- }, {
2221
- updatedAt: string;
2222
- unitIds: string[];
2223
- }>;
2224
- export type Favorites = z.infer<typeof FavoritesSchema>;
2225
2197
  export declare const UnifiedStoreDataSchema: z.ZodObject<{
2226
2198
  properties: z.ZodRecord<z.ZodString, z.ZodObject<{
2227
2199
  id: z.ZodString;
2228
2200
  slug: z.ZodString;
2229
- favoritedUnits: z.ZodArray<z.ZodString, "many">;
2201
+ favoritedUnits: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2230
2202
  tourContactedOn: z.ZodNullable<z.ZodString>;
2231
2203
  viewedUnits: z.ZodArray<z.ZodObject<{
2232
2204
  unitId: z.ZodString;
@@ -2516,7 +2488,6 @@ export declare const UnifiedStoreDataSchema: z.ZodObject<{
2516
2488
  }, "strip", z.ZodTypeAny, {
2517
2489
  id: string;
2518
2490
  slug: string;
2519
- favoritedUnits: string[];
2520
2491
  tourContactedOn: string | null;
2521
2492
  viewedUnits: {
2522
2493
  viewedDate: string;
@@ -2580,6 +2551,7 @@ export declare const UnifiedStoreDataSchema: z.ZodObject<{
2580
2551
  externalServices?: unknown[] | undefined;
2581
2552
  floorPlans?: unknown[] | undefined;
2582
2553
  } | undefined;
2554
+ favoritedUnits?: string[] | undefined;
2583
2555
  questionnaireResults?: unknown;
2584
2556
  tourContactData?: {
2585
2557
  timezone?: string | undefined;
@@ -2589,7 +2561,6 @@ export declare const UnifiedStoreDataSchema: z.ZodObject<{
2589
2561
  }, {
2590
2562
  id: string;
2591
2563
  slug: string;
2592
- favoritedUnits: string[];
2593
2564
  tourContactedOn: string | null;
2594
2565
  viewedUnits: {
2595
2566
  viewedDate: string;
@@ -2653,6 +2624,7 @@ export declare const UnifiedStoreDataSchema: z.ZodObject<{
2653
2624
  externalServices?: unknown[] | undefined;
2654
2625
  floorPlans?: unknown[] | undefined;
2655
2626
  } | undefined;
2627
+ favoritedUnits?: string[] | undefined;
2656
2628
  questionnaireResults?: unknown;
2657
2629
  tourContactData?: {
2658
2630
  timezone?: string | undefined;
@@ -2845,7 +2817,6 @@ export declare const UnifiedStoreDataSchema: z.ZodObject<{
2845
2817
  properties: Record<string, {
2846
2818
  id: string;
2847
2819
  slug: string;
2848
- favoritedUnits: string[];
2849
2820
  tourContactedOn: string | null;
2850
2821
  viewedUnits: {
2851
2822
  viewedDate: string;
@@ -2909,6 +2880,7 @@ export declare const UnifiedStoreDataSchema: z.ZodObject<{
2909
2880
  externalServices?: unknown[] | undefined;
2910
2881
  floorPlans?: unknown[] | undefined;
2911
2882
  } | undefined;
2883
+ favoritedUnits?: string[] | undefined;
2912
2884
  questionnaireResults?: unknown;
2913
2885
  tourContactData?: {
2914
2886
  timezone?: string | undefined;
@@ -2978,7 +2950,6 @@ export declare const UnifiedStoreDataSchema: z.ZodObject<{
2978
2950
  properties: Record<string, {
2979
2951
  id: string;
2980
2952
  slug: string;
2981
- favoritedUnits: string[];
2982
2953
  tourContactedOn: string | null;
2983
2954
  viewedUnits: {
2984
2955
  viewedDate: string;
@@ -3042,6 +3013,7 @@ export declare const UnifiedStoreDataSchema: z.ZodObject<{
3042
3013
  externalServices?: unknown[] | undefined;
3043
3014
  floorPlans?: unknown[] | undefined;
3044
3015
  } | undefined;
3016
+ favoritedUnits?: string[] | undefined;
3045
3017
  questionnaireResults?: unknown;
3046
3018
  tourContactData?: {
3047
3019
  timezone?: string | undefined;