@cesium/engine 2.4.0 → 2.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/Build/Workers/{Color-e5bfda3f.js → Color-8e135f71.js} +4 -4
  2. package/Build/Workers/cesiumWorkerBootstrapper.js +1 -1
  3. package/Build/Workers/createPolylineGeometry.js +1 -1
  4. package/Build/Workers/createSimplePolylineGeometry.js +1 -1
  5. package/Build/Workers/createVectorTileGeometries.js +1 -1
  6. package/Build/Workers/createVectorTilePolygons.js +1 -1
  7. package/Build/Workers/package.js +1 -1
  8. package/Build/Workers/transferTypedArrayTest.js +1 -1
  9. package/Source/Core/ArcGISTiledElevationTerrainProvider.js +3 -3
  10. package/Source/Core/CesiumTerrainProvider.js +28 -3
  11. package/Source/Core/Color.js +4 -4
  12. package/Source/Core/CustomHeightmapTerrainProvider.js +2 -2
  13. package/Source/Core/EllipsoidTerrainProvider.js +2 -2
  14. package/Source/Core/GoogleEarthEnterpriseMetadata.js +2 -2
  15. package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +4 -4
  16. package/Source/Core/GoogleMaps.js +1 -1
  17. package/Source/Core/Ion.js +2 -1
  18. package/Source/Core/VRTheWorldTerrainProvider.js +3 -3
  19. package/Source/Core/createWorldTerrain.js +2 -1
  20. package/Source/Core/sampleTerrain.js +5 -1
  21. package/Source/Core/sampleTerrainMostDetailed.js +5 -1
  22. package/Source/DataSources/DataSourceDisplay.js +3 -2
  23. package/Source/DataSources/Entity.js +2 -3
  24. package/Source/DataSources/ModelVisualizer.js +6 -1
  25. package/Source/Renderer/demodernizeShader.js +3 -0
  26. package/Source/Scene/ArcGisMapServerImageryProvider.js +23 -23
  27. package/Source/Scene/ArcGisMapService.js +1 -1
  28. package/Source/Scene/Billboard.js +0 -7
  29. package/Source/Scene/BingMapsImageryProvider.js +23 -23
  30. package/Source/Scene/Cesium3DTileBatchTable.js +0 -3
  31. package/Source/Scene/Globe.js +7 -3
  32. package/Source/Scene/GlobeSurfaceTile.js +7 -1
  33. package/Source/Scene/GlobeSurfaceTileProvider.js +46 -21
  34. package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +24 -24
  35. package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +22 -22
  36. package/Source/Scene/GridImageryProvider.js +22 -22
  37. package/Source/Scene/Imagery.js +5 -2
  38. package/Source/Scene/ImageryLayer.js +13 -3
  39. package/Source/Scene/IonImageryProvider.js +23 -23
  40. package/Source/Scene/MapboxImageryProvider.js +22 -22
  41. package/Source/Scene/MapboxStyleImageryProvider.js +22 -22
  42. package/Source/Scene/Model/CustomShader.js +1 -1
  43. package/Source/Scene/ScreenSpaceCameraController.js +2 -1
  44. package/Source/Scene/SingleTileImageryProvider.js +22 -22
  45. package/Source/Scene/TileCoordinatesImageryProvider.js +22 -22
  46. package/Source/Scene/TileMapServiceImageryProvider.js +1 -1
  47. package/Source/Scene/UrlTemplateImageryProvider.js +23 -23
  48. package/Source/Scene/WebMapServiceImageryProvider.js +22 -22
  49. package/Source/Scene/WebMapTileServiceImageryProvider.js +22 -22
  50. package/Source/Scene/computeFlyToLocationForRectangle.js +5 -1
  51. package/Source/Scene/createOsmBuildings.js +2 -1
  52. package/Source/Scene/createWorldImagery.js +1 -1
  53. package/Source/Shaders/BillboardCollectionFS.glsl +0 -4
  54. package/Source/Shaders/BillboardCollectionFS.js +1 -5
  55. package/Source/Shaders/Builtin/Functions/writeLogDepth.glsl +0 -3
  56. package/Source/Shaders/Builtin/Functions/writeLogDepth.js +0 -3
  57. package/Source/Shaders/Materials/ElevationContourMaterial.glsl +0 -4
  58. package/Source/Shaders/Materials/ElevationContourMaterial.js +1 -5
  59. package/Source/Shaders/Materials/GridMaterial.glsl +0 -4
  60. package/Source/Shaders/Materials/GridMaterial.js +1 -5
  61. package/Source/Shaders/Materials/PolylineArrowMaterial.glsl +0 -4
  62. package/Source/Shaders/Materials/PolylineArrowMaterial.js +1 -5
  63. package/Source/Shaders/Model/ModelFS.glsl +0 -6
  64. package/Source/Shaders/Model/ModelFS.js +1 -7
  65. package/Source/Widget/CesiumWidget.js +1 -1
  66. package/index.d.ts +7 -7
  67. package/index.js +61 -61
  68. package/package.json +2 -2
