bruce-cesium 5.8.6 → 5.8.8

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,6 +1,6 @@
1
1
  import { BruceEvent, Cartes, Entity as Entity$1, ProjectViewTile, Carto, Geometry, MathUtils, LRUCache, Api, Calculator, ClientFile, EntityTag, EntityType, ObjectUtils, Style, DelayQueue, EntityLod, Bounds, ZoomControl, EntityRelationType, ENVIRONMENT, EntityHistoricData, Tileset, EntityCoords, DataLab, EntitySource, MenuItem, EntityRelation, ProgramKey, ProjectView, ProjectViewBookmark, Camera, ProjectViewLegacyTile, EntityAttachment, EntityAttachmentType, EntityAttribute, AbstractApi, Session } from 'bruce-models';
2
2
  import * as Cesium from 'cesium';
3
- import { Cartographic, Cartesian2, Math as Math$1, Cartesian3, CallbackProperty, Color, HeightReference, Rectangle, JulianDate, Entity, DistanceDisplayCondition, ClassificationType, ArcType, CornerType, ShadowMode, ConstantProperty, ConstantPositionProperty, HorizontalOrigin, VerticalOrigin, PolygonHierarchy, PolylineGraphics, ColorMaterialProperty, ColorBlendMode, HeadingPitchRoll, Transforms, Model, SceneMode, Primitive, Cesium3DTileFeature, GeoJsonDataSource, Cesium3DTileStyle, HeadingPitchRange, Cesium3DTileColorBlendMode, Ion, KmlDataSource, Quaternion, Matrix3, Matrix4, SceneTransforms, OrthographicFrustum, EasingFunction, NearFarScalar, Cesium3DTileset, IonResource, EllipsoidTerrainProvider, CesiumInspector, defined, ClockRange, EllipsoidGeodesic, sampleTerrainMostDetailed, PolygonPipeline, ModelGraphics, PolygonGraphics, CorridorGraphics, PointGraphics, BillboardGraphics, EllipseGraphics, PolylineDashMaterialProperty, BoundingSphere, GeometryInstance, IonImageryProvider, createWorldImagery, createWorldImageryAsync, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, UrlTemplateImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, TileMapServiceImageryProvider, CesiumTerrainProvider, ScreenSpaceEventHandler, ScreenSpaceEventType, CzmlDataSource, Intersect, Fullscreen } from 'cesium';
3
+ import { Cartographic, Cartesian2, Math as Math$1, Cartesian3, CallbackProperty, Color, HeightReference, Rectangle, JulianDate, Entity, DistanceDisplayCondition, HorizontalOrigin, VerticalOrigin, ConstantProperty, ClassificationType, ConstantPositionProperty, ArcType, CornerType, ShadowMode, PolygonHierarchy, PolylineGraphics, ColorMaterialProperty, ColorBlendMode, HeadingPitchRoll, Transforms, Model, Primitive, Cesium3DTileFeature, SceneMode, GeoJsonDataSource, Cesium3DTileStyle, Cesium3DTileColorBlendMode, HeadingPitchRange, Ion, KmlDataSource, Quaternion, Matrix3, Matrix4, SceneTransforms, OrthographicFrustum, EasingFunction, NearFarScalar, EllipsoidTerrainProvider, IonImageryProvider, createWorldImagery, createWorldImageryAsync, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, UrlTemplateImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, TileMapServiceImageryProvider, CesiumTerrainProvider, IonResource, Cesium3DTileset, CesiumInspector, defined, ClockRange, EllipsoidGeodesic, sampleTerrainMostDetailed, PolygonPipeline, BoundingSphere, GeometryInstance, ModelGraphics, PolygonGraphics, CorridorGraphics, PointGraphics, BillboardGraphics, EllipseGraphics, PolylineDashMaterialProperty, ScreenSpaceEventHandler, ScreenSpaceEventType, CzmlDataSource, Intersect, Fullscreen } from 'cesium';
4
4
 
5
5
  const TIME_LAG = 300;
6
6
  const POSITION_CHECK_TIMER = 950;
@@ -4504,6 +4504,21 @@ var EntityUtils;
4504
4504
  EntityUtils.GetOpacity = GetOpacity;
