venue-js 1.6.0 → 1.7.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.
@@ -16,7 +16,7 @@ type MediaFile = {
16
16
  width: number;
17
17
  };
18
18
  type Media = MediaFile & {
19
- id: Id;
19
+ id: number;
20
20
  alternativeText: string | null;
21
21
  caption: string | null;
22
22
  createdAt: string;
@@ -160,7 +160,8 @@ type OccupantProperties = EntityTimestamps & {
160
160
  is_featured: boolean;
161
161
  is_landmark: boolean;
162
162
  is_maintenance: boolean;
163
- keywords: string[];
163
+ keywords: string[] | null;
164
+ /** @deprecated Use `main_location` instead. */
164
165
  kiosk_id: Id | null;
165
166
  kiosk_name: string | null;
166
167
  level_id: Id | null;
@@ -168,11 +169,18 @@ type OccupantProperties = EntityTimestamps & {
168
169
  local_category_ids: Id[];
169
170
  local_category_names: string[];
170
171
  logo: Media | null;
172
+ /** Primary location: prefixed unit-id or kiosk-id (e.g. "unit-789", "kiosk-555"). */
173
+ main_location: string | null;
174
+ /** Mixed array of additional unit-ids and kiosk-ids associated with the occupant (e.g. "unit-1", "kiosk-2"). */
175
+ correlated_locations: string[];
176
+ /** Maintenance-mode location: prefixed unit-id or kiosk-id, null when not in temp state. */
177
+ temp_location: string | null;
171
178
  maintenance_end_date: string | null;
172
179
  maintenance_start_date: string | null;
173
180
  name: TransalatableString;
174
181
  phone: string | null;
175
182
  privilege_ids: Id[];
183
+ product_ids: Id[];
176
184
  promotion_ids: Id[];
177
185
  render_priority: number;
178
186
  render_type: string;
@@ -182,17 +190,28 @@ type OccupantProperties = EntityTimestamps & {
182
190
  room_no: string | null;
183
191
  short_name: string | null;
184
192
  start_date: string;
193
+ end_date: string | null;
185
194
  style: SymbolProperties | null;
186
195
  temp_anchor_id: Id | null;
196
+ /** @deprecated Use `temp_location` instead. */
187
197
  temp_kiosk_id: Id | null;
198
+ /** @deprecated Use `temp_location` instead. */
188
199
  temp_unit_id: Id | null;
200
+ /** @deprecated Use `main_location` instead. */
189
201
  unit_id: Id | null;
190
202
  unit_name: string | null;
191
203
  venue_id: Id;
204
+ /** @deprecated Use `correlated_locations` instead. */
192
205
  kiosk_ids: Id[];
206
+ /** @deprecated Use `correlated_locations` instead. */
193
207
  unit_ids: Id[];
194
208
  website_link: string | null;
195
- show_name_on_all_units: boolean;
209
+ deleted_at: string | null;
210
+ show_name_on_all_units: boolean | null;
211
+ synced_at: string | null;
212
+ source_updated_at: string | null;
213
+ reference_id: string | null;
214
+ external_snapshot: Record<string, unknown> | null;
196
215
  reservations?: ExternalLink[];
197
216
  can_reserve?: boolean;
198
217
  display_settings?: {
@@ -292,6 +311,7 @@ type SectionProperties = EntityTimestamps & {
292
311
  gallery: Media[] | null;
293
312
  is_featured: boolean;
294
313
  hours: string | null;
314
+ display_point?: Position | null;
295
315
  [k: string]: any;
296
316
  };
297
317
  type SectionFeature = ImdfFeature<SectionGeometry, SectionProperties, "section">;
@@ -351,15 +371,27 @@ type TaxonomyProperties = EntityTimestamps & {
351
371
  venue_id: Id | null;
352
372
  };
353
373
  type TaxonomyFeature = ImdfFeature<TaxonomyGeometry, TaxonomyProperties>;
354
- type EventGeometry = Polygon;
355
374
  type EventProperties = {
356
- name: string;
357
- ordinal: number;
358
- venue_id: Id;
359
- angle: number;
360
- fontSize: number;
375
+ name: TransalatableString;
376
+ description: TransalatableString;
377
+ start_date: string;
378
+ end_date: string;
379
+ venue_id: string;
380
+ feature_id: string;
381
+ local_category_ids: string[];
382
+ daily_start_time: string;
383
+ cover_image: Media;
384
+ gallery: Media[];
385
+ daily_end_time: string;
386
+ website_link: string | null;
387
+ show_always: boolean;
388
+ venue: VenueFeature;
389
+ feature: AmenityFeature | OccupantFeature;
390
+ local_categories: TaxonomyFeature[];
391
+ local_parent_categories: TaxonomyFeature[];
392
+ local_sub_categories: TaxonomyFeature[];
361
393
  };
362
- type EventFeature = ImdfFeature<EventGeometry, EventProperties>;
394
+ type EventFeature = ImdfFeature<null, EventProperties>;
363
395
  type PromotionProperties = {
364
396
  name: TransalatableString;
365
397
  category: string;
@@ -378,6 +410,11 @@ type PromotionProperties = {
378
410
  updatedAt: string;
379
411
  venue_id: Id;
380
412
  website_link: string | null;
413
+ venue: VenueFeature;
414
+ feature: AmenityFeature | OccupantFeature;
415
+ local_categories: TaxonomyFeature[];
416
+ local_parent_categories: TaxonomyFeature[];
417
+ local_sub_categories: TaxonomyFeature[];
381
418
  };
382
419
  type PromotionFeature = ImdfFeature<null, PromotionProperties>;
383
420
  type PrivilegeGeometry = null;
@@ -422,7 +459,7 @@ type ElementFeature = ImdfFeature<ElementGeometry, ElementProperties>;
422
459
  * Sponsored Content
423
460
  */
424
461
  type SponsoredContentLegacyType = "HOMEPAGE_SPOTLIGHT" | "SCREENSAVER" | "SUGGESTED_BRAND" | "SEARCH_RESULT" | "POPUP_BANNER" | "FOOTER_BANNER" | "RECOMMENDED_EVENT" | "RECOMMENDED_PROMOTION" | "RECOMMENDED_DIRECTORY";
425
- type SponsoredContentPlacementType = "HOMEPAGE_SPOTLIGHT" | "SEARCH_SUGGESTION" | "SEARCH_RESULT" | "LIST_TOPITEM" | "POPUP_BANNER" | "FOOTER_BANNER";
462
+ type SponsoredContentPlacementType = "HOMEPAGE_SPOTLIGHT" | "SEARCH_SUGGESTION" | "SEARCH_RESULT" | "LIST_TOPITEM" | "POPUP_BANNER" | "FOOTER_BANNER" | "SCREENSAVER";
426
463
  type SponsoredContentAttributes = {
427
464
  venue_id: string;
428
465
  project_id: string;
@@ -831,6 +868,7 @@ type UnitDistanceOptions = {
831
868
  };
832
869
  type UnitOpenings = Record<string, OpeningFeature[]>;
833
870
  type UnitKiosks = Record<string, KioskFeature[]>;
871
+ type UnitAmenities = Record<string, AmenityFeature[]>;
834
872
 
835
873
  type PrepareGraphOptions = {
836
874
  data: {
@@ -842,6 +880,7 @@ type PrepareGraphOptions = {
842
880
  kiosks?: KioskFeature[];
843
881
  anchors?: AnchorFeature[];
844
882
  amenities?: AmenityFeature[];
883
+ sections?: SectionFeature[];
845
884
  };
846
885
  unitDistanceOptions?: Partial<UnitDistanceOptions>;
847
886
  };
@@ -885,7 +924,7 @@ declare const amenityToLandmark: (amenity: AmenityFeature, findByIdSync: FindByI
885
924
  * Start ----( step )---- Waypoint ----( step )---- Waypoint ----( step )---- End
886
925
  *
887
926
  */
888
- type WaypointSourceType = "opening" | "kiosk" | "amenity" | "anchor" | "coordinate";
927
+ type WaypointSourceType = "opening" | "kiosk" | "amenity" | "anchor" | "coordinate" | "section";
889
928
  type Waypoint = {
890
929
  id?: string;
891
930
  type: 'start' | 'end' | 'between';
@@ -893,6 +932,7 @@ type Waypoint = {
893
932
  ordinal: number | null;
894
933
  point: Position;
895
934
  name: TransalatableString | null;
935
+ checkpoint?: boolean;
896
936
  source: {
897
937
  type: "occupant";
898
938
  id: string;
@@ -911,6 +951,9 @@ type Waypoint = {
911
951
  } | {
912
952
  type: "coordinate";
913
953
  raw: string;
954
+ } | {
955
+ type: "section";
956
+ id: string;
914
957
  };
915
958
  };
916
959
 
@@ -971,6 +1014,7 @@ type GetNavigateClientOptions = {
971
1014
  occupants?: OccupantFeature[];
972
1015
  openings: OpeningFeature[];
973
1016
  relationships: RelationshipFeature[];
1017
+ sections?: SectionFeature[];
974
1018
  units: UnitFeature[];
975
1019
  };
976
1020
  unitDistanceOptions?: Partial<UnitDistanceOptions>;
@@ -986,6 +1030,7 @@ type NavigateContext = {
986
1030
  occupants?: OccupantFeature[];
987
1031
  openings: OpeningFeature[];
988
1032
  relationships: RelationshipFeature[];
1033
+ sections?: SectionFeature[];
989
1034
  units: UnitFeature[];
990
1035
  };
991
1036
  findByIdSync: FindByIdSync;
@@ -1040,6 +1085,7 @@ interface FeatureQueryOptions {
1040
1085
  cacheTime?: number;
1041
1086
  enabled?: boolean;
1042
1087
  retry?: boolean | number;
1088
+ refetchOnWindowFocus?: boolean;
1043
1089
  }
1044
1090
  type InternalFindById = <T extends FeatureType>(id: Id) => Promise<FeatureResponseMap[T]>;
1045
1091
  type InternalFilterByType = <T extends FeatureType>(featureType: T) => Promise<FeatureResponseMap[T][]>;
@@ -1064,6 +1110,7 @@ declare const IMDF_UNIT_CATEGORIES: readonly ["auditorium", "brick", "classroom"
1064
1110
  declare const NONIMDF_FEATURE_TYPES: FeatureType[];
1065
1111
  declare const GEOJSON_FEATURE_TYPES: FeatureType[];
1066
1112
  declare const ALL_FEATURE_TYPES: FeatureType[];
1113
+ declare const ID_PREFIX_TO_FEATURE_TYPE: Record<string, FeatureType>;
1067
1114
  declare const defaultFeatureQueryOptionsMap: Record<FeatureType, FeatureQueryOptions>;
1068
1115
 
1069
1116
  type IMDFUnitCategory = typeof IMDF_UNIT_CATEGORIES[number];
@@ -1071,9 +1118,16 @@ type IMDFUnitCategory = typeof IMDF_UNIT_CATEGORIES[number];
1071
1118
  declare function matchFilter(value: Value | Value[], filter: Filter): boolean;
1072
1119
  declare function matchFilters<T extends Record<string, any>>(item: T, filters: Filters): boolean;
1073
1120
 
1074
- declare const findContainingUnit: (poi: KioskFeature | AmenityFeature, units: UnitFeature[]) => UnitFeature | null;
1121
+ declare const findContainingUnit: (poi: KioskFeature | AmenityFeature | SectionFeature, units: UnitFeature[]) => UnitFeature | null;
1075
1122
  declare const findContainingUnitAtPoint: (point: Position, levelId: string, units: UnitFeature[]) => UnitFeature | null;
1076
1123
 
1124
+ /**
1125
+ * Returns a Point guaranteed to lie on/within the polygon's geometry.
1126
+ * Uses centroid when it falls inside; falls back to pointOnFeature for
1127
+ * concave or multi-polygon shapes where the centroid may be outside.
1128
+ */
1129
+ declare const getPointOnFeature: (feature: Feature<Polygon | MultiPolygon>) => Feature<Point>;
1130
+
1077
1131
  declare const trace: (namespace: string, text: string, ms?: number, color?: string) => void;
1078
1132
 
1079
1133
  declare const getOccupantMainLocation: (occupant: OccupantFeaturePopulated) => UnitFeaturePopulated | KioskFeaturePopulated;
@@ -1159,12 +1213,13 @@ declare const describeVerticalStep: (fromLevel: LevelFeature, toLevel: LevelFeat
1159
1213
  };
1160
1214
  };
1161
1215
  /**
1162
- * "To traverse": "Follow the path heading toward <toward>{{toward}}</toward>",
1163
- * "To traverse on walkway": "Follow the path along the walkway",
1164
- * "To traverse on walkway toward": "Follow the path along the walkway toward <toward>{{toward}}</toward>",
1165
- * "To traverse toward": "Follow the path toward <toward>{{toward}}</toward>",
1166
- * "To traverse toward with landmark": "Follow the path toward <toward>{{toward}}</toward> near <landmark>{{landmark}}</landmark>",
1167
- * "To destination": "Head to your destination.",
1216
+ * "Follow the path along the walkway"
1217
+ * "Follow the path along the walkway toward {{toward}}"
1218
+ * "Follow the path along the walkway near {{landmark}}"
1219
+ * "Follow the path through {{intermediary}}"
1220
+ * "Follow the path through {{intermediary}} toward {{toward}}"
1221
+ * "Follow the path through {{intermediary}} near {{landmark}}"
1222
+ * "Follow the path near {{landmark}}" — when intermediary is null/empty
1168
1223
  */
1169
1224
  declare const describeHorizontalStep: (intermediary: string, toward?: TransalatableString, landmark?: TransalatableString) => StepDescription;
1170
1225
  declare const describeLastStep: () => {
@@ -1195,4 +1250,4 @@ declare const createWalkablePathService: (ctx: NavigateContext, options?: {
1195
1250
  resolution: number;
1196
1251
  }) => WalkablePathUtils;
1197
1252
 
1198
- export { ALL_FEATURE_TYPES, type AmenityFeature, type AmenityFeaturePopulated, type AmenityGeometry, type AmenityProperties, type AnchorFeature, type AnchorFeaturePopulated, type AnchorGeometry, type AnchorProperties, type AngleDirection, type AnyRelationshipFeature, type BaseRelationshipProperties, type CoordinateOrdinalString, type CreateStepUtilsOptions, DEFAULT_BASE_URL, type DescribableFeature, type DetailFeature, type DetailGeometry, type DetailProperties, type DistanceOptions, type ElementFeature, type ElementGeometry, type ElementProperties, type ElevatorRelationshipFeature, type ElevatorRelationshipFeaturePopulated, type ElevatorRelationshipProperties, type EscalatorRelationshipFeature, type EscalatorRelationshipFeaturePopulated, type EscalatorRelationshipProperties, type EventFeature, type EventGeometry, type EventProperties, type FeatureId, type FeaturePopulatedResponseMap, type FeatureQueryOptions, type FeatureResponseMap, type FeatureType, type FilterParams, type FindByIdSync, type FindParams, type FindRouteOptions, type FixtureFeature, type FixtureFeaturePopulated, type FixtureGeometry, type FixtureProperties, GEOJSON_FEATURE_TYPES, type GetNavigateClientOptions, type IMDFUnitCategory, type IMDFVerticalUnitCategory, IMDF_FEATURE_TYPES, IMDF_UNIT_CATEGORIES, type Id, type ImdfFeature, type Instruction, type InstructionTurn, type InternalFilterByType, type InternalFindById, type KioskFeature, type KioskFeaturePopulated, type KioskGeometry, type KioskProperties, type LabelFeature, type LabelGeometry, type LabelProperties, type Landmark, type LandmarkService, type LevelFeature, type LevelFeaturePopulated, type LevelGeometry, type LevelProperties, type Media, type MediaFile, type Model3d, type Model3dFeature, type Model3dGeometry, type Model3dPopulated, type Model3dProperties, NONIMDF_FEATURE_TYPES, type NavigatableFeature, type NavigatableParam, type NavigateClient, type NavigateContext, type NeighborMap, type NodeId, type NodeMap, type OccupantFeature, type OccupantFeaturePopulated, type OccupantGeometry, occupantHelper as OccupantHelpers, type OccupantProperties, type OpeningFeature, type OpeningFeaturePopulated, type OpeningGeometry, type OpeningProperties, type OpeningTypeAndId, type Page, type PolygonalFeature, type PopulatableFeatureType, type PopulatedParams, type PrepareGraphOptions, type PrivilegeFeature, type PrivilegeGeometry, type PrivilegeProperties, type PromotionFeature, type PromotionProperties, type RampRelationshipFeature, type RampRelationshipFeaturePopulated, type RampRelationshipProperties, type RelationshipCategories, type RelationshipDirectionTypes, type RelationshipFeature, type RelationshipFeaturePopulated, type RelationshipGeometry, type Route, type SearchClient, type SectionFeature, type SectionFeaturePopulated, type SectionGeometry, type SectionProperties, type SingleGeometry, type SponsoredContentFeature, type SponsoredContentLegacyType, type SponsoredContentPlacementType, type SponsoredContentStrapiV4ApiResponse, type StairRelationshipFeaturePopulated, type StairsRelationshipFeature, type StairsRelationshipProperties, type Step, type StepDescription, type TaxonomyFeature, type TaxonomyFeaturePopulated, type TaxonomyGeometry, type TaxonomyProperties, type TransalatableString, type TraversalRelationshipFeature, type TraversalRelationshipFeaturePopulated, type TraversalRelationshipProperties, type TurnSide, type UnitDistanceOptions, type UnitFeature, type UnitFeaturePopulated, type UnitGeometry, type UnitKiosks, type UnitOpenings, type UnitProperties, type UnitTypeAndId, type VenueClientOptions, type VenueDataClient, type VenueFeature, type VenueFeaturePopulated, type VenueGeometry, type VenueProperties, type VerticalDistanceOptions, type VerticalUnitCategory, type WalkablePathUtils, type Waypoint, type WaypointSourceType, amenityToLandmark, angleDiff, createFindByIdSync, createInstructionService, createLandmarkService, createNavigateContext, createStepService, createWalkablePathService, createWaypointService, defaultFeatureQueryOptionsMap, describeHorizontalStep, describeLastStep, describeVerticalStep, distanceToWall, fetchDeliveryApi, fetchPreviewApi, findContainingUnit, findContainingUnitAtPoint, getDataClient, getInstructionText, getNavigateClient, getSearchClient, getTurn, matchFilter, matchFilters, mergeStepsByOrdinal, mergeTwoSteps, occupantToLandmark, openingToLandmark, outerRingsToLine, outwardOpeningBearing, prepareGraph, safeFetchFeature, trace, turnSide, unitToLandmark };
1253
+ export { ALL_FEATURE_TYPES, type AmenityFeature, type AmenityFeaturePopulated, type AmenityGeometry, type AmenityProperties, type AnchorFeature, type AnchorFeaturePopulated, type AnchorGeometry, type AnchorProperties, type AngleDirection, type AnyRelationshipFeature, type BaseRelationshipProperties, type CoordinateOrdinalString, type CreateStepUtilsOptions, DEFAULT_BASE_URL, type DescribableFeature, type DetailFeature, type DetailGeometry, type DetailProperties, type DistanceOptions, type ElementFeature, type ElementGeometry, type ElementProperties, type ElevatorRelationshipFeature, type ElevatorRelationshipFeaturePopulated, type ElevatorRelationshipProperties, type EscalatorRelationshipFeature, type EscalatorRelationshipFeaturePopulated, type EscalatorRelationshipProperties, type EventFeature, type EventProperties, type FeatureId, type FeaturePopulatedResponseMap, type FeatureQueryOptions, type FeatureResponseMap, type FeatureType, type FilterParams, type FindByIdSync, type FindParams, type FindRouteOptions, type FixtureFeature, type FixtureFeaturePopulated, type FixtureGeometry, type FixtureProperties, GEOJSON_FEATURE_TYPES, type GetNavigateClientOptions, ID_PREFIX_TO_FEATURE_TYPE, type IMDFUnitCategory, type IMDFVerticalUnitCategory, IMDF_FEATURE_TYPES, IMDF_UNIT_CATEGORIES, type Id, type ImdfFeature, type Instruction, type InstructionTurn, type InternalFilterByType, type InternalFindById, type KioskFeature, type KioskFeaturePopulated, type KioskGeometry, type KioskProperties, type LabelFeature, type LabelGeometry, type LabelProperties, type Landmark, type LandmarkService, type LevelFeature, type LevelFeaturePopulated, type LevelGeometry, type LevelProperties, type Media, type MediaFile, type Model3d, type Model3dFeature, type Model3dGeometry, type Model3dPopulated, type Model3dProperties, NONIMDF_FEATURE_TYPES, type NavigatableFeature, type NavigatableParam, type NavigateClient, type NavigateContext, type NeighborMap, type NodeId, type NodeMap, type OccupantFeature, type OccupantFeaturePopulated, type OccupantGeometry, occupantHelper as OccupantHelpers, type OccupantProperties, type OpeningFeature, type OpeningFeaturePopulated, type OpeningGeometry, type OpeningProperties, type OpeningTypeAndId, type Page, type PolygonalFeature, type PopulatableFeatureType, type PopulatedParams, type PrepareGraphOptions, type PrivilegeFeature, type PrivilegeGeometry, type PrivilegeProperties, type PromotionFeature, type PromotionProperties, type RampRelationshipFeature, type RampRelationshipFeaturePopulated, type RampRelationshipProperties, type RelationshipCategories, type RelationshipDirectionTypes, type RelationshipFeature, type RelationshipFeaturePopulated, type RelationshipGeometry, type Route, type SearchClient, type SectionFeature, type SectionFeaturePopulated, type SectionGeometry, type SectionProperties, type SingleGeometry, type SponsoredContentFeature, type SponsoredContentLegacyType, type SponsoredContentPlacementType, type SponsoredContentStrapiV4ApiResponse, type StairRelationshipFeaturePopulated, type StairsRelationshipFeature, type StairsRelationshipProperties, type Step, type StepDescription, type TaxonomyFeature, type TaxonomyFeaturePopulated, type TaxonomyGeometry, type TaxonomyProperties, type TransalatableString, type TraversalRelationshipFeature, type TraversalRelationshipFeaturePopulated, type TraversalRelationshipProperties, type TurnSide, type UnitAmenities, type UnitDistanceOptions, type UnitFeature, type UnitFeaturePopulated, type UnitGeometry, type UnitKiosks, type UnitOpenings, type UnitProperties, type UnitTypeAndId, type VenueClientOptions, type VenueDataClient, type VenueFeature, type VenueFeaturePopulated, type VenueGeometry, type VenueProperties, type VerticalDistanceOptions, type VerticalUnitCategory, type WalkablePathUtils, type Waypoint, type WaypointSourceType, amenityToLandmark, angleDiff, createFindByIdSync, createInstructionService, createLandmarkService, createNavigateContext, createStepService, createWalkablePathService, createWaypointService, defaultFeatureQueryOptionsMap, describeHorizontalStep, describeLastStep, describeVerticalStep, distanceToWall, fetchDeliveryApi, fetchPreviewApi, findContainingUnit, findContainingUnitAtPoint, getDataClient, getInstructionText, getNavigateClient, getPointOnFeature, getSearchClient, getTurn, matchFilter, matchFilters, mergeStepsByOrdinal, mergeTwoSteps, occupantToLandmark, openingToLandmark, outerRingsToLine, outwardOpeningBearing, prepareGraph, safeFetchFeature, trace, turnSide, unitToLandmark };
@@ -16,7 +16,7 @@ type MediaFile = {
16
16
  width: number;
17
17
  };
18
18
  type Media = MediaFile & {
19
- id: Id;
19
+ id: number;
20
20
  alternativeText: string | null;
21
21
  caption: string | null;
22
22
  createdAt: string;
@@ -160,7 +160,8 @@ type OccupantProperties = EntityTimestamps & {
160
160
  is_featured: boolean;
161
161
  is_landmark: boolean;
162
162
  is_maintenance: boolean;
163
- keywords: string[];
163
+ keywords: string[] | null;
164
+ /** @deprecated Use `main_location` instead. */
164
165
  kiosk_id: Id | null;
165
166
  kiosk_name: string | null;
166
167
  level_id: Id | null;
@@ -168,11 +169,18 @@ type OccupantProperties = EntityTimestamps & {
168
169
  local_category_ids: Id[];
169
170
  local_category_names: string[];
170
171
  logo: Media | null;
172
+ /** Primary location: prefixed unit-id or kiosk-id (e.g. "unit-789", "kiosk-555"). */
173
+ main_location: string | null;
174
+ /** Mixed array of additional unit-ids and kiosk-ids associated with the occupant (e.g. "unit-1", "kiosk-2"). */
175
+ correlated_locations: string[];
176
+ /** Maintenance-mode location: prefixed unit-id or kiosk-id, null when not in temp state. */
177
+ temp_location: string | null;
171
178
  maintenance_end_date: string | null;
172
179
  maintenance_start_date: string | null;
173
180
  name: TransalatableString;
174
181
  phone: string | null;
175
182
  privilege_ids: Id[];
183
+ product_ids: Id[];
176
184
  promotion_ids: Id[];
177
185
  render_priority: number;
178
186
  render_type: string;
@@ -182,17 +190,28 @@ type OccupantProperties = EntityTimestamps & {
182
190
  room_no: string | null;
183
191
  short_name: string | null;
184
192
  start_date: string;
193
+ end_date: string | null;
185
194
  style: SymbolProperties | null;
186
195
  temp_anchor_id: Id | null;
196
+ /** @deprecated Use `temp_location` instead. */
187
197
  temp_kiosk_id: Id | null;
198
+ /** @deprecated Use `temp_location` instead. */
188
199
  temp_unit_id: Id | null;
200
+ /** @deprecated Use `main_location` instead. */
189
201
  unit_id: Id | null;
190
202
  unit_name: string | null;
191
203
  venue_id: Id;
204
+ /** @deprecated Use `correlated_locations` instead. */
192
205
  kiosk_ids: Id[];
206
+ /** @deprecated Use `correlated_locations` instead. */
193
207
  unit_ids: Id[];
194
208
  website_link: string | null;
195
- show_name_on_all_units: boolean;
209
+ deleted_at: string | null;
210
+ show_name_on_all_units: boolean | null;
211
+ synced_at: string | null;
212
+ source_updated_at: string | null;
213
+ reference_id: string | null;
214
+ external_snapshot: Record<string, unknown> | null;
196
215
  reservations?: ExternalLink[];
197
216
  can_reserve?: boolean;
198
217
  display_settings?: {
@@ -292,6 +311,7 @@ type SectionProperties = EntityTimestamps & {
292
311
  gallery: Media[] | null;
293
312
  is_featured: boolean;
294
313
  hours: string | null;
314
+ display_point?: Position | null;
295
315
  [k: string]: any;
296
316
  };
297
317
  type SectionFeature = ImdfFeature<SectionGeometry, SectionProperties, "section">;
@@ -351,15 +371,27 @@ type TaxonomyProperties = EntityTimestamps & {
351
371
  venue_id: Id | null;
352
372
  };
353
373
  type TaxonomyFeature = ImdfFeature<TaxonomyGeometry, TaxonomyProperties>;
354
- type EventGeometry = Polygon;
355
374
  type EventProperties = {
356
- name: string;
357
- ordinal: number;
358
- venue_id: Id;
359
- angle: number;
360
- fontSize: number;
375
+ name: TransalatableString;
376
+ description: TransalatableString;
377
+ start_date: string;
378
+ end_date: string;
379
+ venue_id: string;
380
+ feature_id: string;
381
+ local_category_ids: string[];
382
+ daily_start_time: string;
383
+ cover_image: Media;
384
+ gallery: Media[];
385
+ daily_end_time: string;
386
+ website_link: string | null;
387
+ show_always: boolean;
388
+ venue: VenueFeature;
389
+ feature: AmenityFeature | OccupantFeature;
390
+ local_categories: TaxonomyFeature[];
391
+ local_parent_categories: TaxonomyFeature[];
392
+ local_sub_categories: TaxonomyFeature[];
361
393
  };
362
- type EventFeature = ImdfFeature<EventGeometry, EventProperties>;
394
+ type EventFeature = ImdfFeature<null, EventProperties>;
363
395
  type PromotionProperties = {
364
396
  name: TransalatableString;
365
397
  category: string;
@@ -378,6 +410,11 @@ type PromotionProperties = {
378
410
  updatedAt: string;
379
411
  venue_id: Id;
380
412
  website_link: string | null;
413
+ venue: VenueFeature;
414
+ feature: AmenityFeature | OccupantFeature;
415
+ local_categories: TaxonomyFeature[];
416
+ local_parent_categories: TaxonomyFeature[];
417
+ local_sub_categories: TaxonomyFeature[];
381
418
  };
382
419
  type PromotionFeature = ImdfFeature<null, PromotionProperties>;
383
420
  type PrivilegeGeometry = null;
@@ -422,7 +459,7 @@ type ElementFeature = ImdfFeature<ElementGeometry, ElementProperties>;
422
459
  * Sponsored Content
423
460
  */
424
461
  type SponsoredContentLegacyType = "HOMEPAGE_SPOTLIGHT" | "SCREENSAVER" | "SUGGESTED_BRAND" | "SEARCH_RESULT" | "POPUP_BANNER" | "FOOTER_BANNER" | "RECOMMENDED_EVENT" | "RECOMMENDED_PROMOTION" | "RECOMMENDED_DIRECTORY";
425
- type SponsoredContentPlacementType = "HOMEPAGE_SPOTLIGHT" | "SEARCH_SUGGESTION" | "SEARCH_RESULT" | "LIST_TOPITEM" | "POPUP_BANNER" | "FOOTER_BANNER";
462
+ type SponsoredContentPlacementType = "HOMEPAGE_SPOTLIGHT" | "SEARCH_SUGGESTION" | "SEARCH_RESULT" | "LIST_TOPITEM" | "POPUP_BANNER" | "FOOTER_BANNER" | "SCREENSAVER";
426
463
  type SponsoredContentAttributes = {
427
464
  venue_id: string;
428
465
  project_id: string;
@@ -831,6 +868,7 @@ type UnitDistanceOptions = {
831
868
  };
832
869
  type UnitOpenings = Record<string, OpeningFeature[]>;
833
870
  type UnitKiosks = Record<string, KioskFeature[]>;
871
+ type UnitAmenities = Record<string, AmenityFeature[]>;
834
872
 
835
873
  type PrepareGraphOptions = {
836
874
  data: {
@@ -842,6 +880,7 @@ type PrepareGraphOptions = {
842
880
  kiosks?: KioskFeature[];
843
881
  anchors?: AnchorFeature[];
844
882
  amenities?: AmenityFeature[];
883
+ sections?: SectionFeature[];
845
884
  };
846
885
  unitDistanceOptions?: Partial<UnitDistanceOptions>;
847
886
  };
@@ -885,7 +924,7 @@ declare const amenityToLandmark: (amenity: AmenityFeature, findByIdSync: FindByI
885
924
  * Start ----( step )---- Waypoint ----( step )---- Waypoint ----( step )---- End
886
925
  *
887
926
  */
888
- type WaypointSourceType = "opening" | "kiosk" | "amenity" | "anchor" | "coordinate";
927
+ type WaypointSourceType = "opening" | "kiosk" | "amenity" | "anchor" | "coordinate" | "section";
889
928
  type Waypoint = {
890
929
  id?: string;
891
930
  type: 'start' | 'end' | 'between';
@@ -893,6 +932,7 @@ type Waypoint = {
893
932
  ordinal: number | null;
894
933
  point: Position;
895
934
  name: TransalatableString | null;
935
+ checkpoint?: boolean;
896
936
  source: {
897
937
  type: "occupant";
898
938
  id: string;
@@ -911,6 +951,9 @@ type Waypoint = {
911
951
  } | {
912
952
  type: "coordinate";
913
953
  raw: string;
954
+ } | {
955
+ type: "section";
956
+ id: string;
914
957
  };
915
958
  };
916
959
 
@@ -971,6 +1014,7 @@ type GetNavigateClientOptions = {
971
1014
  occupants?: OccupantFeature[];
972
1015
  openings: OpeningFeature[];
973
1016
  relationships: RelationshipFeature[];
1017
+ sections?: SectionFeature[];
974
1018
  units: UnitFeature[];
975
1019
  };
976
1020
  unitDistanceOptions?: Partial<UnitDistanceOptions>;
@@ -986,6 +1030,7 @@ type NavigateContext = {
986
1030
  occupants?: OccupantFeature[];
987
1031
  openings: OpeningFeature[];
988
1032
  relationships: RelationshipFeature[];
1033
+ sections?: SectionFeature[];
989
1034
  units: UnitFeature[];
990
1035
  };
991
1036
  findByIdSync: FindByIdSync;
@@ -1040,6 +1085,7 @@ interface FeatureQueryOptions {
1040
1085
  cacheTime?: number;
1041
1086
  enabled?: boolean;
1042
1087
  retry?: boolean | number;
1088
+ refetchOnWindowFocus?: boolean;
1043
1089
  }
1044
1090
  type InternalFindById = <T extends FeatureType>(id: Id) => Promise<FeatureResponseMap[T]>;
1045
1091
  type InternalFilterByType = <T extends FeatureType>(featureType: T) => Promise<FeatureResponseMap[T][]>;
@@ -1064,6 +1110,7 @@ declare const IMDF_UNIT_CATEGORIES: readonly ["auditorium", "brick", "classroom"
1064
1110
  declare const NONIMDF_FEATURE_TYPES: FeatureType[];
1065
1111
  declare const GEOJSON_FEATURE_TYPES: FeatureType[];
1066
1112
  declare const ALL_FEATURE_TYPES: FeatureType[];
1113
+ declare const ID_PREFIX_TO_FEATURE_TYPE: Record<string, FeatureType>;
1067
1114
  declare const defaultFeatureQueryOptionsMap: Record<FeatureType, FeatureQueryOptions>;
1068
1115
 
1069
1116
  type IMDFUnitCategory = typeof IMDF_UNIT_CATEGORIES[number];
@@ -1071,9 +1118,16 @@ type IMDFUnitCategory = typeof IMDF_UNIT_CATEGORIES[number];
1071
1118
  declare function matchFilter(value: Value | Value[], filter: Filter): boolean;
1072
1119
  declare function matchFilters<T extends Record<string, any>>(item: T, filters: Filters): boolean;
1073
1120
 
1074
- declare const findContainingUnit: (poi: KioskFeature | AmenityFeature, units: UnitFeature[]) => UnitFeature | null;
1121
+ declare const findContainingUnit: (poi: KioskFeature | AmenityFeature | SectionFeature, units: UnitFeature[]) => UnitFeature | null;
1075
1122
  declare const findContainingUnitAtPoint: (point: Position, levelId: string, units: UnitFeature[]) => UnitFeature | null;
1076
1123
 
1124
+ /**
1125
+ * Returns a Point guaranteed to lie on/within the polygon's geometry.
1126
+ * Uses centroid when it falls inside; falls back to pointOnFeature for
1127
+ * concave or multi-polygon shapes where the centroid may be outside.
1128
+ */
1129
+ declare const getPointOnFeature: (feature: Feature<Polygon | MultiPolygon>) => Feature<Point>;
1130
+
1077
1131
  declare const trace: (namespace: string, text: string, ms?: number, color?: string) => void;
1078
1132
 
1079
1133
  declare const getOccupantMainLocation: (occupant: OccupantFeaturePopulated) => UnitFeaturePopulated | KioskFeaturePopulated;
@@ -1159,12 +1213,13 @@ declare const describeVerticalStep: (fromLevel: LevelFeature, toLevel: LevelFeat
1159
1213
  };
1160
1214
  };
1161
1215
  /**
1162
- * "To traverse": "Follow the path heading toward <toward>{{toward}}</toward>",
1163
- * "To traverse on walkway": "Follow the path along the walkway",
1164
- * "To traverse on walkway toward": "Follow the path along the walkway toward <toward>{{toward}}</toward>",
1165
- * "To traverse toward": "Follow the path toward <toward>{{toward}}</toward>",
1166
- * "To traverse toward with landmark": "Follow the path toward <toward>{{toward}}</toward> near <landmark>{{landmark}}</landmark>",
1167
- * "To destination": "Head to your destination.",
1216
+ * "Follow the path along the walkway"
1217
+ * "Follow the path along the walkway toward {{toward}}"
1218
+ * "Follow the path along the walkway near {{landmark}}"
1219
+ * "Follow the path through {{intermediary}}"
1220
+ * "Follow the path through {{intermediary}} toward {{toward}}"
1221
+ * "Follow the path through {{intermediary}} near {{landmark}}"
1222
+ * "Follow the path near {{landmark}}" — when intermediary is null/empty
1168
1223
  */
1169
1224
  declare const describeHorizontalStep: (intermediary: string, toward?: TransalatableString, landmark?: TransalatableString) => StepDescription;
1170
1225
  declare const describeLastStep: () => {
@@ -1195,4 +1250,4 @@ declare const createWalkablePathService: (ctx: NavigateContext, options?: {
1195
1250
  resolution: number;
1196
1251
  }) => WalkablePathUtils;
1197
1252
 
1198
- export { ALL_FEATURE_TYPES, type AmenityFeature, type AmenityFeaturePopulated, type AmenityGeometry, type AmenityProperties, type AnchorFeature, type AnchorFeaturePopulated, type AnchorGeometry, type AnchorProperties, type AngleDirection, type AnyRelationshipFeature, type BaseRelationshipProperties, type CoordinateOrdinalString, type CreateStepUtilsOptions, DEFAULT_BASE_URL, type DescribableFeature, type DetailFeature, type DetailGeometry, type DetailProperties, type DistanceOptions, type ElementFeature, type ElementGeometry, type ElementProperties, type ElevatorRelationshipFeature, type ElevatorRelationshipFeaturePopulated, type ElevatorRelationshipProperties, type EscalatorRelationshipFeature, type EscalatorRelationshipFeaturePopulated, type EscalatorRelationshipProperties, type EventFeature, type EventGeometry, type EventProperties, type FeatureId, type FeaturePopulatedResponseMap, type FeatureQueryOptions, type FeatureResponseMap, type FeatureType, type FilterParams, type FindByIdSync, type FindParams, type FindRouteOptions, type FixtureFeature, type FixtureFeaturePopulated, type FixtureGeometry, type FixtureProperties, GEOJSON_FEATURE_TYPES, type GetNavigateClientOptions, type IMDFUnitCategory, type IMDFVerticalUnitCategory, IMDF_FEATURE_TYPES, IMDF_UNIT_CATEGORIES, type Id, type ImdfFeature, type Instruction, type InstructionTurn, type InternalFilterByType, type InternalFindById, type KioskFeature, type KioskFeaturePopulated, type KioskGeometry, type KioskProperties, type LabelFeature, type LabelGeometry, type LabelProperties, type Landmark, type LandmarkService, type LevelFeature, type LevelFeaturePopulated, type LevelGeometry, type LevelProperties, type Media, type MediaFile, type Model3d, type Model3dFeature, type Model3dGeometry, type Model3dPopulated, type Model3dProperties, NONIMDF_FEATURE_TYPES, type NavigatableFeature, type NavigatableParam, type NavigateClient, type NavigateContext, type NeighborMap, type NodeId, type NodeMap, type OccupantFeature, type OccupantFeaturePopulated, type OccupantGeometry, occupantHelper as OccupantHelpers, type OccupantProperties, type OpeningFeature, type OpeningFeaturePopulated, type OpeningGeometry, type OpeningProperties, type OpeningTypeAndId, type Page, type PolygonalFeature, type PopulatableFeatureType, type PopulatedParams, type PrepareGraphOptions, type PrivilegeFeature, type PrivilegeGeometry, type PrivilegeProperties, type PromotionFeature, type PromotionProperties, type RampRelationshipFeature, type RampRelationshipFeaturePopulated, type RampRelationshipProperties, type RelationshipCategories, type RelationshipDirectionTypes, type RelationshipFeature, type RelationshipFeaturePopulated, type RelationshipGeometry, type Route, type SearchClient, type SectionFeature, type SectionFeaturePopulated, type SectionGeometry, type SectionProperties, type SingleGeometry, type SponsoredContentFeature, type SponsoredContentLegacyType, type SponsoredContentPlacementType, type SponsoredContentStrapiV4ApiResponse, type StairRelationshipFeaturePopulated, type StairsRelationshipFeature, type StairsRelationshipProperties, type Step, type StepDescription, type TaxonomyFeature, type TaxonomyFeaturePopulated, type TaxonomyGeometry, type TaxonomyProperties, type TransalatableString, type TraversalRelationshipFeature, type TraversalRelationshipFeaturePopulated, type TraversalRelationshipProperties, type TurnSide, type UnitDistanceOptions, type UnitFeature, type UnitFeaturePopulated, type UnitGeometry, type UnitKiosks, type UnitOpenings, type UnitProperties, type UnitTypeAndId, type VenueClientOptions, type VenueDataClient, type VenueFeature, type VenueFeaturePopulated, type VenueGeometry, type VenueProperties, type VerticalDistanceOptions, type VerticalUnitCategory, type WalkablePathUtils, type Waypoint, type WaypointSourceType, amenityToLandmark, angleDiff, createFindByIdSync, createInstructionService, createLandmarkService, createNavigateContext, createStepService, createWalkablePathService, createWaypointService, defaultFeatureQueryOptionsMap, describeHorizontalStep, describeLastStep, describeVerticalStep, distanceToWall, fetchDeliveryApi, fetchPreviewApi, findContainingUnit, findContainingUnitAtPoint, getDataClient, getInstructionText, getNavigateClient, getSearchClient, getTurn, matchFilter, matchFilters, mergeStepsByOrdinal, mergeTwoSteps, occupantToLandmark, openingToLandmark, outerRingsToLine, outwardOpeningBearing, prepareGraph, safeFetchFeature, trace, turnSide, unitToLandmark };
1253
+ export { ALL_FEATURE_TYPES, type AmenityFeature, type AmenityFeaturePopulated, type AmenityGeometry, type AmenityProperties, type AnchorFeature, type AnchorFeaturePopulated, type AnchorGeometry, type AnchorProperties, type AngleDirection, type AnyRelationshipFeature, type BaseRelationshipProperties, type CoordinateOrdinalString, type CreateStepUtilsOptions, DEFAULT_BASE_URL, type DescribableFeature, type DetailFeature, type DetailGeometry, type DetailProperties, type DistanceOptions, type ElementFeature, type ElementGeometry, type ElementProperties, type ElevatorRelationshipFeature, type ElevatorRelationshipFeaturePopulated, type ElevatorRelationshipProperties, type EscalatorRelationshipFeature, type EscalatorRelationshipFeaturePopulated, type EscalatorRelationshipProperties, type EventFeature, type EventProperties, type FeatureId, type FeaturePopulatedResponseMap, type FeatureQueryOptions, type FeatureResponseMap, type FeatureType, type FilterParams, type FindByIdSync, type FindParams, type FindRouteOptions, type FixtureFeature, type FixtureFeaturePopulated, type FixtureGeometry, type FixtureProperties, GEOJSON_FEATURE_TYPES, type GetNavigateClientOptions, ID_PREFIX_TO_FEATURE_TYPE, type IMDFUnitCategory, type IMDFVerticalUnitCategory, IMDF_FEATURE_TYPES, IMDF_UNIT_CATEGORIES, type Id, type ImdfFeature, type Instruction, type InstructionTurn, type InternalFilterByType, type InternalFindById, type KioskFeature, type KioskFeaturePopulated, type KioskGeometry, type KioskProperties, type LabelFeature, type LabelGeometry, type LabelProperties, type Landmark, type LandmarkService, type LevelFeature, type LevelFeaturePopulated, type LevelGeometry, type LevelProperties, type Media, type MediaFile, type Model3d, type Model3dFeature, type Model3dGeometry, type Model3dPopulated, type Model3dProperties, NONIMDF_FEATURE_TYPES, type NavigatableFeature, type NavigatableParam, type NavigateClient, type NavigateContext, type NeighborMap, type NodeId, type NodeMap, type OccupantFeature, type OccupantFeaturePopulated, type OccupantGeometry, occupantHelper as OccupantHelpers, type OccupantProperties, type OpeningFeature, type OpeningFeaturePopulated, type OpeningGeometry, type OpeningProperties, type OpeningTypeAndId, type Page, type PolygonalFeature, type PopulatableFeatureType, type PopulatedParams, type PrepareGraphOptions, type PrivilegeFeature, type PrivilegeGeometry, type PrivilegeProperties, type PromotionFeature, type PromotionProperties, type RampRelationshipFeature, type RampRelationshipFeaturePopulated, type RampRelationshipProperties, type RelationshipCategories, type RelationshipDirectionTypes, type RelationshipFeature, type RelationshipFeaturePopulated, type RelationshipGeometry, type Route, type SearchClient, type SectionFeature, type SectionFeaturePopulated, type SectionGeometry, type SectionProperties, type SingleGeometry, type SponsoredContentFeature, type SponsoredContentLegacyType, type SponsoredContentPlacementType, type SponsoredContentStrapiV4ApiResponse, type StairRelationshipFeaturePopulated, type StairsRelationshipFeature, type StairsRelationshipProperties, type Step, type StepDescription, type TaxonomyFeature, type TaxonomyFeaturePopulated, type TaxonomyGeometry, type TaxonomyProperties, type TransalatableString, type TraversalRelationshipFeature, type TraversalRelationshipFeaturePopulated, type TraversalRelationshipProperties, type TurnSide, type UnitAmenities, type UnitDistanceOptions, type UnitFeature, type UnitFeaturePopulated, type UnitGeometry, type UnitKiosks, type UnitOpenings, type UnitProperties, type UnitTypeAndId, type VenueClientOptions, type VenueDataClient, type VenueFeature, type VenueFeaturePopulated, type VenueGeometry, type VenueProperties, type VerticalDistanceOptions, type VerticalUnitCategory, type WalkablePathUtils, type Waypoint, type WaypointSourceType, amenityToLandmark, angleDiff, createFindByIdSync, createInstructionService, createLandmarkService, createNavigateContext, createStepService, createWalkablePathService, createWaypointService, defaultFeatureQueryOptionsMap, describeHorizontalStep, describeLastStep, describeVerticalStep, distanceToWall, fetchDeliveryApi, fetchPreviewApi, findContainingUnit, findContainingUnitAtPoint, getDataClient, getInstructionText, getNavigateClient, getPointOnFeature, getSearchClient, getTurn, matchFilter, matchFilters, mergeStepsByOrdinal, mergeTwoSteps, occupantToLandmark, openingToLandmark, outerRingsToLine, outwardOpeningBearing, prepareGraph, safeFetchFeature, trace, turnSide, unitToLandmark };