@sapui5/sap.fe.base 1.139.0 → 1.141.0

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.
@@ -1436,7 +1436,7 @@ export function ifElse<T extends PrimitiveType>(
1436
1436
  }
1437
1437
  if (isComplexTypeExpression(condition) || isComplexTypeExpression(onTrue) || isComplexTypeExpression(onFalse)) {
1438
1438
  let pathIdx = 0;
1439
- const myIfElseExpression = formatResult([condition, onTrue, onFalse], "sap.fe.core.formatters.StandardFormatter#ifElse");
1439
+ const myIfElseExpression = formatResult([condition, onTrue, onFalse], "._formatters.StandardFormatter#ifElse");
1440
1440
  const allParts = [];
1441
1441
  transformRecursively(
1442
1442
  myIfElseExpression,
@@ -1448,7 +1448,7 @@ export function ifElse<T extends PrimitiveType>(
1448
1448
  true
1449
1449
  );
1450
1450
  allParts.unshift(constant(JSON.stringify(myIfElseExpression)));
1451
- return formatResult(allParts, "sap.fe.core.formatters.StandardFormatter#evaluateComplexExpression", undefined, true);
1451
+ return formatResult(allParts, "._formatters.StandardFormatter.bind($control)#evaluateComplexExpression", undefined, true);
1452
1452
  }
1453
1453
  return {
1454
1454
  _type: "IfElse",
@@ -1571,7 +1571,7 @@ export function formatResult<T, U extends Fn<T>>(
1571
1571
  true
1572
1572
  );
1573
1573
  allParts.unshift(constant(JSON.stringify(myFormatExpression)));
1574
- return formatResult(allParts, "sap.fe.core.formatters.StandardFormatter#evaluateComplexExpression", undefined, true);
1574
+ return formatResult(allParts, "._formatters.StandardFormatter.bind($control)#evaluateComplexExpression", undefined, true);
1575
1575
  } else if (!!formatterName && formatterName.length > 0) {
1576
1576
  parameterExpressions.unshift(constant(formatterName));
1577
1577
  }
@@ -1780,7 +1780,11 @@ export function addTypeInformation<T, U extends Fn<T>>(
1780
1780
  currencyPath.targetType = "any";
1781
1781
  currencyPath.mode = "OneTime";
1782
1782
  oFormatOptions ??= {};
1783
- oFormatOptions.preserveDecimals = false; // default value since we don't have a CLDR
1783
+ if (oConstraintOptions?.skipDecimalsValidation === true) {
1784
+ oFormatOptions.decimals = 99; // setting to 99 to avoid rounding in currency conversion
1785
+ }
1786
+
1787
+ oFormatOptions.preserveDecimals = oConstraintOptions?.skipDecimalsValidation ?? false; // default value since we don't have a CLDR
1784
1788
  parameterExpressions.push(currencyPath);
1785
1789
  }
1786
1790
 
@@ -1795,6 +1799,7 @@ export function addTypeInformation<T, U extends Fn<T>>(
1795
1799
  }
1796
1800
 
1797
1801
  type ComplexTypeFormatOptions = {
1802
+ decimals?: number;
1798
1803
  showNumber?: boolean;
1799
1804
  showMeasure?: boolean;
1800
1805
  parseAsString?: boolean;
@@ -1909,14 +1914,14 @@ export function concat(...inExpressions: ExpressionOrPrimitive<string>[]): Bindi
1909
1914
  );
1910
1915
  } else if (expressions.some(isComplexTypeExpression)) {
1911
1916
  let pathIdx = 0;
1912
- const myConcatExpression = formatResult(expressions, "sap.fe.core.formatters.StandardFormatter#concat", undefined, true);
1917
+ const myConcatExpression = formatResult(expressions, "._formatters.StandardFormatter#concat", undefined, true);
1913
1918
  const allParts = [];
1914
1919
  transformRecursively(myConcatExpression, "PathInModel", (constantPath: PathInModelExpression<unknown>) => {
1915
1920
  allParts.push(constantPath);
1916
1921
  return pathInModel(`$${pathIdx++}`, "$");
1917
1922
  });
1918
1923
  allParts.unshift(constant(JSON.stringify(myConcatExpression)));
1919
- return formatResult(allParts, "sap.fe.core.formatters.StandardFormatter#evaluateComplexExpression", undefined, true);
1924
+ return formatResult(allParts, "._formatters.StandardFormatter.bind($control)#evaluateComplexExpression", undefined, true);
1920
1925
  }