@@ -348,9 +348,9 @@ define(['exports', './Check-6ede7e26', './defaultValue-fe22d8c0', './Transforms-
348
348
  //#rrggbbaa
349
349
  const rrggbbaaMatcher = /^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})?$/i;
350
350
  //rgb(), rgba(), or rgb%()
351
- const rgbParenthesesMatcher = /^rgba?\(\s*([0-9.]+%?)\s*,\s*([0-9.]+%?)\s*,\s*([0-9.]+%?)(?:\s*,\s*([0-9.]+))?\s*\)$/i;
351
+ const rgbParenthesesMatcher = /^rgba?\s*\(\s*([0-9.]+%?)\s*[,\s]+\s*([0-9.]+%?)\s*[,\s]+\s*([0-9.]+%?)(?:\s*[,\s/]+\s*([0-9.]+))?\s*\)$/i;
352
352
  //hsl() or hsla()
353
- const hslParenthesesMatcher = /^hsla?\(\s*([0-9.]+)\s*,\s*([0-9.]+%)\s*,\s*([0-9.]+%)(?:\s*,\s*([0-9.]+))?\s*\)$/i;
353
+ const hslParenthesesMatcher = /^hsla?\s*\(\s*([0-9.]+)\s*[,\s]+\s*([0-9.]+%)\s*[,\s]+\s*([0-9.]+%)(?:\s*[,\s/]+\s*([0-9.]+))?\s*\)$/i;
354
354
 
