@itwin/rpcinterface-full-stack-tests 3.4.0-dev.1 → 3.4.0-dev.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.
- package/lib/dist/_c41d.bundled-tests.js.map +1 -1
- package/lib/dist/bundled-tests.js +98 -64
- package/lib/dist/bundled-tests.js.map +1 -1
- package/lib/dist/core_frontend_lib_esm_ApproximateTerrainHeightsProps_js.bundled-tests.js.map +1 -1
- package/lib/dist/vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_2_5_node_modules_loaders_gl_draco_di-e0b0bc.bundled-tests.js.map +1 -1
- package/package.json +15 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_c41d.bundled-tests.js","mappings":";;;;;;;;AAAA","sources":["file:///ignored|D:\\vsts_a\\
|
|
1
|
+
{"version":3,"file":"_c41d.bundled-tests.js","mappings":";;;;;;;;AAAA","sources":["file:///ignored|D:\\vsts_a\\1147\\s\\common\\temp\\node_modules\\.pnpm\\@loaders.gl+worker-utils@3.2.5\\node_modules\\@loaders.gl\\worker-utils\\dist\\esm\\lib\\library-utils|../node/require-utils.node"],"names":[],"sourceRoot":""}
|
|
@@ -87120,6 +87120,7 @@ class IModelReadRpcInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_2__.
|
|
|
87120
87120
|
===========================================================================================*/
|
|
87121
87121
|
async getConnectionProps(_iModelToken) { return this.forward(arguments); }
|
|
87122
87122
|
async queryRows(_iModelToken, _request) { return this.forward(arguments); }
|
|
87123
|
+
async querySubCategories(_iModelToken, _categoryIds) { return this.forward(arguments); }
|
|
87123
87124
|
async queryBlob(_iModelToken, _request) { return this.forward(arguments); }
|
|
87124
87125
|
async getModelProps(_iModelToken, _modelIds) { return this.forward(arguments); }
|
|
87125
87126
|
async queryModelRanges(_iModelToken, _modelIds) { return this.forward(arguments); }
|
|
@@ -87157,6 +87158,9 @@ IModelReadRpcInterface.interfaceVersion = "3.2.0";
|
|
|
87157
87158
|
__decorate([
|
|
87158
87159
|
_core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__.RpcOperation.allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__.RpcResponseCacheControl.Immutable)
|
|
87159
87160
|
], IModelReadRpcInterface.prototype, "getConnectionProps", null);
|
|
87161
|
+
__decorate([
|
|
87162
|
+
_core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__.RpcOperation.allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__.RpcResponseCacheControl.Immutable)
|
|
87163
|
+
], IModelReadRpcInterface.prototype, "querySubCategories", null);
|
|
87160
87164
|
__decorate([
|
|
87161
87165
|
_core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__.RpcOperation.allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__.RpcResponseCacheControl.Immutable)
|
|
87162
87166
|
], IModelReadRpcInterface.prototype, "getModelProps", null);
|
|
@@ -103475,6 +103479,15 @@ class IModelConnection extends _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.I
|
|
|
103475
103479
|
};
|
|
103476
103480
|
return new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.ECSqlReader(executor, ecsql, params, config);
|
|
103477
103481
|
}
|
|
103482
|
+
/**
|
|
103483
|
+
* queries the BisCore.SubCategory table for the entries that are children of the passed categoryIds
|
|
103484
|
+
* @param compressedCategoryIds compressed category Ids
|
|
103485
|
+
* @returns array of SubCategoryResultRow
|
|
103486
|
+
* @internal
|
|
103487
|
+
*/
|
|
103488
|
+
async querySubCategories(compressedCategoryIds) {
|
|
103489
|
+
return _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelReadRpcInterface.getClientForRouting(this.routingContext.token).querySubCategories(this.getRpcProps(), compressedCategoryIds);
|
|
103490
|
+
}
|
|
103478
103491
|
/** Execute a query and stream its results
|
|
103479
103492
|
* The result of the query is async iterator over the rows. The iterator will get next page automatically once rows in current page has been read.
|
|
103480
103493
|
* [ECSQL row]($docs/learning/ECSQLRowFormat).
|
|
@@ -106669,29 +106682,73 @@ class PerModelCategoryVisibilityOverrides extends _itwin_core_bentley__WEBPACK_I
|
|
|
106669
106682
|
else
|
|
106670
106683
|
return PerModelCategoryVisibility.Override.None;
|
|
106671
106684
|
}
|
|
106672
|
-
|
|
106685
|
+
/**
|
|
106686
|
+
* set the overrides for multiple perModelCategoryVisibility props, loading categoryIds from the iModel if necessary.
|
|
106687
|
+
* @see [[PerModelCategoryVisibility]]
|
|
106688
|
+
* @param perModelCategoryVisibility array of model category visibility overrides @see [[PerModelCategoryVisibility.Props]]
|
|
106689
|
+
* @param iModel Optional param iModel. If no iModel is provided, then the iModel associated with the viewport (used to construct this class) is used.
|
|
106690
|
+
* This optional iModel param is useful for apps which may show multiple iModels at once. Passing in an iModel ensures that the subcategories cache for the provided iModel
|
|
106691
|
+
* is populated as opposed to the iModel associated with the viewport which may or may not be an empty iModel.
|
|
106692
|
+
* @returns a promise that resolves once the overrides have been applied.
|
|
106693
|
+
*/
|
|
106694
|
+
async setOverrides(perModelCategoryVisibility, iModel) {
|
|
106695
|
+
let anyChanged = false;
|
|
106696
|
+
const catIdsToLoad = [];
|
|
106697
|
+
const iModelToUse = iModel ? iModel : this._vp.iModel;
|
|
106698
|
+
for (const override of perModelCategoryVisibility) {
|
|
106699
|
+
const modelId = override.modelId;
|
|
106700
|
+
// The caller may pass a single categoryId as a string, if we don't convert this to an array we will iterate
|
|
106701
|
+
// over each individual character of that string, which is not the desired behavior.
|
|
106702
|
+
const categoryIds = typeof override.categoryIds === "string" ? [override.categoryIds] : override.categoryIds;
|
|
106703
|
+
const visOverride = override.visOverride;
|
|
106704
|
+
for (const categoryId of categoryIds) {
|
|
106705
|
+
if (this.findAndUpdateOverrideInArray(modelId, categoryId, visOverride)) {
|
|
106706
|
+
anyChanged = true;
|
|
106707
|
+
if (PerModelCategoryVisibility.Override.None !== visOverride) {
|
|
106708
|
+
catIdsToLoad.push(categoryId);
|
|
106709
|
+
}
|
|
106710
|
+
}
|
|
106711
|
+
}
|
|
106712
|
+
}
|
|
106713
|
+
if (anyChanged) {
|
|
106714
|
+
this._vp.setViewedCategoriesPerModelChanged();
|
|
106715
|
+
if (catIdsToLoad.length !== 0) {
|
|
106716
|
+
this._vp.subcategories.push(iModelToUse.subcategories, catIdsToLoad, () => this._vp.setViewedCategoriesPerModelChanged());
|
|
106717
|
+
}
|
|
106718
|
+
}
|
|
106719
|
+
return;
|
|
106720
|
+
}
|
|
106721
|
+
/** Find and update the override in the array of overrides. If override not found, adds it to the array.
|
|
106722
|
+
* If the array was changed, returns true. */
|
|
106723
|
+
findAndUpdateOverrideInArray(modelId, categoryId, override) {
|
|
106673
106724
|
const ovr = this._scratch;
|
|
106725
|
+
ovr.reset(modelId, categoryId, false);
|
|
106726
|
+
let changed = false;
|
|
106727
|
+
const index = this.indexOf(ovr);
|
|
106728
|
+
if (-1 === index) {
|
|
106729
|
+
if (PerModelCategoryVisibility.Override.None !== override) {
|
|
106730
|
+
this.insert(new PerModelCategoryVisibilityOverride(modelId, categoryId, PerModelCategoryVisibility.Override.Show === override));
|
|
106731
|
+
changed = true;
|
|
106732
|
+
}
|
|
106733
|
+
}
|
|
106734
|
+
else {
|
|
106735
|
+
if (PerModelCategoryVisibility.Override.None === override) {
|
|
106736
|
+
this._array.splice(index, 1);
|
|
106737
|
+
changed = true;
|
|
106738
|
+
}
|
|
106739
|
+
else if (this._array[index].visible !== (PerModelCategoryVisibility.Override.Show === override)) {
|
|
106740
|
+
this._array[index].visible = (PerModelCategoryVisibility.Override.Show === override);
|
|
106741
|
+
changed = true;
|
|
106742
|
+
}
|
|
106743
|
+
}
|
|
106744
|
+
return changed;
|
|
106745
|
+
}
|
|
106746
|
+
setOverride(modelIds, categoryIds, override) {
|
|
106674
106747
|
let changed = false;
|
|
106675
106748
|
for (const modelId of _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.iterable(modelIds)) {
|
|
106676
106749
|
for (const categoryId of _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.iterable(categoryIds)) {
|
|
106677
|
-
|
|
106678
|
-
|
|
106679
|
-
if (-1 === index) {
|
|
106680
|
-
if (PerModelCategoryVisibility.Override.None !== override) {
|
|
106681
|
-
this.insert(new PerModelCategoryVisibilityOverride(modelId, categoryId, PerModelCategoryVisibility.Override.Show === override));
|
|
106682
|
-
changed = true;
|
|
106683
|
-
}
|
|
106684
|
-
}
|
|
106685
|
-
else {
|
|
106686
|
-
if (PerModelCategoryVisibility.Override.None === override) {
|
|
106687
|
-
this._array.splice(index, 1);
|
|
106688
|
-
changed = true;
|
|
106689
|
-
}
|
|
106690
|
-
else if (this._array[index].visible !== (PerModelCategoryVisibility.Override.Show === override)) {
|
|
106691
|
-
this._array[index].visible = (PerModelCategoryVisibility.Override.Show === override);
|
|
106692
|
-
changed = true;
|
|
106693
|
-
}
|
|
106694
|
-
}
|
|
106750
|
+
if (this.findAndUpdateOverrideInArray(modelId, categoryId, override))
|
|
106751
|
+
changed = true;
|
|
106695
106752
|
}
|
|
106696
106753
|
}
|
|
106697
106754
|
if (changed) {
|
|
@@ -109311,29 +109368,6 @@ class SubCategoriesCache {
|
|
|
109311
109368
|
cancel: () => request.cancel(),
|
|
109312
109369
|
};
|
|
109313
109370
|
}
|
|
109314
|
-
/**
|
|
109315
|
-
* Populates the notLoadedCategoryIds property of the HydrateViewStateRequestProps.
|
|
109316
|
-
* notLoadedCategoryIds is a subset of categoryIds, filtering out any ids which already have an entry in the cache.
|
|
109317
|
-
*/
|
|
109318
|
-
preload(options, categoryIds) {
|
|
109319
|
-
const missing = this.getMissing(categoryIds);
|
|
109320
|
-
if (undefined === missing)
|
|
109321
|
-
return;
|
|
109322
|
-
this._missingAtTimeOfPreload = missing;
|
|
109323
|
-
options.notLoadedCategoryIds = _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.CompressedId64Set.sortAndCompress(missing);
|
|
109324
|
-
}
|
|
109325
|
-
/**
|
|
109326
|
-
* Populates the SubCategoriesCache using the categoryIdsResult of the HydrateViewStateResponseProps
|
|
109327
|
-
*/
|
|
109328
|
-
postload(options) {
|
|
109329
|
-
if (options.categoryIdsResult === undefined)
|
|
109330
|
-
return;
|
|
109331
|
-
// missingAtTimeOfPreload shouldn't be undefined if options.categoryIdsResult is defined... but just to be safe we'll check
|
|
109332
|
-
const missing = this._missingAtTimeOfPreload === undefined ? new Set() : this._missingAtTimeOfPreload;
|
|
109333
|
-
this.processResults(options.categoryIdsResult, missing);
|
|
109334
|
-
// clear missing
|
|
109335
|
-
this._missingAtTimeOfPreload = undefined;
|
|
109336
|
-
}
|
|
109337
109371
|
/** Given categoryIds, return which of these are not cached. */
|
|
109338
109372
|
getMissing(categoryIds) {
|
|
109339
109373
|
let missing;
|
|
@@ -109415,38 +109449,38 @@ class SubCategoriesCache {
|
|
|
109415
109449
|
(function (SubCategoriesCache) {
|
|
109416
109450
|
class Request {
|
|
109417
109451
|
constructor(categoryIds, imodel, maxCategoriesPerQuery = 200) {
|
|
109418
|
-
this.
|
|
109452
|
+
this._categoryIds = [];
|
|
109419
109453
|
this._result = [];
|
|
109420
109454
|
this._canceled = false;
|
|
109421
|
-
this.
|
|
109455
|
+
this._curCategoryIdsIndex = 0;
|
|
109422
109456
|
this._imodel = imodel;
|
|
109423
109457
|
const catIds = [...categoryIds];
|
|
109458
|
+
_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.OrderedId64Iterable.sortArray(catIds); // sort categories, so that given the same set of categoryIds we will always create the same batches.
|
|
109424
109459
|
while (catIds.length !== 0) {
|
|
109425
109460
|
const end = (catIds.length > maxCategoriesPerQuery) ? maxCategoriesPerQuery : catIds.length;
|
|
109426
|
-
const
|
|
109427
|
-
this.
|
|
109461
|
+
const compressedIds = _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.CompressedId64Set.compressArray(catIds.splice(0, end));
|
|
109462
|
+
this._categoryIds.push(compressedIds);
|
|
109428
109463
|
}
|
|
109429
109464
|
}
|
|
109430
109465
|
get wasCanceled() { return this._canceled || this._imodel.isClosed; }
|
|
109431
109466
|
cancel() { this._canceled = true; }
|
|
109432
109467
|
async dispatch() {
|
|
109433
|
-
if (this.wasCanceled || this.
|
|
109468
|
+
if (this.wasCanceled || this._curCategoryIdsIndex >= this._categoryIds.length) // handle case of empty category Id set...
|
|
109434
109469
|
return undefined;
|
|
109435
109470
|
try {
|
|
109436
|
-
const
|
|
109437
|
-
|
|
109438
|
-
|
|
109439
|
-
|
|
109440
|
-
|
|
109441
|
-
}
|
|
109471
|
+
const catIds = this._categoryIds[this._curCategoryIdsIndex];
|
|
109472
|
+
const result = await this._imodel.querySubCategories(catIds);
|
|
109473
|
+
this._result.push(...result);
|
|
109474
|
+
if (this.wasCanceled)
|
|
109475
|
+
return undefined;
|
|
109442
109476
|
}
|
|
109443
109477
|
catch {
|
|
109444
109478
|
// ###TODO: detect cases in which retry is warranted
|
|
109445
109479
|
// Note that currently, if we succeed in obtaining some pages of results and fail to retrieve another page, we will end up processing the
|
|
109446
109480
|
// incomplete results. Since we're not retrying, that's the best we can do.
|
|
109447
109481
|
}
|
|
109448
|
-
// Finished with current
|
|
109449
|
-
if (++this.
|
|
109482
|
+
// Finished with current batch of categoryIds. Dispatch the next batch if one exists.
|
|
109483
|
+
if (++this._curCategoryIdsIndex < this._categoryIds.length) {
|
|
109450
109484
|
if (this.wasCanceled)
|
|
109451
109485
|
return undefined;
|
|
109452
109486
|
else
|
|
@@ -109521,7 +109555,7 @@ class SubCategoriesCache {
|
|
|
109521
109555
|
this._request.promise.then((completed) => {
|
|
109522
109556
|
if (this._disposed)
|
|
109523
109557
|
return;
|
|
109524
|
-
// Invoke all the functions which were awaiting this set of
|
|
109558
|
+
// Invoke all the functions which were awaiting this set of IModelConnection.Categories.
|
|
109525
109559
|
(0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(undefined !== this._current);
|
|
109526
109560
|
if (completed)
|
|
109527
109561
|
for (const func of this._current.funcs)
|
|
@@ -112094,7 +112128,6 @@ class ViewState extends _EntityState__WEBPACK_IMPORTED_MODULE_5__.ElementState {
|
|
|
112094
112128
|
const acsId = this.getAuxiliaryCoordinateSystemId();
|
|
112095
112129
|
if (_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.isValid(acsId))
|
|
112096
112130
|
hydrateRequest.acsId = acsId;
|
|
112097
|
-
this.iModel.subcategories.preload(hydrateRequest, this.categorySelector.categories);
|
|
112098
112131
|
}
|
|
112099
112132
|
/** Asynchronously load any required data for this ViewState from the backend.
|
|
112100
112133
|
* FINAL, No subclass should override load. If additional load behavior is needed, see preload and postload.
|
|
@@ -112109,15 +112142,16 @@ class ViewState extends _EntityState__WEBPACK_IMPORTED_MODULE_5__.ElementState {
|
|
|
112109
112142
|
const hydrateRequest = {};
|
|
112110
112143
|
this.preload(hydrateRequest);
|
|
112111
112144
|
const promises = [
|
|
112112
|
-
_itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.IModelReadRpcInterface.getClientForRouting(this.iModel.routingContext.token).hydrateViewState(this.iModel.getRpcProps(), hydrateRequest)
|
|
112145
|
+
_itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.IModelReadRpcInterface.getClientForRouting(this.iModel.routingContext.token).hydrateViewState(this.iModel.getRpcProps(), hydrateRequest).
|
|
112146
|
+
then(async (hydrateResponse) => this.postload(hydrateResponse)),
|
|
112113
112147
|
this.displayStyle.load(),
|
|
112114
112148
|
];
|
|
112115
|
-
const
|
|
112116
|
-
|
|
112117
|
-
|
|
112149
|
+
const subcategories = this.iModel.subcategories.load(this.categorySelector.categories);
|
|
112150
|
+
if (undefined !== subcategories)
|
|
112151
|
+
promises.push(subcategories.promise.then((_) => { }));
|
|
112152
|
+
await Promise.all(promises);
|
|
112118
112153
|
}
|
|
112119
112154
|
async postload(hydrateResponse) {
|
|
112120
|
-
this.iModel.subcategories.postload(hydrateResponse);
|
|
112121
112155
|
if (hydrateResponse.acsElementProps)
|
|
112122
112156
|
this._auxCoordSystem = _AuxCoordSys__WEBPACK_IMPORTED_MODULE_3__.AuxCoordSystemState.fromProps(hydrateResponse.acsElementProps, this.iModel);
|
|
112123
112157
|
}
|
|
@@ -287059,7 +287093,7 @@ class TestContext {
|
|
|
287059
287093
|
this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
|
|
287060
287094
|
const iModelClient = new imodels_client_management_1.IModelsClient({ api: { baseUrl: `https://${(_a = process.env.IMJS_URL_PREFIX) !== null && _a !== void 0 ? _a : ""}api.bentley.com/imodels` } });
|
|
287061
287095
|
await core_frontend_1.NoRenderApp.startup({
|
|
287062
|
-
applicationVersion: "3.4.0-dev.
|
|
287096
|
+
applicationVersion: "3.4.0-dev.2",
|
|
287063
287097
|
applicationId: this.settings.gprid,
|
|
287064
287098
|
authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.adminUserAccessToken),
|
|
287065
287099
|
hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
|
|
@@ -305516,7 +305550,7 @@ module.exports = JSON.parse('{"name":"axios","version":"0.21.4","description":"P
|
|
|
305516
305550
|
/***/ ((module) => {
|
|
305517
305551
|
|
|
305518
305552
|
"use strict";
|
|
305519
|
-
module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"3.4.0-dev.
|
|
305553
|
+
module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"3.4.0-dev.2","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.4.0-dev.2","@itwin/core-bentley":"workspace:^3.4.0-dev.2","@itwin/core-common":"workspace:^3.4.0-dev.2","@itwin/core-geometry":"workspace:^3.4.0-dev.2","@itwin/core-orbitgt":"workspace:^3.4.0-dev.2","@itwin/core-quantity":"workspace:^3.4.0-dev.2","@itwin/webgl-compatibility":"workspace:^3.4.0-dev.2"},"//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.3.1","@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":"^7.3.9","@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":"^4.0.0","typescript":"~4.4.0","webpack":"^5.64.4"},"//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":"^7.3.5","superagent":"7.1.3","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"}}]}}');
|
|
305520
305554
|
|
|
305521
305555
|
/***/ }),
|
|
305522
305556
|
|