@sapui5/sap.fe.core 1.130.0 → 1.131.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.
Files changed (158) hide show
  1. package/package.json +1 -1
  2. package/src/sap/fe/core/.library +1 -1
  3. package/src/sap/fe/core/ActionRuntime.js +3 -3
  4. package/src/sap/fe/core/ActionRuntime.ts +1 -1
  5. package/src/sap/fe/core/CommonUtils.js +38 -14
  6. package/src/sap/fe/core/CommonUtils.ts +39 -15
  7. package/src/sap/fe/core/TemplateComponent.js +4 -1
  8. package/src/sap/fe/core/TemplateComponent.ts +2 -0
  9. package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +248 -0
  10. package/src/sap/fe/core/buildingBlocks/{BuildingBlockBase.ts → BuildingBlock.ts} +73 -132
  11. package/src/sap/fe/core/controllerextensions/EditFlow.js +17 -7
  12. package/src/sap/fe/core/controllerextensions/EditFlow.ts +17 -6
  13. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +4 -2
  14. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +3 -1
  15. package/src/sap/fe/core/controllerextensions/InternalRouting.js +5 -2
  16. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +4 -0
  17. package/src/sap/fe/core/controllerextensions/KPIManagement.js +47 -19
  18. package/src/sap/fe/core/controllerextensions/KPIManagement.ts +57 -19
  19. package/src/sap/fe/core/controllerextensions/PageReady.js +20 -18
  20. package/src/sap/fe/core/controllerextensions/PageReady.ts +19 -18
  21. package/src/sap/fe/core/controllerextensions/Placeholder.js +5 -1
  22. package/src/sap/fe/core/controllerextensions/Placeholder.ts +5 -0
  23. package/src/sap/fe/core/controllerextensions/Routing.js +2 -2
  24. package/src/sap/fe/core/controllerextensions/Routing.ts +1 -1
  25. package/src/sap/fe/core/controllerextensions/Share.js +3 -2
  26. package/src/sap/fe/core/controllerextensions/Share.ts +2 -1
  27. package/src/sap/fe/core/controllerextensions/ViewState.js +5 -1
  28. package/src/sap/fe/core/controllerextensions/ViewState.ts +4 -0
  29. package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.js +9 -5
  30. package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.tsx +17 -6
  31. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +4 -3
  32. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +3 -2
  33. package/src/sap/fe/core/controllerextensions/editFlow/draft.js +4 -4
  34. package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +3 -0
  35. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +3 -4
  36. package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.ts +2 -2
  37. package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js +17 -20
  38. package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.ts +30 -29
  39. package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +5 -5
  40. package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +4 -1
  41. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +77 -35
  42. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.ts +88 -43
  43. package/src/sap/fe/core/controllerextensions/viewState/IViewStateContributor.js +3 -7
  44. package/src/sap/fe/core/controllerextensions/viewState/IViewStateContributor.ts +0 -4
  45. package/src/sap/fe/core/controllerextensions/viewState/IViewStateContributorMixin.js +70 -0
  46. package/src/sap/fe/core/controllerextensions/viewState/IViewStateContributorMixin.ts +99 -0
  47. package/src/sap/fe/core/controls/FormElementWrapper.js +1 -1
  48. package/src/sap/fe/core/controls/FormElementWrapper.ts +1 -1
  49. package/src/sap/fe/core/controls/Recommendations/ConfirmRecommendationDialog.block.js +14 -2
  50. package/src/sap/fe/core/controls/Recommendations/ConfirmRecommendationDialog.block.tsx +20 -6
  51. package/src/sap/fe/core/converters/ConverterContext.js +10 -3
  52. package/src/sap/fe/core/converters/ConverterContext.ts +8 -1
  53. package/src/sap/fe/core/converters/ManifestSettings.js +1 -1
  54. package/src/sap/fe/core/converters/ManifestSettings.ts +2 -1
  55. package/src/sap/fe/core/converters/controls/Common/Action.js +2 -2
  56. package/src/sap/fe/core/converters/controls/Common/Action.ts +5 -1
  57. package/src/sap/fe/core/converters/controls/Common/Chart.js +1 -1
  58. package/src/sap/fe/core/converters/controls/Common/Chart.ts +10 -5
  59. package/src/sap/fe/core/converters/controls/Common/KPI.js +26 -9
  60. package/src/sap/fe/core/converters/controls/Common/KPI.ts +48 -5
  61. package/src/sap/fe/core/converters/controls/Common/Table.js +63 -67
  62. package/src/sap/fe/core/converters/controls/Common/Table.ts +87 -81
  63. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +2 -1
  64. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +1 -0
  65. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +2 -3
  66. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +2 -2
  67. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +12 -8
  68. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +10 -6
  69. package/src/sap/fe/core/formatters/StandardFormatter.js +4 -1
  70. package/src/sap/fe/core/formatters/StandardFormatter.ts +4 -1
  71. package/src/sap/fe/core/fpm/manifest.json +1 -1
  72. package/src/sap/fe/core/helpers/AppStartupHelper.js +37 -10
  73. package/src/sap/fe/core/helpers/AppStartupHelper.ts +38 -14
  74. package/src/sap/fe/core/helpers/BindingHelper.js +2 -2
  75. package/src/sap/fe/core/helpers/BindingHelper.ts +1 -1
  76. package/src/sap/fe/core/helpers/DeleteHelper.js +3 -2
  77. package/src/sap/fe/core/helpers/DeleteHelper.ts +2 -1
  78. package/src/sap/fe/core/helpers/MetaPath.js +17 -2
  79. package/src/sap/fe/core/helpers/MetaPath.ts +27 -6
  80. package/src/sap/fe/core/helpers/RecommendationHelper.js +2 -2
  81. package/src/sap/fe/core/helpers/RecommendationHelper.ts +1 -1
  82. package/src/sap/fe/core/helpers/ResourceModelHelper.js +8 -3
  83. package/src/sap/fe/core/helpers/ResourceModelHelper.ts +9 -2
  84. package/src/sap/fe/core/library.js +5 -2
  85. package/src/sap/fe/core/library.support.js +3 -3
  86. package/src/sap/fe/core/library.support.ts +2 -1
  87. package/src/sap/fe/core/library.ts +4 -0
  88. package/src/sap/fe/core/messagebundle.properties +6 -0
  89. package/src/sap/fe/core/messagebundle_ar.properties +11 -3
  90. package/src/sap/fe/core/messagebundle_bg.properties +14 -6
  91. package/src/sap/fe/core/messagebundle_ca.properties +10 -2
  92. package/src/sap/fe/core/messagebundle_cnr.properties +10 -2
  93. package/src/sap/fe/core/messagebundle_cs.properties +10 -2
  94. package/src/sap/fe/core/messagebundle_cy.properties +10 -2
  95. package/src/sap/fe/core/messagebundle_da.properties +10 -2
  96. package/src/sap/fe/core/messagebundle_de.properties +12 -4
  97. package/src/sap/fe/core/messagebundle_el.properties +10 -2
  98. package/src/sap/fe/core/messagebundle_en.properties +9 -1
  99. package/src/sap/fe/core/messagebundle_en_GB.properties +10 -2
  100. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +10 -2
  101. package/src/sap/fe/core/messagebundle_es.properties +12 -4
  102. package/src/sap/fe/core/messagebundle_es_MX.properties +10 -2
  103. package/src/sap/fe/core/messagebundle_et.properties +10 -2
  104. package/src/sap/fe/core/messagebundle_fi.properties +10 -2
  105. package/src/sap/fe/core/messagebundle_fr.properties +10 -2
  106. package/src/sap/fe/core/messagebundle_fr_CA.properties +11 -3
  107. package/src/sap/fe/core/messagebundle_hi.properties +10 -2
  108. package/src/sap/fe/core/messagebundle_hr.properties +11 -3
  109. package/src/sap/fe/core/messagebundle_hu.properties +11 -3
  110. package/src/sap/fe/core/messagebundle_id.properties +10 -2
  111. package/src/sap/fe/core/messagebundle_it.properties +10 -2
  112. package/src/sap/fe/core/messagebundle_iw.properties +11 -3
  113. package/src/sap/fe/core/messagebundle_ja.properties +10 -2
  114. package/src/sap/fe/core/messagebundle_kk.properties +10 -2
  115. package/src/sap/fe/core/messagebundle_ko.properties +10 -2
  116. package/src/sap/fe/core/messagebundle_lt.properties +10 -2
  117. package/src/sap/fe/core/messagebundle_lv.properties +10 -2
  118. package/src/sap/fe/core/messagebundle_mk.properties +10 -2
  119. package/src/sap/fe/core/messagebundle_ms.properties +10 -2
  120. package/src/sap/fe/core/messagebundle_nl.properties +12 -4
  121. package/src/sap/fe/core/messagebundle_no.properties +11 -3
  122. package/src/sap/fe/core/messagebundle_pl.properties +10 -2
  123. package/src/sap/fe/core/messagebundle_pt.properties +10 -2
  124. package/src/sap/fe/core/messagebundle_pt_PT.properties +10 -2
  125. package/src/sap/fe/core/messagebundle_ro.properties +10 -2
  126. package/src/sap/fe/core/messagebundle_ru.properties +10 -2
  127. package/src/sap/fe/core/messagebundle_sh.properties +10 -2
  128. package/src/sap/fe/core/messagebundle_sk.properties +10 -2
  129. package/src/sap/fe/core/messagebundle_sl.properties +10 -2
  130. package/src/sap/fe/core/messagebundle_sr.properties +10 -2
  131. package/src/sap/fe/core/messagebundle_sv.properties +10 -2
  132. package/src/sap/fe/core/messagebundle_th.properties +12 -4
  133. package/src/sap/fe/core/messagebundle_tr.properties +12 -4
  134. package/src/sap/fe/core/messagebundle_uk.properties +10 -2
  135. package/src/sap/fe/core/messagebundle_vi.properties +11 -3
  136. package/src/sap/fe/core/messagebundle_zh_CN.properties +10 -2
  137. package/src/sap/fe/core/messagebundle_zh_TW.properties +10 -2
  138. package/src/sap/fe/core/operationsHelper.js +4 -4
  139. package/src/sap/fe/core/operationsHelper.ts +4 -4
  140. package/src/sap/fe/core/rootView/Fcl.controller.js +2 -2
  141. package/src/sap/fe/core/rootView/Fcl.controller.ts +4 -1
  142. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +5 -5
  143. package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +4 -3
  144. package/src/sap/fe/core/services/NavigationServiceFactory.js +1 -28
  145. package/src/sap/fe/core/services/NavigationServiceFactory.ts +3 -35
  146. package/src/sap/fe/core/services/RoutingServiceFactory.js +2 -4
  147. package/src/sap/fe/core/services/RoutingServiceFactory.ts +1 -3
  148. package/src/sap/fe/core/services/ShellServicesFactory.js +2 -13
  149. package/src/sap/fe/core/services/ShellServicesFactory.ts +1 -17
  150. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +5 -3
  151. package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +3 -1
  152. package/src/sap/fe/core/services/collaborativeDraftServiceFactory.js +3 -4
  153. package/src/sap/fe/core/services/collaborativeDraftServiceFactory.ts +2 -2
  154. package/src/sap/fe/core/templating/DataFieldFormatters.js +13 -6
  155. package/src/sap/fe/core/templating/DataFieldFormatters.ts +13 -6
  156. package/src/sap/fe/core/templating/UIFormatters.js +3 -3
  157. package/src/sap/fe/core/templating/UIFormatters.ts +4 -3
  158. package/src/sap/fe/core/buildingBlocks/BuildingBlockBase.js +0 -326