4505
4505
  async function FlyTo(params) {
4506
4506
  var _a, _b;
4507
+ let { entityIds, entities, tileset } = params;
4508
+ if (!entityIds && !entities && !tileset) {
4509
+ return false;
4510
+ }
4511
+ let entityLookup = new Map();
4512
+ if (!entityIds && entities) {
4513
+ entityIds = entities.map(x => x.Bruce.ID);
4514
+ }
4515
+ if (entities) {
4516
+ for (const entity of entities) {
4517
+ if (entity && entity.Bruce && entity.Bruce.ID) {
4518
+ entityLookup.set(entity.Bruce.ID, entity);
4519
+ }
4520
+ }
4521
+ }
4507
4522
  const is2d = ViewUtils.Get2dStatus({
4508
4523
  viewer: params.viewer
4509
4524
  });
@@ -4512,8 +4527,9 @@ var EntityUtils;
4512
4527
  createIfMissing: true
4513
4528
  });
4514
4529
  const location = await EntityUtils.GetLocation({
4515
- samples: params.entityIds.map((id) => ({
4530
+ samples: entityIds.map((id) => ({
4516
4531
  entityId: id,
4532
+ entity: entityLookup.get(id),
4517
4533
  returnHeightRef: HeightReference.NONE,
4518
4534
  heightRef: HeightReference.RELATIVE_TO_GROUND
4519
4535
  })),
@@ -4665,8 +4681,8 @@ var EntityUtils;
4665
4681
  });
4666
4682
  return true;
4667
4683
  }
4668
- if (params.tileset && !params.tileset.isDestroyed() && params.tileset["ready"] != false && params.tileset.boundingSphere) {
4669
- params.viewer.zoomTo(params.tileset, new HeadingPitchRange(0.0, -0.5, params.tileset.boundingSphere.radius / 4.0));
4684
+ if (tileset && !tileset.isDestroyed() && tileset["ready"] != false && tileset.boundingSphere) {
4685
+ params.viewer.zoomTo(tileset, new HeadingPitchRange(0.0, -0.5, tileset.boundingSphere.radius / 4.0));
4670
4686
  return true;
4671
4687
  }
4672
4688
  return false;
@@ -14894,6 +14910,14 @@ var EntitiesIdsRenderManager;
14894
14910
  get Disposed() {
14895
14911
  return this.disposed;
14896
14912
  }
14913
+ get EntityIds() {
14914
+ var _a, _b;
14915
+ return ((_b = (_a = this.item) === null || _a === void 0 ? void 0 : _a.BruceEntity) === null || _b === void 0 ? void 0 : _b.EntityIds) || [];
14916
+ }
14917
+ get ZoomControl() {
14918
+ var _a;
14919
+ return ((_a = this.item) === null || _a === void 0 ? void 0 : _a.CameraZoomSettings) || [];
14920
+ }
14897
14921
  constructor(params) {
14898
14922
  var _a;
14899
14923
  this.getter = null;
@@ -14919,11 +14943,14 @@ var EntitiesIdsRenderManager;
14919
14943
  this.clustering = new PointClustering(visualsManager, this.item.id, (_a = this.item) === null || _a === void 0 ? void 0 : _a.clustering);
14920
14944
  }
14921
14945
  }
14922
- Init() {
14946
+ Init(params) {
14923
14947
  var _a, _b, _c;
14924
14948
  if (this.disposed) {
14925
14949
  throw (new Error("This item is disposed."));
14926
14950
  }
14951
+ if (params === null || params === void 0 ? void 0 : params.item) {
14952
+ this.item = params.item;
14953
+ }
14927
14954
  if (!((_a = this.item.CameraZoomSettings) === null || _a === void 0 ? void 0 : _a.length)) {
14928
14955
  this.item.CameraZoomSettings = [
14929
14956
  {
@@ -14940,19 +14967,19 @@ var EntitiesIdsRenderManager;
14940
14967
  if (this.renderPriority == null) {
14941
14968
  this.renderPriority = 2;
14942
14969
  }
14943
- this.getter = new BatchedDataGetter.Getter(this.item.BruceEntity.EntityIds, this.monitor, BATCH_SIZE$2,
14944
- // Don't emit the same Entity multiple times.
14945
- true);
14946
- this.getterSub = this.getter.OnUpdate.Subscribe((ids) => {
14947
- this.onGetterUpdate(ids);
14948
- });
14949
- this.getter.Start();
14970
+ if (!this.getter) {
14971
+ this.getter = new BatchedDataGetter.Getter(this.item.BruceEntity.EntityIds, this.monitor, BATCH_SIZE$2,
14972
+ // Don't emit the same Entity multiple times.
14973
+ true);
14974
+ this.getterSub = this.getter.OnUpdate.Subscribe((ids) => {
14975
+ this.onGetterUpdate(ids);
14976
+ });
14977
+ this.getter.Start();
14978
+ }
14979
+ this.viewerDateTimeDispose();
14950
14980
  if (((_b = this.item.BruceEntity) === null || _b === void 0 ? void 0 : _b.historic) || ((_c = this.item.BruceEntity) === null || _c === void 0 ? void 0 : _c.historicAttrKey)) {
14951
14981
  this.viewerDateTimeSub();
14952
14982
  }
14953
- else {
14954
- this.viewerDateTimeDispose();
14955
- }
14956
14983
  }
14957
14984
  Dispose() {
14958
14985
  if (this.disposed) {
@@ -19245,8 +19272,7 @@ var DataLabRenderManager;
19245
19272
  })(DataLabRenderManager || (DataLabRenderManager = {}));
19246
19273
 
19247
19274
  const MAX_BATCHES = 2;
19248
- const BATCH_SIZE_OLD_API = 30;
19249
- const BATCH_SIZE_NEW_API = 1000;
19275
+ const BATCH_SIZE$3 = 1000;
19250
19276
  const BATCH_DELAY = 200;
19251
19277
  const MAX_RANGE = 3000;
19252
19278
  var TilesetOsmRenderManager;
@@ -19261,6 +19287,12 @@ var TilesetOsmRenderManager;
19261
19287
  get count() {
19262
19288
  return ++this.counter;
19263
19289
  }
19290
+ get SourceId() {
19291
+ return this.sourceId;
19292
+ }
19293
+ get EntityTypeId() {
19294
+ return this.entityTypeId;
19295
+ }
19264
19296
  constructor(params) {
19265
19297
  this.disposed = false;
19266
19298
  this.cTileset = null;
@@ -19273,7 +19305,6 @@ var TilesetOsmRenderManager;
19273
19305
  this.queueCheckInterval = null;
19274
19306
  this.processingQueue = 0;
19275
19307
  this._osmIdToBruceId = {};
19276
- this.batchSize = BATCH_SIZE_OLD_API;
19277
19308
  const { viewer, register: visualsManager, getters: apiGetter, monitor, item } = params;
19278
19309
  this.viewer = viewer;
19279
19310
  this.getters = apiGetter;
@@ -19305,12 +19336,22 @@ var TilesetOsmRenderManager;
19305
19336
  });
19306
19337
  this.featureQueue = [];
19307
19338
  }
19308
- Init() {
19339
+ Init(params) {
19309
19340
  var _a, _b;
19341
+ if (params === null || params === void 0 ? void 0 : params.item) {
19342
+ this.item = params.item;
19343
+ }
19310
19344
  const menuItem = this.item;
19311
19345
  this.sourceId = EnsureNumber((_a = menuItem.BruceEntity) === null || _a === void 0 ? void 0 : _a.SourceId, 0);
19312
19346
  this.entityTypeId = (_b = menuItem.BruceEntity) === null || _b === void 0 ? void 0 : _b["EntityType.ID"];
19313
19347
  (async () => {
19348
+ if (this.disposed) {
19349
+ return;
19350
+ }
19351
+ else if (this.cTileset) {
19352
+ // Already exists, no need to re-initialize.
19353
+ return;
19354
+ }
19314
19355
  const validToken = await ViewerUtils.AssertIonToken(Ion.defaultAccessToken);
19315
19356
  if (!validToken) {
19316
19357
  console.warn("'tileset-osm-render-manager.ts' could not locate a valid Cesium Ion token.");
@@ -19330,12 +19371,13 @@ var TilesetOsmRenderManager;
19330
19371
  console.warn("'tileset-osm-render-manager.ts' could not locate a create function for OSM buildings.");
19331
19372
  return;
19332
19373
  }
19333
- // New API versions are way better at processing this request.
19334
- const api = this.getters.GetBruceApi();
19335
- await api.Loading;
19336
- if (api.IsVersionAtLeast("1.0.5244")) {
19337
- this.batchSize = BATCH_SIZE_NEW_API;
19374
+ // See if we already have a cTileset set.
19375
+ // Happens if we re-initialized in quick succession.
19376
+ if (this.cTileset) {
19377
+ cTileset.destroy();
19378
+ return;
19338
19379
  }
19380
+ this.cTileset = cTileset;
19339
19381
  if (this.disposed) {
19340
19382
  if (this.cTileset && !this.cTileset.isDestroyed()) {
19341
19383
  this.cTileset.destroy();
@@ -19343,7 +19385,6 @@ var TilesetOsmRenderManager;
19343
19385
  }
19344
19386
  return;
19345
19387
  }
19346
- this.cTileset = cTileset;
19347
19388
  if (this.sourceId) {
19348
19389
  if (menuItem.ghostLoading == true) {
19349
19390
  this.cTileset.style = new Cesium3DTileStyle({
@@ -19447,7 +19488,7 @@ var TilesetOsmRenderManager;
19447
19488
  const isClose = this.getIsVisualWithinRange(feature, MAX_RANGE);
19448
19489
  if (isClose) {
19449
19490
  batch.push(feature);
19450
- if (batch.length >= this.batchSize) {
19491
+ if (batch.length >= BATCH_SIZE$3) {
19451
19492
  return batch;
19452
19493
  }
19453
19494
  }
@@ -19597,7 +19638,7 @@ var TilesetOsmRenderManager;
19597
19638
  delete this._loadedCesiumEntities[key];
19598
19639
  this.totalLoaded -= 1;
19599
19640
  removed += 1;
19600
- if (removed >= this.batchSize) {
19641
+ if (removed >= BATCH_SIZE$3) {
19601
19642
  return true;
19602
19643
  }
19603
19644
  }
@@ -20875,9 +20916,33 @@ var TilesetGooglePhotosRenderManager;
20875
20916
  this.cTileset = null;
20876
20917
  }
20877
20918
  }
20878
- Init() {
20919
+ Init(params) {
20920
+ if (this.disposed) {
20921
+ return;
20922
+ }
20923
+ if (params === null || params === void 0 ? void 0 : params.item) {
20924
+ this.item = params.item;
20925
+ }
20879
20926
  (async () => {
20880
20927
  var _a;
20928
+ // If the tileset already exists then we just need to update the style.
20929
+ if (this.cTileset) {
20930
+ const colorCss = this.item.colorMask;
20931
+ if (colorCss) {
20932
+ this.cTileset.style = new Cesium3DTileStyle({
20933
+ color: {
20934
+ conditions: [
20935
+ ["true", `color("${colorCss}")`]
20936
+ ]
20937
+ }
20938
+ });
20939
+ }
20940
+ else {
20941
+ this.cTileset.style = undefined;
20942
+ }
20943
+ this.viewer.scene.requestRender();
20944
+ return;
20945
+ }
20881
20946
  const CESIUM = Cesium;
20882
20947
  if (!CESIUM.createGooglePhotorealistic3DTileset) {
20883
20948
  console.warn("Cesium version does not support 'createGooglePhotorealistic3DTileset' so Google Photos tileset will not be rendered.");
@@ -22791,7 +22856,7 @@ var MenuItemManager;
22791
22856
  * @returns
22792
22857
  */
22793
22858
  RenderItem(params) {
22794
- var _a, _b, _c, _d, _e;
22859
+ var _a, _b, _c, _d, _e, _f, _g, _h;
22795
22860
  if (this.viewer.isDestroyed()) {
22796
22861
  return null;
22797
22862
  }
@@ -22813,6 +22878,7 @@ var MenuItemManager;
22813
22878
  }
22814
22879
  let rItem = this.items.find(x => x.id == params.item.id);
22815
22880
  let create = true;
22881
+ // Item already exists so we'll check if we should re-create it.
22816
22882
  if (rItem) {
22817
22883
  // This means we're updating a tag menu item.
22818
22884
  // Tag menu items have alternative states based on bookmark settings.
@@ -22861,18 +22927,76 @@ var MenuItemManager;
22861
22927
  create = false;
22862
22928
  }
22863
22929
  }
22930
+ else if (rItem.type == MenuItem.EType.PointCloud && params.item.Type == MenuItem.EType.PointCloud) {
22931
+ if (rItem.renderManager) {
22932
+ create = false;
22933
+ }
22934
+ }
22935
+ else if (rItem.type == MenuItem.EType.ArbTileset && params.item.Type == MenuItem.EType.ArbTileset) {
22936
+ if (rItem.renderManager) {
22937
+ create = false;
22938
+ }
22939
+ }
22940
+ else if (rItem.type == MenuItem.EType.I3sTileset && params.item.Type == MenuItem.EType.I3sTileset) {
22941
+ if (rItem.renderManager) {
22942
+ create = false;
22943
+ }
22944
+ }
22864
22945
  // Re-init in case model-space changed to geo-spatial or vice-versa.
22865
22946
  else if (rItem.type == MenuItem.EType.Assembly && params.item.Type == MenuItem.EType.Assembly) {
22866
22947
  if (rItem.renderManager && rItem.renderManager.ModelSpace == params.modelSpace) {
22867
22948
  create = false;
22868
22949
  }
22869
22950
  }
22951
+ // Updating an existing Google photos tileset.
22952
+ // Eg: different color mask (opacity).
22953
+ else if (rItem.type == MenuItem.EType.GooglePhotoTileset && params.item.Type == MenuItem.EType.GooglePhotoTileset) {
22954
+ if (rItem.renderManager) {
22955
+ rItem.renderManager.Init({
22956
+ item: params.item
22957
+ });
22958
+ rItem.item = params.item;
22959
+ create = false;
22960
+ }
22961
+ }
22962
+ else if (rItem.type == MenuItem.EType.Osm && params.item.Type == MenuItem.EType.Osm) {
22963
+ // If the source is the same then we can re-use the render manager.
22964
+ const oRenderManager = rItem.renderManager;
22965
+ const oItem = params.item;
22966
+ if (oRenderManager && oItem) {
22967
+ if (+oRenderManager.SourceId == +((_b = oItem.BruceEntity) === null || _b === void 0 ? void 0 : _b.SourceId) && oRenderManager.EntityTypeId == ((_c = oItem.BruceEntity) === null || _c === void 0 ? void 0 : _c["EntityType.ID"])) {
22968
+ oRenderManager.Init({
22969
+ item: oItem
22970
+ });
22971
+ rItem.item = params.item;
22972
+ create = false;
22973
+ }
22974
+ }
22975
+ }
22976
+ else if (rItem.type == MenuItem.EType.EntitiesIds && params.item.Type == MenuItem.EType.EntitiesIds) {
22977
+ // Checking for Entity IDs.
22978
+ const eIdsRenderManager = rItem.renderManager;
22979
+ const eIdsItem = params.item;
22980
+ if (eIdsRenderManager && eIdsItem) {
22981
+ const eEntityIds = eIdsRenderManager.EntityIds;
22982
+ const mEntityIds = (_d = eIdsItem.BruceEntity) === null || _d === void 0 ? void 0 : _d.EntityIds;
22983
+ const eEntityIdsStr = eEntityIds ? eEntityIds.join(",") : "";
22984
+ const mEntityIdsStr = mEntityIds ? mEntityIds.join(",") : "";
22985
+ if (eEntityIdsStr == mEntityIdsStr) {
22986
+ eIdsRenderManager.Init({
22987
+ item: eIdsItem
22988
+ });
22989
+ rItem.item = params.item;
22990
+ create = false;
22991
+ }
22992
+ }
22993
+ }
22870
22994
  else if (rItem.type != params.item.Type) {
22871
22995
  create = true;
22872
22996
  }
22873
22997
  if (create) {
22874
22998
  try {
22875
- (_b = rItem.renderManager) === null || _b === void 0 ? void 0 : _b.Dispose();
22999
+ (_e = rItem.renderManager) === null || _e === void 0 ? void 0 : _e.Dispose();
22876
23000
  }
22877
23001
  catch (e) {
22878
23002
  console.error(e);
@@ -22883,7 +23007,7 @@ var MenuItemManager;
22883
23007
  if (create) {
22884
23008
  if (!rItem) {
22885
23009
  rItem = {
22886
- id: (_c = params.item.id) !== null && _c !== void 0 ? _c : ObjectUtils.UId(),
23010
+ id: (_f = params.item.id) !== null && _f !== void 0 ? _f : ObjectUtils.UId(),
22887
23011
  childIds: [],
22888
23012
  item: params.item,
22889
23013
  renderManager: null,
@@ -23082,8 +23206,8 @@ var MenuItemManager;
23082
23206
  rItem.childIds.push(childId);
23083
23207
  }
23084
23208
  }
23085
- if (rItem.renderManager && !((_d = rItem.renderManager) === null || _d === void 0 ? void 0 : _d.Disposed)) {
23086
- (_e = this.onUpdate) === null || _e === void 0 ? void 0 : _e.Trigger({ isEnabling: true, itemId: rItem.id });
23209
+ if (rItem.renderManager && !((_g = rItem.renderManager) === null || _g === void 0 ? void 0 : _g.Disposed)) {
23210
+ (_h = this.onUpdate) === null || _h === void 0 ? void 0 : _h.Trigger({ isEnabling: true, itemId: rItem.id });
23087
23211
  }
23088
23212
  return rItem.id;
23089
23213
  }
@@ -32862,7 +32986,7 @@ class WidgetViewBar extends Widget.AWidget {
32862
32986
  }
32863
32987
  }
32864
32988
 
32865
- const VERSION = "5.8.6";
32989
+ const VERSION = "5.8.8";
32866
32990
 
32867
32991
  export { VERSION, CesiumViewMonitor, ViewerUtils, ViewerEventTracker, MenuItemManager, isOutlineChanged, EntityRenderEngine, EntityRenderEnginePoint, EntityRenderEnginePolyline, EntityRenderEnginePolygon, EntityRenderEngineModel3d, MenuItemCreator, VisualsRegister, RenderManager, EntitiesIdsRenderManager, DataLabRenderManager, EntitiesLoadedRenderManager, EntitiesRenderManager, EntityRenderManager, TilesetCadRenderManager, TilesetArbRenderManager, TilesetEntitiesRenderManager, TilesetOsmRenderManager, TilesetPointcloudRenderManager, TilesetGooglePhotosRenderManager, DataSourceStaticKmlManager, GoogleSearchRenderManager, AssemblyRenderManager, RelationsRenderManager, SharedGetters, CesiumParabola, EntityLabel, ViewRenderEngine, TileRenderEngine, TilesetRenderEngine, CESIUM_INSPECTOR_KEY, CESIUM_TIMELINE_KEY, CESIUM_TIMELINE_LIVE_KEY, CESIUM_TIMELINE_LIVE_PADDING_KEY, CESIUM_TIMELINE_INTERVAL_KEY, DEFAULT_LIVE_PADDING_SECONDS, ViewUtils, DrawingUtils, MeasureUtils, EntityUtils, CesiumEntityStyler, CesiumAnimatedProperty, CesiumAnimatedInOut, Draw3dPolygon, Draw3dPolyline, MeasureCreator, Walkthrough, Widget, VIEWER_BOOKMARKS_WIDGET_KEY, WidgetBookmarks, WidgetBranding, WidgetCursorBar, WidgetEmbeddedInfoView, WidgetInfoView, WidgetNavCompass$$1 as WidgetNavCompass, VIEWER_VIEW_BAR_WIDGET_KEY, WidgetViewBar, WidgetControlViewBar, WidgetControlViewBarSearch, VIEWER_LEFT_PANEL_WIDGET_KEY, VIEWER_LEFT_PANEL_CSS_VAR_LEFT, WidgetLeftPanel, WidgetLeftPanelTab, WidgetLeftPanelTabBookmarks };
32868
32992
  //# sourceMappingURL=bruce-cesium.es5.js.map