@itwin/ecschema-rpcinterface-tests 3.2.0-dev.22 → 3.2.0-dev.23

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.
@@ -22401,9 +22401,9 @@ module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
22401
22401
 
22402
22402
  /***/ }),
22403
22403
 
22404
- /***/ "../../common/temp/node_modules/.pnpm/i18next-browser-languagedetector@6.1.3/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js":
22404
+ /***/ "../../common/temp/node_modules/.pnpm/i18next-browser-languagedetector@6.1.4/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js":
22405
22405
  /*!************************************************************************************************************************************************************************************!*\
22406
- !*** D:/vsts_b/6/s/common/temp/node_modules/.pnpm/i18next-browser-languagedetector@6.1.3/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js ***!
22406
+ !*** D:/vsts_b/6/s/common/temp/node_modules/.pnpm/i18next-browser-languagedetector@6.1.4/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js ***!
22407
22407
  \************************************************************************************************************************************************************************************/
22408
22408
  /*! exports provided: default */
22409
22409
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -22560,7 +22560,13 @@ var querystring = {
22560
22560
  var found;
22561
22561
 
22562
22562
  if (typeof window !== 'undefined') {
22563
- var query = window.location.search.substring(1);
22563
+ var search = window.location.search;
22564
+
22565
+ if (!window.location.search && window.location.hash && window.location.hash.indexOf('?') > -1) {
22566
+ search = window.location.hash.substring(window.location.hash.indexOf('?'));
22567
+ }
22568
+
22569
+ var query = search.substring(1);
22564
22570
  var params = query.split('&');
22565
22571
 
22566
22572
  for (var i = 0; i < params.length; i++) {
@@ -116628,14 +116634,42 @@ var Unquantized;
116628
116634
  get usesUnquantizedPositions() { return true; }
116629
116635
  get qparams() { return this._qparams3d; }
116630
116636
  appendVertex(vertIndex) {
116631
- this.appendPosition(vertIndex);
116632
- this.appendFeatureIndex(vertIndex);
116637
+ this.appendTransposePosAndFeatureNdx(vertIndex);
116633
116638
  this.appendColorIndex(vertIndex);
116634
116639
  }
116635
116640
  appendFloat32(val) {
116636
116641
  f32Array[0] = val;
116637
116642
  this.append32(u32Array[0]);
116638
116643
  }
116644
+ convertFloat32(val) {
116645
+ f32Array[0] = val;
116646
+ return u32Array[0];
116647
+ }
116648
+ appendTransposePosAndFeatureNdx(vertIndex) {
116649
+ // transpose position xyz vals into [0].xyz - [3].xyz, and add feature index at .w
116650
+ // this is to order things to let shader code access much more efficiently
116651
+ const pt = this._points[vertIndex];
116652
+ const x = this.convertFloat32(pt.x);
116653
+ const y = this.convertFloat32(pt.y);
116654
+ const z = this.convertFloat32(pt.z);
116655
+ const featID = (this.args.features.featureIDs) ? this.args.features.featureIDs[vertIndex] : 0;
116656
+ this.append8(x & 0x000000ff);
116657
+ this.append8(y & 0x000000ff);
116658
+ this.append8(z & 0x000000ff);
116659
+ this.append8(featID & 0x000000ff);
116660
+ this.append8((x >>> 8) & 0x000000ff);
116661
+ this.append8((y >>> 8) & 0x000000ff);
116662
+ this.append8((z >>> 8) & 0x000000ff);
116663
+ this.append8((featID >>> 8) & 0x000000ff);
116664
+ this.append8((x >>> 16) & 0x000000ff);
116665
+ this.append8((y >>> 16) & 0x000000ff);
116666
+ this.append8((z >>> 16) & 0x000000ff);
116667
+ this.append8((featID >>> 16) & 0x000000ff);
116668
+ this.append8(x >>> 24);
116669
+ this.append8(y >>> 24);
116670
+ this.append8(z >>> 24);
116671
+ this.append8(featID >>> 24);
116672
+ }
116639
116673
  appendPosition(vertIndex) {
116640
116674
  const pt = this._points[vertIndex];
116641
116675
  this.appendFloat32(pt.x);
@@ -116926,8 +116960,13 @@ class GeometryAccumulator {
116926
116960
  }
116927
116961
  else {
116928
116962
  Object(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["assert"])(undefined !== transformOrigin);
116929
- Object(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["assert"])((verts instanceof _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__["QPoint3dList"] && transformOrigin.isAlmostEqual(verts.params.origin))
116930
- || (!(verts instanceof _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__["QPoint3dList"]) && transformOrigin.isAlmostEqual(verts.range.center)));
116963
+ if (verts instanceof _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__["QPoint3dList"]) {
116964
+ Object(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["assert"])(transformOrigin.isAlmostEqual(verts.params.origin));
116965
+ verts.params.origin.setZero();
116966
+ }
116967
+ else {
116968
+ Object(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["assert"])(transformOrigin.isAlmostEqual(verts.range.center));
116969
+ }
116931
116970
  }
116932
116971
  const graphic = mesh.getGraphics(this.system, this._viewIndependentOrigin);
116933
116972
  if (undefined !== graphic)
@@ -117850,7 +117889,7 @@ class MeshBuilderMap extends _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["D
117850
117889
  getBuilder(displayParams, type, hasNormals, isPlanar) {
117851
117890
  const { facetAreaTolerance, tolerance, is2d, range } = this;
117852
117891
  const key = this.getKey(displayParams, type, hasNormals, isPlanar);
117853
- const quantizePositions = false; // ###TODO should this be configurable?
117892
+ const quantizePositions = true; // ###TODO should this be configurable?
117854
117893
  return this.getBuilderFromKey(key, {
117855
117894
  displayParams,
117856
117895
  type,
@@ -139125,7 +139164,7 @@ __webpack_require__.r(__webpack_exports__);
139125
139164
  // NB: Color in color table has pre-multiplied alpha - revert it.
139126
139165
  const computeElementColor = `
139127
139166
  float colorTableStart = u_vertParams.z * u_vertParams.w; // num rgba per-vertex times num vertices
139128
- float colorIndex = decodeUInt16(g_usesQuantizedPosition ? g_vertLutData[1].zw : g_vertLutData[4].xy);
139167
+ float colorIndex = decodeUInt16(g_vertLutData1.zw);
139129
139168
  vec2 tc = computeLUTCoords(colorTableStart+colorIndex, u_vertParams.xy, g_vert_center, 1.0);
139130
139169
  vec4 lutColor = TEXTURE(u_vertLUT, tc);
139131
139170
  lutColor.rgb /= max(0.0001, lutColor.a);
@@ -140030,7 +140069,7 @@ function createVolClassBlendProgram(context) {
140030
140069
  /*!***********************************************************************!*\
140031
140070
  !*** D:/vsts_b/6/s/core/frontend/lib/esm/render/webgl/glsl/Decode.js ***!
140032
140071
  \***********************************************************************/
140033
- /*! exports provided: decodeUint16, decodeUint24, unquantize3d, unquantize2d, decodeDepthRgb, encodeDepthRgb, pack2Bytes, unpack2Bytes, unpackAndNormalize2Bytes, addUnpackAndNormalize2Bytes, decodeFloat32 */
140072
+ /*! exports provided: decodeUint16, decodeUint24, unquantize3d, unquantize2d, decodeDepthRgb, encodeDepthRgb, pack2Bytes, unpack2Bytes, unpackAndNormalize2Bytes, addUnpackAndNormalize2Bytes, decodeFloat32, decode3Float32 */
140034
140073
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
140035
140074
 
140036
140075
  "use strict";
@@ -140046,6 +140085,7 @@ __webpack_require__.r(__webpack_exports__);
140046
140085
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "unpackAndNormalize2Bytes", function() { return unpackAndNormalize2Bytes; });
140047
140086
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addUnpackAndNormalize2Bytes", function() { return addUnpackAndNormalize2Bytes; });
140048
140087
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "decodeFloat32", function() { return decodeFloat32; });
140088
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "decode3Float32", function() { return decode3Float32; });
140049
140089
  /*---------------------------------------------------------------------------------------------
140050
140090
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
140051
140091
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -140129,7 +140169,7 @@ function addUnpackAndNormalize2Bytes(builder) {
140129
140169
  const decodeFloat32 = `
140130
140170
  float decodeFloat32(vec4 packedFloat) {
140131
140171
  float sign = 1.0 - step(128.0, packedFloat[3]) * 2.0;
140132
- float exponent = 2.0 * mod(packedFloat[3], 128.0) + step(128.0, packedFloat[2]) - 127.0;
140172
+ float exponent = 2.0 * mod(packedFloat[3], 128.0) + step(128.0, packedFloat[2]) - 127.0;
140133
140173
  if (exponent == -127.0)
140134
140174
  return 0.0;
140135
140175
 
@@ -140138,6 +140178,20 @@ float decodeFloat32(vec4 packedFloat) {
140138
140178
  return result;
140139
140179
  }
140140
140180
  `;
140181
+ const decode3Float32 = `
140182
+ // This expects an array of 4 vec3s, where each vec4 contains a slice of all 3 of the packed floats in .xyz
140183
+ // pf0 is in [0].x, pf1 is in [0].y, and pf2 in [0].z
140184
+ // e.g.: packedFloat[0] = vec3(pf0.x, pf1.x, pf2.x)
140185
+ // likewise .y info is in [1], .z in [2], and .w in [3]
140186
+ vec3 decode3Float32(vec3 packedFloat[4]) {
140187
+ vec3 sign = 1.0 - step(128.0, packedFloat[3].xyz) * 2.0;
140188
+ vec3 exponent = 2.0 * mod(packedFloat[3].xyz, 128.0) + step(128.0, packedFloat[2].xyz) - 127.0;
140189
+ vec3 zeroFlag = vec3(notEqual(vec3(-127.0), exponent));
140190
+ vec3 mantissa = mod(packedFloat[2].xyz, 128.0) * 65536.0 + packedFloat[1].xyz * 256.0 + packedFloat[0].xyz + float(0x800000);
140191
+ vec3 result = sign * exp2(exponent - 23.0) * mantissa * zeroFlag;
140192
+ return result;
140193
+ }
140194
+ `;
140141
140195
 
140142
140196
 
140143
140197
  /***/ }),
@@ -140280,20 +140334,11 @@ __webpack_require__.r(__webpack_exports__);
140280
140334
 
140281
140335
  const computeOtherPos = `
140282
140336
  vec2 tc = computeLUTCoords(g_otherIndex, u_vertParams.xy, g_vert_center, u_vertParams.z);
140283
- if (g_usesQuantizedPosition) {
140284
- vec4 enc1 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
140285
- tc.x += g_vert_stepX;
140286
- vec4 enc2 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
140287
- vec3 qpos = vec3(decodeUInt16(enc1.xy), decodeUInt16(enc1.zw), decodeUInt16(enc2.xy));
140288
- g_otherPos = unquantizePosition(qpos, u_qOrigin, u_qScale);
140289
- } else {
140290
- for (int i = 0; i < 3; i++) {
140291
- g_otherPos[i] = decodeFloat32(floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5));
140292
- tc.x += g_vert_stepX;
140293
- }
140294
-
140295
- g_otherPos.w = 1.0;
140296
- }
140337
+ vec4 enc0 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
140338
+ tc.x += g_vert_stepX;
140339
+ vec4 enc1 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
140340
+ vec3 qpos = vec3(decodeUInt16(enc0.xy), decodeUInt16(enc0.zw), decodeUInt16(enc1.xy));
140341
+ g_otherPos = unquantizePosition(qpos, u_qOrigin, u_qScale);
140297
140342
  `;
140298
140343
  const decodeEndPointAndQuadIndices = `
140299
140344
  g_otherIndex = decodeUInt24(a_endPointAndQuadIndices.xyz);
@@ -140692,8 +140737,6 @@ function addFeatureIndex(vert) {
140692
140737
  vert.addGlobal("g_featureIndex", 4 /* Vec3 */);
140693
140738
  vert.addFunction(_Decode__WEBPACK_IMPORTED_MODULE_4__["decodeUint24"]);
140694
140739
  vert.addFunction(getFeatureIndex(vert));
140695
- if (vert.usesVertexTable && !vert.usesInstancedGeometry)
140696
- Object(_Vertex__WEBPACK_IMPORTED_MODULE_8__["addFeatureAndMaterialLookup"])(vert);
140697
140740
  }
140698
140741
  // Discards vertex if feature is invisible; or rendering opaque during translucent pass or vice-versa
140699
140742
  // (The latter occurs when some translucent feature is overridden to be opaque, or vice-versa)
@@ -142852,22 +142895,11 @@ const decodePosition = `
142852
142895
  vec4 decodePosition(vec3 baseIndex) {
142853
142896
  float index = decodeUInt24(baseIndex);
142854
142897
  vec2 tc = compute_vert_coords(index);
142855
- if (g_usesQuantizedPosition) {
142856
- vec4 e0 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
142857
- tc.x += g_vert_stepX;
142858
- vec4 e1 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
142859
- vec3 qpos = vec3(decodeUInt16(e0.xy), decodeUInt16(e0.zw), decodeUInt16(e1.xy));
142860
- return unquantizePosition(qpos, u_qOrigin, u_qScale);
142861
- }
142862
-
142863
- vec4 position;
142864
- for (int i = 0; i < 3; i++) {
142865
- position[i] = decodeFloat32(floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5));
142866
- tc.x += g_vert_stepX;
142867
- }
142868
-
142869
- position.w = 1.0;
142870
- return position;
142898
+ vec4 e0 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
142899
+ tc.x += g_vert_stepX;
142900
+ vec4 e1 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
142901
+ vec3 qpos = vec3(decodeUInt16(e0.xy), decodeUInt16(e0.zw), decodeUInt16(e1.xy));
142902
+ return unquantizePosition(qpos, u_qOrigin, u_qScale);
142871
142903
  }
142872
142904
  `;
142873
142905
  const decodeAdjacentPositions = `
@@ -144098,7 +144130,11 @@ const computeMaterial = `
144098
144130
  g_materialParams = u_materialParams;
144099
144131
  }
144100
144132
  `;
144101
- function addMaterial(builder) {
144133
+ const computeMaterialInstanced = `
144134
+ decodeMaterialColor(u_materialColor);
144135
+ g_materialParams = u_materialParams;
144136
+ `;
144137
+ function addMaterial(builder, instanced) {
144102
144138
  const frag = builder.frag;
144103
144139
  Object(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["assert"])(undefined !== frag.find("v_surfaceFlags"));
144104
144140
  frag.addGlobal("mat_texture_weight", 2 /* Float */);
@@ -144133,19 +144169,20 @@ function addMaterial(builder) {
144133
144169
  uniform.setUniform4fv(mat.fragUniforms);
144134
144170
  });
144135
144171
  });
144136
- // Material atlas
144137
- Object(_Vertex__WEBPACK_IMPORTED_MODULE_20__["addFeatureAndMaterialLookup"])(vert);
144138
- vert.addFunction(_Clipping__WEBPACK_IMPORTED_MODULE_7__["unpackFloat"]);
144139
- vert.addFunction(readMaterialAtlas);
144140
- vert.addUniform("u_numColors", 2 /* Float */, (prog) => {
144141
- prog.addGraphicUniform("u_numColors", (uniform, params) => {
144142
- const info = params.geometry.materialInfo;
144143
- const numColors = undefined !== info && info.isAtlas ? info.vertexTableOffset : 0;
144144
- uniform.setUniform1f(numColors);
144172
+ if (!instanced) {
144173
+ // Material atlas
144174
+ vert.addFunction(_Clipping__WEBPACK_IMPORTED_MODULE_7__["unpackFloat"]);
144175
+ vert.addFunction(readMaterialAtlas);
144176
+ vert.addUniform("u_numColors", 2 /* Float */, (prog) => {
144177
+ prog.addGraphicUniform("u_numColors", (uniform, params) => {
144178
+ const info = params.geometry.materialInfo;
144179
+ const numColors = undefined !== info && info.isAtlas ? info.vertexTableOffset : 0;
144180
+ uniform.setUniform1f(numColors);
144181
+ });
144145
144182
  });
144146
- });
144183
+ }
144147
144184
  vert.addGlobal("g_materialParams", 5 /* Vec4 */);
144148
- vert.set(4 /* ComputeMaterial */, computeMaterial);
144185
+ vert.set(4 /* ComputeMaterial */, instanced ? computeMaterialInstanced : computeMaterial);
144149
144186
  vert.set(6 /* ApplyMaterialColor */, applyMaterialColor);
144150
144187
  builder.addFunctionComputedVarying("v_materialParams", 5 /* Vec4 */, "computeMaterialParams", computeMaterialParams);
144151
144188
  }
@@ -144291,13 +144328,7 @@ vec3 octDecodeNormal(vec2 e) {
144291
144328
  const computeNormal = `
144292
144329
  if (!u_surfaceFlags[kSurfaceBitIndex_HasNormals])
144293
144330
  return vec3(0.0);
144294
-
144295
- vec2 normal;
144296
- if (u_surfaceFlags[kSurfaceBitIndex_HasColorAndNormal])
144297
- normal = g_usesQuantizedPosition ? g_vertLutData[3].xy : g_vertLutData[4].zw;
144298
- else
144299
- normal = g_usesQuantizedPosition ? g_vertLutData[1].zw : g_vertLutData[5].xy;
144300
-
144331
+ vec2 normal = (u_surfaceFlags[kSurfaceBitIndex_HasColorAndNormal]) ? g_vertLutData3.xy : g_vertLutData1.zw;
144301
144332
  return normalize(MAT_NORM * octDecodeNormal(normal));
144302
144333
  `;
144303
144334
  const computeAnimatedNormal = `
@@ -144308,7 +144339,7 @@ const applyBackgroundColor = `
144308
144339
  return u_surfaceFlags[kSurfaceBitIndex_BackgroundFill] ? vec4(u_bgColor.rgb, baseColor.a) : baseColor;
144309
144340
  `;
144310
144341
  const computeTexCoord = `
144311
- vec4 rgba = g_usesQuantizedPosition ? g_vertLutData[3] : g_vertLutData[4];
144342
+ vec4 rgba = g_vertLutData3;
144312
144343
  vec2 qcoords = vec2(decodeUInt16(rgba.xy), decodeUInt16(rgba.zw));
144313
144344
  return chooseVec2WithBitFlag(vec2(0.0), unquantize2d(qcoords, u_qTexCoordParams), surfaceFlags, kSurfaceBit_HasTexture);
144314
144345
  `;
@@ -144514,7 +144545,7 @@ function createSurfaceBuilder(flags) {
144514
144545
  else
144515
144546
  addTransparencyDiscard(builder.frag);
144516
144547
  Object(_Monochrome__WEBPACK_IMPORTED_MODULE_14__["addSurfaceMonochrome"])(builder.frag);
144517
- addMaterial(builder);
144548
+ addMaterial(builder, flags.isInstanced === 1 /* Yes */);
144518
144549
  if (flags.isWiremesh)
144519
144550
  Object(_Wiremesh__WEBPACK_IMPORTED_MODULE_22__["addWiremesh"])(builder);
144520
144551
  return builder;
@@ -144981,7 +145012,7 @@ function addTranslucency(prog) {
144981
145012
  /*!***********************************************************************!*\
144982
145013
  !*** D:/vsts_b/6/s/core/frontend/lib/esm/render/webgl/glsl/Vertex.js ***!
144983
145014
  \***********************************************************************/
144984
- /*! exports provided: unquantizeVertexPosition, addModelViewProjectionMatrix, addProjectionMatrix, addInstancedRtcMatrix, addModelViewMatrix, addNormalMatrix, addPosition, addAlpha, addLineWeight, replaceLineWeight, addLineCode, replaceLineCode, addFeatureAndMaterialLookup, earlyVertexDiscard, vertexDiscard, lateVertexDiscard */
145015
+ /*! exports provided: unquantizeVertexPosition, addModelViewProjectionMatrix, addProjectionMatrix, addInstancedRtcMatrix, addModelViewMatrix, addNormalMatrix, addPosition, addAlpha, addLineWeight, replaceLineWeight, addLineCode, replaceLineCode, earlyVertexDiscard, vertexDiscard, lateVertexDiscard */
144985
145016
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
144986
145017
 
144987
145018
  "use strict";
@@ -144998,7 +145029,6 @@ __webpack_require__.r(__webpack_exports__);
144998
145029
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "replaceLineWeight", function() { return replaceLineWeight; });
144999
145030
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addLineCode", function() { return addLineCode; });
145000
145031
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "replaceLineCode", function() { return replaceLineCode; });
145001
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addFeatureAndMaterialLookup", function() { return addFeatureAndMaterialLookup; });
145002
145032
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "earlyVertexDiscard", function() { return earlyVertexDiscard; });
145003
145033
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "vertexDiscard", function() { return vertexDiscard; });
145004
145034
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lateVertexDiscard", function() { return lateVertexDiscard; });
@@ -145036,14 +145066,9 @@ vec4 unquantizeVertexPosition(vec3 pos, vec3 origin, vec3 scale) { return unquan
145036
145066
  // Need to read 2 rgba values to obtain 6 16-bit integers for position
145037
145067
  const unquantizeVertexPositionFromLUT = `
145038
145068
  vec4 unquantizeVertexPosition(vec3 encodedIndex, vec3 origin, vec3 scale) {
145039
- if (g_usesQuantizedPosition) {
145040
- vec4 enc1 = g_vertLutData[0];
145041
- vec4 enc2 = g_vertLutData[1];
145042
- vec3 qpos = vec3(decodeUInt16(enc1.xy), decodeUInt16(enc1.zw), decodeUInt16(enc2.xy));
145043
- return unquantizePosition(qpos, origin, scale);
145044
- }
145045
-
145046
- return vec4(decodeFloat32(g_vertLutData[0]), decodeFloat32(g_vertLutData[1]), decodeFloat32(g_vertLutData[2]), 1.0);
145069
+ vec3 qpos = vec3(decodeUInt16(g_vertLutData0.xy), decodeUInt16(g_vertLutData0.zw), decodeUInt16(g_vertLutData1.xy));
145070
+ g_featureAndMaterialIndex = g_vertLutData2;
145071
+ return unquantizePosition(qpos, origin, scale);
145047
145072
  }
145048
145073
  `;
145049
145074
  const computeLineWeight = "\nfloat computeLineWeight() { return g_lineWeight; }\n";
@@ -145153,7 +145178,6 @@ function addPositionFromLUT(vert) {
145153
145178
  vert.addGlobal("g_vertexBaseCoords", 3 /* Vec2 */);
145154
145179
  vert.addFunction(_Decode__WEBPACK_IMPORTED_MODULE_4__["decodeUint24"]);
145155
145180
  vert.addFunction(_Decode__WEBPACK_IMPORTED_MODULE_4__["decodeUint16"]);
145156
- vert.addFunction(_Decode__WEBPACK_IMPORTED_MODULE_4__["decodeFloat32"]);
145157
145181
  vert.addFunction(unquantizeVertexPositionFromLUT);
145158
145182
  vert.addUniform("u_vertLUT", 8 /* Sampler2D */, (prog) => {
145159
145183
  prog.addGraphicUniform("u_vertLUT", (uniform, params) => {
@@ -145174,18 +145198,22 @@ function addPositionFromLUT(vert) {
145174
145198
  });
145175
145199
  Object(_LookupTable__WEBPACK_IMPORTED_MODULE_6__["addLookupTable"])(vert, "vert", "u_vertParams.z");
145176
145200
  vert.addInitializer(initializeVertLUTCoords);
145177
- Object(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["assert"])(undefined !== vert.maxRgbaPerVertex);
145178
- const maxRgbaPerVertex = vert.maxRgbaPerVertex.toString();
145179
- vert.addGlobal(`g_vertLutData[${maxRgbaPerVertex}]`, 5 /* Vec4 */);
145180
- vert.addGlobal("g_usesQuantizedPosition", 0 /* Boolean */);
145181
- // Read the vertex data from the vertex table up front. If using WebGL 2, only read the number of RGBA values we actually need for this vertex table.
145182
- const loopStart = `for (int i = 0; i < ${_System__WEBPACK_IMPORTED_MODULE_3__["System"].instance.capabilities.isWebGL2 ? "int(u_vertParams.z)" : maxRgbaPerVertex}; i++)`;
145201
+ vert.addGlobal(`g_vertLutData0`, 5 /* Vec4 */);
145202
+ vert.addGlobal(`g_vertLutData1`, 5 /* Vec4 */);
145203
+ vert.addGlobal(`g_vertLutData2`, 5 /* Vec4 */);
145204
+ vert.addGlobal(`g_vertLutData3`, 5 /* Vec4 */);
145205
+ vert.addGlobal("g_featureAndMaterialIndex", 5 /* Vec4 */);
145206
+ // Read the vertex data from the vertex table up front. Yields a consistent (if unexplainable) small performance boost.
145183
145207
  vert.addInitializer(`
145184
- g_usesQuantizedPosition = u_qScale.x >= 0.0;
145185
145208
  vec2 tc = g_vertexBaseCoords;
145186
- ${loopStart} {
145187
- g_vertLutData[i] = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
145209
+ g_vertLutData0 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
145210
+ tc.x += g_vert_stepX;
145211
+ g_vertLutData1 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
145212
+ tc.x += g_vert_stepX;
145213
+ g_vertLutData2 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
145214
+ if (3.0 < u_vertParams.z) {
145188
145215
  tc.x += g_vert_stepX;
145216
+ g_vertLutData3 = floor(TEXTURE(u_vertLUT, tc) * 255.0 + 0.5);
145189
145217
  }
145190
145218
  `);
145191
145219
  }
@@ -145263,19 +145291,6 @@ function addLineCode(vert) {
145263
145291
  function replaceLineCode(vert, func) {
145264
145292
  vert.replaceFunction(computeLineCode, func);
145265
145293
  }
145266
- /** @internal */
145267
- function addFeatureAndMaterialLookup(vert) {
145268
- if (undefined !== vert.find("g_featureAndMaterialIndex"))
145269
- return;
145270
- const computeFeatureAndMaterialIndex = `
145271
- g_featureAndMaterialIndex = g_usesQuantizedPosition ? g_vertLutData[2] : g_vertLutData[3];
145272
- `;
145273
- vert.addGlobal("g_featureAndMaterialIndex", 5 /* Vec4 */);
145274
- if (!vert.usesInstancedGeometry) {
145275
- // Only needed for material atlas, and instanced geometry never uses material atlas.
145276
- vert.addInitializer(computeFeatureAndMaterialIndex);
145277
- }
145278
- }
145279
145294
  // This vertex belongs to a triangle which should not be rendered. Produce a degenerate triangle.
145280
145295
  // Also place it outside NDC range (for GL_POINTS)
145281
145296
  const discardVertex = ` {
@@ -176741,7 +176756,7 @@ SetupWalkCameraTool.iconSpec = "icon-camera-location";
176741
176756
  /*! exports provided: name, version, description, main, module, typings, license, scripts, repository, keywords, author, peerDependencies, //devDependencies, devDependencies, //dependencies, dependencies, nyc, eslintConfig, default */
176742
176757
  /***/ (function(module) {
176743
176758
 
176744
- module.exports = JSON.parse("{\"name\":\"@itwin/core-frontend\",\"version\":\"3.2.0-dev.22\",\"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\",\"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.2.0-dev.22\",\"@itwin/core-bentley\":\"workspace:^3.2.0-dev.22\",\"@itwin/core-common\":\"workspace:^3.2.0-dev.22\",\"@itwin/core-geometry\":\"workspace:^3.2.0-dev.22\",\"@itwin/core-orbitgt\":\"workspace:^3.2.0-dev.22\",\"@itwin/core-quantity\":\"workspace:^3.2.0-dev.22\",\"@itwin/webgl-compatibility\":\"workspace:^3.2.0-dev.22\"},\"//devDependencies\":[\"NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install\",\"NOTE: All tools used by scripts in this package must be listed as devDependencies\"],\"devDependencies\":{\"@itwin/appui-abstract\":\"workspace:*\",\"@itwin/build-tools\":\"workspace:*\",\"@itwin/core-bentley\":\"workspace:*\",\"@itwin/core-common\":\"workspace:*\",\"@itwin/core-geometry\":\"workspace:*\",\"@itwin/core-orbitgt\":\"workspace:*\",\"@itwin/core-quantity\":\"workspace:*\",\"@itwin/certa\":\"workspace:*\",\"@itwin/eslint-plugin\":\"workspace:*\",\"@itwin/webgl-compatibility\":\"workspace:*\",\"@types/chai\":\"^4.1.4\",\"@types/chai-as-promised\":\"^7\",\"@types/deep-assign\":\"^0.1.0\",\"@types/lodash\":\"^4.14.0\",\"@types/mocha\":\"^8.2.2\",\"@types/node\":\"14.14.31\",\"@types/qs\":\"^6.5.0\",\"@types/semver\":\"^5.5.0\",\"@types/superagent\":\"^4.1.14\",\"@types/sinon\":\"^9.0.0\",\"chai\":\"^4.1.2\",\"chai-as-promised\":\"^7\",\"cpx2\":\"^3.0.0\",\"eslint\":\"^7.11.0\",\"glob\":\"^7.1.2\",\"mocha\":\"^8.3.2\",\"nyc\":\"^15.1.0\",\"rimraf\":\"^3.0.2\",\"sinon\":\"^9.0.2\",\"source-map-loader\":\"^1.0.0\",\"typescript\":\"~4.4.0\",\"webpack\":\"4.42.0\"},\"//dependencies\":[\"NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API\",\"NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed\"],\"dependencies\":{\"@itwin/core-i18n\":\"workspace:*\",\"@itwin/core-telemetry\":\"workspace:*\",\"@loaders.gl/core\":\"^3.1.6\",\"@loaders.gl/draco\":\"^3.1.6\",\"deep-assign\":\"^2.0.0\",\"fuse.js\":\"^3.3.0\",\"lodash\":\"^4.17.10\",\"qs\":\"^6.5.1\",\"semver\":\"^5.5.0\",\"superagent\":\"^7.0.1\",\"wms-capabilities\":\"0.4.0\",\"xml-js\":\"~1.6.11\"},\"nyc\":{\"extends\":\"./node_modules/@itwin/build-tools/.nycrc\"},\"eslintConfig\":{\"plugins\":[\"@itwin\"],\"extends\":\"plugin:@itwin/itwinjs-recommended\",\"rules\":{\"@itwin/no-internal-barrel-imports\":[\"error\",{\"required-barrel-modules\":[\"./src/tile/internal.ts\"]}]},\"overrides\":[{\"files\":[\"*.test.ts\",\"*.test.tsx\",\"**/test/**/*.ts\",\"**/test/**/*.tsx\"],\"rules\":{\"@itwin/no-internal-barrel-imports\":\"off\"}}]}}");
176759
+ module.exports = JSON.parse("{\"name\":\"@itwin/core-frontend\",\"version\":\"3.2.0-dev.23\",\"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\",\"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.2.0-dev.23\",\"@itwin/core-bentley\":\"workspace:^3.2.0-dev.23\",\"@itwin/core-common\":\"workspace:^3.2.0-dev.23\",\"@itwin/core-geometry\":\"workspace:^3.2.0-dev.23\",\"@itwin/core-orbitgt\":\"workspace:^3.2.0-dev.23\",\"@itwin/core-quantity\":\"workspace:^3.2.0-dev.23\",\"@itwin/webgl-compatibility\":\"workspace:^3.2.0-dev.23\"},\"//devDependencies\":[\"NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install\",\"NOTE: All tools used by scripts in this package must be listed as devDependencies\"],\"devDependencies\":{\"@itwin/appui-abstract\":\"workspace:*\",\"@itwin/build-tools\":\"workspace:*\",\"@itwin/core-bentley\":\"workspace:*\",\"@itwin/core-common\":\"workspace:*\",\"@itwin/core-geometry\":\"workspace:*\",\"@itwin/core-orbitgt\":\"workspace:*\",\"@itwin/core-quantity\":\"workspace:*\",\"@itwin/certa\":\"workspace:*\",\"@itwin/eslint-plugin\":\"workspace:*\",\"@itwin/webgl-compatibility\":\"workspace:*\",\"@types/chai\":\"^4.1.4\",\"@types/chai-as-promised\":\"^7\",\"@types/deep-assign\":\"^0.1.0\",\"@types/lodash\":\"^4.14.0\",\"@types/mocha\":\"^8.2.2\",\"@types/node\":\"14.14.31\",\"@types/qs\":\"^6.5.0\",\"@types/semver\":\"^5.5.0\",\"@types/superagent\":\"^4.1.14\",\"@types/sinon\":\"^9.0.0\",\"chai\":\"^4.1.2\",\"chai-as-promised\":\"^7\",\"cpx2\":\"^3.0.0\",\"eslint\":\"^7.11.0\",\"glob\":\"^7.1.2\",\"mocha\":\"^8.3.2\",\"nyc\":\"^15.1.0\",\"rimraf\":\"^3.0.2\",\"sinon\":\"^9.0.2\",\"source-map-loader\":\"^1.0.0\",\"typescript\":\"~4.4.0\",\"webpack\":\"4.42.0\"},\"//dependencies\":[\"NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API\",\"NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed\"],\"dependencies\":{\"@itwin/core-i18n\":\"workspace:*\",\"@itwin/core-telemetry\":\"workspace:*\",\"@loaders.gl/core\":\"^3.1.6\",\"@loaders.gl/draco\":\"^3.1.6\",\"deep-assign\":\"^2.0.0\",\"fuse.js\":\"^3.3.0\",\"lodash\":\"^4.17.10\",\"qs\":\"^6.5.1\",\"semver\":\"^5.5.0\",\"superagent\":\"^7.0.1\",\"wms-capabilities\":\"0.4.0\",\"xml-js\":\"~1.6.11\"},\"nyc\":{\"extends\":\"./node_modules/@itwin/build-tools/.nycrc\"},\"eslintConfig\":{\"plugins\":[\"@itwin\"],\"extends\":\"plugin:@itwin/itwinjs-recommended\",\"rules\":{\"@itwin/no-internal-barrel-imports\":[\"error\",{\"required-barrel-modules\":[\"./src/tile/internal.ts\"]}]},\"overrides\":[{\"files\":[\"*.test.ts\",\"*.test.tsx\",\"**/test/**/*.ts\",\"**/test/**/*.tsx\"],\"rules\":{\"@itwin/no-internal-barrel-imports\":\"off\"}}]}}");
176745
176760
 
176746
176761
  /***/ }),
176747
176762
 
@@ -255049,7 +255064,7 @@ class XYParitySearchContext {
255049
255064
  __webpack_require__.r(__webpack_exports__);
255050
255065
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ITwinLocalization", function() { return ITwinLocalization; });
255051
255066
  /* harmony import */ var i18next__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! i18next */ "../../common/temp/node_modules/.pnpm/i18next@21.6.14/node_modules/i18next/dist/esm/i18next.js");
255052
- /* harmony import */ var i18next_browser_languagedetector__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! i18next-browser-languagedetector */ "../../common/temp/node_modules/.pnpm/i18next-browser-languagedetector@6.1.3/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js");
255067
+ /* harmony import */ var i18next_browser_languagedetector__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! i18next-browser-languagedetector */ "../../common/temp/node_modules/.pnpm/i18next-browser-languagedetector@6.1.4/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js");
255053
255068
  /* harmony import */ var i18next_xhr_backend__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! i18next-xhr-backend */ "../../common/temp/node_modules/.pnpm/i18next-xhr-backend@3.2.2/node_modules/i18next-xhr-backend/dist/esm/i18nextXHRBackend.js");
255054
255069
  /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
255055
255070
  /*---------------------------------------------------------------------------------------------
@@ -275798,7 +275813,7 @@ __webpack_require__.r(__webpack_exports__);
275798
275813
 
275799
275814
 
275800
275815
  /** Action taken by the application on item provided by a UiItemsProvider
275801
- * @public
275816
+ * @public @deprecated this was only used by the previously removed UiItemsArbiter.
275802
275817
  */
275803
275818
  var UiItemsApplicationAction;
275804
275819
  (function (UiItemsApplicationAction) {
@@ -276062,6 +276077,7 @@ class BackstageItemUtilities {
276062
276077
  BackstageItemUtilities.createStageLauncher = (frontstageId, groupPriority, itemPriority, label, subtitle, icon, overrides) => ({
276063
276078
  groupPriority,
276064
276079
  icon,
276080
+ internalData: overrides === null || overrides === void 0 ? void 0 : overrides.internalData,
276065
276081
  id: frontstageId,
276066
276082
  itemPriority,
276067
276083
  label,
@@ -276074,6 +276090,7 @@ BackstageItemUtilities.createActionItem = (itemId, groupPriority, itemPriority,
276074
276090
  execute,
276075
276091
  groupPriority,
276076
276092
  icon,
276093
+ internalData: overrides === null || overrides === void 0 ? void 0 : overrides.internalData,
276077
276094
  id: itemId,
276078
276095
  itemPriority,
276079
276096
  label,
@@ -280069,6 +280086,7 @@ var StagePanelLocation;
280069
280086
  var StagePanelSection;
280070
280087
  (function (StagePanelSection) {
280071
280088
  StagePanelSection[StagePanelSection["Start"] = 0] = "Start";
280089
+ /** @deprecated - all widgets that a targeted for Middle will be placed in `End` section */
280072
280090
  StagePanelSection[StagePanelSection["Middle"] = 1] = "Middle";
280073
280091
  StagePanelSection[StagePanelSection["End"] = 2] = "End";
280074
280092
  })(StagePanelSection || (StagePanelSection = {}));