@@ -18,6 +18,8 @@ sap.ui.define(["sap/fe/core/templating/EntityTypeHelper", "sap/m/Button", "sap/m
18
18
  this.entityType = props.entityType;
19
19
  this.notApplicableContexts = props.notApplicableContexts;
20
20
  this._shouldContinue = false;
21
+ this.actionName = props.actionName;
22
+ this.entitySetName = props.entitySet;
21
23
  this._dialog = this.createDialog();
22
24
  this._processingPromise = new Promise(resolve => {
23
25
  this._fnResolve = resolve;
@@ -42,11 +44,13 @@ sap.ui.define(["sap/fe/core/templating/EntityTypeHelper", "sap/m/Button", "sap/m
42
44
  return this._dialog;
43
45
  };
44
46
  _proto.createDialog = function createDialog() {
45
- var _this$entityType$anno, _this$entityType$anno2;
47
+ var _boundActionName, _boundActionName2, _boundActionName3, _this$entityType$anno, _this$entityType$anno2;
48
+ let boundActionName = this.actionName;
49
+ boundActionName = (_boundActionName = boundActionName) !== null && _boundActionName !== void 0 && _boundActionName.includes(".") ? (_boundActionName2 = boundActionName) === null || _boundActionName2 === void 0 ? void 0 : _boundActionName2.split(".")[((_boundActionName3 = boundActionName) === null || _boundActionName3 === void 0 ? void 0 : _boundActionName3.split(".").length) - 1] : boundActionName;
50
+ const suffixResourceKey = boundActionName && this.entitySetName ? `${this.entitySetName}|${boundActionName}` : "";
46
51
  return _jsx(Dialog, {
47
52
  state: "Warning",
48
53
  showHeader: true,
49
- contentWidth: "20rem",
50
54
  resizable: true,
51
55
  verticalScrolling: true,
52
56
  horizontalScrolling: true,
@@ -55,7 +59,7 @@ sap.ui.define(["sap/fe/core/templating/EntityTypeHelper", "sap/m/Button", "sap/m
55
59
  afterClose: this.onAfterClose.bind(this),
56
60
  children: {
57
61
  beginButton: _jsx(Button, {
58
- text: this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_CONTINUE_ANYWAY"),
62
+ text: this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_CONTINUE_ANYWAY", undefined, suffixResourceKey),
59
63
  press: this.onContinue.bind(this),
60
64
  type: "Emphasized"
61
65
  }),
@@ -66,7 +70,7 @@ sap.ui.define(["sap/fe/core/templating/EntityTypeHelper", "sap/m/Button", "sap/m
66
70
  content: _jsxs(_Fragment, {
67
71
  children: [_jsx(VBox, {
68
72
  children: _jsx(Text, {
69
- text: this.notApplicableContexts.length === 1 ? this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_BOUND_ACTION") : this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_BOUND_ACTION_PLURAL", [this.notApplicableContexts.length]),
73
+ text: this.notApplicableContexts.length === 1 ? this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_BOUND_ACTION", undefined, suffixResourceKey) : this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_BOUND_ACTION_PLURAL", [this.notApplicableContexts.length], suffixResourceKey),
70
74
  class: "sapUiTinyMarginBegin sapUiTinyMarginTopBottom"
71
75
  })
72
76
  }), _jsx(List, {
@@ -99,4 +103,4 @@ sap.ui.define(["sap/fe/core/templating/EntityTypeHelper", "sap/m/Button", "sap/m
99
103
  _exports = NotApplicableContextDialog;
100
104
  return _exports;
101
105
  }, false);
102
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJOb3RBcHBsaWNhYmxlQ29udGV4dERpYWxvZyIsInByb3BzIiwidGl0bGUiLCJyZXNvdXJjZU1vZGVsIiwiZW50aXR5VHlwZSIsIm5vdEFwcGxpY2FibGVDb250ZXh0cyIsIl9zaG91bGRDb250aW51ZSIsIl9kaWFsb2ciLCJjcmVhdGVEaWFsb2ciLCJfcHJvY2Vzc2luZ1Byb21pc2UiLCJQcm9taXNlIiwicmVzb2x2ZSIsIl9mblJlc29sdmUiLCJfZXhwb3J0cyIsIl9wcm90byIsInByb3RvdHlwZSIsIm9uQWZ0ZXJDbG9zZSIsImRlc3Ryb3kiLCJvbkNvbnRpbnVlIiwiY2xvc2UiLCJvcGVuIiwib3duZXIiLCJhZGREZXBlbmRlbnQiLCJnZXREaWFsb2ciLCJfdGhpcyRlbnRpdHlUeXBlJGFubm8iLCJfdGhpcyRlbnRpdHlUeXBlJGFubm8yIiwiX2pzeCIsIkRpYWxvZyIsInN0YXRlIiwic2hvd0hlYWRlciIsImNvbnRlbnRXaWR0aCIsInJlc2l6YWJsZSIsInZlcnRpY2FsU2Nyb2xsaW5nIiwiaG9yaXpvbnRhbFNjcm9sbGluZyIsImNsYXNzIiwiYWZ0ZXJDbG9zZSIsImJpbmQiLCJjaGlsZHJlbiIsImJlZ2luQnV0dG9uIiwiQnV0dG9uIiwidGV4dCIsImdldFRleHQiLCJwcmVzcyIsInR5cGUiLCJlbmRCdXR0b24iLCJjb250ZW50IiwiX2pzeHMiLCJfRnJhZ21lbnQiLCJWQm94IiwiVGV4dCIsImxlbmd0aCIsIkxpc3QiLCJoZWFkZXJUZXh0IiwiYW5ub3RhdGlvbnMiLCJVSSIsIkhlYWRlckluZm8iLCJUeXBlTmFtZVBsdXJhbCIsInNob3dTZXBhcmF0b3JzIiwiaXRlbXMiLCJtYXAiLCJub3RBcHBsaWNhYmxlQ29udGV4dCIsInRpdGxlRXhwcmVzc2lvbiIsImdldFRpdGxlRXhwcmVzc2lvbiIsImN1c3RvbUxpc3RJdGVtIiwiQ3VzdG9tTGlzdEl0ZW0iLCJIQm94IiwianVzdGlmeUNvbnRlbnQiLCJzZXRCaW5kaW5nQ29udGV4dCJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiTm90QXBwbGljYWJsZUNvbnRleHREaWFsb2cudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRW50aXR5VHlwZSB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlc1wiO1xuaW1wb3J0IHR5cGUgUmVzb3VyY2VNb2RlbCBmcm9tIFwic2FwL2ZlL2NvcmUvUmVzb3VyY2VNb2RlbFwiO1xuaW1wb3J0IHsgZ2V0VGl0bGVFeHByZXNzaW9uIH0gZnJvbSBcInNhcC9mZS9jb3JlL3RlbXBsYXRpbmcvRW50aXR5VHlwZUhlbHBlclwiO1xuaW1wb3J0IEJ1dHRvbiBmcm9tIFwic2FwL20vQnV0dG9uXCI7XG5pbXBvcnQgQ3VzdG9tTGlzdEl0ZW0gZnJvbSBcInNhcC9tL0N1c3RvbUxpc3RJdGVtXCI7XG5pbXBvcnQgRGlhbG9nIGZyb20gXCJzYXAvbS9EaWFsb2dcIjtcbmltcG9ydCBIQm94IGZyb20gXCJzYXAvbS9IQm94XCI7XG5pbXBvcnQgTGlzdCBmcm9tIFwic2FwL20vTGlzdFwiO1xuaW1wb3J0IFRleHQgZnJvbSBcInNhcC9tL1RleHRcIjtcbmltcG9ydCBWQm94IGZyb20gXCJzYXAvbS9WQm94XCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgdHlwZSBDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvQ29udGV4dFwiO1xuXG4vKipcbiAqIERpc3BsYXkgYSBkaWFsb2cgdG8gaW5mb3JtIHRoZSB1c2VyIHRoYXQgc29tZSBjb250ZXh0cyBhcmUgbm90IGFwcGxpY2FibGUgZm9yIHRoZSBhY3Rpb24uXG4gKiBUaGlzIGlzIG5vdCB0aGUgdGFyZ2V0IFV4IGJ1dCBqdXN0IGtlZXBpbmcgdGhlIGN1cnJlbnQgYmVoYXZpb3JcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTm90QXBwbGljYWJsZUNvbnRleHREaWFsb2cge1xuXHRwcml2YXRlIHJlYWRvbmx5IHRpdGxlOiBzdHJpbmc7XG5cblx0cHJpdmF0ZSByZXNvdXJjZU1vZGVsOiBSZXNvdXJjZU1vZGVsO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgZW50aXR5VHlwZTogRW50aXR5VHlwZTtcblxuXHRwcml2YXRlIHJlYWRvbmx5IF9kaWFsb2c6IERpYWxvZztcblxuXHRwcml2YXRlIHJlYWRvbmx5IF9wcm9jZXNzaW5nUHJvbWlzZTogUHJvbWlzZTxib29sZWFuPjtcblxuXHRwcml2YXRlIF9mblJlc29sdmUhOiAocmVzb2x2ZVZhbHVlOiBib29sZWFuKSA9PiB2b2lkO1xuXG5cdHByaXZhdGUgX3Nob3VsZENvbnRpbnVlOiBib29sZWFuO1xuXG5cdHByaXZhdGUgbm90QXBwbGljYWJsZUNvbnRleHRzOiBDb250ZXh0W107XG5cblx0Y29uc3RydWN0b3IocHJvcHM6IHsgdGl0bGU6IHN0cmluZzsgZW50aXR5VHlwZTogRW50aXR5VHlwZTsgcmVzb3VyY2VNb2RlbDogUmVzb3VyY2VNb2RlbDsgbm90QXBwbGljYWJsZUNvbnRleHRzOiBDb250ZXh0W10gfSkge1xuXHRcdHRoaXMudGl0bGUgPSBwcm9wcy50aXRsZTtcblx0XHR0aGlzLnJlc291cmNlTW9kZWwgPSBwcm9wcy5yZXNvdXJjZU1vZGVsO1xuXHRcdHRoaXMuZW50aXR5VHlwZSA9IHByb3BzLmVudGl0eVR5cGU7XG5cdFx0dGhpcy5ub3RBcHBsaWNhYmxlQ29udGV4dHMgPSBwcm9wcy5ub3RBcHBsaWNhYmxlQ29udGV4dHM7XG5cdFx0dGhpcy5fc2hvdWxkQ29udGludWUgPSBmYWxzZTtcblx0XHR0aGlzLl9kaWFsb2cgPSB0aGlzLmNyZWF0ZURpYWxvZygpO1xuXHRcdHRoaXMuX3Byb2Nlc3NpbmdQcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcblx0XHRcdHRoaXMuX2ZuUmVzb2x2ZSA9IHJlc29sdmU7XG5cdFx0fSk7XG5cdH1cblxuXHRwcml2YXRlIG9uQWZ0ZXJDbG9zZSgpOiB2b2lkIHtcblx0XHR0aGlzLl9mblJlc29sdmUodGhpcy5fc2hvdWxkQ29udGludWUpO1xuXHRcdHRoaXMuX2RpYWxvZy5kZXN0cm95KCk7XG5cdH1cblxuXHRwcml2YXRlIG9uQ29udGludWUoKTogdm9pZCB7XG5cdFx0dGhpcy5fc2hvdWxkQ29udGludWUgPSB0cnVlO1xuXHRcdHRoaXMuX2RpYWxvZy5jbG9zZSgpO1xuXHR9XG5cblx0YXN5bmMgb3Blbihvd25lcjogQ29udHJvbCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRcdG93bmVyLmFkZERlcGVuZGVudCh0aGlzLl9kaWFsb2cpO1xuXHRcdHRoaXMuX2RpYWxvZy5vcGVuKCk7XG5cdFx0cmV0dXJuIHRoaXMuX3Byb2Nlc3NpbmdQcm9taXNlO1xuXHR9XG5cblx0Z2V0RGlhbG9nKCk6IERpYWxvZyB7XG5cdFx0cmV0dXJuIHRoaXMuX2RpYWxvZztcblx0fVxuXG5cdGNyZWF0ZURpYWxvZygpOiBEaWFsb2cge1xuXHRcdHJldHVybiAoXG5cdFx0XHQ8RGlhbG9nXG5cdFx0XHRcdHN0YXRlPXtcIldhcm5pbmdcIn1cblx0XHRcdFx0c2hvd0hlYWRlcj17dHJ1ZX1cblx0XHRcdFx0Y29udGVudFdpZHRoPXtcIjIwcmVtXCJ9XG5cdFx0XHRcdHJlc2l6YWJsZT17dHJ1ZX1cblx0XHRcdFx0dmVydGljYWxTY3JvbGxpbmc9e3RydWV9XG5cdFx0XHRcdGhvcml6b250YWxTY3JvbGxpbmc9e3RydWV9XG5cdFx0XHRcdGNsYXNzPXtcInNhcFVpQ29udGVudFBhZGRpbmdcIn1cblx0XHRcdFx0dGl0bGU9e3RoaXMudGl0bGV9XG5cdFx0XHRcdGFmdGVyQ2xvc2U9e3RoaXMub25BZnRlckNsb3NlLmJpbmQodGhpcyl9XG5cdFx0XHQ+XG5cdFx0XHRcdHt7XG5cdFx0XHRcdFx0YmVnaW5CdXR0b246IChcblx0XHRcdFx0XHRcdDxCdXR0b25cblx0XHRcdFx0XHRcdFx0dGV4dD17dGhpcy5yZXNvdXJjZU1vZGVsLmdldFRleHQoXCJDX0FDVElPTl9QQVJUSUFMX0ZSQUdNRU5UX1NBUEZFX0NPTlRJTlVFX0FOWVdBWVwiKX1cblx0XHRcdFx0XHRcdFx0cHJlc3M9e3RoaXMub25Db250aW51ZS5iaW5kKHRoaXMpfVxuXHRcdFx0XHRcdFx0XHR0eXBlPVwiRW1waGFzaXplZFwiXG5cdFx0XHRcdFx0XHQvPlxuXHRcdFx0XHRcdCksXG5cdFx0XHRcdFx0ZW5kQnV0dG9uOiAoXG5cdFx0XHRcdFx0XHQ8QnV0dG9uIHRleHQ9e3RoaXMucmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiQ19DT01NT05fU0FQRkVfQ0xPU0VcIil9IHByZXNzPXsoKTogRGlhbG9nID0+IHRoaXMuX2RpYWxvZy5jbG9zZSgpfSAvPlxuXHRcdFx0XHRcdCksXG5cdFx0XHRcdFx0Y29udGVudDogKFxuXHRcdFx0XHRcdFx0PD5cblx0XHRcdFx0XHRcdFx0PFZCb3g+XG5cdFx0XHRcdFx0XHRcdFx0PFRleHRcblx0XHRcdFx0XHRcdFx0XHRcdHRleHQ9e1xuXHRcdFx0XHRcdFx0XHRcdFx0XHR0aGlzLm5vdEFwcGxpY2FibGVDb250ZXh0cy5sZW5ndGggPT09IDFcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ/IHRoaXMucmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiQ19BQ1RJT05fUEFSVElBTF9GUkFHTUVOVF9TQVBGRV9CT1VORF9BQ1RJT05cIilcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ6IHRoaXMucmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiQ19BQ1RJT05fUEFSVElBTF9GUkFHTUVOVF9TQVBGRV9CT1VORF9BQ1RJT05fUExVUkFMXCIsIFtcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5ub3RBcHBsaWNhYmxlQ29udGV4dHMubGVuZ3RoXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0ICBdKVxuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJzYXBVaVRpbnlNYXJnaW5CZWdpbiBzYXBVaVRpbnlNYXJnaW5Ub3BCb3R0b21cIlxuXHRcdFx0XHRcdFx0XHRcdC8+XG5cdFx0XHRcdFx0XHRcdDwvVkJveD5cblx0XHRcdFx0XHRcdFx0PExpc3QgaGVhZGVyVGV4dD17dGhpcy5lbnRpdHlUeXBlLmFubm90YXRpb25zLlVJPy5IZWFkZXJJbmZvPy5UeXBlTmFtZVBsdXJhbH0gc2hvd1NlcGFyYXRvcnM9XCJOb25lXCI+XG5cdFx0XHRcdFx0XHRcdFx0e3tcblx0XHRcdFx0XHRcdFx0XHRcdGl0ZW1zOiB0aGlzLm5vdEFwcGxpY2FibGVDb250ZXh0cy5tYXAoKG5vdEFwcGxpY2FibGVDb250ZXh0KSA9PiB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdC8vIEVpdGhlciBzaG93IHRoZSBIZWFkZXJJbmZvTmFtZSBvciB0aGUgU2VtYW50aWMgS2V5IHByb3BlcnR5XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGNvbnN0IHRpdGxlRXhwcmVzc2lvbiA9IGdldFRpdGxlRXhwcmVzc2lvbih0aGlzLmVudGl0eVR5cGUpO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRjb25zdCBjdXN0b21MaXN0SXRlbSA9IChcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8Q3VzdG9tTGlzdEl0ZW0+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8SEJveCBqdXN0aWZ5Q29udGVudD17XCJTdGFydFwifT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PFRleHQgdGV4dD17dGl0bGVFeHByZXNzaW9ufSBjbGFzcz1cInNhcFVpVGlueU1hcmdpbkJlZ2luIHNhcFVpVGlueU1hcmdpblRvcEJvdHRvbVwiIC8+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L0hCb3g+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PC9DdXN0b21MaXN0SXRlbT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0KTtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y3VzdG9tTGlzdEl0ZW0uc2V0QmluZGluZ0NvbnRleHQobm90QXBwbGljYWJsZUNvbnRleHQpO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRyZXR1cm4gY3VzdG9tTGlzdEl0ZW07XG5cdFx0XHRcdFx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdFx0XHRcdH19XG5cdFx0XHRcdFx0XHRcdDwvTGlzdD5cblx0XHRcdFx0XHRcdDwvPlxuXHRcdFx0XHRcdClcblx0XHRcdFx0fX1cblx0XHRcdDwvRGlhbG9nPlxuXHRcdCkgYXMgRGlhbG9nO1xuXHR9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztFQWFBO0FBQ0E7QUFDQTtBQUNBO0VBSEEsSUFJcUJBLDBCQUEwQjtJQWlCOUMsU0FBQUEsMkJBQVlDLEtBQWdILEVBQUU7TUFDN0gsSUFBSSxDQUFDQyxLQUFLLEdBQUdELEtBQUssQ0FBQ0MsS0FBSztNQUN4QixJQUFJLENBQUNDLGFBQWEsR0FBR0YsS0FBSyxDQUFDRSxhQUFhO01BQ3hDLElBQUksQ0FBQ0MsVUFBVSxHQUFHSCxLQUFLLENBQUNHLFVBQVU7TUFDbEMsSUFBSSxDQUFDQyxxQkFBcUIsR0FBR0osS0FBSyxDQUFDSSxxQkFBcUI7TUFDeEQsSUFBSSxDQUFDQyxlQUFlLEdBQUcsS0FBSztNQUM1QixJQUFJLENBQUNDLE9BQU8sR0FBRyxJQUFJLENBQUNDLFlBQVksQ0FBQyxDQUFDO01BQ2xDLElBQUksQ0FBQ0Msa0JBQWtCLEdBQUcsSUFBSUMsT0FBTyxDQUFFQyxPQUFPLElBQUs7UUFDbEQsSUFBSSxDQUFDQyxVQUFVLEdBQUdELE9BQU87TUFDMUIsQ0FBQyxDQUFDO0lBQ0g7SUFBQ0UsUUFBQSxHQUFBYiwwQkFBQTtJQUFBLElBQUFjLE1BQUEsR0FBQWQsMEJBQUEsQ0FBQWUsU0FBQTtJQUFBRCxNQUFBLENBRU9FLFlBQVksR0FBcEIsU0FBQUEsYUFBQSxFQUE2QjtNQUM1QixJQUFJLENBQUNKLFVBQVUsQ0FBQyxJQUFJLENBQUNOLGVBQWUsQ0FBQztNQUNyQyxJQUFJLENBQUNDLE9BQU8sQ0FBQ1UsT0FBTyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUFBSCxNQUFBLENBRU9JLFVBQVUsR0FBbEIsU0FBQUEsV0FBQSxFQUEyQjtNQUMxQixJQUFJLENBQUNaLGVBQWUsR0FBRyxJQUFJO01BQzNCLElBQUksQ0FBQ0MsT0FBTyxDQUFDWSxL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
106
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJOb3RBcHBsaWNhYmxlQ29udGV4dERpYWxvZyIsInByb3BzIiwidGl0bGUiLCJyZXNvdXJjZU1vZGVsIiwiZW50aXR5VHlwZSIsIm5vdEFwcGxpY2FibGVDb250ZXh0cyIsIl9zaG91bGRDb250aW51ZSIsImFjdGlvbk5hbWUiLCJlbnRpdHlTZXROYW1lIiwiZW50aXR5U2V0IiwiX2RpYWxvZyIsImNyZWF0ZURpYWxvZyIsIl9wcm9jZXNzaW5nUHJvbWlzZSIsIlByb21pc2UiLCJyZXNvbHZlIiwiX2ZuUmVzb2x2ZSIsIl9leHBvcnRzIiwiX3Byb3RvIiwicHJvdG90eXBlIiwib25BZnRlckNsb3NlIiwiZGVzdHJveSIsIm9uQ29udGludWUiLCJjbG9zZSIsIm9wZW4iLCJvd25lciIsImFkZERlcGVuZGVudCIsImdldERpYWxvZyIsIl9ib3VuZEFjdGlvbk5hbWUiLCJfYm91bmRBY3Rpb25OYW1lMiIsIl9ib3VuZEFjdGlvbk5hbWUzIiwiX3RoaXMkZW50aXR5VHlwZSRhbm5vIiwiX3RoaXMkZW50aXR5VHlwZSRhbm5vMiIsImJvdW5kQWN0aW9uTmFtZSIsImluY2x1ZGVzIiwic3BsaXQiLCJsZW5ndGgiLCJzdWZmaXhSZXNvdXJjZUtleSIsIl9qc3giLCJEaWFsb2ciLCJzdGF0ZSIsInNob3dIZWFkZXIiLCJyZXNpemFibGUiLCJ2ZXJ0aWNhbFNjcm9sbGluZyIsImhvcml6b250YWxTY3JvbGxpbmciLCJjbGFzcyIsImFmdGVyQ2xvc2UiLCJiaW5kIiwiY2hpbGRyZW4iLCJiZWdpbkJ1dHRvbiIsIkJ1dHRvbiIsInRleHQiLCJnZXRUZXh0IiwidW5kZWZpbmVkIiwicHJlc3MiLCJ0eXBlIiwiZW5kQnV0dG9uIiwiY29udGVudCIsIl9qc3hzIiwiX0ZyYWdtZW50IiwiVkJveCIsIlRleHQiLCJMaXN0IiwiaGVhZGVyVGV4dCIsImFubm90YXRpb25zIiwiVUkiLCJIZWFkZXJJbmZvIiwiVHlwZU5hbWVQbHVyYWwiLCJzaG93U2VwYXJhdG9ycyIsIml0ZW1zIiwibWFwIiwibm90QXBwbGljYWJsZUNvbnRleHQiLCJ0aXRsZUV4cHJlc3Npb24iLCJnZXRUaXRsZUV4cHJlc3Npb24iLCJjdXN0b21MaXN0SXRlbSIsIkN1c3RvbUxpc3RJdGVtIiwiSEJveCIsImp1c3RpZnlDb250ZW50Iiwic2V0QmluZGluZ0NvbnRleHQiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIk5vdEFwcGxpY2FibGVDb250ZXh0RGlhbG9nLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVudGl0eVR5cGUgfSBmcm9tIFwiQHNhcC11eC92b2NhYnVsYXJpZXMtdHlwZXNcIjtcbmltcG9ydCB0eXBlIFJlc291cmNlTW9kZWwgZnJvbSBcInNhcC9mZS9jb3JlL1Jlc291cmNlTW9kZWxcIjtcbmltcG9ydCB7IGdldFRpdGxlRXhwcmVzc2lvbiB9IGZyb20gXCJzYXAvZmUvY29yZS90ZW1wbGF0aW5nL0VudGl0eVR5cGVIZWxwZXJcIjtcbmltcG9ydCBCdXR0b24gZnJvbSBcInNhcC9tL0J1dHRvblwiO1xuaW1wb3J0IEN1c3RvbUxpc3RJdGVtIGZyb20gXCJzYXAvbS9DdXN0b21MaXN0SXRlbVwiO1xuaW1wb3J0IERpYWxvZyBmcm9tIFwic2FwL20vRGlhbG9nXCI7XG5pbXBvcnQgSEJveCBmcm9tIFwic2FwL20vSEJveFwiO1xuaW1wb3J0IExpc3QgZnJvbSBcInNhcC9tL0xpc3RcIjtcbmltcG9ydCBUZXh0IGZyb20gXCJzYXAvbS9UZXh0XCI7XG5pbXBvcnQgVkJveCBmcm9tIFwic2FwL20vVkJveFwiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHR5cGUgQ29udGV4dCBmcm9tIFwic2FwL3VpL21vZGVsL0NvbnRleHRcIjtcblxuLyoqXG4gKiBEaXNwbGF5IGEgZGlhbG9nIHRvIGluZm9ybSB0aGUgdXNlciB0aGF0IHNvbWUgY29udGV4dHMgYXJlIG5vdCBhcHBsaWNhYmxlIGZvciB0aGUgYWN0aW9uLlxuICogVGhpcyBpcyBub3QgdGhlIHRhcmdldCBVeCBidXQganVzdCBrZWVwaW5nIHRoZSBjdXJyZW50IGJlaGF2aW9yXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5vdEFwcGxpY2FibGVDb250ZXh0RGlhbG9nIHtcblx0cHJpdmF0ZSByZWFkb25seSB0aXRsZTogc3RyaW5nO1xuXG5cdHByaXZhdGUgcmVzb3VyY2VNb2RlbDogUmVzb3VyY2VNb2RlbDtcblxuXHRwcml2YXRlIHJlYWRvbmx5IGVudGl0eVR5cGU6IEVudGl0eVR5cGU7XG5cblx0cHJpdmF0ZSByZWFkb25seSBfZGlhbG9nOiBEaWFsb2c7XG5cblx0cHJpdmF0ZSByZWFkb25seSBfcHJvY2Vzc2luZ1Byb21pc2U6IFByb21pc2U8Ym9vbGVhbj47XG5cblx0cHJpdmF0ZSBfZm5SZXNvbHZlITogKHJlc29sdmVWYWx1ZTogYm9vbGVhbikgPT4gdm9pZDtcblxuXHRwcml2YXRlIF9zaG91bGRDb250aW51ZTogYm9vbGVhbjtcblxuXHRwcml2YXRlIHJlYWRvbmx5IGFjdGlvbk5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuXHRwcml2YXRlIHJlYWRvbmx5IGVudGl0eVNldE5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuXHRwcml2YXRlIG5vdEFwcGxpY2FibGVDb250ZXh0czogQ29udGV4dFtdO1xuXG5cdGNvbnN0cnVjdG9yKHByb3BzOiB7IHRpdGxlOiBzdHJpbmc7IGVudGl0eVR5cGU6IEVudGl0eVR5cGU7IHJlc291cmNlTW9kZWw6IFJlc291cmNlTW9kZWw7IG5vdEFwcGxpY2FibGVDb250ZXh0czogQ29udGV4dFtdOyBlbnRpdHlTZXQ/OiBzdHJpbmc7IGFjdGlvbk5hbWU/OiBzdHJpbmcgfSkge1xuXHRcdHRoaXMudGl0bGUgPSBwcm9wcy50aXRsZTtcblx0XHR0aGlzLnJlc291cmNlTW9kZWwgPSBwcm9wcy5yZXNvdXJjZU1vZGVsO1xuXHRcdHRoaXMuZW50aXR5VHlwZSA9IHByb3BzLmVudGl0eVR5cGU7XG5cdFx0dGhpcy5ub3RBcHBsaWNhYmxlQ29udGV4dHMgPSBwcm9wcy5ub3RBcHBsaWNhYmxlQ29udGV4dHM7XG5cdFx0dGhpcy5fc2hvdWxkQ29udGludWUgPSBmYWxzZTtcblx0XHR0aGlzLmFjdGlvbk5hbWUgPSBwcm9wcy5hY3Rpb25OYW1lO1xuXHRcdHRoaXMuZW50aXR5U2V0TmFtZSA9IHByb3BzLmVudGl0eVNldDtcblx0XHR0aGlzLl9kaWFsb2cgPSB0aGlzLmNyZWF0ZURpYWxvZygpO1xuXHRcdHRoaXMuX3Byb2Nlc3NpbmdQcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcblx0XHRcdHRoaXMuX2ZuUmVzb2x2ZSA9IHJlc29sdmU7XG5cdFx0fSk7XG5cdH1cblxuXHRwcml2YXRlIG9uQWZ0ZXJDbG9zZSgpOiB2b2lkIHtcblx0XHR0aGlzLl9mblJlc29sdmUodGhpcy5fc2hvdWxkQ29udGludWUpO1xuXHRcdHRoaXMuX2RpYWxvZy5kZXN0cm95KCk7XG5cdH1cblxuXHRwcml2YXRlIG9uQ29udGludWUoKTogdm9pZCB7XG5cdFx0dGhpcy5fc2hvdWxkQ29udGludWUgPSB0cnVlO1xuXHRcdHRoaXMuX2RpYWxvZy5jbG9zZSgpO1xuXHR9XG5cblx0YXN5bmMgb3Blbihvd25lcjogQ29udHJvbCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRcdG93bmVyLmFkZERlcGVuZGVudCh0aGlzLl9kaWFsb2cpO1xuXHRcdHRoaXMuX2RpYWxvZy5vcGVuKCk7XG5cdFx0cmV0dXJuIHRoaXMuX3Byb2Nlc3NpbmdQcm9taXNlO1xuXHR9XG5cblx0Z2V0RGlhbG9nKCk6IERpYWxvZyB7XG5cdFx0cmV0dXJuIHRoaXMuX2RpYWxvZztcblx0fVxuXG5cdGNyZWF0ZURpYWxvZygpOiBEaWFsb2cge1xuXHRcdGxldCBib3VuZEFjdGlvbk5hbWUgPSB0aGlzLmFjdGlvbk5hbWU7XG5cdFx0Ym91bmRBY3Rpb25OYW1lID0gYm91bmRBY3Rpb25OYW1lPy5pbmNsdWRlcyhcIi5cIilcblx0XHRcdD8gYm91bmRBY3Rpb25OYW1lPy5zcGxpdChcIi5cIilbYm91bmRBY3Rpb25OYW1lPy5zcGxpdChcIi5cIikubGVuZ3RoIC0gMV1cblx0XHRcdDogYm91bmRBY3Rpb25OYW1lO1xuXHRcdGNvbnN0IHN1ZmZpeFJlc291cmNlS2V5ID0gYm91bmRBY3Rpb25OYW1lICYmIHRoaXMuZW50aXR5U2V0TmFtZSA/IGAke3RoaXMuZW50aXR5U2V0TmFtZX18JHtib3VuZEFjdGlvbk5hbWV9YCA6IFwiXCI7XG5cdFx0cmV0dXJuIChcblx0XHRcdDxEaWFsb2dcblx0XHRcdFx0c3RhdGU9e1wiV2FybmluZ1wifVxuXHRcdFx0XHRzaG93SGVhZGVyPXt0cnVlfVxuXHRcdFx0XHRyZXNpemFibGU9e3RydWV9XG5cdFx0XHRcdHZlcnRpY2FsU2Nyb2xsaW5nPXt0cnVlfVxuXHRcdFx0XHRob3Jpem9udGFsU2Nyb2xsaW5nPXt0cnVlfVxuXHRcdFx0XHRjbGFzcz17XCJzYXBVaUNvbnRlbnRQYWRkaW5nXCJ9XG5cdFx0XHRcdHRpdGxlPXt0aGlzLnRpdGxlfVxuXHRcdFx0XHRhZnRlckNsb3NlPXt0aGlzLm9uQWZ0ZXJDbG9zZS5iaW5kKHRoaXMpfVxuXHRcdFx0PlxuXHRcdFx0XHR7e1xuXHRcdFx0XHRcdGJlZ2luQnV0dG9uOiAoXG5cdFx0XHRcdFx0XHQ8QnV0dG9uXG5cdFx0XHRcdFx0XHRcdHRleHQ9e3RoaXMucmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiQ19BQ1RJT05fUEFSVElBTF9GUkFHTUVOVF9TQVBGRV9DT05USU5VRV9BTllXQVlcIiwgdW5kZWZpbmVkLCBzdWZmaXhSZXNvdXJjZUtleSl9XG5cdFx0XHRcdFx0XHRcdHByZXNzPXt0aGlzLm9uQ29udGludWUuYmluZCh0aGlzKX1cblx0XHRcdFx0XHRcdFx0dHlwZT1cIkVtcGhhc2l6ZWRcIlxuXHRcdFx0XHRcdFx0Lz5cblx0XHRcdFx0XHQpLFxuXHRcdFx0XHRcdGVuZEJ1dHRvbjogKFxuXHRcdFx0XHRcdFx0PEJ1dHRvbiB0ZXh0PXt0aGlzLnJlc291cmNlTW9kZWwuZ2V0VGV4dChcIkNfQ09NTU9OX1NBUEZFX0NMT1NFXCIpfSBwcmVzcz17KCk6IERpYWxvZyA9PiB0aGlzLl9kaWFsb2cuY2xvc2UoKX0gLz5cblx0XHRcdFx0XHQpLFxuXHRcdFx0XHRcdGNvbnRlbnQ6IChcblxuXHRcdFx0XHRcdFx0PD5cblx0XHRcdFx0XHRcdFx0PFZCb3g+XG5cdFx0XHRcdFx0XHRcdFx0PFRleHRcblx0XHRcdFx0XHRcdFx0XHRcdHRleHQ9e1xuXHRcdFx0XHRcdFx0XHRcdFx0XHR0aGlzLm5vdEFwcGxpY2FibGVDb250ZXh0cy5sZW5ndGggPT09IDFcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ/IHRoaXMucmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiQ19BQ1RJT05fUEFSVElBTF9GUkFHTUVOVF9TQVBGRV9CT1VORF9BQ1RJT05cIiwgdW5kZWZpbmVkLCBzdWZmaXhSZXNvdXJjZUtleSlcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ6IHRoaXMucmVzb3VyY2VNb2RlbC5nZXRUZXh0KFwiQ19BQ1RJT05fUEFSVElBTF9GUkFHTUVOVF9TQVBGRV9CT1VORF9BQ1RJT05fUExVUkFMXCIsIFtcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMubm90QXBwbGljYWJsZUNvbnRleHRzLmxlbmd0aFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdF0sIHN1ZmZpeFJlc291cmNlS2V5KVxuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJzYXBVaVRpbnlNYXJnaW5CZWdpbiBzYXBVaVRpbnlNYXJnaW5Ub3BCb3R0b21cIlxuXHRcdFx0XHRcdFx0XHRcdC8+XG5cdFx0XHRcdFx0XHRcdDwvVkJveD5cblx0XHRcdFx0XHRcdFx0PExpc3QgaGVhZGVyVGV4dD17dGhpcy5lbnRpdHlUeXBlLmFubm90YXRpb25zLlVJPy5IZWFkZXJJbmZvPy5UeXBlTmFtZVBsdXJhbH0gc2hvd1NlcGFyYXRvcnM9XCJOb25lXCI+XG5cdFx0XHRcdFx0XHRcdFx0e3tcblx0XHRcdFx0XHRcdFx0XHRcdGl0ZW1zOiB0aGlzLm5vdEFwcGxpY2FibGVDb250ZXh0cy5tYXAoKG5vdEFwcGxpY2FibGVDb250ZXh0KSA9PiB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdC8vIEVpdGhlciBzaG93IHRoZSBIZWFkZXJJbmZvTmFtZSBvciB0aGUgU2VtYW50aWMgS2V5IHByb3BlcnR5XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGNvbnN0IHRpdGxlRXhwcmVzc2lvbiA9IGdldFRpdGxlRXhwcmVzc2lvbih0aGlzLmVudGl0eVR5cGUpO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRjb25zdCBjdXN0b21MaXN0SXRlbSA9IChcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8Q3VzdG9tTGlzdEl0ZW0+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8SEJveCBqdXN0aWZ5Q29udGVudD17XCJTdGFydFwifT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PFRleHQgdGV4dD17dGl0bGVFeHByZXNzaW9ufSBjbGFzcz1cInNhcFVpVGlueU1hcmdpbkJlZ2luIHNhcFVpVGlueU1hcmdpblRvcEJvdHRvbVwiIC8+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L0hCb3g+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PC9DdXN0b21MaXN0SXRlbT5cblx0XHRcdFx0XHRcdFx0XHRcdFx0KTtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y3VzdG9tTGlzdEl0ZW0uc2V0QmluZGluZ0NvbnRleHQobm90QXBwbGljYWJsZUNvbnRleHQpO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRyZXR1cm4gY3VzdG9tTGlzdEl0ZW07XG5cdFx0XHRcdFx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdFx0XHRcdH19XG5cdFx0XHRcdFx0XHRcdDwvTGlzdD5cblx0XHRcdFx0XHRcdDwvPlxuXHRcdFx0XHRcdClcblx0XHRcdFx0fX1cblx0XHRcdDwvRGlhbG9nPlxuXHRcdCkgYXMgRGlhbG9nO1xuXHR9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7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
@@ -30,14 +30,20 @@ export default class NotApplicableContextDialog {
30
30
 
31
31
  private _shouldContinue: boolean;
32
32
 
33
+ private readonly actionName: string | undefined;
34
+
35
+ private readonly entitySetName: string | undefined;
36
+
33
37
  private notApplicableContexts: Context[];
34
38
 
35
- constructor(props: { title: string; entityType: EntityType; resourceModel: ResourceModel; notApplicableContexts: Context[] }) {
39
+ constructor(props: { title: string; entityType: EntityType; resourceModel: ResourceModel; notApplicableContexts: Context[]; entitySet?: string; actionName?: string }) {
36
40
  this.title = props.title;
37
41
  this.resourceModel = props.resourceModel;
38
42
  this.entityType = props.entityType;
39
43
  this.notApplicableContexts = props.notApplicableContexts;
40
44
  this._shouldContinue = false;
45
+ this.actionName = props.actionName;
46
+ this.entitySetName = props.entitySet;
41
47
  this._dialog = this.createDialog();
42
48
  this._processingPromise = new Promise((resolve) => {
43
49
  this._fnResolve = resolve;
@@ -65,11 +71,15 @@ export default class NotApplicableContextDialog {
65
71
  }
66
72
 
67
73
  createDialog(): Dialog {
74
+ let boundActionName = this.actionName;
75
+ boundActionName = boundActionName?.includes(".")
76
+ ? boundActionName?.split(".")[boundActionName?.split(".").length - 1]
77
+ : boundActionName;
78
+ const suffixResourceKey = boundActionName && this.entitySetName ? `${this.entitySetName}|${boundActionName}` : "";
68
79
  return (
69
80
  <Dialog
70
81
  state={"Warning"}
71
82
  showHeader={true}
72
- contentWidth={"20rem"}
73
83
  resizable={true}
74
84
  verticalScrolling={true}
75
85
  horizontalScrolling={true}
@@ -80,7 +90,7 @@ export default class NotApplicableContextDialog {
80
90
  {{
81
91
  beginButton: (
82
92
  <Button
83
- text={this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_CONTINUE_ANYWAY")}
93
+ text={this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_CONTINUE_ANYWAY", undefined, suffixResourceKey)}
84
94
  press={this.onContinue.bind(this)}
85
95
  type="Emphasized"
86
96
  />
@@ -89,15 +99,16 @@ export default class NotApplicableContextDialog {
89
99
  <Button text={this.resourceModel.getText("C_COMMON_SAPFE_CLOSE")} press={(): Dialog => this._dialog.close()} />
90
100
  ),
91
101
  content: (
102
+
92
103
  <>
93
104
  <VBox>
94
105
  <Text
95
106
  text={
96
107
  this.notApplicableContexts.length === 1
97
- ? this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_BOUND_ACTION")
108
+ ? this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_BOUND_ACTION", undefined, suffixResourceKey)
98
109
  : this.resourceModel.getText("C_ACTION_PARTIAL_FRAGMENT_SAPFE_BOUND_ACTION_PLURAL", [
99
- this.notApplicableContexts.length
100
- ])
110
+ this.notApplicableContexts.length
111
+ ], suffixResourceKey)
101
112
  }
102
113
  class="sapUiTinyMarginBegin sapUiTinyMarginTopBottom"
103
114
  />