@mappedin/mappedin-js 6.9.0 → 6.10.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.
@@ -1 +1 @@
1
- import{A as g,a as b,ea as x,ga as y,y as A,z as w}from"./chunk-VFQLCEVW.js";b();function M(o,l=!1){let r=o[0].index!==null,f=new Set(Object.keys(o[0].attributes)),i=new Set(Object.keys(o[0].morphAttributes)),c={},e={},h=o[0].morphTargetsRelative,u=new y,d=0;for(let t=0;t<o.length;++t){let s=o[t],a=0;if(r!==(s.index!==null))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."),null;for(let n in s.attributes){if(!f.has(n))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+'. All geometries must have compatible attributes; make sure "'+n+'" attribute exists among all geometries, or in none of them.'),null;c[n]===void 0&&(c[n]=[]),c[n].push(s.attributes[n]),a++}if(a!==f.size)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". Make sure all geometries have the same number of attributes."),null;if(h!==s.morphTargetsRelative)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". .morphTargetsRelative must be consistent throughout all geometries."),null;for(let n in s.morphAttributes){if(!i.has(n))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". .morphAttributes must be consistent throughout all geometries."),null;e[n]===void 0&&(e[n]=[]),e[n].push(s.morphAttributes[n])}if(l){let n;if(r)n=s.index.count;else if(s.attributes.position!==void 0)n=s.attributes.position.count;else return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". The geometry must have either an index or a position attribute"),null;u.addGroup(d,n,t),d+=n}}if(r){let t=0,s=[];for(let a=0;a<o.length;++a){let n=o[a].index;for(let m=0;m<n.count;++m)s.push(n.getX(m)+t);t+=o[a].attributes.position.count}u.setIndex(s)}for(let t in c){let s=B(c[t]);if(!s)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+t+" attribute."),null;u.setAttribute(t,s)}for(let t in e){let s=e[t][0].length;if(s===0)break;u.morphAttributes=u.morphAttributes||{},u.morphAttributes[t]=[];for(let a=0;a<s;++a){let n=[];for(let p=0;p<e[t].length;++p)n.push(e[t][p][a]);let m=B(n);if(!m)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+t+" morphAttribute."),null;u.morphAttributes[t].push(m)}}return u}function B(o){let l,r,f,i=-1,c=0;for(let d=0;d<o.length;++d){let t=o[d];if(l===void 0&&(l=t.array.constructor),l!==t.array.constructor)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes."),null;if(r===void 0&&(r=t.itemSize),r!==t.itemSize)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."),null;if(f===void 0&&(f=t.normalized),f!==t.normalized)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."),null;if(i===-1&&(i=t.gpuType),i!==t.gpuType)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.gpuType must be consistent across matching attributes."),null;c+=t.count*r}let e=new l(c),h=new x(e,r,f),u=0;for(let d=0;d<o.length;++d){let t=o[d];if(t.isInterleavedBufferAttribute){let s=u/r;for(let a=0,n=t.count;a<n;a++)for(let m=0;m<r;m++){let p=t.getComponent(a,m);h.setComponent(a+s,m,p)}}else e.set(t.array,u);u+=t.count*r}return i!==void 0&&(h.gpuType=i),h}function R(o,l){if(l===A)return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."),o;if(l===g||l===w){let r=o.getIndex();if(r===null){let e=[],h=o.getAttribute("position");if(h!==void 0){for(let u=0;u<h.count;u++)e.push(u);o.setIndex(e),r=o.getIndex()}else return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible."),o}let f=r.count-2,i=[];if(l===g)for(let e=1;e<=f;e++)i.push(r.getX(0)),i.push(r.getX(e)),i.push(r.getX(e+1));else for(let e=0;e<f;e++)e%2===0?(i.push(r.getX(e)),i.push(r.getX(e+1)),i.push(r.getX(e+2))):(i.push(r.getX(e+2)),i.push(r.getX(e+1)),i.push(r.getX(e)));i.length/3!==f&&console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.");let c=o.clone();return c.setIndex(i),c.clearGroups(),c}else return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:",l),o}export{M as a,R as b};
1
+ import{A as g,a as b,ea as x,ga as y,y as A,z as w}from"./chunk-OHB32AEN.js";b();function M(o,l=!1){let r=o[0].index!==null,f=new Set(Object.keys(o[0].attributes)),i=new Set(Object.keys(o[0].morphAttributes)),c={},e={},h=o[0].morphTargetsRelative,u=new y,d=0;for(let t=0;t<o.length;++t){let s=o[t],a=0;if(r!==(s.index!==null))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."),null;for(let n in s.attributes){if(!f.has(n))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+'. All geometries must have compatible attributes; make sure "'+n+'" attribute exists among all geometries, or in none of them.'),null;c[n]===void 0&&(c[n]=[]),c[n].push(s.attributes[n]),a++}if(a!==f.size)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". Make sure all geometries have the same number of attributes."),null;if(h!==s.morphTargetsRelative)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". .morphTargetsRelative must be consistent throughout all geometries."),null;for(let n in s.morphAttributes){if(!i.has(n))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". .morphAttributes must be consistent throughout all geometries."),null;e[n]===void 0&&(e[n]=[]),e[n].push(s.morphAttributes[n])}if(l){let n;if(r)n=s.index.count;else if(s.attributes.position!==void 0)n=s.attributes.position.count;else return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". The geometry must have either an index or a position attribute"),null;u.addGroup(d,n,t),d+=n}}if(r){let t=0,s=[];for(let a=0;a<o.length;++a){let n=o[a].index;for(let m=0;m<n.count;++m)s.push(n.getX(m)+t);t+=o[a].attributes.position.count}u.setIndex(s)}for(let t in c){let s=B(c[t]);if(!s)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+t+" attribute."),null;u.setAttribute(t,s)}for(let t in e){let s=e[t][0].length;if(s===0)break;u.morphAttributes=u.morphAttributes||{},u.morphAttributes[t]=[];for(let a=0;a<s;++a){let n=[];for(let p=0;p<e[t].length;++p)n.push(e[t][p][a]);let m=B(n);if(!m)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+t+" morphAttribute."),null;u.morphAttributes[t].push(m)}}return u}function B(o){let l,r,f,i=-1,c=0;for(let d=0;d<o.length;++d){let t=o[d];if(l===void 0&&(l=t.array.constructor),l!==t.array.constructor)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes."),null;if(r===void 0&&(r=t.itemSize),r!==t.itemSize)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."),null;if(f===void 0&&(f=t.normalized),f!==t.normalized)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."),null;if(i===-1&&(i=t.gpuType),i!==t.gpuType)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.gpuType must be consistent across matching attributes."),null;c+=t.count*r}let e=new l(c),h=new x(e,r,f),u=0;for(let d=0;d<o.length;++d){let t=o[d];if(t.isInterleavedBufferAttribute){let s=u/r;for(let a=0,n=t.count;a<n;a++)for(let m=0;m<r;m++){let p=t.getComponent(a,m);h.setComponent(a+s,m,p)}}else e.set(t.array,u);u+=t.count*r}return i!==void 0&&(h.gpuType=i),h}function R(o,l){if(l===A)return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."),o;if(l===g||l===w){let r=o.getIndex();if(r===null){let e=[],h=o.getAttribute("position");if(h!==void 0){for(let u=0;u<h.count;u++)e.push(u);o.setIndex(e),r=o.getIndex()}else return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible."),o}let f=r.count-2,i=[];if(l===g)for(let e=1;e<=f;e++)i.push(r.getX(0)),i.push(r.getX(e)),i.push(r.getX(e+1));else for(let e=0;e<f;e++)e%2===0?(i.push(r.getX(e)),i.push(r.getX(e+1)),i.push(r.getX(e+2))):(i.push(r.getX(e+2)),i.push(r.getX(e+1)),i.push(r.getX(e)));i.length/3!==f&&console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.");let c=o.clone();return c.setIndex(i),c.clearGroups(),c}else return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:",l),o}export{M as a,R as b};
@@ -136,6 +136,7 @@ declare const VALID_CONTEXTS: readonly [
136
136
  "websdk",
137
137
  "web",
138
138
  "webv2",
139
+ "kiosk",
139
140
  "kiosk-v2",
140
141
  "mobile",
141
142
  "iossdk",
@@ -143,7 +144,8 @@ declare const VALID_CONTEXTS: readonly [
143
144
  "reactnativesdk",
144
145
  "gen7",
145
146
  "bespoke",
146
- "reactsdk"
147
+ "reactsdk",
148
+ "minimap"
147
149
  ];
148
150
  type ValidContext = (typeof VALID_CONTEXTS)[number];
149
151
  declare const FOUND_POSITION = "found-position";
@@ -4890,6 +4892,14 @@ declare class ModelComponent {
4890
4892
  get visibleThroughGeometry(): boolean;
4891
4893
  set visibleThroughGeometry(value: boolean);
4892
4894
  }
4895
+ type BorderConfig = {
4896
+ /** Whether the border is enabled */
4897
+ enabled: boolean;
4898
+ /** Border color - 'darken' to auto-darken main color, or explicit hex color string */
4899
+ color: "darken" | string;
4900
+ /** Border width as fraction of total ribbon width (0-0.5). @default 0.1 */
4901
+ width?: number;
4902
+ };
4893
4903
  type PathProperties = {
4894
4904
  /**
4895
4905
  * The parentId of the point. The point will be anchored to the altitude of this parent group container.
@@ -5008,6 +5018,31 @@ type PathState = {
5008
5018
  * Length of each gap in meters. Only used when dashAbsolute is true.
5009
5019
  */
5010
5020
  gapMeters: number;
5021
+ /**
5022
+ * @experimental
5023
+ * Geometry type for path rendering.
5024
+ * @default 'tube'
5025
+ */
5026
+ __EXPERIMENTAL_GEOMETRY: "tube" | "ribbon";
5027
+ /**
5028
+ * @experimental
5029
+ * Whether to add end cap points to the path.
5030
+ * @default false
5031
+ */
5032
+ __EXPERIMENTAL_ENDCAP_ENABLED: boolean;
5033
+ /**
5034
+ * @experimental
5035
+ * When true and using ribbon geometry, the path will always face the camera (billboard effect).
5036
+ * Most useful for vertical paths between floors.
5037
+ * @default false
5038
+ */
5039
+ __EXPERIMENTAL_BILLBOARDING: boolean;
5040
+ /**
5041
+ * @experimental
5042
+ * Border configuration for ribbon path geometry.
5043
+ * Renders darkened edges along both sides of the ribbon.
5044
+ */
5045
+ __EXPERIMENTAL_BORDER?: BorderConfig;
5011
5046
  };
5012
5047
  type AddPathOptions = {
5013
5048
  /**
@@ -5121,6 +5156,31 @@ type AddPathOptions = {
5121
5156
  * @default 0.5
5122
5157
  */
5123
5158
  gapMeters?: number;
5159
+ /**
5160
+ * @experimental
5161
+ * Geometry type for path rendering.
5162
+ * @default 'tube'
5163
+ */
5164
+ __EXPERIMENTAL_GEOMETRY?: "tube" | "ribbon";
5165
+ /**
5166
+ * @experimental
5167
+ * Whether to add end cap points to the path.
5168
+ * @default false
5169
+ */
5170
+ __EXPERIMENTAL_ENDCAP_ENABLED?: boolean;
5171
+ /**
5172
+ * @experimental
5173
+ * When true and using ribbon geometry, the path will always face the camera (billboard effect).
5174
+ * Most useful for vertical paths between floors.
5175
+ * @default false
5176
+ */
5177
+ __EXPERIMENTAL_BILLBOARDING?: boolean;
5178
+ /**
5179
+ * @experimental
5180
+ * Border configuration for ribbon path geometry.
5181
+ * Renders darkened edges along both sides of the ribbon.
5182
+ */
5183
+ __EXPERIMENTAL_BORDER?: BorderConfig;
5124
5184
  };
5125
5185
  declare class PathComponent {
5126
5186
  #private;
@@ -5157,6 +5217,10 @@ declare class PathComponent {
5157
5217
  dashAbsolute: boolean;
5158
5218
  dashMeters: number;
5159
5219
  gapMeters: number;
5220
+ __EXPERIMENTAL_GEOMETRY: "tube" | "ribbon";
5221
+ __EXPERIMENTAL_ENDCAP_ENABLED: boolean;
5222
+ __EXPERIMENTAL_BILLBOARDING: boolean;
5223
+ __EXPERIMENTAL_BORDER?: BorderConfig;
5160
5224
  /**
5161
5225
  * If the path is vertical it will be rebuilt whenever altitudeDirty = true. This will be set during the first render of the path.
5162
5226
  */
@@ -5454,7 +5518,7 @@ declare class Geometry3DObject3D extends Object3D {
5454
5518
  type PathMaterial = ShaderMaterial & {
5455
5519
  uniforms: PathUniforms;
5456
5520
  };
5457
- type PathMesh = Mesh<TubeGeometry, PathMaterial, Object3DEventMap>;
5521
+ type PathMesh = Mesh<TubeGeometry | BufferGeometry, PathMaterial, Object3DEventMap>;
5458
5522
  declare class PatMeshContainer extends Geometry3DObject3D {
5459
5523
  children: [
5460
5524
  PathMesh,
@@ -5647,6 +5711,34 @@ interface PathUniforms {
5647
5711
  type: "f";
5648
5712
  value: number;
5649
5713
  };
5714
+ isRibbon: {
5715
+ type: "b";
5716
+ value: boolean;
5717
+ };
5718
+ billboarded: {
5719
+ type: "b";
5720
+ value: boolean;
5721
+ };
5722
+ halfWidth: {
5723
+ type: "f";
5724
+ value: number;
5725
+ };
5726
+ borderEnabled: {
5727
+ type: "b";
5728
+ value: boolean;
5729
+ };
5730
+ borderColor: {
5731
+ type: "c";
5732
+ value: Color;
5733
+ };
5734
+ borderWidth: {
5735
+ type: "f";
5736
+ value: number;
5737
+ };
5738
+ cameraViewMatrix: {
5739
+ type: "m4";
5740
+ value: Matrix4;
5741
+ };
5650
5742
  }
5651
5743
  declare class PubSub$1<EVENT_PAYLOAD, EVENT extends keyof EVENT_PAYLOAD = keyof EVENT_PAYLOAD> {
5652
5744
  /**
@@ -15412,21 +15504,26 @@ declare class Map$1 extends Camera$1 {
15412
15504
  setProjection(projection: ProjectionSpecification): this;
15413
15505
  }
15414
15506
  type Primitive$1 = null | undefined | string | number | boolean | symbol | bigint;
15415
- type OptionalKeysOf<BaseType extends object> = BaseType extends unknown // For distributing `BaseType`
15507
+ type IsAny$1<T> = 0 extends 1 & NoInfer<T> ? true : false;
15508
+ type IsOptionalKeyOf<Type extends object, Key extends keyof Type> = IsAny$1<Type | Key> extends true ? never : Key extends keyof Type ? Type extends Record<Key, Type[Key]> ? false : true : false;
15509
+ type OptionalKeysOf<Type extends object> = Type extends unknown // For distributing `Type`
15416
15510
  ? (keyof {
15417
- [Key in keyof BaseType as BaseType extends Record<Key, BaseType[Key]> ? never : Key]: never;
15418
- }) & (keyof BaseType) // Intersect with `keyof BaseType` to ensure result of `OptionalKeysOf<BaseType>` is always assignable to `keyof BaseType`
15511
+ [Key in keyof Type as IsOptionalKeyOf<Type, Key> extends false ? never : Key]: never;
15512
+ }) & keyof Type // Intersect with `keyof Type` to ensure result of `OptionalKeysOf<Type>` is always assignable to `keyof Type`
15419
15513
  : never;
15420
- type RequiredKeysOf<BaseType extends object> = BaseType extends unknown // For distributing `BaseType`
15421
- ? Exclude<keyof BaseType, OptionalKeysOf<BaseType>> : never;
15514
+ type RequiredKeysOf<Type extends object> = Type extends unknown // For distributing `Type`
15515
+ ? Exclude<keyof Type, OptionalKeysOf<Type>> : never;
15422
15516
  type IsNever<T> = [
15423
15517
  T
15424
15518
  ] extends [
15425
15519
  never
15426
15520
  ] ? true : false;
15427
- type IfNever<T, TypeIfNever = true, TypeIfNotNever = false> = (IsNever<T> extends true ? TypeIfNever : TypeIfNotNever);
15428
- type NoInfer$1<T> = T extends infer U ? U : never;
15429
- type IsAny$1<T> = 0 extends 1 & NoInfer$1<T> ? true : false;
15521
+ type If<Type extends boolean, IfBranch, ElseBranch> = IsNever<Type> extends true ? ElseBranch : Type extends true ? IfBranch : ElseBranch;
15522
+ type BuiltIns = Primitive$1 | void | Date | RegExp;
15523
+ type HasMultipleCallSignatures<T extends (...arguments_: any[]) => unknown> = T extends {
15524
+ (...arguments_: infer A): unknown;
15525
+ (...arguments_: infer B): unknown;
15526
+ } ? B extends A ? A extends B ? false : true : true : false;
15430
15527
  type Simplify<T> = {
15431
15528
  [KeyType in keyof T]: T[KeyType];
15432
15529
  } & {};
@@ -15440,16 +15537,9 @@ type SimpleMerge<Destination, Source> = {
15440
15537
  [Key in keyof Destination as Key extends keyof Source ? never : Key]: Destination[Key];
15441
15538
  } & Source;
15442
15539
  type Merge<Destination, Source> = Simplify<SimpleMerge<PickIndexSignature<Destination>, PickIndexSignature<Source>> & SimpleMerge<OmitIndexSignature$1<Destination>, OmitIndexSignature$1<Source>>>;
15443
- type IfAny<T, TypeIfAny = true, TypeIfNotAny = false> = (IsAny$1<T> extends true ? TypeIfAny : TypeIfNotAny);
15444
- type BuiltIns = Primitive$1 | void | Date | RegExp;
15445
- type HasMultipleCallSignatures<T extends (...arguments_: any[]) => unknown> = T extends {
15446
- (...arguments_: infer A): unknown;
15447
- (...arguments_: infer B): unknown;
15448
- } ? B extends A ? A extends B ? false : true : true : false;
15449
- type ApplyDefaultOptions<Options extends object, Defaults extends Simplify<Omit<Required<Options>, RequiredKeysOf<Options>> & Partial<Record<RequiredKeysOf<Options>, never>>>, SpecifiedOptions extends Options> = IfAny<SpecifiedOptions, Defaults, IfNever<SpecifiedOptions, Defaults, Simplify<Merge<Defaults, {
15450
- [Key in keyof SpecifiedOptions as Key extends OptionalKeysOf<Options> ? Extract<SpecifiedOptions[Key], undefined> extends never ? Key : never : Key]: SpecifiedOptions[Key];
15451
- }> & Required<Options>> // `& Required<Options>` ensures that `ApplyDefaultOptions<SomeOption, ...>` is always assignable to `Required<SomeOption>`
15452
- >>;
15540
+ type ApplyDefaultOptions<Options extends object, Defaults extends Simplify<Omit<Required<Options>, RequiredKeysOf<Options>> & Partial<Record<RequiredKeysOf<Options>, never>>>, SpecifiedOptions extends Options> = If<IsAny$1<SpecifiedOptions>, Defaults, If<IsNever<SpecifiedOptions>, Defaults, Simplify<Merge<Defaults, {
15541
+ [Key in keyof SpecifiedOptions as Key extends OptionalKeysOf<Options> ? undefined extends SpecifiedOptions[Key] ? never : Key : Key]: SpecifiedOptions[Key];
15542
+ }> & Required<Options>>>>;
15453
15543
  type PartialDeepOptions = {
15454
15544
  /**
15455
15545
  Whether to affect the individual elements of arrays and tuples.
@@ -15463,10 +15553,10 @@ type PartialDeepOptions = {
15463
15553
  - When set to `true`, elements of non-tuple arrays can be `undefined`.
15464
15554
  - When set to `false`, only explicitly defined elements are allowed in non-tuple arrays, ensuring stricter type checking.
15465
15555
 
15466
- @default true
15556
+ @default false
15467
15557
 
15468
15558
  @example
15469
- You can prevent `undefined` values in non-tuple arrays by passing `{recurseIntoArrays: true; allowUndefinedInNonTupleArrays: false}` as the second type argument:
15559
+ You can allow `undefined` values in non-tuple arrays by passing `{recurseIntoArrays: true; allowUndefinedInNonTupleArrays: true}` as the second type argument:
15470
15560
 
15471
15561
  ```
15472
15562
  import type {PartialDeep} from 'type-fest';
@@ -15475,21 +15565,20 @@ type PartialDeepOptions = {
15475
15565
  languages: string[];
15476
15566
  };
15477
15567
 
15478
- declare const partialSettings: PartialDeep<Settings, {recurseIntoArrays: true; allowUndefinedInNonTupleArrays: false}>;
15568
+ declare const partialSettings: PartialDeep<Settings, {recurseIntoArrays: true; allowUndefinedInNonTupleArrays: true}>;
15479
15569
 
15480
- partialSettings.languages = [undefined]; // Error
15481
- partialSettings.languages = []; // Ok
15570
+ partialSettings.languages = [undefined]; // OK
15482
15571
  ```
15483
15572
  */
15484
15573
  readonly allowUndefinedInNonTupleArrays?: boolean;
15485
15574
  };
15486
15575
  type DefaultPartialDeepOptions = {
15487
15576
  recurseIntoArrays: false;
15488
- allowUndefinedInNonTupleArrays: true;
15577
+ allowUndefinedInNonTupleArrays: false;
15489
15578
  };
15490
15579
  type PartialDeep<T, Options extends PartialDeepOptions = {}> = _PartialDeep<T, ApplyDefaultOptions<PartialDeepOptions, DefaultPartialDeepOptions, Options>>;
15491
- type _PartialDeep<T, Options extends Required<PartialDeepOptions>> = T extends BuiltIns | ((new (...arguments_: any[]) => unknown)) ? T : IsNever<keyof T> extends true // For functions with no properties
15492
- ? T : T extends Map<infer KeyType, infer ValueType> ? PartialMapDeep<KeyType, ValueType, Options> : T extends Set<infer ItemType> ? PartialSetDeep<ItemType, Options> : T extends ReadonlyMap<infer KeyType, infer ValueType> ? PartialReadonlyMapDeep<KeyType, ValueType, Options> : T extends ReadonlySet<infer ItemType> ? PartialReadonlySetDeep<ItemType, Options> : T extends object ? T extends ReadonlyArray<infer ItemType> // Test for arrays/tuples, per https://github.com/microsoft/TypeScript/issues/35156
15580
+ type _PartialDeep<T, Options extends Required<PartialDeepOptions>> = T extends BuiltIns | ((new (...arguments_: any[]) => unknown)) ? T : T extends Map<infer KeyType, infer ValueType> ? PartialMapDeep<KeyType, ValueType, Options> : T extends Set<infer ItemType> ? PartialSetDeep<ItemType, Options> : T extends ReadonlyMap<infer KeyType, infer ValueType> ? PartialReadonlyMapDeep<KeyType, ValueType, Options> : T extends ReadonlySet<infer ItemType> ? PartialReadonlySetDeep<ItemType, Options> : T extends (...arguments_: any[]) => unknown ? IsNever<keyof T> extends true ? T // For functions with no properties
15581
+ : HasMultipleCallSignatures<T> extends true ? T : ((...arguments_: Parameters<T>) => ReturnType<T>) & PartialObjectDeep<T, Options> : T extends object ? T extends ReadonlyArray<infer ItemType> // Test for arrays/tuples, per https://github.com/microsoft/TypeScript/issues/35156
15493
15582
  ? Options["recurseIntoArrays"] extends true ? ItemType[] extends T // Test for arrays (non-tuples) specifically
15494
15583
  ? readonly ItemType[] extends T // Differentiate readonly and mutable arrays
15495
15584
  ? ReadonlyArray<_PartialDeep<Options["allowUndefinedInNonTupleArrays"] extends false ? ItemType : ItemType | undefined, Options>> : Array<_PartialDeep<Options["allowUndefinedInNonTupleArrays"] extends false ? ItemType : ItemType | undefined, Options>> : PartialObjectDeep<T, Options> // Tuples behave properly
@@ -15499,12 +15588,12 @@ type PartialMapDeep<KeyType, ValueType, Options extends Required<PartialDeepOpti
15499
15588
  type PartialSetDeep<T, Options extends Required<PartialDeepOptions>> = {} & Set<_PartialDeep<T, Options>>;
15500
15589
  type PartialReadonlyMapDeep<KeyType, ValueType, Options extends Required<PartialDeepOptions>> = {} & ReadonlyMap<_PartialDeep<KeyType, Options>, _PartialDeep<ValueType, Options>>;
15501
15590
  type PartialReadonlySetDeep<T, Options extends Required<PartialDeepOptions>> = {} & ReadonlySet<_PartialDeep<T, Options>>;
15502
- type PartialObjectDeep<ObjectType extends object, Options extends Required<PartialDeepOptions>> = (ObjectType extends (...arguments_: any) => unknown ? (...arguments_: Parameters<ObjectType>) => ReturnType<ObjectType> : {}) & ({
15591
+ type PartialObjectDeep<ObjectType extends object, Options extends Required<PartialDeepOptions>> = {
15503
15592
  [KeyType in keyof ObjectType]?: _PartialDeep<ObjectType[KeyType], Options>;
15504
- });
15593
+ };
15505
15594
  type LiteralUnion<LiteralType, BaseType extends Primitive$1> = LiteralType | (BaseType & Record<never, never>);
15506
15595
  type ReadonlyDeep<T> = T extends BuiltIns ? T : T extends new (...arguments_: any[]) => unknown ? T // Skip class constructors
15507
- : T extends (...arguments_: any[]) => unknown ? {} extends ReadonlyObjectDeep<T> ? T : HasMultipleCallSignatures<T> extends true ? T : ((...arguments_: Parameters<T>) => ReturnType<T>) & ReadonlyObjectDeep<T> : T extends Readonly<ReadonlyMap<infer KeyType, infer ValueType>> ? ReadonlyMapDeep<KeyType, ValueType> : T extends Readonly<ReadonlySet<infer ItemType>> ? ReadonlySetDeep<ItemType> : T extends readonly [
15596
+ : T extends (...arguments_: any[]) => unknown ? {} extends _ReadonlyObjectDeep<T> ? T : HasMultipleCallSignatures<T> extends true ? T : ((...arguments_: Parameters<T>) => ReturnType<T>) & _ReadonlyObjectDeep<T> : T extends Readonly<ReadonlyMap<infer KeyType, infer ValueType>> ? ReadonlyMapDeep<KeyType, ValueType> : T extends Readonly<ReadonlySet<infer ItemType>> ? ReadonlySetDeep<ItemType> : T extends readonly [
15508
15597
  ] | readonly [
15509
15598
  ...never[]
15510
15599
  ] ? readonly [
@@ -15520,10 +15609,10 @@ type ReadonlyDeep<T> = T extends BuiltIns ? T : T extends new (...arguments_: an
15520
15609
  ] ? readonly [
15521
15610
  ...ReadonlyDeep<U>,
15522
15611
  ReadonlyDeep<V>
15523
- ] : T extends ReadonlyArray<infer ItemType> ? ReadonlyArray<ReadonlyDeep<ItemType>> : T extends object ? ReadonlyObjectDeep<T> : unknown;
15612
+ ] : T extends ReadonlyArray<infer ItemType> ? ReadonlyArray<ReadonlyDeep<ItemType>> : T extends object ? _ReadonlyObjectDeep<T> : unknown;
15524
15613
  type ReadonlyMapDeep<KeyType, ValueType> = {} & Readonly<ReadonlyMap<ReadonlyDeep<KeyType>, ReadonlyDeep<ValueType>>>;
15525
15614
  type ReadonlySetDeep<ItemType> = {} & Readonly<ReadonlySet<ReadonlyDeep<ItemType>>>;
15526
- type ReadonlyObjectDeep<ObjectType extends object> = {
15615
+ type _ReadonlyObjectDeep<ObjectType extends object> = {
15527
15616
  readonly [KeyType in keyof ObjectType]: ReadonlyDeep<ObjectType[KeyType]>;
15528
15617
  };
15529
15618
  type ValueOf<ObjectType, ValueType extends keyof ObjectType = keyof ObjectType> = ObjectType[ValueType];
@@ -19422,6 +19511,45 @@ export declare class Path implements IFocusable {
19422
19511
  * ```
19423
19512
  */
19424
19513
  export type TCreateMarker = boolean | ((instruction: TDirectionInstruction) => Marker);
19514
+ /**
19515
+ * Path options extended with connection-specific overrides for Navigation.
19516
+ * Connection paths inherit all base path options unless overridden with `__EXPERIMENTAL__CONNECTION_*` properties.
19517
+ */
19518
+ export type TNavigationPathOptions = TAddPathOptions & {
19519
+ /**
19520
+ * @experimental Override color for connection paths (vertical paths between floors).
19521
+ * If not specified, connection paths use the main `color` property.
19522
+ */
19523
+ __EXPERIMENTAL__CONNECTION_COLOR?: string;
19524
+ /**
19525
+ * @experimental Controls billboarding for connection path geometry.
19526
+ * - `boolean`: Enable/disable billboarding directly
19527
+ * - `number`: Angle threshold in degrees (0-90). Billboard when path angle from horizontal >= threshold.
19528
+ * For example, 80 means billboard only when path is >=80 degrees from horizontal (nearly vertical).
19529
+ *
19530
+ * @defaultValue false
19531
+ */
19532
+ __EXPERIMENTAL__CONNECTION_BILLBOARDING?: boolean | number;
19533
+ /**
19534
+ * @experimental Amount in meters to shorten connection path from each end.
19535
+ * Prevents visual overlap with floor paths at junctions.
19536
+ *
19537
+ * @defaultValue 0
19538
+ */
19539
+ __EXPERIMENTAL__CONNECTION_JUNCTION_INSET?: number;
19540
+ /**
19541
+ * @experimental Override dashed styling for connection paths.
19542
+ * If not specified, connection paths use the main `dashed` property.
19543
+ */
19544
+ __EXPERIMENTAL__CONNECTION_DASHED?: boolean;
19545
+ /**
19546
+ * @experimental Override geometry type for connection paths.
19547
+ * - 'tube': Original tube geometry with 8 radial segments
19548
+ * - 'ribbon': Flat ribbon geometry with 2 vertices per segment
19549
+ * If not specified, connection paths use the main `__EXPERIMENTAL_GEOMETRY` property.
19550
+ */
19551
+ __EXPERIMENTAL__CONNECTION_GEOMETRY?: "tube" | "ribbon";
19552
+ };
19425
19553
  /**
19426
19554
  * Options for navigation.
19427
19555
  */
@@ -19466,9 +19594,10 @@ export type TNavigationOptions = {
19466
19594
  */
19467
19595
  animatePathDrawing?: boolean;
19468
19596
  /**
19469
- * Options for the path.
19597
+ * Options for the path. Connection paths inherit these options unless overridden
19598
+ * with `__EXPERIMENTAL__CONNECTION_*` properties.
19470
19599
  */
19471
- pathOptions?: Partial<TAddPathOptions>;
19600
+ pathOptions?: Partial<TNavigationPathOptions>;
19472
19601
  /**
19473
19602
  * Options for the markers at the departure and destination.
19474
19603
  */
@@ -19729,10 +19858,9 @@ declare class GeojsonApiMapObject extends PubSub<{
19729
19858
  processFloorChange(floorId: string): void;
19730
19859
  setFloor(floorId: string, reason?: TFloorChangeReason): void;
19731
19860
  /**
19732
- * Updates the visibility of path layers across all floors based the value of hidePathsNotOnCurrentFloor
19733
- * and whether multi-floor view is enabled.
19861
+ * Legacy behavior where the outdoor path gets hidden if current floor doesn't match
19734
19862
  */
19735
- updatePathLayersVisibility(): void;
19863
+ updateOutdoorPathLayerVisibility(): void;
19736
19864
  getFloorStackAltitudeData(floorStackId: string): Map<number, {
19737
19865
  altitude: number;
19738
19866
  effectiveHeight: number;
@@ -19795,7 +19923,7 @@ declare class GeojsonApiMapObject extends PubSub<{
19795
19923
  Paths: {
19796
19924
  add: (coordinates: Coordinate[], options?: TAddPathOptions & {
19797
19925
  id?: string;
19798
- }) => {
19926
+ }, connectionOptions?: TConnectionPathOptions) => {
19799
19927
  paths: (EntityId<PathState> & {
19800
19928
  coordinates: Coordinate[];
19801
19929
  })[];
@@ -22460,6 +22588,7 @@ declare const markerStateSchemaPartial: z.ZodObject<{
22460
22588
  }, z.core.$strip>;
22461
22589
  export type TMarkerState = z.infer<typeof markerStateSchema>;
22462
22590
  export type TMarkerUpdateState = z.infer<typeof markerStateSchemaPartial>;
22591
+ type BorderColor = LiteralUnion<"darken", string>;
22463
22592
  declare const pathStateSchemaPartial: z.ZodObject<{
22464
22593
  type: z.ZodOptional<z.ZodDefault<z.ZodLiteral<"path">>>;
22465
22594
  color: z.ZodOptional<z.ZodDefault<z.ZodString>>;
@@ -22493,6 +22622,17 @@ declare const pathStateSchemaPartial: z.ZodObject<{
22493
22622
  __EXPERIMENTAL_GAP_METERS: z.ZodDefault<z.ZodNumber>;
22494
22623
  }, z.core.$strip>
22495
22624
  ], "__EXPERIMENTAL_DASH_MODE">>>;
22625
+ __EXPERIMENTAL_GEOMETRY: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
22626
+ tube: "tube";
22627
+ ribbon: "ribbon";
22628
+ }>>>;
22629
+ __EXPERIMENTAL_ENDCAP_ENABLED: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
22630
+ __EXPERIMENTAL_BILLBOARDING: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
22631
+ __EXPERIMENTAL_BORDER: z.ZodOptional<z.ZodOptional<z.ZodObject<{
22632
+ enabled: z.ZodBoolean;
22633
+ color: z.ZodCustom<BorderColor, BorderColor>;
22634
+ width: z.ZodOptional<z.ZodNumber>;
22635
+ }, z.core.$strip>>>;
22496
22636
  }, z.core.$strip>;
22497
22637
  declare const pathStateSchemaStrict: z.ZodObject<{
22498
22638
  type: z.ZodDefault<z.ZodLiteral<"path">>;
@@ -22527,6 +22667,17 @@ declare const pathStateSchemaStrict: z.ZodObject<{
22527
22667
  __EXPERIMENTAL_GAP_METERS: z.ZodDefault<z.ZodNumber>;
22528
22668
  }, z.core.$strip>
22529
22669
  ], "__EXPERIMENTAL_DASH_MODE">>;
22670
+ __EXPERIMENTAL_GEOMETRY: z.ZodDefault<z.ZodEnum<{
22671
+ tube: "tube";
22672
+ ribbon: "ribbon";
22673
+ }>>;
22674
+ __EXPERIMENTAL_ENDCAP_ENABLED: z.ZodDefault<z.ZodBoolean>;
22675
+ __EXPERIMENTAL_BILLBOARDING: z.ZodDefault<z.ZodBoolean>;
22676
+ __EXPERIMENTAL_BORDER: z.ZodOptional<z.ZodObject<{
22677
+ enabled: z.ZodBoolean;
22678
+ color: z.ZodCustom<BorderColor, BorderColor>;
22679
+ width: z.ZodOptional<z.ZodNumber>;
22680
+ }, z.core.$strip>>;
22530
22681
  }, z.core.$strict>;
22531
22682
  export type TPathState = z.infer<typeof pathStateSchemaStrict>;
22532
22683
  export type TPathUpdateState = z.input<typeof pathStateSchemaPartial>;
@@ -24204,6 +24355,63 @@ export type TAddPathOptions = {
24204
24355
  * @see TExperimentalDashOptions
24205
24356
  */
24206
24357
  __EXPERIMENTAL_DASH_OPTIONS?: TExperimentalDashOptions;
24358
+ /**
24359
+ * @experimental Geometry type for path rendering.
24360
+ * - 'tube': Original tube geometry with 8 radial segments (default)
24361
+ * - 'ribbon': Flat ribbon geometry with 2 vertices per segment
24362
+ *
24363
+ * @defaultValue 'tube'
24364
+ */
24365
+ __EXPERIMENTAL_GEOMETRY?: "tube" | "ribbon";
24366
+ /**
24367
+ * @experimental Whether to add end cap points to the path.
24368
+ *
24369
+ * @defaultValue false
24370
+ */
24371
+ __EXPERIMENTAL_ENDCAP_ENABLED?: boolean;
24372
+ /**
24373
+ * @experimental When true and using ribbon geometry, the path will always face the camera (billboard effect).
24374
+ * Most useful for vertical paths between floors.
24375
+ *
24376
+ * @defaultValue false
24377
+ */
24378
+ __EXPERIMENTAL_BILLBOARDING?: boolean;
24379
+ /**
24380
+ * @experimental Border configuration for ribbon path geometry.
24381
+ * Renders darkened edges along both sides of the ribbon.
24382
+ */
24383
+ __EXPERIMENTAL_BORDER?: {
24384
+ /** Whether the border is enabled */
24385
+ enabled: boolean;
24386
+ /** Border color - 'darken' to auto-darken main color, or explicit hex color string */
24387
+ color: "darken" | string;
24388
+ /** Border width as fraction of total ribbon width (0-0.5). @default 0.1 */
24389
+ width?: number;
24390
+ };
24391
+ };
24392
+ /**
24393
+ * @experimental Options specific to connection paths (vertical paths between floors).
24394
+ * Extends TAddPathOptions but with enhanced billboarding that supports angle-threshold activation.
24395
+ */
24396
+ export type TConnectionPathOptions = Omit<TAddPathOptions, "__EXPERIMENTAL_BILLBOARDING"> & {
24397
+ /**
24398
+ * @experimental Controls billboarding for connection path geometry.
24399
+ * - `boolean`: Enable/disable billboarding directly
24400
+ * - `number`: Angle threshold in degrees (0-90). Billboard when path angle from horizontal >= threshold.
24401
+ * For example, 80 means billboard only when path is >=80 degrees from horizontal (nearly vertical).
24402
+ *
24403
+ * @defaultValue false
24404
+ */
24405
+ __EXPERIMENTAL_BILLBOARDING?: boolean | number;
24406
+ /**
24407
+ * @experimental Amount in meters to shorten connection path from each end.
24408
+ * Prevents visual overlap with floor paths at junctions.
24409
+ *
24410
+ * Note: May not work consistently for vertical paths.
24411
+ *
24412
+ * @defaultValue 0
24413
+ */
24414
+ __EXPERIMENTAL_JUNCTION_INSET?: number;
24207
24415
  };
24208
24416
  /**
24209
24417
  * Defines the priority levels for collider collision handling, allowing customization of collider visibility in congested areas.
@@ -24834,7 +25042,8 @@ export type TCoordinateParams = {
24834
25042
  * This projection is a modified version of the traditional Mercator projection,
24835
25043
  * which is commonly used in marine navigation.
24836
25044
  */
24837
- export declare class Coordinate implements IFocusable, IAnchorable {
25045
+ export declare class Coordinate implements IFocusable, IAnchorable, IGeoJSONData {
25046
+ #private;
24838
25047
  /**
24839
25048
  * @internal
24840
25049
  */
@@ -24907,10 +25116,14 @@ export declare class Coordinate implements IFocusable, IAnchorable {
24907
25116
  floorId: string | undefined;
24908
25117
  verticalOffset: number;
24909
25118
  };
24910
- toGeoJSON(): {
24911
- type: string;
24912
- coordinates: number[];
24913
- };
25119
+ /**
25120
+ * Gets the underlying GeoJSON Feature representation of this Coordinate.
25121
+ */
25122
+ get geoJSON(): Feature<Point, null>;
25123
+ /**
25124
+ * @deprecated Use {@link geoJSON} instead.
25125
+ */
25126
+ toGeoJSON(): Point;
24914
25127
  /**
24915
25128
  * Cleans up resources used by the instance.
24916
25129
  *
@@ -26087,7 +26300,7 @@ type MVFFloorFeature = FloorCollection["features"][number];
26087
26300
  *
26088
26301
  * Floors are used to represent different levels within a map, each containing various map elements.
26089
26302
  */
26090
- export declare class Floor extends BaseMapData implements IFocusable {
26303
+ export declare class Floor extends BaseMapData implements IFocusable, IGeoJSONData {
26091
26304
  #private;
26092
26305
  /**
26093
26306
  * @internal
@@ -26339,7 +26552,7 @@ declare class Node$1 extends BaseMetaData implements IGeoJSONData, IFocusable, I
26339
26552
  *
26340
26553
  * FloorStacks are used to represent a group of floors that are part of a single entity.
26341
26554
  */
26342
- export declare class FloorStack extends BaseMapData {
26555
+ export declare class FloorStack extends BaseMapData implements IGeoJSONData {
26343
26556
  #private;
26344
26557
  /**
26345
26558
  * @internal
@@ -26400,6 +26613,12 @@ export declare class FloorStack extends BaseMapData {
26400
26613
  * Gets the facade ({@link Facade}) representing this floor stack, if it exists.
26401
26614
  */
26402
26615
  get facade(): Facade | undefined;
26616
+ /**
26617
+ * Gets the underlying GeoJSON Feature representation of this FloorStack.
26618
+ *
26619
+ * Returns a union of all floor geometries in this stack.
26620
+ */
26621
+ get geoJSON(): Feature$1<Polygon$1 | MultiPolygon$1, null>;
26403
26622
  /**
26404
26623
  * Serializes the FloorStack data to JSON.
26405
26624
  *
@@ -27700,6 +27919,7 @@ export type THydrateMapDataBundle = {
27700
27919
  options?: {
27701
27920
  version?: "2.0.0" | "3.0.0";
27702
27921
  enterprise?: boolean;
27922
+ mvf3?: MVFv2_STANDARD_MVFv3;
27703
27923
  };
27704
27924
  languagePacks?: {
27705
27925
  language: {
package/lib/esm/index.js CHANGED
@@ -1 +1 @@
1
- import{A as C,B as D,C as E,D as F,E as H,F as I,H as J,I as K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a as c,b as d,c as e,d as f,e as g,f as h,g as i,h as j,i as k,j as l,k as m,l as n,m as o,n as p,o as q,p as r,q as s,r as t,s as u,t as v,u as w,v as x,w as y,x as z,y as A,z as B}from"./chunk-TPNNM26K.js";import{a,c as b,db as G}from"./chunk-PLRDIY56.js";import"./chunk-MNP3KFWQ.js";import"./chunk-VFQLCEVW.js";import"./chunk-5W2UDR4H.js";export{y as ACTION_TYPE,I as ANIMATION_TWEENS,p as Annotation,h as Area,z as BEARING_TYPE,A as CONNECTION_TYPE,m as Connection,c as Coordinate,C as DOORS,g as DetailedMapData,D as Directions,i as Door,a as E_SDK_LOG_LEVEL,t as EnterpriseCategory,s as EnterpriseLocation,u as EnterpriseVenue,r as Facade,k as Floor,q as FloorStack,e as Hyperlink,f as ImageMetaData,F as LocationCategory,E as LocationProfile,l as MAPPEDIN_COLORS,n as MapObject,M as MapView,d as Node,o as PointOfInterest,j as Space,B as WALLS,P as __setWatermarkOnClickFn,W as checkWorkerUrls,K as disableText3DWorker,H as enableTestMode,O as findPreferredLanguageInVenue,S as forceEnterpriseLocations,U as getMapData,V as getMapDataEnterprise,J as getMultiFloorState,Y as getVersion,N as hydrateMapData,Q as hydrateMapDataFromMVF,v as parseMVF,G as preloadFont,b as setLoggerLevel,R as setUseEnterpriseAPI,L as setWorkersUrl,T as shouldForceEnterpriseLocations,X as show3dMap,Z as show3dMapGeojson,x as unzipAndParseMVFv2,w as unzipMVF};
1
+ import{A as C,B as D,C as E,D as F,E as H,F as I,H as J,I as K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a as c,b as d,c as e,d as f,e as g,f as h,g as i,h as j,i as k,j as l,k as m,l as n,m as o,n as p,o as q,p as r,q as s,r as t,s as u,t as v,u as w,v as x,w as y,x as z,y as A,z as B}from"./chunk-L35GCSX4.js";import{a,c as b,eb as G}from"./chunk-JXD7QEJY.js";import"./chunk-SN6R76R6.js";import"./chunk-OHB32AEN.js";import"./chunk-5W2UDR4H.js";export{y as ACTION_TYPE,I as ANIMATION_TWEENS,p as Annotation,h as Area,z as BEARING_TYPE,A as CONNECTION_TYPE,m as Connection,c as Coordinate,C as DOORS,g as DetailedMapData,D as Directions,i as Door,a as E_SDK_LOG_LEVEL,t as EnterpriseCategory,s as EnterpriseLocation,u as EnterpriseVenue,r as Facade,k as Floor,q as FloorStack,e as Hyperlink,f as ImageMetaData,F as LocationCategory,E as LocationProfile,l as MAPPEDIN_COLORS,n as MapObject,M as MapView,d as Node,o as PointOfInterest,j as Space,B as WALLS,P as __setWatermarkOnClickFn,W as checkWorkerUrls,K as disableText3DWorker,H as enableTestMode,O as findPreferredLanguageInVenue,S as forceEnterpriseLocations,U as getMapData,V as getMapDataEnterprise,J as getMultiFloorState,Y as getVersion,N as hydrateMapData,Q as hydrateMapDataFromMVF,v as parseMVF,G as preloadFont,b as setLoggerLevel,R as setUseEnterpriseAPI,L as setWorkersUrl,T as shouldForceEnterpriseLocations,X as show3dMap,Z as show3dMapGeojson,x as unzipAndParseMVFv2,w as unzipMVF};