@sapui5/sap.fe.test 1.111.0 → 1.112.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.
- package/package.json +1 -1
- package/src/sap/fe/test/.library +1 -1
- package/src/sap/fe/test/CollaborationClient.js +4 -4
- package/src/sap/fe/test/CollaborationClient.ts +3 -3
- package/src/sap/fe/test/FeMocks.js +5 -5
- package/src/sap/fe/test/FeMocks.ts +5 -5
- package/src/sap/fe/test/JestTemplatingHelper.js +28 -23
- package/src/sap/fe/test/JestTemplatingHelper.ts +28 -22
- package/src/sap/fe/test/JourneyRunner.js +5 -7
- package/src/sap/fe/test/ListReport.js +4 -6
- package/src/sap/fe/test/ObjectPage.js +2 -2
- package/src/sap/fe/test/Shell.js +2 -2
- package/src/sap/fe/test/Stubs.js +1 -1
- package/src/sap/fe/test/TemplatePage.js +2 -2
- package/src/sap/fe/test/TemplatingTestUtils.js +2 -3
- package/src/sap/fe/test/UI5MockHelper.js +39 -3
- package/src/sap/fe/test/UI5MockHelper.ts +33 -3
- package/src/sap/fe/test/api/ChartActions.js +1 -1
- package/src/sap/fe/test/api/CollaborationAPI.js +14 -19
- package/src/sap/fe/test/api/CollaborationAPI.ts +17 -24
- package/src/sap/fe/test/api/DialogValueHelpAssertions.js +68 -27
- package/src/sap/fe/test/api/FilterBarAssertions.js +3 -3
- package/src/sap/fe/test/builder/MacroFieldBuilder.js +3 -3
- package/src/sap/fe/test/builder/MdcTableBuilder.js +12 -3
- package/src/sap/fe/test/internal/ConsoleErrorChecker.js +4 -2
- package/src/sap/fe/test/internal/ConsoleErrorChecker.ts +5 -1
- package/src/sap/fe/test/internal/FEArrangements.js +9 -5
- package/src/sap/fe/test/library-preload.js +204 -117
- package/src/sap/fe/test/library-preload.js.map +1 -1
- package/src/sap/fe/test/library.js +1 -1
- package/src/sap/fe/test/manifest.json +1 -1
|
@@ -134,25 +134,17 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/controllerextensions/collaboration/A
|
|
|
134
134
|
}
|
|
135
135
|
},
|
|
136
136
|
/**
|
|
137
|
-
* Simulates that the user has deleted
|
|
137
|
+
* Simulates that the user has deleted an object (child of draft root).
|
|
138
|
+
*
|
|
139
|
+
* @param objectPath The path of the object to delete
|
|
138
140
|
*/
|
|
139
|
-
|
|
141
|
+
deleteObject: function (objectPath) {
|
|
140
142
|
if (this._internalModel) {
|
|
141
|
-
const
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
}).
|
|
146
|
-
activeContext = context;
|
|
147
|
-
return context.requestCanonicalPath();
|
|
148
|
-
}).then(() => {
|
|
149
|
-
return draft.deleteDraft(draftContext);
|
|
150
|
-
}).then(() => {
|
|
151
|
-
activeContext.delete();
|
|
152
|
-
broadcastCollaborationMessage(Activity.Delete, this._rootPath, this._internalModel);
|
|
153
|
-
this._internalModel.destroy();
|
|
154
|
-
this._internalModel = undefined;
|
|
155
|
-
}).catch(function (err) {
|
|
143
|
+
const objectContext = this._getObjectContext(objectPath);
|
|
144
|
+
objectContext.requestProperty("IsActiveEntity").then(() => {
|
|
145
|
+
objectContext.delete();
|
|
146
|
+
broadcastCollaborationMessage(Activity.Delete, objectPath, this._internalModel);
|
|
147
|
+
}).catch(err => {
|
|
156
148
|
Log.error(err);
|
|
157
149
|
});
|
|
158
150
|
}
|
|
@@ -161,7 +153,10 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/controllerextensions/collaboration/A
|
|
|
161
153
|
// Private methods
|
|
162
154
|
|
|
163
155
|
_getDraftContext: function () {
|
|
164
|
-
return this.
|
|
156
|
+
return this._getObjectContext(this._rootPath);
|
|
157
|
+
},
|
|
158
|
+
_getObjectContext: function (path) {
|
|
159
|
+
return this._oModel.bindContext(path, undefined, {
|
|
165
160
|
$$patchWithoutSideEffects: true,
|
|
166
161
|
$$groupId: "$auto",
|
|
167
162
|
$$updateGroupId: "$auto"
|
|
@@ -182,4 +177,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/controllerextensions/collaboration/A
|
|
|
182
177
|
};
|
|
183
178
|
return CollaborationAPI;
|
|
184
179
|
}, false);
|
|
185
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb2xsYWJvcmF0aW9uQVBJIiwiX2xhc3RSZWNlaXZlZE1lc3NhZ2UiLCJ1bmRlZmluZWQiLCJfcm9vdFBhdGgiLCJfb01vZGVsIiwiX2xvY2tlZFByb3BlcnR5UGF0aCIsIl9pbnRlcm5hbE1vZGVsIiwiZW50ZXJEcmFmdCIsIm9Db250ZXh0IiwidXNlcklEIiwidXNlck5hbWUiLCJ3ZWJTb2NrZXRCYXNlVVJMIiwiZ2V0TW9kZWwiLCJnZXRNZXRhTW9kZWwiLCJnZXRPYmplY3QiLCJMb2ciLCJlcnJvciIsInNEcmFmdFVVSUQiLCJnZXRQcm9wZXJ0eSIsIkpTT05Nb2RlbCIsInNlcnZpY2VVcmwiLCJnZXRTZXJ2aWNlVXJsIiwiaW5pdGlhbGl6ZUNvbGxhYm9yYXRpb24iLCJpZCIsIm5hbWUiLCJpbml0aWFsTmFtZSIsIl9vbk1lc3NhZ2VSZWNlaXZlZCIsImJpbmQiLCJnZXRQYXRoIiwiY2hlY2tSZWNlaXZlZCIsIm1lc3NhZ2UiLCJmb3VuZCIsInVzZXJBY3Rpb24iLCJjbGllbnRDb250ZW50IiwibGVhdmVEcmFmdCIsImVuZENvbGxhYm9yYXRpb24iLCJkZXN0cm95Iiwic3RhcnRMaXZlQ2hhbmdlIiwic1Byb3BlcnR5UGF0aCIsInVuZG9DaGFuZ2UiLCJicm9hZGNhc3RDb2xsYWJvcmF0aW9uTWVzc2FnZSIsIkFjdGl2aXR5IiwiTGl2ZUNoYW5nZSIsInVwZGF0ZVByb3BlcnR5VmFsdWUiLCJ2YWx1ZSIsIm9Db250ZXh0QmluZGluZyIsImJpbmRDb250ZXh0IiwiJCRwYXRjaFdpdGhvdXRTaWRlRWZmZWN0cyIsIiQkZ3JvdXBJZCIsIiQkdXBkYXRlR3JvdXBJZCIsIm9Qcm9wZXJ0eUJpbmRpbmciLCJiaW5kUHJvcGVydHkiLCJnZXRCb3VuZENvbnRleHQiLCJyZXF1ZXN0VmFsdWUiLCJ0aGVuIiwic2V0VmFsdWUiLCJhdHRhY2hFdmVudE9uY2UiLCJDaGFuZ2UiLCJjYXRjaCIsImVyciIsIlVuZG8iLCJkaXNjYXJkRHJhZnQiLCJkcmFmdENvbnRleHQiLCJfZ2V0RHJhZnRDb250ZXh0IiwicmVxdWVzdFByb3BlcnR5IiwiZHJhZnQiLCJkZWxldGVEcmFmdCIsIkRpc2NhcmQiLCJyZXBsYWNlIiwiYWN0aXZlQ29udGV4dCIsImNvbnRleHQiLCJyZXF1ZXN0Q2Fub25pY2FsUGF0aCIsImRlbGV0ZSIsIkRlbGV0ZSIsIm9NZXNzYWdlIiwiY2xpZW50QWN0aW9uIiwiSm9pbiIsIkpvaW5FY2hvIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJDb2xsYWJvcmF0aW9uQVBJLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2cgZnJvbSBcInNhcC9iYXNlL0xvZ1wiO1xuaW1wb3J0IHtcblx0YnJvYWRjYXN0Q29sbGFib3JhdGlvbk1lc3NhZ2UsXG5cdGVuZENvbGxhYm9yYXRpb24sXG5cdGluaXRpYWxpemVDb2xsYWJvcmF0aW9uXG59IGZyb20gXCJzYXAvZmUvY29yZS9jb250cm9sbGVyZXh0ZW5zaW9ucy9jb2xsYWJvcmF0aW9uL0FjdGl2aXR5QmFzZVwiO1xuaW1wb3J0IHR5cGUgeyBNZXNzYWdlIH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnRyb2xsZXJleHRlbnNpb25zL2NvbGxhYm9yYXRpb24vQ29sbGFib3JhdGlvbkNvbW1vblwiO1xuaW1wb3J0IHsgQWN0aXZpdHkgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbGxlcmV4dGVuc2lvbnMvY29sbGFib3JhdGlvbi9Db2xsYWJvcmF0aW9uQ29tbW9uXCI7XG5pbXBvcnQgZHJhZnQgZnJvbSBcInNhcC9mZS9jb3JlL2NvbnRyb2xsZXJleHRlbnNpb25zL2VkaXRGbG93L2RyYWZ0XCI7XG5pbXBvcnQgSlNPTk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvanNvbi9KU09OTW9kZWxcIjtcbmltcG9ydCB0eXBlIE9EYXRhTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9PRGF0YU1vZGVsXCI7XG5pbXBvcnQgdHlwZSB7IFY0Q29udGV4dCB9IGZyb20gXCJ0eXBlcy9leHRlbnNpb25fdHlwZXNcIjtcblxuY29uc3QgQ29sbGFib3JhdGlvbkFQSSA9IHtcblx0X2xhc3RSZWNlaXZlZE1lc3NhZ2U6IHVuZGVmaW5lZCBhcyBNZXNzYWdlIHwgdW5kZWZpbmVkLFxuXHRfcm9vdFBhdGg6IFwiXCIsXG5cdF9vTW9kZWw6IHVuZGVmaW5lZCBhcyBPRGF0YU1vZGVsIHwgdW5kZWZpbmVkLFxuXHRfbG9ja2VkUHJvcGVydHlQYXRoOiBcIlwiLFxuXHRfaW50ZXJuYWxNb2RlbDogdW5kZWZpbmVkIGFzIEpTT05Nb2RlbCB8IHVuZGVmaW5lZCxcblxuXHQvKipcblx0ICogT3BlbiBhbiBleGlzdGluZyBjb2xsYWJvcmF0aXZlIGRyYWZ0IHdpdGggYSBuZXcgdXNlciwgYW5kIGNyZWF0ZXMgYSAnZ2hvc3QgY2xpZW50JyBmb3IgdGhpcyB1c2VyLlxuXHQgKlxuXHQgKiBAcGFyYW0gb0NvbnRleHQgVGhlIGNvbnRleHQgb2YgdGhlIGNvbGxhYm9yYXRpdmUgZHJhZnRcblx0ICogQHBhcmFtIHVzZXJJRCBUaGUgSUQgb2YgdGhlIHVzZXJcblx0ICogQHBhcmFtIHVzZXJOYW1lIFRoZSBuYW1lIG9mIHRoZSB1c2VyXG5cdCAqL1xuXHRlbnRlckRyYWZ0OiBmdW5jdGlvbiAob0NvbnRleHQ6IFY0Q29udGV4dCwgdXNlcklEOiBzdHJpbmcsIHVzZXJOYW1lOiBzdHJpbmcpIHtcblx0XHRjb25zdCB3ZWJTb2NrZXRCYXNlVVJMOiBzdHJpbmcgPSBvQ29udGV4dC5nZXRNb2RlbCgpLmdldE1ldGFNb2RlbCgpLmdldE9iamVjdChcIi9AY29tLnNhcC52b2NhYnVsYXJpZXMuQ29tbW9uLnYxLldlYlNvY2tldEJhc2VVUkxcIik7XG5cblx0XHRpZiAoIXdlYlNvY2tldEJhc2VVUkwpIHtcblx0XHRcdExvZy5lcnJvcihcIkNhbm5vdCBmaW5kIFdlYlNvY2tldEJhc2VVUkwgYW5ub3RhdGlvblwiKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHRjb25zdCBzRHJhZnRVVUlEOiBzdHJpbmcgPSBvQ29udGV4dC5nZXRQcm9wZXJ0eShcIkRyYWZ0QWRtaW5pc3RyYXRpdmVEYXRhL0RyYWZ0VVVJRFwiKTtcblx0XHR0aGlzLl9pbnRlcm5hbE1vZGVsID0gbmV3IEpTT05Nb2RlbCh7fSk7XG5cblx0XHRjb25zdCBzZXJ2aWNlVXJsID0gb0NvbnRleHQuZ2V0TW9kZWwoKS5nZXRTZXJ2aWNlVXJsKCk7XG5cblx0XHRpbml0aWFsaXplQ29sbGFib3JhdGlvbihcblx0XHRcdHtcblx0XHRcdFx0aWQ6IHVzZXJJRCxcblx0XHRcdFx0bmFtZTogdXNlck5hbWUsXG5cdFx0XHRcdGluaXRpYWxOYW1lOiB1c2VyTmFtZVxuXHRcdFx0fSxcblx0XHRcdHdlYlNvY2tldEJhc2VVUkwsXG5cdFx0XHRzRHJhZnRVVUlELFxuXHRcdFx0c2VydmljZVVybCxcblx0XHRcdHRoaXMuX2ludGVybmFsTW9kZWwsXG5cdFx0XHR0aGlzLl9vbk1lc3NhZ2VSZWNlaXZlZC5iaW5kKHRoaXMpLFxuXHRcdFx0dHJ1ZVxuXHRcdCk7XG5cblx0XHR0aGlzLl9yb290UGF0aCA9IG9Db250ZXh0LmdldFBhdGgoKTtcblx0XHR0aGlzLl9vTW9kZWwgPSBvQ29udGV4dC5nZXRNb2RlbCgpIGFzIE9EYXRhTW9kZWw7XG5cdH0sXG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiB0aGUgZ2hvc3QgY2xpZW50IGhhcyByZXZpZXZlZCBhIGdpdmVuIG1lc3NhZ2UuXG5cdCAqXG5cdCAqIEBwYXJhbSBtZXNzYWdlIFRoZSBtZXNzYWdlIGNvbnRlbnQgdG8gYmUgbG9va2VkIGZvclxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBsYXN0IHJlY2lldmVkIG1lc3NhZ2UgbWF0Y2hlcyB0aGUgY29udGVudFxuXHQgKi9cblx0Y2hlY2tSZWNlaXZlZDogZnVuY3Rpb24gKG1lc3NhZ2U6IFBhcnRpYWw8TWVzc2FnZT4pOiBib29sZWFuIHtcblx0XHRpZiAoIXRoaXMuX2xhc3RSZWNlaXZlZE1lc3NhZ2UpIHtcblx0XHRcdHJldHVybiBmYWxzZTtcblx0XHR9XG5cblx0XHRjb25zdCBmb3VuZCA9XG5cdFx0XHQoIW1lc3NhZ2UudXNlcklEIHx8IG1lc3NhZ2UudXNlcklEID09PSB0aGlzLl9sYXN0UmVjZWl2ZWRNZXNzYWdlLnVzZXJJRCkgJiZcblx0XHRcdCghbWVzc2FnZS51c2VyQWN0aW9uIHx8IG1lc3NhZ2UudXNlckFjdGlvbiA9PT0gdGhpcy5fbGFzdFJlY2VpdmVkTWVzc2FnZS51c2VyQWN0aW9uKSAmJlxuXHRcdFx0KCFtZXNzYWdlLmNsaWVudENvbnRlbnQgfHwgbWVzc2FnZS5jbGllbnRDb250ZW50ID09PSB0aGlzLl9sYXN0UmVjZWl2ZWRNZXNzYWdlLmNsaWVudENvbnRlbnQpO1xuXG5cdFx0dGhpcy5fbGFzdFJlY2VpdmVkTWVzc2FnZSA9IHVuZGVmaW5lZDsgLy8gcmVzZXQgaGlzdG9yeSB0byBhdm9pZCBmaW5kaW5nIHRoZSBzYW1lIG1lc3NhZ2UgdHdpY2VcblxuXHRcdHJldHVybiBmb3VuZDtcblx0fSxcblxuXHQvKipcblx0ICogQ2xvc2VzIHRoZSBnaG9zdCBjbGllbnQgYW5kIHJlbW92ZXMgdGhlIHVzZXIgZnJvbSB0aGUgY29sbGFib3JhdGl2ZSBkcmFmdC5cblx0ICovXG5cdGxlYXZlRHJhZnQ6IGZ1bmN0aW9uICgpIHtcblx0XHRpZiAodGhpcy5faW50ZXJuYWxNb2RlbCkge1xuXHRcdFx0ZW5kQ29sbGFib3JhdGlvbih0aGlzLl9pbnRlcm5hbE1vZGVsKTtcblx0XHRcdHRoaXMuX2ludGVybmFsTW9kZWwuZGVzdHJveSgpO1xuXHRcdFx0dGhpcy5faW50ZXJuYWxNb2RlbCA9IHVuZGVmaW5lZDtcblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqIFNpbXVsYXRlcyB0aGF0IHRoZSB1c2VyIHN0YXJ0cyB0eXBpbmcgaW4gYW4gaW5wdXQgKGxpdmUgY2hhbmdlKS5cblx0ICpcblx0ICogQHBhcmFtIHNQcm9wZXJ0eVBhdGggVGhlIHBhdGggb2YgdGhlIHByb3BlcnR5IGJlaW5nIG1vZGlmaWVkXG5cdCAqL1xuXHRzdGFydExpdmVDaGFuZ2U6IGZ1bmN0aW9uIChzUHJvcGVydHlQYXRoOiBzdHJpbmcpIHtcblx0XHRpZiAodGhpcy5faW50ZXJuYWxNb2RlbCkge1xuXHRcdFx0aWYgKHRoaXMuX2xvY2tlZFByb3BlcnR5UGF0aCkge1xuXHRcdFx0XHQvLyBVbmxvY2sgcHJldmlvdXMgcHJvcGVydHkgcGF0aFxuXHRcdFx0XHR0aGlzLnVuZG9DaGFuZ2UoKTtcblx0XHRcdH1cblx0XHRcdHRoaXMuX2xvY2tlZFByb3BlcnR5UGF0aCA9IHNQcm9wZXJ0eVBhdGg7XG5cdFx0XHRicm9hZGNhc3RDb2xsYWJvcmF0aW9uTWVzc2FnZShBY3Rpdml0eS5MaXZlQ2hhbmdlLCBgJHt0aGlzLl9yb290UGF0aH0vJHtzUHJvcGVydHlQYXRofWAsIHRoaXMuX2ludGVybmFsTW9kZWwpO1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogU2ltdWxhdGVzIHRoYXQgdGhlIHVzZXIgaGFzIG1vZGlmaWVkIGEgcHJvcGVydHkuXG5cdCAqXG5cdCAqIEBwYXJhbSBzUHJvcGVydHlQYXRoIFRoZSBwYXRoIG9mIHRoZSBwcm9wZXJ0eSBiZWluZyBtb2RpZmllZFxuXHQgKiBAcGFyYW0gdmFsdWUgVGhlIG5ldyB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgYmVpbmcgbW9kaWZpZWRcblx0ICovXG5cdHVwZGF0ZVByb3BlcnR5VmFsdWU6IGZ1bmN0aW9uIChzUHJvcGVydHlQYXRoOiBzdHJpbmcsIHZhbHVlOiBhbnkpIHtcblx0XHRpZiAodGhpcy5faW50ZXJuYWxNb2RlbCkge1xuXHRcdFx0aWYgKHRoaXMuX2xvY2tlZFByb3BlcnR5UGF0aCAhPT0gc1Byb3BlcnR5UGF0aCkge1xuXHRcdFx0XHR0aGlzLnN0YXJ0TGl2ZUNoYW5nZShzUHJvcGVydHlQYXRoKTtcblx0XHRcdH1cblxuXHRcdFx0Y29uc3Qgb0NvbnRleHRCaW5kaW5nID0gdGhpcy5fb01vZGVsIS5iaW5kQ29udGV4dCh0aGlzLl9yb290UGF0aCwgdW5kZWZpbmVkLCB7XG5cdFx0XHRcdCQkcGF0Y2hXaXRob3V0U2lkZUVmZmVjdHM6IHRydWUsXG5cdFx0XHRcdCQkZ3JvdXBJZDogXCIkYXV0b1wiLFxuXHRcdFx0XHQkJHVwZGF0ZUdyb3VwSWQ6IFwiJGF1dG9cIlxuXHRcdFx0fSk7XG5cblx0XHRcdGNvbnN0IG9Qcm9wZXJ0eUJpbmRpbmcgPSB0aGlzLl9vTW9kZWwhLmJpbmRQcm9wZXJ0eShzUHJvcGVydHlQYXRoLCBvQ29udGV4dEJpbmRpbmcuZ2V0Qm91bmRDb250ZXh0KCkpO1xuXG5cdFx0XHRvUHJvcGVydHlCaW5kaW5nXG5cdFx0XHRcdC5yZXF1ZXN0VmFsdWUoKVxuXHRcdFx0XHQudGhlbigoKSA9PiB7XG5cdFx0XHRcdFx0b1Byb3BlcnR5QmluZGluZy5zZXRWYWx1ZSh2YWx1ZSk7XG5cdFx0XHRcdFx0b0NvbnRleHRCaW5kaW5nLmF0dGFjaEV2ZW50T25jZShcInBhdGNoQ29tcGxldGVkXCIsICgpID0+IHtcblx0XHRcdFx0XHRcdGJyb2FkY2FzdENvbGxhYm9yYXRpb25NZXNzYWdlKEFjdGl2aXR5LkNoYW5nZSwgYCR7dGhpcy5fcm9vdFBhdGh9LyR7c1Byb3BlcnR5UGF0aH1gLCB0aGlzLl9pbnRlcm5hbE1vZGVsISk7XG5cdFx0XHRcdFx0XHR0aGlzLl9sb2NrZWRQcm9wZXJ0eVBhdGggPSBcIlwiO1xuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKGVycikge1xuXHRcdFx0XHRcdExvZy5lcnJvcihlcnIpO1xuXHRcdFx0XHR9KTtcblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqIFNpbXVsYXRlcyB0aGF0IHRoZSB1c2VyIGRpZCBhbiAndW5kbycgKHRvIGJlIGNhbGxlZCBhZnRlciBzdGFydExpdmVDaGFuZ2UpLlxuXHQgKi9cblx0dW5kb0NoYW5nZTogZnVuY3Rpb24gKCkge1xuXHRcdGlmICh0aGlzLl9sb2NrZWRQcm9wZXJ0eVBhdGgpIHtcblx0XHRcdGJyb2FkY2FzdENvbGxhYm9yYXRpb25NZXNzYWdlKEFjdGl2aXR5LlVuZG8sIGAke3RoaXMuX3Jvb3RQYXRofS8ke3RoaXMuX2xvY2tlZFByb3BlcnR5UGF0aH1gLCB0aGlzLl9pbnRlcm5hbE1vZGVsISk7XG5cdFx0XHR0aGlzLl9sb2NrZWRQcm9wZXJ0eVBhdGggPSBcIlwiO1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogU2ltdWxhdGVzIHRoYXQgdGhlIHVzZXIgaGFzIGRpc2NhcmRlZCB0aGUgZHJhZnQuXG5cdCAqL1xuXHRkaXNjYXJkRHJhZnQ6IGZ1bmN0aW9uICgpIHtcblx0XHRpZiAodGhpcy5faW50ZXJuYWxNb2RlbCkge1xuXHRcdFx0Y29uc3QgZHJhZnRDb250ZXh0ID0gdGhpcy5fZ2V0RHJhZnRDb250ZXh0KCk7XG5cblx0XHRcdGRyYWZ0Q29udGV4dFxuXHRcdFx0XHQucmVxdWVzdFByb3BlcnR5KFwiSXNBY3RpdmVFbnRpdHlcIilcblx0XHRcdFx0LnRoZW4oKCkgPT4ge1xuXHRcdFx0XHRcdGRyYWZ0LmRlbGV0ZURyYWZ0KGRyYWZ0Q29udGV4dCk7XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC50aGVuKCgpID0+IHtcblx0XHRcdFx0XHRicm9hZGNhc3RDb2xsYWJvcmF0aW9uTWVzc2FnZShcblx0XHRcdFx0XHRcdEFjdGl2aXR5LkRpc2NhcmQsXG5cdFx0XHRcdFx0XHR0aGlzLl9yb290UGF0aC5yZXBsYWNlKFwiSXNBY3RpdmVFbnRpdHk9ZmFsc2VcIiwgXCJJc0FjdGl2ZUVudGl0eT10cnVlXCIpLFxuXHRcdFx0XHRcdFx0dGhpcy5faW50ZXJuYWxNb2RlbCFcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHRcdHRoaXMuX2ludGVybmFsTW9kZWwhLmRlc3Ryb3koKTtcblx0XHRcdFx0XHR0aGlzLl9pbnRlcm5hbE1vZGVsID0gdW5kZWZpbmVkO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKGVycjogYW55KSB7XG5cdFx0XHRcdFx0TG9nLmVycm9yKGVycik7XG5cdFx0XHRcdH0pO1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogU2ltdWxhdGVzIHRoYXQgdGhlIHVzZXIgaGFzIGRlbGV0ZWQgdGhlIGRyYWZ0LlxuXHQgKi9cblx0ZGVsZXRlRHJhZnQ6IGZ1bmN0aW9uICgpIHtcblx0XHRpZiAodGhpcy5faW50ZXJuYWxNb2RlbCkge1xuXHRcdFx0Y29uc3QgZHJhZnRDb250ZXh0ID0gdGhpcy5fZ2V0RHJhZnRDb250ZXh0KCk7XG5cdFx0XHRsZXQgYWN0aXZlQ29udGV4dDogVjRDb250ZXh0O1xuXG5cdFx0XHRkcmFmdENvbnRleHRcblx0XHRcdFx0LnJlcXVlc3RQcm9wZXJ0eShcIklzQWN0aXZlRW50aXR5XCIpXG5cdFx0XHRcdC50aGVuKCgpID0+IHtcblx0XHRcdFx0XHRyZXR1cm4gZHJhZnRDb250ZXh0LmdldE1vZGVsKCkuYmluZENvbnRleHQoYCR7dGhpcy5fcm9vdFBhdGh9L1NpYmxpbmdFbnRpdHlgKS5nZXRCb3VuZENvbnRleHQoKTtcblx0XHRcdFx0fSlcblx0XHRcdFx0LnRoZW4oKGNvbnRleHQ6IGFueSkgPT4ge1xuXHRcdFx0XHRcdGFjdGl2ZUNvbnRleHQgPSBjb250ZXh0O1xuXHRcdFx0XHRcdHJldHVybiBjb250ZXh0LnJlcXVlc3RDYW5vbmljYWxQYXRoKCk7XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC50aGVuKCgpID0+IHtcblx0XHRcdFx0XHRyZXR1cm4gZHJhZnQuZGVsZXRlRHJhZnQoZHJhZnRDb250ZXh0KTtcblx0XHRcdFx0fSlcblx0XHRcdFx0LnRoZW4oKCkgPT4ge1xuXHRcdFx0XHRcdChhY3RpdmVDb250ZXh0IGFzIGFueSkuZGVsZXRlKCk7XG5cdFx0XHRcdFx0YnJvYWRjYXN0Q29sbGFib3JhdGlvbk1lc3NhZ2UoQWN0aXZpdHkuRGVsZXRlLCB0aGlzLl9yb290UGF0aCwgdGhpcy5faW50ZXJuYWxNb2RlbCEpO1xuXHRcdFx0XHRcdHRoaXMuX2ludGVybmFsTW9kZWwhLmRlc3Ryb3koKTtcblx0XHRcdFx0XHR0aGlzLl9pbnRlcm5hbE1vZGVsID0gdW5kZWZpbmVkO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKGVycjogYW55KSB7XG5cdFx0XHRcdFx0TG9nLmVycm9yKGVycik7XG5cdFx0XHRcdH0pO1xuXHRcdH1cblx0fSxcblxuXHQvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXHQvLyBQcml2YXRlIG1ldGhvZHNcblxuXHRfZ2V0RHJhZnRDb250ZXh0OiBmdW5jdGlvbiAoKTogYW55IHtcblx0XHRyZXR1cm4gdGhpcy5fb01vZGVsIS5iaW5kQ29udGV4dCh0aGlzLl9yb290UGF0aCwgdW5kZWZpbmVkLCB7XG5cdFx0XHQkJHBhdGNoV2l0aG91dFNpZGVFZmZlY3RzOiB0cnVlLFxuXHRcdFx0JCRncm91cElkOiBcIiRhdXRvXCIsXG5cdFx0XHQkJHVwZGF0ZUdyb3VwSWQ6IFwiJGF1dG9cIlxuXHRcdH0pLmdldEJvdW5kQ29udGV4dCgpO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBDYWxsYmFjayBvZiB0aGUgZ2hvc3QgY2xpZW50IHdoZW4gcmVjZWl2aW5nIGEgbWVzc2FnZSBvbiB0aGUgd2ViIHNvY2tldC5cblx0ICpcblx0ICogQHBhcmFtIG9NZXNzYWdlIFRoZSBtZXNzYWdlXG5cdCAqL1xuXHRfb25NZXNzYWdlUmVjZWl2ZWQ6IGZ1bmN0aW9uIChvTWVzc2FnZTogTWVzc2FnZSkge1xuXHRcdG9NZXNzYWdlLnVzZXJBY3Rpb24gPSBvTWVzc2FnZS51c2VyQWN0aW9uIHx8IG9NZXNzYWdlLmNsaWVudEFjdGlvbjtcblx0XHR0aGlzLl9sYXN0UmVjZWl2ZWRNZXNzYWdlID0gb01lc3NhZ2U7XG5cblx0XHRpZiAob01lc3NhZ2UudXNlckFjdGlvbiA9PT0gQWN0aXZpdHkuSm9pbikge1xuXHRcdFx0YnJvYWRjYXN0Q29sbGFib3JhdGlvbk1lc3NhZ2UoXG5cdFx0XHRcdEFjdGl2aXR5LkpvaW5FY2hvLFxuXHRcdFx0XHR0aGlzLl9sb2NrZWRQcm9wZXJ0eVBhdGggPyBgJHt0aGlzLl9yb290UGF0aH0vJHt0aGlzLl9sb2NrZWRQcm9wZXJ0eVBhdGh9YCA6IHVuZGVmaW5lZCxcblx0XHRcdFx0dGhpcy5faW50ZXJuYWxNb2RlbCFcblx0XHRcdCk7XG5cdFx0fVxuXHR9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBDb2xsYWJvcmF0aW9uQVBJO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7Ozs7OztFQWFBLE1BQU1BLGdCQUFnQixHQUFHO0lBQ3hCQyxvQkFBb0IsRUFBRUMsU0FBZ0M7SUFDdERDLFNBQVMsRUFBRSxFQUFFO0lBQ2JDLE9BQU8sRUFBRUYsU0FBbUM7SUFDNUNHLG1CQUFtQixFQUFFLEVBQUU7SUFDdkJDLGNBQWMsRUFBRUosU0FBa0M7SUFFbEQ7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQ0ssVUFBVSxFQUFFLFVBQVVDLFFBQW1CLEVBQUVDLE1BQWMsRUFBRUMsUUFBZ0IsRUFBRTtNQUM1RSxNQUFNQyxnQkFBd0IsR0FBR0gsUUFBUSxDQUFDSSxRQUFRLEVBQUUsQ0FBQ0MsWUFBWSxFQUFFLENBQUNDLFNBQVMsQ0FBQyxtREFBbUQsQ0FBQztNQUVsSSxJQUFJLENBQUNILGdCQUFnQixFQUFFO1FBQ3RCSSxHQUFHLENBQUNDLEtBQUssQ0FBQyx5Q0FBeUMsQ0FBQztRQUNwRDtNQUNEO01BRUEsTUFBTUMsVUFBa0IsR0FBR1QsUUFBUSxDQUFDVSxXQUFXLENBQUMsbUNBQW1DLENBQUM7TUFDcEYsSUFBSSxDQUFDWixjQUFjLEdBQUcsSUFBSWEsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO01BRXZDLE1BQU1DLFVBQVUsR0FBR1osUUFBUSxDQUFDSSxRQUFRLEVBQUUsQ0FBQ1MsYUFBYSxFQUFFO01BRXREQyx1QkFBdUIsQ0FDdEI7UUFDQ0MsRUFBRSxFQUFFZCxNQUFNO1FBQ1ZlLElBQUksRUFBRWQsUUFBUTtRQUNkZSxXQUFXLEVBQUVmO01BQ2QsQ0FBQyxFQUNEQyxnQkFBZ0IsRUFDaEJNLFVBQVUsRUFDVkcsVUFBVSxFQUNWLElBQUksQ0FBQ2QsY0FBYyxFQUNuQixJQUFJLENBQUNvQixrQkFBa0IsQ0FBQ0Ms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
|
|
180
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb2xsYWJvcmF0aW9uQVBJIiwiX2xhc3RSZWNlaXZlZE1lc3NhZ2UiLCJ1bmRlZmluZWQiLCJfcm9vdFBhdGgiLCJfb01vZGVsIiwiX2xvY2tlZFByb3BlcnR5UGF0aCIsIl9pbnRlcm5hbE1vZGVsIiwiZW50ZXJEcmFmdCIsIm9Db250ZXh0IiwidXNlcklEIiwidXNlck5hbWUiLCJ3ZWJTb2NrZXRCYXNlVVJMIiwiZ2V0TW9kZWwiLCJnZXRNZXRhTW9kZWwiLCJnZXRPYmplY3QiLCJMb2ciLCJlcnJvciIsInNEcmFmdFVVSUQiLCJnZXRQcm9wZXJ0eSIsIkpTT05Nb2RlbCIsInNlcnZpY2VVcmwiLCJnZXRTZXJ2aWNlVXJsIiwiaW5pdGlhbGl6ZUNvbGxhYm9yYXRpb24iLCJpZCIsIm5hbWUiLCJpbml0aWFsTmFtZSIsIl9vbk1lc3NhZ2VSZWNlaXZlZCIsImJpbmQiLCJnZXRQYXRoIiwiY2hlY2tSZWNlaXZlZCIsIm1lc3NhZ2UiLCJmb3VuZCIsInVzZXJBY3Rpb24iLCJjbGllbnRDb250ZW50IiwibGVhdmVEcmFmdCIsImVuZENvbGxhYm9yYXRpb24iLCJkZXN0cm95Iiwic3RhcnRMaXZlQ2hhbmdlIiwic1Byb3BlcnR5UGF0aCIsInVuZG9DaGFuZ2UiLCJicm9hZGNhc3RDb2xsYWJvcmF0aW9uTWVzc2FnZSIsIkFjdGl2aXR5IiwiTGl2ZUNoYW5nZSIsInVwZGF0ZVByb3BlcnR5VmFsdWUiLCJ2YWx1ZSIsIm9Db250ZXh0QmluZGluZyIsImJpbmRDb250ZXh0IiwiJCRwYXRjaFdpdGhvdXRTaWRlRWZmZWN0cyIsIiQkZ3JvdXBJZCIsIiQkdXBkYXRlR3JvdXBJZCIsIm9Qcm9wZXJ0eUJpbmRpbmciLCJiaW5kUHJvcGVydHkiLCJnZXRCb3VuZENvbnRleHQiLCJyZXF1ZXN0VmFsdWUiLCJ0aGVuIiwic2V0VmFsdWUiLCJhdHRhY2hFdmVudE9uY2UiLCJDaGFuZ2UiLCJjYXRjaCIsImVyciIsIlVuZG8iLCJkaXNjYXJkRHJhZnQiLCJkcmFmdENvbnRleHQiLCJfZ2V0RHJhZnRDb250ZXh0IiwicmVxdWVzdFByb3BlcnR5IiwiZHJhZnQiLCJkZWxldGVEcmFmdCIsIkRpc2NhcmQiLCJyZXBsYWNlIiwiZGVsZXRlT2JqZWN0Iiwib2JqZWN0UGF0aCIsIm9iamVjdENvbnRleHQiLCJfZ2V0T2JqZWN0Q29udGV4dCIsImRlbGV0ZSIsIkRlbGV0ZSIsInBhdGgiLCJvTWVzc2FnZSIsImNsaWVudEFjdGlvbiIsIkpvaW4iLCJKb2luRWNobyJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiQ29sbGFib3JhdGlvbkFQSS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB7XG5cdGJyb2FkY2FzdENvbGxhYm9yYXRpb25NZXNzYWdlLFxuXHRlbmRDb2xsYWJvcmF0aW9uLFxuXHRpbml0aWFsaXplQ29sbGFib3JhdGlvblxufSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbGxlcmV4dGVuc2lvbnMvY29sbGFib3JhdGlvbi9BY3Rpdml0eUJhc2VcIjtcbmltcG9ydCB0eXBlIHsgTWVzc2FnZSB9IGZyb20gXCJzYXAvZmUvY29yZS9jb250cm9sbGVyZXh0ZW5zaW9ucy9jb2xsYWJvcmF0aW9uL0NvbGxhYm9yYXRpb25Db21tb25cIjtcbmltcG9ydCB7IEFjdGl2aXR5IH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnRyb2xsZXJleHRlbnNpb25zL2NvbGxhYm9yYXRpb24vQ29sbGFib3JhdGlvbkNvbW1vblwiO1xuaW1wb3J0IGRyYWZ0IGZyb20gXCJzYXAvZmUvY29yZS9jb250cm9sbGVyZXh0ZW5zaW9ucy9lZGl0Rmxvdy9kcmFmdFwiO1xuaW1wb3J0IEpTT05Nb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL2pzb24vSlNPTk1vZGVsXCI7XG5pbXBvcnQgQ29udGV4dCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L0NvbnRleHRcIjtcbmltcG9ydCB0eXBlIE9EYXRhTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9PRGF0YU1vZGVsXCI7XG5cbmNvbnN0IENvbGxhYm9yYXRpb25BUEkgPSB7XG5cdF9sYXN0UmVjZWl2ZWRNZXNzYWdlOiB1bmRlZmluZWQgYXMgTWVzc2FnZSB8IHVuZGVmaW5lZCxcblx0X3Jvb3RQYXRoOiBcIlwiLFxuXHRfb01vZGVsOiB1bmRlZmluZWQgYXMgT0RhdGFNb2RlbCB8IHVuZGVmaW5lZCxcblx0X2xvY2tlZFByb3BlcnR5UGF0aDogXCJcIixcblx0X2ludGVybmFsTW9kZWw6IHVuZGVmaW5lZCBhcyBKU09OTW9kZWwgfCB1bmRlZmluZWQsXG5cblx0LyoqXG5cdCAqIE9wZW4gYW4gZXhpc3RpbmcgY29sbGFib3JhdGl2ZSBkcmFmdCB3aXRoIGEgbmV3IHVzZXIsIGFuZCBjcmVhdGVzIGEgJ2dob3N0IGNsaWVudCcgZm9yIHRoaXMgdXNlci5cblx0ICpcblx0ICogQHBhcmFtIG9Db250ZXh0IFRoZSBjb250ZXh0IG9mIHRoZSBjb2xsYWJvcmF0aXZlIGRyYWZ0XG5cdCAqIEBwYXJhbSB1c2VySUQgVGhlIElEIG9mIHRoZSB1c2VyXG5cdCAqIEBwYXJhbSB1c2VyTmFtZSBUaGUgbmFtZSBvZiB0aGUgdXNlclxuXHQgKi9cblx0ZW50ZXJEcmFmdDogZnVuY3Rpb24gKG9Db250ZXh0OiBDb250ZXh0LCB1c2VySUQ6IHN0cmluZywgdXNlck5hbWU6IHN0cmluZykge1xuXHRcdGNvbnN0IHdlYlNvY2tldEJhc2VVUkw6IHN0cmluZyA9IG9Db250ZXh0LmdldE1vZGVsKCkuZ2V0TWV0YU1vZGVsKCkuZ2V0T2JqZWN0KFwiL0Bjb20uc2FwLnZvY2FidWxhcmllcy5Db21tb24udjEuV2ViU29ja2V0QmFzZVVSTFwiKTtcblxuXHRcdGlmICghd2ViU29ja2V0QmFzZVVSTCkge1xuXHRcdFx0TG9nLmVycm9yKFwiQ2Fubm90IGZpbmQgV2ViU29ja2V0QmFzZVVSTCBhbm5vdGF0aW9uXCIpO1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdGNvbnN0IHNEcmFmdFVVSUQ6IHN0cmluZyA9IG9Db250ZXh0LmdldFByb3BlcnR5KFwiRHJhZnRBZG1pbmlzdHJhdGl2ZURhdGEvRHJhZnRVVUlEXCIpO1xuXHRcdHRoaXMuX2ludGVybmFsTW9kZWwgPSBuZXcgSlNPTk1vZGVsKHt9KTtcblxuXHRcdGNvbnN0IHNlcnZpY2VVcmwgPSBvQ29udGV4dC5nZXRNb2RlbCgpLmdldFNlcnZpY2VVcmwoKTtcblxuXHRcdGluaXRpYWxpemVDb2xsYWJvcmF0aW9uKFxuXHRcdFx0e1xuXHRcdFx0XHRpZDogdXNlcklELFxuXHRcdFx0XHRuYW1lOiB1c2VyTmFtZSxcblx0XHRcdFx0aW5pdGlhbE5hbWU6IHVzZXJOYW1lXG5cdFx0XHR9LFxuXHRcdFx0d2ViU29ja2V0QmFzZVVSTCxcblx0XHRcdHNEcmFmdFVVSUQsXG5cdFx0XHRzZXJ2aWNlVXJsLFxuXHRcdFx0dGhpcy5faW50ZXJuYWxNb2RlbCxcblx0XHRcdHRoaXMuX29uTWVzc2FnZVJlY2VpdmVkLmJpbmQodGhpcyksXG5cdFx0XHR0cnVlXG5cdFx0KTtcblxuXHRcdHRoaXMuX3Jvb3RQYXRoID0gb0NvbnRleHQuZ2V0UGF0aCgpO1xuXHRcdHRoaXMuX29Nb2RlbCA9IG9Db250ZXh0LmdldE1vZGVsKCk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiB0aGUgZ2hvc3QgY2xpZW50IGhhcyByZXZpZXZlZCBhIGdpdmVuIG1lc3NhZ2UuXG5cdCAqXG5cdCAqIEBwYXJhbSBtZXNzYWdlIFRoZSBtZXNzYWdlIGNvbnRlbnQgdG8gYmUgbG9va2VkIGZvclxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBsYXN0IHJlY2lldmVkIG1lc3NhZ2UgbWF0Y2hlcyB0aGUgY29udGVudFxuXHQgKi9cblx0Y2hlY2tSZWNlaXZlZDogZnVuY3Rpb24gKG1lc3NhZ2U6IFBhcnRpYWw8TWVzc2FnZT4pOiBib29sZWFuIHtcblx0XHRpZiAoIXRoaXMuX2xhc3RSZWNlaXZlZE1lc3NhZ2UpIHtcblx0XHRcdHJldHVybiBmYWxzZTtcblx0XHR9XG5cblx0XHRjb25zdCBmb3VuZCA9XG5cdFx0XHQoIW1lc3NhZ2UudXNlcklEIHx8IG1lc3NhZ2UudXNlcklEID09PSB0aGlzLl9sYXN0UmVjZWl2ZWRNZXNzYWdlLnVzZXJJRCkgJiZcblx0XHRcdCghbWVzc2FnZS51c2VyQWN0aW9uIHx8IG1lc3NhZ2UudXNlckFjdGlvbiA9PT0gdGhpcy5fbGFzdFJlY2VpdmVkTWVzc2FnZS51c2VyQWN0aW9uKSAmJlxuXHRcdFx0KCFtZXNzYWdlLmNsaWVudENvbnRlbnQgfHwgbWVzc2FnZS5jbGllbnRDb250ZW50ID09PSB0aGlzLl9sYXN0UmVjZWl2ZWRNZXNzYWdlLmNsaWVudENvbnRlbnQpO1xuXG5cdFx0dGhpcy5fbGFzdFJlY2VpdmVkTWVzc2FnZSA9IHVuZGVmaW5lZDsgLy8gcmVzZXQgaGlzdG9yeSB0byBhdm9pZCBmaW5kaW5nIHRoZSBzYW1lIG1lc3NhZ2UgdHdpY2VcblxuXHRcdHJldHVybiBmb3VuZDtcblx0fSxcblxuXHQvKipcblx0ICogQ2xvc2VzIHRoZSBnaG9zdCBjbGllbnQgYW5kIHJlbW92ZXMgdGhlIHVzZXIgZnJvbSB0aGUgY29sbGFib3JhdGl2ZSBkcmFmdC5cblx0ICovXG5cdGxlYXZlRHJhZnQ6IGZ1bmN0aW9uICgpIHtcblx0XHRpZiAodGhpcy5faW50ZXJuYWxNb2RlbCkge1xuXHRcdFx0ZW5kQ29sbGFib3JhdGlvbih0aGlzLl9pbnRlcm5hbE1vZGVsKTtcblx0XHRcdHRoaXMuX2ludGVybmFsTW9kZWwuZGVzdHJveSgpO1xuXHRcdFx0dGhpcy5faW50ZXJuYWxNb2RlbCA9IHVuZGVmaW5lZDtcblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqIFNpbXVsYXRlcyB0aGF0IHRoZSB1c2VyIHN0YXJ0cyB0eXBpbmcgaW4gYW4gaW5wdXQgKGxpdmUgY2hhbmdlKS5cblx0ICpcblx0ICogQHBhcmFtIHNQcm9wZXJ0eVBhdGggVGhlIHBhdGggb2YgdGhlIHByb3BlcnR5IGJlaW5nIG1vZGlmaWVkXG5cdCAqL1xuXHRzdGFydExpdmVDaGFuZ2U6IGZ1bmN0aW9uIChzUHJvcGVydHlQYXRoOiBzdHJpbmcpIHtcblx0XHRpZiAodGhpcy5faW50ZXJuYWxNb2RlbCkge1xuXHRcdFx0aWYgKHRoaXMuX2xvY2tlZFByb3BlcnR5UGF0aCkge1xuXHRcdFx0XHQvLyBVbmxvY2sgcHJldmlvdXMgcHJvcGVydHkgcGF0aFxuXHRcdFx0XHR0aGlzLnVuZG9DaGFuZ2UoKTtcblx0XHRcdH1cblx0XHRcdHRoaXMuX2xvY2tlZFByb3BlcnR5UGF0aCA9IHNQcm9wZXJ0eVBhdGg7XG5cdFx0XHRicm9hZGNhc3RDb2xsYWJvcmF0aW9uTWVzc2FnZShBY3Rpdml0eS5MaXZlQ2hhbmdlLCBgJHt0aGlzLl9yb290UGF0aH0vJHtzUHJvcGVydHlQYXRofWAsIHRoaXMuX2ludGVybmFsTW9kZWwpO1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogU2ltdWxhdGVzIHRoYXQgdGhlIHVzZXIgaGFzIG1vZGlmaWVkIGEgcHJvcGVydHkuXG5cdCAqXG5cdCAqIEBwYXJhbSBzUHJvcGVydHlQYXRoIFRoZSBwYXRoIG9mIHRoZSBwcm9wZXJ0eSBiZWluZyBtb2RpZmllZFxuXHQgKiBAcGFyYW0gdmFsdWUgVGhlIG5ldyB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgYmVpbmcgbW9kaWZpZWRcblx0ICovXG5cdHVwZGF0ZVByb3BlcnR5VmFsdWU6IGZ1bmN0aW9uIChzUHJvcGVydHlQYXRoOiBzdHJpbmcsIHZhbHVlOiBhbnkpIHtcblx0XHRpZiAodGhpcy5faW50ZXJuYWxNb2RlbCkge1xuXHRcdFx0aWYgKHRoaXMuX2xvY2tlZFByb3BlcnR5UGF0aCAhPT0gc1Byb3BlcnR5UGF0aCkge1xuXHRcdFx0XHR0aGlzLnN0YXJ0TGl2ZUNoYW5nZShzUHJvcGVydHlQYXRoKTtcblx0XHRcdH1cblxuXHRcdFx0Y29uc3Qgb0NvbnRleHRCaW5kaW5nID0gdGhpcy5fb01vZGVsIS5iaW5kQ29udGV4dCh0aGlzLl9yb290UGF0aCwgdW5kZWZpbmVkLCB7XG5cdFx0XHRcdCQkcGF0Y2hXaXRob3V0U2lkZUVmZmVjdHM6IHRydWUsXG5cdFx0XHRcdCQkZ3JvdXBJZDogXCIkYXV0b1wiLFxuXHRcdFx0XHQkJHVwZGF0ZUdyb3VwSWQ6IFwiJGF1dG9cIlxuXHRcdFx0fSk7XG5cblx0XHRcdGNvbnN0IG9Qcm9wZXJ0eUJpbmRpbmcgPSB0aGlzLl9vTW9kZWwhLmJpbmRQcm9wZXJ0eShzUHJvcGVydHlQYXRoLCBvQ29udGV4dEJpbmRpbmcuZ2V0Qm91bmRDb250ZXh0KCkpO1xuXG5cdFx0XHRvUHJvcGVydHlCaW5kaW5nXG5cdFx0XHRcdC5yZXF1ZXN0VmFsdWUoKVxuXHRcdFx0XHQudGhlbigoKSA9PiB7XG5cdFx0XHRcdFx0b1Byb3BlcnR5QmluZGluZy5zZXRWYWx1ZSh2YWx1ZSk7XG5cdFx0XHRcdFx0b0NvbnRleHRCaW5kaW5nLmF0dGFjaEV2ZW50T25jZShcInBhdGNoQ29tcGxldGVkXCIsICgpID0+IHtcblx0XHRcdFx0XHRcdGJyb2FkY2FzdENvbGxhYm9yYXRpb25NZXNzYWdlKEFjdGl2aXR5LkNoYW5nZSwgYCR7dGhpcy5fcm9vdFBhdGh9LyR7c1Byb3BlcnR5UGF0aH1gLCB0aGlzLl9pbnRlcm5hbE1vZGVsISk7XG5cdFx0XHRcdFx0XHR0aGlzLl9sb2NrZWRQcm9wZXJ0eVBhdGggPSBcIlwiO1xuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKGVycikge1xuXHRcdFx0XHRcdExvZy5lcnJvcihlcnIpO1xuXHRcdFx0XHR9KTtcblx0XHR9XG5cdH0sXG5cblx0LyoqXG5cdCAqIFNpbXVsYXRlcyB0aGF0IHRoZSB1c2VyIGRpZCBhbiAndW5kbycgKHRvIGJlIGNhbGxlZCBhZnRlciBzdGFydExpdmVDaGFuZ2UpLlxuXHQgKi9cblx0dW5kb0NoYW5nZTogZnVuY3Rpb24gKCkge1xuXHRcdGlmICh0aGlzLl9sb2NrZWRQcm9wZXJ0eVBhdGgpIHtcblx0XHRcdGJyb2FkY2FzdENvbGxhYm9yYXRpb25NZXNzYWdlKEFjdGl2aXR5LlVuZG8sIGAke3RoaXMuX3Jvb3RQYXRofS8ke3RoaXMuX2xvY2tlZFByb3BlcnR5UGF0aH1gLCB0aGlzLl9pbnRlcm5hbE1vZGVsISk7XG5cdFx0XHR0aGlzLl9sb2NrZWRQcm9wZXJ0eVBhdGggPSBcIlwiO1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogU2ltdWxhdGVzIHRoYXQgdGhlIHVzZXIgaGFzIGRpc2NhcmRlZCB0aGUgZHJhZnQuXG5cdCAqL1xuXHRkaXNjYXJkRHJhZnQ6IGZ1bmN0aW9uICgpIHtcblx0XHRpZiAodGhpcy5faW50ZXJuYWxNb2RlbCkge1xuXHRcdFx0Y29uc3QgZHJhZnRDb250ZXh0ID0gdGhpcy5fZ2V0RHJhZnRDb250ZXh0KCk7XG5cblx0XHRcdGRyYWZ0Q29udGV4dFxuXHRcdFx0XHQucmVxdWVzdFByb3BlcnR5KFwiSXNBY3RpdmVFbnRpdHlcIilcblx0XHRcdFx0LnRoZW4oKCkgPT4ge1xuXHRcdFx0XHRcdGRyYWZ0LmRlbGV0ZURyYWZ0KGRyYWZ0Q29udGV4dCk7XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC50aGVuKCgpID0+IHtcblx0XHRcdFx0XHRicm9hZGNhc3RDb2xsYWJvcmF0aW9uTWVzc2FnZShcblx0XHRcdFx0XHRcdEFjdGl2aXR5LkRpc2NhcmQsXG5cdFx0XHRcdFx0XHR0aGlzLl9yb290UGF0aC5yZXBsYWNlKFwiSXNBY3RpdmVFbnRpdHk9ZmFsc2VcIiwgXCJJc0FjdGl2ZUVudGl0eT10cnVlXCIpLFxuXHRcdFx0XHRcdFx0dGhpcy5faW50ZXJuYWxNb2RlbCFcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHRcdHRoaXMuX2ludGVybmFsTW9kZWwhLmRlc3Ryb3koKTtcblx0XHRcdFx0XHR0aGlzLl9pbnRlcm5hbE1vZGVsID0gdW5kZWZpbmVkO1xuXHRcdFx0XHR9KVxuXHRcdFx0XHQuY2F0Y2goZnVuY3Rpb24gKGVycjogYW55KSB7XG5cdFx0XHRcdFx0TG9nLmVycm9yKGVycik7XG5cdFx0XHRcdH0pO1xuXHRcdH1cblx0fSxcblxuXHQvKipcblx0ICogU2ltdWxhdGVzIHRoYXQgdGhlIHVzZXIgaGFzIGRlbGV0ZWQgYW4gb2JqZWN0IChjaGlsZCBvZiBkcmFmdCByb290KS5cblx0ICpcblx0ICogQHBhcmFtIG9iamVjdFBhdGggVGhlIHBhdGggb2YgdGhlIG9iamVjdCB0byBkZWxldGVcblx0ICovXG5cdGRlbGV0ZU9iamVjdDogZnVuY3Rpb24gKG9iamVjdFBhdGg6IHN0cmluZykge1xuXHRcdGlmICh0aGlzLl9pbnRlcm5hbE1vZGVsKSB7XG5cdFx0XHRjb25zdCBvYmplY3RDb250ZXh0ID0gdGhpcy5fZ2V0T2JqZWN0Q29udGV4dChvYmplY3RQYXRoKTtcblxuXHRcdFx0b2JqZWN0Q29udGV4dFxuXHRcdFx0XHQucmVxdWVzdFByb3BlcnR5KFwiSXNBY3RpdmVFbnRpdHlcIilcblx0XHRcdFx0LnRoZW4oKCkgPT4ge1xuXHRcdFx0XHRcdG9iamVjdENvbnRleHQuZGVsZXRlKCk7XG5cdFx0XHRcdFx0YnJvYWRjYXN0Q29sbGFib3JhdGlvbk1lc3NhZ2UoQWN0aXZpdHkuRGVsZXRlLCBvYmplY3RQYXRoLCB0aGlzLl9pbnRlcm5hbE1vZGVsISk7XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC5jYXRjaCgoZXJyKSA9PiB7XG5cdFx0XHRcdFx0TG9nLmVycm9yKGVycik7XG5cdFx0XHRcdH0pO1xuXHRcdH1cblx0fSxcblxuXHQvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXHQvLyBQcml2YXRlIG1ldGhvZHNcblxuXHRfZ2V0RHJhZnRDb250ZXh0OiBmdW5jdGlvbiAoKTogYW55IHtcblx0XHRyZXR1cm4gdGhpcy5fZ2V0T2JqZWN0Q29udGV4dCh0aGlzLl9yb290UGF0aCk7XG5cdH0sXG5cblx0X2dldE9iamVjdENvbnRleHQ6IGZ1bmN0aW9uIChwYXRoOiBzdHJpbmcpOiBDb250ZXh0IHtcblx0XHRyZXR1cm4gdGhpcy5fb01vZGVsIS5iaW5kQ29udGV4dChwYXRoLCB1bmRlZmluZWQsIHtcblx0XHRcdCQkcGF0Y2hXaXRob3V0U2lkZUVmZmVjdHM6IHRydWUsXG5cdFx0XHQkJGdyb3VwSWQ6IFwiJGF1dG9cIixcblx0XHRcdCQkdXBkYXRlR3JvdXBJZDogXCIkYXV0b1wiXG5cdFx0fSkuZ2V0Qm91bmRDb250ZXh0KCk7XG5cdH0sXG5cblx0LyoqXG5cdCAqIENhbGxiYWNrIG9mIHRoZSBnaG9zdCBjbGllbnQgd2hlbiByZWNlaXZpbmcgYSBtZXNzYWdlIG9uIHRoZSB3ZWIgc29ja2V0LlxuXHQgKlxuXHQgKiBAcGFyYW0gb01lc3NhZ2UgVGhlIG1lc3NhZ2Vcblx0ICovXG5cdF9vbk1lc3NhZ2VSZWNlaXZlZDogZnVuY3Rpb24gKG9NZXNzYWdlOiBNZXNzYWdlKSB7XG5cdFx0b01lc3NhZ2UudXNlckFjdGlvbiA9IG9NZXNzYWdlLnVzZXJBY3Rpb24gfHwgb01lc3NhZ2UuY2xpZW50QWN0aW9uO1xuXHRcdHRoaXMuX2xhc3RSZWNlaXZlZE1lc3NhZ2UgPSBvTWVzc2FnZTtcblxuXHRcdGlmIChvTWVzc2FnZS51c2VyQWN0aW9uID09PSBBY3Rpdml0eS5Kb2luKSB7XG5cdFx0XHRicm9hZGNhc3RDb2xsYWJvcmF0aW9uTWVzc2FnZShcblx0XHRcdFx0QWN0aXZpdHkuSm9pbkVjaG8sXG5cdFx0XHRcdHRoaXMuX2xvY2tlZFByb3BlcnR5UGF0aCA/IGAke3RoaXMuX3Jvb3RQYXRofS8ke3RoaXMuX2xvY2tlZFByb3BlcnR5UGF0aH1gIDogdW5kZWZpbmVkLFxuXHRcdFx0XHR0aGlzLl9pbnRlcm5hbE1vZGVsIVxuXHRcdFx0KTtcblx0XHR9XG5cdH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IENvbGxhYm9yYXRpb25BUEk7XG4iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7Ozs7Ozs7O0VBYUEsTUFBTUEsZ0JBQWdCLEdBQUc7SUFDeEJDLG9CQUFvQixFQUFFQyxTQUFnQztJQUN0REMsU0FBUyxFQUFFLEVBQUU7SUFDYkMsT0FBTyxFQUFFRixTQUFtQztJQUM1Q0csbUJBQW1CLEVBQUUsRUFBRTtJQUN2QkMsY0FBYyxFQUFFSixTQUFr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
|
|
@@ -8,8 +8,8 @@ import type { Message } from "sap/fe/core/controllerextensions/collaboration/Col
|
|
|
8
8
|
import { Activity } from "sap/fe/core/controllerextensions/collaboration/CollaborationCommon";
|
|
9
9
|
import draft from "sap/fe/core/controllerextensions/editFlow/draft";
|
|
10
10
|
import JSONModel from "sap/ui/model/json/JSONModel";
|
|
11
|
+
import Context from "sap/ui/model/odata/v4/Context";
|
|
11
12
|
import type ODataModel from "sap/ui/model/odata/v4/ODataModel";
|
|
12
|
-
import type { V4Context } from "types/extension_types";
|
|
13
13
|
|
|
14
14
|
const CollaborationAPI = {
|
|
15
15
|
_lastReceivedMessage: undefined as Message | undefined,
|
|
@@ -25,7 +25,7 @@ const CollaborationAPI = {
|
|
|
25
25
|
* @param userID The ID of the user
|
|
26
26
|
* @param userName The name of the user
|
|
27
27
|
*/
|
|
28
|
-
enterDraft: function (oContext:
|
|
28
|
+
enterDraft: function (oContext: Context, userID: string, userName: string) {
|
|
29
29
|
const webSocketBaseURL: string = oContext.getModel().getMetaModel().getObject("/@com.sap.vocabularies.Common.v1.WebSocketBaseURL");
|
|
30
30
|
|
|
31
31
|
if (!webSocketBaseURL) {
|
|
@@ -53,7 +53,7 @@ const CollaborationAPI = {
|
|
|
53
53
|
);
|
|
54
54
|
|
|
55
55
|
this._rootPath = oContext.getPath();
|
|
56
|
-
this._oModel = oContext.getModel()
|
|
56
|
+
this._oModel = oContext.getModel();
|
|
57
57
|
},
|
|
58
58
|
|
|
59
59
|
/**
|
|
@@ -177,32 +177,21 @@ const CollaborationAPI = {
|
|
|
177
177
|
},
|
|
178
178
|
|
|
179
179
|
/**
|
|
180
|
-
* Simulates that the user has deleted
|
|
180
|
+
* Simulates that the user has deleted an object (child of draft root).
|
|
181
|
+
*
|
|
182
|
+
* @param objectPath The path of the object to delete
|
|
181
183
|
*/
|
|
182
|
-
|
|
184
|
+
deleteObject: function (objectPath: string) {
|
|
183
185
|
if (this._internalModel) {
|
|
184
|
-
const
|
|
185
|
-
let activeContext: V4Context;
|
|
186
|
+
const objectContext = this._getObjectContext(objectPath);
|
|
186
187
|
|
|
187
|
-
|
|
188
|
+
objectContext
|
|
188
189
|
.requestProperty("IsActiveEntity")
|
|
189
190
|
.then(() => {
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
.then((context: any) => {
|
|
193
|
-
activeContext = context;
|
|
194
|
-
return context.requestCanonicalPath();
|
|
191
|
+
objectContext.delete();
|
|
192
|
+
broadcastCollaborationMessage(Activity.Delete, objectPath, this._internalModel!);
|
|
195
193
|
})
|
|
196
|
-
.
|
|
197
|
-
return draft.deleteDraft(draftContext);
|
|
198
|
-
})
|
|
199
|
-
.then(() => {
|
|
200
|
-
(activeContext as any).delete();
|
|
201
|
-
broadcastCollaborationMessage(Activity.Delete, this._rootPath, this._internalModel!);
|
|
202
|
-
this._internalModel!.destroy();
|
|
203
|
-
this._internalModel = undefined;
|
|
204
|
-
})
|
|
205
|
-
.catch(function (err: any) {
|
|
194
|
+
.catch((err) => {
|
|
206
195
|
Log.error(err);
|
|
207
196
|
});
|
|
208
197
|
}
|
|
@@ -212,7 +201,11 @@ const CollaborationAPI = {
|
|
|
212
201
|
// Private methods
|
|
213
202
|
|
|
214
203
|
_getDraftContext: function (): any {
|
|
215
|
-
return this.
|
|
204
|
+
return this._getObjectContext(this._rootPath);
|
|
205
|
+
},
|
|
206
|
+
|
|
207
|
+
_getObjectContext: function (path: string): Context {
|
|
208
|
+
return this._oModel!.bindContext(path, undefined, {
|
|
216
209
|
$$patchWithoutSideEffects: true,
|
|
217
210
|
$$groupId: "$auto",
|
|
218
211
|
$$updateGroupId: "$auto"
|
|
@@ -203,53 +203,94 @@ sap.ui.define(
|
|
|
203
203
|
);
|
|
204
204
|
};
|
|
205
205
|
|
|
206
|
-
function
|
|
207
|
-
var
|
|
208
|
-
.isDialogElement()
|
|
209
|
-
.mustBeVisible(false)
|
|
210
|
-
.description(
|
|
211
|
-
Utils.formatMessage(
|
|
212
|
-
"Checking that the tab '{1}' on value help dialog '{0}' has state='{2}'",
|
|
213
|
-
oApiInstance.getIdentifier(),
|
|
214
|
-
sIdSuffix,
|
|
215
|
-
mState
|
|
216
|
-
)
|
|
217
|
-
),
|
|
218
|
-
oTabIdMatcher = FEBuilder.Matchers.id(RegExp(sIdSuffix + "$"));
|
|
206
|
+
function _checkIconTabBarBuilder(oValueHelpBuilder, idMatcher, mState) {
|
|
207
|
+
var bSuccess = true;
|
|
219
208
|
|
|
220
209
|
if (mState && mState.visible === false) {
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
210
|
+
oValueHelpBuilder
|
|
211
|
+
.hasChildren(
|
|
212
|
+
OpaBuilder.create(this).hasConditional(
|
|
213
|
+
function (oControl) {
|
|
214
|
+
// in the visible=false case, there should never be a sap.m.IconTabBar --> let test fail
|
|
215
|
+
// if a sap.m.IconTabBar is found, both tabs are visible (SearchSelect and DefineConditions)
|
|
216
|
+
if (oControl.isA("sap.m.IconTabBar")) {
|
|
217
|
+
bSuccess = false;
|
|
218
|
+
return true;
|
|
219
|
+
} else {
|
|
220
|
+
return false;
|
|
221
|
+
}
|
|
222
|
+
},
|
|
223
|
+
function (oSuccess) {
|
|
224
|
+
return false;
|
|
225
|
+
},
|
|
226
|
+
function (oElse) {
|
|
227
|
+
return true;
|
|
228
|
+
}
|
|
229
|
+
),
|
|
230
|
+
false
|
|
231
|
+
)
|
|
232
|
+
.check(function () {
|
|
233
|
+
return bSuccess;
|
|
234
|
+
});
|
|
225
235
|
} else {
|
|
226
|
-
|
|
236
|
+
oValueHelpBuilder.hasChildren(OpaBuilder.create(this).hasType("sap.m.IconTabFilter").has(idMatcher), false);
|
|
227
237
|
}
|
|
228
|
-
|
|
229
|
-
return oApiInstance.prepareResult(oBuilder.execute());
|
|
238
|
+
return oValueHelpBuilder;
|
|
230
239
|
}
|
|
231
240
|
|
|
232
241
|
/**
|
|
233
|
-
* Checks the <code>
|
|
242
|
+
* Checks the <code>Define conditions</code> tab in a value help dialog.
|
|
243
|
+
* Please be aware that the tab control of the toolbar is checked.
|
|
234
244
|
*
|
|
235
245
|
* @param {object} [mState] Defines the expected state of the filter bar
|
|
236
246
|
* @returns {object} The result of the {@link sap.ui.test.Opa5#waitFor} function, that can be used for chaining statements
|
|
237
247
|
* @public
|
|
238
248
|
*/
|
|
239
|
-
DialogValueHelpAssertions.prototype.
|
|
240
|
-
|
|
241
|
-
|
|
249
|
+
DialogValueHelpAssertions.prototype.iCheckDefineConditions = function (mState) {
|
|
250
|
+
var sIdSuffix = "-ITB--header-1",
|
|
251
|
+
idMatcher = FEBuilder.Matchers.id(RegExp(sIdSuffix + "$")),
|
|
252
|
+
oBuilder = _checkIconTabBarBuilder(this.getBuilder(), idMatcher, mState);
|
|
242
253
|
|
|
254
|
+
return this.prepareResult(
|
|
255
|
+
oBuilder
|
|
256
|
+
.description(
|
|
257
|
+
Utils.formatMessage(
|
|
258
|
+
"Checking that the Define Conditions tab '{1}' on value help dialog '{0}' has state='{2}'",
|
|
259
|
+
this.getIdentifier(),
|
|
260
|
+
sIdSuffix,
|
|
261
|
+
mState
|
|
262
|
+
)
|
|
263
|
+
)
|
|
264
|
+
.execute()
|
|
265
|
+
);
|
|
266
|
+
};
|
|
243
267
|
/**
|
|
244
|
-
* Checks the <code>
|
|
268
|
+
* Checks the <code>Search and Select</code> tab in a value help dialog.
|
|
269
|
+
* Please be aware that the tab control of the toolbar is checked.
|
|
245
270
|
*
|
|
246
271
|
* @param {object} [mState] Defines the expected state of the filter bar
|
|
247
272
|
* @returns {object} The result of the {@link sap.ui.test.Opa5#waitFor} function, that can be used for chaining statements
|
|
248
273
|
* @public
|
|
249
274
|
*/
|
|
250
|
-
DialogValueHelpAssertions.prototype.
|
|
251
|
-
|
|
275
|
+
DialogValueHelpAssertions.prototype.iCheckSearchAndSelect = function (mState) {
|
|
276
|
+
var sIdSuffix = "-ITB--header-0",
|
|
277
|
+
idMatcher = FEBuilder.Matchers.id(RegExp(sIdSuffix + "$")),
|
|
278
|
+
oBuilder = _checkIconTabBarBuilder(this.getBuilder(), idMatcher, mState);
|
|
279
|
+
|
|
280
|
+
return this.prepareResult(
|
|
281
|
+
oBuilder
|
|
282
|
+
.description(
|
|
283
|
+
Utils.formatMessage(
|
|
284
|
+
"Checking that the Search and Select tab '{1}' on value help dialog '{0}' has state='{2}'",
|
|
285
|
+
this.getIdentifier(),
|
|
286
|
+
sIdSuffix,
|
|
287
|
+
mState
|
|
288
|
+
)
|
|
289
|
+
)
|
|
290
|
+
.execute()
|
|
291
|
+
);
|
|
252
292
|
};
|
|
293
|
+
|
|
253
294
|
/**
|
|
254
295
|
* Checks the dialog.
|
|
255
296
|
*
|
|
@@ -91,9 +91,9 @@ sap.ui.define(
|
|
|
91
91
|
|
|
92
92
|
/**
|
|
93
93
|
* Checks if the focus is on the filter field.
|
|
94
|
-
|
|
94
|
+
*
|
|
95
95
|
* @param {string} [sFilterFieldLabel] The field label
|
|
96
|
-
* @returns {object} The result of the {@link
|
|
96
|
+
* @returns {object} The result of the {@link sa p.ui.test.Opa5#waitFor} function, to be used for chained statements
|
|
97
97
|
* @public
|
|
98
98
|
*/
|
|
99
99
|
|
|
@@ -109,7 +109,7 @@ sap.ui.define(
|
|
|
109
109
|
|
|
110
110
|
/**
|
|
111
111
|
* Checks if the focus is on the Go Button of the filter bar.
|
|
112
|
-
|
|
112
|
+
*
|
|
113
113
|
* @returns {object} The result of the {@link sap.ui.test.Opa5#waitFor} function, to be used for chained statements
|
|
114
114
|
* @public
|
|
115
115
|
*/
|
|
@@ -55,17 +55,17 @@ sap.ui.define(
|
|
|
55
55
|
// we need to do this to be able to retrieve the child of the FormElementWrapper when its child is not visible
|
|
56
56
|
return _getMainControls(oContent.getContent());
|
|
57
57
|
}
|
|
58
|
-
if (oContent.isA("sap.fe.
|
|
58
|
+
if (oContent.isA("sap.fe.macros.controls.FileWrapper")) {
|
|
59
59
|
return _getMainControls(oContent.getAvatar());
|
|
60
60
|
}
|
|
61
|
-
if (oContent.isA("sap.fe.
|
|
61
|
+
if (oContent.isA("sap.fe.macros.controls.FieldWrapper")) {
|
|
62
62
|
if (oContent.getEditMode() === "Display") {
|
|
63
63
|
return _getMainControls(oContent.getContentDisplay());
|
|
64
64
|
} else {
|
|
65
65
|
return _getMainControls(oContent.getContentEdit()[0]);
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
-
if (oContent.isA("sap.fe.
|
|
68
|
+
if (oContent.isA("sap.fe.macros.controls.ConditionalWrapper")) {
|
|
69
69
|
var oLink = oContent.getCondition() ? oContent.getContentTrue() : oContent.getContentFalse();
|
|
70
70
|
return _getMainControls(oLink);
|
|
71
71
|
}
|
|
@@ -95,6 +95,15 @@ sap.ui.define(
|
|
|
95
95
|
return oMdcTable ? _getColumnIndex(vColumn, oMdcTable) : -1;
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
+
function _getTableForSelection(oRow) {
|
|
99
|
+
var oUIControl = oRow,
|
|
100
|
+
sTableType = oRow.getMetadata().getName() === "sap.ui.table.Row" ? "sap.ui.table.Table" : "sap.ui.mdc.Table";
|
|
101
|
+
while (oUIControl && !oUIControl.isA(sTableType)) {
|
|
102
|
+
oUIControl = oUIControl._feMdcTableWrapper || oUIControl.getParent();
|
|
103
|
+
}
|
|
104
|
+
return oUIControl;
|
|
105
|
+
}
|
|
106
|
+
|
|
98
107
|
function _getCell(oRow, iColumn) {
|
|
99
108
|
var oCell;
|
|
100
109
|
if (!oRow) {
|
|
@@ -415,7 +424,7 @@ sap.ui.define(
|
|
|
415
424
|
|
|
416
425
|
TableBuilder.prototype.doSelect = function (vRowMatcher) {
|
|
417
426
|
return this.doOnRows(vRowMatcher, function (oRow) {
|
|
418
|
-
var oTable = oRow
|
|
427
|
+
var oTable = _getTableForSelection(oRow);
|
|
419
428
|
// if several rows are selected, the table may be blocked by other events, e.g. tableRuntime.js --> setContexts
|
|
420
429
|
if (oTable.getBusy()) {
|
|
421
430
|
oTable.setBusy(false);
|
|
@@ -1157,7 +1166,7 @@ sap.ui.define(
|
|
|
1157
1166
|
oCellControl = _getCell(oRow, iColumn);
|
|
1158
1167
|
|
|
1159
1168
|
// if the cellControl is a FieldWrapper replace it by its active control (edit or display)
|
|
1160
|
-
if (oCellControl.isA("sap.fe.
|
|
1169
|
+
if (oCellControl.isA("sap.fe.macros.controls.FieldWrapper")) {
|
|
1161
1170
|
oCellControl =
|
|
1162
1171
|
oCellControl.getEditMode() === "Display"
|
|
1163
1172
|
? oCellControl.getContentDisplay()
|
|
@@ -1169,7 +1178,7 @@ sap.ui.define(
|
|
|
1169
1178
|
? oCellControl.getItems()[0].getContent().getContentDisplay()
|
|
1170
1179
|
: oCellControl.getItems()[0].getContent().getContentEdit()[0];
|
|
1171
1180
|
}
|
|
1172
|
-
if (oCellControl.isA("sap.fe.
|
|
1181
|
+
if (oCellControl.isA("sap.fe.macros.controls.ConditionalWrapper")) {
|
|
1173
1182
|
oCellControl = oCellControl.getCondition() ? oCellControl.getContentTrue() : oCellControl.getContentFalse();
|
|
1174
1183
|
}
|
|
1175
1184
|
|
|
@@ -16,7 +16,9 @@ sap.ui.define([], function () {
|
|
|
16
16
|
/**
|
|
17
17
|
* List of error message patterns that are always accepted.
|
|
18
18
|
*/
|
|
19
|
-
const GLOBALLY_ACCEPTED_ERRORS = ["failed to load JavaScript resource: sap/esh/search/ui/i18n.js"
|
|
19
|
+
const GLOBALLY_ACCEPTED_ERRORS = ["failed to load JavaScript resource: sap/esh/search/ui/i18n.js",
|
|
20
|
+
// shell
|
|
21
|
+
"Custom attributes are not exist" // accept console error temporarily - remove as soon as unified shell ticket is resolved
|
|
20
22
|
].map(wrapPatterns);
|
|
21
23
|
let ConsoleErrorChecker = /*#__PURE__*/function () {
|
|
22
24
|
function ConsoleErrorChecker(window) {
|
|
@@ -191,4 +193,4 @@ sap.ui.define([], function () {
|
|
|
191
193
|
}();
|
|
192
194
|
return ConsoleErrorChecker.getInstance(window);
|
|
193
195
|
}, false);
|
|
194
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ3cmFwUGF0dGVybnMiLCJwYXR0ZXJuIiwiUmVnRXhwIiwibWVzc2FnZSIsIm1hdGNoIiwiaW5jbHVkZXMiLCJHTE9CQUxMWV9BQ0NFUFRFRF9FUlJPUlMiLCJtYXAiLCJDb25zb2xlRXJyb3JDaGVja2VyIiwid2luZG93IiwibWF0Y2hlcnMiLCJtZXNzYWdlcyIsIm9ic2VydmVyIiwiTXV0YXRpb25PYnNlcnZlciIsIm11dGF0aW9ucyIsIm9wYUZyYW1lIiwicmVkdWNlIiwiaUZyYW1lIiwibXV0YXRpb24iLCJub2RlIiwiQXJyYXkiLCJmcm9tIiwiYWRkZWROb2RlcyIsIkVsZW1lbnQiLCJlbGVtZW50IiwicXVlcnlTZWxlY3RvciIsIkhUTUxJRnJhbWVFbGVtZW50IiwiY29udGVudFdpbmRvdyIsInByZXBhcmVXaW5kb3ciLCJRVW5pdCIsIm1vZHVsZVN0YXJ0Iiwib2JzZXJ2ZSIsImRvY3VtZW50IiwiYm9keSIsImNoaWxkTGlzdCIsIm1vZHVsZURvbmUiLCJkaXNjb25uZWN0IiwidGVzdFN0YXJ0IiwicmVzZXQiLCJsb2ciLCJoYW5kbGVGYWlsZWRNZXNzYWdlcyIsImthcm1hIiwiX19rYXJtYV9fIiwic2VhcmNoIiwiVVJMU2VhcmNoUGFyYW1zIiwibG9jYXRpb24iLCJ1cmxQYXJhbSIsImdldCIsImlzU3RyaWN0IiwiY29uZmlnIiwidWk1Iiwic3RyaWN0Y29uc29sZWVycm9ycyIsImZhaWxlZE1lc3NhZ2VzIiwibGVuZ3RoIiwiYXNzZXJ0IiwicHVzaFJlc3VsdCIsInJlc3VsdCIsInNvdXJjZSIsImFjdHVhbCIsImV4cGVjdGVkIiwic2V0QWNjZXB0ZWRFcnJvclBhdHRlcm5zIiwicGF0dGVybnMiLCJjb25jYXQiLCJjaGVja0FuZExvZyIsInR5cGUiLCJkYXRhIiwibWVzc2FnZVRleHQiLCJpc0FsbG93ZWQiLCJzb21lIiwibWF0Y2hlciIsInB1c2giLCJ3cmFwcGVkRGF0YSIsImQiLCJjb25zb2xlIiwicGF0Y2hDb25zb2xlTWV0aG9kIiwibWV0aG9kIiwiZm5PcmlnaW5hbCIsImFwcGx5IiwiY29uZGl0aW9uIiwiZmlyc3QiLCJ1bnNoaWZ0IiwiZXJyb3IiLCJvblByb21pc2VSZWplY3Rpb24iLCJldmVudCIsInJlYXNvbiIsInN0YWNrIiwib25FcnJvciIsImZpbGVuYW1lIiwiYWRkRXZlbnRMaXN0ZW5lciIsImJpbmQiLCJwYXNzaXZlIiwiZ2V0SW5zdGFuY2UiLCJzYXBGRUNvbnNvbGVFcnJvckNoZWNrZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkNvbnNvbGVFcnJvckNoZWNrZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBCcm93c2VyQ29uc29sZUxvZ09wdGlvbnMgfSBmcm9tIFwia2FybWFcIjtcblxudHlwZSBNZXNzYWdlTWF0Y2hlckZ1bmN0aW9uID0gKG1lc3NhZ2U6IHN0cmluZykgPT4gYm9vbGVhbjtcbnR5cGUgS2FybWEgPSB7XG5cdGxvZzogKGxldmVsOiBCcm93c2VyQ29uc29sZUxvZ09wdGlvbnNbXCJsZXZlbFwiXSwgLi4uZGF0YTogYW55W10pID0+IHZvaWQ7XG5cdGNvbmZpZzoge1xuXHRcdHVpNT86IHtcblx0XHRcdGNvbmZpZzoge1xuXHRcdFx0XHRzdHJpY3Rjb25zb2xlZXJyb3JzPzogYm9vbGVhbjsgLy8gS2FybWEgb3B0aW9ucyBhcmUgYWxsIGxvd2VyY2FzZSBhdCBydW50aW1lIVxuXHRcdFx0fTtcblx0XHR9O1xuXHR9O1xufTtcblxuZnVuY3Rpb24gd3JhcFBhdHRlcm5zKHBhdHRlcm46IFJlZ0V4cCB8IHN0cmluZyk6IE1lc3NhZ2VNYXRjaGVyRnVuY3Rpb24ge1xuXHRpZiAocGF0dGVybiBpbnN0YW5jZW9mIFJlZ0V4cCkge1xuXHRcdHJldHVybiAobWVzc2FnZSkgPT4gbWVzc2FnZS5tYXRjaChwYXR0ZXJuKSAhPT0gbnVsbDtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gKG1lc3NhZ2UpID0+IG1lc3NhZ2UuaW5jbHVkZXMocGF0dGVybik7XG5cdH1cbn1cblxuLyoqXG4gKiBMaXN0IG9mIGVycm9yIG1lc3NhZ2UgcGF0dGVybnMgdGhhdCBhcmUgYWx3YXlzIGFjY2VwdGVkLlxuICovXG5jb25zdCBHTE9CQUxMWV9BQ0NFUFRFRF9FUlJPUlMgPSBbXG5cdFwiZmFpbGVkIHRvIGxvYWQgSmF2YVNjcmlwdCByZXNvdXJjZTogc2FwL2VzaC9zZWFyY2gvdWkvaTE4bi5qc1wiIC8vIHNoZWxsXG5dLm1hcCh3cmFwUGF0dGVybnMpO1xuXG5jbGFzcyBDb25zb2xlRXJyb3JDaGVja2VyIHtcblx0cHJpdmF0ZSBtYXRjaGVyczogTWVzc2FnZU1hdGNoZXJGdW5jdGlvbltdID0gW107XG5cdHByaXZhdGUgbWVzc2FnZXM6IHN0cmluZ1tdID0gW107XG5cdHByaXZhdGUgcmVhZG9ubHkga2FybWE6IEthcm1hIHwgdW5kZWZpbmVkO1xuXHRwcml2YXRlIHJlYWRvbmx5IGlzU3RyaWN0OiBib29sZWFuO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgb2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcigobXV0YXRpb25zKSA9PiB7XG5cdFx0Y29uc3Qgb3BhRnJhbWUgPSBtdXRhdGlvbnMucmVkdWNlKChpRnJhbWU6IEhUTUxJRnJhbWVFbGVtZW50IHwgbnVsbCwgbXV0YXRpb246IE11dGF0aW9uUmVjb3JkKSA9PiB7XG5cdFx0XHRpZiAoaUZyYW1lICE9PSBudWxsKSB7XG5cdFx0XHRcdHJldHVybiBpRnJhbWU7XG5cdFx0XHR9XG5cblx0XHRcdGZvciAoY29uc3Qgbm9kZSBvZiBBcnJheS5mcm9tKG11dGF0aW9uLmFkZGVkTm9kZXMpKSB7XG5cdFx0XHRcdGlmIChub2RlIGluc3RhbmNlb2YgRWxlbWVudCkge1xuXHRcdFx0XHRcdGNvbnN0IGVsZW1lbnQgPSBub2RlLnF1ZXJ5U2VsZWN0b3IoXCIjT3BhRnJhbWVcIik7XG5cdFx0XHRcdFx0aWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBIVE1MSUZyYW1lRWxlbWVudCAmJiBlbGVtZW50LmNvbnRlbnRXaW5kb3cpIHtcblx0XHRcdFx0XHRcdHJldHVybiBlbGVtZW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gaUZyYW1lO1xuXHRcdH0sIG51bGwpO1xuXG5cdFx0aWYgKG9wYUZyYW1lICYmIG9wYUZyYW1lLmNvbnRlbnRXaW5kb3cpIHtcblx0XHRcdHRoaXMucHJlcGFyZVdpbmRvdyhvcGFGcmFtZS5jb250ZW50V2luZG93KTtcblx0XHR9XG5cdH0pO1xuXG5cdGNvbnN0cnVjdG9yKHdpbmRvdzogV2luZG93ICYgeyBfX2thcm1hX18/OiBLYXJtYSB9KSB7XG5cdFx0UVVuaXQubW9kdWxlU3RhcnQoKCkgPT4ge1xuXHRcdFx0dGhpcy5vYnNlcnZlci5vYnNlcnZlKHdpbmRvdy5kb2N1bWVudC5ib2R5LCB7IGNoaWxkTGlzdDogdHJ1ZSB9KTtcblx0XHR9KTtcblxuXHRcdFFVbml0Lm1vZHVsZURvbmUoKCkgPT4ge1xuXHRcdFx0dGhpcy5vYnNlcnZlci5kaXNjb25uZWN0KCk7XG5cdFx0fSk7XG5cblx0XHRRVW5pdC50ZXN0U3RhcnQoKCkgPT4ge1xuXHRcdFx0dGhpcy5yZXNldCgpO1xuXHRcdH0pO1xuXG5cdFx0UVVuaXQubG9nKCgpID0+IHtcblx0XHRcdHRoaXMuaGFuZGxlRmFpbGVkTWVzc2FnZXMoKTtcblx0XHR9KTtcblxuXHRcdHRoaXMua2FybWEgPSB3aW5kb3cuX19rYXJtYV9fO1xuXG5cdFx0Ly8gZWl0aGVyIGdvIGZvciBLYXJtYSBjb25maWcgb3B0aW9uIFwidWk1LmNvbmZpZy5zdHJpY3RDb25zb2xlRXJyb3JzXCIgb3IgdXNlIFVSTCBxdWVyeSBwYXJhbWV0ZXIgXCJzdHJpY3RcIlxuXHRcdGNvbnN0IHNlYXJjaCA9IG5ldyBVUkxTZWFyY2hQYXJhbXMod2luZG93LmxvY2F0aW9uLnNlYXJjaCk7XG5cdFx0Y29uc3QgdXJsUGFyYW0gPSBzZWFyY2guZ2V0KFwic3RyaWN0Q29uc29sZUVycm9yc1wiKTtcblx0XHRpZiAodXJsUGFyYW0gIT09IG51bGwpIHtcblx0XHRcdHRoaXMuaXNTdHJpY3QgPSB1cmxQYXJhbSA9PT0gXCJ0cnVlXCI7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMuaXNTdHJpY3QgPSB0aGlzLmthcm1hPy5jb25maWcudWk1Py5jb25maWcuc3RyaWN0Y29uc29sZWVycm9ycyA/PyBmYWxzZTtcblx0XHR9XG5cblx0XHR0aGlzLnJlc2V0KCk7XG5cdH1cblxuXHRwcml2YXRlIGhhbmRsZUZhaWxlZE1lc3NhZ2VzKCkge1xuXHRcdGNvbnN0IGZhaWxlZE1lc3NhZ2VzID0gdGhpcy5tZXNzYWdlcztcblx0XHR0aGlzLm1lc3NhZ2VzID0gW107XG5cblx0XHRpZiAoZmFpbGVkTWVzc2FnZXMubGVuZ3RoID4gMCkge1xuXHRcdFx0UVVuaXQuYXNzZXJ0LnB1c2hSZXN1bHQoe1xuXHRcdFx0XHRyZXN1bHQ6IGZhbHNlLFxuXHRcdFx0XHRzb3VyY2U6IFwiRkUgQ29uc29sZSBMb2cgQ2hlY2tcIixcblx0XHRcdFx0bWVzc2FnZTogYFRoZXJlIHdlcmUgJHtmYWlsZWRNZXNzYWdlcy5sZW5ndGh9IHVuZXhwZWN0ZWQgY29uc29sZSBlcnJvcnNgLFxuXHRcdFx0XHRhY3R1YWw6IGZhaWxlZE1lc3NhZ2VzLFxuXHRcdFx0XHRleHBlY3RlZDogW11cblx0XHRcdH0pO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgcmVzZXQoKSB7XG5cdFx0dGhpcy5tZXNzYWdlcyA9IFtdO1xuXG5cdFx0Ly8gdGhpcyBzZXRzIHRoZSBkZWZhdWx0IHRvIGFwcGx5IGlmIG5vIGFsbG93ZWQgcGF0dGVybnMgYXJlIHNldCB2aWEgc2V0QWNjZXB0ZWRFcnJvclBhdHRlcm5zKCkuXG5cdFx0aWYgKHRoaXMuaXNTdHJpY3QpIHtcblx0XHRcdHRoaXMubWF0Y2hlcnMgPSBHTE9CQUxMWV9BQ0NFUFRFRF9FUlJPUlM7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMubWF0Y2hlcnMgPSBbKCkgPT4gdHJ1ZV07XG5cdFx0fVxuXHR9XG5cblx0c2V0QWNjZXB0ZWRFcnJvclBhdHRlcm5zKHBhdHRlcm5zPzogKFJlZ0V4cCB8IHN0cmluZylbXSkge1xuXHRcdGlmICghcGF0dGVybnMgfHwgcGF0dGVybnMubGVuZ3RoID09PSAwKSB7XG5cdFx0XHR0aGlzLm1hdGNoZXJzID0gR0xPQkFMTFlfQUNDRVBURURfRVJST1JTO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLm1hdGNoZXJzID0gcGF0dGVybnMubWFwKHdyYXBQYXR0ZXJucykuY29uY2F0KEdMT0JBTExZX0FDQ0VQVEVEX0VSUk9SUyk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBjaGVja0FuZExvZyh0eXBlOiBCcm93c2VyQ29uc29sZUxvZ09wdGlvbnNbXCJsZXZlbFwiXSwgLi4uZGF0YTogYW55W10pIHtcblx0XHQvLyBvbmx5IGNoZWNrIHRoZSBlcnJvciBtZXNzYWdlc1xuXHRcdGlmICh0eXBlID09PSBcImVycm9yXCIpIHtcblx0XHRcdGNvbnN0IG1lc3NhZ2VUZXh0ID0gZGF0YVswXTtcblx0XHRcdGNvbnN0IGlzQWxsb3dlZCA9IHRoaXMubWF0Y2hlcnMuc29tZSgobWF0Y2hlcikgPT4gbWF0Y2hlcihtZXNzYWdlVGV4dCkpO1xuXHRcdFx0aWYgKCFpc0FsbG93ZWQpIHtcblx0XHRcdFx0dGhpcy5tZXNzYWdlcy5wdXNoKG1lc3NhZ2VUZXh0KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRpZiAodGhpcy5rYXJtYSkge1xuXHRcdFx0Ly8gd3JhcCB0aGUgZGF0YSB0byBmYWNpbGl0YXRlIHBhcnNpbmcgaW4gdGhlIGJhY2tlbmRcblx0XHRcdGNvbnN0IHdyYXBwZWREYXRhID0gZGF0YS5tYXAoKGQpID0+IFtkXSk7XG5cdFx0XHR0aGlzLmthcm1hLmxvZyh0eXBlLCB3cmFwcGVkRGF0YSk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBwcmVwYXJlV2luZG93KHdpbmRvdzogV2luZG93KSB7XG5cdFx0Y29uc3QgY29uc29sZTogQ29uc29sZSA9ICh3aW5kb3cgYXMgYW55KS5jb25zb2xlO1xuXG5cdFx0Ly8gY2FwdHVyZSBjb25zb2xlLmxvZygpLCBjb25zb2xlLmRlYnVnKCksIGV0Yy5cblx0XHRjb25zdCBwYXRjaENvbnNvbGVNZXRob2QgPSAobWV0aG9kOiBcImxvZ1wiIHwgXCJpbmZvXCIgfCBcIndhcm5cIiB8IFwiZXJyb3JcIiB8IFwiZGVidWdcIikgPT4ge1xuXHRcdFx0Y29uc3QgZm5PcmlnaW5hbCA9IGNvbnNvbGVbbWV0aG9kXTtcblx0XHRcdGNvbnNvbGVbbWV0aG9kXSA9ICguLi5kYXRhOiBhbnlbXSk6IHZvaWQgPT4ge1xuXHRcdFx0XHR0aGlzLmNoZWNrQW5kTG9nKG1ldGhvZCwgLi4uZGF0YSk7XG5cdFx0XHRcdHJldHVybiBmbk9yaWdpbmFsLmFwcGx5KGNvbnNvbGUsIGRhdGEpO1xuXHRcdFx0fTtcblx0XHR9O1xuXG5cdFx0cGF0Y2hDb25zb2xlTWV0aG9kKFwibG9nXCIpO1xuXHRcdHBhdGNoQ29uc29sZU1ldGhvZChcImRlYnVnXCIpO1xuXHRcdHBhdGNoQ29uc29sZU1ldGhvZChcImluZm9cIik7XG5cdFx0cGF0Y2hDb25zb2xlTWV0aG9kKFwid2FyblwiKTtcblx0XHRwYXRjaENvbnNvbGVNZXRob2QoXCJlcnJvclwiKTtcblxuXHRcdC8vIGNhcHR1cmUgY29uc29sZS5hc3NlcnQoKVxuXHRcdC8vIHNlZSBodHRwczovL2NvbnNvbGUuc3BlYy53aGF0d2cub3JnLyNhc3NlcnRcblx0XHRjb25zb2xlLmFzc2VydCA9IGZ1bmN0aW9uIChjb25kaXRpb24gPSBmYWxzZSwgLi4uZGF0YTogYW55W10pIHtcblx0XHRcdGlmIChjb25kaXRpb24pIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRjb25zdCBtZXNzYWdlID0gXCJBc3NlcnRpb24gZmFpbGVkXCI7XG5cdFx0XHRpZiAoZGF0YS5sZW5ndGggPT09IDApIHtcblx0XHRcdFx0ZGF0YS5wdXNoKG1lc3NhZ2UpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0bGV0IGZpcnN0ID0gZGF0YVswXTtcblx0XHRcdFx0aWYgKHR5cGVvZiBmaXJzdCAhPT0gXCJzdHJpbmdcIikge1xuXHRcdFx0XHRcdGRhdGEudW5zaGlmdChtZXNzYWdlKTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRmaXJzdCA9IGAke21lc3NhZ2V9OiAke2ZpcnN0fWA7XG5cdFx0XHRcdFx0ZGF0YVswXSA9IGZpcnN0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGNvbnNvbGUuZXJyb3IoLi4uZGF0YSk7XG5cdFx0fTtcblxuXHRcdC8vIGNhcHR1cmUgZXJyb3JzXG5cdFx0ZnVuY3Rpb24gb25Qcm9taXNlUmVqZWN0aW9uKHRoaXM6IENvbnNvbGVFcnJvckNoZWNrZXIsIGV2ZW50OiBQcm9taXNlUmVqZWN0aW9uRXZlbnQpIHtcblx0XHRcdGNvbnN0IG1lc3NhZ2UgPSBgVU5IQU5ETEVEIFBST01JU0UgUkVKRUNUSU9OOiAke2V2ZW50LnJlYXNvbn1gO1xuXHRcdFx0dGhpcy5jaGVja0FuZExvZyhcImVycm9yXCIsIG1lc3NhZ2UsIGV2ZW50LnJlYXNvbj8uc3RhY2spO1xuXHRcdH1cblxuXHRcdGZ1bmN0aW9uIG9uRXJyb3IodGhpczogQ29uc29sZUVycm9yQ2hlY2tlciwgZXZlbnQ6IEVycm9yRXZlbnQpIHtcblx0XHRcdGNvbnN0IG1lc3NhZ2UgPSBldmVudC5tZXNzYWdlO1xuXHRcdFx0dGhpcy5jaGVja0FuZExvZyhcImVycm9yXCIsIG1lc3NhZ2UsIGV2ZW50LmZpbGVuYW1lKTtcblx0XHR9XG5cblx0XHR3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcImVycm9yXCIsIG9uRXJyb3IuYmluZCh0aGlzKSwgeyBwYXNzaXZlOiB0cnVlIH0pO1xuXHRcdHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwidW5oYW5kbGVkcmVqZWN0aW9uXCIsIG9uUHJvbWlzZVJlamVjdGlvbi5iaW5kKHRoaXMpLCB7IHBhc3NpdmU6IHRydWUgfSk7XG5cdH1cblxuXHRzdGF0aWMgZ2V0SW5zdGFuY2Uod2luZG93OiBXaW5kb3cgJiB7IHNhcEZFQ29uc29sZUVycm9yQ2hlY2tlcj86IENvbnNvbGVFcnJvckNoZWNrZXIgfSk6IENvbnNvbGVFcnJvckNoZWNrZXIge1xuXHRcdC8vIHRoZSBnbG9iYWwgaW5zdGFuY2UgaXMgbmVlZGVkIHRvIHN1cHBvcnQgbXVsdGlwbGUgdGVzdHMgaW4gYSByb3cgKGluIEthcm1hKVxuXHRcdGlmICghd2luZG93LnNhcEZFQ29uc29sZUVycm9yQ2hlY2tlcikge1xuXHRcdFx0d2luZG93LnNhcEZFQ29uc29sZUVycm9yQ2hlY2tlciA9IG5ldyBDb25zb2xlRXJyb3JDaGVja2VyKHdpbmRvdyk7XG5cdFx0fVxuXHRcdHJldHVybiB3aW5kb3cuc2FwRkVDb25zb2xlRXJyb3JDaGVja2VyO1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IENvbnNvbGVFcnJvckNoZWNrZXIuZ2V0SW5zdGFuY2Uod2luZG93KTtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTs7OztFQWNBLFNBQVNBLFlBQVksQ0FBQ0MsT0FBd0IsRUFBMEI7SUFDdkUsSUFBSUEsT0FBTyxZQUFZQyxNQUFNLEVBQUU7TUFDOUIsT0FBUUMsT0FBTyxJQUFLQSxPQUFPLENBQUNDLEtBQUssQ0FBQ0gsT0FBTyxDQUFDLEtBQUssSUFBSTtJQUNwRCxDQUFDLE1BQU07TUFDTixPQUFRRSxPQUFPLElBQUtBLE9BQU8sQ0FBQ0UsUUFBUSxDQUFDSixPQUFPLENBQUM7SUFDOUM7RUFDRDs7RUFFQTtBQUNBO0FBQ0E7RUFDQSxNQUFNSyx3QkFBd0IsR0FBRyxDQUNoQywrREFBK0QsQ0FBQztFQUFBLENBQ2hFLENBQUNDLEdBQUcsQ0FBQ1AsWUFBWSxDQUFDO0VBQUMsSUFFZFEsbUJBQW1CO0lBNkJ4Qiw2QkFBWUMsTUFBc0MsRUFBRTtNQUFBLEtBNUI1Q0MsUUFBUSxHQUE2QixFQUFFO01BQUEsS0FDdkNDLFFBQVEsR0FBYSxFQUFFO01BQUEsS0FJZEMsUUFBUSxHQUFHLElBQUlDLGdCQUFnQixDQUFFQyxTQUFTLElBQUs7UUFDL0QsTUFBTUMsUUFBUSxHQUFHRCxTQUFT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
|
|
196
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ3cmFwUGF0dGVybnMiLCJwYXR0ZXJuIiwiUmVnRXhwIiwibWVzc2FnZSIsIm1hdGNoIiwiaW5jbHVkZXMiLCJHTE9CQUxMWV9BQ0NFUFRFRF9FUlJPUlMiLCJtYXAiLCJDb25zb2xlRXJyb3JDaGVja2VyIiwid2luZG93IiwibWF0Y2hlcnMiLCJtZXNzYWdlcyIsIm9ic2VydmVyIiwiTXV0YXRpb25PYnNlcnZlciIsIm11dGF0aW9ucyIsIm9wYUZyYW1lIiwicmVkdWNlIiwiaUZyYW1lIiwibXV0YXRpb24iLCJub2RlIiwiQXJyYXkiLCJmcm9tIiwiYWRkZWROb2RlcyIsIkVsZW1lbnQiLCJlbGVtZW50IiwicXVlcnlTZWxlY3RvciIsIkhUTUxJRnJhbWVFbGVtZW50IiwiY29udGVudFdpbmRvdyIsInByZXBhcmVXaW5kb3ciLCJRVW5pdCIsIm1vZHVsZVN0YXJ0Iiwib2JzZXJ2ZSIsImRvY3VtZW50IiwiYm9keSIsImNoaWxkTGlzdCIsIm1vZHVsZURvbmUiLCJkaXNjb25uZWN0IiwidGVzdFN0YXJ0IiwicmVzZXQiLCJsb2ciLCJoYW5kbGVGYWlsZWRNZXNzYWdlcyIsImthcm1hIiwiX19rYXJtYV9fIiwic2VhcmNoIiwiVVJMU2VhcmNoUGFyYW1zIiwibG9jYXRpb24iLCJ1cmxQYXJhbSIsImdldCIsImlzU3RyaWN0IiwiY29uZmlnIiwidWk1Iiwic3RyaWN0Y29uc29sZWVycm9ycyIsImZhaWxlZE1lc3NhZ2VzIiwibGVuZ3RoIiwiYXNzZXJ0IiwicHVzaFJlc3VsdCIsInJlc3VsdCIsInNvdXJjZSIsImFjdHVhbCIsImV4cGVjdGVkIiwic2V0QWNjZXB0ZWRFcnJvclBhdHRlcm5zIiwicGF0dGVybnMiLCJjb25jYXQiLCJjaGVja0FuZExvZyIsInR5cGUiLCJkYXRhIiwibWVzc2FnZVRleHQiLCJpc0FsbG93ZWQiLCJzb21lIiwibWF0Y2hlciIsInB1c2giLCJ3cmFwcGVkRGF0YSIsImQiLCJjb25zb2xlIiwicGF0Y2hDb25zb2xlTWV0aG9kIiwibWV0aG9kIiwiZm5PcmlnaW5hbCIsImFwcGx5IiwiY29uZGl0aW9uIiwiZmlyc3QiLCJ1bnNoaWZ0IiwiZXJyb3IiLCJvblByb21pc2VSZWplY3Rpb24iLCJldmVudCIsInJlYXNvbiIsInN0YWNrIiwib25FcnJvciIsImZpbGVuYW1lIiwiYWRkRXZlbnRMaXN0ZW5lciIsImJpbmQiLCJwYXNzaXZlIiwiZ2V0SW5zdGFuY2UiLCJzYXBGRUNvbnNvbGVFcnJvckNoZWNrZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkNvbnNvbGVFcnJvckNoZWNrZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBCcm93c2VyQ29uc29sZUxvZ09wdGlvbnMgfSBmcm9tIFwia2FybWFcIjtcblxudHlwZSBNZXNzYWdlTWF0Y2hlckZ1bmN0aW9uID0gKG1lc3NhZ2U6IHN0cmluZykgPT4gYm9vbGVhbjtcbnR5cGUgS2FybWEgPSB7XG5cdGxvZzogKGxldmVsOiBCcm93c2VyQ29uc29sZUxvZ09wdGlvbnNbXCJsZXZlbFwiXSwgLi4uZGF0YTogYW55W10pID0+IHZvaWQ7XG5cdGNvbmZpZzoge1xuXHRcdHVpNT86IHtcblx0XHRcdGNvbmZpZzoge1xuXHRcdFx0XHRzdHJpY3Rjb25zb2xlZXJyb3JzPzogYm9vbGVhbjsgLy8gS2FybWEgb3B0aW9ucyBhcmUgYWxsIGxvd2VyY2FzZSBhdCBydW50aW1lIVxuXHRcdFx0fTtcblx0XHR9O1xuXHR9O1xufTtcblxuZnVuY3Rpb24gd3JhcFBhdHRlcm5zKHBhdHRlcm46IFJlZ0V4cCB8IHN0cmluZyk6IE1lc3NhZ2VNYXRjaGVyRnVuY3Rpb24ge1xuXHRpZiAocGF0dGVybiBpbnN0YW5jZW9mIFJlZ0V4cCkge1xuXHRcdHJldHVybiAobWVzc2FnZSkgPT4gbWVzc2FnZS5tYXRjaChwYXR0ZXJuKSAhPT0gbnVsbDtcblx0fSBlbHNlIHtcblx0XHRyZXR1cm4gKG1lc3NhZ2UpID0+IG1lc3NhZ2UuaW5jbHVkZXMocGF0dGVybik7XG5cdH1cbn1cblxuLyoqXG4gKiBMaXN0IG9mIGVycm9yIG1lc3NhZ2UgcGF0dGVybnMgdGhhdCBhcmUgYWx3YXlzIGFjY2VwdGVkLlxuICovXG5jb25zdCBHTE9CQUxMWV9BQ0NFUFRFRF9FUlJPUlMgPSBbXG5cdFwiZmFpbGVkIHRvIGxvYWQgSmF2YVNjcmlwdCByZXNvdXJjZTogc2FwL2VzaC9zZWFyY2gvdWkvaTE4bi5qc1wiLCAvLyBzaGVsbFxuXHRcIkN1c3RvbSBhdHRyaWJ1dGVzIGFyZSBub3QgZXhpc3RcIiAvLyBhY2NlcHQgY29uc29sZSBlcnJvciB0ZW1wb3JhcmlseSAtIHJlbW92ZSBhcyBzb29uIGFzIHVuaWZpZWQgc2hlbGwgdGlja2V0IGlzIHJlc29sdmVkXG5dLm1hcCh3cmFwUGF0dGVybnMpO1xuXG5jbGFzcyBDb25zb2xlRXJyb3JDaGVja2VyIHtcblx0cHJpdmF0ZSBtYXRjaGVyczogTWVzc2FnZU1hdGNoZXJGdW5jdGlvbltdID0gW107XG5cblx0cHJpdmF0ZSBtZXNzYWdlczogc3RyaW5nW10gPSBbXTtcblxuXHRwcml2YXRlIHJlYWRvbmx5IGthcm1hOiBLYXJtYSB8IHVuZGVmaW5lZDtcblxuXHRwcml2YXRlIHJlYWRvbmx5IGlzU3RyaWN0OiBib29sZWFuO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgb2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcigobXV0YXRpb25zKSA9PiB7XG5cdFx0Y29uc3Qgb3BhRnJhbWUgPSBtdXRhdGlvbnMucmVkdWNlKChpRnJhbWU6IEhUTUxJRnJhbWVFbGVtZW50IHwgbnVsbCwgbXV0YXRpb246IE11dGF0aW9uUmVjb3JkKSA9PiB7XG5cdFx0XHRpZiAoaUZyYW1lICE9PSBudWxsKSB7XG5cdFx0XHRcdHJldHVybiBpRnJhbWU7XG5cdFx0XHR9XG5cblx0XHRcdGZvciAoY29uc3Qgbm9kZSBvZiBBcnJheS5mcm9tKG11dGF0aW9uLmFkZGVkTm9kZXMpKSB7XG5cdFx0XHRcdGlmIChub2RlIGluc3RhbmNlb2YgRWxlbWVudCkge1xuXHRcdFx0XHRcdGNvbnN0IGVsZW1lbnQgPSBub2RlLnF1ZXJ5U2VsZWN0b3IoXCIjT3BhRnJhbWVcIik7XG5cdFx0XHRcdFx0aWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBIVE1MSUZyYW1lRWxlbWVudCAmJiBlbGVtZW50LmNvbnRlbnRXaW5kb3cpIHtcblx0XHRcdFx0XHRcdHJldHVybiBlbGVtZW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gaUZyYW1lO1xuXHRcdH0sIG51bGwpO1xuXG5cdFx0aWYgKG9wYUZyYW1lICYmIG9wYUZyYW1lLmNvbnRlbnRXaW5kb3cpIHtcblx0XHRcdHRoaXMucHJlcGFyZVdpbmRvdyhvcGFGcmFtZS5jb250ZW50V2luZG93KTtcblx0XHR9XG5cdH0pO1xuXG5cdGNvbnN0cnVjdG9yKHdpbmRvdzogV2luZG93ICYgeyBfX2thcm1hX18/OiBLYXJtYSB9KSB7XG5cdFx0UVVuaXQubW9kdWxlU3RhcnQoKCkgPT4ge1xuXHRcdFx0dGhpcy5vYnNlcnZlci5vYnNlcnZlKHdpbmRvdy5kb2N1bWVudC5ib2R5LCB7IGNoaWxkTGlzdDogdHJ1ZSB9KTtcblx0XHR9KTtcblxuXHRcdFFVbml0Lm1vZHVsZURvbmUoKCkgPT4ge1xuXHRcdFx0dGhpcy5vYnNlcnZlci5kaXNjb25uZWN0KCk7XG5cdFx0fSk7XG5cblx0XHRRVW5pdC50ZXN0U3RhcnQoKCkgPT4ge1xuXHRcdFx0dGhpcy5yZXNldCgpO1xuXHRcdH0pO1xuXG5cdFx0UVVuaXQubG9nKCgpID0+IHtcblx0XHRcdHRoaXMuaGFuZGxlRmFpbGVkTWVzc2FnZXMoKTtcblx0XHR9KTtcblxuXHRcdHRoaXMua2FybWEgPSB3aW5kb3cuX19rYXJtYV9fO1xuXG5cdFx0Ly8gZWl0aGVyIGdvIGZvciBLYXJtYSBjb25maWcgb3B0aW9uIFwidWk1LmNvbmZpZy5zdHJpY3RDb25zb2xlRXJyb3JzXCIgb3IgdXNlIFVSTCBxdWVyeSBwYXJhbWV0ZXIgXCJzdHJpY3RcIlxuXHRcdGNvbnN0IHNlYXJjaCA9IG5ldyBVUkxTZWFyY2hQYXJhbXMod2luZG93LmxvY2F0aW9uLnNlYXJjaCk7XG5cdFx0Y29uc3QgdXJsUGFyYW0gPSBzZWFyY2guZ2V0KFwic3RyaWN0Q29uc29sZUVycm9yc1wiKTtcblx0XHRpZiAodXJsUGFyYW0gIT09IG51bGwpIHtcblx0XHRcdHRoaXMuaXNTdHJpY3QgPSB1cmxQYXJhbSA9PT0gXCJ0cnVlXCI7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMuaXNTdHJpY3QgPSB0aGlzLmthcm1hPy5jb25maWcudWk1Py5jb25maWcuc3RyaWN0Y29uc29sZWVycm9ycyA/PyBmYWxzZTtcblx0XHR9XG5cblx0XHR0aGlzLnJlc2V0KCk7XG5cdH1cblxuXHRwcml2YXRlIGhhbmRsZUZhaWxlZE1lc3NhZ2VzKCkge1xuXHRcdGNvbnN0IGZhaWxlZE1lc3NhZ2VzID0gdGhpcy5tZXNzYWdlcztcblx0XHR0aGlzLm1lc3NhZ2VzID0gW107XG5cblx0XHRpZiAoZmFpbGVkTWVzc2FnZXMubGVuZ3RoID4gMCkge1xuXHRcdFx0UVVuaXQuYXNzZXJ0LnB1c2hSZXN1bHQoe1xuXHRcdFx0XHRyZXN1bHQ6IGZhbHNlLFxuXHRcdFx0XHRzb3VyY2U6IFwiRkUgQ29uc29sZSBMb2cgQ2hlY2tcIixcblx0XHRcdFx0bWVzc2FnZTogYFRoZXJlIHdlcmUgJHtmYWlsZWRNZXNzYWdlcy5sZW5ndGh9IHVuZXhwZWN0ZWQgY29uc29sZSBlcnJvcnNgLFxuXHRcdFx0XHRhY3R1YWw6IGZhaWxlZE1lc3NhZ2VzLFxuXHRcdFx0XHRleHBlY3RlZDogW11cblx0XHRcdH0pO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgcmVzZXQoKSB7XG5cdFx0dGhpcy5tZXNzYWdlcyA9IFtdO1xuXG5cdFx0Ly8gdGhpcyBzZXRzIHRoZSBkZWZhdWx0IHRvIGFwcGx5IGlmIG5vIGFsbG93ZWQgcGF0dGVybnMgYXJlIHNldCB2aWEgc2V0QWNjZXB0ZWRFcnJvclBhdHRlcm5zKCkuXG5cdFx0aWYgKHRoaXMuaXNTdHJpY3QpIHtcblx0XHRcdHRoaXMubWF0Y2hlcnMgPSBHTE9CQUxMWV9BQ0NFUFRFRF9FUlJPUlM7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMubWF0Y2hlcnMgPSBbKCkgPT4gdHJ1ZV07XG5cdFx0fVxuXHR9XG5cblx0c2V0QWNjZXB0ZWRFcnJvclBhdHRlcm5zKHBhdHRlcm5zPzogKFJlZ0V4cCB8IHN0cmluZylbXSkge1xuXHRcdGlmICghcGF0dGVybnMgfHwgcGF0dGVybnMubGVuZ3RoID09PSAwKSB7XG5cdFx0XHR0aGlzLm1hdGNoZXJzID0gR0xPQkFMTFlfQUNDRVBURURfRVJST1JTO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLm1hdGNoZXJzID0gcGF0dGVybnMubWFwKHdyYXBQYXR0ZXJucykuY29uY2F0KEdMT0JBTExZX0FDQ0VQVEVEX0VSUk9SUyk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBjaGVja0FuZExvZyh0eXBlOiBCcm93c2VyQ29uc29sZUxvZ09wdGlvbnNbXCJsZXZlbFwiXSwgLi4uZGF0YTogYW55W10pIHtcblx0XHQvLyBvbmx5IGNoZWNrIHRoZSBlcnJvciBtZXNzYWdlc1xuXHRcdGlmICh0eXBlID09PSBcImVycm9yXCIpIHtcblx0XHRcdGNvbnN0IG1lc3NhZ2VUZXh0ID0gZGF0YVswXTtcblx0XHRcdGNvbnN0IGlzQWxsb3dlZCA9IHRoaXMubWF0Y2hlcnMuc29tZSgobWF0Y2hlcikgPT4gbWF0Y2hlcihtZXNzYWdlVGV4dCkpO1xuXHRcdFx0aWYgKCFpc0FsbG93ZWQpIHtcblx0XHRcdFx0dGhpcy5tZXNzYWdlcy5wdXNoKG1lc3NhZ2VUZXh0KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRpZiAodGhpcy5rYXJtYSkge1xuXHRcdFx0Ly8gd3JhcCB0aGUgZGF0YSB0byBmYWNpbGl0YXRlIHBhcnNpbmcgaW4gdGhlIGJhY2tlbmRcblx0XHRcdGNvbnN0IHdyYXBwZWREYXRhID0gZGF0YS5tYXAoKGQpID0+IFtkXSk7XG5cdFx0XHR0aGlzLmthcm1hLmxvZyh0eXBlLCB3cmFwcGVkRGF0YSk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBwcmVwYXJlV2luZG93KHdpbmRvdzogV2luZG93KSB7XG5cdFx0Y29uc3QgY29uc29sZTogQ29uc29sZSA9ICh3aW5kb3cgYXMgYW55KS5jb25zb2xlO1xuXG5cdFx0Ly8gY2FwdHVyZSBjb25zb2xlLmxvZygpLCBjb25zb2xlLmRlYnVnKCksIGV0Yy5cblx0XHRjb25zdCBwYXRjaENvbnNvbGVNZXRob2QgPSAobWV0aG9kOiBcImxvZ1wiIHwgXCJpbmZvXCIgfCBcIndhcm5cIiB8IFwiZXJyb3JcIiB8IFwiZGVidWdcIikgPT4ge1xuXHRcdFx0Y29uc3QgZm5PcmlnaW5hbCA9IGNvbnNvbGVbbWV0aG9kXTtcblx0XHRcdGNvbnNvbGVbbWV0aG9kXSA9ICguLi5kYXRhOiBhbnlbXSk6IHZvaWQgPT4ge1xuXHRcdFx0XHR0aGlzLmNoZWNrQW5kTG9nKG1ldGhvZCwgLi4uZGF0YSk7XG5cdFx0XHRcdHJldHVybiBmbk9yaWdpbmFsLmFwcGx5KGNvbnNvbGUsIGRhdGEpO1xuXHRcdFx0fTtcblx0XHR9O1xuXG5cdFx0cGF0Y2hDb25zb2xlTWV0aG9kKFwibG9nXCIpO1xuXHRcdHBhdGNoQ29uc29sZU1ldGhvZChcImRlYnVnXCIpO1xuXHRcdHBhdGNoQ29uc29sZU1ldGhvZChcImluZm9cIik7XG5cdFx0cGF0Y2hDb25zb2xlTWV0aG9kKFwid2FyblwiKTtcblx0XHRwYXRjaENvbnNvbGVNZXRob2QoXCJlcnJvclwiKTtcblxuXHRcdC8vIGNhcHR1cmUgY29uc29sZS5hc3NlcnQoKVxuXHRcdC8vIHNlZSBodHRwczovL2NvbnNvbGUuc3BlYy53aGF0d2cub3JnLyNhc3NlcnRcblx0XHRjb25zb2xlLmFzc2VydCA9IGZ1bmN0aW9uIChjb25kaXRpb24gPSBmYWxzZSwgLi4uZGF0YTogYW55W10pIHtcblx0XHRcdGlmIChjb25kaXRpb24pIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRjb25zdCBtZXNzYWdlID0gXCJBc3NlcnRpb24gZmFpbGVkXCI7XG5cdFx0XHRpZiAoZGF0YS5sZW5ndGggPT09IDApIHtcblx0XHRcdFx0ZGF0YS5wdXNoKG1lc3NhZ2UpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0bGV0IGZpcnN0ID0gZGF0YVswXTtcblx0XHRcdFx0aWYgKHR5cGVvZiBmaXJzdCAhPT0gXCJzdHJpbmdcIikge1xuXHRcdFx0XHRcdGRhdGEudW5zaGlmdChtZXNzYWdlKTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRmaXJzdCA9IGAke21lc3NhZ2V9OiAke2ZpcnN0fWA7XG5cdFx0XHRcdFx0ZGF0YVswXSA9IGZpcnN0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGNvbnNvbGUuZXJyb3IoLi4uZGF0YSk7XG5cdFx0fTtcblxuXHRcdC8vIGNhcHR1cmUgZXJyb3JzXG5cdFx0ZnVuY3Rpb24gb25Qcm9taXNlUmVqZWN0aW9uKHRoaXM6IENvbnNvbGVFcnJvckNoZWNrZXIsIGV2ZW50OiBQcm9taXNlUmVqZWN0aW9uRXZlbnQpIHtcblx0XHRcdGNvbnN0IG1lc3NhZ2UgPSBgVU5IQU5ETEVEIFBST01JU0UgUkVKRUNUSU9OOiAke2V2ZW50LnJlYXNvbn1gO1xuXHRcdFx0dGhpcy5jaGVja0FuZExvZyhcImVycm9yXCIsIG1lc3NhZ2UsIGV2ZW50LnJlYXNvbj8uc3RhY2spO1xuXHRcdH1cblxuXHRcdGZ1bmN0aW9uIG9uRXJyb3IodGhpczogQ29uc29sZUVycm9yQ2hlY2tlciwgZXZlbnQ6IEVycm9yRXZlbnQpIHtcblx0XHRcdGNvbnN0IG1lc3NhZ2UgPSBldmVudC5tZXNzYWdlO1xuXHRcdFx0dGhpcy5jaGVja0FuZExvZyhcImVycm9yXCIsIG1lc3NhZ2UsIGV2ZW50LmZpbGVuYW1lKTtcblx0XHR9XG5cblx0XHR3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcImVycm9yXCIsIG9uRXJyb3IuYmluZCh0aGlzKSwgeyBwYXNzaXZlOiB0cnVlIH0pO1xuXHRcdHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwidW5oYW5kbGVkcmVqZWN0aW9uXCIsIG9uUHJvbWlzZVJlamVjdGlvbi5iaW5kKHRoaXMpLCB7IHBhc3NpdmU6IHRydWUgfSk7XG5cdH1cblxuXHRzdGF0aWMgZ2V0SW5zdGFuY2Uod2luZG93OiBXaW5kb3cgJiB7IHNhcEZFQ29uc29sZUVycm9yQ2hlY2tlcj86IENvbnNvbGVFcnJvckNoZWNrZXIgfSk6IENvbnNvbGVFcnJvckNoZWNrZXIge1xuXHRcdC8vIHRoZSBnbG9iYWwgaW5zdGFuY2UgaXMgbmVlZGVkIHRvIHN1cHBvcnQgbXVsdGlwbGUgdGVzdHMgaW4gYSByb3cgKGluIEthcm1hKVxuXHRcdGlmICghd2luZG93LnNhcEZFQ29uc29sZUVycm9yQ2hlY2tlcikge1xuXHRcdFx0d2luZG93LnNhcEZFQ29uc29sZUVycm9yQ2hlY2tlciA9IG5ldyBDb25zb2xlRXJyb3JDaGVja2VyKHdpbmRvdyk7XG5cdFx0fVxuXHRcdHJldHVybiB3aW5kb3cuc2FwRkVDb25zb2xlRXJyb3JDaGVja2VyO1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IENvbnNvbGVFcnJvckNoZWNrZXIuZ2V0SW5zdGFuY2Uod2luZG93KTtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTs7OztFQWNBLFNBQVNBLFlBQVksQ0FBQ0MsT0FBd0IsRUFBMEI7SUFDdkUsSUFBSUEsT0FBTyxZQUFZQyxNQUFNLEVBQUU7TUFDOUIsT0FBUUMsT0FBTyxJQUFLQSxPQUFPLENBQUNDLEtBQUssQ0FBQ0gsT0FBTyxDQUFDLEtBQUssSUFBSTtJQUNwRCxDQUFDLE1BQU07TUFDTixPQUFRRSxPQUFPLElBQUtBLE9BQU8sQ0FBQ0UsUUFBUSxDQUFDSixPQUFPLENBQUM7SUFDOUM7RUFDRDs7RUFFQTtBQUNBO0FBQ0E7RUFDQSxNQUFNSyx3QkFBd0IsR0FBRyxDQUNoQywrREFBK0Q7RUFBRTtFQUNqRSxpQ0FBaUMsQ0FBQztFQUFBLENBQ2xDLENBQUNDLEdBQUcsQ0FBQ1AsWUFBWSxDQUFDO0VBQUMsSUFFZFEsbUJBQW1CO0lBZ0N4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
|
|
@@ -24,13 +24,17 @@ function wrapPatterns(pattern: RegExp | string): MessageMatcherFunction {
|
|
|
24
24
|
* List of error message patterns that are always accepted.
|
|
25
25
|
*/
|
|
26
26
|
const GLOBALLY_ACCEPTED_ERRORS = [
|
|
27
|
-
"failed to load JavaScript resource: sap/esh/search/ui/i18n.js" // shell
|
|
27
|
+
"failed to load JavaScript resource: sap/esh/search/ui/i18n.js", // shell
|
|
28
|
+
"Custom attributes are not exist" // accept console error temporarily - remove as soon as unified shell ticket is resolved
|
|
28
29
|
].map(wrapPatterns);
|
|
29
30
|
|
|
30
31
|
class ConsoleErrorChecker {
|
|
31
32
|
private matchers: MessageMatcherFunction[] = [];
|
|
33
|
+
|
|
32
34
|
private messages: string[] = [];
|
|
35
|
+
|
|
33
36
|
private readonly karma: Karma | undefined;
|
|
37
|
+
|
|
34
38
|
private readonly isStrict: boolean;
|
|
35
39
|
|
|
36
40
|
private readonly observer = new MutationObserver((mutations) => {
|
|
@@ -35,11 +35,15 @@ sap.ui.define(
|
|
|
35
35
|
oUriParams = new UriParameters(window.location.href),
|
|
36
36
|
sBackendUrl = oUriParams.get("useBackendUrl"),
|
|
37
37
|
sProxyPrefix = sBackendUrl ? "/databinding/proxy/" + sBackendUrl.replace("://", "/") : "",
|
|
38
|
-
bSuccess = false
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
38
|
+
bSuccess = false;
|
|
39
|
+
var sTenantID = "";
|
|
40
|
+
if (window.__karma__ && window.__karma__.config && window.__karma__.config.ui5) {
|
|
41
|
+
sTenantID = window.__karma__.config.ui5.shardIndex;
|
|
42
|
+
} else {
|
|
43
|
+
sTenantID = window.location.href.includes("sap-client")
|
|
44
|
+
? new URL(window.location.href).searchParams.get("sap-client")
|
|
45
|
+
: "default";
|
|
46
|
+
}
|
|
43
47
|
|
|
44
48
|
return OpaBuilder.create(this)
|
|
45
49
|
.success(function () {
|