@itwin/rpcinterface-full-stack-tests 4.7.0-dev.8 → 4.7.0-dev.9

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
- {"version":3,"file":"_bea9.bundled-tests.js","mappings":";;;;;;;;AAAA","sources":["file:///ignored|D:\\vsts_a\\486\\s\\common\\temp\\node_modules\\.pnpm\\@loaders.gl+worker-utils@3.1.6\\node_modules\\@loaders.gl\\worker-utils\\dist\\esm\\lib\\library-utils|../node/require-utils.node"],"names":[],"sourceRoot":""}
1
+ {"version":3,"file":"_bea9.bundled-tests.js","mappings":";;;;;;;;AAAA","sources":["file:///ignored|D:\\vsts_a\\8\\s\\common\\temp\\node_modules\\.pnpm\\@loaders.gl+worker-utils@3.1.6\\node_modules\\@loaders.gl\\worker-utils\\dist\\esm\\lib\\library-utils|../node/require-utils.node"],"names":[],"sourceRoot":""}
@@ -244452,40 +244452,22 @@ class PolyfaceQuery {
244452
244452
  return true;
244453
244453
  }
244454
244454
  /**
244455
- * Test for convex volume by dihedral angle tests on all edges.
244456
- * * This tests if all dihedral angles of the mesh are positive.
244457
- * * In a closed solid, this is a strong test for overall mesh convexity with outward facing normals.
244458
- * * See [[dihedralAngleSummary]] for the definition of "dihedral angle".
244459
- * * With `ignoreBoundaries` true, this may be a useful test when all the facets are in a single edge-connected
244460
- * component, such as a pyramid with no underside.
244461
- * * It is not a correct test if there are multiple, disjoint components.
244462
- * * Take the above-mentioned pyramid with no underside.
244463
- * * Within the same mesh, have a second pyramid placed to the side, still facing upward.
244464
- * * The angles will pass the dihedral convexity test, but the composite thing surely is not convex.
244455
+ * Compute a number summarizing the dihedral angles in the mesh.
244456
+ * * A dihedral angle is the signed angle between adjacent facets' normals. This angle is positive when the cross
244457
+ * product `normalA x normalB` has the same direction as facetA's traversal of the facets' shared edge.
244465
244458
  * @param source mesh.
244466
244459
  * @param ignoreBoundaries if `true` ignore simple boundary edges, i.e., allow unclosed meshes. Default is `false`.
244467
- * @returns true if all dihedral angles of the mesh are positive.
244460
+ * See [[isConvexByDihedralAngleCount]] for comments about passing true when there are multiple
244461
+ * connected components.
244462
+ * * Return `0` if all dihedral angles are zero (and `ignoreBoundaries === true`). The mesh is planar.
244463
+ * * Otherwise, return `1` if all dihedral angles are non-negative. The mesh probably encloses a convex volume and
244464
+ * has outward normals.
244465
+ * * Otherwise, return `-1` if all dihedral angles are non-positive. The mesh probably encloses a convex volume and
244466
+ * has inward normals.
244467
+ * * Otherwise, return `-2`. Also return `-2` if a non-manifold condition was detected, or a facet normal could not
244468
+ * be computed. A non-manifold condition is a positive-length edge adjacent to more than 2 facets or (if
244469
+ * `ignoreBoundaries` is false) adjacent to exactly one facet.
244468
244470
  */
