@itwin/ecschema-rpcinterface-tests 3.3.0-dev.35 → 3.3.0-dev.38

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.
@@ -197815,7 +197815,7 @@ SetupWalkCameraTool.iconSpec = "icon-camera-location";
197815
197815
  /*! exports provided: name, version, description, main, module, typings, license, scripts, repository, keywords, author, peerDependencies, //devDependencies, devDependencies, //dependencies, dependencies, nyc, eslintConfig, default */
197816
197816
  /***/ (function(module) {
197817
197817
 
197818
- module.exports = JSON.parse("{\"name\":\"@itwin/core-frontend\",\"version\":\"3.3.0-dev.35\",\"description\":\"iTwin.js frontend components\",\"main\":\"lib/cjs/core-frontend.js\",\"module\":\"lib/esm/core-frontend.js\",\"typings\":\"lib/cjs/core-frontend\",\"license\":\"MIT\",\"scripts\":{\"build\":\"npm run -s copy:public && npm run -s build:cjs\",\"build:ci\":\"npm run -s build && npm run -s build:esm\",\"build:cjs\":\"tsc 1>&2 --outDir lib/cjs\",\"build:esm\":\"tsc 1>&2 --module ES2020 --outDir lib/esm\",\"clean\":\"rimraf lib .rush/temp/package-deps*.json\",\"copy:public\":\"cpx \\\"./src/public/**/*\\\" ./lib/public\",\"docs\":\"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/primitives,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts\",\"extract-api\":\"betools extract-api --entry=core-frontend && npm run extract-extension-api\",\"extract-extension-api\":\"eslint --no-eslintrc -c \\\"../../tools/eslint-plugin/dist/configs/extension-exports-config.js\\\" \\\"./src/**/*.ts\\\" 1>&2\",\"lint\":\"eslint -f visualstudio \\\"./src/**/*.ts\\\" 1>&2\",\"pseudolocalize\":\"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO\",\"test\":\"npm run -s webpackTests && certa -r chrome\",\"cover\":\"npm -s test\",\"test:debug\":\"certa -r chrome --debug\",\"webpackTests\":\"webpack --config ./src/test/utils/webpack.config.js 1>&2\"},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/iTwin/itwinjs-core/tree/master/core/frontend\"},\"keywords\":[\"Bentley\",\"BIM\",\"iModel\",\"digital-twin\",\"iTwin\"],\"author\":{\"name\":\"Bentley Systems, Inc.\",\"url\":\"http://www.bentley.com\"},\"peerDependencies\":{\"@itwin/appui-abstract\":\"workspace:^3.3.0-dev.35\",\"@itwin/core-bentley\":\"workspace:^3.3.0-dev.35\",\"@itwin/core-common\":\"workspace:^3.3.0-dev.35\",\"@itwin/core-geometry\":\"workspace:^3.3.0-dev.35\",\"@itwin/core-orbitgt\":\"workspace:^3.3.0-dev.35\",\"@itwin/core-quantity\":\"workspace:^3.3.0-dev.35\",\"@itwin/webgl-compatibility\":\"workspace:^3.3.0-dev.35\"},\"//devDependencies\":[\"NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install\",\"NOTE: All tools used by scripts in this package must be listed as devDependencies\"],\"devDependencies\":{\"@itwin/appui-abstract\":\"workspace:*\",\"@itwin/build-tools\":\"workspace:*\",\"@itwin/core-bentley\":\"workspace:*\",\"@itwin/core-common\":\"workspace:*\",\"@itwin/core-geometry\":\"workspace:*\",\"@itwin/core-orbitgt\":\"workspace:*\",\"@itwin/core-quantity\":\"workspace:*\",\"@itwin/certa\":\"workspace:*\",\"@itwin/eslint-plugin\":\"workspace:*\",\"@itwin/webgl-compatibility\":\"workspace:*\",\"@types/chai\":\"^4.1.4\",\"@types/chai-as-promised\":\"^7\",\"@types/deep-assign\":\"^0.1.0\",\"@types/lodash\":\"^4.14.0\",\"@types/mocha\":\"^8.2.2\",\"@types/node\":\"16.11.7\",\"@types/qs\":\"^6.5.0\",\"@types/semver\":\"^5.5.0\",\"@types/superagent\":\"^4.1.14\",\"@types/sinon\":\"^9.0.0\",\"chai\":\"^4.1.2\",\"chai-as-promised\":\"^7\",\"cpx2\":\"^3.0.0\",\"eslint\":\"^7.11.0\",\"glob\":\"^7.1.2\",\"mocha\":\"^10.0.0\",\"nyc\":\"^15.1.0\",\"rimraf\":\"^3.0.2\",\"sinon\":\"^9.0.2\",\"source-map-loader\":\"^1.0.0\",\"typescript\":\"~4.4.0\",\"webpack\":\"4.42.0\"},\"//dependencies\":[\"NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API\",\"NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed\"],\"dependencies\":{\"@itwin/core-i18n\":\"workspace:*\",\"@itwin/core-telemetry\":\"workspace:*\",\"@loaders.gl/core\":\"^3.1.6\",\"@loaders.gl/draco\":\"^3.1.6\",\"deep-assign\":\"^2.0.0\",\"fuse.js\":\"^3.3.0\",\"lodash\":\"^4.17.10\",\"qs\":\"^6.5.1\",\"semver\":\"^5.5.0\",\"superagent\":\"^7.0.1\",\"wms-capabilities\":\"0.4.0\",\"xml-js\":\"~1.6.11\"},\"nyc\":{\"extends\":\"./node_modules/@itwin/build-tools/.nycrc\"},\"eslintConfig\":{\"plugins\":[\"@itwin\"],\"extends\":\"plugin:@itwin/itwinjs-recommended\",\"rules\":{\"@itwin/no-internal-barrel-imports\":[\"error\",{\"required-barrel-modules\":[\"./src/tile/internal.ts\"]}],\"@itwin/public-extension-exports\":[\"error\",{\"releaseTags\":[\"public\",\"preview\"],\"outputApiFile\":false}]},\"overrides\":[{\"files\":[\"*.test.ts\",\"*.test.tsx\",\"**/test/**/*.ts\"],\"rules\":{\"@itwin/no-internal-barrel-imports\":\"off\"}}]}}");
197818
+ module.exports = JSON.parse("{\"name\":\"@itwin/core-frontend\",\"version\":\"3.3.0-dev.38\",\"description\":\"iTwin.js frontend components\",\"main\":\"lib/cjs/core-frontend.js\",\"module\":\"lib/esm/core-frontend.js\",\"typings\":\"lib/cjs/core-frontend\",\"license\":\"MIT\",\"scripts\":{\"build\":\"npm run -s copy:public && npm run -s build:cjs\",\"build:ci\":\"npm run -s build && npm run -s build:esm\",\"build:cjs\":\"tsc 1>&2 --outDir lib/cjs\",\"build:esm\":\"tsc 1>&2 --module ES2020 --outDir lib/esm\",\"clean\":\"rimraf lib .rush/temp/package-deps*.json\",\"copy:public\":\"cpx \\\"./src/public/**/*\\\" ./lib/public\",\"docs\":\"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/primitives,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts\",\"extract-api\":\"betools extract-api --entry=core-frontend && npm run extract-extension-api\",\"extract-extension-api\":\"eslint --no-eslintrc -c \\\"../../tools/eslint-plugin/dist/configs/extension-exports-config.js\\\" \\\"./src/**/*.ts\\\" 1>&2\",\"lint\":\"eslint -f visualstudio \\\"./src/**/*.ts\\\" 1>&2\",\"pseudolocalize\":\"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO\",\"test\":\"npm run -s webpackTests && certa -r chrome\",\"cover\":\"npm -s test\",\"test:debug\":\"certa -r chrome --debug\",\"webpackTests\":\"webpack --config ./src/test/utils/webpack.config.js 1>&2\"},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/iTwin/itwinjs-core/tree/master/core/frontend\"},\"keywords\":[\"Bentley\",\"BIM\",\"iModel\",\"digital-twin\",\"iTwin\"],\"author\":{\"name\":\"Bentley Systems, Inc.\",\"url\":\"http://www.bentley.com\"},\"peerDependencies\":{\"@itwin/appui-abstract\":\"workspace:^3.3.0-dev.38\",\"@itwin/core-bentley\":\"workspace:^3.3.0-dev.38\",\"@itwin/core-common\":\"workspace:^3.3.0-dev.38\",\"@itwin/core-geometry\":\"workspace:^3.3.0-dev.38\",\"@itwin/core-orbitgt\":\"workspace:^3.3.0-dev.38\",\"@itwin/core-quantity\":\"workspace:^3.3.0-dev.38\",\"@itwin/webgl-compatibility\":\"workspace:^3.3.0-dev.38\"},\"//devDependencies\":[\"NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install\",\"NOTE: All tools used by scripts in this package must be listed as devDependencies\"],\"devDependencies\":{\"@itwin/appui-abstract\":\"workspace:*\",\"@itwin/build-tools\":\"workspace:*\",\"@itwin/core-bentley\":\"workspace:*\",\"@itwin/core-common\":\"workspace:*\",\"@itwin/core-geometry\":\"workspace:*\",\"@itwin/core-orbitgt\":\"workspace:*\",\"@itwin/core-quantity\":\"workspace:*\",\"@itwin/certa\":\"workspace:*\",\"@itwin/eslint-plugin\":\"workspace:*\",\"@itwin/webgl-compatibility\":\"workspace:*\",\"@types/chai\":\"^4.1.4\",\"@types/chai-as-promised\":\"^7\",\"@types/deep-assign\":\"^0.1.0\",\"@types/lodash\":\"^4.14.0\",\"@types/mocha\":\"^8.2.2\",\"@types/node\":\"16.11.7\",\"@types/qs\":\"^6.5.0\",\"@types/semver\":\"^5.5.0\",\"@types/superagent\":\"^4.1.14\",\"@types/sinon\":\"^9.0.0\",\"chai\":\"^4.1.2\",\"chai-as-promised\":\"^7\",\"cpx2\":\"^3.0.0\",\"eslint\":\"^7.11.0\",\"glob\":\"^7.1.2\",\"mocha\":\"^10.0.0\",\"nyc\":\"^15.1.0\",\"rimraf\":\"^3.0.2\",\"sinon\":\"^9.0.2\",\"source-map-loader\":\"^1.0.0\",\"typescript\":\"~4.4.0\",\"webpack\":\"4.42.0\"},\"//dependencies\":[\"NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API\",\"NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed\"],\"dependencies\":{\"@itwin/core-i18n\":\"workspace:*\",\"@itwin/core-telemetry\":\"workspace:*\",\"@loaders.gl/core\":\"^3.1.6\",\"@loaders.gl/draco\":\"^3.1.6\",\"deep-assign\":\"^2.0.0\",\"fuse.js\":\"^3.3.0\",\"lodash\":\"^4.17.10\",\"qs\":\"^6.5.1\",\"semver\":\"^5.5.0\",\"superagent\":\"^7.0.1\",\"wms-capabilities\":\"0.4.0\",\"xml-js\":\"~1.6.11\"},\"nyc\":{\"extends\":\"./node_modules/@itwin/build-tools/.nycrc\"},\"eslintConfig\":{\"plugins\":[\"@itwin\"],\"extends\":\"plugin:@itwin/itwinjs-recommended\",\"rules\":{\"@itwin/no-internal-barrel-imports\":[\"error\",{\"required-barrel-modules\":[\"./src/tile/internal.ts\"]}],\"@itwin/public-extension-exports\":[\"error\",{\"releaseTags\":[\"public\",\"preview\"],\"outputApiFile\":false}]},\"overrides\":[{\"files\":[\"*.test.ts\",\"*.test.tsx\",\"**/test/**/*.ts\"],\"rules\":{\"@itwin/no-internal-barrel-imports\":\"off\"}}]}}");
197819
197819
 
197820
197820
  /***/ }),
