@itwin/rpcinterface-full-stack-tests 5.6.0-dev.1 → 5.6.0-dev.10

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.
@@ -125159,6 +125159,10 @@ class IModelApp {
125159
125159
  * @beta
125160
125160
  */
125161
125161
  static applicationLogoCard;
125162
+ /** Applications may implement this method to supply a Logo Card footer which will always be placed last.
125163
+ * @beta
125164
+ */
125165
+ static applicationLogoCardFooter;
125162
125166
  /** Make a new Logo Card. Call this method from your implementation of [[IModelApp.applicationLogoCard]]
125163
125167
  * @param opts Options for Logo Card
125164
125168
  * @beta
@@ -139210,6 +139214,9 @@ class ScreenViewport extends Viewport {
139210
139214
  for (const ref of this.getTileTreeRefs()) {
139211
139215
  promises.push(ref.addAttributions(logos, this));
139212
139216
  }
139217
+ if (undefined !== _IModelApp__WEBPACK_IMPORTED_MODULE_10__.IModelApp.applicationLogoCardFooter) {
139218
+ logos.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_10__.IModelApp.applicationLogoCardFooter());
139219
+ }
139213
139220
  await Promise.all(promises);
139214
139221
  ev.stopPropagation();
139215
139222
  };
@@ -186566,7 +186573,7 @@ function readPnts(stream, dataOffset, pnts) {
186566
186573
  }
186567
186574
  async function decodeDracoPointCloud(buf) {
186568
186575
  try {
186569
- const dracoLoader = (await __webpack_require__.e(/*! import() */ "vendors-common_temp_node_modules_pnpm_loaders_gl_draco_4_3_4_node_modules_loaders_gl_draco_di-40e622").then(__webpack_require__.bind(__webpack_require__, /*! @loaders.gl/draco */ "../../common/temp/node_modules/.pnpm/@loaders.gl+draco@4.3.4/node_modules/@loaders.gl/draco/dist/index.js"))).DracoLoader;
186576
+ const dracoLoader = (await __webpack_require__.e(/*! import() */ "vendors-common_temp_node_modules_pnpm_loaders_gl_draco_4_3_4__loaders_gl_core_4_3_4_node_modu-4c1fc9").then(__webpack_require__.bind(__webpack_require__, /*! @loaders.gl/draco */ "../../common/temp/node_modules/.pnpm/@loaders.gl+draco@4.3.4_@loaders.gl+core@4.3.4/node_modules/@loaders.gl/draco/dist/index.js"))).DracoLoader;
186570
186577
  const mesh = await dracoLoader.parse(buf, {});
186571
186578
  if (mesh.topology !== "point-list")
186572
186579
  return undefined;
@@ -198826,7 +198833,7 @@ class GltfReader {
198826
198833
  if (_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.ProcessDetector.isIEBrowser) {
198827
198834
  throw new Error("Unsupported browser for Draco decoding");
198828
198835
  }
198829
- const dracoLoader = (await __webpack_require__.e(/*! import() */ "vendors-common_temp_node_modules_pnpm_loaders_gl_draco_4_3_4_node_modules_loaders_gl_draco_di-40e622").then(__webpack_require__.bind(__webpack_require__, /*! @loaders.gl/draco */ "../../common/temp/node_modules/.pnpm/@loaders.gl+draco@4.3.4/node_modules/@loaders.gl/draco/dist/index.js"))).DracoLoader;
198836
+ const dracoLoader = (await __webpack_require__.e(/*! import() */ "vendors-common_temp_node_modules_pnpm_loaders_gl_draco_4_3_4__loaders_gl_core_4_3_4_node_modu-4c1fc9").then(__webpack_require__.bind(__webpack_require__, /*! @loaders.gl/draco */ "../../common/temp/node_modules/.pnpm/@loaders.gl+draco@4.3.4_@loaders.gl+core@4.3.4/node_modules/@loaders.gl/draco/dist/index.js"))).DracoLoader;
198830
198837
  await Promise.all(dracoMeshes.map(async (x) => this.decodeDracoMesh(x, dracoLoader)));
198831
198838
  }