355
355
  /**
356
356
  * Creates a Color instance from a CSS color value.
@@ -375,8 +375,8 @@ define(['exports', './Check-6ede7e26', './defaultValue-fe22d8c0', './Transforms-
375
375
  result = new Color();
376
376
  }
377
377
 
378
- // Remove all whitespaces from the color string
379
- color = color.replace(/\s/g, "");
378
+ // Remove all surrounding whitespaces from the color string
379
+ color = color.trim();
380
380
 
381
381
  const namedColor = Color[color.toUpperCase()];
382
382
  if (defaultValue.defined(namedColor)) {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  * Cesium - https://github.com/CesiumGS/cesium
4
- * Version 1.105.1
4
+ * Version 1.106
5
5
  *
6
6
  * Copyright 2011-2022 Cesium Contributors
7
7
  *
@@ -1,4 +1,4 @@
1
- define(['./defaultValue-fe22d8c0', './Matrix3-41c58dde', './ArcType-2d9abbbc', './arrayRemoveDuplicates-d2061e85', './Transforms-e2d4a55a', './Color-e5bfda3f', './ComponentDatatype-cf1fa08e', './Check-6ede7e26', './GeometryAttribute-13da9466', './GeometryAttributes-ad136444', './IndexDatatype-2643aa47', './Math-0a2ac845', './PolylinePipeline-7119eb3f', './VertexFormat-030f11ff', './Matrix2-e1298525', './RuntimeError-ef395448', './combine-d9581036', './WebGLConstants-0b1ce7ba', './EllipsoidGeodesic-5b3623dc', './EllipsoidRhumbLine-ef872433', './IntersectionTests-85350792', './Plane-4c3d403b'], (function (defaultValue, Matrix3, ArcType, arrayRemoveDuplicates, Transforms, Color, ComponentDatatype, Check, GeometryAttribute, GeometryAttributes, IndexDatatype, Math$1, PolylinePipeline, VertexFormat, Matrix2, RuntimeError, combine, WebGLConstants, EllipsoidGeodesic, EllipsoidRhumbLine, IntersectionTests, Plane) { 'use strict';
1
+ define(['./defaultValue-fe22d8c0', './Matrix3-41c58dde', './ArcType-2d9abbbc', './arrayRemoveDuplicates-d2061e85', './Transforms-e2d4a55a', './Color-8e135f71', './ComponentDatatype-cf1fa08e', './Check-6ede7e26', './GeometryAttribute-13da9466', './GeometryAttributes-ad136444', './IndexDatatype-2643aa47', './Math-0a2ac845', './PolylinePipeline-7119eb3f', './VertexFormat-030f11ff', './Matrix2-e1298525', './RuntimeError-ef395448', './combine-d9581036', './WebGLConstants-0b1ce7ba', './EllipsoidGeodesic-5b3623dc', './EllipsoidRhumbLine-ef872433', './IntersectionTests-85350792', './Plane-4c3d403b'], (function (defaultValue, Matrix3, ArcType, arrayRemoveDuplicates, Transforms, Color, ComponentDatatype, Check, GeometryAttribute, GeometryAttributes, IndexDatatype, Math$1, PolylinePipeline, VertexFormat, Matrix2, RuntimeError, combine, WebGLConstants, EllipsoidGeodesic, EllipsoidRhumbLine, IntersectionTests, Plane) { 'use strict';
2
2
 
3
3
  const scratchInterpolateColorsArray = [];
4
4
 
@@ -1,4 +1,4 @@
1
- define(['./defaultValue-fe22d8c0', './Matrix3-41c58dde', './ArcType-2d9abbbc', './Transforms-e2d4a55a', './Color-e5bfda3f', './ComponentDatatype-cf1fa08e', './Check-6ede7e26', './GeometryAttribute-13da9466', './GeometryAttributes-ad136444', './IndexDatatype-2643aa47', './Math-0a2ac845', './PolylinePipeline-7119eb3f', './Matrix2-e1298525', './RuntimeError-ef395448', './combine-d9581036', './WebGLConstants-0b1ce7ba', './EllipsoidGeodesic-5b3623dc', './EllipsoidRhumbLine-ef872433', './IntersectionTests-85350792', './Plane-4c3d403b'], (function (defaultValue, Matrix3, ArcType, Transforms, Color, ComponentDatatype, Check, GeometryAttribute, GeometryAttributes, IndexDatatype, Math, PolylinePipeline, Matrix2, RuntimeError, combine, WebGLConstants, EllipsoidGeodesic, EllipsoidRhumbLine, IntersectionTests, Plane) { 'use strict';
1
+ define(['./defaultValue-fe22d8c0', './Matrix3-41c58dde', './ArcType-2d9abbbc', './Transforms-e2d4a55a', './Color-8e135f71', './ComponentDatatype-cf1fa08e', './Check-6ede7e26', './GeometryAttribute-13da9466', './GeometryAttributes-ad136444', './IndexDatatype-2643aa47', './Math-0a2ac845', './PolylinePipeline-7119eb3f', './Matrix2-e1298525', './RuntimeError-ef395448', './combine-d9581036', './WebGLConstants-0b1ce7ba', './EllipsoidGeodesic-5b3623dc', './EllipsoidRhumbLine-ef872433', './IntersectionTests-85350792', './Plane-4c3d403b'], (function (defaultValue, Matrix3, ArcType, Transforms, Color, ComponentDatatype, Check, GeometryAttribute, GeometryAttributes, IndexDatatype, Math, PolylinePipeline, Matrix2, RuntimeError, combine, WebGLConstants, EllipsoidGeodesic, EllipsoidRhumbLine, IntersectionTests, Plane) { 'use strict';
2
2
 
3
3
  function interpolateColors(p0, p1, color0, color1, minDistance, array, offset) {
4
4
  const numPoints = PolylinePipeline.PolylinePipeline.numberOfPoints(p0, p1, minDistance);
@@ -1,4 +1,4 @@
1
- define(['./Transforms-e2d4a55a', './BoxGeometry-af7d05ef', './Matrix3-41c58dde', './Color-e5bfda3f', './CylinderGeometry-dbaa1678', './defaultValue-fe22d8c0', './EllipsoidGeometry-8155e3a2', './IndexDatatype-2643aa47', './Matrix2-e1298525', './createTaskProcessorWorker', './Check-6ede7e26', './Math-0a2ac845', './combine-d9581036', './RuntimeError-ef395448', './ComponentDatatype-cf1fa08e', './WebGLConstants-0b1ce7ba', './GeometryAttribute-13da9466', './GeometryAttributes-ad136444', './GeometryOffsetAttribute-9ad0019c', './VertexFormat-030f11ff', './CylinderGeometryLibrary-7bf291b4'], (function (Transforms, BoxGeometry, Matrix3, Color, CylinderGeometry, defaultValue, EllipsoidGeometry, IndexDatatype, Matrix2, createTaskProcessorWorker, Check, Math$1, combine, RuntimeError, ComponentDatatype, WebGLConstants, GeometryAttribute, GeometryAttributes, GeometryOffsetAttribute, VertexFormat, CylinderGeometryLibrary) { 'use strict';
1
+ define(['./Transforms-e2d4a55a', './BoxGeometry-af7d05ef', './Matrix3-41c58dde', './Color-8e135f71', './CylinderGeometry-dbaa1678', './defaultValue-fe22d8c0', './EllipsoidGeometry-8155e3a2', './IndexDatatype-2643aa47', './Matrix2-e1298525', './createTaskProcessorWorker', './Check-6ede7e26', './Math-0a2ac845', './combine-d9581036', './RuntimeError-ef395448', './ComponentDatatype-cf1fa08e', './WebGLConstants-0b1ce7ba', './GeometryAttribute-13da9466', './GeometryAttributes-ad136444', './GeometryOffsetAttribute-9ad0019c', './VertexFormat-030f11ff', './CylinderGeometryLibrary-7bf291b4'], (function (Transforms, BoxGeometry, Matrix3, Color, CylinderGeometry, defaultValue, EllipsoidGeometry, IndexDatatype, Matrix2, createTaskProcessorWorker, Check, Math$1, combine, RuntimeError, ComponentDatatype, WebGLConstants, GeometryAttribute, GeometryAttributes, GeometryOffsetAttribute, VertexFormat, CylinderGeometryLibrary) { 'use strict';
2
2
 
3
3
  /**
4
4
  * Describes a renderable batch of geometry.
@@ -1,4 +1,4 @@
1
- define(['./AttributeCompression-f9f6c717', './Matrix3-41c58dde', './Color-e5bfda3f', './defaultValue-fe22d8c0', './IndexDatatype-2643aa47', './Math-0a2ac845', './OrientedBoundingBox-29fb0fcd', './Matrix2-e1298525', './createTaskProcessorWorker', './ComponentDatatype-cf1fa08e', './Check-6ede7e26', './WebGLConstants-0b1ce7ba', './Transforms-e2d4a55a', './combine-d9581036', './RuntimeError-ef395448', './EllipsoidTangentPlane-546c0d5e', './AxisAlignedBoundingBox-4bfd84f3', './IntersectionTests-85350792', './Plane-4c3d403b'], (function (AttributeCompression, Matrix3, Color, defaultValue, IndexDatatype, Math$1, OrientedBoundingBox, Matrix2, createTaskProcessorWorker, ComponentDatatype, Check, WebGLConstants, Transforms, combine, RuntimeError, EllipsoidTangentPlane, AxisAlignedBoundingBox, IntersectionTests, Plane) { 'use strict';
1
+ define(['./AttributeCompression-f9f6c717', './Matrix3-41c58dde', './Color-8e135f71', './defaultValue-fe22d8c0', './IndexDatatype-2643aa47', './Math-0a2ac845', './OrientedBoundingBox-29fb0fcd', './Matrix2-e1298525', './createTaskProcessorWorker', './ComponentDatatype-cf1fa08e', './Check-6ede7e26', './WebGLConstants-0b1ce7ba', './Transforms-e2d4a55a', './combine-d9581036', './RuntimeError-ef395448', './EllipsoidTangentPlane-546c0d5e', './AxisAlignedBoundingBox-4bfd84f3', './IntersectionTests-85350792', './Plane-4c3d403b'], (function (AttributeCompression, Matrix3, Color, defaultValue, IndexDatatype, Math$1, OrientedBoundingBox, Matrix2, createTaskProcessorWorker, ComponentDatatype, Check, WebGLConstants, Transforms, combine, RuntimeError, EllipsoidTangentPlane, AxisAlignedBoundingBox, IntersectionTests, Plane) { 'use strict';
2
2
 
3
3
  const scratchCenter = new Matrix3.Cartesian3();
4
4
  const scratchEllipsoid = new Matrix3.Ellipsoid();
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  * Cesium - https://github.com/CesiumGS/cesium
4
- * Version 1.105.1
4
+ * Version 1.106
5
5
  *
6
6
  * Copyright 2011-2022 Cesium Contributors
7
7
  *
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  * Cesium - https://github.com/CesiumGS/cesium
4
- * Version 1.105.1
4
+ * Version 1.106
5
5
  *
6
6
  * Copyright 2011-2022 Cesium Contributors
7
7
  *
@@ -261,7 +261,7 @@ function ArcGISTiledElevationTerrainProvider(options) {
261
261
  if (defined(options.url)) {
262
262
  deprecationWarning(
263
263
  "ArcGISTiledElevationTerrainProvider options.url",
264
- "options.url was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ArcGISTiledElevationTerrainProvider.fromUrl instead."
264
+ "options.url was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use ArcGISTiledElevationTerrainProvider.fromUrl instead."
265
265
  );
266
266
 
267
267
  const that = this;
@@ -345,7 +345,7 @@ Object.defineProperties(ArcGISTiledElevationTerrainProvider.prototype, {
345
345
  get: function () {
346
346
  deprecationWarning(
347
347
  "ArcGISTiledElevationTerrainProvider.ready",
348
- "ArcGISTiledElevationTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ArcGISTiledElevationTerrainProvider.fromUrl instead."
348
+ "ArcGISTiledElevationTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use ArcGISTiledElevationTerrainProvider.fromUrl instead."
349
349
  );
350
350
  return this._ready;
351
351
  },
@@ -362,7 +362,7 @@ Object.defineProperties(ArcGISTiledElevationTerrainProvider.prototype, {
362
362
  get: function () {
363
363
  deprecationWarning(
364
364
  "ArcGISTiledElevationTerrainProvider.readyPromise",
365
- "ArcGISTiledElevationTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ArcGISTiledElevationTerrainProvider.fromUrl instead."
365
+ "ArcGISTiledElevationTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use ArcGISTiledElevationTerrainProvider.fromUrl instead."
366
366
  );
367
367
  return this._readyPromise;
368
368
  },
@@ -535,7 +535,7 @@ function CesiumTerrainProvider(options) {
535
535
  if (defined(options.url)) {
536
536
  deprecationWarning(
537
537
  "CesiumTerrainProvider options.url",
538
- "options.url was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use CesiumTerrainProvider.fromIonAssetId or CesiumTerrainProvider.fromUrl instead."
538
+ "options.url was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use CesiumTerrainProvider.fromIonAssetId or CesiumTerrainProvider.fromUrl instead."
539
539
  );
540
540
  this._readyPromise = CesiumTerrainProvider._initializeReadyPromise(
541
541
  options,
@@ -901,6 +901,8 @@ CesiumTerrainProvider.prototype.requestTileGeometry = function (
901
901
  const layers = this._layers;
902
902
  let layerToUse;
903
903
  const layerCount = layers.length;
904
+ let unknownAvailability = false;
905
+ let availabilityPromise = Promise.resolve();
904
906
 
905
907
  if (layerCount === 1) {
906
908
  // Optimized path for single layers
@@ -915,9 +917,32 @@ CesiumTerrainProvider.prototype.requestTileGeometry = function (
915
917
  layerToUse = layer;
916
918
  break;
917
919
  }
920
+
921
+ const availabilityUnloaded = checkLayer(
922
+ this,
923
+ x,
924
+ y,
925
+ level,
926
+ layer,
927
+ i === 0
928
+ );
929
+ if (availabilityUnloaded.result) {
930
+ // We can't know yet since the availability is not yet loaded
931
+ unknownAvailability = true;
932
+ availabilityPromise = availabilityPromise.then(
933
+ () => availabilityUnloaded.promise
934
+ );
935
+ }
918
936
  }
919
937
  }
920
938
 
939
+ if (!defined(layerToUse) && unknownAvailability) {
940
+ // Try again when availability data is ready– Otherwise the tile will be marked as failed and never re-requested
941
+ return availabilityPromise.then(() =>
942
+ this.requestTileGeometry(x, y, level, request)
943
+ );
944
+ }
945
+
921
946
  return requestTileGeometry(this, x, y, level, layerToUse, request);
922
947
  };
923
948
 
@@ -1062,7 +1087,7 @@ Object.defineProperties(CesiumTerrainProvider.prototype, {
1062
1087
  get: function () {
1063
1088
  deprecationWarning(
1064
1089
  "CesiumTerrainProvider.ready",
1065
- "CesiumTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use CesiumTerrainProvider.fromIonAssetId or CesiumTerrainProvider.fromUrl instead."
1090
+ "CesiumTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use CesiumTerrainProvider.fromIonAssetId or CesiumTerrainProvider.fromUrl instead."
1066
1091
  );
1067
1092
  return this._ready;
1068
1093
  },
@@ -1079,7 +1104,7 @@ Object.defineProperties(CesiumTerrainProvider.prototype, {
1079
1104
  get: function () {
1080
1105
  deprecationWarning(
1081
1106
  "CesiumTerrainProvider.readyPromise",
1082
- "CesiumTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use CesiumTerrainProvider.fromIonAssetId or CesiumTerrainProvider.fromUrl instead."
1107
+ "CesiumTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use CesiumTerrainProvider.fromIonAssetId or CesiumTerrainProvider.fromUrl instead."
1083
1108
  );
1084
1109
  return this._readyPromise;
1085
1110
  },
@@ -352,9 +352,9 @@ const rgbaMatcher = /^#([0-9a-f])([0-9a-f])([0-9a-f])([0-9a-f])?$/i;
352
352
  //#rrggbbaa
353
353
  const rrggbbaaMatcher = /^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})?$/i;
354
354
  //rgb(), rgba(), or rgb%()
355
- const rgbParenthesesMatcher = /^rgba?\(\s*([0-9.]+%?)\s*,\s*([0-9.]+%?)\s*,\s*([0-9.]+%?)(?:\s*,\s*([0-9.]+))?\s*\)$/i;
355
+ const rgbParenthesesMatcher = /^rgba?\s*\(\s*([0-9.]+%?)\s*[,\s]+\s*([0-9.]+%?)\s*[,\s]+\s*([0-9.]+%?)(?:\s*[,\s/]+\s*([0-9.]+))?\s*\)$/i;
356
356
  //hsl() or hsla()
357
- const hslParenthesesMatcher = /^hsla?\(\s*([0-9.]+)\s*,\s*([0-9.]+%)\s*,\s*([0-9.]+%)(?:\s*,\s*([0-9.]+))?\s*\)$/i;
357
+ const hslParenthesesMatcher = /^hsla?\s*\(\s*([0-9.]+)\s*[,\s]+\s*([0-9.]+%)\s*[,\s]+\s*([0-9.]+%)(?:\s*[,\s/]+\s*([0-9.]+))?\s*\)$/i;
358
358
 
359
359
  /**
360
360
  * Creates a Color instance from a CSS color value.
@@ -379,8 +379,8 @@ Color.fromCssColorString = function (color, result) {
379
379
  result = new Color();
380
380
  }
381
381
 
382
- // Remove all whitespaces from the color string
383
- color = color.replace(/\s/g, "");
382
+ // Remove all surrounding whitespaces from the color string
383
+ color = color.trim();
384
384
 
385
385
  const namedColor = Color[color.toUpperCase()];
386
386
  if (defined(namedColor)) {
@@ -145,7 +145,7 @@ Object.defineProperties(CustomHeightmapTerrainProvider.prototype, {
145
145
  get: function () {
146
146
  deprecationWarning(
147
147
  "CustomHeightmapTerrainProvider.ready",
148
- "CustomHeightmapTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107."
148
+ "CustomHeightmapTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107."
149
149
  );
150
150
  return true;
151
151
  },
@@ -162,7 +162,7 @@ Object.defineProperties(CustomHeightmapTerrainProvider.prototype, {
162
162
  get: function () {
163
163
  deprecationWarning(
164
164
  "CustomHeightmapTerrainProvider.readyPromise",
165
- "CustomHeightmapTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107."
165
+ "CustomHeightmapTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107."
166
166
  );
167
167
  return this._readyPromise;
168
168
  },
@@ -98,7 +98,7 @@ Object.defineProperties(EllipsoidTerrainProvider.prototype, {
98
98
  get: function () {
99
99
  deprecationWarning(
100
100
  "EllipsoidTerrainProvider.ready",
101
- "EllipsoidTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107."
101
+ "EllipsoidTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107."
102
102
  );
103
103
  return true;
104
104
  },
@@ -115,7 +115,7 @@ Object.defineProperties(EllipsoidTerrainProvider.prototype, {
115
115
  get: function () {
116
116
  deprecationWarning(
117
117
  "EllipsoidTerrainProvider.readyPromise",
118
- "EllipsoidTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107."
118
+ "EllipsoidTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107."
119
119
  );
120
120
  return this._readyPromise;
121
121
  },
@@ -105,7 +105,7 @@ function GoogleEarthEnterpriseMetadata(resourceOrUrl) {
105
105
  if (defined(resourceOrUrl)) {
106
106
  deprecationWarning(
107
107
  "GoogleEarthEnterpriseMetadata options.url",
108
- "GoogleEarthEnterpriseMetadata constructor parmeter resourceOrUrl was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use GoogleEarthEnterpriseMetadata.fromUrl instead."
108
+ "GoogleEarthEnterpriseMetadata constructor parmeter resourceOrUrl was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use GoogleEarthEnterpriseMetadata.fromUrl instead."
109
109
  );
110
110
 
111
111
  let url = resourceOrUrl;
@@ -183,7 +183,7 @@ Object.defineProperties(GoogleEarthEnterpriseMetadata.prototype, {
183
183
  get: function () {
184
184
  deprecationWarning(
185
185
  "GoogleEarthEnterpriseMetadata.readyPromise",
186
- "GoogleEarthEnterpriseMetadata.readyPromise was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use GoogleEarthEnterpriseMetadata.fromUrl instead."
186
+ "GoogleEarthEnterpriseMetadata.readyPromise was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use GoogleEarthEnterpriseMetadata.fromUrl instead."
187
187
  );
188
188
  return this._readyPromise;
189
189
  },
@@ -135,7 +135,7 @@ function GoogleEarthEnterpriseTerrainProvider(options) {
135
135
  if (defined(options.url)) {
136
136
  deprecationWarning(
137
137
  "GoogleEarthEnterpriseTerrainProvider options.url",
138
- "options.url was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use GoogleEarthEnterpriseTerrainProvider.fromMetadata instead."
138
+ "options.url was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use GoogleEarthEnterpriseTerrainProvider.fromMetadata instead."
139
139
  );
140
140
  const resource = Resource.createIfNeeded(options.url);
141
141
  const that = this;
@@ -172,7 +172,7 @@ function GoogleEarthEnterpriseTerrainProvider(options) {
172
172
  } else if (defined(options.metadata)) {
173
173
  deprecationWarning(
174
174
  "GoogleEarthEnterpriseTerrainProvider options.metadata",
175
- "options.metadata was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use GoogleEarthEnterpriseTerrainProvider.fromMetadata instead."
175
+ "options.metadata was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use GoogleEarthEnterpriseTerrainProvider.fromMetadata instead."
176
176
  );
177
177
  const metadata = options.metadata;
178
178
  this._metadata = metadata;
@@ -253,7 +253,7 @@ Object.defineProperties(GoogleEarthEnterpriseTerrainProvider.prototype, {
253
253
  get: function () {
254
254
  deprecationWarning(
255
255
  "GoogleEarthEnterpriseTerrainProvider.ready",
256
- "GoogleEarthEnterpriseTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107."
256
+ "GoogleEarthEnterpriseTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107."
257
257
  );
258
258
  return this._ready;
259
259
  },
@@ -270,7 +270,7 @@ Object.defineProperties(GoogleEarthEnterpriseTerrainProvider.prototype, {
270
270
  get: function () {
271
271
  deprecationWarning(
272
272
  "GoogleEarthEnterpriseTerrainProvider.readyPromise",
273
- "GoogleEarthEnterpriseTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107."
273
+ "GoogleEarthEnterpriseTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107."
274
274
  );
275
275
  return this._readyPromise;
276
276
  },
@@ -3,7 +3,7 @@ import defined from "./defined.js";
3
3
  import Resource from "./Resource.js";
4
4
 
5
5
  let defaultKeyCredit;
6
- const defaultKey = "AIzaSyBESBYnp1EcqtlAcjMTJ65GjUsJtaCWVXA";
6
+ const defaultKey = "AIzaSyBqCv5lozjjhtIQ_pZuj2obyAL9bTJdY28";
7
7
 
8
8
  /**
9
9
  * Default settings for accessing the Google Maps API.
@@ -4,7 +4,8 @@ import Resource from "./Resource.js";
4
4
 
5
5
  let defaultTokenCredit;
6
6
  const defaultAccessToken =
7
- "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiIwZWQ3OWFlZC1kOTg3LTRlZjctYTAyYy0xNjFmODE1MWE2NGUiLCJpZCI6MjU5LCJpYXQiOjE2ODI5NDYzODh9.DEH4GpqliH-xsDE7h-ZCICtHgnGu32wdSjt4hFqw7lU";
7
+ "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJmYmE2YWEzOS1lZDUyLTQ0YWMtOTlkNS0wN2VhZWI3NTc4MmEiLCJpZCI6MjU5LCJpYXQiOjE2ODU2MzQ0Njl9.AswCMxsN03WYwuZL-r183OZicN64Ks9aPExWhA3fuLY";
8
+
8
9
  /**
9
10
  * Default settings for accessing the Cesium ion API.
10
11
  *
@@ -185,7 +185,7 @@ function VRTheWorldTerrainProvider(options) {
185
185
  if (defined(options.url)) {
186
186
  deprecationWarning(
187
187
  "VRTheWorldTerrainProvider options.url",
188
- "options.url was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. VRTheWorldTerrainProvider.fromUrl instead."
188
+ "options.url was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. VRTheWorldTerrainProvider.fromUrl instead."
189
189
  );
190
190
  const that = this;
191
191
  const terrainProviderBuilder = new TerrainProviderBuilder(options);
@@ -255,7 +255,7 @@ Object.defineProperties(VRTheWorldTerrainProvider.prototype, {
255
255
  get: function () {
256
256
  deprecationWarning(
257
257
  "VRTheWorldTerrainProvider.ready",
258
- "VRTheWorldTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use VRTheWorldTerrainProvider.fromUrl instead."
258
+ "VRTheWorldTerrainProvider.ready was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use VRTheWorldTerrainProvider.fromUrl instead."
259
259
  );
260
260
  return this._ready;
261
261
  },
@@ -272,7 +272,7 @@ Object.defineProperties(VRTheWorldTerrainProvider.prototype, {
272
272
  get: function () {
273
273
  deprecationWarning(
274
274
  "VRTheWorldTerrainProvider.readyPromise",
275
- "VRTheWorldTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use VRTheWorldTerrainProvider.fromUrl instead."
275
+ "VRTheWorldTerrainProvider.readyPromise was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use VRTheWorldTerrainProvider.fromUrl instead."
276
276
  );
277
277
  return this._readyPromise;
278
278
  },
@@ -7,6 +7,7 @@ import IonResource from "./IonResource.js";
7
7
  * Creates a {@link CesiumTerrainProvider} instance for the {@link https://cesium.com/content/#cesium-world-terrain|Cesium World Terrain}.
8
8
  *
9
9
  * @function
10
+ * @deprecated
10
11
  *
11
12
  * @param {object} [options] Object with the following properties:
12
13
  * @param {boolean} [options.requestVertexNormals=false] Flag that indicates if the client should request additional lighting information from the server if available.
@@ -34,7 +35,7 @@ import IonResource from "./IonResource.js";
34
35
  function createWorldTerrain(options) {
35
36
  deprecationWarning(
36
37
  "createWorldTerrain",
37
- "createWorldTerrain was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use createWorldTerrainAsync instead."
38
+ "createWorldTerrain was deprecated in CesiumJS 1.104. It will be removed in CesiumJS 1.107. Use createWorldTerrainAsync instead."
38
39
  );
39
40
 
40
41
  options = defaultValue(options, defaultValue.EMPTY_OBJECT);
@@ -43,7 +43,11 @@ async function sampleTerrain(terrainProvider, level, positions) {
43
43
  //>>includeEnd('debug');
44
44
 
45
45
  // readyPromise has been deprecated; This is here for backwards compatibility
46
- await terrainProvider._readyPromise;
46
+ if (defined(terrainProvider._readyPromise)) {
47
+ await terrainProvider._readyPromise;
48
+ } else if (defined(terrainProvider.readyPromise)) {
49
+ await terrainProvider.readyPromise;
50
+ }
47
51
 
48
52
  return doSampling(terrainProvider, level, positions);
49
53
  }
@@ -40,7 +40,11 @@ async function sampleTerrainMostDetailed(terrainProvider, positions) {
40
40
  const maxLevels = [];
41
41
 
42
42
  // readyPromise has been deprecated; This is here for backwards compatibility
43
- await terrainProvider._readyPromise;
43
+ if (defined(terrainProvider._readyPromise)) {
44
+ await terrainProvider._readyPromise;
45
+ } else if (defined(terrainProvider.readyPromise)) {
46
+ await terrainProvider.readyPromise;
47
+ }
44
48
 
45
49
  const availability = terrainProvider.availability;
46
50
 
@@ -499,12 +499,13 @@ DataSourceDisplay.prototype._onDataSourceMoved = function (
499
499
  * @callback DataSourceDisplay.VisualizersCallback
500
500
  *
501
501
  * @param {Scene} scene The scene to create visualizers for.
502
+ * @param {EntityCluster} entityCluster The entity cluster to create visualizers for.
502
503
  * @param {DataSource} dataSource The data source to create visualizers for.
503
504
  * @returns {Visualizer[]} An array of visualizers used for visualization.
504
505
  *
505
506
  * @example
506
- * function createVisualizers(scene, dataSource) {
507
- * return [new Cesium.BillboardVisualizer(scene, dataSource.entities)];
507
+ * function createVisualizers(scene, entityCluster, dataSource) {
508
+ * return [new Cesium.BillboardVisualizer(entityCluster, dataSource.entities)];
508
509
  * }
509
510
  */
