@itwin/rpcinterface-full-stack-tests 4.1.0-dev.19 → 4.1.0-dev.20

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.
@@ -32593,9 +32593,33 @@ var QueryParamType;
32593
32593
  QueryParamType[QueryParamType["Struct"] = 11] = "Struct";
32594
32594
  })(QueryParamType || (QueryParamType = {}));
32595
32595
  /**
32596
+ * Bind values to an ECSQL query.
32597
+ *
32598
+ * All binding class methods accept an `indexOrName` parameter as a `string | number` type and a value to bind to it.
32599
+ * A binding must be mapped either by a positional index or a string/name. See the examples below.
32600
+ *
32601
+ * @example
32602
+ * Parameter By Index:
32603
+ * ```sql
32604
+ * SELECT a, v FROM test.Foo WHERE a=? AND b=?
32605
+ * ```
32606
+ * The first `?` is index 1 and the second `?` is index 2. The parameter index starts with 1 and not 0.
32607
+ *
32608
+ * @example
32609
+ * Parameter By Name:
32610
+ * ```sql
32611
+ * SELECT a, v FROM test.Foo WHERE a=:name_a AND b=:name_b
32612
+ * ```
32613
+ * Using "name_a" as the `indexOrName` will bind the provided value to `name_a` in the query. And the same goes for
32614
+ * using "name_b" and the `name_b` binding respectively.
32615
+ *
32616
+ * @see
32617
+ * - [ECSQL Parameters]($docs/learning/ECSQL.md#ecsql-parameters)
32618
+ * - [ECSQL Parameter Types]($docs/learning/ECSQLParameterTypes)
32619
+ * - [ECSQL Code Examples]($docs/learning/backend/ECSQLCodeExamples#parameter-bindings)
32620
+ *
32596
32621
  * @public
32597
- * QueryBinder allow to bind values to a ECSQL query.
32598
- * */
32622
+ */
32599
32623
  class QueryBinder {
32600
32624
  constructor() {
32601
32625
  this._args = {};
@@ -32871,7 +32895,9 @@ class QueryBinder {
32871
32895
  }
32872
32896
  return params;
32873
32897
  }
32874
- serialize() { return this._args; }
32898
+ serialize() {
32899
+ return this._args;
32900
+ }
32875
32901
  }
32876
32902
  /** @internal */
32877
32903
  var DbRequestKind;
@@ -34401,7 +34427,9 @@ class PropertyMetaDataMap {
34401
34427
  this._byNoCase.set(property.jsonName.toLowerCase(), property.index);
34402
34428
  }
34403
34429
  }
34404
- get length() { return this.properties.length; }
34430
+ get length() {
34431
+ return this.properties.length;
34432
+ }
34405
34433
  [Symbol.iterator]() {
34406
34434
  return this.properties[Symbol.iterator]();
34407
34435
  }
@@ -34427,9 +34455,33 @@ class PropertyMetaDataMap {
34427
34455
  return undefined;
34428
34456
  }
34429
34457
  }