198832
198839
  catch (err) {
@@ -233624,7 +233631,7 @@ class ClipShape extends ClipPrimitive {
233624
233631
  }
233625
233632
  /**
233626
233633
  * Return true if this ClipShape has a local to world transform
233627
- * @deprecated Use duplicate property [[transformValid]] or type guard [[hasTransformFromClip]] instead.
233634
+ * @deprecated in 5.1.9 - will not be removed until after 2027-01-05. Use duplicate property [[transformValid]] or type guard [[hasTransformFromClip]] instead.
233628
233635
  */
233629
233636
  get transformIsValid() {
233630
233637
  return this._transformFromClip !== undefined;
@@ -262882,7 +262889,7 @@ class Ellipsoid {
262882
262889
  * @param angleB end point of arc (given as angles on this ellipsoid)
262883
262890
  * @returns arc in the plane defined by the normal at the intermediate point. If calculation fails, return an
262884
262891
  * arc with zero matrix.
262885
- * @deprecated Prefer [[sectionArcInPlaneOfInterpolatedNormal]], which has expanded return type.
262892
+ * @deprecated in 5.1.9 - will not be removed until after 2027-01-05. Prefer [[sectionArcInPlaneOfInterpolatedNormal]], which has expanded return type.
262886
262893
  */
262887
262894
  sectionArcWithIntermediateNormal(angleA, intermediateNormalFraction, angleB) {
262888
262895
  const arc = this.sectionArcInPlaneOfInterpolatedNormal(angleA, intermediateNormalFraction, angleB);
@@ -344503,7 +344510,7 @@ class TestContext {
344503
344510
  this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
344504
344511
  const iModelClient = new imodels_client_management_1.IModelsClient({ api: { baseUrl: `https://${process.env.IMJS_URL_PREFIX ?? ""}api.bentley.com/imodels` } });
344505
344512
  await core_frontend_1.NoRenderApp.startup({
344506
- applicationVersion: "5.6.0-dev.1",
344513
+ applicationVersion: "5.6.0-dev.10",
344507
344514
  applicationId: this.settings.gprid,
344508
344515
  authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.serviceAuthToken),
344509
344516
  hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
@@ -354091,6 +354098,10 @@ function traverseContentItemArrayFieldValue(visitor, fieldHierarchy, mergedField
354091
354098
  return;
354092
354099
  }
354093
354100
  try {
354101
+ if (fieldHierarchy.field.isPropertiesField() && fieldHierarchy.field.isArrayPropertiesField()) {
354102
+ parentFieldName = combineFieldNames(fieldHierarchy.field.name, parentFieldName);
354103
+ fieldHierarchy = { field: fieldHierarchy.field.itemsField, childFields: [] };
354104
+ }
354094
354105
  const itemType = valueType.memberType;
354095
354106
  rawValues.forEach((_, i) => {
354096
354107
  traverseContentItemFieldValue(visitor, fieldHierarchy, mergedFieldNames, itemType, parentFieldName, rawValues[i], displayValues[i]);
@@ -354107,9 +354118,9 @@ function traverseContentItemStructFieldValue(visitor, fieldHierarchy, mergedFiel
354107
354118
  return;
354108
354119
  }
354109
354120
  try {
354110
- if (fieldHierarchy.field.isNestedContentField()) {
354111
- parentFieldName = combineFieldNames(fieldHierarchy.field.name, parentFieldName);
354112
- }
354121
+ // `fieldHierarchy.field` is either a nested content field or a struct property field - either way,
354122
+ // we want to combine its name into the parent field name
354123
+ parentFieldName = combineFieldNames(fieldHierarchy.field.name, parentFieldName);
354113
354124
  valueType.members.forEach((memberDescription) => {
354114
354125
  let memberField = fieldHierarchy.childFields.find((f) => f.field.name === memberDescription.name);
354115
354126
  if (!memberField) {
@@ -354925,6 +354936,8 @@ exports.Field = Field;
354925
354936
  * @public
354926
354937
  */
354927
354938
  class PropertiesField extends Field {
354939
+ #parentStructField;
354940
+ #parentArrayField;
354928
354941
  /** A list of properties this field is created from */
354929
354942
  properties;
354930
354943
  constructor(categoryOrProps, name, label, type, isReadonly, priority, properties, editor, renderer) {
@@ -354945,6 +354958,45 @@ class PropertiesField extends Field {
354945
354958
  super(props);
354946
354959
  this.properties = props.properties;
354947
354960
  }
354961
+ /**
354962
+ * Sets provided [[NestedContentField]] as parent of this field.
354963
+ * @throws [[PresentationError]] if this field already has `parentArrayField` or `parentStructField`.
354964
+ */
354965
+ rebuildParentship(parentField) {
354966
+ if (parentField && (this.parentStructField || this.parentArrayField)) {
354967
+ throw new Error_js_1.PresentationError(Error_js_1.PresentationStatus.InvalidArgument, `A field may only have one of: parent field, struct field or array field.`);
354968
+ }
354969
+ super.rebuildParentship(parentField);
354970
+ }
354971
+ /**
354972
+ * Returns parent struct field that this field is part of, or sets the provided [[StructPropertiesField]]
354973
+ * as `parentStructField` of this field.
354974
+ *
354975
+ * @throws [[PresentationError]] if this field already has `parentArrayField` or `parent`.
354976
+ */
354977
+ get parentStructField() {
354978
+ return this.#parentStructField;
354979
+ }
354980
+ set parentStructField(field) {
354981
+ if (this.parent || this.parentArrayField) {
354982
+ throw new Error_js_1.PresentationError(Error_js_1.PresentationStatus.InvalidArgument, `A field may only have one of: parent field, struct field or array field.`);
354983
+ }
354984
+ this.#parentStructField = field;
354985
+ }
354986
+ /** Returns parent array field that this field is part of, or sets the provided [[ArrayPropertiesField]]
354987
+ * as `parentArrayField` of this field.
354988
+ *
354989
+ * @throws [[PresentationError]] if this field already has `parentStructField` or `parent`.
354990
+ */
354991
+ get parentArrayField() {
354992
+ return this.#parentArrayField;
354993
+ }
354994
+ set parentArrayField(field) {
354995
+ if (this.parent || this.parentStructField) {
354996
+ throw new Error_js_1.PresentationError(Error_js_1.PresentationStatus.InvalidArgument, `A field may only have one of: parent field, struct field or array field.`);
354997
+ }
354998
+ this.#parentArrayField = field;
354999
+ }
354948
355000
  /** Is this a an array property field */
354949
355001
  isArrayPropertiesField() {
354950
355002
  return false;
@@ -355071,7 +355123,7 @@ exports.PropertiesField = PropertiesField;
355071
355123
  * @public
355072
355124
  */
355073
355125
  class ArrayPropertiesField extends PropertiesField {
355074
- itemsField;
355126
+ #itemsField;
355075
355127
  constructor(categoryOrProps, name, label, type, itemsField, isReadonly, priority, properties, editor, renderer) {
355076
355128
  /* c8 ignore next 15 */
355077
355129
  const props = "category" in categoryOrProps
@@ -355091,11 +355143,23 @@ class ArrayPropertiesField extends PropertiesField {
355091
355143
  super(props);
355092
355144
  this.itemsField = props.itemsField;
355093
355145
  }
355146
+ /** Returns or sets the array items field. When setting, updates `parentArrayField` of the items field to this field. */
355147
+ get itemsField() {
355148
+ return this.#itemsField;
355149
+ }
355150
+ set itemsField(field) {
355151
+ this.#itemsField = field;
355152
+ this.#itemsField.parentArrayField = this;
355153
+ }
355094
355154
  isArrayPropertiesField() {
355095
355155
  return true;
355096
355156
  }
355157
+ /** Get array item field if it matches the given name, or `undefined` if not. */
355158
+ getFieldByName(name) {
355159
+ return this.#itemsField.name === name ? this.#itemsField : undefined;
355160
+ }
355097
355161
  clone() {
355098
- const clone = new ArrayPropertiesField(this);
355162
+ const clone = new ArrayPropertiesField({ ...this, itemsField: this.itemsField.clone() });
355099
355163
  clone.rebuildParentship(this.parent);
355100
355164
  return clone;
355101
355165
  }
@@ -355149,7 +355213,7 @@ exports.ArrayPropertiesField = ArrayPropertiesField;
355149
355213
  * @public
355150
355214
  */
355151
355215
  class StructPropertiesField extends PropertiesField {
355152
- memberFields;
355216
+ #memberFields;
355153
355217
  constructor(categoryOrProps, name, label, type, memberFields, isReadonly, priority, properties, editor, renderer) {
355154
355218
  /* c8 ignore next 15 */
355155
355219
  const props = "category" in categoryOrProps
@@ -355169,11 +355233,23 @@ class StructPropertiesField extends PropertiesField {
355169
355233
  super(props);
355170
355234
  this.memberFields = props.memberFields;
355171
355235
  }
355236
+ /** Returns or sets the struct member fields. When setting, updates `parentStructField` of each member field to this field. */
355237
+ get memberFields() {
355238
+ return this.#memberFields;
355239
+ }
355240
+ set memberFields(fields) {
355241
+ this.#memberFields = fields;
355242
+ this.#memberFields.forEach((field) => (field.parentStructField = this));
355243
+ }
355172
355244
  isStructPropertiesField() {
355173
355245
  return true;
355174
355246
  }
355247
+ /** Get a member field by its name. */
355248
+ getFieldByName(name) {
355249
+ return (0, exports.getFieldByName)(this.#memberFields, name, false);
355250
+ }
355175
355251
  clone() {
355176
- const clone = new StructPropertiesField(this);
355252
+ const clone = new StructPropertiesField({ ...this, memberFields: this.memberFields.map((f) => f.clone()) });
355177
355253
  clone.rebuildParentship(this.parent);
355178
355254
  return clone;
355179
355255
  }
@@ -371127,7 +371203,7 @@ var loadLanguages = instance.loadLanguages;
371127
371203
  /***/ ((module) => {
371128
371204
 
371129
371205
  "use strict";
371130
- module.exports = /*#__PURE__*/JSON.parse('{"name":"@itwin/core-frontend","version":"5.6.0-dev.1","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 && npm run -s copy:draco","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 ES2022 --outDir lib/esm","clean":"rimraf -g 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","copy:draco":"cpx \\"./node_modules/@loaders.gl/draco/dist/libs/*\\" ./lib/public/scripts","docs":"betools docs --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 \\"./src/**/*.ts\\" 1>&2","lint-fix":"eslint --fix -f visualstudio \\"./src/**/*.ts\\" 1>&2","lint-deprecation":"eslint --fix -f visualstudio --no-inline-config -c ../../common/config/eslint/eslint.config.deprecation-policy.js \\"./src/**/*.ts\\"","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run webpackTestWorker && vitest --run","cover":"npm run webpackTestWorker && vitest --run","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:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*"},"//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/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*","@itwin/object-storage-core":"^3.0.4","@itwin/eslint-plugin":"5.2.2-dev.2","@types/chai-as-promised":"^7","@types/draco3d":"^1.4.10","@types/sinon":"^17.0.2","@vitest/browser":"^3.0.6","@vitest/coverage-v8":"^3.0.6","cpx2":"^8.0.0","eslint":"^9.31.0","glob":"^10.5.0","playwright":"~1.56.1","rimraf":"^6.0.1","sinon":"^17.0.2","source-map-loader":"^5.0.0","typescript":"~5.6.2","typemoq":"^2.1.0","vitest":"^3.0.6","vite-multiple-assets":"^1.3.1","vite-plugin-static-copy":"2.2.0","webpack":"^5.97.1"},"//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/webgl-compatibility":"workspace:*","@loaders.gl/draco":"^4.3.4","fuse.js":"^3.3.0","wms-capabilities":"0.4.0"}}');
371206
+ module.exports = /*#__PURE__*/JSON.parse('{"name":"@itwin/core-frontend","version":"5.6.0-dev.10","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 && npm run -s copy:draco","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 ES2022 --outDir lib/esm","clean":"rimraf -g 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","copy:draco":"cpx \\"./node_modules/@loaders.gl/draco/dist/libs/*\\" ./lib/public/scripts","docs":"betools docs --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 \\"./src/**/*.ts\\" 1>&2","lint-fix":"eslint --fix -f visualstudio \\"./src/**/*.ts\\" 1>&2","lint-deprecation":"eslint --fix -f visualstudio --no-inline-config -c ../../common/config/eslint/eslint.config.deprecation-policy.js \\"./src/**/*.ts\\"","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run webpackTestWorker && vitest --run","cover":"npm run webpackTestWorker && vitest --run","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:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*"},"//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/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*","@itwin/object-storage-core":"^3.0.4","@itwin/eslint-plugin":"5.2.2-dev.2","@types/chai-as-promised":"^7","@types/draco3d":"^1.4.10","@types/sinon":"^17.0.2","@vitest/browser":"^3.0.6","@vitest/coverage-v8":"^3.0.6","cpx2":"^8.0.0","eslint":"^9.31.0","glob":"^10.5.0","playwright":"~1.56.1","rimraf":"^6.0.1","sinon":"^17.0.2","source-map-loader":"^5.0.0","typescript":"~5.6.2","typemoq":"^2.1.0","vitest":"^3.0.6","vite-multiple-assets":"^1.3.1","vite-plugin-static-copy":"2.2.0","webpack":"^5.97.1"},"//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/webgl-compatibility":"workspace:*","@loaders.gl/core":"^4.3.4","@loaders.gl/draco":"^4.3.4","fuse.js":"^3.3.0","wms-capabilities":"0.4.0"}}');
371131
371207
 
371132
371208
  /***/ }),
371133
371209