244469
- static isConvexByDihedralAngleCount(source, ignoreBoundaries = false) {
244470
- return this.dihedralAngleSummary(source, ignoreBoundaries) > 0;
244471
- }
244472
- /**
244473
- * Compute a number summarizing the dihedral angles in the mesh.
244474
- * * A dihedral angle is the signed angle between adjacent facets' normals. This angle is positive when the cross
244475
- * product `normalA x normalB` has the same direction as facetA's traversal of the facets' shared edge.
244476
- * @param source mesh.
244477
- * @param ignoreBoundaries if `true` ignore simple boundary edges, i.e., allow unclosed meshes. Default is `false`.
244478
- * See [[isConvexByDihedralAngleCount]] for comments about passing true when there are multiple
244479
- * connected components.
244480
- * * Return `0` if all dihedral angles are zero (and `ignoreBoundaries === true`). The mesh is planar.
244481
- * * Otherwise, return `1` if all dihedral angles are non-negative. The mesh probably encloses a convex volume and
244482
- * has outward normals.
244483
- * * Otherwise, return `-1` if all dihedral angles are non-positive. The mesh probably encloses a convex volume and
244484
- * has inward normals.
244485
- * * Otherwise, return `-2`. Also return `-2` if a non-manifold condition was detected, or a facet normal could not
244486
- * be computed. A non-manifold condition is a positive-length edge adjacent to more than 2 facets or (if
244487
- * `ignoreBoundaries` is false) adjacent to exactly one facet.
244488
- */
244489
244471
  static dihedralAngleSummary(source, ignoreBoundaries = false) {
244490
244472
  // more info can be found at geometry/internaldocs/Polyface.md
244491
244473
  const edges = new _IndexedEdgeMatcher__WEBPACK_IMPORTED_MODULE_10__.IndexedEdgeMatcher();
@@ -244541,9 +244523,23 @@ class PolyfaceQuery {
244541
244523
  return 0;
244542
244524
  return -2;
244543
244525
  }
244544
- /** Test if the facets in `source` occur in perfectly mated pairs, as is required for a closed manifold volume. */
244545
- static isPolyfaceClosedByEdgePairing(source) {
244546
- return this.isPolyfaceManifold(source, false);
244526
+ /**
244527
+ * Test for convex volume by dihedral angle tests on all edges.
244528
+ * * This tests if all dihedral angles of the mesh are positive.
244529
+ * * In a closed solid, this is a strong test for overall mesh convexity with outward facing normals.
244530
+ * * See [[dihedralAngleSummary]] for the definition of "dihedral angle".
244531
+ * * With `ignoreBoundaries` true, this may be a useful test when all the facets are in a single edge-connected
244532
+ * component, such as a pyramid with no underside.
244533
+ * * It is not a correct test if there are multiple, disjoint components.
244534
+ * * Take the above-mentioned pyramid with no underside.
244535
+ * * Within the same mesh, have a second pyramid placed to the side, still facing upward.
244536
+ * * The angles will pass the dihedral convexity test, but the composite thing surely is not convex.
244537
+ * @param source mesh.
244538
+ * @param ignoreBoundaries if `true` ignore simple boundary edges, i.e., allow unclosed meshes. Default is `false`.
244539
+ * @returns true if all dihedral angles of the mesh are positive.
244540
+ */
244541
+ static isConvexByDihedralAngleCount(source, ignoreBoundaries = false) {
244542
+ return this.dihedralAngleSummary(source, ignoreBoundaries) > 0;
244547
244543
  }
244548
244544
  /**
244549
244545
  * Test edges pairing in `source` mesh.
@@ -244567,36 +244563,9 @@ class PolyfaceQuery {
244567
244563
  edges.sortAndCollectClusters(undefined, allowSimpleBoundaries ? undefined : badClusters, undefined, badClusters);
244568
244564
  return badClusters.length === 0;
244569
244565
  }
244570
- /**
244571
- * Construct a CurveCollection containing boundary edges.
244572
- * * Each edge is a LineSegment3d.
244573
- * @param source polyface or visitor.
244574
- * @param includeTypical true to in include typical boundary edges with a single adjacent facet.
244575
- * @param includeMismatch true to include edges with more than 2 adjacent facets.
244576
- * @param includeNull true to include edges with identical start and end vertex indices.
244577
- */
244578
- static boundaryEdges(source, includeTypical = true, includeMismatch = true, includeNull = true) {
244579
- const result = new _curve_CurveCollection__WEBPACK_IMPORTED_MODULE_5__.BagOfCurves();
244580
- const announceEdge = (pointA, pointB, _indexA, _indexB, _readIndex) => {
244581
- result.tryAddChild(_curve_LineSegment3d__WEBPACK_IMPORTED_MODULE_11__.LineSegment3d.create(pointA, pointB));
244582
- };
244583
- PolyfaceQuery.announceBoundaryEdges(source, announceEdge, includeTypical, includeMismatch, includeNull);
244584
- if (result.children.length === 0)
244585
- return undefined;
244586
- return result;
244587
- }
244588
- /**
244589
- * Collect boundary edges.
244590
- * * Return the edges as the simplest collection of chains of line segments.
244591
- * @param source polyface or visitor.
244592
- * @param includeTypical true to in include typical boundary edges with a single adjacent facet.
244593
- * @param includeMismatch true to include edges with more than 2 adjacent facets.
244594
- * @param includeNull true to include edges with identical start and end vertex indices.
244595
- */
244596
- static collectBoundaryEdges(source, includeTypical = true, includeMismatch = true, includeNull = true) {
244597
- const collector = new _curve_internalContexts_MultiChainCollector__WEBPACK_IMPORTED_MODULE_12__.MultiChainCollector(_Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallMetricDistance, _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallMetricDistance);
244598
- PolyfaceQuery.announceBoundaryEdges(source, (ptA, ptB) => collector.captureCurve(_curve_LineSegment3d__WEBPACK_IMPORTED_MODULE_11__.LineSegment3d.create(ptA, ptB)), includeTypical, includeMismatch, includeNull);
244599
- return collector.grabResult(true);
244566
+ /** Test if the facets in `source` occur in perfectly mated pairs, as is required for a closed manifold volume. */
244567
+ static isPolyfaceClosedByEdgePairing(source) {
244568
+ return this.isPolyfaceManifold(source, false);
244600
244569
  }
244601
244570
  /**
244602
244571
  * Test if the facets in `source` occur in perfectly mated pairs, as is required for a closed manifold volume.
@@ -244647,6 +244616,37 @@ class PolyfaceQuery {
244647
244616
  }
244648
244617
  }
244649
244618
  }
244619
+ /**
244620
+ * Construct a CurveCollection containing boundary edges.
244621
+ * * Each edge is a LineSegment3d.
244622
+ * @param source polyface or visitor.
244623
+ * @param includeTypical true to in include typical boundary edges with a single adjacent facet.
244624
+ * @param includeMismatch true to include edges with more than 2 adjacent facets.
244625
+ * @param includeNull true to include edges with identical start and end vertex indices.
244626
+ */
244627
+ static boundaryEdges(source, includeTypical = true, includeMismatch = true, includeNull = true) {
244628
+ const result = new _curve_CurveCollection__WEBPACK_IMPORTED_MODULE_5__.BagOfCurves();
244629
+ const announceEdge = (pointA, pointB, _indexA, _indexB, _readIndex) => {
244630
+ result.tryAddChild(_curve_LineSegment3d__WEBPACK_IMPORTED_MODULE_11__.LineSegment3d.create(pointA, pointB));
244631
+ };
244632
+ PolyfaceQuery.announceBoundaryEdges(source, announceEdge, includeTypical, includeMismatch, includeNull);
244633
+ if (result.children.length === 0)
244634
+ return undefined;
244635
+ return result;
244636
+ }
244637
+ /**
244638
+ * Collect boundary edges.
244639
+ * * Return the edges as the simplest collection of chains of line segments.
244640
+ * @param source polyface or visitor.
244641
+ * @param includeTypical true to in include typical boundary edges with a single adjacent facet.
244642
+ * @param includeMismatch true to include edges with more than 2 adjacent facets.
244643
+ * @param includeNull true to include edges with identical start and end vertex indices.
244644
+ */
244645
+ static collectBoundaryEdges(source, includeTypical = true, includeMismatch = true, includeNull = true) {
244646
+ const collector = new _curve_internalContexts_MultiChainCollector__WEBPACK_IMPORTED_MODULE_12__.MultiChainCollector(_Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallMetricDistance, _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallMetricDistance);
244647
+ PolyfaceQuery.announceBoundaryEdges(source, (ptA, ptB) => collector.captureCurve(_curve_LineSegment3d__WEBPACK_IMPORTED_MODULE_11__.LineSegment3d.create(ptA, ptB)), includeTypical, includeMismatch, includeNull);
244648
+ return collector.grabResult(true);
244649
+ }
244650
244650
  /**
244651
244651
  * Load all half edges from a mesh to an IndexedEdgeMatcher.
244652
244652
  * @param polyface a mesh or a visitor assumed to have numWrap === 1.
@@ -245426,21 +245426,6 @@ class PolyfaceQuery {
245426
245426
  }
245427
245427
  return 0;
245428
245428
  }
245429
- /**
245430
- * Collect facet duplicates.
245431
- * @param polyface the polyface.
245432
- * @param includeSingletons if true, non-duplicated facets are included in the output.
245433
- * @returns an array of arrays describing facet duplication. Each array `entry` in the output contains read
245434
- * indices of a cluster of facets with the same vertex indices.
245435
- */
245436
- static collectDuplicateFacetIndices(polyface, includeSingletons = false) {
245437
- const result = [];
245438
- this.announceDuplicateFacetIndices(polyface, (clusterFacetIndices) => {
245439
- if (includeSingletons || clusterFacetIndices.length > 1)
245440
- result.push(clusterFacetIndices.slice());
245441
- });
245442
- return result;
245443
- }
245444
245429
  /**
245445
245430
  * Announce facet duplicates.
245446
245431
  * @returns an array of arrays describing facet duplication. Each array `entry` in the output contains read
@@ -245488,6 +245473,21 @@ class PolyfaceQuery {
245488
245473
  announceCluster(clusterArray);
245489
245474
  }
245490
245475
  }
245476
+ /**
245477
+ * Collect facet duplicates.
245478
+ * @param polyface the polyface.
245479
+ * @param includeSingletons if true, non-duplicated facets are included in the output.
245480
+ * @returns an array of arrays describing facet duplication. Each array `entry` in the output contains read
245481
+ * indices of a cluster of facets with the same vertex indices.
245482
+ */
245483
+ static collectDuplicateFacetIndices(polyface, includeSingletons = false) {
245484
+ const result = [];
245485
+ this.announceDuplicateFacetIndices(polyface, (clusterFacetIndices) => {
245486
+ if (includeSingletons || clusterFacetIndices.length > 1)
245487
+ result.push(clusterFacetIndices.slice());
245488
+ });
245489
+ return result;
245490
+ }
245491
245491
  /**
245492
245492
  * Return a new facet set with a subset of facets in polyface.
245493
245493
  * @param source the polyface.
@@ -290225,7 +290225,7 @@ class TestContext {
290225
290225
  this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
290226
290226
  const iModelClient = new imodels_client_management_1.IModelsClient({ api: { baseUrl: `https://${process.env.IMJS_URL_PREFIX ?? ""}api.bentley.com/imodels` } });
290227
290227
  await core_frontend_1.NoRenderApp.startup({
290228
- applicationVersion: "4.7.0-dev.8",
290228
+ applicationVersion: "4.7.0-dev.9",
290229
290229
  applicationId: this.settings.gprid,
290230
290230
  authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.adminUserAccessToken),
290231
290231
  hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
@@ -314220,7 +314220,7 @@ function __disposeResources(env) {
314220
314220
  /***/ ((module) => {
314221
314221
 
314222
314222
  "use strict";
314223
- module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.7.0-dev.8","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 && npm run -s build:esm && npm run -s webpackWorkers && npm run -s copy:workers","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2020 --outDir lib/esm","clean":"rimraf lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./lib/public/scripts","docs":"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/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-inline-config -c extraction.eslint.config.js \\"./src/**/*.ts\\" 1>&2","lint":"eslint -f visualstudio \\"./src/**/*.ts\\" 1>&2","lint-fix":"eslint --fix -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 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:^4.7.0-dev.8","@itwin/core-bentley":"workspace:^4.7.0-dev.8","@itwin/core-common":"workspace:^4.7.0-dev.8","@itwin/core-geometry":"workspace:^4.7.0-dev.8","@itwin/core-orbitgt":"workspace:^4.7.0-dev.8","@itwin/core-quantity":"workspace:^4.7.0-dev.8"},"//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":"^4.0.2","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/mocha":"^10.0.6","@types/sinon":"^17.0.2","babel-loader":"~8.2.5","babel-plugin-istanbul":"~6.1.1","chai":"^4.3.10","chai-as-promised":"^7.1.1","cpx2":"^3.0.0","eslint":"^8.56.0","glob":"^10.3.12","mocha":"^10.2.0","nyc":"^15.1.0","rimraf":"^3.0.2","sinon":"^17.0.1","source-map-loader":"^4.0.0","typescript":"~5.3.3","typemoq":"^2.1.0","webpack":"^5.76.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/cloud-agnostic-core":"^2.1.0","@itwin/object-storage-core":"^2.2.2","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","fuse.js":"^3.3.0","meshoptimizer":"~0.20.0","wms-capabilities":"0.4.0"},"nyc":{"extends":"./node_modules/@itwin/build-tools/.nycrc"}}');
314223
+ module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.7.0-dev.9","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 && npm run -s build:esm && npm run -s webpackWorkers && npm run -s copy:workers","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2020 --outDir lib/esm","clean":"rimraf lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./lib/public/scripts","docs":"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/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-inline-config -c extraction.eslint.config.js \\"./src/**/*.ts\\" 1>&2","lint":"eslint -f visualstudio \\"./src/**/*.ts\\" 1>&2","lint-fix":"eslint --fix -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 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:^4.7.0-dev.9","@itwin/core-bentley":"workspace:^4.7.0-dev.9","@itwin/core-common":"workspace:^4.7.0-dev.9","@itwin/core-geometry":"workspace:^4.7.0-dev.9","@itwin/core-orbitgt":"workspace:^4.7.0-dev.9","@itwin/core-quantity":"workspace:^4.7.0-dev.9"},"//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":"^4.0.2","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/mocha":"^10.0.6","@types/sinon":"^17.0.2","babel-loader":"~8.2.5","babel-plugin-istanbul":"~6.1.1","chai":"^4.3.10","chai-as-promised":"^7.1.1","cpx2":"^3.0.0","eslint":"^8.56.0","glob":"^10.3.12","mocha":"^10.2.0","nyc":"^15.1.0","rimraf":"^3.0.2","sinon":"^17.0.1","source-map-loader":"^4.0.0","typescript":"~5.3.3","typemoq":"^2.1.0","webpack":"^5.76.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/cloud-agnostic-core":"^2.1.0","@itwin/object-storage-core":"^2.2.2","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","fuse.js":"^3.3.0","meshoptimizer":"~0.20.0","wms-capabilities":"0.4.0"},"nyc":{"extends":"./node_modules/@itwin/build-tools/.nycrc"}}');
314224
314224
 
314225
314225
  /***/ }),
314226
314226