1921
1926
  return {
1922
1927
  _type: "Concat",
@@ -15,13 +15,11 @@ sap.ui.define(["sap/fe/base/BindingToolkit", "sap/fe/base/ClassSupport", "sap/ui
15
15
  function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
16
16
  function _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }
17
17
  function _initializerWarningHelper(r, e) { throw Error("Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform."); }
18
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
19
18
  /**
20
19
  * Base class for building blocks.
21
20
  * This contains the low level functionality of having a content aggregation and handling the rendering of the content without an actual DOM element.
22
21
  * The building block also defines a state object that can be used to store the state of the building block.
23
22
  * Accessibility and classes information are forwarded to the content control.
24
- * @experimental
25
23
  * @public
26
24
  */
27
25
  let BuildingBlockBase = (_dec = defineUI5Class("sap.fe.base.BuildingBlockBase"), _dec2 = aggregation({
@@ -33,13 +31,16 @@ sap.ui.define(["sap/fe/base/BindingToolkit", "sap/fe/base/ClassSupport", "sap/ui
33
31
  multiple: true,
34
32
  singularName: "ariaLabelledBy"
35
33
  }), _dec4 = defineState(), _dec(_class = (_class2 = /*#__PURE__*/function (_Control) {
36
- function BuildingBlockBase(settings, others) {
34
+ function BuildingBlockBase(settings, others, scope) {
37
35
  var _this;
38
36
  if (typeof settings === "string") {
39
37
  others ??= {};
40
38
  others.id = settings;
41
39
  }
42
- _this = _Control.call(this, settings, others) || this;
40
+ // Scope is defined and is there, but somehow doesn't appear on all the children of ManagedObject
41
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
42
+ // @ts-ignore
43
+ _this = _Control.call(this, settings, others, scope) || this;
43
44
  _initializerDefineProperty(_this, "content", _descriptor, _this);
44
45
  /**
45
46
  * Association to controls / IDs that label this control (see WAI-ARIA attribute aria-labelledby).
@@ -123,7 +124,7 @@ sap.ui.define(["sap/fe/base/BindingToolkit", "sap/fe/base/ClassSupport", "sap/ui
123
124
  */;
124
125
  _proto.getAccessibilityInfo = function getAccessibilityInfo() {
125
126
  let accessibilityInfo = {};
126
- if (this.content?.isA("sap.ui.core.Control")) {
127
+ if (this.content?.isA("sap.ui.core.Control") && this.content.getAccessibilityInfo) {
127
128
  accessibilityInfo = this.content.getAccessibilityInfo();
128
129
  }
129
130
  return accessibilityInfo;
@@ -179,4 +180,4 @@ sap.ui.define(["sap/fe/base/BindingToolkit", "sap/fe/base/ClassSupport", "sap/ui
179
180
  }), _class2)) || _class);
180
181
  return BuildingBlockBase;
181
182
  }, false);
182
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCdWlsZGluZ0Jsb2NrQmFzZSIsIl9kZWMiLCJkZWZpbmVVSTVDbGFzcyIsIl9kZWMyIiwiYWdncmVnYXRpb24iLCJ0eXBlIiwibXVsdGlwbGUiLCJpc0RlZmF1bHQiLCJfZGVjMyIsImFzc29jaWF0aW9uIiwic2luZ3VsYXJOYW1lIiwiX2RlYzQiLCJkZWZpbmVTdGF0ZSIsIl9jbGFzcyIsIl9jbGFzczIiLCJfQ29udHJvbCIsInNldHRpbmdzIiwib3RoZXJzIiwiX3RoaXMiLCJpZCIsImNhbGwiLCJfaW5pdGlhbGl6ZXJEZWZpbmVQcm9wZXJ0eSIsIl9kZXNjcmlwdG9yIiwiX2Rlc2NyaXB0b3IyIiwiX2Rlc2NyaXB0b3IzIiwiX29sZERvbVJlZiIsIl9pbmhlcml0c0xvb3NlIiwicmVuZGVyIiwib1JtIiwib0NvbnRyb2wiLCJjb250ZW50IiwiZ2V0VmlzaWJsZSIsIkludmlzaWJsZVJlbmRlcmVyIiwicmVuZGVyQ29udHJvbCIsIl9wcm90byIsInByb3RvdHlwZSIsImJpbmRQcm9wZXJ0eSIsIm5hbWUiLCJiaW5kaW5nSW5mbyIsInByb3BlcnR5TWV0YWRhdGEiLCJnZXRNZXRhZGF0YSIsImdldFByb3BlcnR5IiwiYmluZGFibGUiLCJncm91cCIsIm9uQWZ0ZXJSZW5kZXJpbmciLCJldmVudCIsImRvbVJlZiIsImdldERvbVJlZiIsIldlYWtSZWYiLCJzdWZmaXgiLCJvQ29udGVudCIsImRlcmVmIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsImdldEZvY3VzRG9tUmVmIiwiZW5oYW5jZUFjY2Vzc2liaWxpdHlTdGF0ZSIsIl9vRWxlbWVudCIsIm1BcmlhUHJvcHMiLCJvUGFyZW50IiwiZ2V0UGFyZW50IiwiZ2V0QWNjZXNzaWJpbGl0eUluZm8iLCJhY2Nlc3NpYmlsaXR5SW5mbyIsImlzQSIsImdldElkRm9yTGFiZWwiLCJhZGRTdHlsZUNsYXNzIiwic3R5bGVDbGFzcyIsInJlbW92ZVN0eWxlQ2xhc3MiLCJiaW5kU3RhdGUiLCJwYXRoIiwiQmluZGluZ1Rvb2xraXQiLCJzdGF0ZSIsIkNvbnRyb2wiLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkJ1aWxkaW5nQmxvY2tCYXNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29uc3RhbnRFeHByZXNzaW9uLCBQYXRoSW5Nb2RlbEV4cHJlc3Npb24sIFByaW1pdGl2ZVR5cGUgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQmluZGluZ1Rvb2xraXRcIjtcbmltcG9ydCAqIGFzIEJpbmRpbmdUb29sa2l0IGZyb20gXCJzYXAvZmUvYmFzZS9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0IHR5cGUgeyBQcm9wZXJ0aWVzT2YsIFN0YXRlT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgeyBhZ2dyZWdhdGlvbiwgYXNzb2NpYXRpb24sIGRlZmluZVN0YXRlLCBkZWZpbmVVSTVDbGFzcyB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB0eXBlIE1hbmFnZWRPYmplY3QgZnJvbSBcInNhcC91aS9iYXNlL01hbmFnZWRPYmplY3RcIjtcbmltcG9ydCB0eXBlIHsgUHJvcGVydHlCaW5kaW5nSW5mbyB9IGZyb20gXCJzYXAvdWkvYmFzZS9NYW5hZ2VkT2JqZWN0XCI7XG5pbXBvcnQgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHR5cGUgVUk1RWxlbWVudCBmcm9tIFwic2FwL3VpL2NvcmUvRWxlbWVudFwiO1xuaW1wb3J0IEludmlzaWJsZVJlbmRlcmVyIGZyb20gXCJzYXAvdWkvY29yZS9JbnZpc2libGVSZW5kZXJlclwiO1xuaW1wb3J0IHR5cGUgUmVuZGVyTWFuYWdlciBmcm9tIFwic2FwL3VpL2NvcmUvUmVuZGVyTWFuYWdlclwiO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG5pbnRlcmZhY2UgQnVpbGRpbmdCbG9ja0Jhc2U8VCBleHRlbmRzIFVJNUVsZW1lbnQgPSBDb250cm9sLCBLIGV4dGVuZHMgb2JqZWN0ID0ge30+IHtcblx0Ly8gRm9yY2UgYSBzdGF0ZSB1cGRhdGVcblx0X3VwZGF0ZVN0YXRlKCk6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgYnVpbGRpbmcgYmxvY2tzLlxuICogVGhpcyBjb250YWlucyB0aGUgbG93IGxldmVsIGZ1bmN0aW9uYWxpdHkgb2YgaGF2aW5nIGEgY29udGVudCBhZ2dyZWdhdGlvbiBhbmQgaGFuZGxpbmcgdGhlIHJlbmRlcmluZyBvZiB0aGUgY29udGVudCB3aXRob3V0IGFuIGFjdHVhbCBET00gZWxlbWVudC5cbiAqIFRoZSBidWlsZGluZyBibG9jayBhbHNvIGRlZmluZXMgYSBzdGF0ZSBvYmplY3QgdGhhdCBjYW4gYmUgdXNlZCB0byBzdG9yZSB0aGUgc3RhdGUgb2YgdGhlIGJ1aWxkaW5nIGJsb2NrLlxuICogQWNjZXNzaWJpbGl0eSBhbmQgY2xhc3NlcyBpbmZvcm1hdGlvbiBhcmUgZm9yd2FyZGVkIHRvIHRoZSBjb250ZW50IGNvbnRyb2wuXG4gKiBAZXhwZXJpbWVudGFsXG4gKiBAcHVibGljXG4gKi9cbkBkZWZpbmVVSTVDbGFzcyhcInNhcC5mZS5iYXNlLkJ1aWxkaW5nQmxvY2tCYXNlXCIpXG5jbGFzcyBCdWlsZGluZ0Jsb2NrQmFzZTxUIGV4dGVuZHMgVUk1RWxlbWVudCA9IENvbnRyb2wsIEsgZXh0ZW5kcyBvYmplY3QgPSB7fT4gZXh0ZW5kcyBDb250cm9sIHtcblx0QGFnZ3JlZ2F0aW9uKHsgdHlwZTogXCJzYXAudWkuY29yZS5FbGVtZW50XCIsIG11bHRpcGxlOiBmYWxzZSwgaXNEZWZhdWx0OiB0cnVlIH0pXG5cdGNvbnRlbnQ/OiBUO1xuXG5cdC8qKlxuXHQgKiBBc3NvY2lhdGlvbiB0byBjb250cm9scyAvIElEcyB0aGF0IGxhYmVsIHRoaXMgY29udHJvbCAoc2VlIFdBSS1BUklBIGF0dHJpYnV0ZSBhcmlhLWxhYmVsbGVkYnkpLlxuXHQgKi9cblx0QGFzc29jaWF0aW9uKHsgdHlwZTogXCJzYXAudWkuY29yZS5Db250cm9sXCIsIG11bHRpcGxlOiB0cnVlLCBzaW5ndWxhck5hbWU6IFwiYXJpYUxhYmVsbGVkQnlcIiB9KVxuXHRhcmlhTGFiZWxsZWRCeSE6IHN0cmluZ1tdO1xuXG5cdEBkZWZpbmVTdGF0ZSgpXG5cdHByb3RlY3RlZCBzdGF0ZSE6IFN0YXRlT2Y8Sz47XG5cblx0Y29uc3RydWN0b3Ioc2V0dGluZ3M/OiBzdHJpbmcgfCBQcm9wZXJ0aWVzT2Y8QnVpbGRpbmdCbG9ja0Jhc2U8VD4+LCBvdGhlcnM/OiBQcm9wZXJ0aWVzT2Y8QnVpbGRpbmdCbG9ja0Jhc2U8VD4+KSB7XG5cdFx0aWYgKHR5cGVvZiBzZXR0aW5ncyA9PT0gXCJzdHJpbmdcIikge1xuXHRcdFx0b3RoZXJzID8/PSB7fTtcblx0XHRcdG90aGVycy5pZCA9IHNldHRpbmdzO1xuXHRcdH1cblx0XHRzdXBlcihzZXR0aW5ncyBhcyB1bmtub3duIGFzIHN0cmluZywgb3RoZXJzKTtcblx0fVxuXG5cdHByaXZhdGUgX29sZERvbVJlZjogV2Vha1JlZjxFbGVtZW50PiB8IG51bGwgPSBudWxsO1xuXG5cdHN0YXRpYyByZW5kZXI8VCBleHRlbmRzIENvbnRyb2w+KG9SbTogUmVuZGVyTWFuYWdlciwgb0NvbnRyb2w6IEJ1aWxkaW5nQmxvY2tCYXNlPFQ+KTogdm9pZCB7XG5cdFx0aWYgKCFvQ29udHJvbC5jb250ZW50IHx8IG9Db250cm9sLmdldFZpc2libGUoKSA9PT0gZmFsc2UpIHtcblx0XHRcdEludmlzaWJsZVJlbmRlcmVyLnJlbmRlcihvUm0sIG9Db250cm9sKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0b1JtLnJlbmRlckNvbnRyb2wob0NvbnRyb2wuY29udGVudCk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIE92ZXJyaWRlIHRoZSBiaW5kUHJvcGVydHkgdG8gZGVhbCB3aXRoIHRoZSBjYXNlIHdoZXJlIHRoZSBwcm9wZXJ0eSBpcyBhIGJpbmRpbmcgaW5mby5cblx0ICogQHBhcmFtIG5hbWUgVGhlIG5hbWUgb2YgdGUgcHJvcGVydHlcblx0ICogQHBhcmFtIGJpbmRpbmdJbmZvIFRoZSBiaW5kaW5nIGluZm9cblx0ICogQHJldHVybnMgVGhlIGluc3RhbmNlIG9mIHRoZSBidWlsZGluZyBibG9jayBmb3IgY2hhaW5pbmdcblx0ICovXG5cdG92ZXJyaWRlIGJpbmRQcm9wZXJ0eShuYW1lOiBzdHJpbmcsIGJpbmRpbmdJbmZvOiBQcm9wZXJ0eUJpbmRpbmdJbmZvKTogdGhpcyB7XG5cdFx0Y29uc3QgcHJvcGVydHlNZXRhZGF0YSA9IHRoaXMuZ2V0TWV0YWRhdGEoKS5nZXRQcm9wZXJ0eShuYW1lKTtcblx0XHRpZiAocHJvcGVydHlNZXRhZGF0YT8uYmluZGFibGUgPT09IGZhbHNlICYmIHByb3BlcnR5TWV0YWRhdGEuZ3JvdXAgPT09IFwiRGF0YVwiKSB7XG5cdFx0XHQodGhpcyBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilbbmFtZV0gPSBiaW5kaW5nSW5mbztcblx0XHR9IGVsc2Uge1xuXHRcdFx0c3VwZXIuYmluZFByb3BlcnR5KG5hbWUsIGJpbmRpbmdJbmZvKTtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblxuXHQvL3NldCB0aGUgb2xkIGRvbSByZWZcblx0b3ZlcnJpZGUgb25BZnRlclJlbmRlcmluZyhldmVudDogSlF1ZXJ5LkV2ZW50KTogdm9pZCB7XG5cdFx0Y29uc3QgZG9tUmVmID0gdGhpcy5nZXREb21SZWYoKTtcblx0XHRpZiAoZG9tUmVmKSB7XG5cdFx0XHR0aGlzLl9vbGREb21SZWYgPSBuZXcgV2Vha1JlZihkb21SZWYpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLl9vbGREb21SZWYgPSBudWxsO1xuXHRcdH1cblx0XHRzdXBlci5vbkFmdGVyUmVuZGVyaW5nKGV2ZW50KTtcblx0fVxuXG5cdG92ZXJyaWRlIGdldERvbVJlZihzdWZmaXg/OiBzdHJpbmcpOiBFbGVtZW50IHwgbnVsbCB7XG5cdFx0Y29uc3Qgb0NvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7XG5cdFx0bGV0IGRvbVJlZjogRWxlbWVudCB8IG51bGwgPSBvQ29udGVudD8uZ2V0RG9tUmVmKHN1ZmZpeCkgPz8gc3VwZXIuZ2V0RG9tUmVmKHN1ZmZpeCk7XG5cdFx0aWYgKCFkb21SZWYgJiYgIXN1ZmZpeCkge1xuXHRcdFx0ZG9tUmVmID0gdGhpcy5fb2xkRG9tUmVmPy5kZXJlZigpID8/IG51bGw7XG5cdFx0XHRpZiAoZG9tUmVmKSB7XG5cdFx0XHRcdHJldHVybiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChkb21SZWYuaWQpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gZG9tUmVmO1xuXHR9XG5cblx0b3ZlcnJpZGUgZ2V0Rm9jdXNEb21SZWYoKTogRWxlbWVudCB8IG51bGwge1xuXHRcdGNvbnN0IG9Db250ZW50ID0gdGhpcy5jb250ZW50O1xuXHRcdHJldHVybiBvQ29udGVudCA/IG9Db250ZW50LmdldEZvY3VzRG9tUmVmKCkgOiBzdXBlci5nZXRGb2N1c0RvbVJlZigpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFRoaXMgZnVuY3Rpb24gYXNrcyB1cCB0aGUgY29udHJvbCB0cmVlIHRvIGVuaGFuY2UgdGhlIGFjY2Vzc2liaWxpdHkgc3RhdGUgb2YgdGhlIGNvbnRyb2wuXG5cdCAqIEBwYXJhbSBfb0VsZW1lbnQgVGhlIGVsZW1lbnQgdG8gZW5oYW5jZVxuXHQgKiBAcGFyYW0gbUFyaWFQcm9wcyBUaGUgY3VycmVudCBhcmlhIHByb3BlcnRpZXNcblx0ICogQHJldHVybnMgVGhlIGVuaGFuY2VkIGFyaWEgcHJvcGVydGllc1xuXHQgKi9cblx0b3ZlcnJpZGUgZW5oYW5jZUFjY2Vzc2liaWxpdHlTdGF0ZShfb0VsZW1lbnQ6IG9iamVjdCwgbUFyaWFQcm9wczogb2JqZWN0KTogb2JqZWN0IHtcblx0XHRjb25zdCBvUGFyZW50ID0gdGhpcy5nZXRQYXJlbnQoKTtcblxuXHRcdGlmIChvUGFyZW50ICYmIChvUGFyZW50IGFzIE1hbmFnZWRPYmplY3QgJiB7IGVuaGFuY2VBY2Nlc3NpYmlsaXR5U3RhdGU/OiBGdW5jdGlvbiB9KS5lbmhhbmNlQWNjZXNzaWJpbGl0eVN0YXRlKSB7XG5cdFx0XHQvLyBmb3J3YXJkICBlbmhhbmNlQWNjZXNzaWJpbGl0eVN0YXRlIGNhbGwgdG8gdGhlIHBhcmVudFxuXHRcdFx0KG9QYXJlbnQgYXMgTWFuYWdlZE9iamVjdCAmIHsgZW5oYW5jZUFjY2Vzc2liaWxpdHlTdGF0ZTogRnVuY3Rpb24gfSkuZW5oYW5jZUFjY2Vzc2liaWxpdHlTdGF0ZShfb0VsZW1lbnQsIG1BcmlhUHJvcHMpO1xuXHRcdH1cblxuXHRcdHJldHVybiBtQXJpYVByb3BzO1xuXHR9XG5cblx0LyoqXG5cdCAqIFRoaXMgZnVuY3Rpb24gKGlmIGF2YWlsYWJsZSBvbiB0aGUgY29uY3JldGUgY29udHJvbCkgcHJvdmlkZXMgdGhlIGN1cnJlbnQgYWNjZXNzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgY29udHJvbC5cblx0ICogQHJldHVybnMgVGhlIGFjY2Vzc2liaWxpdHkgaW5mb3JtYXRpb24gZm9yIHRoZSBjb250cm9sLlxuXHQgKi9cblx0b3ZlcnJpZGUgZ2V0QWNjZXNzaWJpbGl0eUluZm8oKTogT2JqZWN0IHtcblx0XHRsZXQgYWNjZXNzaWJpbGl0eUluZm8gPSB7fTtcblx0XHRpZiAodGhpcy5jb250ZW50Py5pc0E8Q29udHJvbD4oXCJzYXAudWkuY29yZS5Db250cm9sXCIpKSB7XG5cdFx0XHRhY2Nlc3NpYmlsaXR5SW5mbyA9IHRoaXMuY29udGVudC5nZXRBY2Nlc3NpYmlsaXR5SW5mbygpO1xuXHRcdH1cblx0XHRyZXR1cm4gYWNjZXNzaWJpbGl0eUluZm87XG5cdH1cblxuXHQvKipcblx0ICogUmV0dXJucyB0aGUgRE9NTm9kZSBJRCB0byBiZSB1c2VkIGZvciB0aGUgXCJsYWJlbEZvclwiIGF0dHJpYnV0ZS5cblx0ICpcblx0ICogV2UgZm9yd2FyZCB0aGUgY2FsbCBvZiB0aGlzIG1ldGhvZCB0byB0aGUgY29udGVudCBjb250cm9sLlxuXHQgKiBAcmV0dXJucyBJRCB0byBiZSB1c2VkIGZvciB0aGUgPGNvZGU+bGFiZWxGb3I8L2NvZGU+XG5cdCAqL1xuXHRvdmVycmlkZSBnZXRJZEZvckxhYmVsKCk6IHN0cmluZyB7XG5cdFx0aWYgKHRoaXMuY29udGVudD8uaXNBPENvbnRyb2w+KFwic2FwLnVpLmNvcmUuQ29udHJvbFwiKSkge1xuXHRcdFx0cmV0dXJuIHRoaXMuY29udGVudC5nZXRJZEZvckxhYmVsKCk7XG5cdFx0fVxuXHRcdHJldHVybiBcIlwiO1xuXHR9XG5cblx0b3ZlcnJpZGUgYWRkU3R5bGVDbGFzcyhzdHlsZUNsYXNzOiBzdHJpbmcpOiB0aGlzIHtcblx0XHQodGhpcy5jb250ZW50IGFzIHVua25vd24gYXMgQ29udHJvbCk/LmFkZFN0eWxlQ2xhc3Moc3R5bGVDbGFzcyk7XG5cdFx0c3VwZXIuYWRkU3R5bGVDbGFzcyhzdHlsZUNsYXNzKTtcblx0XHRyZXR1cm4gdGhpcztcblx0fVxuXG5cdG92ZXJyaWRlIHJlbW92ZVN0eWxlQ2xhc3Moc3R5bGVDbGFzczogc3RyaW5nKTogdGhpcyB7XG5cdFx0KHRoaXMuY29udGVudCBhcyB1bmtub3duIGFzIENvbnRyb2wpPy5yZW1vdmVTdHlsZUNsYXNzKHN0eWxlQ2xhc3MpO1xuXHRcdHN1cGVyLnJlbW92ZVN0eWxlQ2xhc3Moc3R5bGVDbGFzcyk7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblxuXHQvKipcblx0ICogU2hvcnRoYW5kIGZvciB0aGUgQmluZGluZ1Rvb2xraXQuYmluZFN0YXRlIGZ1bmN0aW9uIHdpdGggdGhlIGN1cnJlbnQgc3RhdGUgb2JqZWN0LlxuXHQgKiBAcGFyYW0gcGF0aCBBIHByb3BlcnR5IGluIHRoZSBzdGF0ZSBvYmplY3Rcblx0ICogQHJldHVybnMgVGhlIGJpbmRpbmcgdG9vbGtpdCBleHByZXNzaW9uIGZvciB0aGUgc3RhdGVcblx0ICovXG5cdHByb3RlY3RlZCBiaW5kU3RhdGU8U1QgZXh0ZW5kcyBQcmltaXRpdmVUeXBlPihwYXRoOiBrZXlvZiBLKTogUGF0aEluTW9kZWxFeHByZXNzaW9uPFNUPiB8IENvbnN0YW50RXhwcmVzc2lvbjxTVD4ge1xuXHRcdHJldHVybiBCaW5kaW5nVG9vbGtpdC5iaW5kU3RhdGUodGhpcy5zdGF0ZSBhcyBLLCBwYXRoKTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBCdWlsZGluZ0Jsb2NrQmFzZTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFXQTtFQU1BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFQQSxJQVNNQSxpQkFBaUIsSUFBQUMsSUFBQSxHQUR0QkMsY0FBYyxDQUFDLCtCQUErQixDQUFDLEVBQUFDLEtBQUEsR0FFOUNDLFdBQVcsQ0FBQztJQUFFQyxJQUFJLEVBQUUscUJBQXFCO0lBQUVDLFFBQVEsRUFBRSxLQUFLO0lBQUVDLFNBQVMsRUFBRTtFQUFLLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBTTlFQyxXQUFXLENBQUM7SUFBRUosSUFBSSxFQUFFLHFCQUFxQjtJQUFFQyxRQUFRLEVBQUUsSUFBSTtJQUFFSSxZQUFZLEVBQUU7RUFBaUIsQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FHNUZDLFdBQVcsQ0FBQyxDQUFDLEVBQUFYLElBQUEsQ0FBQVksTUFBQSxJQUFBQyxPQUFBLDBCQUFBQyxRQUFBO0lBR2QsU0FBQWYsa0JBQVlnQixRQUFzRCxFQUFFQyxNQUEyQyxFQUFFO01BQUEsSUFBQUMsS0FBQTtNQUNoSCxJQUFJLE9BQU9GLFFBQVEsS0FBSyxRQUFRLEVBQUU7UUFDakNDLE1BQU0sS0FBSyxDQUFDLENBQUM7UUFDYkEsTUFBTSxDQUFDRSxFQUFFLEdBQUdILFFBQVE7TUFDckI7TUFDQUUsS0FBQSxHQUFBSCxRQUFBLENBQUFLLElBQUEsT0FBTUosUUFBUSxFQUF1QkMsTUFBTSxDQUFD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
183
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCdWlsZGluZ0Jsb2NrQmFzZSIsIl9kZWMiLCJkZWZpbmVVSTVDbGFzcyIsIl9kZWMyIiwiYWdncmVnYXRpb24iLCJ0eXBlIiwibXVsdGlwbGUiLCJpc0RlZmF1bHQiLCJfZGVjMyIsImFzc29jaWF0aW9uIiwic2luZ3VsYXJOYW1lIiwiX2RlYzQiLCJkZWZpbmVTdGF0ZSIsIl9jbGFzcyIsIl9jbGFzczIiLCJfQ29udHJvbCIsInNldHRpbmdzIiwib3RoZXJzIiwic2NvcGUiLCJfdGhpcyIsImlkIiwiY2FsbCIsIl9pbml0aWFsaXplckRlZmluZVByb3BlcnR5IiwiX2Rlc2NyaXB0b3IiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfb2xkRG9tUmVmIiwiX2luaGVyaXRzTG9vc2UiLCJyZW5kZXIiLCJvUm0iLCJvQ29udHJvbCIsImNvbnRlbnQiLCJnZXRWaXNpYmxlIiwiSW52aXNpYmxlUmVuZGVyZXIiLCJyZW5kZXJDb250cm9sIiwiX3Byb3RvIiwicHJvdG90eXBlIiwiYmluZFByb3BlcnR5IiwibmFtZSIsImJpbmRpbmdJbmZvIiwicHJvcGVydHlNZXRhZGF0YSIsImdldE1ldGFkYXRhIiwiZ2V0UHJvcGVydHkiLCJiaW5kYWJsZSIsImdyb3VwIiwib25BZnRlclJlbmRlcmluZyIsImV2ZW50IiwiZG9tUmVmIiwiZ2V0RG9tUmVmIiwiV2Vha1JlZiIsInN1ZmZpeCIsIm9Db250ZW50IiwiZGVyZWYiLCJkb2N1bWVudCIsImdldEVsZW1lbnRCeUlkIiwiZ2V0Rm9jdXNEb21SZWYiLCJlbmhhbmNlQWNjZXNzaWJpbGl0eVN0YXRlIiwiX29FbGVtZW50IiwibUFyaWFQcm9wcyIsIm9QYXJlbnQiLCJnZXRQYXJlbnQiLCJnZXRBY2Nlc3NpYmlsaXR5SW5mbyIsImFjY2Vzc2liaWxpdHlJbmZvIiwiaXNBIiwiZ2V0SWRGb3JMYWJlbCIsImFkZFN0eWxlQ2xhc3MiLCJzdHlsZUNsYXNzIiwicmVtb3ZlU3R5bGVDbGFzcyIsImJpbmRTdGF0ZSIsInBhdGgiLCJCaW5kaW5nVG9vbGtpdCIsInN0YXRlIiwiQ29udHJvbCIsIl9hcHBseURlY29yYXRlZERlc2NyaXB0b3IiLCJjb25maWd1cmFibGUiLCJlbnVtZXJhYmxlIiwid3JpdGFibGUiLCJpbml0aWFsaXplciJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiQnVpbGRpbmdCbG9ja0Jhc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb25zdGFudEV4cHJlc3Npb24sIFBhdGhJbk1vZGVsRXhwcmVzc2lvbiwgUHJpbWl0aXZlVHlwZSB9IGZyb20gXCJzYXAvZmUvYmFzZS9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0ICogYXMgQmluZGluZ1Rvb2xraXQgZnJvbSBcInNhcC9mZS9iYXNlL0JpbmRpbmdUb29sa2l0XCI7XG5pbXBvcnQgdHlwZSB7IFByb3BlcnRpZXNPZiwgU3RhdGVPZiB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB7IGFnZ3JlZ2F0aW9uLCBhc3NvY2lhdGlvbiwgZGVmaW5lU3RhdGUsIGRlZmluZVVJNUNsYXNzIH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IHR5cGUgTWFuYWdlZE9iamVjdCBmcm9tIFwic2FwL3VpL2Jhc2UvTWFuYWdlZE9iamVjdFwiO1xuaW1wb3J0IHR5cGUgeyBQcm9wZXJ0eUJpbmRpbmdJbmZvIH0gZnJvbSBcInNhcC91aS9iYXNlL01hbmFnZWRPYmplY3RcIjtcbmltcG9ydCBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgdHlwZSBVSTVFbGVtZW50IGZyb20gXCJzYXAvdWkvY29yZS9FbGVtZW50XCI7XG5pbXBvcnQgSW52aXNpYmxlUmVuZGVyZXIgZnJvbSBcInNhcC91aS9jb3JlL0ludmlzaWJsZVJlbmRlcmVyXCI7XG5pbXBvcnQgdHlwZSBSZW5kZXJNYW5hZ2VyIGZyb20gXCJzYXAvdWkvY29yZS9SZW5kZXJNYW5hZ2VyXCI7XG5pbXBvcnQgdHlwZSB7IEFjY2Vzc2liaWxpdHlJbmZvIH0gZnJvbSBcInNhcC91aS9jb3JlL2xpYnJhcnlcIjtcblxuaW50ZXJmYWNlIEJ1aWxkaW5nQmxvY2tCYXNlPFQgZXh0ZW5kcyBVSTVFbGVtZW50ID0gQ29udHJvbCwgSyBleHRlbmRzIG9iamVjdCA9IHt9PiB7XG5cdC8vIEZvcmNlIGEgc3RhdGUgdXBkYXRlXG5cdF91cGRhdGVTdGF0ZSgpOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGJ1aWxkaW5nIGJsb2Nrcy5cbiAqIFRoaXMgY29udGFpbnMgdGhlIGxvdyBsZXZlbCBmdW5jdGlvbmFsaXR5IG9mIGhhdmluZyBhIGNvbnRlbnQgYWdncmVnYXRpb24gYW5kIGhhbmRsaW5nIHRoZSByZW5kZXJpbmcgb2YgdGhlIGNvbnRlbnQgd2l0aG91dCBhbiBhY3R1YWwgRE9NIGVsZW1lbnQuXG4gKiBUaGUgYnVpbGRpbmcgYmxvY2sgYWxzbyBkZWZpbmVzIGEgc3RhdGUgb2JqZWN0IHRoYXQgY2FuIGJlIHVzZWQgdG8gc3RvcmUgdGhlIHN0YXRlIG9mIHRoZSBidWlsZGluZyBibG9jay5cbiAqIEFjY2Vzc2liaWxpdHkgYW5kIGNsYXNzZXMgaW5mb3JtYXRpb24gYXJlIGZvcndhcmRlZCB0byB0aGUgY29udGVudCBjb250cm9sLlxuICogQHB1YmxpY1xuICovXG5AZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUuYmFzZS5CdWlsZGluZ0Jsb2NrQmFzZVwiKVxuY2xhc3MgQnVpbGRpbmdCbG9ja0Jhc2U8VCBleHRlbmRzIFVJNUVsZW1lbnQgPSBDb250cm9sLCBLIGV4dGVuZHMgb2JqZWN0ID0ge30+IGV4dGVuZHMgQ29udHJvbCB7XG5cdEBhZ2dyZWdhdGlvbih7IHR5cGU6IFwic2FwLnVpLmNvcmUuRWxlbWVudFwiLCBtdWx0aXBsZTogZmFsc2UsIGlzRGVmYXVsdDogdHJ1ZSB9KVxuXHRjb250ZW50PzogVDtcblxuXHQvKipcblx0ICogQXNzb2NpYXRpb24gdG8gY29udHJvbHMgLyBJRHMgdGhhdCBsYWJlbCB0aGlzIGNvbnRyb2wgKHNlZSBXQUktQVJJQSBhdHRyaWJ1dGUgYXJpYS1sYWJlbGxlZGJ5KS5cblx0ICovXG5cdEBhc3NvY2lhdGlvbih7IHR5cGU6IFwic2FwLnVpLmNvcmUuQ29udHJvbFwiLCBtdWx0aXBsZTogdHJ1ZSwgc2luZ3VsYXJOYW1lOiBcImFyaWFMYWJlbGxlZEJ5XCIgfSlcblx0YXJpYUxhYmVsbGVkQnkhOiBzdHJpbmdbXTtcblxuXHRAZGVmaW5lU3RhdGUoKVxuXHRwcm90ZWN0ZWQgc3RhdGUhOiBTdGF0ZU9mPEs+O1xuXG5cdGNvbnN0cnVjdG9yKHNldHRpbmdzPzogc3RyaW5nIHwgUHJvcGVydGllc09mPEJ1aWxkaW5nQmxvY2tCYXNlPFQ+Piwgb3RoZXJzPzogUHJvcGVydGllc09mPEJ1aWxkaW5nQmxvY2tCYXNlPFQ+Piwgc2NvcGU/OiBvYmplY3QpIHtcblx0XHRpZiAodHlwZW9mIHNldHRpbmdzID09PSBcInN0cmluZ1wiKSB7XG5cdFx0XHRvdGhlcnMgPz89IHt9O1xuXHRcdFx0b3RoZXJzLmlkID0gc2V0dGluZ3M7XG5cdFx0fVxuXHRcdC8vIFNjb3BlIGlzIGRlZmluZWQgYW5kIGlzIHRoZXJlLCBidXQgc29tZWhvdyBkb2Vzbid0IGFwcGVhciBvbiBhbGwgdGhlIGNoaWxkcmVuIG9mIE1hbmFnZWRPYmplY3Rcblx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1jb21tZW50XG5cdFx0Ly8gQHRzLWlnbm9yZVxuXHRcdHN1cGVyKHNldHRpbmdzIGFzIHVua25vd24gYXMgc3RyaW5nLCBvdGhlcnMsIHNjb3BlKTtcblx0fVxuXG5cdHByaXZhdGUgX29sZERvbVJlZjogV2Vha1JlZjxFbGVtZW50PiB8IG51bGwgPSBudWxsO1xuXG5cdHN0YXRpYyByZW5kZXI8VCBleHRlbmRzIENvbnRyb2w+KG9SbTogUmVuZGVyTWFuYWdlciwgb0NvbnRyb2w6IEJ1aWxkaW5nQmxvY2tCYXNlPFQ+KTogdm9pZCB7XG5cdFx0aWYgKCFvQ29udHJvbC5jb250ZW50IHx8IG9Db250cm9sLmdldFZpc2libGUoKSA9PT0gZmFsc2UpIHtcblx0XHRcdEludmlzaWJsZVJlbmRlcmVyLnJlbmRlcihvUm0sIG9Db250cm9sKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0b1JtLnJlbmRlckNvbnRyb2wob0NvbnRyb2wuY29udGVudCk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIE92ZXJyaWRlIHRoZSBiaW5kUHJvcGVydHkgdG8gZGVhbCB3aXRoIHRoZSBjYXNlIHdoZXJlIHRoZSBwcm9wZXJ0eSBpcyBhIGJpbmRpbmcgaW5mby5cblx0ICogQHBhcmFtIG5hbWUgVGhlIG5hbWUgb2YgdGUgcHJvcGVydHlcblx0ICogQHBhcmFtIGJpbmRpbmdJbmZvIFRoZSBiaW5kaW5nIGluZm9cblx0ICogQHJldHVybnMgVGhlIGluc3RhbmNlIG9mIHRoZSBidWlsZGluZyBibG9jayBmb3IgY2hhaW5pbmdcblx0ICovXG5cdG92ZXJyaWRlIGJpbmRQcm9wZXJ0eShuYW1lOiBzdHJpbmcsIGJpbmRpbmdJbmZvOiBQcm9wZXJ0eUJpbmRpbmdJbmZvKTogdGhpcyB7XG5cdFx0Y29uc3QgcHJvcGVydHlNZXRhZGF0YSA9IHRoaXMuZ2V0TWV0YWRhdGEoKS5nZXRQcm9wZXJ0eShuYW1lKTtcblx0XHRpZiAocHJvcGVydHlNZXRhZGF0YT8uYmluZGFibGUgPT09IGZhbHNlICYmIHByb3BlcnR5TWV0YWRhdGEuZ3JvdXAgPT09IFwiRGF0YVwiKSB7XG5cdFx0XHQodGhpcyBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilbbmFtZV0gPSBiaW5kaW5nSW5mbztcblx0XHR9IGVsc2Uge1xuXHRcdFx0c3VwZXIuYmluZFByb3BlcnR5KG5hbWUsIGJpbmRpbmdJbmZvKTtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblxuXHQvL3NldCB0aGUgb2xkIGRvbSByZWZcblx0b3ZlcnJpZGUgb25BZnRlclJlbmRlcmluZyhldmVudDogSlF1ZXJ5LkV2ZW50KTogdm9pZCB7XG5cdFx0Y29uc3QgZG9tUmVmID0gdGhpcy5nZXREb21SZWYoKTtcblx0XHRpZiAoZG9tUmVmKSB7XG5cdFx0XHR0aGlzLl9vbGREb21SZWYgPSBuZXcgV2Vha1JlZihkb21SZWYpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLl9vbGREb21SZWYgPSBudWxsO1xuXHRcdH1cblx0XHRzdXBlci5vbkFmdGVyUmVuZGVyaW5nKGV2ZW50KTtcblx0fVxuXG5cdG92ZXJyaWRlIGdldERvbVJlZihzdWZmaXg/OiBzdHJpbmcpOiBFbGVtZW50IHwgbnVsbCB7XG5cdFx0Y29uc3Qgb0NvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7XG5cdFx0bGV0IGRvbVJlZjogRWxlbWVudCB8IG51bGwgPSBvQ29udGVudD8uZ2V0RG9tUmVmKHN1ZmZpeCkgPz8gc3VwZXIuZ2V0RG9tUmVmKHN1ZmZpeCk7XG5cdFx0aWYgKCFkb21SZWYgJiYgIXN1ZmZpeCkge1xuXHRcdFx0ZG9tUmVmID0gdGhpcy5fb2xkRG9tUmVmPy5kZXJlZigpID8/IG51bGw7XG5cdFx0XHRpZiAoZG9tUmVmKSB7XG5cdFx0XHRcdHJldHVybiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChkb21SZWYuaWQpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gZG9tUmVmO1xuXHR9XG5cblx0b3ZlcnJpZGUgZ2V0Rm9jdXNEb21SZWYoKTogRWxlbWVudCB8IG51bGwge1xuXHRcdGNvbnN0IG9Db250ZW50ID0gdGhpcy5jb250ZW50O1xuXHRcdHJldHVybiBvQ29udGVudCA/IG9Db250ZW50LmdldEZvY3VzRG9tUmVmKCkgOiBzdXBlci5nZXRGb2N1c0RvbVJlZigpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFRoaXMgZnVuY3Rpb24gYXNrcyB1cCB0aGUgY29udHJvbCB0cmVlIHRvIGVuaGFuY2UgdGhlIGFjY2Vzc2liaWxpdHkgc3RhdGUgb2YgdGhlIGNvbnRyb2wuXG5cdCAqIEBwYXJhbSBfb0VsZW1lbnQgVGhlIGVsZW1lbnQgdG8gZW5oYW5jZVxuXHQgKiBAcGFyYW0gbUFyaWFQcm9wcyBUaGUgY3VycmVudCBhcmlhIHByb3BlcnRpZXNcblx0ICogQHJldHVybnMgVGhlIGVuaGFuY2VkIGFyaWEgcHJvcGVydGllc1xuXHQgKi9cblx0b3ZlcnJpZGUgZW5oYW5jZUFjY2Vzc2liaWxpdHlTdGF0ZShfb0VsZW1lbnQ6IG9iamVjdCwgbUFyaWFQcm9wczogb2JqZWN0KTogb2JqZWN0IHtcblx0XHRjb25zdCBvUGFyZW50ID0gdGhpcy5nZXRQYXJlbnQoKTtcblxuXHRcdGlmIChvUGFyZW50ICYmIChvUGFyZW50IGFzIE1hbmFnZWRPYmplY3QgJiB7IGVuaGFuY2VBY2Nlc3NpYmlsaXR5U3RhdGU/OiBGdW5jdGlvbiB9KS5lbmhhbmNlQWNjZXNzaWJpbGl0eVN0YXRlKSB7XG5cdFx0XHQvLyBmb3J3YXJkICBlbmhhbmNlQWNjZXNzaWJpbGl0eVN0YXRlIGNhbGwgdG8gdGhlIHBhcmVudFxuXHRcdFx0KG9QYXJlbnQgYXMgTWFuYWdlZE9iamVjdCAmIHsgZW5oYW5jZUFjY2Vzc2liaWxpdHlTdGF0ZTogRnVuY3Rpb24gfSkuZW5oYW5jZUFjY2Vzc2liaWxpdHlTdGF0ZShfb0VsZW1lbnQsIG1BcmlhUHJvcHMpO1xuXHRcdH1cblxuXHRcdHJldHVybiBtQXJpYVByb3BzO1xuXHR9XG5cblx0LyoqXG5cdCAqIFRoaXMgZnVuY3Rpb24gKGlmIGF2YWlsYWJsZSBvbiB0aGUgY29uY3JldGUgY29udHJvbCkgcHJvdmlkZXMgdGhlIGN1cnJlbnQgYWNjZXNzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgY29udHJvbC5cblx0ICogQHJldHVybnMgVGhlIGFjY2Vzc2liaWxpdHkgaW5mb3JtYXRpb24gZm9yIHRoZSBjb250cm9sLlxuXHQgKi9cblx0b3ZlcnJpZGUgZ2V0QWNjZXNzaWJpbGl0eUluZm8oKTogQWNjZXNzaWJpbGl0eUluZm8ge1xuXHRcdGxldCBhY2Nlc3NpYmlsaXR5SW5mbyA9IHt9O1xuXHRcdGlmICh0aGlzLmNvbnRlbnQ/LmlzQTxDb250cm9sPihcInNhcC51aS5jb3JlLkNvbnRyb2xcIikgJiYgdGhpcy5jb250ZW50LmdldEFjY2Vzc2liaWxpdHlJbmZvKSB7XG5cdFx0XHRhY2Nlc3NpYmlsaXR5SW5mbyA9IHRoaXMuY29udGVudC5nZXRBY2Nlc3NpYmlsaXR5SW5mbygpO1xuXHRcdH1cblx0XHRyZXR1cm4gYWNjZXNzaWJpbGl0eUluZm87XG5cdH1cblxuXHQvKipcblx0ICogUmV0dXJucyB0aGUgRE9NTm9kZSBJRCB0byBiZSB1c2VkIGZvciB0aGUgXCJsYWJlbEZvclwiIGF0dHJpYnV0ZS5cblx0ICpcblx0ICogV2UgZm9yd2FyZCB0aGUgY2FsbCBvZiB0aGlzIG1ldGhvZCB0byB0aGUgY29udGVudCBjb250cm9sLlxuXHQgKiBAcmV0dXJucyBJRCB0byBiZSB1c2VkIGZvciB0aGUgPGNvZGU+bGFiZWxGb3I8L2NvZGU+XG5cdCAqL1xuXHRvdmVycmlkZSBnZXRJZEZvckxhYmVsKCk6IHN0cmluZyB7XG5cdFx0aWYgKHRoaXMuY29udGVudD8uaXNBPENvbnRyb2w+KFwic2FwLnVpLmNvcmUuQ29udHJvbFwiKSkge1xuXHRcdFx0cmV0dXJuIHRoaXMuY29udGVudC5nZXRJZEZvckxhYmVsKCk7XG5cdFx0fVxuXHRcdHJldHVybiBcIlwiO1xuXHR9XG5cblx0b3ZlcnJpZGUgYWRkU3R5bGVDbGFzcyhzdHlsZUNsYXNzOiBzdHJpbmcpOiB0aGlzIHtcblx0XHQodGhpcy5jb250ZW50IGFzIHVua25vd24gYXMgQ29udHJvbCk/LmFkZFN0eWxlQ2xhc3Moc3R5bGVDbGFzcyk7XG5cdFx0c3VwZXIuYWRkU3R5bGVDbGFzcyhzdHlsZUNsYXNzKTtcblx0XHRyZXR1cm4gdGhpcztcblx0fVxuXG5cdG92ZXJyaWRlIHJlbW92ZVN0eWxlQ2xhc3Moc3R5bGVDbGFzczogc3RyaW5nKTogdGhpcyB7XG5cdFx0KHRoaXMuY29udGVudCBhcyB1bmtub3duIGFzIENvbnRyb2wpPy5yZW1vdmVTdHlsZUNsYXNzKHN0eWxlQ2xhc3MpO1xuXHRcdHN1cGVyLnJlbW92ZVN0eWxlQ2xhc3Moc3R5bGVDbGFzcyk7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblxuXHQvKipcblx0ICogU2hvcnRoYW5kIGZvciB0aGUgQmluZGluZ1Rvb2xraXQuYmluZFN0YXRlIGZ1bmN0aW9uIHdpdGggdGhlIGN1cnJlbnQgc3RhdGUgb2JqZWN0LlxuXHQgKiBAcGFyYW0gcGF0aCBBIHByb3BlcnR5IGluIHRoZSBzdGF0ZSBvYmplY3Rcblx0ICogQHJldHVybnMgVGhlIGJpbmRpbmcgdG9vbGtpdCBleHByZXNzaW9uIGZvciB0aGUgc3RhdGVcblx0ICovXG5cdHByb3RlY3RlZCBiaW5kU3RhdGU8U1QgZXh0ZW5kcyBQcmltaXRpdmVUeXBlPihwYXRoOiBrZXlvZiBLKTogUGF0aEluTW9kZWxFeHByZXNzaW9uPFNUPiB8IENvbnN0YW50RXhwcmVzc2lvbjxTVD4ge1xuXHRcdHJldHVybiBCaW5kaW5nVG9vbGtpdC5iaW5kU3RhdGUodGhpcy5zdGF0ZSBhcyBLLCBwYXRoKTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBCdWlsZGluZ0Jsb2NrQmFzZTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFOQSxJQVFNQSxpQkFBaUIsSUFBQUMsSUFBQSxHQUR0QkMsY0FBYyxDQUFDLCtCQUErQixDQUFDLEVBQUFDLEtBQUEsR0FFOUNDLFdBQVcsQ0FBQztJQUFFQyxJQUFJLEVBQUUscUJBQXFCO0lBQUVDLFFBQVEsRUFBRSxLQUFLO0lBQUVDLFNBQVMsRUFBRTtFQUFLLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBTTlFQyxXQUFXLENBQUM7SUFBRUosSUFBSSxFQUFFLHFCQUFxQjtJQUFFQyxRQUFRLEVBQUUsSUFBSTtJQUFFSSxZQUFZLEVBQUU7RUFBaUIsQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FHNUZDLFdBQVcsQ0FBQyxDQUFDLEVBQUFYLElBQUEsQ0FBQVksTUFBQSxJQUFBQyxPQUFBLDBCQUFBQyxRQUFBO0lBR2QsU0FBQWYsa0JBQVlnQixRQUFzRCxFQUFFQyxNQUEyQyxFQUFFQyxLQUFjLEVBQUU7TUFBQSxJQUFBQyxLQUFBO01BQ2hJLElBQUksT0FBT0gsUUFBUSxLQUFLLFFBQVEsRUFBRTtRQUNqQ0MsTUFBTSxLQUFLLENBQUMsQ0FBQztRQUNiQSxNQUFNLENBQUNHLEVBQUUsR0FBR0osUUFBUTtNQUNyQjtNQUNBO01BQ0E7TUFDQTtNQUNBRyxLQUFBLEdBQUFKLFFBQUEsQ0FBQU0sSUFBQSxPQUFNTCxRQUFRLEVBQXVCQyxNQUFNLEVBQUVDLEtBQUssQ0FBQztNQUFDSSwwQkFBQSxDQUFBSCxLQUFBLGFBQUFJLFdBQUEsRUFBQUosS0FBQTtNQWpCckQ7QUFDRDtBQUNBO01BRkNHLDBCQUFBLENBQUFILEtBQUEsb0JBQUFLLFlBQUEsRUFBQUwsS0FBQTtNQUFBRywwQkFBQSxDQUFBSCxLQUFBLFdBQUFNLFlBQUEsRUFBQU4sS0FBQTtNQUFBQSxLQUFBLENBb0JRTyxVQUFVLEdBQTRCLElBQUk7TUFBQSxPQUFBUCxLQUFBO0lBRmxEO0lBQUNRLGNBQUEsQ0FBQTNCLGlCQUFBLEVBQUFlLFFBQUE7SUFBQWYsaUJBQUEsQ0FJTTRCLE1BQU0sR0FBYixTQUFPQSxNQUFNQSxDQUFvQkMsR0FBa0IsRUFBRUMsUUFBOEIsRUFBUTtNQUMxRixJQUFJLENBQUNBLFFBQVEsQ0FBQ0MsT0FBTyxJQUFJRCxRQUFRLENBQUNFLFVBQVUsQ0FBQyxDQUFDLEtBQUssS0FBSyxFQUFFO1FBQ3pEQyxpQkFBaUIsQ0FBQ0wsTUFBTSxDQUFDQyxHQUFHLEVBQUVDLFFBQVEsQ0FBQztNQUN4QyxDQUFDLE1BQU07UUFDTkQsR0FBRyxDQUFDSyxhQUFhLENBQUNKLFFBQVEsQ0FBQ0MsT0FBTyxDQUFDO01BQ3BDO0lBQ0Q7O0lBRUE7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BTEM7SUFBQSxJQUFBSSxNQUFBLEdBQUFuQyxpQkFBQSxDQUFBb0MsU0FBQTtJQUFBRCxNQUFBLENBTVNFLFlBQVksR0FBckIsU0FBU0EsWUFBWUEsQ0FBQ0MsSUFBWSxFQUFFQyxXQUFnQyxFQUFRO01BQzNFLE1BQU1DLGdCQUFnQixHQUFHLElBQUksQ0FBQ0MsV0FBVyxDQUFDLENBQUMsQ0FBQ0MsV0FBVyxDQUFDSixJQUFJLENBQUM7TUFDN0QsSUFBSUUsZ0JBQWdCLEVBQUVHLFFBQVEsS0FBSyxLQUFLLElBQUlILGdCQUFnQixDQUFDSSxLQUFLLEtBQUssTUFBTSxFQUFFO1FBQzdFLElBQUksQ0FBNkJOLElBQUksQ0FBQyxHQUFHQyxXQUFXO01BQ3RELENBQUMsTUFBTTtRQUNOeEIsUUFBQSxDQUFBcUIsU0FBQSxDQUFNQyxZQUFZLENBQUFoQixJQUFBLE9BQUNpQixJQUFJLEVBQUVDLFdBQVc7TUFDckM7TUFDQSxPQUFPLElBQUk7SUFDWjs7SUFFQTtJQUFBO0lBQUFKLE1BQUEsQ0FDU1UsZ0JBQWdCLEdBQXpCLFNBQVNBLGdCQUFnQkEsQ0FBQ0MsS0FBbUIsRUFBUTtNQUNwRCxNQUFNQyxNQUFNLEdBQUcsSUFBSSxDQUFDQyxTQUFTLENBQUMsQ0FBQztNQUMvQixJQUFJRCxNQUFNLEVBQUU7UUFDWCxJQUFJLENBQUNyQixVQUFVLEdBQUcsSUFBSXVCLE9BQU8sQ0FBQ0YsTUFBTSxDQUFDO01BQ3RDLENBQUMsTUFBTTtRQUNOLElBQUksQ0FBQ3JCLFVBQVUsR0FBRyxJQUFJO01BQ3ZCO01BQ0FYLFFBQUEsQ0FBQXFCLFNBQUEsQ0FBTVMsZ0JBQWdCLENBQUF4QixJQUFBLE9BQUN5QixLQUFLO0lBQzdCLENBQUM7SUFBQVgsTUFBQSxDQUVRYSxTQUFTLEdBQWxCLFNBQVNBLFNBQVNBLENBQUNFLE1BQWUsRUFBa0I7TUFDbkQsTUFBTUMsUUFBUSxHQUFHLElBQUksQ0FBQ3BCLE9BQU87TUFDN0IsSUFBSWdCLE1BQXNCLEdBQUdJLFFBQVEsRUFBRUgsU0FBUyxDQUFDRSxNQUFNLENBQUMsSUFBQW5DLFFBQUEsQ0FBQXFCLFNBQUEsQ0FBVVksU0FBUyxDQUFBM0IsSUFBQSxPQUFDNkIsTUFBTSxDQUFDO01BQ25GLElBQUksQ0FBQ0gsTUFBTSxJQUFJLENBQUNHLE1BQU0sRUFBRTtRQUN2QkgsTUFBTSxHQUFHLElBQUksQ0FBQ3JCLFVBQVUsRUFBRTBCLEtBQUssQ0FBQyxDQUFDLElBQUksSUFBSTtRQUN6QyxJQUFJTCxNQUFNLEVBQUU7VUFDWCxPQUFPTSxRQUFRLENBQUNDLGNBQWMsQ0FBQ1AsTUFBTSxDQUFDM0IsRUFBRSxDQUFDO1FBQzFDO01BQ0Q7TUFDQSxPQUFPMkIsTUFBTTtJQUNkLENBQUM7SUFBQVosTUFBQSxDQUVRb0IsY0FBYyxHQUF2QixTQUFTQSxjQUFjQSxDQUFBLEVBQW1CO01BQ3pDLE1BQU1KLFFBQVEsR0FBRyxJQUFJLENBQUNwQixPQUFPO01BQzdCLE9BQU9vQixRQUFRLEdBQUdBLFFBQVEsQ0FBQ0ksY0FBYyxDQUFDLENBQUMsR0FBQXhDLFFBQUEsQ0FBQXFCLFNBQUEsQ0FBU21CLGNBQWMsQ0FBQWxDLElBQUEsTUFBRTtJQUNyRTs7SUFFQTtBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FMQztJQUFBYyxNQUFBLENBTVNxQix5QkFBeUIsR0FBbEMsU0FBU0EseUJBQXlCQSxDQUFDQyxTQUFpQixFQUFFQyxVQUFrQixFQUFVO01BQ2pGLE1BQU1DLE9BQU8sR0FBRyxJQUFJLENBQUNDLFNBQVMsQ0FBQyxDQUFDO01BRWhDLElBQUlELE9BQU8sSUFBS0EsT0FBTyxDQUE4REgseUJBQXlCLEVBQUU7UUFDL0c7UUFDQ0csT0FBTyxDQUE2REgseUJBQXlCLENBQUNDLFNBQVMsRUFBRUMsVUFBVSxDQUFDO01BQ3RIO01BRUEsT0FBT0EsVUFBVTtJQUNsQjs7SUFFQTtBQUNEO0FBQ0E7QUFDQSxPQUhDO0lBQUF2QixNQUFBLENBSVMwQixvQkFBb0IsR0FBN0IsU0FBU0Esb0JBQW9CQSxDQUFBLEVBQXNCO01BQ2xELElBQUlDLGlCQUFpQixHQUFHLENBQUMsQ0FBQztNQUMxQixJQUFJLElBQUksQ0FBQy9CLE9BQU8sRUFBRWdDLEdBQUcsQ0FBVSxxQkFBcUIsQ0FBQyxJQUFJLElBQUksQ0FBQ2hDLE9BQU8sQ0FBQzhCLG9CQUFvQixFQUFFO1FBQzNGQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMvQixPQUFPLENBQUM4QixvQkFBb0IsQ0FBQyxDQUFDO01BQ3hEO01BQ0EsT0FBT0MsaUJBQWlCO0lBQ3pCOztJQUVBO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUxDO0lBQUEzQixNQUFBLENBTVM2QixhQUFhLEdBQXRCLFNBQVNBLGFBQWFBLENBQUEsRUFBVztNQUNoQyxJQUFJLElBQUksQ0FBQ2pDLE9BQU8sRUFBRWdDLEdBQUcsQ0FBVSxxQkFBcUIsQ0FBQyxFQUFFO1FBQ3RELE9BQU8sSUFBSSxDQUFDaEMsT0FBTyxDQUFDaUMsYUFBYSxDQUFDLENBQUM7TUFDcEM7TUFDQSxPQUFPLEVBQUU7SUFDVixDQUFDO0lBQUE3QixNQUFBLENBRVE4QixhQUFhLEdBQXRCLFNBQVNBLGFBQWFBLENBQUNDLFVBQWtCLEVBQVE7TUFDL0MsSUFBSSxDQUFDbkMsT0FBTyxFQUF5QmtDLGFBQWEsQ0FBQ0MsVUFBVSxDQUFDO01BQy9EbkQsUUFBQSxDQUFBcUIsU0FBQSxDQUFNNkIsYUFBYSxDQUFBNUMsSUFBQSxPQUFDNkMsVUFBVTtNQUM5QixPQUFPLElBQUk7SUFDWixDQUFDO0lBQUEvQixNQUFBLENBRVFnQyxnQkFBZ0IsR0FBekIsU0FBU0EsZ0JBQWdCQSxDQUFDRCxVQUFrQixFQUFRO01BQ2xELElBQUksQ0FBQ25DLE9BQU8sRUFBeUJvQyxnQkFBZ0IsQ0FBQ0QsVUFBVSxDQUFDO01BQ2xFbkQsUUFBQSxDQUFBcUIsU0FBQSxDQUFNK0IsZ0JBQWdCLENBQUE5QyxJQUFBLE9BQUM2QyxVQUFVO01BQ2pDLE9BQU8sSUFBSTtJQUNaOztJQUVBO0FBQ0Q7QUFDQTtBQUNBO0FBQ0EsT0FKQztJQUFBL0IsTUFBQSxDQUtVaUMsU0FBUyxHQUFuQixTQUFVQSxTQUFTQSxDQUEyQkMsSUFBYSxFQUFzRDtNQUNoSCxPQUFPQyxjQUFjLENBQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUNHLEtBQUssRUFBT0YsSUFBSSxDQUFDO0lBQ3ZELENBQUM7SUFBQSxPQUFBckUsaUJBQUE7RUFBQSxFQTNJcUZ3RSxPQUFPLEdBQUFqRCxXQUFBLEdBQUFrRCx5QkFBQSxDQUFBM0QsT0FBQSxDQUFBc0IsU0FBQSxjQUFBakMsS0FBQTtJQUFBdUUsWUFBQTtJQUFBQyxVQUFBO0lBQUFDLFFBQUE7SUFBQUMsV0FBQTtFQUFBLElBQUFyRCxZQUFBLEdBQUFpRCx5QkFBQSxDQUFBM0QsT0FBQSxDQUFBc0IsU0FBQSxxQkFBQTVCLEtBQUE7SUFBQWtFLFlBQUE7SUFBQUMsVUFBQTtJQUFBQyxRQUFBO0lBQUFDLFdBQUE7RUFBQSxJQUFBcEQsWUFBQSxHQUFBZ0QseUJBQUEsQ0FBQTNELE9BQUEsQ0FBQXNCLFNBQUEsWUFBQXpCLEtBQUE7SUFBQStELFlBQUE7SUFBQUMsVUFBQTtJQUFBQyxRQUFBO0lBQUFDLFdBQUE7RUFBQSxJQUFBL0QsT0FBQSxNQUFBRCxNQUFBO0VBQUEsT0E4SS9FYixpQkFBaUI7QUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
@@ -8,8 +8,8 @@ import Control from "sap/ui/core/Control";
8
8
  import type UI5Element from "sap/ui/core/Element";
9
9
  import InvisibleRenderer from "sap/ui/core/InvisibleRenderer";
10
10
  import type RenderManager from "sap/ui/core/RenderManager";
11
+ import type { AccessibilityInfo } from "sap/ui/core/library";
11
12
 
12
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
13
13
  interface BuildingBlockBase<T extends UI5Element = Control, K extends object = {}> {
14
14
  // Force a state update
15
15
  _updateState(): Promise<void>;
@@ -20,7 +20,6 @@ interface BuildingBlockBase<T extends UI5Element = Control, K extends object = {
20
20
  * This contains the low level functionality of having a content aggregation and handling the rendering of the content without an actual DOM element.
21
21
  * The building block also defines a state object that can be used to store the state of the building block.
22
22
  * Accessibility and classes information are forwarded to the content control.
23
- * @experimental
24
23
  * @public
25
24
  */
26
25
  @defineUI5Class("sap.fe.base.BuildingBlockBase")
@@ -37,12 +36,15 @@ class BuildingBlockBase<T extends UI5Element = Control, K extends object = {}> e
37
36
  @defineState()
38
37
  protected state!: StateOf<K>;
39
38
 
40
- constructor(settings?: string | PropertiesOf<BuildingBlockBase<T>>, others?: PropertiesOf<BuildingBlockBase<T>>) {
39
+ constructor(settings?: string | PropertiesOf<BuildingBlockBase<T>>, others?: PropertiesOf<BuildingBlockBase<T>>, scope?: object) {
41
40
  if (typeof settings === "string") {
42
41
  others ??= {};
43
42
  others.id = settings;
44
43
  }
45
- super(settings as unknown as string, others);
44
+ // Scope is defined and is there, but somehow doesn't appear on all the children of ManagedObject
45
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
46
+ // @ts-ignore
47
+ super(settings as unknown as string, others, scope);
46
48
  }
47
49
 
48
50
  private _oldDomRef: WeakRef<Element> | null = null;
@@ -120,9 +122,9 @@ class BuildingBlockBase<T extends UI5Element = Control, K extends object = {}> e
120
122
  * This function (if available on the concrete control) provides the current accessibility state of the control.
121
123
  * @returns The accessibility information for the control.
122
124
  */
123
- override getAccessibilityInfo(): Object {
125
+ override getAccessibilityInfo(): AccessibilityInfo {
124
126
  let accessibilityInfo = {};
125
- if (this.content?.isA<Control>("sap.ui.core.Control")) {
127
+ if (this.content?.isA<Control>("sap.ui.core.Control") && this.content.getAccessibilityInfo) {
126
128
  accessibilityInfo = this.content.getAccessibilityInfo();
127
129
  }
128
130
  return accessibilityInfo;