@vertexvis/stream-api 0.24.3-canary.1 → 0.24.3-canary.2

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.
@@ -48838,6 +48838,119 @@ function parseEpochMillis(millis) {
48838
48838
  return { seconds: seconds * (millis < 0 ? -1 : 1), nanos: nanos };
48839
48839
  }
48840
48840
 
48841
+ function validateBoundingBox(boundingBox) {
48842
+ var boundingBoxXMaxValid = (boundingBox === null || boundingBox === void 0 ? void 0 : boundingBox.xmax) != null && Number.isFinite(boundingBox.xmax);
48843
+ var boundingBoxXMinValid = (boundingBox === null || boundingBox === void 0 ? void 0 : boundingBox.xmin) != null && Number.isFinite(boundingBox.xmin);
48844
+ var boundingBoxYMaxValid = (boundingBox === null || boundingBox === void 0 ? void 0 : boundingBox.ymax) != null && Number.isFinite(boundingBox.ymax);
48845
+ var boundingBoxYMinValid = (boundingBox === null || boundingBox === void 0 ? void 0 : boundingBox.ymin) != null && Number.isFinite(boundingBox.ymin);
48846
+ var boundingBoxZMaxValid = (boundingBox === null || boundingBox === void 0 ? void 0 : boundingBox.zmax) != null && Number.isFinite(boundingBox.zmax);
48847
+ var boundingBoxZMinValid = (boundingBox === null || boundingBox === void 0 ? void 0 : boundingBox.zmin) != null && Number.isFinite(boundingBox.zmin);
48848
+ return (boundingBoxXMaxValid &&
48849
+ boundingBoxXMinValid &&
48850
+ boundingBoxYMaxValid &&
48851
+ boundingBoxYMinValid &&
48852
+ boundingBoxZMaxValid &&
48853
+ boundingBoxZMinValid);
48854
+ }
48855
+ function validateCamera(camera) {
48856
+ // If a perspective camera is provided, verify it is valid
48857
+ if (camera.perspective != null) {
48858
+ var perspectiveCameraIsValid = validatePerspectiveCamera(camera.perspective);
48859
+ return perspectiveCameraIsValid;
48860
+ }
48861
+ // If an orthographic camera is provided, verify it is valid
48862
+ if (camera.orthographic != null) {
48863
+ var orthographicCameraIsValid = validateOrthographicCamera(camera.orthographic);
48864
+ return orthographicCameraIsValid;
48865
+ }
48866
+ return false;
48867
+ }
48868
+ function validatePerspectiveCamera(camera) {
48869
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
48870
+ var lookAtXValid = ((_a = camera.lookAt) === null || _a === void 0 ? void 0 : _a.x) != null && Number.isFinite(camera.lookAt.x);
48871
+ var lookAtYValid = ((_b = camera.lookAt) === null || _b === void 0 ? void 0 : _b.y) != null && Number.isFinite(camera.lookAt.y);
48872
+ var lookAtZValid = ((_c = camera.lookAt) === null || _c === void 0 ? void 0 : _c.z) != null && Number.isFinite(camera.lookAt.z);
48873
+ var positionXValid = ((_d = camera.position) === null || _d === void 0 ? void 0 : _d.x) != null && Number.isFinite(camera.position.x);
48874
+ var positionYValid = ((_e = camera.position) === null || _e === void 0 ? void 0 : _e.y) != null && Number.isFinite(camera.position.y);
48875
+ var positionZValid = ((_f = camera.position) === null || _f === void 0 ? void 0 : _f.z) != null && Number.isFinite(camera.position.z);
48876
+ var upXValid = ((_g = camera.up) === null || _g === void 0 ? void 0 : _g.x) != null && Number.isFinite(camera.up.x);
48877
+ var upYValid = ((_h = camera.up) === null || _h === void 0 ? void 0 : _h.y) != null && Number.isFinite(camera.up.y);
48878
+ var upZValid = ((_j = camera.up) === null || _j === void 0 ? void 0 : _j.z) != null && Number.isFinite(camera.up.z);
48879
+ // Validate up vector has non-zero length
48880
+ var upVectorValid = validateVector({ x: (_k = camera === null || camera === void 0 ? void 0 : camera.up) === null || _k === void 0 ? void 0 : _k.x, y: (_l = camera === null || camera === void 0 ? void 0 : camera.up) === null || _l === void 0 ? void 0 : _l.y, z: (_m = camera === null || camera === void 0 ? void 0 : camera.up) === null || _m === void 0 ? void 0 : _m.z }, true);
48881
+ return (lookAtXValid &&
48882
+ lookAtYValid &&
48883
+ lookAtZValid &&
48884
+ positionXValid &&
48885
+ positionYValid &&
48886
+ positionZValid &&
48887
+ upXValid &&
48888
+ upYValid &&
48889
+ upZValid &&
48890
+ upVectorValid);
48891
+ }
48892
+ function validateOrthographicCamera(camera) {
48893
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
48894
+ var fovHeightValid = camera.fovHeight != null && Number.isFinite(camera.fovHeight);
48895
+ var lookAtXValid = ((_a = camera.lookAt) === null || _a === void 0 ? void 0 : _a.x) != null && Number.isFinite(camera.lookAt.x);
48896
+ var lookAtYValid = ((_b = camera.lookAt) === null || _b === void 0 ? void 0 : _b.y) != null && Number.isFinite(camera.lookAt.y);
48897
+ var lookAtZValid = ((_c = camera.lookAt) === null || _c === void 0 ? void 0 : _c.z) != null && Number.isFinite(camera.lookAt.z);
48898
+ var upXValid = ((_d = camera.up) === null || _d === void 0 ? void 0 : _d.x) != null && Number.isFinite(camera.up.x);
48899
+ var upYValid = ((_e = camera.up) === null || _e === void 0 ? void 0 : _e.y) != null && Number.isFinite(camera.up.y);
48900
+ var upZValid = ((_f = camera.up) === null || _f === void 0 ? void 0 : _f.z) != null && Number.isFinite(camera.up.z);
48901
+ var viewVectorXValid = ((_g = camera.viewVector) === null || _g === void 0 ? void 0 : _g.x) != null && Number.isFinite(camera.viewVector.x);
48902
+ var viewVectorYValid = ((_h = camera.viewVector) === null || _h === void 0 ? void 0 : _h.y) != null && Number.isFinite(camera.viewVector.y);
48903
+ var viewVectorZValid = ((_j = camera.viewVector) === null || _j === void 0 ? void 0 : _j.z) != null && Number.isFinite(camera.viewVector.z);
48904
+ // Validate up vector has non-zero length
48905
+ var upVectorValid = validateVector({ x: (_k = camera === null || camera === void 0 ? void 0 : camera.up) === null || _k === void 0 ? void 0 : _k.x, y: (_l = camera === null || camera === void 0 ? void 0 : camera.up) === null || _l === void 0 ? void 0 : _l.y, z: (_m = camera === null || camera === void 0 ? void 0 : camera.up) === null || _m === void 0 ? void 0 : _m.z }, true);
48906
+ return (fovHeightValid &&
48907
+ lookAtXValid &&
48908
+ lookAtYValid &&
48909
+ lookAtZValid &&
48910
+ viewVectorXValid &&
48911
+ viewVectorYValid &&
48912
+ viewVectorZValid &&
48913
+ upXValid &&
48914
+ upYValid &&
48915
+ upZValid &&
48916
+ upVectorValid);
48917
+ }
48918
+ function validateDimensions(dimensions) {
48919
+ var heightValid = (dimensions === null || dimensions === void 0 ? void 0 : dimensions.height) != null &&
48920
+ Number.isFinite(dimensions.height) &&
48921
+ dimensions.height > 0;
48922
+ var widthValid = (dimensions === null || dimensions === void 0 ? void 0 : dimensions.width) != null &&
48923
+ Number.isFinite(dimensions.width) &&
48924
+ dimensions.width > 0;
48925
+ return heightValid && widthValid;
48926
+ }
48927
+ function validateNumber(number) {
48928
+ return number != null && Number.isFinite(number);
48929
+ }
48930
+ function validatePoint(point) {
48931
+ var xValid = (point === null || point === void 0 ? void 0 : point.x) != null && Number.isFinite(point.x);
48932
+ var yValid = (point === null || point === void 0 ? void 0 : point.y) != null && Number.isFinite(point.y);
48933
+ return xValid && yValid;
48934
+ }
48935
+ function validateVector(vector, verifyNonZeroLength) {
48936
+ var xValid = (vector === null || vector === void 0 ? void 0 : vector.x) != null && Number.isFinite(vector.x);
48937
+ var yValid = (vector === null || vector === void 0 ? void 0 : vector.y) != null && Number.isFinite(vector.y);
48938
+ var zValid = (vector === null || vector === void 0 ? void 0 : vector.z) != null && Number.isFinite(vector.z);
48939
+ var vectorComponentsValid = xValid && yValid && zValid;
48940
+ if (verifyNonZeroLength) {
48941
+ if ((vector === null || vector === void 0 ? void 0 : vector.x) != null && (vector === null || vector === void 0 ? void 0 : vector.y) != null && (vector === null || vector === void 0 ? void 0 : vector.z) != null) {
48942
+ var vectorMagnitudeSquared = vector.x * vector.x + vector.y * vector.y + vector.z * vector.z;
48943
+ var vectorHasNonZeroLength = vectorMagnitudeSquared !== 0;
48944
+ return vectorComponentsValid && vectorHasNonZeroLength;
48945
+ }
48946
+ else {
48947
+ // If one or more components are undefined, then the vector does not have non-zero length
48948
+ return false;
48949
+ }
48950
+ }
48951
+ return vectorComponentsValid;
48952
+ }
48953
+
48841
48954
  var WebSocketClientImpl = /** @class */ (function () {
48842
48955
  function WebSocketClientImpl() {
48843
48956
  var _this = this;
@@ -49080,6 +49193,14 @@ var StreamApi = /** @class */ (function () {
49080
49193
  */
49081
49194
  StreamApi.prototype.replaceCamera = function (payload, withResponse) {
49082
49195
  if (withResponse === void 0) { withResponse = true; }
49196
+ // If a camera is provided, verify it is valid
49197
+ if (payload.camera != null) {
49198
+ var cameraIsValid = validateCamera(payload.camera);
49199
+ if (!cameraIsValid) {
49200
+ console.warn('Invalid camera provided. Canceling replaceCamera operation.');
49201
+ return Promise.resolve({});
49202
+ }
49203
+ }
49083
49204
  return this.sendRequest({ updateCamera: payload }, withResponse);
49084
49205
  };
49085
49206
  /**
@@ -49099,6 +49220,30 @@ var StreamApi = /** @class */ (function () {
49099
49220
  */
49100
49221
  StreamApi.prototype.flyTo = function (payload, withResponse) {
49101
49222
  if (withResponse === void 0) { withResponse = true; }
49223
+ // If a bounding box is provided, verify it is valid
49224
+ if (payload.boundingBox != null) {
49225
+ var validBoundingBox = validateBoundingBox(payload.boundingBox);
49226
+ if (!validBoundingBox) {
49227
+ console.warn('Invalid bounding box provided. Canceling flyTo operation.');
49228
+ return Promise.resolve({});
49229
+ }
49230
+ }
49231
+ // If a camera is provided, verify it is valid
49232
+ if (payload.camera != null) {
49233
+ var cameraIsValid = validateCamera(payload.camera);
49234
+ if (!cameraIsValid) {
49235
+ console.warn('Invalid camera provided. Canceling flyTo operation.');
49236
+ return Promise.resolve({});
49237
+ }
49238
+ }
49239
+ // If a base camera is provided, verify it is valid
49240
+ if (payload.baseCamera != null) {
49241
+ var baseCameraIsValid = validateCamera(payload.baseCamera);
49242
+ if (!baseCameraIsValid) {
49243
+ console.warn('Invalid base camera provided. Canceling flyTo operation.');
49244
+ return Promise.resolve({});
49245
+ }
49246
+ }
49102
49247
  return this.sendRequest({ flyTo: payload }, withResponse);
49103
49248
  };
49104
49249
  /**
@@ -49134,6 +49279,14 @@ var StreamApi = /** @class */ (function () {
49134
49279
  */
49135
49280
  StreamApi.prototype.updateDimensions = function (payload, withResponse) {
49136
49281
  if (withResponse === void 0) { withResponse = true; }
49282
+ // Verify the provided dimensions are valid
49283
+ if (payload.dimensions != null) {
49284
+ var validDimensions = validateDimensions(payload.dimensions);
49285
+ if (!validDimensions) {
49286
+ console.warn('Invalid dimensions provided. Canceling updateDimensions operation.');
49287
+ return Promise.resolve({});
49288
+ }
49289
+ }
49137
49290
  return this.sendRequest({ updateDimensions: payload }, withResponse);
49138
49291
  };
49139
49292
  /**
@@ -49153,7 +49306,18 @@ var StreamApi = /** @class */ (function () {
49153
49306
  * Defaults to `true`.
49154
49307
  */
49155
49308
  StreamApi.prototype.updateCrossSectioning = function (payload, withResponse) {
49309
+ var _a, _b;
49156
49310
  if (withResponse === void 0) { withResponse = true; }
49311
+ // If a section plane is provided, verify it is valid
49312
+ var invalidSectionPlane = (_b = (_a = payload.crossSectioning) === null || _a === void 0 ? void 0 : _a.sectionPlanes) === null || _b === void 0 ? void 0 : _b.some(function (plane) {
49313
+ var validNormal = plane.normal != null && validateVector(plane.normal, true);
49314
+ var validOffset = plane.offset != null && validateNumber(plane.offset);
49315
+ return !validNormal || !validOffset;
49316
+ });
49317
+ if (invalidSectionPlane) {
49318
+ console.warn('Invalid cross section plane provided. Canceling updateCrossSectioning operation.');
49319
+ return Promise.resolve({});
49320
+ }
49157
49321
  return this.sendRequest({ updateCrossSectioning: payload }, withResponse);
49158
49322
  };
49159
49323
  /**
@@ -49189,6 +49353,14 @@ var StreamApi = /** @class */ (function () {
49189
49353
  */
49190
49354
  StreamApi.prototype.hitItems = function (payload, withResponse) {
49191
49355
  if (withResponse === void 0) { withResponse = true; }
49356
+ // If a point is provided, verify it is valid
49357
+ if (payload.point != null) {
49358
+ var validPoint = validatePoint(payload.point);
49359
+ if (!validPoint) {
49360
+ console.warn('Invalid point provided. Canceling hitItems operation.');
49361
+ return Promise.resolve({});
49362
+ }
49363
+ }
49192
49364
  return this.sendRequest({ hitItems: payload }, withResponse);
49193
49365
  };
49194
49366
  /**