510
511
  export default DataSourceDisplay;
@@ -637,13 +637,12 @@ const positionScratch = new Cartesian3();
637
637
  const orientationScratch = new Quaternion();
638
638
 
639
639
  /**
640
- * Computes the model matrix for the entity's transform at specified time. Returns undefined if orientation or position
641
- * are undefined.
640
+ * Computes the model matrix for the entity's transform at specified time. Returns undefined if position is undefined
642
641
  *
643
642
  * @param {JulianDate} time The time to retrieve model matrix for.
644
643
  * @param {Matrix4} [result] The object onto which to store the result.
645
644
  *
646
- * @returns {Matrix4} The modified result parameter or a new Matrix4 instance if one was not provided. Result is undefined if position or orientation are undefined.
645
+ * @returns {Matrix4} The modified result parameter or a new Matrix4 instance if one was not provided. Result is undefined if position is undefined.
647
646
  */
648
647
  Entity.prototype.computeModelMatrix = function (time, result) {
649
648
  //>>includeStart('debug', pragmas.debug);
@@ -454,7 +454,12 @@ ModelVisualizer.prototype.getBoundingSphere = function (entity, result) {
454
454
  // We cannot query the availability of the terrain provider till its ready, so the
455
455
  // bounding sphere state will remain pending till the terrain provider is ready.
456
456
  // ready is deprecated. This is here for backwards compatibility
457
- if (!terrainProvider._ready) {
457
+ if (
458
+ defined(terrainProvider) &&
459
+ (defined(terrainProvider._ready)
460
+ ? !terrainProvider._ready
461
+ : defined(terrainProvider.ready) && !terrainProvider.ready)
462
+ ) {
458
463
  return BoundingSphereState.PENDING;
459
464
  }
460
465
 
@@ -56,6 +56,9 @@ function demodernizeShader(input, isFragmentShader) {
56
56
  // Replace gl_FragDepth with gl_FragDepthEXT.
57
57
  output = output.replaceAll(/gl_FragDepth/g, `gl_FragDepthEXT`);
58
58
  }
59
+
60
+ // Enable the OES_standard_derivatives extension
61
+ output = `#ifdef GL_OES_standard_derivatives\n#extension GL_OES_standard_derivatives : enable\n#endif\n${output}`;
59
62
  } else {
60
63
  // Replace the in with attribute.
61
64
  output = output.replaceAll(/(in)\s+(vec\d|mat\d|float)/g, `attribute $2`);