197821
197821
 
@@ -210485,9 +210485,9 @@ class Arc3d extends _CurvePrimitive__WEBPACK_IMPORTED_MODULE_11__["CurvePrimitiv
210485
210485
  * * `arc` is the (bounded) arc
210486
210486
  * * `fraction10` is the tangency point's position as an interpolating fraction of the line segment from `point1` (backwards) to `point0`
210487
210487
  * * `fraction12` is the tangency point's position as an interpolating fraction of the line segment from `point1` (forward) to `point2`
210488
- * * `point1` is the `point1` input.
210488
+ * * `point` is the `point1` input.
210489
210489
  * * If unable to construct the arc:
210490
- * * `point` is the `point` input.
210490
+ * * `point` is the `point1` input.
210491
210491
  * * both fractions are zero
210492
210492
  * * `arc` is undefined.
210493
210493
  * @param point0 first point of path. (the point before the point of inflection)
@@ -256564,14 +256564,18 @@ class PolyfaceQuery {
256564
256564
  if (data.pointIndex[i] === vertexIndex)
256565
256565
  data.edgeVisible[i] = value;
256566
256566
  }
256567
- /** Load all half edges from a mesh to an IndexedEdgeMatcher */
256568
- static createIndexedEdges(visitor) {
256567
+ /** Load all half edges from a mesh to an IndexedEdgeMatcher.
256568
+ * @param polyface a mesh, or a visitor assumed to have numWrap === 1
256569
+ */
256570
+ static createIndexedEdges(polyface) {
256571
+ if (polyface instanceof _Polyface__WEBPACK_IMPORTED_MODULE_20__["Polyface"])
256572
+ return this.createIndexedEdges(polyface.createVisitor(1));
256569
256573
  const edges = new _IndexedEdgeMatcher__WEBPACK_IMPORTED_MODULE_15__["IndexedEdgeMatcher"]();
256570
- visitor.reset();
256571
- while (visitor.moveToNextFacet()) {
256572
- const numEdges = visitor.pointCount - 1;
256574
+ polyface.reset();
256575
+ while (polyface.moveToNextFacet()) {
256576
+ const numEdges = polyface.pointCount - 1;
256573
256577
  for (let i = 0; i < numEdges; i++) {
256574
- edges.addEdge(visitor.clientPointIndex(i), visitor.clientPointIndex(i + 1), visitor.currentReadIndex());
256578
+ edges.addEdge(polyface.clientPointIndex(i), polyface.clientPointIndex(i + 1), polyface.currentReadIndex());
256575
256579
  }
256576
256580
  }
256577
256581
  return edges;
@@ -274462,8 +274466,8 @@ class HalfEdgeGraphOps {
274462
274466
  * @internal
274463
274467
  */
274464
274468
  class HalfEdgeGraphMerge {
274465
- // return k2 <= kB such that stored angles (at extra data index 0 !) kA<=k<kC match.
274466
- // * Note that the usual case (when angle at k0 is not repeated) is k0+1 === kC
274469
+ // return kC <= kB such that stored angles (at extra data index 0 !) kA<=k<kC match.
274470
+ // * Note that the usual case (when angle at kA is not repeated) is kA+1 === kC
274467
274471
  static getCommonThetaEndIndex(clusters, order, kA, kB) {
274468
274472
  let kC = kA + 1;
274469
274473
  const thetaA = clusters.getExtraData(order[kA], 0);
@@ -274626,7 +274630,7 @@ class HalfEdgeGraphMerge {
274626
274630
  thetaA = thetaB;
274627
274631
  }
274628
274632
  else if (nodeB.isMaskSet(_Graph__WEBPACK_IMPORTED_MODULE_6__["HalfEdgeMask"].NULL_FACE)) {
274629
- const j = unmatchedNullFaceNodes.findIndex((node) => nodeA === node);
274633
+ const j = unmatchedNullFaceNodes.findIndex((node) => nodeB === node);
274630
274634
  if (j >= 0) {
274631
274635
  unmatchedNullFaceNodes[j] = unmatchedNullFaceNodes[unmatchedNullFaceNodes.length - 1];
274632
274636
  unmatchedNullFaceNodes.pop();
@@ -275317,10 +275321,15 @@ class Triangulator {
275317
275321
  * * Return true if clearly positive
275318
275322
  * * Return false if clearly negative or almost zero.
275319
275323
  * @param nodeA node on the diagonal edge of candidate for edge flip.
275320
- * @param if true, divide the determinant by the sum of absolute values of the cubic terms of the determinant.
275321
- * @return the determinant as modified per comment (but undefined if the faces are not triangles as expected.)
275322
275324
  */
275323
275325
  static computeInCircleDeterminantIsStrongPositive(nodeA) {
275326
+ // Assume triangle A1,A2,B2 is ccw.
275327
+ // Shift the triangle to the origin (by negated A coords).
275328
+ // The Delaunay condition is computed by projecting the origin and the shifted triangle
275329
+ // points up to the paraboloid z = x*x + y*y. Due to the radially symmetric convexity of
275330
+ // this surface and the ccw orientation of this triangle, "A is inside triangle A1,A2,B2"
275331
+ // is equivalent to "the volume of the parallelepiped formed by the projected points is
275332
+ // negative, as computed by the triple product."
275324
275333
  const nodeA1 = nodeA.faceSuccessor;
275325
275334
  const nodeA2 = nodeA1.faceSuccessor;
275326
275335
  if (nodeA2.faceSuccessor !== nodeA)
@@ -275345,7 +275354,7 @@ class Triangulator {
275345
275354
  const q = _Geometry__WEBPACK_IMPORTED_MODULE_1__["Geometry"].tripleProduct(wx, wy, tx, vx, vy, ty, ux, uy, tz);
275346
275355
  if (q < 0)
275347
275356
  return false;
275348
- const denom = Math.abs(wx * vy * tz) + Math.abs(wx * ty * ux) + Math.abs(tx * vx * uy)
275357
+ const denom = Math.abs(wx * vy * tz) + Math.abs(wy * ty * ux) + Math.abs(tx * vx * uy)
275349
275358
  + Math.abs(wx * ty * uy) + Math.abs(wy * vx * tz) + Math.abs(tx * vy * ux);
275350
275359
  return q > 1.0e-12 * denom;
275351
275360
  }
@@ -275533,7 +275542,7 @@ class Triangulator {
275533
275542
  x = q.x;
275534
275543
  if (q.hasOwnProperty("y"))
275535
275544
  y = q.y;
275536
- if (q.hasOwnProperty("y"))
275545
+ if (q.hasOwnProperty("z"))
275537
275546
  z = q.z;
275538
275547
  }
275539
275548
  if (!baseNode)
@@ -275646,18 +275655,18 @@ class Triangulator {
275646
275655
  ear.setMaskAroundFace(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].TRIANGULATED_FACE);
275647
275656
  }
275648
275657
  static isInteriorTriangle(a) {
275649
- if (!a.isMaskSet(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].TRIANGULATED_FACE))
275658
+ if (!a.isMaskSet(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].TRIANGULATED_FACE) || a.isMaskSet(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].EXTERIOR))
275650
275659
  return false;
275651
275660
  const b = a.faceSuccessor;
275652
- if (!b.isMaskSet(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].TRIANGULATED_FACE))
275661
+ if (!b.isMaskSet(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].TRIANGULATED_FACE) || b.isMaskSet(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].EXTERIOR))
275653
275662
  return false;
275654
275663
  const c = b.faceSuccessor;
275655
- if (!c.isMaskSet(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].TRIANGULATED_FACE))
275664
+ if (!c.isMaskSet(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].TRIANGULATED_FACE) || c.isMaskSet(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].EXTERIOR))
275656
275665
  return false;
275657
275666
  return c.faceSuccessor === a;
275658
275667
  }
275659
275668
  /**
275660
- * Perform 0, 1, or more edge flips to improve aspect ratio just behind an that was just cut.
275669
+ * Perform 0, 1, or more edge flips to improve aspect ratio just behind an ear that was just cut.
275661
275670
  * @param ear the triangle corner which just served as the ear node.
275662
275671
  * @returns the node at the back corner after flipping."appropriately positioned" node for the usual advance to ear.faceSuccessor.edgeMate.faceSuccessor.
275663
275672
  */
@@ -275672,18 +275681,18 @@ class Triangulator {
275672
275681
  // after flip, node A moves to the vertex of D, and is the effective "ear", with the cap edge C A1
275673
275682
  // after flip, consider the A1 D (whose nodes are A1 and flipped A!!!)
275674
275683
  //
275675
- //
275676
- // . C0|
275677
- // . |
275678
- // . |
275679
- // . ^|
275680
- // . A0 ----> B0|
275681
- // *=======================*
275682
- // \ A1 <---- B1/
275683
- // \ /
275684
- // \ /
275685
- // \ D1 /
275686
- // *
275684
+ // * *
275685
+ // . C0| . / |
275686
+ // . | . C0 /B1|
275687
+ // . | . /v |
275688
+ // . ^| . / |
275689
+ // . A0 ----> B0| . / ^|
275690
+ // *=======================* --> * A1 / B0*
275691
+ // \ A1 <---- B1/ \ / /
275692
+ // \ / \ / /
275693
+ // \ / \ ^/ D1/
275694
+ // \ D1 / \A0/ /
275695
+ // * *
275687
275696
  let b0 = ear;
275688
275697
  let a0 = b0.facePredecessor;
275689
275698
  let b1 = a0.edgeMate;
@@ -275724,8 +275733,13 @@ class Triangulator {
275724
275733
  pred = ear === null || ear === void 0 ? void 0 : ear.facePredecessor;
275725
275734
  next = ear.faceSuccessor;
275726
275735
  next2 = next.faceSuccessor;
275727
- if (next === ear || next2 === ear || next2.faceSuccessor === ear)
275736
+ if (next === ear || next2 === ear)
275728
275737
  return true;
275738
+ if (next2.faceSuccessor === ear) {
275739
+ // if triangle, mask it so that its edges can potentially be flipped by doPostCutFlips()
275740
+ ear.setMaskAroundFace(_Graph__WEBPACK_IMPORTED_MODULE_8__["HalfEdgeMask"].TRIANGULATED_FACE);
275741
+ return true;
275742
+ }
275729
275743
  // earcut does not support self intersections.
275730
275744
  // BUT .. maybe if we watch from the simplest case of next2 returning to pred it will catch some . . .
275731
275745
  // (no need to do flips -- we know it's already a triangle)