34430
- /** @beta */
34458
+ /**
34459
+ * Execute ECSQL statements and read the results.
34460
+ *
34461
+ * The query results are returned one row at a time. The format of the row is dictated by the
34462
+ * [[QueryOptions.rowFormat]] specified in the `options` parameter of the constructed ECSqlReader object. Defaults to
34463
+ * [[QueryRowFormat.UseECSqlPropertyIndexes]] when no `rowFormat` is defined.
34464
+ *
34465
+ * There are three primary ways to interact with and read the results:
34466
+ * - Stream them using ECSqlReader as an asynchronous iterator.
34467
+ * - Iterator over them manually using [[ECSqlReader.step]].
34468
+ * - Capture all of the results at once in an array using [[QueryRowProxy.toArray]].
34469
+ *
34470
+ * @see
34471
+ * - [ECSQL Overview]($docs/learning/backend/ExecutingECSQL)
34472
+ * - [ECSQL Row Formats]($docs/learning/ECSQLRowFormat) for more details on how rows are formatted.
34473
+ * - [ECSQL Code Examples]($docs/learning/ECSQLCodeExamples#iterating-over-query-results) for examples of each
34474
+ * of the above ways of interacting with ECSqlReader.
34475
+ *
34476
+ * @note When iterating over the results, the current row will be a [[QueryRowProxy]] object. To get the row as a basic
34477
+ * JavaScript object, call [[QueryRowProxy.toRow]] on it.
34478
+ *
34479
+ * @beta
34480
+ */
34431
34481
  class ECSqlReader {
34432
- /** @internal */
34482
+ /**
34483
+ * @internal
34484
+ */
34433
34485
  constructor(_executor, query, param, options) {
34434
34486
  this._executor = _executor;
34435
34487
  this.query = query;
@@ -34443,6 +34495,7 @@ class ECSqlReader {
34443
34495
  this._param = new _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.QueryBinder().serialize();
34444
34496
  this._lockArgs = false;
34445
34497
  this._stats = { backendCpuTime: 0, backendTotalTime: 0, backendMemUsed: 0, backendRowsReturned: 0, totalTime: 0, retryCount: 0 };
34498
+ this._options = new _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.QueryOptionsBuilder().getOptions();
34446
34499
  this._rowProxy = new Proxy(this, {
34447
34500
  get: (target, key) => {
34448
34501
  if (typeof key === "string") {
@@ -34477,7 +34530,6 @@ class ECSqlReader {
34477
34530
  return keys;
34478
34531
  },
34479
34532
  });
34480
- this._options = new _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.QueryOptionsBuilder().getOptions();
34481
34533
  if (query.trim().length === 0) {
34482
34534
  throw new Error("expecting non-empty ecsql statement");
34483
34535
  }
@@ -34524,21 +34576,70 @@ class ECSqlReader {
34524
34576
  }
34525
34577
  this._done = false;
34526
34578
  }
34527
- get current() { return this._rowProxy; }
34528
- // clear all bindings
34579
+ /**
34580
+ * Get the current row from the query result. The current row is the one most recently stepped-to
34581
+ * (by step() or during iteration).
34582
+ *
34583
+ * Each value from the row can be accessed by index or by name.
34584
+ *
34585
+ * The format of the row is dictated by the [[QueryOptions.rowFormat]] specified in the `options` parameter of the
34586
+ * constructed ECSqlReader object.
34587
+ *
34588
+ * @see
34589
+ * - [[QueryRowFormat]]
34590
+ * - [ECSQL Row Formats]($docs/learning/ECSQLRowFormat)
34591
+ *
34592
+ * @note The current row is be a [[QueryRowProxy]] object. To get the row as a basic JavaScript object, call
34593
+ * [[QueryRowProxy.toRow]] on it.
34594
+ *
34595
+ * @example
34596
+ * ```ts
34597
+ * const reader = iModel.createQueryReader("SELECT ECInstanceId FROM bis.Element");
34598
+ * while (await reader.step()) {
34599
+ * // Both lines below print the same value
34600
+ * console.log(reader.current[0]);
34601
+ * console.log(reader.current.ecinstanceid);
34602
+ * }
34603
+ * ```
34604
+ *
34605
+ * @return The current row as a [[QueryRowProxy]].
34606
+ */
34607
+ get current() {
34608
+ return this._rowProxy;
34609
+ }
34610
+ /**
34611
+ * Clear all bindings.
34612
+ */
34529
34613
  resetBindings() {
34530
34614
  this._param = new _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.QueryBinder().serialize();
34531
34615
  this._lockArgs = false;
34532
34616
  }
34533
- // return if there is any more rows available
34534
- get done() { return this._done; }
34617
+ /**
34618
+ * Returns if there are more rows available.
34619
+ *
34620
+ * @returns `true` if all rows have been stepped through already.<br/>
34621
+ * `false` if there are any yet unaccessed rows.
34622
+ */
34623
+ get done() {
34624
+ return this._done;
34625
+ }
34626
+ /**
34627
+ *
34628
+ */
34535
34629
  getRowInternal() {
34536
34630
  if (this._localRows.length <= this._localOffset)
34537
34631
  throw new Error("no current row");
34538
34632
  return this._localRows[this._localOffset];
34539
34633
  }
34540
- // return performance related statistics for current query.
34541
- get stats() { return this._stats; }
34634
+ /**
34635
+ * Get performance-related statistics for the current query.
34636
+ */
34637
+ get stats() {
34638
+ return this._stats;
34639
+ }
34640
+ /**
34641
+ *
34642
+ */
34542
34643
  async readRows() {
34543
34644
  if (this._globalDone) {
34544
34645
  return [];
@@ -34569,6 +34670,9 @@ class ECSqlReader {
34569
34670
  }
34570
34671
  return resp.data;
34571
34672
  }
34673
+ /**
34674
+ *
34675
+ */
34572
34676
  async runWithRetry(request) {
34573
34677
  const needRetry = (rs) => (rs.status === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.DbResponseStatus.Partial || rs.status === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.DbResponseStatus.QueueFull || rs.status === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.DbResponseStatus.Timeout) && (rs.data.length === 0);
34574
34678
  const updateStats = (rs) => {
@@ -34599,6 +34703,9 @@ class ECSqlReader {
34599
34703
  updateStats(resp);
34600
34704
  return resp;
34601
34705
  }
34706
+ /**
34707
+ *
34708
+ */
34602
34709
  formatCurrentRow(onlyReturnObject = false) {
34603
34710
  if (!onlyReturnObject && this._options.rowFormat === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.QueryRowFormat.UseECSqlPropertyIndexes) {
34604
34711
  return this.getRowInternal();
@@ -34616,12 +34723,20 @@ class ECSqlReader {
34616
34723
  }
34617
34724
  return formattedRow;
34618
34725
  }
34726
+ /**
34727
+ * Get the metadata for each column in the query result.
34728
+ *
34729
+ * @returns An array of [[QueryPropertyMetaData]].
34730
+ */
34619
34731
  async getMetaData() {
34620
34732
  if (this._props.length === 0) {
34621
34733
  await this.fetchRows();
34622
34734
  }
34623
34735
  return this._props.properties;
34624
34736
  }
34737
+ /**
34738
+ *
34739
+ */
34625
34740
  async fetchRows() {
34626
34741
  this._localOffset = -1;
34627
34742
  this._localRows = await this.readRows();
@@ -34629,6 +34744,12 @@ class ECSqlReader {
34629
34744
  this._done = true;
34630
34745
  }
34631
34746
  }
34747
+ /**
34748
+ * Step to the next row of the query result.
34749
+ *
34750
+ * @returns `true` if a row can be read from `current`.<br/>
34751
+ * `false` if there are no more rows; i.e., all rows have been stepped through already.
34752
+ */
34632
34753
  async step() {
34633
34754
  if (this._done) {
34634
34755
  return false;
@@ -34644,6 +34765,11 @@ class ECSqlReader {
34644
34765
  }
34645
34766
  return true;
34646
34767
  }
34768
+ /**
34769
+ * Get all remaining rows from the query result.
34770
+ *
34771
+ * @returns An array of all remaining rows from the query result.
34772
+ */
34647
34773
  async toArray() {
34648
34774
  const rows = [];
34649
34775
  while (await this.step()) {
@@ -34651,9 +34777,21 @@ class ECSqlReader {
34651
34777
  }
34652
34778
  return rows;
34653
34779
  }
34780
+ /**
34781
+ * Accessor for using ECSqlReader as an asynchronous iterator.
34782
+ *
34783
+ * @returns An asynchronous iterator over the rows returned by the executed ECSQL query.
34784
+ */
34654
34785
  [Symbol.asyncIterator]() {
34655
34786
  return this;
34656
34787
  }
34788
+ /**
34789
+ * Calls step when called as an iterator.
34790
+ *
34791
+ * Returns the row alongside a `done` boolean to indicate if there are any more rows for an iterator to step to.
34792
+ *
34793
+ * @returns An object with the keys: `value` which contains the row and `done` which contains a boolean.
34794
+ */
34657
34795
  async next() {
34658
34796
  if (await this.step()) {
34659
34797
  return {
@@ -82759,7 +82897,7 @@ class IModelConnection extends _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.I
82759
82897
  *
82760
82898
  * See also:
82761
82899
  * - [ECSQL Overview]($docs/learning/backend/ExecutingECSQL)
82762
- * - [Code Examples]($docs/learning/backend/ECSQLCodeExamples)
82900
+ * - [Code Examples]($docs/learning/ECSQLCodeExamples)
82763
82901
  *
82764
82902
  * @param ecsql The ECSQL statement to execute
82765
82903
  * @param params The values to bind to the parameters (if the ECSQL has any).
@@ -82779,7 +82917,7 @@ class IModelConnection extends _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.I
82779
82917
  *
82780
82918
  * See also:
82781
82919
  * - [ECSQL Overview]($docs/learning/backend/ExecutingECSQL)
82782
- * - [Code Examples]($docs/learning/backend/ECSQLCodeExamples)
82920
+ * - [Code Examples]($docs/learning/ECSQLCodeExamples)
82783
82921
  *
82784
82922
  * @param ecsql The ECSQL statement to execute
82785
82923
  * @param params The values to bind to the parameters (if the ECSQL has any).
@@ -82800,7 +82938,7 @@ class IModelConnection extends _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.I
82800
82938
  *
82801
82939
  * See also:
82802
82940
  * - [ECSQL Overview]($docs/learning/backend/ExecutingECSQL)
82803
- * - [Code Examples]($docs/learning/backend/ECSQLCodeExamples)
82941
+ * - [Code Examples]($docs/learning/ECSQLCodeExamples)
82804
82942
  *
82805
82943
  * @param ecsql The ECSQL statement to execute
82806
82944
  * @param token None empty restart token. The previous query with same token would be cancelled. This would cause
@@ -149670,6 +149808,27 @@ class ArcGisUtilities {
149670
149808
  }
149671
149809
  return sources;
149672
149810
  }
149811
+ /**
149812
+ * Parse the URL to check if it represent a valid ArcGIS service
149813
+ * @param url URL to validate.
149814
+ * @param serviceType Service type to validate (i.e FeatureServer, MapServer)
149815
+ * @return Validation Status.
149816
+ */
149817
+ static validateUrl(url, serviceType) {
149818
+ const urlObj = new URL(url.toLowerCase());
149819
+ if (urlObj.pathname.includes("/rest/services/")) {
149820
+ // This seem to be an ArcGIS URL, lets check the service type
149821
+ if (urlObj.pathname.endsWith(`${serviceType.toLowerCase()}`)) {
149822
+ return _internal__WEBPACK_IMPORTED_MODULE_1__.MapLayerSourceStatus.Valid;
149823
+ }
149824
+ else {
149825
+ return _internal__WEBPACK_IMPORTED_MODULE_1__.MapLayerSourceStatus.IncompatibleFormat;
149826
+ }
149827
+ }
149828
+ else {
149829
+ return _internal__WEBPACK_IMPORTED_MODULE_1__.MapLayerSourceStatus.InvalidUrl;
149830
+ }
149831
+ }
149673
149832
  /**
149674
149833
  * Attempt to access an ArcGIS service, and validate its service metadata.
149675
149834
  * @param url URL of the source to validate.
@@ -152547,6 +152706,9 @@ class WmtsMapLayerFormat extends ImageryMapLayerFormat {
152547
152706
  WmtsMapLayerFormat.formatId = "WMTS";
152548
152707
  class ArcGISMapLayerFormat extends ImageryMapLayerFormat {
152549
152708
  static async validateSource(url, userName, password, ignoreCache) {
152709
+ const urlValidation = _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisUtilities.validateUrl(url, "MapServer");
152710
+ if (urlValidation !== _internal__WEBPACK_IMPORTED_MODULE_0__.MapLayerSourceStatus.Valid)
152711
+ return { status: urlValidation };
152550
152712
  // Some Map service supporting only tiles don't include the 'Map' capabilities, thus we can't make it mandatory.
152551
152713
  return _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisUtilities.validateSource(url, this.formatId, [], userName, password, ignoreCache);
152552
152714
  }
@@ -152937,6 +153099,9 @@ var MapLayerSourceStatus;
152937
153099
  MapLayerSourceStatus[MapLayerSourceStatus["RequireAuth"] = 5] = "RequireAuth";
152938
153100
  /** Map-layer coordinate system is not supported */
152939
153101
  MapLayerSourceStatus[MapLayerSourceStatus["InvalidCoordinateSystem"] = 6] = "InvalidCoordinateSystem";
153102
+ /** Format is not compatible with the URL provided.
153103
+ */
153104
+ MapLayerSourceStatus[MapLayerSourceStatus["IncompatibleFormat"] = 7] = "IncompatibleFormat";
152940
153105
  })(MapLayerSourceStatus || (MapLayerSourceStatus = {}));
152941
153106
  /** A source for map layers. These may be catalogued for convenient use by users or applications.
152942
153107
  * @public
@@ -276751,7 +276916,7 @@ class TestContext {
276751
276916
  this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
276752
276917
  const iModelClient = new imodels_client_management_1.IModelsClient({ api: { baseUrl: `https://${process.env.IMJS_URL_PREFIX ?? ""}api.bentley.com/imodels` } });
276753
276918
  await core_frontend_1.NoRenderApp.startup({
276754
- applicationVersion: "4.1.0-dev.19",
276919
+ applicationVersion: "4.1.0-dev.20",
276755
276920
  applicationId: this.settings.gprid,
276756
276921
  authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.adminUserAccessToken),
276757
276922
  hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
@@ -296125,7 +296290,7 @@ module.exports = JSON.parse('{"name":"axios","version":"0.21.4","description":"P
296125
296290
  /***/ ((module) => {
296126
296291
 
296127
296292
  "use strict";
296128
- module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.1.0-dev.19","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/**/*,**/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 \\"./node_modules/@itwin/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 && 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.1.0-dev.19","@itwin/core-bentley":"workspace:^4.1.0-dev.19","@itwin/core-common":"workspace:^4.1.0-dev.19","@itwin/core-geometry":"workspace:^4.1.0-dev.19","@itwin/core-orbitgt":"workspace:^4.1.0-dev.19","@itwin/core-quantity":"workspace:^4.1.0-dev.19"},"//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.0-dev.33","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/mocha":"^8.2.2","@types/node":"^18.11.5","@types/sinon":"^9.0.0","babel-loader":"~8.2.5","babel-plugin-istanbul":"~6.1.1","chai":"^4.1.2","chai-as-promised":"^7","cpx2":"^3.0.0","eslint":"^8.36.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":"~5.0.2","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/object-storage-azure":"^1.5.0","@itwin/cloud-agnostic-core":"^1.5.0","@itwin/object-storage-core":"^1.5.0","@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","wms-capabilities":"0.4.0","reflect-metadata":"0.1.13"},"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"}}]}}');
296293
+ module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.1.0-dev.20","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/**/*,**/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 \\"./node_modules/@itwin/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 && 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.1.0-dev.20","@itwin/core-bentley":"workspace:^4.1.0-dev.20","@itwin/core-common":"workspace:^4.1.0-dev.20","@itwin/core-geometry":"workspace:^4.1.0-dev.20","@itwin/core-orbitgt":"workspace:^4.1.0-dev.20","@itwin/core-quantity":"workspace:^4.1.0-dev.20"},"//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.0-dev.33","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/mocha":"^8.2.2","@types/node":"^18.11.5","@types/sinon":"^9.0.0","babel-loader":"~8.2.5","babel-plugin-istanbul":"~6.1.1","chai":"^4.1.2","chai-as-promised":"^7","cpx2":"^3.0.0","eslint":"^8.36.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":"~5.0.2","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/object-storage-azure":"^1.5.0","@itwin/cloud-agnostic-core":"^1.5.0","@itwin/object-storage-core":"^1.5.0","@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","wms-capabilities":"0.4.0","reflect-metadata":"0.1.13"},"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"}}]}}');
296129
296294
 
296130
296295
  /***/ }),
296131
296296