@sapui5/sap.fe.base 1.151.1 → 1.153.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/base/.library +1 -1
- package/src/sap/fe/base/HookSupport.js +1 -1
- package/src/sap/fe/base/HookSupport.ts +2 -0
- package/src/sap/fe/base/jsx-runtime/jsx-control.js +12 -2
- package/src/sap/fe/base/jsx-runtime/jsx-control.ts +12 -1
- package/src/sap/fe/base/library.js +1 -1
package/package.json
CHANGED
package/src/sap/fe/base/.library
CHANGED
|
@@ -172,4 +172,4 @@ sap.ui.define(["sap/base/util/deepClone"], function (deepClone) {
|
|
|
172
172
|
_exports.propagateHookFromMixin = propagateHookFromMixin;
|
|
173
173
|
return _exports;
|
|
174
174
|
}, false);
|
|
175
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZWdpc3RlcmVkSW5zdGFuY2VzIiwicmVnaXN0ZXJlZEhhbmRsZXJzIiwiaG9va2FibGUiLCJleGVjdXRpb24iLCJ0YXJnZXQiLCJwcm9wZXJ0eUtleSIsImRlc2NyaXB0b3IiLCJpbmRleGFibGVUYXJnZXQiLCJ0b1N0cmluZyIsImZuIiwiY0V4VEluc3RhbmNlSG9va01hcCIsImhvb2tlZEhhbmRsZXJzIiwicHVzaCIsImhhbmRsZXJzIiwiQXJyYXkiLCJpc0FycmF5IiwiaW5kZXgiLCJpbmRleE9mIiwic3BsaWNlIiwib2xkVmFsdWUiLCJ2YWx1ZSIsImFyZ3MiLCJyZXR1cm5WYWx1ZSIsImJpbmQiLCJoYW5kbGVyIiwiX2V4cG9ydHMiLCJpc0FscmVhZHlSZWdpc3RlcmVkIiwiZXhpc3RpbmdSZWdpc3RyYXRpb25zIiwibmV3UmVnaXN0cmF0aW9uIiwiZmluZCIsInIiLCJuYW1lIiwibWV0aG9kIiwidGFyZ2V0TWV0aG9kIiwiaG9va3MiLCJTeW1ib2wiLCJjb250cm9sbGVyRXh0ZW5zaW9uSGFuZGxlciIsIlN0cmluZyIsImNvbnN0cnVjdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJpbml0Q29udHJvbGxlckV4dGVuc2lvbkhvb2tIYW5kbGVycyIsImNvbnRyb2xsZXIiLCJyZWdpc3RlcmVkSG9va3MiLCJkZWVwQ2xvbmUiLCJpbmRleGFibGVDb250cm9sbGVyIiwicmVnaXN0ZXJlZEhvb2siLCJoYW5kbGVyRnVuY3Rpb24iLCJnZXRWaWV3IiwiYXR0YWNoQmVmb3JlRXhpdCIsInJlbW92ZUNvbnRyb2xsZXJFeHRlbnNpb25Ib29rSGFuZGxlcnMiLCJwcm9wYWdhdGVIb29rRnJvbU1peGluIiwic291cmNlIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiY3JlYXRlIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJIb29rU3VwcG9ydC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZGVlcENsb25lIGZyb20gXCJzYXAvYmFzZS91dGlsL2RlZXBDbG9uZVwiO1xuaW1wb3J0IHR5cGUgeyBFeHRlbnNpb25PdmVycmlkZUV4ZWN1dGlvbiB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB0eXBlIENvbnRyb2xsZXIgZnJvbSBcInNhcC91aS9jb3JlL212Yy9Db250cm9sbGVyXCI7XG4vKipcbiAqIFRoaXMgdHlwZSBpcyB0byBiZSBleHRlbmRlZCB3aXRoIGFsbCBjb250cm9sbGVyIGV4dGVuc2lvbnMgYW5kIG1ldGhvZHMgdGhhdCBhcmUgaG9va2FibGUuXG4gKi9cbnR5cGUgSG9va2FibGVDb250cm9sbGVyRXh0ZW5zaW9ucyA9IHtcblx0ZWRpdEZsb3c6IHtcblx0XHRvbkFmdGVyU2F2ZTogdHJ1ZTtcblx0XHRvbkJlZm9yZVNhdmU6IHRydWU7XG5cdH07XG5cdGlubGluZUVkaXRGbG93OiB7XG5cdFx0aW5saW5lRWRpdEVuZDogdHJ1ZTtcblx0XHRpbmxpbmVFZGl0U3RhcnQ6IHRydWU7XG5cdH07XG5cdGNvbGxhYm9yYXRpb25NYW5hZ2VyOiB7XG5cdFx0Y29sbGVjdEF2YWlsYWJsZUNhcmRzOiB0cnVlO1xuXHR9O1xuXHRwYWdpbmF0b3I6IHtcblx0XHRpbml0aWFsaXplOiB0cnVlO1xuXHR9O1xuXHRyb3V0aW5nOiB7XG5cdFx0b25BZnRlckJpbmRpbmc6IHRydWU7XG5cdH07XG5cdHZpZXdTdGF0ZToge1xuXHRcdHJldHJpZXZlQWRkaXRpb25hbFN0YXRlczogdHJ1ZTtcblx0XHRhcHBseUFkZGl0aW9uYWxTdGF0ZXM6IHRydWU7XG5cdH07XG5cdF9yb3V0aW5nOiB7XG5cdFx0b25VcGRhdGVQcmVsb2FkZWRWYWx1ZXM6IHRydWU7XG5cdH07XG59O1xuXG50eXBlIEhhbmRsZXJDb25maWd1cmF0aW9uPENFeHROYW1lIGV4dGVuZHMga2V5b2YgSG9va2FibGVDb250cm9sbGVyRXh0ZW5zaW9ucz4gPSB7XG5cdG5hbWU6IENFeHROYW1lO1xuXHRtZXRob2Q6IGtleW9mIEhvb2thYmxlQ29udHJvbGxlckV4dGVuc2lvbnNbQ0V4dE5hbWVdO1xufTtcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG50eXBlIEhhbmRsZXJSZWdpc3RyYXRpb24gPSBIYW5kbGVyQ29uZmlndXJhdGlvbjxhbnk+ICYgeyB0YXJnZXRNZXRob2Q6IHN0cmluZzsgaGFuZGxlckZ1bmN0aW9uPzogRnVuY3Rpb24gfTtcblxudHlwZSBGdW5jdGlvbk1hcCA9IHtcblx0W2tleTogc3RyaW5nXTogRnVuY3Rpb247XG59O1xudHlwZSBEZWVwRnVuY3Rpb25NYXAgPSB7XG5cdFtrZXk6IHN0cmluZ106IEZ1bmN0aW9uTWFwO1xufTtcbnR5cGUgSG9va01hcCA9IHtcblx0aG9va2VkSGFuZGxlcnM6IHtcblx0XHRba2V5OiBzdHJpbmddOiBGdW5jdGlvbltdO1xuXHR9O1xufTtcblxuLy8gVXNlIHR3byBhcnJheXMgYXMgd2UgY2Fubm90IGluZGV4IGEgbWFwIHRocm91Z2ggYW4gYXJiaXRyYXJ5IG9iamVjdCBpbnN0YW5jZVxuY29uc3QgcmVnaXN0ZXJlZEluc3RhbmNlczogRnVuY3Rpb25bXSA9IFtdO1xuY29uc3QgcmVnaXN0ZXJlZEhhbmRsZXJzOiBIYW5kbGVyUmVnaXN0cmF0aW9uW11bXSA9IFtdO1xuXG4vKipcbiAqIE1hcmtzIGEgY29udHJvbGxlciBleHRlbnNpb24gbWV0aG9kIHRvIGJlIGhvb2thYmxlIGJ5IGdlbmVyYXRpbmcgYWRkaXRpb25hbCBtZXRob2RzIHRoYXQgY2FuIGJlIHVzZWQgdG8gYXR0YWNoIGFuZCBkZXRhY2ggaGFuZGxlcnMgYXQgcnVudGltZS5cbiAqIEBwYXJhbSBleGVjdXRpb25cbiAqIEByZXR1cm5zIEEgbWV0aG9kIGRlY29yYXRvclxuICovXG5leHBvcnQgZnVuY3Rpb24gaG9va2FibGUoZXhlY3V0aW9uOiBFeHRlbnNpb25PdmVycmlkZUV4ZWN1dGlvbik6IE1ldGhvZERlY29yYXRvciB7XG5cdHJldHVybiBmdW5jdGlvbiAodGFyZ2V0OiB1bmtub3duLCBwcm9wZXJ0eUtleTogc3RyaW5nIHwgc3ltYm9sLCBkZXNjcmlwdG9yOiBQcm9wZXJ0eURlc2NyaXB0b3IpIHtcblx0XHRjb25zdCBpbmRleGFibGVUYXJnZXQgPSB0YXJnZXQgYXMgRnVuY3Rpb25NYXA7XG5cblx0XHRpbmRleGFibGVUYXJnZXRbYGF0dGFjaCR7cHJvcGVydHlLZXkudG9TdHJpbmcoKX1gXSA9IGZ1bmN0aW9uIChmbjogRnVuY3Rpb24pOiB2b2lkIHtcblx0XHRcdGNvbnN0IGNFeFRJbnN0YW5jZUhvb2tNYXAgPSB0aGlzIGFzIHVua25vd24gYXMgSG9va01hcDtcblx0XHRcdGlmICghY0V4VEluc3RhbmNlSG9va01hcC5ob29rZWRIYW5kbGVycykge1xuXHRcdFx0XHRjRXhUSW5zdGFuY2VIb29rTWFwLmhvb2tlZEhhbmRsZXJzID0ge307XG5cdFx0XHR9XG5cdFx0XHRpZiAoIWNFeFRJbnN0YW5jZUhvb2tNYXAuaG9va2VkSGFuZGxlcnNbcHJvcGVydHlLZXkudG9TdHJpbmcoKV0pIHtcblx0XHRcdFx0Y0V4VEluc3RhbmNlSG9va01hcC5ob29rZWRIYW5kbGVyc1twcm9wZXJ0eUtleS50b1N0cmluZygpXSA9IFtdO1xuXHRcdFx0fVxuXHRcdFx0Y0V4VEluc3RhbmNlSG9va01hcC5ob29rZWRIYW5kbGVyc1twcm9wZXJ0eUtleS50b1N0cmluZygpXS5wdXNoKGZuKTtcblx0XHR9O1xuXHRcdGluZGV4YWJsZVRhcmdldFtgZGV0YWNoJHtwcm9wZXJ0eUtleS50b1N0cmluZygpfWBdID0gZnVuY3Rpb24gKGZuOiBGdW5jdGlvbik6IHZvaWQge1xuXHRcdFx0Y29uc3QgY0V4VEluc3RhbmNlSG9va01hcCA9IHRoaXMgYXMgdW5rbm93biBhcyBIb29rTWFwO1xuXHRcdFx0Y29uc3QgaGFuZGxlcnMgPSBjRXhUSW5zdGFuY2VIb29rTWFwLmhvb2tlZEhhbmRsZXJzPy5bcHJvcGVydHlLZXkudG9TdHJpbmcoKV07XG5cdFx0XHRpZiAoQXJyYXkuaXNBcnJheShoYW5kbGVycykpIHtcblx0XHRcdFx0Y29uc3QgaW5kZXggPSBoYW5kbGVycy5pbmRleE9mKGZuKTtcblx0XHRcdFx0aWYgKGluZGV4ICE9PSAtMSkge1xuXHRcdFx0XHRcdGhhbmRsZXJzLnNwbGljZShpbmRleCwgMSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9O1xuXG5cdFx0Y29uc3Qgb2xkVmFsdWUgPSBkZXNjcmlwdG9yLnZhbHVlO1xuXHRcdGlmIChleGVjdXRpb24gPT09IFwiQmVmb3JlQXN5bmNcIiB8fCBleGVjdXRpb24gPT09IFwiQWZ0ZXJBc3luY1wiKSB7XG5cdFx0XHRkZXNjcmlwdG9yLnZhbHVlID0gYXN5bmMgZnVuY3Rpb24gKC4uLmFyZ3M6IHVua25vd25bXSk6IFByb21pc2U8dW5rbm93bj4ge1xuXHRcdFx0XHRjb25zdCBjRXhUSW5zdGFuY2VIb29rTWFwID0gdGhpcyBhcyB1bmtub3duIGFzIEhvb2tNYXA7XG5cdFx0XHRcdGNvbnN0IGhhbmRsZXJzID0gKGNFeFRJbnN0YW5jZUhvb2tNYXA/Lmhvb2tlZEhhbmRsZXJzICYmIGNFeFRJbnN0YW5jZUhvb2tNYXA/Lmhvb2tlZEhhbmRsZXJzW3Byb3BlcnR5S2V5LnRvU3RyaW5nKCldKSB8fCBbXTtcblx0XHRcdFx0bGV0IHJldHVyblZhbHVlOiB1bmtub3duO1xuXHRcdFx0XHRpZiAoZXhlY3V0aW9uID09PSBcIkFmdGVyQXN5bmNcIikge1xuXHRcdFx0XHRcdHJldHVyblZhbHVlID0gYXdhaXQgb2xkVmFsdWUuYmluZCh0aGlzKSguLi5hcmdzKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRmb3IgKGNvbnN0IGhhbmRsZXIgb2YgaGFuZGxlcnMpIHtcblx0XHRcdFx0XHRhd2FpdCBoYW5kbGVyLmJpbmQodGhpcykoLi4uYXJncyk7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKGV4ZWN1dGlvbiA9PT0gXCJCZWZvcmVBc3luY1wiKSB7XG5cdFx0XHRcdFx0cmV0dXJuVmFsdWUgPSBhd2FpdCBvbGRWYWx1ZS5iaW5kKHRoaXMpKC4uLmFyZ3MpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiByZXR1cm5WYWx1ZTtcblx0XHRcdH07XG5cdFx0fSBlbHNlIHtcblx0XHRcdGRlc2NyaXB0b3IudmFsdWUgPSBmdW5jdGlvbiAoLi4uYXJnczogdW5rbm93bltdKTogdW5rbm93biB7XG5cdFx0XHRcdGNvbnN0IGNFeFRJbnN0YW5jZUhvb2tNYXAgPSB0aGlzIGFzIHVua25vd24gYXMgSG9va01hcDtcblx0XHRcdFx0Y29uc3QgaGFuZGxlcnMgPSAoY0V4VEluc3RhbmNlSG9va01hcD8uaG9va2VkSGFuZGxlcnMgJiYgY0V4VEluc3RhbmNlSG9va01hcD8uaG9va2VkSGFuZGxlcnNbcHJvcGVydHlLZXkudG9TdHJpbmcoKV0pIHx8IFtdO1xuXHRcdFx0XHRsZXQgcmV0dXJuVmFsdWU6IHVua25vd247XG5cdFx0XHRcdGlmIChleGVjdXRpb24gPT09IFwiQWZ0ZXJcIikge1xuXHRcdFx0XHRcdHJldHVyblZhbHVlID0gb2xkVmFsdWUuYmluZCh0aGlzKSguLi5hcmdzKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRmb3IgKGNvbnN0IGhhbmRsZXIgb2YgaGFuZGxlcnMpIHtcblx0XHRcdFx0XHRoYW5kbGVyLmJpbmQodGhpcykoLi4uYXJncyk7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKGV4ZWN1dGlvbiA9PT0gXCJCZWZvcmVcIikge1xuXHRcdFx0XHRcdHJldHVyblZhbHVlID0gb2xkVmFsdWUuYmluZCh0aGlzKSguLi5hcmdzKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gcmV0dXJuVmFsdWU7XG5cdFx0XHR9O1xuXHRcdH1cblx0fTtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciBhIG5ld1JlZ2lzdHJhdGlvbiBpcyBhbHJlYWR5IGluY2x1ZGVkIGluIHNvbWUgZXhpc3RpbmdSZWdpc3RyYXRpb25zIGJ5IGNvbXBhcmluZyBhbGwgcmVsZXZhbnQgYXR0cmlidXRlcy5cbiAqIEBwYXJhbSBleGlzdGluZ1JlZ2lzdHJhdGlvbnNcbiAqIEBwYXJhbSBuZXdSZWdpc3RyYXRpb25cbiAqIEByZXR1cm5zIFJlc3VsdCBvZiB0aGUgY2hlY2tcbiAqL1xuZnVuY3Rpb24gaXNBbHJlYWR5UmVnaXN0ZXJlZChleGlzdGluZ1JlZ2lzdHJhdGlvbnM6IEhhbmRsZXJSZWdpc3RyYXRpb25bXSwgbmV3UmVnaXN0cmF0aW9uOiBIYW5kbGVyUmVnaXN0cmF0aW9uKTogYm9vbGVhbiB7XG5cdHJldHVybiAhIWV4aXN0aW5nUmVnaXN0cmF0aW9ucy5maW5kKFxuXHRcdChyKSA9PiByLm5hbWUgPT09IG5ld1JlZ2lzdHJhdGlvbi5uYW1lICYmIHIubWV0aG9kID09PSBuZXdSZWdpc3RyYXRpb24ubWV0aG9kICYmIHIudGFyZ2V0TWV0aG9kID09PSBuZXdSZWdpc3RyYXRpb24udGFyZ2V0TWV0aG9kXG5cdCk7XG59XG5cbmV4cG9ydCBjb25zdCBob29rcyA9IFN5bWJvbChcImhvb2tzXCIpO1xuXG4vKipcbiAqIFJlZ2lzdGVycyBhIG1ldGhvZCBhcyBjb250cm9sbGVyIGV4dGVuc2lvbiBob29rIGhhbmRsZXIuXG4gKlxuICogQ3VycmVudGx5LCBvbmx5IG1ldGhvZHMgb2YgcnVudGltZSBidWlsZGluZyBibG9ja3MgYXJlIHN1cHBvcnRlZC5cbiAqIEBwYXJhbSBuYW1lIENvbnRyb2xsZXIgZXh0ZW5zaW9uIHRvIGhvb2sgaW50b1xuICogQHBhcmFtIG1ldGhvZCBNZXRob2QgdG8gaG9vayBpbnRvXG4gKiBAcmV0dXJucyBBIG1ldGhvZCBkZWNvcmF0b3JcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbnRyb2xsZXJFeHRlbnNpb25IYW5kbGVyPENFeHROYW1lIGV4dGVuZHMga2V5b2YgSG9va2FibGVDb250cm9sbGVyRXh0ZW5zaW9ucz4oXG5cdG5hbWU6IENFeHROYW1lLFxuXHRtZXRob2Q6IGtleW9mIEhvb2thYmxlQ29udHJvbGxlckV4dGVuc2lvbnNbQ0V4dE5hbWVdXG4pOiBNZXRob2REZWNvcmF0b3Ige1xuXHRyZXR1cm4gZnVuY3Rpb24gKHRhcmdldDogeyBjb25zdHJ1Y3RvcjogRnVuY3Rpb24gJiB7IFtob29rc10/OiBIYW5kbGVyUmVnaXN0cmF0aW9uW10gfSB9LCBwcm9wZXJ0eUtleTogc3RyaW5nKSB7XG5cdFx0Y29uc3QgbmV3UmVnaXN0cmF0aW9uID0geyBuYW1lLCBtZXRob2Q6IFN0cmluZyhtZXRob2QpLCB0YXJnZXRNZXRob2Q6IHByb3BlcnR5S2V5IH07XG5cdFx0Y29uc3QgaW5kZXggPSByZWdpc3RlcmVkSW5zdGFuY2VzLmluZGV4T2YodGFyZ2V0LmNvbnN0cnVjdG9yKTtcblx0XHRpZiAoIXRhcmdldC5jb25zdHJ1Y3Rvcltob29rc10pIHtcblx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQuY29uc3RydWN0b3IsIGhvb2tzLCB7XG5cdFx0XHRcdHZhbHVlOiBbXVxuXHRcdFx0fSk7XG5cdFx0fVxuXHRcdHRhcmdldC5jb25zdHJ1Y3Rvcltob29rc10/LnB1c2gobmV3UmVnaXN0cmF0aW9uKTtcblx0XHQvLyBXZSBuZWVkIHRvIGNoZWNrIGlmIHRoaXMgZXhhY3QgaGFuZGxlciBpcyBhbHJlYWR5IHJlZ2lzdGVyZWQgYXMgaGFuZGxlcnMgYXJlIHJlZ2lzdGVyZWQgc3RhdGljYWxseSAob24gdGhlIGNvbnN0cnVjdG9yKVxuXHRcdGlmIChpbmRleCAhPT0gLTEgJiYgIWlzQWxyZWFkeVJlZ2lzdGVyZWQocmVnaXN0ZXJlZEhhbmRsZXJzW2luZGV4XSwgbmV3UmVnaXN0cmF0aW9uKSkge1xuXHRcdFx0cmVnaXN0ZXJlZEhhbmRsZXJzW2luZGV4XS5wdXNoKG5ld1JlZ2lzdHJhdGlvbik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJlZ2lzdGVyZWRJbnN0YW5jZXMucHVzaCh0YXJnZXQuY29uc3RydWN0b3IpO1xuXHRcdFx0cmVnaXN0ZXJlZEhhbmRsZXJzLnB1c2goW25ld1JlZ2lzdHJhdGlvbl0pO1xuXHRcdH1cblx0fSBhcyBNZXRob2REZWNvcmF0b3I7XG59XG5cbi8qKlxuICogSW5pdGlhbGl6ZXMgYWxsIGNvbnRyb2xsZXIgZXh0ZW5zaW9uIGhhbmRsZXJzIHJlZ2lzdGVyZWQgZm9yIGEgZ2l2ZW4gdGFyZ2V0LlxuICogQHBhcmFtIHRhcmdldCBUYXJnZXQgY2xhc3MgdG8gaW5pdGlhbGl6ZSB0aGUgaGFuZGxlcnMgZm9yXG4gKiBAcGFyYW0gdGFyZ2V0LmNvbnN0cnVjdG9yXG4gKiBAcGFyYW0gY29udHJvbGxlciBQYWdlQ29udHJvbGxlciBpbnN0YW5jZSB0byBnZXQgdGhlIGNvbnRyb2xsZXIgZXh0ZW5zaW9ucyBpbnN0YW5jZXMgZnJvbVxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5pdENvbnRyb2xsZXJFeHRlbnNpb25Ib29rSGFuZGxlcnMoXG5cdHRhcmdldDogeyBjb25zdHJ1Y3RvcjogRnVuY3Rpb24gJiB7IFtob29rc10/OiBIYW5kbGVyUmVnaXN0cmF0aW9uW10gfSB9ICYgeyBbaG9va3NdPzogSGFuZGxlclJlZ2lzdHJhdGlvbltdIH0sXG5cdGNvbnRyb2xsZXI6IENvbnRyb2xsZXJcbik6IHZvaWQge1xuXHRpZiAodGFyZ2V0LmNvbnN0cnVjdG9yW2hvb2tzXSkge1xuXHRcdGxldCByZWdpc3RlcmVkSG9va3MgPSB0YXJnZXQuY29uc3RydWN0b3JbaG9va3NdO1xuXHRcdHRhcmdldFtob29rc10gPSBkZWVwQ2xvbmUocmVnaXN0ZXJlZEhvb2tzKTtcblx0XHRyZWdpc3RlcmVkSG9va3MgPSB0YXJnZXRbaG9va3NdITtcblx0XHRjb25zdCBpbmRleGFibGVUYXJnZXQgPSB0YXJnZXQgYXMgdW5rbm93biBhcyBGdW5jdGlvbk1hcDtcblx0XHRjb25zdCBpbmRleGFibGVDb250cm9sbGVyID0gY29udHJvbGxlciBhcyB1bmtub3duIGFzIERlZXBGdW5jdGlvbk1hcDtcblx0XHRmb3IgKGNvbnN0IHJlZ2lzdGVyZWRIb29rIG9mIHJlZ2lzdGVyZWRIb29rcykge1xuXHRcdFx0cmVnaXN0ZXJlZEhvb2suaGFuZGxlckZ1bmN0aW9uID0gaW5kZXhhYmxlVGFyZ2V0W3JlZ2lzdGVyZWRIb29rLnRhcmdldE1ldGhvZF0uYmluZCh0YXJnZXQpO1xuXHRcdFx0aW5kZXhhYmxlQ29udHJvbGxlcltyZWdpc3RlcmVkSG9vay5uYW1lXVtgYXR0YWNoJHtTdHJpbmcocmVnaXN0ZXJlZEhvb2subWV0aG9kKX1gXShyZWdpc3RlcmVkSG9vay5oYW5kbGVyRnVuY3Rpb24pO1xuXHRcdFx0Y29udHJvbGxlci5nZXRWaWV3KCk/LmF0dGFjaEJlZm9yZUV4aXQ/LigoKSA9PiB7XG5cdFx0XHRcdGluZGV4YWJsZUNvbnRyb2xsZXJbcmVnaXN0ZXJlZEhvb2submFtZV1bYGRldGFjaCR7U3RyaW5nKHJlZ2lzdGVyZWRIb29rLm1ldGhvZCl9YF0ocmVnaXN0ZXJlZEhvb2suaGFuZGxlckZ1bmN0aW9uKTtcblx0XHRcdH0pO1xuXHRcdH1cblx0fVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlQ29udHJvbGxlckV4dGVuc2lvbkhvb2tIYW5kbGVycyhcblx0dGFyZ2V0OiB7IGNvbnN0cnVjdG9yOiBGdW5jdGlvbiAmIHsgW2hvb2tzXT86IEhhbmRsZXJSZWdpc3RyYXRpb25bXSB9IH0gJiB7IFtob29rc10/OiBIYW5kbGVyUmVnaXN0cmF0aW9uW10gfSxcblx0Y29udHJvbGxlcjogQ29udHJvbGxlclxuKTogdm9pZCB7XG5cdGlmICh0YXJnZXRbaG9va3NdKSB7XG5cdFx0Y29uc3QgcmVnaXN0ZXJlZEhvb2tzID0gdGFyZ2V0W2hvb2tzXTtcblx0XHRjb25zdCBpbmRleGFibGVDb250cm9sbGVyID0gY29udHJvbGxlciBhcyB1bmtub3duIGFzIERlZXBGdW5jdGlvbk1hcDtcblx0XHRmb3IgKGNvbnN0IHJlZ2lzdGVyZWRIb29rIG9mIHJlZ2lzdGVyZWRIb29rcykge1xuXHRcdFx0aW5kZXhhYmxlQ29udHJvbGxlcltyZWdpc3RlcmVkSG9vay5uYW1lXT8uW2BkZXRhY2gke1N0cmluZyhyZWdpc3RlcmVkSG9vay5tZXRob2QpfWBdPy4ocmVnaXN0ZXJlZEhvb2suaGFuZGxlckZ1bmN0aW9uKTtcblx0XHR9XG5cdH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3BhZ2F0ZUhvb2tGcm9tTWl4aW4oXG5cdHRhcmdldDogRnVuY3Rpb24gJiB7IFtob29rc10/OiBIYW5kbGVyUmVnaXN0cmF0aW9uW10gfSxcblx0c291cmNlOiBGdW5jdGlvbiAmIHsgW2hvb2tzXT86IEhhbmRsZXJSZWdpc3RyYXRpb25bXSB9XG4pOiB2b2lkIHtcblx0aWYgKHNvdXJjZVtob29rc10pIHtcblx0XHRpZiAodGFyZ2V0W2hvb2tzXSkge1xuXHRcdFx0dGFyZ2V0W2hvb2tzXSEuc3BsaWNlKDAsIDAsIC4uLnNvdXJjZVtob29rc10pO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBob29rcywgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihzb3VyY2UsIGhvb2tzKSB8fCBPYmplY3QuY3JlYXRlKFtdKSk7XG5cdFx0fVxuXHR9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0VBR0E7QUFDQTtBQUNBOztFQWdDQTs7RUFlQTtFQUNBLE1BQU1BLG1CQUErQixHQUFHLEVBQUU7RUFDMUMsTUFBTUMsa0JBQTJDLEdBQUcsRUFBRTs7RUFFdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUNPLFNBQVNDLFFBQVFBLENBQUNDLFNBQXFDLEVBQW1CO0lBQ2hGLE9BQU8sVUFBVUMsTUFBZSxFQUFFQyxXQUE0QixFQUFFQyxVQUE4QixFQUFFO01BQy9GLE1BQU1DLGVBQWUsR0FBR0gsTUFBcUI7TUFFN0NHLGVBQWUsQ0FBQyxTQUFTRixXQUFXLENBQUNHLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFVBQVVDLEVBQVksRUFBUTtRQUNsRixNQUFNQyxtQkFBbUIsR0FBRyxJQUEwQjtRQUN0RCxJQUFJLENBQUNBLG1CQUFtQixDQUFDQyxjQUFjLEVBQUU7VUFDeENELG1CQUFtQixDQUFDQyxjQUFjLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDO1FBQ0EsSUFBSSxDQUFDRCxtQkFBbUIs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
|
|
175
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZWdpc3RlcmVkSW5zdGFuY2VzIiwicmVnaXN0ZXJlZEhhbmRsZXJzIiwiaG9va2FibGUiLCJleGVjdXRpb24iLCJ0YXJnZXQiLCJwcm9wZXJ0eUtleSIsImRlc2NyaXB0b3IiLCJpbmRleGFibGVUYXJnZXQiLCJ0b1N0cmluZyIsImZuIiwiY0V4VEluc3RhbmNlSG9va01hcCIsImhvb2tlZEhhbmRsZXJzIiwicHVzaCIsImhhbmRsZXJzIiwiQXJyYXkiLCJpc0FycmF5IiwiaW5kZXgiLCJpbmRleE9mIiwic3BsaWNlIiwib2xkVmFsdWUiLCJ2YWx1ZSIsImFyZ3MiLCJyZXR1cm5WYWx1ZSIsImJpbmQiLCJoYW5kbGVyIiwiX2V4cG9ydHMiLCJpc0FscmVhZHlSZWdpc3RlcmVkIiwiZXhpc3RpbmdSZWdpc3RyYXRpb25zIiwibmV3UmVnaXN0cmF0aW9uIiwiZmluZCIsInIiLCJuYW1lIiwibWV0aG9kIiwidGFyZ2V0TWV0aG9kIiwiaG9va3MiLCJTeW1ib2wiLCJjb250cm9sbGVyRXh0ZW5zaW9uSGFuZGxlciIsIlN0cmluZyIsImNvbnN0cnVjdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJpbml0Q29udHJvbGxlckV4dGVuc2lvbkhvb2tIYW5kbGVycyIsImNvbnRyb2xsZXIiLCJyZWdpc3RlcmVkSG9va3MiLCJkZWVwQ2xvbmUiLCJpbmRleGFibGVDb250cm9sbGVyIiwicmVnaXN0ZXJlZEhvb2siLCJoYW5kbGVyRnVuY3Rpb24iLCJnZXRWaWV3IiwiYXR0YWNoQmVmb3JlRXhpdCIsInJlbW92ZUNvbnRyb2xsZXJFeHRlbnNpb25Ib29rSGFuZGxlcnMiLCJwcm9wYWdhdGVIb29rRnJvbU1peGluIiwic291cmNlIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiY3JlYXRlIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJIb29rU3VwcG9ydC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZGVlcENsb25lIGZyb20gXCJzYXAvYmFzZS91dGlsL2RlZXBDbG9uZVwiO1xuaW1wb3J0IHR5cGUgeyBFeHRlbnNpb25PdmVycmlkZUV4ZWN1dGlvbiB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB0eXBlIENvbnRyb2xsZXIgZnJvbSBcInNhcC91aS9jb3JlL212Yy9Db250cm9sbGVyXCI7XG4vKipcbiAqIFRoaXMgdHlwZSBpcyB0byBiZSBleHRlbmRlZCB3aXRoIGFsbCBjb250cm9sbGVyIGV4dGVuc2lvbnMgYW5kIG1ldGhvZHMgdGhhdCBhcmUgaG9va2FibGUuXG4gKi9cbnR5cGUgSG9va2FibGVDb250cm9sbGVyRXh0ZW5zaW9ucyA9IHtcblx0ZWRpdEZsb3c6IHtcblx0XHRvbkFmdGVyU2F2ZTogdHJ1ZTtcblx0XHRvbkJlZm9yZVNhdmU6IHRydWU7XG5cdFx0b25BZnRlckVkaXQ6IHRydWU7XG5cdFx0b25BZnRlckRpc2NhcmQ6IHRydWU7XG5cdH07XG5cdGlubGluZUVkaXRGbG93OiB7XG5cdFx0aW5saW5lRWRpdEVuZDogdHJ1ZTtcblx0XHRpbmxpbmVFZGl0U3RhcnQ6IHRydWU7XG5cdH07XG5cdGNvbGxhYm9yYXRpb25NYW5hZ2VyOiB7XG5cdFx0Y29sbGVjdEF2YWlsYWJsZUNhcmRzOiB0cnVlO1xuXHR9O1xuXHRwYWdpbmF0b3I6IHtcblx0XHRpbml0aWFsaXplOiB0cnVlO1xuXHR9O1xuXHRyb3V0aW5nOiB7XG5cdFx0b25BZnRlckJpbmRpbmc6IHRydWU7XG5cdH07XG5cdHZpZXdTdGF0ZToge1xuXHRcdHJldHJpZXZlQWRkaXRpb25hbFN0YXRlczogdHJ1ZTtcblx0XHRhcHBseUFkZGl0aW9uYWxTdGF0ZXM6IHRydWU7XG5cdH07XG5cdF9yb3V0aW5nOiB7XG5cdFx0b25VcGRhdGVQcmVsb2FkZWRWYWx1ZXM6IHRydWU7XG5cdH07XG59O1xuXG50eXBlIEhhbmRsZXJDb25maWd1cmF0aW9uPENFeHROYW1lIGV4dGVuZHMga2V5b2YgSG9va2FibGVDb250cm9sbGVyRXh0ZW5zaW9ucz4gPSB7XG5cdG5hbWU6IENFeHROYW1lO1xuXHRtZXRob2Q6IGtleW9mIEhvb2thYmxlQ29udHJvbGxlckV4dGVuc2lvbnNbQ0V4dE5hbWVdO1xufTtcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG50eXBlIEhhbmRsZXJSZWdpc3RyYXRpb24gPSBIYW5kbGVyQ29uZmlndXJhdGlvbjxhbnk+ICYgeyB0YXJnZXRNZXRob2Q6IHN0cmluZzsgaGFuZGxlckZ1bmN0aW9uPzogRnVuY3Rpb24gfTtcblxudHlwZSBGdW5jdGlvbk1hcCA9IHtcblx0W2tleTogc3RyaW5nXTogRnVuY3Rpb247XG59O1xudHlwZSBEZWVwRnVuY3Rpb25NYXAgPSB7XG5cdFtrZXk6IHN0cmluZ106IEZ1bmN0aW9uTWFwO1xufTtcbnR5cGUgSG9va01hcCA9IHtcblx0aG9va2VkSGFuZGxlcnM6IHtcblx0XHRba2V5OiBzdHJpbmddOiBGdW5jdGlvbltdO1xuXHR9O1xufTtcblxuLy8gVXNlIHR3byBhcnJheXMgYXMgd2UgY2Fubm90IGluZGV4IGEgbWFwIHRocm91Z2ggYW4gYXJiaXRyYXJ5IG9iamVjdCBpbnN0YW5jZVxuY29uc3QgcmVnaXN0ZXJlZEluc3RhbmNlczogRnVuY3Rpb25bXSA9IFtdO1xuY29uc3QgcmVnaXN0ZXJlZEhhbmRsZXJzOiBIYW5kbGVyUmVnaXN0cmF0aW9uW11bXSA9IFtdO1xuXG4vKipcbiAqIE1hcmtzIGEgY29udHJvbGxlciBleHRlbnNpb24gbWV0aG9kIHRvIGJlIGhvb2thYmxlIGJ5IGdlbmVyYXRpbmcgYWRkaXRpb25hbCBtZXRob2RzIHRoYXQgY2FuIGJlIHVzZWQgdG8gYXR0YWNoIGFuZCBkZXRhY2ggaGFuZGxlcnMgYXQgcnVudGltZS5cbiAqIEBwYXJhbSBleGVjdXRpb25cbiAqIEByZXR1cm5zIEEgbWV0aG9kIGRlY29yYXRvclxuICovXG5leHBvcnQgZnVuY3Rpb24gaG9va2FibGUoZXhlY3V0aW9uOiBFeHRlbnNpb25PdmVycmlkZUV4ZWN1dGlvbik6IE1ldGhvZERlY29yYXRvciB7XG5cdHJldHVybiBmdW5jdGlvbiAodGFyZ2V0OiB1bmtub3duLCBwcm9wZXJ0eUtleTogc3RyaW5nIHwgc3ltYm9sLCBkZXNjcmlwdG9yOiBQcm9wZXJ0eURlc2NyaXB0b3IpIHtcblx0XHRjb25zdCBpbmRleGFibGVUYXJnZXQgPSB0YXJnZXQgYXMgRnVuY3Rpb25NYXA7XG5cblx0XHRpbmRleGFibGVUYXJnZXRbYGF0dGFjaCR7cHJvcGVydHlLZXkudG9TdHJpbmcoKX1gXSA9IGZ1bmN0aW9uIChmbjogRnVuY3Rpb24pOiB2b2lkIHtcblx0XHRcdGNvbnN0IGNFeFRJbnN0YW5jZUhvb2tNYXAgPSB0aGlzIGFzIHVua25vd24gYXMgSG9va01hcDtcblx0XHRcdGlmICghY0V4VEluc3RhbmNlSG9va01hcC5ob29rZWRIYW5kbGVycykge1xuXHRcdFx0XHRjRXhUSW5zdGFuY2VIb29rTWFwLmhvb2tlZEhhbmRsZXJzID0ge307XG5cdFx0XHR9XG5cdFx0XHRpZiAoIWNFeFRJbnN0YW5jZUhvb2tNYXAuaG9va2VkSGFuZGxlcnNbcHJvcGVydHlLZXkudG9TdHJpbmcoKV0pIHtcblx0XHRcdFx0Y0V4VEluc3RhbmNlSG9va01hcC5ob29rZWRIYW5kbGVyc1twcm9wZXJ0eUtleS50b1N0cmluZygpXSA9IFtdO1xuXHRcdFx0fVxuXHRcdFx0Y0V4VEluc3RhbmNlSG9va01hcC5ob29rZWRIYW5kbGVyc1twcm9wZXJ0eUtleS50b1N0cmluZygpXS5wdXNoKGZuKTtcblx0XHR9O1xuXHRcdGluZGV4YWJsZVRhcmdldFtgZGV0YWNoJHtwcm9wZXJ0eUtleS50b1N0cmluZygpfWBdID0gZnVuY3Rpb24gKGZuOiBGdW5jdGlvbik6IHZvaWQge1xuXHRcdFx0Y29uc3QgY0V4VEluc3RhbmNlSG9va01hcCA9IHRoaXMgYXMgdW5rbm93biBhcyBIb29rTWFwO1xuXHRcdFx0Y29uc3QgaGFuZGxlcnMgPSBjRXhUSW5zdGFuY2VIb29rTWFwLmhvb2tlZEhhbmRsZXJzPy5bcHJvcGVydHlLZXkudG9TdHJpbmcoKV07XG5cdFx0XHRpZiAoQXJyYXkuaXNBcnJheShoYW5kbGVycykpIHtcblx0XHRcdFx0Y29uc3QgaW5kZXggPSBoYW5kbGVycy5pbmRleE9mKGZuKTtcblx0XHRcdFx0aWYgKGluZGV4ICE9PSAtMSkge1xuXHRcdFx0XHRcdGhhbmRsZXJzLnNwbGljZShpbmRleCwgMSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9O1xuXG5cdFx0Y29uc3Qgb2xkVmFsdWUgPSBkZXNjcmlwdG9yLnZhbHVlO1xuXHRcdGlmIChleGVjdXRpb24gPT09IFwiQmVmb3JlQXN5bmNcIiB8fCBleGVjdXRpb24gPT09IFwiQWZ0ZXJBc3luY1wiKSB7XG5cdFx0XHRkZXNjcmlwdG9yLnZhbHVlID0gYXN5bmMgZnVuY3Rpb24gKC4uLmFyZ3M6IHVua25vd25bXSk6IFByb21pc2U8dW5rbm93bj4ge1xuXHRcdFx0XHRjb25zdCBjRXhUSW5zdGFuY2VIb29rTWFwID0gdGhpcyBhcyB1bmtub3duIGFzIEhvb2tNYXA7XG5cdFx0XHRcdGNvbnN0IGhhbmRsZXJzID0gKGNFeFRJbnN0YW5jZUhvb2tNYXA/Lmhvb2tlZEhhbmRsZXJzICYmIGNFeFRJbnN0YW5jZUhvb2tNYXA/Lmhvb2tlZEhhbmRsZXJzW3Byb3BlcnR5S2V5LnRvU3RyaW5nKCldKSB8fCBbXTtcblx0XHRcdFx0bGV0IHJldHVyblZhbHVlOiB1bmtub3duO1xuXHRcdFx0XHRpZiAoZXhlY3V0aW9uID09PSBcIkFmdGVyQXN5bmNcIikge1xuXHRcdFx0XHRcdHJldHVyblZhbHVlID0gYXdhaXQgb2xkVmFsdWUuYmluZCh0aGlzKSguLi5hcmdzKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRmb3IgKGNvbnN0IGhhbmRsZXIgb2YgaGFuZGxlcnMpIHtcblx0XHRcdFx0XHRhd2FpdCBoYW5kbGVyLmJpbmQodGhpcykoLi4uYXJncyk7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKGV4ZWN1dGlvbiA9PT0gXCJCZWZvcmVBc3luY1wiKSB7XG5cdFx0XHRcdFx0cmV0dXJuVmFsdWUgPSBhd2FpdCBvbGRWYWx1ZS5iaW5kKHRoaXMpKC4uLmFyZ3MpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiByZXR1cm5WYWx1ZTtcblx0XHRcdH07XG5cdFx0fSBlbHNlIHtcblx0XHRcdGRlc2NyaXB0b3IudmFsdWUgPSBmdW5jdGlvbiAoLi4uYXJnczogdW5rbm93bltdKTogdW5rbm93biB7XG5cdFx0XHRcdGNvbnN0IGNFeFRJbnN0YW5jZUhvb2tNYXAgPSB0aGlzIGFzIHVua25vd24gYXMgSG9va01hcDtcblx0XHRcdFx0Y29uc3QgaGFuZGxlcnMgPSAoY0V4VEluc3RhbmNlSG9va01hcD8uaG9va2VkSGFuZGxlcnMgJiYgY0V4VEluc3RhbmNlSG9va01hcD8uaG9va2VkSGFuZGxlcnNbcHJvcGVydHlLZXkudG9TdHJpbmcoKV0pIHx8IFtdO1xuXHRcdFx0XHRsZXQgcmV0dXJuVmFsdWU6IHVua25vd247XG5cdFx0XHRcdGlmIChleGVjdXRpb24gPT09IFwiQWZ0ZXJcIikge1xuXHRcdFx0XHRcdHJldHVyblZhbHVlID0gb2xkVmFsdWUuYmluZCh0aGlzKSguLi5hcmdzKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRmb3IgKGNvbnN0IGhhbmRsZXIgb2YgaGFuZGxlcnMpIHtcblx0XHRcdFx0XHRoYW5kbGVyLmJpbmQodGhpcykoLi4uYXJncyk7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKGV4ZWN1dGlvbiA9PT0gXCJCZWZvcmVcIikge1xuXHRcdFx0XHRcdHJldHVyblZhbHVlID0gb2xkVmFsdWUuYmluZCh0aGlzKSguLi5hcmdzKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gcmV0dXJuVmFsdWU7XG5cdFx0XHR9O1xuXHRcdH1cblx0fTtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciBhIG5ld1JlZ2lzdHJhdGlvbiBpcyBhbHJlYWR5IGluY2x1ZGVkIGluIHNvbWUgZXhpc3RpbmdSZWdpc3RyYXRpb25zIGJ5IGNvbXBhcmluZyBhbGwgcmVsZXZhbnQgYXR0cmlidXRlcy5cbiAqIEBwYXJhbSBleGlzdGluZ1JlZ2lzdHJhdGlvbnNcbiAqIEBwYXJhbSBuZXdSZWdpc3RyYXRpb25cbiAqIEByZXR1cm5zIFJlc3VsdCBvZiB0aGUgY2hlY2tcbiAqL1xuZnVuY3Rpb24gaXNBbHJlYWR5UmVnaXN0ZXJlZChleGlzdGluZ1JlZ2lzdHJhdGlvbnM6IEhhbmRsZXJSZWdpc3RyYXRpb25bXSwgbmV3UmVnaXN0cmF0aW9uOiBIYW5kbGVyUmVnaXN0cmF0aW9uKTogYm9vbGVhbiB7XG5cdHJldHVybiAhIWV4aXN0aW5nUmVnaXN0cmF0aW9ucy5maW5kKFxuXHRcdChyKSA9PiByLm5hbWUgPT09IG5ld1JlZ2lzdHJhdGlvbi5uYW1lICYmIHIubWV0aG9kID09PSBuZXdSZWdpc3RyYXRpb24ubWV0aG9kICYmIHIudGFyZ2V0TWV0aG9kID09PSBuZXdSZWdpc3RyYXRpb24udGFyZ2V0TWV0aG9kXG5cdCk7XG59XG5cbmV4cG9ydCBjb25zdCBob29rcyA9IFN5bWJvbChcImhvb2tzXCIpO1xuXG4vKipcbiAqIFJlZ2lzdGVycyBhIG1ldGhvZCBhcyBjb250cm9sbGVyIGV4dGVuc2lvbiBob29rIGhhbmRsZXIuXG4gKlxuICogQ3VycmVudGx5LCBvbmx5IG1ldGhvZHMgb2YgcnVudGltZSBidWlsZGluZyBibG9ja3MgYXJlIHN1cHBvcnRlZC5cbiAqIEBwYXJhbSBuYW1lIENvbnRyb2xsZXIgZXh0ZW5zaW9uIHRvIGhvb2sgaW50b1xuICogQHBhcmFtIG1ldGhvZCBNZXRob2QgdG8gaG9vayBpbnRvXG4gKiBAcmV0dXJucyBBIG1ldGhvZCBkZWNvcmF0b3JcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbnRyb2xsZXJFeHRlbnNpb25IYW5kbGVyPENFeHROYW1lIGV4dGVuZHMga2V5b2YgSG9va2FibGVDb250cm9sbGVyRXh0ZW5zaW9ucz4oXG5cdG5hbWU6IENFeHROYW1lLFxuXHRtZXRob2Q6IGtleW9mIEhvb2thYmxlQ29udHJvbGxlckV4dGVuc2lvbnNbQ0V4dE5hbWVdXG4pOiBNZXRob2REZWNvcmF0b3Ige1xuXHRyZXR1cm4gZnVuY3Rpb24gKHRhcmdldDogeyBjb25zdHJ1Y3RvcjogRnVuY3Rpb24gJiB7IFtob29rc10/OiBIYW5kbGVyUmVnaXN0cmF0aW9uW10gfSB9LCBwcm9wZXJ0eUtleTogc3RyaW5nKSB7XG5cdFx0Y29uc3QgbmV3UmVnaXN0cmF0aW9uID0geyBuYW1lLCBtZXRob2Q6IFN0cmluZyhtZXRob2QpLCB0YXJnZXRNZXRob2Q6IHByb3BlcnR5S2V5IH07XG5cdFx0Y29uc3QgaW5kZXggPSByZWdpc3RlcmVkSW5zdGFuY2VzLmluZGV4T2YodGFyZ2V0LmNvbnN0cnVjdG9yKTtcblx0XHRpZiAoIXRhcmdldC5jb25zdHJ1Y3Rvcltob29rc10pIHtcblx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQuY29uc3RydWN0b3IsIGhvb2tzLCB7XG5cdFx0XHRcdHZhbHVlOiBbXVxuXHRcdFx0fSk7XG5cdFx0fVxuXHRcdHRhcmdldC5jb25zdHJ1Y3Rvcltob29rc10/LnB1c2gobmV3UmVnaXN0cmF0aW9uKTtcblx0XHQvLyBXZSBuZWVkIHRvIGNoZWNrIGlmIHRoaXMgZXhhY3QgaGFuZGxlciBpcyBhbHJlYWR5IHJlZ2lzdGVyZWQgYXMgaGFuZGxlcnMgYXJlIHJlZ2lzdGVyZWQgc3RhdGljYWxseSAob24gdGhlIGNvbnN0cnVjdG9yKVxuXHRcdGlmIChpbmRleCAhPT0gLTEgJiYgIWlzQWxyZWFkeVJlZ2lzdGVyZWQocmVnaXN0ZXJlZEhhbmRsZXJzW2luZGV4XSwgbmV3UmVnaXN0cmF0aW9uKSkge1xuXHRcdFx0cmVnaXN0ZXJlZEhhbmRsZXJzW2luZGV4XS5wdXNoKG5ld1JlZ2lzdHJhdGlvbik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJlZ2lzdGVyZWRJbnN0YW5jZXMucHVzaCh0YXJnZXQuY29uc3RydWN0b3IpO1xuXHRcdFx0cmVnaXN0ZXJlZEhhbmRsZXJzLnB1c2goW25ld1JlZ2lzdHJhdGlvbl0pO1xuXHRcdH1cblx0fSBhcyBNZXRob2REZWNvcmF0b3I7XG59XG5cbi8qKlxuICogSW5pdGlhbGl6ZXMgYWxsIGNvbnRyb2xsZXIgZXh0ZW5zaW9uIGhhbmRsZXJzIHJlZ2lzdGVyZWQgZm9yIGEgZ2l2ZW4gdGFyZ2V0LlxuICogQHBhcmFtIHRhcmdldCBUYXJnZXQgY2xhc3MgdG8gaW5pdGlhbGl6ZSB0aGUgaGFuZGxlcnMgZm9yXG4gKiBAcGFyYW0gdGFyZ2V0LmNvbnN0cnVjdG9yXG4gKiBAcGFyYW0gY29udHJvbGxlciBQYWdlQ29udHJvbGxlciBpbnN0YW5jZSB0byBnZXQgdGhlIGNvbnRyb2xsZXIgZXh0ZW5zaW9ucyBpbnN0YW5jZXMgZnJvbVxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5pdENvbnRyb2xsZXJFeHRlbnNpb25Ib29rSGFuZGxlcnMoXG5cdHRhcmdldDogeyBjb25zdHJ1Y3RvcjogRnVuY3Rpb24gJiB7IFtob29rc10/OiBIYW5kbGVyUmVnaXN0cmF0aW9uW10gfSB9ICYgeyBbaG9va3NdPzogSGFuZGxlclJlZ2lzdHJhdGlvbltdIH0sXG5cdGNvbnRyb2xsZXI6IENvbnRyb2xsZXJcbik6IHZvaWQge1xuXHRpZiAodGFyZ2V0LmNvbnN0cnVjdG9yW2hvb2tzXSkge1xuXHRcdGxldCByZWdpc3RlcmVkSG9va3MgPSB0YXJnZXQuY29uc3RydWN0b3JbaG9va3NdO1xuXHRcdHRhcmdldFtob29rc10gPSBkZWVwQ2xvbmUocmVnaXN0ZXJlZEhvb2tzKTtcblx0XHRyZWdpc3RlcmVkSG9va3MgPSB0YXJnZXRbaG9va3NdITtcblx0XHRjb25zdCBpbmRleGFibGVUYXJnZXQgPSB0YXJnZXQgYXMgdW5rbm93biBhcyBGdW5jdGlvbk1hcDtcblx0XHRjb25zdCBpbmRleGFibGVDb250cm9sbGVyID0gY29udHJvbGxlciBhcyB1bmtub3duIGFzIERlZXBGdW5jdGlvbk1hcDtcblx0XHRmb3IgKGNvbnN0IHJlZ2lzdGVyZWRIb29rIG9mIHJlZ2lzdGVyZWRIb29rcykge1xuXHRcdFx0cmVnaXN0ZXJlZEhvb2suaGFuZGxlckZ1bmN0aW9uID0gaW5kZXhhYmxlVGFyZ2V0W3JlZ2lzdGVyZWRIb29rLnRhcmdldE1ldGhvZF0uYmluZCh0YXJnZXQpO1xuXHRcdFx0aW5kZXhhYmxlQ29udHJvbGxlcltyZWdpc3RlcmVkSG9vay5uYW1lXVtgYXR0YWNoJHtTdHJpbmcocmVnaXN0ZXJlZEhvb2subWV0aG9kKX1gXShyZWdpc3RlcmVkSG9vay5oYW5kbGVyRnVuY3Rpb24pO1xuXHRcdFx0Y29udHJvbGxlci5nZXRWaWV3KCk/LmF0dGFjaEJlZm9yZUV4aXQ/LigoKSA9PiB7XG5cdFx0XHRcdGluZGV4YWJsZUNvbnRyb2xsZXJbcmVnaXN0ZXJlZEhvb2submFtZV1bYGRldGFjaCR7U3RyaW5nKHJlZ2lzdGVyZWRIb29rLm1ldGhvZCl9YF0ocmVnaXN0ZXJlZEhvb2suaGFuZGxlckZ1bmN0aW9uKTtcblx0XHRcdH0pO1xuXHRcdH1cblx0fVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlQ29udHJvbGxlckV4dGVuc2lvbkhvb2tIYW5kbGVycyhcblx0dGFyZ2V0OiB7IGNvbnN0cnVjdG9yOiBGdW5jdGlvbiAmIHsgW2hvb2tzXT86IEhhbmRsZXJSZWdpc3RyYXRpb25bXSB9IH0gJiB7IFtob29rc10/OiBIYW5kbGVyUmVnaXN0cmF0aW9uW10gfSxcblx0Y29udHJvbGxlcjogQ29udHJvbGxlclxuKTogdm9pZCB7XG5cdGlmICh0YXJnZXRbaG9va3NdKSB7XG5cdFx0Y29uc3QgcmVnaXN0ZXJlZEhvb2tzID0gdGFyZ2V0W2hvb2tzXTtcblx0XHRjb25zdCBpbmRleGFibGVDb250cm9sbGVyID0gY29udHJvbGxlciBhcyB1bmtub3duIGFzIERlZXBGdW5jdGlvbk1hcDtcblx0XHRmb3IgKGNvbnN0IHJlZ2lzdGVyZWRIb29rIG9mIHJlZ2lzdGVyZWRIb29rcykge1xuXHRcdFx0aW5kZXhhYmxlQ29udHJvbGxlcltyZWdpc3RlcmVkSG9vay5uYW1lXT8uW2BkZXRhY2gke1N0cmluZyhyZWdpc3RlcmVkSG9vay5tZXRob2QpfWBdPy4ocmVnaXN0ZXJlZEhvb2suaGFuZGxlckZ1bmN0aW9uKTtcblx0XHR9XG5cdH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3BhZ2F0ZUhvb2tGcm9tTWl4aW4oXG5cdHRhcmdldDogRnVuY3Rpb24gJiB7IFtob29rc10/OiBIYW5kbGVyUmVnaXN0cmF0aW9uW10gfSxcblx0c291cmNlOiBGdW5jdGlvbiAmIHsgW2hvb2tzXT86IEhhbmRsZXJSZWdpc3RyYXRpb25bXSB9XG4pOiB2b2lkIHtcblx0aWYgKHNvdXJjZVtob29rc10pIHtcblx0XHRpZiAodGFyZ2V0W2hvb2tzXSkge1xuXHRcdFx0dGFyZ2V0W2hvb2tzXSEuc3BsaWNlKDAsIDAsIC4uLnNvdXJjZVtob29rc10pO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBob29rcywgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihzb3VyY2UsIGhvb2tzKSB8fCBPYmplY3QuY3JlYXRlKFtdKSk7XG5cdFx0fVxuXHR9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0VBR0E7QUFDQTtBQUNBOztFQWtDQTs7RUFlQTtFQUNBLE1BQU1BLG1CQUErQixHQUFHLEVBQUU7RUFDMUMsTUFBTUMsa0JBQTJDLEdBQUcsRUFBRTs7RUFFdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUNPLFNBQVNDLFFBQVFBLENBQUNDLFNBQXFDLEVBQW1CO0lBQ2hGLE9BQU8sVUFBVUMsTUFBZSxFQUFFQyxXQUE0QixFQUFFQyxVQUE4QixFQUFFO01BQy9GLE1BQU1DLGVBQWUsR0FBR0gsTUFBcUI7TUFFN0NHLGVBQWUsQ0FBQyxTQUFTRixXQUFXLENBQUNHLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFVBQVVDLEVBQVksRUFBUTtRQUNsRixNQUFNQyxtQkFBbUIsR0FBRyxJQUEwQjtRQUN0RCxJQUFJLENBQUNBLG1CQUFtQixDQUFDQyxjQUFjLEVBQUU7VUFDeENELG1CQUFtQixDQUFD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
|
|
@@ -132,7 +132,9 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/BindingToolkit", "sap/m/Text", "sap/
|
|
|
132
132
|
* Processes an object property for function processProperties.
|
|
133
133
|
*
|
|
134
134
|
* If the property is a promise, it adds it to the late properties map. If the property is a binding info holder,
|
|
135
|
-
* it sets the binding info to the settings.
|
|
135
|
+
* it sets the binding info to the settings. If the property is a plain PropertyBindingInfo (e.g. from a column
|
|
136
|
+
* building block property with isBindingInfo: true), it is forwarded as-is so that ManagedObject can set up the
|
|
137
|
+
* binding correctly.
|
|
136
138
|
* @param settings The settings of the control
|
|
137
139
|
* @param settingsKey The key of the setting being processed
|
|
138
140
|
* @param value The object value to process
|
|
@@ -144,6 +146,11 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/BindingToolkit", "sap/m/Text", "sap/
|
|
|
144
146
|
delete settings[settingsKey];
|
|
145
147
|
} else if (value.__bindingInfo) {
|
|
146
148
|
settings[settingsKey] = value.__bindingInfo;
|
|
149
|
+
} else if (typeof value.path === "string" || Array.isArray(value.parts)) {
|
|
150
|
+
// Plain PropertyBindingInfo object (e.g. from a BB property with isBindingInfo: true).
|
|
151
|
+
// Covers both simple {path, model} and composite {parts: [...]} bindings.
|
|
152
|
+
// Forward it directly so ManagedObject sets up the binding.
|
|
153
|
+
settings[settingsKey] = value;
|
|
147
154
|
}
|
|
148
155
|
}
|
|
149
156
|
|
|
@@ -264,6 +271,9 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/BindingToolkit", "sap/m/Text", "sap/
|
|
|
264
271
|
}
|
|
265
272
|
for (const latePropertiesKey in lateProperties) {
|
|
266
273
|
lateProperties[latePropertiesKey].then(value => {
|
|
274
|
+
if (targetControlInstance.isDestroyed()) {
|
|
275
|
+
return;
|
|
276
|
+
}
|
|
267
277
|
return targetControlInstance.setProperty(latePropertiesKey, value);
|
|
268
278
|
}).catch(error => {
|
|
269
279
|
Log.error(`Couldn't set property ${latePropertiesKey} on ${ControlType.getMetadata().getName()}`, error, "jsxControl");
|
|
@@ -282,4 +292,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/base/BindingToolkit", "sap/m/Text", "sap/
|
|
|
282
292
|
};
|
|
283
293
|
return jsxControl;
|
|
284
294
|
}, false);
|
|
285
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGTF9ERUxFR0FURSIsIkNPUkVfUkVRVUlSRSIsIkRUX0RFU0lHTlRJTUUiLCJhZGRDaGlsZEFnZ3JlZ2F0aW9uIiwiYWdncmVnYXRpb25DaGlsZHJlbiIsImFnZ3JlZ2F0aW9uTmFtZSIsImNoaWxkIiwidW5kZWZpbmVkIiwiaXNDaGlsZEFuRWxlbWVudCIsInB1c2giLCJBcnJheSIsImlzQXJyYXkiLCJmb3JFYWNoIiwic3ViQ2hpbGQiLCJPYmplY3QiLCJrZXlzIiwiY2hpbGRLZXkiLCJjaGlsZHJlbiIsImlzQSIsImlzQUNvbnRyb2wiLCJnZXRNZXRhZGF0YSIsInByb2Nlc3NBZ2dyZWdhdGlvbnMiLCJtZXRhZGF0YSIsIm1TZXR0aW5ncyIsIm1ldGFkYXRhQWdncmVnYXRpb25zIiwiZ2V0QWxsQWdncmVnYXRpb25zIiwiZGVmYXVsdEFnZ3JlZ2F0aW9uTmFtZSIsImdldERlZmF1bHRBZ2dyZWdhdGlvbk5hbWUiLCJoYXNPd25Qcm9wZXJ0eSIsInJlc3VsdGluZ1BhcnNlIiwiQmluZGluZ0luZm8iLCJwYXJzZSIsInBhdGgiLCJtb2RlbCIsImZhY3RvcnkiLCJ0ZW1wbGF0ZSIsInByb2Nlc3NCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb24iLCJzZXR0aW5ncyIsInNldHRpbmdzS2V5IiwiYmluZGluZ1Rvb2xraXRFeHByZXNzaW9uIiwiYWxsUHJvcGVydGllcyIsImlzQ29uc3RhbnQiLCJjb21waWxlQ29uc3RhbnQiLCJjYWxsIiwiaXNQYXRoSW5Nb2RlbEV4cHJlc3Npb24iLCJtb2RlbE5hbWUiLCJjb21waWxlRXhwcmVzc2lvbiIsInByb2Nlc3NTdHJpbmdQcm9wZXJ0eSIsInZhbHVlIiwiYWxsRXZlbnRzIiwic3RhcnRzV2l0aCIsIkxvZyIsImVycm9yIiwiZ2V0TmFtZSIsInByb3BlcnR5VHlwZSIsImdldFR5cGUiLCJEYXRhVHlwZSIsImluY2x1ZGVzIiwicGFyc2VWYWx1ZSIsInByb2Nlc3NPYmplY3RQcm9wZXJ0eSIsImxhdGVQcm9wZXJ0aWVzIiwidGhlbiIsIl9fYmluZGluZ0luZm8iLCJwcm9jZXNzUHJvcGVydGllcyIsImdldEFsbEV2ZW50cyIsImdldEFsbFByb3BlcnRpZXMiLCJpc0JpbmRpbmdUb29sa2l0RXhwcmVzc2lvbiIsInByb2Nlc3NDb21tYW5kIiwiY29tbWFuZFByb3BlcnR5IiwiY29tbWFuZCIsImV2ZW50TmFtZSIsInNwbGl0IiwiZXZlbnQiLCJuYW1lIiwiRXZlbnRIYW5kbGVyUmVzb2x2ZXIiLCJyZXNvbHZlRXZlbnRIYW5kbGVyIiwianN4Q29udHJvbCIsIkNvbnRyb2xUeXBlIiwia2V5IiwiX2pzeENvbnRleHQiLCJfanN4Rm9ybWF0dGVyQ29udGV4dCIsInRhcmdldENvbnRyb2wiLCJpc0ZyYWdtZW50IiwiY2xhc3NEZWYiLCJjbGFzcyIsInJlZkRlZiIsInJlZiIsImJpbmRpbmdEZWYiLCJiaW5kaW5nIiwiZmxEZWxlZ2F0ZSIsImR0RGVzaWdudGltZSIsInRhcmdldENvbnRyb2xJbnN0YW5jZSIsImFkZFN0eWxlQ2xhc3MiLCJzZXRDdXJyZW50IiwiY3VzdG9tU2V0dGluZ3MiLCJkYXRhIiwiZGVzaWdudGltZSIsImRlbGVnYXRlIiwibGVuZ3RoIiwiYmluZGluZ0luZm8iLCJiaW5kRWxlbWVudCIsInBhcmFtZXRlcnMiLCJiaW5kaW5nRGVmS2V5IiwibGF0ZVByb3BlcnRpZXNLZXkiLCJzZXRQcm9wZXJ0eSIsImNhdGNoIiwiY29udHJvbFR5cGVGbiIsIlRleHQiLCJ0ZXh0Il0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJqc3gtY29udHJvbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB0eXBlIHsgQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uIH0gZnJvbSBcInNhcC9mZS9iYXNlL0JpbmRpbmdUb29sa2l0XCI7XG5pbXBvcnQge1xuXHRjb21waWxlQ29uc3RhbnQsXG5cdGNvbXBpbGVFeHByZXNzaW9uLFxuXHRpc0JpbmRpbmdUb29sa2l0RXhwcmVzc2lvbixcblx0aXNDb25zdGFudCxcblx0aXNQYXRoSW5Nb2RlbEV4cHJlc3Npb25cbn0gZnJvbSBcInNhcC9mZS9iYXNlL0JpbmRpbmdUb29sa2l0XCI7XG5pbXBvcnQgdHlwZSB7IEJpbmRpbmdJbmZvSG9sZGVyLCBOb25BYnN0cmFjdENsYXNzIH0gZnJvbSBcInNhcC9mZS9iYXNlL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IHR5cGUgeyBDb250cm9sUHJvcGVydGllcywgSlNYQ29udGV4dCwgTm9uQ29udHJvbFByb3BlcnRpZXMsIFJlZiB9IGZyb20gXCJzYXAvZmUvYmFzZS9qc3gtcnVudGltZS9qc3hcIjtcbmltcG9ydCBUZXh0IGZyb20gXCJzYXAvbS9UZXh0XCI7XG5pbXBvcnQgQmluZGluZ0luZm8gZnJvbSBcInNhcC91aS9iYXNlL0JpbmRpbmdJbmZvXCI7XG5pbXBvcnQgRGF0YVR5cGUgZnJvbSBcInNhcC91aS9iYXNlL0RhdGFUeXBlXCI7XG5pbXBvcnQgdHlwZSBNYW5hZ2VkT2JqZWN0TWV0YWRhdGEgZnJvbSBcInNhcC91aS9iYXNlL01hbmFnZWRPYmplY3RNZXRhZGF0YVwiO1xuaW1wb3J0IHR5cGUgQ29udHJvbCBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHR5cGUgeyAkQ29udHJvbFNldHRpbmdzIH0gZnJvbSBcInNhcC91aS9jb3JlL0NvbnRyb2xcIjtcbmltcG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBFbGVtZW50LCBkZWZhdWx0IGFzIFVJNUVsZW1lbnQgfSBmcm9tIFwic2FwL3VpL2NvcmUvRWxlbWVudFwiO1xuaW1wb3J0IEV2ZW50SGFuZGxlclJlc29sdmVyIGZyb20gXCJzYXAvdWkvY29yZS9tdmMvRXZlbnRIYW5kbGVyUmVzb2x2ZXJcIjtcblxuY29uc3QgRkxfREVMRUdBVEUgPSBcImZsOmRlbGVnYXRlXCI7XG5jb25zdCBDT1JFX1JFUVVJUkUgPSBcImNvcmU6cmVxdWlyZVwiO1xuY29uc3QgRFRfREVTSUdOVElNRSA9IFwiZHQ6ZGVzaWdudGltZVwiO1xuY29uc3QgYWRkQ2hpbGRBZ2dyZWdhdGlvbiA9IGZ1bmN0aW9uIChcblx0YWdncmVnYXRpb25DaGlsZHJlbjogUmVjb3JkPHN0cmluZywgKHN0cmluZyB8IFVJNUVsZW1lbnQpW10+LFxuXHRhZ2dyZWdhdGlvbk5hbWU6IHN0cmluZyxcblx0Y2hpbGQ/OiBzdHJpbmcgfCBVSTVFbGVtZW50IHwgVUk1RWxlbWVudFtdXG4pOiB2b2lkIHtcblx0aWYgKGNoaWxkID09PSBudWxsIHx8IGNoaWxkID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIGNoaWxkID09PSBcInN0cmluZ1wiKSB7XG5cdFx0cmV0dXJuO1xuXHR9XG5cdGlmICghYWdncmVnYXRpb25DaGlsZHJlblthZ2dyZWdhdGlvbk5hbWVdKSB7XG5cdFx0YWdncmVnYXRpb25DaGlsZHJlblthZ2dyZWdhdGlvbk5hbWVdID0gW107XG5cdH1cblx0aWYgKGlzQ2hpbGRBbkVsZW1lbnQoY2hpbGQpKSB7XG5cdFx0YWdncmVnYXRpb25DaGlsZHJlblthZ2dyZWdhdGlvbk5hbWVdLnB1c2goY2hpbGQpO1xuXHR9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoY2hpbGQpKSB7XG5cdFx0Y2hpbGQuZm9yRWFjaCgoc3ViQ2hpbGQpID0+IHtcblx0XHRcdGFkZENoaWxkQWdncmVnYXRpb24oYWdncmVnYXRpb25DaGlsZHJlbiwgYWdncmVnYXRpb25OYW1lLCBzdWJDaGlsZCk7XG5cdFx0fSk7XG5cdH0gZWxzZSBpZiAodHlwZW9mIGNoaWxkID09PSBcImZ1bmN0aW9uXCIpIHtcblx0XHRhZ2dyZWdhdGlvbkNoaWxkcmVuW2FnZ3JlZ2F0aW9uTmFtZV0gPSBjaGlsZDtcblx0fSBlbHNlIHtcblx0XHRPYmplY3Qua2V5cyhjaGlsZCkuZm9yRWFjaCgoY2hpbGRLZXkpID0+IHtcblx0XHRcdGFkZENoaWxkQWdncmVnYXRpb24oYWdncmVnYXRpb25DaGlsZHJlbiwgY2hpbGRLZXksIGNoaWxkW2NoaWxkS2V5XSk7XG5cdFx0fSk7XG5cdH1cbn07XG5jb25zdCBpc0NoaWxkQW5FbGVtZW50ID0gZnVuY3Rpb24gKGNoaWxkcmVuPzogdW5rbm93bik6IGNoaWxkcmVuIGlzIEVsZW1lbnQge1xuXHRyZXR1cm4gKGNoaWxkcmVuIGFzIEVsZW1lbnQpPy5pc0E/LihcInNhcC51aS5jb3JlLkVsZW1lbnRcIik7XG59O1xuY29uc3QgaXNBQ29udHJvbCA9IGZ1bmN0aW9uIChjaGlsZHJlbj86IHR5cGVvZiBDb250cm9sIHwgRnVuY3Rpb24pOiBjaGlsZHJlbiBpcyBOb25BYnN0cmFjdENsYXNzPENvbnRyb2w+IHtcblx0cmV0dXJuICEhKGNoaWxkcmVuIGFzIHR5cGVvZiBDb250cm9sKT8uZ2V0TWV0YWRhdGE7XG59O1xuXG5mdW5jdGlvbiBwcm9jZXNzQWdncmVnYXRpb25zKG1ldGFkYXRhOiBNYW5hZ2VkT2JqZWN0TWV0YWRhdGEsIG1TZXR0aW5nczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pOiB2b2lkIHtcblx0Y29uc3QgbWV0YWRhdGFBZ2dyZWdhdGlvbnMgPSBtZXRhZGF0YS5nZXRBbGxBZ2dyZWdhdGlvbnMoKTtcblx0Y29uc3QgZGVmYXVsdEFnZ3JlZ2F0aW9uTmFtZSA9IG1ldGFkYXRhLmdldERlZmF1bHRBZ2dyZWdhdGlvbk5hbWUoKTtcblx0Y29uc3QgYWdncmVnYXRpb25DaGlsZHJlbjogUmVjb3JkPHN0cmluZywgKHN0cmluZyB8IFVJNUVsZW1lbnQpW10+ID0ge307XG5cdGFkZENoaWxkQWdncmVnYXRpb24oYWdncmVnYXRpb25DaGlsZHJlbiwgZGVmYXVsdEFnZ3JlZ2F0aW9uTmFtZSwgbVNldHRpbmdzLmNoaWxkcmVuIGFzIHN0cmluZyB8IFVJNUVsZW1lbnQgfCBVSTVFbGVtZW50W10pO1xuXHRkZWxldGUgbVNldHRpbmdzLmNoaWxkcmVuO1xuXHQvLyBmaW5kIG91dCB3aGljaCBhZ2dyZWdhdGlvbiBhcmUgYm91bmQgKGJvdGggaW4gY2hpbGRyZW4gYW5kIGRpcmVjdGx5IHVuZGVyIGl0KVxuXHRPYmplY3Qua2V5cyhtZXRhZGF0YUFnZ3JlZ2F0aW9ucykuZm9yRWFjaCgoYWdncmVnYXRpb25OYW1lKSA9PiB7XG5cdFx0aWYgKGFnZ3JlZ2F0aW9uQ2hpbGRyZW5bYWdncmVnYXRpb25OYW1lXSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRpZiAobVNldHRpbmdzLmhhc093blByb3BlcnR5KGFnZ3JlZ2F0aW9uTmFtZSkpIHtcblx0XHRcdFx0aWYgKHR5cGVvZiBtU2V0dGluZ3NbYWdncmVnYXRpb25OYW1lXSA9PT0gXCJzdHJpbmdcIikge1xuXHRcdFx0XHRcdGNvbnN0IHJlc3VsdGluZ1BhcnNlID0gQmluZGluZ0luZm8ucGFyc2UobVNldHRpbmdzW2FnZ3JlZ2F0aW9uTmFtZV0pO1xuXHRcdFx0XHRcdGlmIChyZXN1bHRpbmdQYXJzZSkge1xuXHRcdFx0XHRcdFx0bVNldHRpbmdzW2FnZ3JlZ2F0aW9uTmFtZV0gPSB7XG5cdFx0XHRcdFx0XHRcdHBhdGg6IHJlc3VsdGluZ1BhcnNlLnBhdGgsXG5cdFx0XHRcdFx0XHRcdG1vZGVsOiByZXN1bHRpbmdQYXJzZS5tb2RlbFxuXHRcdFx0XHRcdFx0fTtcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0bVNldHRpbmdzW2FnZ3JlZ2F0aW9uTmFtZV0gPSB7XG5cdFx0XHRcdFx0XHRcdHBhdGg6IG1TZXR0aW5nc1thZ2dyZWdhdGlvbk5hbWVdXG5cdFx0XHRcdFx0XHR9O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAodHlwZW9mIGFnZ3JlZ2F0aW9uQ2hpbGRyZW5bYWdncmVnYXRpb25OYW1lXSA9PT0gXCJmdW5jdGlvblwiKSB7XG5cdFx0XHRcdFx0KG1TZXR0aW5nc1thZ2dyZWdhdGlvbk5hbWVdIGFzIHsgZmFjdG9yeTogRnVuY3Rpb24gfSkuZmFjdG9yeSA9IGFnZ3JlZ2F0aW9uQ2hpbGRyZW5bXG5cdFx0XHRcdFx0XHRhZ2dyZWdhdGlvbk5hbWVcblx0XHRcdFx0XHRdIGFzIHVua25vd24gYXMgRnVuY3Rpb247XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0KG1TZXR0aW5nc1thZ2dyZWdhdGlvbk5hbWVdIGFzIHsgdGVtcGxhdGU6IHN0cmluZyB8IFVJNUVsZW1lbnQgfSkudGVtcGxhdGUgPSBhZ2dyZWdhdGlvbkNoaWxkcmVuW2FnZ3JlZ2F0aW9uTmFtZV1bMF07XG5cdFx0XHRcdH1cblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdG1TZXR0aW5nc1thZ2dyZWdhdGlvbk5hbWVdID0gYWdncmVnYXRpb25DaGlsZHJlblthZ2dyZWdhdGlvbk5hbWVdO1xuXHRcdFx0fVxuXHRcdH1cblx0fSk7XG59XG5cbi8qKlxuICogUHJvY2Vzc2VzIGEgYmluZGluZyB0b29sa2l0IGV4cHJlc3Npb24gcHJvcGVydHkgZm9yIGZ1bmN0aW9uIHByb2Nlc3NQcm9wZXJ0aWVzXG4gKlxuICogSWYgdGhlIHByb3BlcnR5IGlzIGEgY29uc3RhbnQsIGl0IGNvbXBpbGVzIGl0IGFzIGEgY29uc3RhbnQuIElmIHRoZSBwcm9wZXJ0eSBpcyBhbiBhZ2dyZWdhdGlvbixcbiAqIGl0IGNvbXBpbGVzIHRoZSBleHByZXNzaW9uIGFzIGFuIG9iamVjdC4gT3RoZXJ3aXNlLCBpdCBjb21waWxlcyB0aGUgZXhwcmVzc2lvbiBub3JtYWxseS5cbiAqIEBwYXJhbSBzZXR0aW5ncyBUaGUgc2V0dGluZ3Mgb2YgdGhlIGNvbnRyb2xcbiAqIEBwYXJhbSBzZXR0aW5nc0tleSBUaGUga2V5IG9mIHRoZSBzZXR0aW5nIGJlaW5nIHByb2Nlc3NlZFxuICogQHBhcmFtIGJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbiBUaGUgYmluZGluZyB0b29sa2l0IGV4cHJlc3Npb24gdG8gcHJvY2Vzc1xuICogQHBhcmFtIGFsbFByb3BlcnRpZXMgQWxsIHByb3BlcnRpZXMgb2YgdGhlIGNvbnRyb2xcbiAqL1xuZnVuY3Rpb24gcHJvY2Vzc0JpbmRpbmdUb29sa2l0RXhwcmVzc2lvbihcblx0c2V0dGluZ3M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuXHRzZXR0aW5nc0tleToga2V5b2YgdHlwZW9mIHNldHRpbmdzLFxuXHRiaW5kaW5nVG9vbGtpdEV4cHJlc3Npb246IEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbjx1bmtub3duPixcblx0YWxsUHJvcGVydGllczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbik6IHZvaWQge1xuXHRpZiAoaXNDb25zdGFudChiaW5kaW5nVG9vbGtpdEV4cHJlc3Npb24pKSB7XG5cdFx0c2V0dGluZ3Nbc2V0dGluZ3NLZXldID0gY29tcGlsZUNvbnN0YW50KGJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbiwgZmFsc2UsIHRydWUsIHRydWUpO1xuXHR9IGVsc2UgaWYgKCFPYmplY3QuaGFzT3duUHJvcGVydHkuY2FsbChhbGxQcm9wZXJ0aWVzLCBzZXR0aW5nc0tleSkpIHtcblx0XHQvLyBBZ2dyZWdhdGlvbiBjYXNlIC0gd2UgbmVlZCB0byBjb21waWxlIHRoZSBleHByZXNzaW9uIGJ1dCBhcyBhbiBvYmplY3Rcblx0XHRpZiAoaXNQYXRoSW5Nb2RlbEV4cHJlc3Npb24oYmluZGluZ1Rvb2xraXRFeHByZXNzaW9uKSkge1xuXHRcdFx0c2V0dGluZ3Nbc2V0dGluZ3NLZXldID0geyBwYXRoOiBiaW5kaW5nVG9vbGtpdEV4cHJlc3Npb24ucGF0aCwgbW9kZWw6IGJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbi5tb2RlbE5hbWUgfTtcblx0XHR9XG5cdH0gZWxzZSB7XG5cdFx0c2V0dGluZ3Nbc2V0dGluZ3NLZXldID0gY29tcGlsZUV4cHJlc3Npb24oYmluZGluZ1Rvb2xraXRFeHByZXNzaW9uKTtcblx0fVxufVxuXG4vKipcbiAqIFByb2Nlc3NlcyBhIHN0cmluZyBwcm9wZXJ0eSBmb3IgZnVuY3Rpb24gcHJvY2Vzc1Byb3BlcnRpZXNcbiAqXG4gKiBJZiB0aGUgcHJvcGVydHkgaXMgbm90IGEgYmluZGluZyBleHByZXNzaW9uIGFuZCBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LFxuICogaXQgcGFyc2VzIHRoZSB2YWx1ZSB0byBwcm92aWRlIHRoZSBleHBlY3RlZCBmb3JtYXQuIElmIHRoZSBwcm9wZXJ0eSBpcyBhbiBldmVudCBoYW5kbGVyLFxuICogaXQgbG9ncyBhbiBlcnJvci5cbiAqIEBwYXJhbSBzZXR0aW5ncyBUaGUgc2V0dGluZ3Mgb2YgdGhlIGNvbnRyb2xcbiAqIEBwYXJhbSBzZXR0aW5nc0tleSBUaGUga2V5IG9mIHRoZSBzZXR0aW5nIGJlaW5nIHByb2Nlc3NlZFxuICogQHBhcmFtIHZhbHVlIFRoZSBzdHJpbmcgdmFsdWUgdG8gcHJvY2Vzc1xuICogQHBhcmFtIGFsbEV2ZW50cyBBbGwgZXZlbnRzIG9mIHRoZSBjb250cm9sXG4gKiBAcGFyYW0gYWxsUHJvcGVydGllcyBBbGwgcHJvcGVydGllcyBvZiB0aGUgY29udHJvbFxuICogQHBhcmFtIG1ldGFkYXRhIE1ldGFkYXRhIG9mIHRoZSBjb250cm9sXG4gKi9cbmZ1bmN0aW9uIHByb2Nlc3NTdHJpbmdQcm9wZXJ0eShcblx0c2V0dGluZ3M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuXHRzZXR0aW5nc0tleToga2V5b2YgdHlwZW9mIHNldHRpbmdzLFxuXHR2YWx1ZTogc3RyaW5nLFxuXHRhbGxFdmVudHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuXHRhbGxQcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcblx0bWV0YWRhdGE6IE1hbmFnZWRPYmplY3RNZXRhZGF0YVxuKTogdm9pZCB7XG5cdGlmICghdmFsdWUuc3RhcnRzV2l0aChcIntcIikpIHtcblx0XHRpZiAoT2JqZWN0Lmhhc093blByb3BlcnR5LmNhbGwoYWxsRXZlbnRzLCBzZXR0aW5nc0tleSkpIHtcblx0XHRcdExvZy5lcnJvcihgRXZlbnQgaGFuZGxlcnMgY2Fubm90IGJlIHNldCBhcyBzdHJpbmcgaW4gSlNYLCAke3NldHRpbmdzS2V5fSBpbiAke21ldGFkYXRhLmdldE5hbWUoKX1gKTtcblx0XHR9XG5cdFx0Y29uc3QgcHJvcGVydHlUeXBlID0gKGFsbFByb3BlcnRpZXNbc2V0dGluZ3NLZXldIGFzIHsgZ2V0VHlwZT86IEZ1bmN0aW9uIH0pPy5nZXRUeXBlPy4oKTtcblx0XHRpZiAocHJvcGVydHlUeXBlICYmIHByb3BlcnR5VHlwZSBpbnN0YW5jZW9mIERhdGFUeXBlICYmIFtcImJvb2xlYW5cIiwgXCJpbnRcIiwgXCJmbG9hdFwiXS5pbmNsdWRlcyhwcm9wZXJ0eVR5cGUuZ2V0TmFtZSgpKSkge1xuXHRcdFx0c2V0dGluZ3Nbc2V0dGluZ3NLZXldID0gcHJvcGVydHlUeXBlLnBhcnNlVmFsdWUodmFsdWUpO1xuXHRcdH1cblx0fSBlbHNlIHtcblx0XHRzZXR0aW5nc1tzZXR0aW5nc0tleV0gPSB2YWx1ZTtcblx0fVxufVxuXG4vKipcbiAqIFByb2Nlc3NlcyBhbiBvYmplY3QgcHJvcGVydHkgZm9yIGZ1bmN0aW9uIHByb2Nlc3NQcm9wZXJ0aWVzLlxuICpcbiAqIElmIHRoZSBwcm9wZXJ0eSBpcyBhIHByb21pc2UsIGl0IGFkZHMgaXQgdG8gdGhlIGxhdGUgcHJvcGVydGllcyBtYXAuIElmIHRoZSBwcm9wZXJ0eSBpcyBhIGJpbmRpbmcgaW5mbyBob2xkZXIsXG4gKiBpdCBzZXRzIHRoZSBiaW5kaW5nIGluZm8gdG8gdGhlIHNldHRpbmdzLlxuICogQHBhcmFtIHNldHRpbmdzIFRoZSBzZXR0aW5ncyBvZiB0aGUgY29udHJvbFxuICogQHBhcmFtIHNldHRpbmdzS2V5IFRoZSBrZXkgb2YgdGhlIHNldHRpbmcgYmVpbmcgcHJvY2Vzc2VkXG4gKiBAcGFyYW0gdmFsdWUgVGhlIG9iamVjdCB2YWx1ZSB0byBwcm9jZXNzXG4gKiBAcGFyYW0gbGF0ZVByb3BlcnRpZXMgQSBtYXAgb2YgdGhlIGNvbnRyb2wncyBsYXRlIHByb3BlcnRpZXNcbiAqL1xuZnVuY3Rpb24gcHJvY2Vzc09iamVjdFByb3BlcnR5KFxuXHRzZXR0aW5nczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG5cdHNldHRpbmdzS2V5OiBrZXlvZiB0eXBlb2Ygc2V0dGluZ3MsXG5cdHZhbHVlOiB1bmtub3duLFxuXHRsYXRlUHJvcGVydGllczogUmVjb3JkPHN0cmluZywgUHJvbWlzZTx1bmtub3duPj5cbik6IHZvaWQge1xuXHRpZiAoKHZhbHVlIGFzIFByb21pc2U8dW5rbm93bj4pLnRoZW4pIHtcblx0XHRsYXRlUHJvcGVydGllc1tzZXR0aW5nc0tleV0gPSB2YWx1ZSBhcyBQcm9taXNlPHVua25vd24+O1xuXHRcdGRlbGV0ZSBzZXR0aW5nc1tzZXR0aW5nc0tleV07XG5cdH0gZWxzZSBpZiAoKHZhbHVlIGFzIEJpbmRpbmdJbmZvSG9sZGVyPHVua25vd24+KS5fX2JpbmRpbmdJbmZvKSB7XG5cdFx0c2V0dGluZ3Nbc2V0dGluZ3NLZXldID0gKHZhbHVlIGFzIEJpbmRpbmdJbmZvSG9sZGVyPHVua25vd24+KS5fX2JpbmRpbmdJbmZvO1xuXHR9XG59XG5cbi8qKlxuICogUHJvY2Vzc2VzIHRoZSBwcm9wZXJ0aWVzLlxuICpcbiAqIElmIHRoZSBwcm9wZXJ0eSBpcyBhIGJpbmRpbmdUb29sa2l0IGV4cHJlc3Npb24gd2UgbmVlZCB0byBjb21waWxlIGl0LlxuICogRWxzZSBpZiB0aGUgcHJvcGVydHkgaXMgc2V0IGFzIHN0cmluZyAoY29tcGlsZWQgYmluZGluZyBleHByZXNzaW9uIHJldHVybnMgc3RyaW5nIGJ5IGRlZmF1bHQgZXZlbiBpZiBpdCdzIGEgYm9vbGVhbiwgaW50LCBldGMuKSBhbmQgaXQgZG9lc24ndCBtYXRjaCB3aXRoIGV4cGVjdGVkXG4gKiBmb3JtYXQgdGhlIHZhbHVlIGlzIHBhcnNlZCB0byBwcm92aWRlIGV4cGVjdGVkIGZvcm1hdC5cbiAqIEBwYXJhbSBtZXRhZGF0YSBNZXRhZGF0YSBvZiB0aGUgY29udHJvbFxuICogQHBhcmFtIHNldHRpbmdzIFNldHRpbmdzIG9mIHRoZSBjb250cm9sXG4gKiBAcmV0dXJucyBBIG1hcCBvZiBsYXRlIHByb3BlcnRpZXMgdGhhdCBuZWVkIHRvIGJlIGF3YWl0ZWQgYWZ0ZXIgdGhlIGNvbnRyb2wgaXMgY3JlYXRlZFxuICovXG5mdW5jdGlvbiBwcm9jZXNzUHJvcGVydGllcyhtZXRhZGF0YTogTWFuYWdlZE9iamVjdE1ldGFkYXRhLCBzZXR0aW5nczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pOiBSZWNvcmQ8c3RyaW5nLCBQcm9taXNlPHVua25vd24+PiB7XG5cdGxldCBzZXR0aW5nc0tleToga2V5b2YgdHlwZW9mIHNldHRpbmdzO1xuXHRjb25zdCBsYXRlUHJvcGVydGllczogUmVjb3JkPHN0cmluZywgUHJvbWlzZTx1bmtub3duPj4gPSB7fTtcblx0Y29uc3QgYWxsRXZlbnRzID0gbWV0YWRhdGEuZ2V0QWxsRXZlbnRzKCk7XG5cdGNvbnN0IGFsbFByb3BlcnRpZXMgPSBtZXRhZGF0YS5nZXRBbGxQcm9wZXJ0aWVzKCk7XG5cblx0Zm9yIChzZXR0aW5nc0tleSBpbiBzZXR0aW5ncykge1xuXHRcdGNvbnN0IHZhbHVlID0gc2V0dGluZ3Nbc2V0dGluZ3NLZXldO1xuXHRcdGlmIChpc0JpbmRpbmdUb29sa2l0RXhwcmVzc2lvbih2YWx1ZSkpIHtcblx0XHRcdHByb2Nlc3NCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb24oc2V0dGluZ3MsIHNldHRpbmdzS2V5LCB2YWx1ZSwgYWxsUHJvcGVydGllcyk7XG5cdFx0fSBlbHNlIGlmICh2YWx1ZSAhPT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09IFwib2JqZWN0XCIpIHtcblx0XHRcdHByb2Nlc3NPYmplY3RQcm9wZXJ0eShzZXR0aW5ncywgc2V0dGluZ3NLZXksIHZhbHVlLCBsYXRlUHJvcGVydGllcyk7XG5cdFx0fSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIpIHtcblx0XHRcdHByb2Nlc3NTdHJpbmdQcm9wZXJ0eShzZXR0aW5ncywgc2V0dGluZ3NLZXksIHZhbHVlLCBhbGxFdmVudHMsIGFsbFByb3BlcnRpZXMsIG1ldGFkYXRhKTtcblx0XHR9IGVsc2UgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcblx0XHRcdGRlbGV0ZSBzZXR0aW5nc1tzZXR0aW5nc0tleV07XG5cdFx0fVxuXHR9XG5cdHJldHVybiBsYXRlUHJvcGVydGllcztcbn1cblxuLyoqXG4gKiBQcm9jZXNzZXMgdGhlIGNvbW1hbmQuXG4gKlxuICogUmVzb2x2ZXMgdGhlIGNvbW1hbmQgc2V0IG9uIHRoZSBjb250cm9sIHZpYSB0aGUgaW50cmluc2ljIGNsYXNzIGF0dHJpYnV0ZSBcImpzeDpjb21tYW5kXCIuXG4gKiBJZiBubyBjb21tYW5kIGhhcyBiZWVuIHNldCBvciB0aGUgdGFyZ2V0ZWQgZXZlbnQgZG9lc24ndCBleGlzdCwgbm8gY29uZmlndXJhdGlvbiBpcyBzZXQuXG4gKiBAcGFyYW0gbWV0YWRhdGEgTWV0YWRhdGEgb2YgdGhlIGNvbnRyb2xcbiAqIEBwYXJhbSBzZXR0aW5ncyBTZXR0aW5ncyBvZiB0aGUgY29udHJvbFxuICovXG5mdW5jdGlvbiBwcm9jZXNzQ29tbWFuZChtZXRhZGF0YTogTWFuYWdlZE9iamVjdE1ldGFkYXRhLCBzZXR0aW5nczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pOiB2b2lkIHtcblx0Y29uc3QgY29tbWFuZFByb3BlcnR5ID0gc2V0dGluZ3NbXCJqc3g6Y29tbWFuZFwiXTtcblx0aWYgKGNvbW1hbmRQcm9wZXJ0eSkge1xuXHRcdGNvbnN0IFtjb21tYW5kLCBldmVudE5hbWVdID0gKGNvbW1hbmRQcm9wZXJ0eSBhcyBzdHJpbmcpLnNwbGl0KFwifFwiKTtcblx0XHRjb25zdCBldmVudCA9IG1ldGFkYXRhLmdldEFsbEV2ZW50cygpW2V2ZW50TmFtZV07XG5cdFx0aWYgKGV2ZW50ICYmIGNvbW1hbmQuc3RhcnRzV2l0aChcImNtZDpcIikpIHtcblx0XHRcdHNldHRpbmdzW2V2ZW50Lm5hbWVdID0gRXZlbnRIYW5kbGVyUmVzb2x2ZXIucmVzb2x2ZUV2ZW50SGFuZGxlcihjb21tYW5kKTtcblx0XHR9XG5cdH1cblx0ZGVsZXRlIHNldHRpbmdzW1wianN4OmNvbW1hbmRcIl07XG59XG5cbmNvbnN0IGpzeENvbnRyb2wgPSBmdW5jdGlvbiA8VCBleHRlbmRzIEVsZW1lbnQ+KFxuXHRDb250cm9sVHlwZTogTm9uQWJzdHJhY3RDbGFzczxDb250cm9sPiB8IEZ1bmN0aW9uLFxuXHRzZXR0aW5nczogTm9uQ29udHJvbFByb3BlcnRpZXM8VD4gJiB7XG5cdFx0a2V5OiBzdHJpbmc7XG5cdFx0Y2hpbGRyZW4/OiBFbGVtZW50IHwgQ29udHJvbFByb3BlcnRpZXM8VD47XG5cdFx0cmVmPzogUmVmPFQ+O1xuXHRcdGJpbmRpbmc/OiBzdHJpbmc7XG5cdFx0Y2xhc3M/OiBzdHJpbmc7XG5cdFx0W0ZMX0RFTEVHQVRFXT86IHN0cmluZztcblx0XHRbRFRfREVTSUdOVElNRV0/OiBzdHJpbmc7XG5cdFx0W0NPUkVfUkVRVUlSRV0/OiBzdHJpbmc7XG5cdH0sXG5cdGtleTogc3RyaW5nLFxuXHRfanN4Q29udGV4dDogSlNYQ29udGV4dCxcblx0X2pzeEZvcm1hdHRlckNvbnRleHQ6IG9iamVjdFxuKTogQ29udHJvbCB8IENvbnRyb2xbXSB8IHVuZGVmaW5lZCB7XG5cdGxldCB0YXJnZXRDb250cm9sOiBDb250cm9sIHwgQ29udHJvbFtdIHwgdW5kZWZpbmVkO1xuXG5cdGlmICgoQ29udHJvbFR5cGUgYXMgeyBpc0ZyYWdtZW50PzogYm9vbGVhbiB9KT8uaXNGcmFnbWVudCkge1xuXHRcdHRhcmdldENvbnRyb2wgPSBzZXR0aW5ncy5jaGlsZHJlbiBhcyBDb250cm9sIHwgQ29udHJvbFtdO1xuXHR9IGVsc2UgaWYgKGlzQUNvbnRyb2woQ29udHJvbFR5cGUpKSB7XG5cdFx0Y29uc3QgbWV0YWRhdGEgPSBDb250cm9sVHlwZS5nZXRNZXRhZGF0YSgpO1xuXHRcdGlmIChrZXkgIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0c2V0dGluZ3NbXCJrZXlcIl0gPSBrZXk7XG5cdFx0fVxuXHRcdGNvbnN0IGxhdGVQcm9wZXJ0aWVzID0gcHJvY2Vzc1Byb3BlcnRpZXMobWV0YWRhdGEsIHNldHRpbmdzKTtcblx0XHRwcm9jZXNzQ29tbWFuZChtZXRhZGF0YSwgc2V0dGluZ3MpO1xuXHRcdHByb2Nlc3NBZ2dyZWdhdGlvbnMobWV0YWRhdGEsIHNldHRpbmdzKTtcblx0XHRjb25zdCBjbGFzc0RlZiA9IHNldHRpbmdzLmNsYXNzO1xuXHRcdGNvbnN0IHJlZkRlZiA9IHNldHRpbmdzLnJlZjtcblx0XHRjb25zdCBiaW5kaW5nRGVmID0gc2V0dGluZ3MuYmluZGluZztcblx0XHRjb25zdCBmbERlbGVnYXRlID0gc2V0dGluZ3NbRkxfREVMRUdBVEVdO1xuXHRcdGNvbnN0IGR0RGVzaWdudGltZSA9IHNldHRpbmdzW0RUX0RFU0lHTlRJTUVdO1xuXHRcdGRlbGV0ZSBzZXR0aW5ncy5yZWY7XG5cdFx0ZGVsZXRlIHNldHRpbmdzLmNsYXNzO1xuXHRcdGRlbGV0ZSBzZXR0aW5ncy5iaW5kaW5nO1xuXHRcdGRlbGV0ZSBzZXR0aW5nc1tGTF9ERUxFR0FURV07XG5cdFx0ZGVsZXRlIHNldHRpbmdzW0RUX0RFU0lHTlRJTUVdO1xuXHRcdGRlbGV0ZSBzZXR0aW5nc1tDT1JFX1JFUVVJUkVdOyAvLyBDb3JlIHJlcXVpcmUgaXMgbm90IHVzZWZ1bCBpbiBjb250cm9sIG1vZGVcblx0XHRjb25zdCB0YXJnZXRDb250cm9sSW5zdGFuY2UgPSBuZXcgQ29udHJvbFR5cGUoc2V0dGluZ3MgYXMgJENvbnRyb2xTZXR0aW5ncywgeyAuLi5fanN4Rm9ybWF0dGVyQ29udGV4dCB9KTtcblx0XHRpZiAoY2xhc3NEZWYpIHtcblx0XHRcdHRhcmdldENvbnRyb2xJbnN0YW5jZS5hZGRTdHlsZUNsYXNzKGNsYXNzRGVmKTtcblx0XHR9XG5cdFx0aWYgKHJlZkRlZikge1xuXHRcdFx0cmVmRGVmLnNldEN1cnJlbnQodGFyZ2V0Q29udHJvbEluc3RhbmNlIGFzIHVua25vd24gYXMgVCk7XG5cdFx0fVxuXHRcdGNvbnN0IGN1c3RvbVNldHRpbmdzID0gdGFyZ2V0Q29udHJvbEluc3RhbmNlLmRhdGEoXCJzYXAtdWktY3VzdG9tLXNldHRpbmdzXCIpID8/IHt9O1xuXHRcdGlmIChkdERlc2lnbnRpbWUpIHtcblx0XHRcdGN1c3RvbVNldHRpbmdzW1wic2FwLnVpLmR0XCJdID8/PSB7fTtcblx0XHRcdGN1c3RvbVNldHRpbmdzW1wic2FwLnVpLmR0XCJdLmRlc2lnbnRpbWUgPSBkdERlc2lnbnRpbWU7XG5cdFx0fVxuXHRcdGlmIChmbERlbGVnYXRlKSB7XG5cdFx0XHRjdXN0b21TZXR0aW5nc1tcInNhcC51aS5mbFwiXSA/Pz0ge307XG5cdFx0XHRjdXN0b21TZXR0aW5nc1tcInNhcC51aS5mbFwiXS5kZWxlZ2F0ZSA9IGZsRGVsZWdhdGU7XG5cdFx0fVxuXG5cdFx0aWYgKE9iamVjdC5rZXlzKGN1c3RvbVNldHRpbmdzKS5sZW5ndGggPiAwKSB7XG5cdFx0XHR0YXJnZXRDb250cm9sSW5zdGFuY2UuZGF0YShcInNhcC11aS1jdXN0b20tc2V0dGluZ3NcIiwgY3VzdG9tU2V0dGluZ3MpO1xuXHRcdH1cblxuXHRcdGlmIChiaW5kaW5nRGVmKSB7XG5cdFx0XHRpZiAodHlwZW9mIGJpbmRpbmdEZWYgPT09IFwic3RyaW5nXCIpIHtcblx0XHRcdFx0Y29uc3QgYmluZGluZ0luZm8gPSBCaW5kaW5nSW5mby5wYXJzZShiaW5kaW5nRGVmKTtcblx0XHRcdFx0aWYgKGJpbmRpbmdJbmZvKSB7XG5cdFx0XHRcdFx0dGFyZ2V0Q29udHJvbEluc3RhbmNlLmJpbmRFbGVtZW50KHtcblx0XHRcdFx0XHRcdG1vZGVsOiBiaW5kaW5nSW5mby5tb2RlbCA/PyB1bmRlZmluZWQsXG5cdFx0XHRcdFx0XHRwYXRoOiBiaW5kaW5nSW5mby5wYXRoLFxuXHRcdFx0XHRcdFx0cGFyYW1ldGVyczogYmluZGluZ0luZm8ucGFyYW1ldGVycyA/PyB1bmRlZmluZWRcblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR0YXJnZXRDb250cm9sSW5zdGFuY2UuYmluZEVsZW1lbnQoYmluZGluZ0RlZik7XG5cdFx0XHRcdH1cblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdC8vIFdlIGNvbnNpZGVyIGl0J3MgYW4gb2JqZWN0XG5cdFx0XHRcdE9iamVjdC5rZXlzKGJpbmRpbmdEZWYpLmZvckVhY2goKGJpbmRpbmdEZWZLZXkpID0+IHtcblx0XHRcdFx0XHR0YXJnZXRDb250cm9sSW5zdGFuY2UuYmluZEVsZW1lbnQoeyBtb2RlbDogYmluZGluZ0RlZktleSwgcGF0aDogYmluZGluZ0RlZltiaW5kaW5nRGVmS2V5XSB9KTtcblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdGZvciAoY29uc3QgbGF0ZVByb3BlcnRpZXNLZXkgaW4gbGF0ZVByb3BlcnRpZXMpIHtcblx0XHRcdGxhdGVQcm9wZXJ0aWVzW2xhdGVQcm9wZXJ0aWVzS2V5XVxuXHRcdFx0XHQudGhlbigodmFsdWUpID0+IHtcblx0XHRcdFx0XHRyZXR1cm4gdGFyZ2V0Q29udHJvbEluc3RhbmNlLnNldFByb3BlcnR5KGxhdGVQcm9wZXJ0aWVzS2V5LCB2YWx1ZSk7XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHtcblx0XHRcdFx0XHRMb2cuZXJyb3IoYENvdWxkbid0IHNldCBwcm9wZXJ0eSAke2xhdGVQcm9wZXJ0aWVzS2V5fSBvbiAke0NvbnRyb2xUeXBlLmdldE1ldGFkYXRhKCkuZ2V0TmFtZSgpfWAsIGVycm9yLCBcImpzeENvbnRyb2xcIik7XG5cdFx0XHRcdH0pO1xuXHRcdH1cblx0XHR0YXJnZXRDb250cm9sID0gdGFyZ2V0Q29udHJvbEluc3RhbmNlO1xuXHR9IGVsc2UgaWYgKHR5cGVvZiBDb250cm9sVHlwZSA9PT0gXCJmdW5jdGlvblwiKSB7XG5cdFx0Y29uc3QgY29udHJvbFR5cGVGbiA9IENvbnRyb2xUeXBlO1xuXHRcdHRhcmdldENvbnRyb2wgPSBjb250cm9sVHlwZUZuKHNldHRpbmdzIGFzICRDb250cm9sU2V0dGluZ3MpO1xuXHR9IGVsc2Uge1xuXHRcdHRhcmdldENvbnRyb2wgPSBuZXcgVGV4dCh7IHRleHQ6IFwiTWlzc2luZyBjb21wb25lbnQgXCIgKyAoQ29udHJvbFR5cGUgYXMgc3RyaW5nKSB9KTtcblx0fVxuXG5cdHJldHVybiB0YXJnZXRD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
|
|
295
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGTF9ERUxFR0FURSIsIkNPUkVfUkVRVUlSRSIsIkRUX0RFU0lHTlRJTUUiLCJhZGRDaGlsZEFnZ3JlZ2F0aW9uIiwiYWdncmVnYXRpb25DaGlsZHJlbiIsImFnZ3JlZ2F0aW9uTmFtZSIsImNoaWxkIiwidW5kZWZpbmVkIiwiaXNDaGlsZEFuRWxlbWVudCIsInB1c2giLCJBcnJheSIsImlzQXJyYXkiLCJmb3JFYWNoIiwic3ViQ2hpbGQiLCJPYmplY3QiLCJrZXlzIiwiY2hpbGRLZXkiLCJjaGlsZHJlbiIsImlzQSIsImlzQUNvbnRyb2wiLCJnZXRNZXRhZGF0YSIsInByb2Nlc3NBZ2dyZWdhdGlvbnMiLCJtZXRhZGF0YSIsIm1TZXR0aW5ncyIsIm1ldGFkYXRhQWdncmVnYXRpb25zIiwiZ2V0QWxsQWdncmVnYXRpb25zIiwiZGVmYXVsdEFnZ3JlZ2F0aW9uTmFtZSIsImdldERlZmF1bHRBZ2dyZWdhdGlvbk5hbWUiLCJoYXNPd25Qcm9wZXJ0eSIsInJlc3VsdGluZ1BhcnNlIiwiQmluZGluZ0luZm8iLCJwYXJzZSIsInBhdGgiLCJtb2RlbCIsImZhY3RvcnkiLCJ0ZW1wbGF0ZSIsInByb2Nlc3NCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb24iLCJzZXR0aW5ncyIsInNldHRpbmdzS2V5IiwiYmluZGluZ1Rvb2xraXRFeHByZXNzaW9uIiwiYWxsUHJvcGVydGllcyIsImlzQ29uc3RhbnQiLCJjb21waWxlQ29uc3RhbnQiLCJjYWxsIiwiaXNQYXRoSW5Nb2RlbEV4cHJlc3Npb24iLCJtb2RlbE5hbWUiLCJjb21waWxlRXhwcmVzc2lvbiIsInByb2Nlc3NTdHJpbmdQcm9wZXJ0eSIsInZhbHVlIiwiYWxsRXZlbnRzIiwic3RhcnRzV2l0aCIsIkxvZyIsImVycm9yIiwiZ2V0TmFtZSIsInByb3BlcnR5VHlwZSIsImdldFR5cGUiLCJEYXRhVHlwZSIsImluY2x1ZGVzIiwicGFyc2VWYWx1ZSIsInByb2Nlc3NPYmplY3RQcm9wZXJ0eSIsImxhdGVQcm9wZXJ0aWVzIiwidGhlbiIsIl9fYmluZGluZ0luZm8iLCJwYXJ0cyIsInByb2Nlc3NQcm9wZXJ0aWVzIiwiZ2V0QWxsRXZlbnRzIiwiZ2V0QWxsUHJvcGVydGllcyIsImlzQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uIiwicHJvY2Vzc0NvbW1hbmQiLCJjb21tYW5kUHJvcGVydHkiLCJjb21tYW5kIiwiZXZlbnROYW1lIiwic3BsaXQiLCJldmVudCIsIm5hbWUiLCJFdmVudEhhbmRsZXJSZXNvbHZlciIsInJlc29sdmVFdmVudEhhbmRsZXIiLCJqc3hDb250cm9sIiwiQ29udHJvbFR5cGUiLCJrZXkiLCJfanN4Q29udGV4dCIsIl9qc3hGb3JtYXR0ZXJDb250ZXh0IiwidGFyZ2V0Q29udHJvbCIsImlzRnJhZ21lbnQiLCJjbGFzc0RlZiIsImNsYXNzIiwicmVmRGVmIiwicmVmIiwiYmluZGluZ0RlZiIsImJpbmRpbmciLCJmbERlbGVnYXRlIiwiZHREZXNpZ250aW1lIiwidGFyZ2V0Q29udHJvbEluc3RhbmNlIiwiYWRkU3R5bGVDbGFzcyIsInNldEN1cnJlbnQiLCJjdXN0b21TZXR0aW5ncyIsImRhdGEiLCJkZXNpZ250aW1lIiwiZGVsZWdhdGUiLCJsZW5ndGgiLCJiaW5kaW5nSW5mbyIsImJpbmRFbGVtZW50IiwicGFyYW1ldGVycyIsImJpbmRpbmdEZWZLZXkiLCJsYXRlUHJvcGVydGllc0tleSIsImlzRGVzdHJveWVkIiwic2V0UHJvcGVydHkiLCJjYXRjaCIsImNvbnRyb2xUeXBlRm4iLCJUZXh0IiwidGV4dCJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsianN4LWNvbnRyb2wudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgdHlwZSB7IEJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbiB9IGZyb20gXCJzYXAvZmUvYmFzZS9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0IHtcblx0Y29tcGlsZUNvbnN0YW50LFxuXHRjb21waWxlRXhwcmVzc2lvbixcblx0aXNCaW5kaW5nVG9vbGtpdEV4cHJlc3Npb24sXG5cdGlzQ29uc3RhbnQsXG5cdGlzUGF0aEluTW9kZWxFeHByZXNzaW9uXG59IGZyb20gXCJzYXAvZmUvYmFzZS9CaW5kaW5nVG9vbGtpdFwiO1xuaW1wb3J0IHR5cGUgeyBCaW5kaW5nSW5mb0hvbGRlciwgTm9uQWJzdHJhY3RDbGFzcyB9IGZyb20gXCJzYXAvZmUvYmFzZS9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCB0eXBlIHsgQ29udHJvbFByb3BlcnRpZXMsIEpTWENvbnRleHQsIE5vbkNvbnRyb2xQcm9wZXJ0aWVzLCBSZWYgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvanN4LXJ1bnRpbWUvanN4XCI7XG5pbXBvcnQgVGV4dCBmcm9tIFwic2FwL20vVGV4dFwiO1xuaW1wb3J0IEJpbmRpbmdJbmZvIGZyb20gXCJzYXAvdWkvYmFzZS9CaW5kaW5nSW5mb1wiO1xuaW1wb3J0IERhdGFUeXBlIGZyb20gXCJzYXAvdWkvYmFzZS9EYXRhVHlwZVwiO1xuaW1wb3J0IHR5cGUgeyBQcm9wZXJ0eUJpbmRpbmdJbmZvIH0gZnJvbSBcInNhcC91aS9iYXNlL01hbmFnZWRPYmplY3RcIjtcbmltcG9ydCB0eXBlIE1hbmFnZWRPYmplY3RNZXRhZGF0YSBmcm9tIFwic2FwL3VpL2Jhc2UvTWFuYWdlZE9iamVjdE1ldGFkYXRhXCI7XG5pbXBvcnQgdHlwZSBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgdHlwZSB7ICRDb250cm9sU2V0dGluZ3MgfSBmcm9tIFwic2FwL3VpL2NvcmUvQ29udHJvbFwiO1xuaW1wb3J0IHR5cGUgeyBkZWZhdWx0IGFzIEVsZW1lbnQsIGRlZmF1bHQgYXMgVUk1RWxlbWVudCB9IGZyb20gXCJzYXAvdWkvY29yZS9FbGVtZW50XCI7XG5pbXBvcnQgRXZlbnRIYW5kbGVyUmVzb2x2ZXIgZnJvbSBcInNhcC91aS9jb3JlL212Yy9FdmVudEhhbmRsZXJSZXNvbHZlclwiO1xuXG5jb25zdCBGTF9ERUxFR0FURSA9IFwiZmw6ZGVsZWdhdGVcIjtcbmNvbnN0IENPUkVfUkVRVUlSRSA9IFwiY29yZTpyZXF1aXJlXCI7XG5jb25zdCBEVF9ERVNJR05USU1FID0gXCJkdDpkZXNpZ250aW1lXCI7XG5jb25zdCBhZGRDaGlsZEFnZ3JlZ2F0aW9uID0gZnVuY3Rpb24gKFxuXHRhZ2dyZWdhdGlvbkNoaWxkcmVuOiBSZWNvcmQ8c3RyaW5nLCAoc3RyaW5nIHwgVUk1RWxlbWVudClbXT4sXG5cdGFnZ3JlZ2F0aW9uTmFtZTogc3RyaW5nLFxuXHRjaGlsZD86IHN0cmluZyB8IFVJNUVsZW1lbnQgfCBVSTVFbGVtZW50W11cbik6IHZvaWQge1xuXHRpZiAoY2hpbGQgPT09IG51bGwgfHwgY2hpbGQgPT09IHVuZGVmaW5lZCB8fCB0eXBlb2YgY2hpbGQgPT09IFwic3RyaW5nXCIpIHtcblx0XHRyZXR1cm47XG5cdH1cblx0aWYgKCFhZ2dyZWdhdGlvbkNoaWxkcmVuW2FnZ3JlZ2F0aW9uTmFtZV0pIHtcblx0XHRhZ2dyZWdhdGlvbkNoaWxkcmVuW2FnZ3JlZ2F0aW9uTmFtZV0gPSBbXTtcblx0fVxuXHRpZiAoaXNDaGlsZEFuRWxlbWVudChjaGlsZCkpIHtcblx0XHRhZ2dyZWdhdGlvbkNoaWxkcmVuW2FnZ3JlZ2F0aW9uTmFtZV0ucHVzaChjaGlsZCk7XG5cdH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShjaGlsZCkpIHtcblx0XHRjaGlsZC5mb3JFYWNoKChzdWJDaGlsZCkgPT4ge1xuXHRcdFx0YWRkQ2hpbGRBZ2dyZWdhdGlvbihhZ2dyZWdhdGlvbkNoaWxkcmVuLCBhZ2dyZWdhdGlvbk5hbWUsIHN1YkNoaWxkKTtcblx0XHR9KTtcblx0fSBlbHNlIGlmICh0eXBlb2YgY2hpbGQgPT09IFwiZnVuY3Rpb25cIikge1xuXHRcdGFnZ3JlZ2F0aW9uQ2hpbGRyZW5bYWdncmVnYXRpb25OYW1lXSA9IGNoaWxkO1xuXHR9IGVsc2Uge1xuXHRcdE9iamVjdC5rZXlzKGNoaWxkKS5mb3JFYWNoKChjaGlsZEtleSkgPT4ge1xuXHRcdFx0YWRkQ2hpbGRBZ2dyZWdhdGlvbihhZ2dyZWdhdGlvbkNoaWxkcmVuLCBjaGlsZEtleSwgY2hpbGRbY2hpbGRLZXldKTtcblx0XHR9KTtcblx0fVxufTtcbmNvbnN0IGlzQ2hpbGRBbkVsZW1lbnQgPSBmdW5jdGlvbiAoY2hpbGRyZW4/OiB1bmtub3duKTogY2hpbGRyZW4gaXMgRWxlbWVudCB7XG5cdHJldHVybiAoY2hpbGRyZW4gYXMgRWxlbWVudCk/LmlzQT8uKFwic2FwLnVpLmNvcmUuRWxlbWVudFwiKTtcbn07XG5jb25zdCBpc0FDb250cm9sID0gZnVuY3Rpb24gKGNoaWxkcmVuPzogdHlwZW9mIENvbnRyb2wgfCBGdW5jdGlvbik6IGNoaWxkcmVuIGlzIE5vbkFic3RyYWN0Q2xhc3M8Q29udHJvbD4ge1xuXHRyZXR1cm4gISEoY2hpbGRyZW4gYXMgdHlwZW9mIENvbnRyb2wpPy5nZXRNZXRhZGF0YTtcbn07XG5cbmZ1bmN0aW9uIHByb2Nlc3NBZ2dyZWdhdGlvbnMobWV0YWRhdGE6IE1hbmFnZWRPYmplY3RNZXRhZGF0YSwgbVNldHRpbmdzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IHZvaWQge1xuXHRjb25zdCBtZXRhZGF0YUFnZ3JlZ2F0aW9ucyA9IG1ldGFkYXRhLmdldEFsbEFnZ3JlZ2F0aW9ucygpO1xuXHRjb25zdCBkZWZhdWx0QWdncmVnYXRpb25OYW1lID0gbWV0YWRhdGEuZ2V0RGVmYXVsdEFnZ3JlZ2F0aW9uTmFtZSgpO1xuXHRjb25zdCBhZ2dyZWdhdGlvbkNoaWxkcmVuOiBSZWNvcmQ8c3RyaW5nLCAoc3RyaW5nIHwgVUk1RWxlbWVudClbXT4gPSB7fTtcblx0YWRkQ2hpbGRBZ2dyZWdhdGlvbihhZ2dyZWdhdGlvbkNoaWxkcmVuLCBkZWZhdWx0QWdncmVnYXRpb25OYW1lLCBtU2V0dGluZ3MuY2hpbGRyZW4gYXMgc3RyaW5nIHwgVUk1RWxlbWVudCB8IFVJNUVsZW1lbnRbXSk7XG5cdGRlbGV0ZSBtU2V0dGluZ3MuY2hpbGRyZW47XG5cdC8vIGZpbmQgb3V0IHdoaWNoIGFnZ3JlZ2F0aW9uIGFyZSBib3VuZCAoYm90aCBpbiBjaGlsZHJlbiBhbmQgZGlyZWN0bHkgdW5kZXIgaXQpXG5cdE9iamVjdC5rZXlzKG1ldGFkYXRhQWdncmVnYXRpb25zKS5mb3JFYWNoKChhZ2dyZWdhdGlvbk5hbWUpID0+IHtcblx0XHRpZiAoYWdncmVnYXRpb25DaGlsZHJlblthZ2dyZWdhdGlvbk5hbWVdICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdGlmIChtU2V0dGluZ3MuaGFzT3duUHJvcGVydHkoYWdncmVnYXRpb25OYW1lKSkge1xuXHRcdFx0XHRpZiAodHlwZW9mIG1TZXR0aW5nc1thZ2dyZWdhdGlvbk5hbWVdID09PSBcInN0cmluZ1wiKSB7XG5cdFx0XHRcdFx0Y29uc3QgcmVzdWx0aW5nUGFyc2UgPSBCaW5kaW5nSW5mby5wYXJzZShtU2V0dGluZ3NbYWdncmVnYXRpb25OYW1lXSk7XG5cdFx0XHRcdFx0aWYgKHJlc3VsdGluZ1BhcnNlKSB7XG5cdFx0XHRcdFx0XHRtU2V0dGluZ3NbYWdncmVnYXRpb25OYW1lXSA9IHtcblx0XHRcdFx0XHRcdFx0cGF0aDogcmVzdWx0aW5nUGFyc2UucGF0aCxcblx0XHRcdFx0XHRcdFx0bW9kZWw6IHJlc3VsdGluZ1BhcnNlLm1vZGVsXG5cdFx0XHRcdFx0XHR9O1xuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRtU2V0dGluZ3NbYWdncmVnYXRpb25OYW1lXSA9IHtcblx0XHRcdFx0XHRcdFx0cGF0aDogbVNldHRpbmdzW2FnZ3JlZ2F0aW9uTmFtZV1cblx0XHRcdFx0XHRcdH07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICh0eXBlb2YgYWdncmVnYXRpb25DaGlsZHJlblthZ2dyZWdhdGlvbk5hbWVdID09PSBcImZ1bmN0aW9uXCIpIHtcblx0XHRcdFx0XHQobVNldHRpbmdzW2FnZ3JlZ2F0aW9uTmFtZV0gYXMgeyBmYWN0b3J5OiBGdW5jdGlvbiB9KS5mYWN0b3J5ID0gYWdncmVnYXRpb25DaGlsZHJlbltcblx0XHRcdFx0XHRcdGFnZ3JlZ2F0aW9uTmFtZVxuXHRcdFx0XHRcdF0gYXMgdW5rbm93biBhcyBGdW5jdGlvbjtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHQobVNldHRpbmdzW2FnZ3JlZ2F0aW9uTmFtZV0gYXMgeyB0ZW1wbGF0ZTogc3RyaW5nIHwgVUk1RWxlbWVudCB9KS50ZW1wbGF0ZSA9IGFnZ3JlZ2F0aW9uQ2hpbGRyZW5bYWdncmVnYXRpb25OYW1lXVswXTtcblx0XHRcdFx0fVxuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0bVNldHRpbmdzW2FnZ3JlZ2F0aW9uTmFtZV0gPSBhZ2dyZWdhdGlvbkNoaWxkcmVuW2FnZ3JlZ2F0aW9uTmFtZV07XG5cdFx0XHR9XG5cdFx0fVxuXHR9KTtcbn1cblxuLyoqXG4gKiBQcm9jZXNzZXMgYSBiaW5kaW5nIHRvb2xraXQgZXhwcmVzc2lvbiBwcm9wZXJ0eSBmb3IgZnVuY3Rpb24gcHJvY2Vzc1Byb3BlcnRpZXNcbiAqXG4gKiBJZiB0aGUgcHJvcGVydHkgaXMgYSBjb25zdGFudCwgaXQgY29tcGlsZXMgaXQgYXMgYSBjb25zdGFudC4gSWYgdGhlIHByb3BlcnR5IGlzIGFuIGFnZ3JlZ2F0aW9uLFxuICogaXQgY29tcGlsZXMgdGhlIGV4cHJlc3Npb24gYXMgYW4gb2JqZWN0LiBPdGhlcndpc2UsIGl0IGNvbXBpbGVzIHRoZSBleHByZXNzaW9uIG5vcm1hbGx5LlxuICogQHBhcmFtIHNldHRpbmdzIFRoZSBzZXR0aW5ncyBvZiB0aGUgY29udHJvbFxuICogQHBhcmFtIHNldHRpbmdzS2V5IFRoZSBrZXkgb2YgdGhlIHNldHRpbmcgYmVpbmcgcHJvY2Vzc2VkXG4gKiBAcGFyYW0gYmluZGluZ1Rvb2xraXRFeHByZXNzaW9uIFRoZSBiaW5kaW5nIHRvb2xraXQgZXhwcmVzc2lvbiB0byBwcm9jZXNzXG4gKiBAcGFyYW0gYWxsUHJvcGVydGllcyBBbGwgcHJvcGVydGllcyBvZiB0aGUgY29udHJvbFxuICovXG5mdW5jdGlvbiBwcm9jZXNzQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uKFxuXHRzZXR0aW5nczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG5cdHNldHRpbmdzS2V5OiBrZXlvZiB0eXBlb2Ygc2V0dGluZ3MsXG5cdGJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbjogQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uPHVua25vd24+LFxuXHRhbGxQcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuKTogdm9pZCB7XG5cdGlmIChpc0NvbnN0YW50KGJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbikpIHtcblx0XHRzZXR0aW5nc1tzZXR0aW5nc0tleV0gPSBjb21waWxlQ29uc3RhbnQoYmluZGluZ1Rvb2xraXRFeHByZXNzaW9uLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSk7XG5cdH0gZWxzZSBpZiAoIU9iamVjdC5oYXNPd25Qcm9wZXJ0eS5jYWxsKGFsbFByb3BlcnRpZXMsIHNldHRpbmdzS2V5KSkge1xuXHRcdC8vIEFnZ3JlZ2F0aW9uIGNhc2UgLSB3ZSBuZWVkIHRvIGNvbXBpbGUgdGhlIGV4cHJlc3Npb24gYnV0IGFzIGFuIG9iamVjdFxuXHRcdGlmIChpc1BhdGhJbk1vZGVsRXhwcmVzc2lvbihiaW5kaW5nVG9vbGtpdEV4cHJlc3Npb24pKSB7XG5cdFx0XHRzZXR0aW5nc1tzZXR0aW5nc0tleV0gPSB7IHBhdGg6IGJpbmRpbmdUb29sa2l0RXhwcmVzc2lvbi5wYXRoLCBtb2RlbDogYmluZGluZ1Rvb2xraXRFeHByZXNzaW9uLm1vZGVsTmFtZSB9O1xuXHRcdH1cblx0fSBlbHNlIHtcblx0XHRzZXR0aW5nc1tzZXR0aW5nc0tleV0gPSBjb21waWxlRXhwcmVzc2lvbihiaW5kaW5nVG9vbGtpdEV4cHJlc3Npb24pO1xuXHR9XG59XG5cbi8qKlxuICogUHJvY2Vzc2VzIGEgc3RyaW5nIHByb3BlcnR5IGZvciBmdW5jdGlvbiBwcm9jZXNzUHJvcGVydGllc1xuICpcbiAqIElmIHRoZSBwcm9wZXJ0eSBpcyBub3QgYSBiaW5kaW5nIGV4cHJlc3Npb24gYW5kIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQsXG4gKiBpdCBwYXJzZXMgdGhlIHZhbHVlIHRvIHByb3ZpZGUgdGhlIGV4cGVjdGVkIGZvcm1hdC4gSWYgdGhlIHByb3BlcnR5IGlzIGFuIGV2ZW50IGhhbmRsZXIsXG4gKiBpdCBsb2dzIGFuIGVycm9yLlxuICogQHBhcmFtIHNldHRpbmdzIFRoZSBzZXR0aW5ncyBvZiB0aGUgY29udHJvbFxuICogQHBhcmFtIHNldHRpbmdzS2V5IFRoZSBrZXkgb2YgdGhlIHNldHRpbmcgYmVpbmcgcHJvY2Vzc2VkXG4gKiBAcGFyYW0gdmFsdWUgVGhlIHN0cmluZyB2YWx1ZSB0byBwcm9jZXNzXG4gKiBAcGFyYW0gYWxsRXZlbnRzIEFsbCBldmVudHMgb2YgdGhlIGNvbnRyb2xcbiAqIEBwYXJhbSBhbGxQcm9wZXJ0aWVzIEFsbCBwcm9wZXJ0aWVzIG9mIHRoZSBjb250cm9sXG4gKiBAcGFyYW0gbWV0YWRhdGEgTWV0YWRhdGEgb2YgdGhlIGNvbnRyb2xcbiAqL1xuZnVuY3Rpb24gcHJvY2Vzc1N0cmluZ1Byb3BlcnR5KFxuXHRzZXR0aW5nczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG5cdHNldHRpbmdzS2V5OiBrZXlvZiB0eXBlb2Ygc2V0dGluZ3MsXG5cdHZhbHVlOiBzdHJpbmcsXG5cdGFsbEV2ZW50czogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG5cdGFsbFByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuXHRtZXRhZGF0YTogTWFuYWdlZE9iamVjdE1ldGFkYXRhXG4pOiB2b2lkIHtcblx0aWYgKCF2YWx1ZS5zdGFydHNXaXRoKFwie1wiKSkge1xuXHRcdGlmIChPYmplY3QuaGFzT3duUHJvcGVydHkuY2FsbChhbGxFdmVudHMsIHNldHRpbmdzS2V5KSkge1xuXHRcdFx0TG9nLmVycm9yKGBFdmVudCBoYW5kbGVycyBjYW5ub3QgYmUgc2V0IGFzIHN0cmluZyBpbiBKU1gsICR7c2V0dGluZ3NLZXl9IGluICR7bWV0YWRhdGEuZ2V0TmFtZSgpfWApO1xuXHRcdH1cblx0XHRjb25zdCBwcm9wZXJ0eVR5cGUgPSAoYWxsUHJvcGVydGllc1tzZXR0aW5nc0tleV0gYXMgeyBnZXRUeXBlPzogRnVuY3Rpb24gfSk/LmdldFR5cGU/LigpO1xuXHRcdGlmIChwcm9wZXJ0eVR5cGUgJiYgcHJvcGVydHlUeXBlIGluc3RhbmNlb2YgRGF0YVR5cGUgJiYgW1wiYm9vbGVhblwiLCBcImludFwiLCBcImZsb2F0XCJdLmluY2x1ZGVzKHByb3BlcnR5VHlwZS5nZXROYW1lKCkpKSB7XG5cdFx0XHRzZXR0aW5nc1tzZXR0aW5nc0tleV0gPSBwcm9wZXJ0eVR5cGUucGFyc2VWYWx1ZSh2YWx1ZSk7XG5cdFx0fVxuXHR9IGVsc2Uge1xuXHRcdHNldHRpbmdzW3NldHRpbmdzS2V5XSA9IHZhbHVlO1xuXHR9XG59XG5cbi8qKlxuICogUHJvY2Vzc2VzIGFuIG9iamVjdCBwcm9wZXJ0eSBmb3IgZnVuY3Rpb24gcHJvY2Vzc1Byb3BlcnRpZXMuXG4gKlxuICogSWYgdGhlIHByb3BlcnR5IGlzIGEgcHJvbWlzZSwgaXQgYWRkcyBpdCB0byB0aGUgbGF0ZSBwcm9wZXJ0aWVzIG1hcC4gSWYgdGhlIHByb3BlcnR5IGlzIGEgYmluZGluZyBpbmZvIGhvbGRlcixcbiAqIGl0IHNldHMgdGhlIGJpbmRpbmcgaW5mbyB0byB0aGUgc2V0dGluZ3MuIElmIHRoZSBwcm9wZXJ0eSBpcyBhIHBsYWluIFByb3BlcnR5QmluZGluZ0luZm8gKGUuZy4gZnJvbSBhIGNvbHVtblxuICogYnVpbGRpbmcgYmxvY2sgcHJvcGVydHkgd2l0aCBpc0JpbmRpbmdJbmZvOiB0cnVlKSwgaXQgaXMgZm9yd2FyZGVkIGFzLWlzIHNvIHRoYXQgTWFuYWdlZE9iamVjdCBjYW4gc2V0IHVwIHRoZVxuICogYmluZGluZyBjb3JyZWN0bHkuXG4gKiBAcGFyYW0gc2V0dGluZ3MgVGhlIHNldHRpbmdzIG9mIHRoZSBjb250cm9sXG4gKiBAcGFyYW0gc2V0dGluZ3NLZXkgVGhlIGtleSBvZiB0aGUgc2V0dGluZyBiZWluZyBwcm9jZXNzZWRcbiAqIEBwYXJhbSB2YWx1ZSBUaGUgb2JqZWN0IHZhbHVlIHRvIHByb2Nlc3NcbiAqIEBwYXJhbSBsYXRlUHJvcGVydGllcyBBIG1hcCBvZiB0aGUgY29udHJvbCdzIGxhdGUgcHJvcGVydGllc1xuICovXG5mdW5jdGlvbiBwcm9jZXNzT2JqZWN0UHJvcGVydHkoXG5cdHNldHRpbmdzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcblx0c2V0dGluZ3NLZXk6IGtleW9mIHR5cGVvZiBzZXR0aW5ncyxcblx0dmFsdWU6IHVua25vd24sXG5cdGxhdGVQcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCBQcm9taXNlPHVua25vd24+PlxuKTogdm9pZCB7XG5cdGlmICgodmFsdWUgYXMgUHJvbWlzZTx1bmtub3duPikudGhlbikge1xuXHRcdGxhdGVQcm9wZXJ0aWVzW3NldHRpbmdzS2V5XSA9IHZhbHVlIGFzIFByb21pc2U8dW5rbm93bj47XG5cdFx0ZGVsZXRlIHNldHRpbmdzW3NldHRpbmdzS2V5XTtcblx0fSBlbHNlIGlmICgodmFsdWUgYXMgQmluZGluZ0luZm9Ib2xkZXI8dW5rbm93bj4pLl9fYmluZGluZ0luZm8pIHtcblx0XHRzZXR0aW5nc1tzZXR0aW5nc0tleV0gPSAodmFsdWUgYXMgQmluZGluZ0luZm9Ib2xkZXI8dW5rbm93bj4pLl9fYmluZGluZ0luZm87XG5cdH0gZWxzZSBpZiAodHlwZW9mICh2YWx1ZSBhcyBQcm9wZXJ0eUJpbmRpbmdJbmZvKS5wYXRoID09PSBcInN0cmluZ1wiIHx8IEFycmF5LmlzQXJyYXkoKHZhbHVlIGFzIFByb3BlcnR5QmluZGluZ0luZm8pLnBhcnRzKSkge1xuXHRcdC8vIFBsYWluIFByb3BlcnR5QmluZGluZ0luZm8gb2JqZWN0IChlLmcuIGZyb20gYSBCQiBwcm9wZXJ0eSB3aXRoIGlzQmluZGluZ0luZm86IHRydWUpLlxuXHRcdC8vIENvdmVycyBib3RoIHNpbXBsZSB7cGF0aCwgbW9kZWx9IGFuZCBjb21wb3NpdGUge3BhcnRzOiBbLi4uXX0gYmluZGluZ3MuXG5cdFx0Ly8gRm9yd2FyZCBpdCBkaXJlY3RseSBzbyBNYW5hZ2VkT2JqZWN0IHNldHMgdXAgdGhlIGJpbmRpbmcuXG5cdFx0c2V0dGluZ3Nbc2V0dGluZ3NLZXldID0gdmFsdWU7XG5cdH1cbn1cblxuLyoqXG4gKiBQcm9jZXNzZXMgdGhlIHByb3BlcnRpZXMuXG4gKlxuICogSWYgdGhlIHByb3BlcnR5IGlzIGEgYmluZGluZ1Rvb2xraXQgZXhwcmVzc2lvbiB3ZSBuZWVkIHRvIGNvbXBpbGUgaXQuXG4gKiBFbHNlIGlmIHRoZSBwcm9wZXJ0eSBpcyBzZXQgYXMgc3RyaW5nIChjb21waWxlZCBiaW5kaW5nIGV4cHJlc3Npb24gcmV0dXJucyBzdHJpbmcgYnkgZGVmYXVsdCBldmVuIGlmIGl0J3MgYSBib29sZWFuLCBpbnQsIGV0Yy4pIGFuZCBpdCBkb2Vzbid0IG1hdGNoIHdpdGggZXhwZWN0ZWRcbiAqIGZvcm1hdCB0aGUgdmFsdWUgaXMgcGFyc2VkIHRvIHByb3ZpZGUgZXhwZWN0ZWQgZm9ybWF0LlxuICogQHBhcmFtIG1ldGFkYXRhIE1ldGFkYXRhIG9mIHRoZSBjb250cm9sXG4gKiBAcGFyYW0gc2V0dGluZ3MgU2V0dGluZ3Mgb2YgdGhlIGNvbnRyb2xcbiAqIEByZXR1cm5zIEEgbWFwIG9mIGxhdGUgcHJvcGVydGllcyB0aGF0IG5lZWQgdG8gYmUgYXdhaXRlZCBhZnRlciB0aGUgY29udHJvbCBpcyBjcmVhdGVkXG4gKi9cbmZ1bmN0aW9uIHByb2Nlc3NQcm9wZXJ0aWVzKG1ldGFkYXRhOiBNYW5hZ2VkT2JqZWN0TWV0YWRhdGEsIHNldHRpbmdzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IFJlY29yZDxzdHJpbmcsIFByb21pc2U8dW5rbm93bj4+IHtcblx0bGV0IHNldHRpbmdzS2V5OiBrZXlvZiB0eXBlb2Ygc2V0dGluZ3M7XG5cdGNvbnN0IGxhdGVQcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCBQcm9taXNlPHVua25vd24+PiA9IHt9O1xuXHRjb25zdCBhbGxFdmVudHMgPSBtZXRhZGF0YS5nZXRBbGxFdmVudHMoKTtcblx0Y29uc3QgYWxsUHJvcGVydGllcyA9IG1ldGFkYXRhLmdldEFsbFByb3BlcnRpZXMoKTtcblxuXHRmb3IgKHNldHRpbmdzS2V5IGluIHNldHRpbmdzKSB7XG5cdFx0Y29uc3QgdmFsdWUgPSBzZXR0aW5nc1tzZXR0aW5nc0tleV07XG5cdFx0aWYgKGlzQmluZGluZ1Rvb2xraXRFeHByZXNzaW9uKHZhbHVlKSkge1xuXHRcdFx0cHJvY2Vzc0JpbmRpbmdUb29sa2l0RXhwcmVzc2lvbihzZXR0aW5ncywgc2V0dGluZ3NLZXksIHZhbHVlLCBhbGxQcm9wZXJ0aWVzKTtcblx0XHR9IGVsc2UgaWYgKHZhbHVlICE9PSBudWxsICYmIHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIikge1xuXHRcdFx0cHJvY2Vzc09iamVjdFByb3BlcnR5KHNldHRpbmdzLCBzZXR0aW5nc0tleSwgdmFsdWUsIGxhdGVQcm9wZXJ0aWVzKTtcblx0XHR9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIikge1xuXHRcdFx0cHJvY2Vzc1N0cmluZ1Byb3BlcnR5KHNldHRpbmdzLCBzZXR0aW5nc0tleSwgdmFsdWUsIGFsbEV2ZW50cywgYWxsUHJvcGVydGllcywgbWV0YWRhdGEpO1xuXHRcdH0gZWxzZSBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuXHRcdFx0ZGVsZXRlIHNldHRpbmdzW3NldHRpbmdzS2V5XTtcblx0XHR9XG5cdH1cblx0cmV0dXJuIGxhdGVQcm9wZXJ0aWVzO1xufVxuXG4vKipcbiAqIFByb2Nlc3NlcyB0aGUgY29tbWFuZC5cbiAqXG4gKiBSZXNvbHZlcyB0aGUgY29tbWFuZCBzZXQgb24gdGhlIGNvbnRyb2wgdmlhIHRoZSBpbnRyaW5zaWMgY2xhc3MgYXR0cmlidXRlIFwianN4OmNvbW1hbmRcIi5cbiAqIElmIG5vIGNvbW1hbmQgaGFzIGJlZW4gc2V0IG9yIHRoZSB0YXJnZXRlZCBldmVudCBkb2Vzbid0IGV4aXN0LCBubyBjb25maWd1cmF0aW9uIGlzIHNldC5cbiAqIEBwYXJhbSBtZXRhZGF0YSBNZXRhZGF0YSBvZiB0aGUgY29udHJvbFxuICogQHBhcmFtIHNldHRpbmdzIFNldHRpbmdzIG9mIHRoZSBjb250cm9sXG4gKi9cbmZ1bmN0aW9uIHByb2Nlc3NDb21tYW5kKG1ldGFkYXRhOiBNYW5hZ2VkT2JqZWN0TWV0YWRhdGEsIHNldHRpbmdzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IHZvaWQge1xuXHRjb25zdCBjb21tYW5kUHJvcGVydHkgPSBzZXR0aW5nc1tcImpzeDpjb21tYW5kXCJdO1xuXHRpZiAoY29tbWFuZFByb3BlcnR5KSB7XG5cdFx0Y29uc3QgW2NvbW1hbmQsIGV2ZW50TmFtZV0gPSAoY29tbWFuZFByb3BlcnR5IGFzIHN0cmluZykuc3BsaXQoXCJ8XCIpO1xuXHRcdGNvbnN0IGV2ZW50ID0gbWV0YWRhdGEuZ2V0QWxsRXZlbnRzKClbZXZlbnROYW1lXTtcblx0XHRpZiAoZXZlbnQgJiYgY29tbWFuZC5zdGFydHNXaXRoKFwiY21kOlwiKSkge1xuXHRcdFx0c2V0dGluZ3NbZXZlbnQubmFtZV0gPSBFdmVudEhhbmRsZXJSZXNvbHZlci5yZXNvbHZlRXZlbnRIYW5kbGVyKGNvbW1hbmQpO1xuXHRcdH1cblx0fVxuXHRkZWxldGUgc2V0dGluZ3NbXCJqc3g6Y29tbWFuZFwiXTtcbn1cblxuY29uc3QganN4Q29udHJvbCA9IGZ1bmN0aW9uIDxUIGV4dGVuZHMgRWxlbWVudD4oXG5cdENvbnRyb2xUeXBlOiBOb25BYnN0cmFjdENsYXNzPENvbnRyb2w+IHwgRnVuY3Rpb24sXG5cdHNldHRpbmdzOiBOb25Db250cm9sUHJvcGVydGllczxUPiAmIHtcblx0XHRrZXk6IHN0cmluZztcblx0XHRjaGlsZHJlbj86IEVsZW1lbnQgfCBDb250cm9sUHJvcGVydGllczxUPjtcblx0XHRyZWY/OiBSZWY8VD47XG5cdFx0YmluZGluZz86IHN0cmluZztcblx0XHRjbGFzcz86IHN0cmluZztcblx0XHRbRkxfREVMRUdBVEVdPzogc3RyaW5nO1xuXHRcdFtEVF9ERVNJR05USU1FXT86IHN0cmluZztcblx0XHRbQ09SRV9SRVFVSVJFXT86IHN0cmluZztcblx0fSxcblx0a2V5OiBzdHJpbmcsXG5cdF9qc3hDb250ZXh0OiBKU1hDb250ZXh0LFxuXHRfanN4Rm9ybWF0dGVyQ29udGV4dDogb2JqZWN0XG4pOiBDb250cm9sIHwgQ29udHJvbFtdIHwgdW5kZWZpbmVkIHtcblx0bGV0IHRhcmdldENvbnRyb2w6IENvbnRyb2wgfCBDb250cm9sW10gfCB1bmRlZmluZWQ7XG5cblx0aWYgKChDb250cm9sVHlwZSBhcyB7IGlzRnJhZ21lbnQ/OiBib29sZWFuIH0pPy5pc0ZyYWdtZW50KSB7XG5cdFx0dGFyZ2V0Q29udHJvbCA9IHNldHRpbmdzLmNoaWxkcmVuIGFzIENvbnRyb2wgfCBDb250cm9sW107XG5cdH0gZWxzZSBpZiAoaXNBQ29udHJvbChDb250cm9sVHlwZSkpIHtcblx0XHRjb25zdCBtZXRhZGF0YSA9IENvbnRyb2xUeXBlLmdldE1ldGFkYXRhKCk7XG5cdFx0aWYgKGtleSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRzZXR0aW5nc1tcImtleVwiXSA9IGtleTtcblx0XHR9XG5cdFx0Y29uc3QgbGF0ZVByb3BlcnRpZXMgPSBwcm9jZXNzUHJvcGVydGllcyhtZXRhZGF0YSwgc2V0dGluZ3MpO1xuXHRcdHByb2Nlc3NDb21tYW5kKG1ldGFkYXRhLCBzZXR0aW5ncyk7XG5cdFx0cHJvY2Vzc0FnZ3JlZ2F0aW9ucyhtZXRhZGF0YSwgc2V0dGluZ3MpO1xuXHRcdGNvbnN0IGNsYXNzRGVmID0gc2V0dGluZ3MuY2xhc3M7XG5cdFx0Y29uc3QgcmVmRGVmID0gc2V0dGluZ3MucmVmO1xuXHRcdGNvbnN0IGJpbmRpbmdEZWYgPSBzZXR0aW5ncy5iaW5kaW5nO1xuXHRcdGNvbnN0IGZsRGVsZWdhdGUgPSBzZXR0aW5nc1tGTF9ERUxFR0FURV07XG5cdFx0Y29uc3QgZHREZXNpZ250aW1lID0gc2V0dGluZ3NbRFRfREVTSUdOVElNRV07XG5cdFx0ZGVsZXRlIHNldHRpbmdzLnJlZjtcblx0XHRkZWxldGUgc2V0dGluZ3MuY2xhc3M7XG5cdFx0ZGVsZXRlIHNldHRpbmdzLmJpbmRpbmc7XG5cdFx0ZGVsZXRlIHNldHRpbmdzW0ZMX0RFTEVHQVRFXTtcblx0XHRkZWxldGUgc2V0dGluZ3NbRFRfREVTSUdOVElNRV07XG5cdFx0ZGVsZXRlIHNldHRpbmdzW0NPUkVfUkVRVUlSRV07IC8vIENvcmUgcmVxdWlyZSBpcyBub3QgdXNlZnVsIGluIGNvbnRyb2wgbW9kZVxuXHRcdGNvbnN0IHRhcmdldENvbnRyb2xJbnN0YW5jZSA9IG5ldyBDb250cm9sVHlwZShzZXR0aW5ncyBhcyAkQ29udHJvbFNldHRpbmdzLCB7IC4uLl9qc3hGb3JtYXR0ZXJDb250ZXh0IH0pO1xuXHRcdGlmIChjbGFzc0RlZikge1xuXHRcdFx0dGFyZ2V0Q29udHJvbEluc3RhbmNlLmFkZFN0eWxlQ2xhc3MoY2xhc3NEZWYpO1xuXHRcdH1cblx0XHRpZiAocmVmRGVmKSB7XG5cdFx0XHRyZWZEZWYuc2V0Q3VycmVudCh0YXJnZXRDb250cm9sSW5zdGFuY2UgYXMgdW5rbm93biBhcyBUKTtcblx0XHR9XG5cdFx0Y29uc3QgY3VzdG9tU2V0dGluZ3MgPSB0YXJnZXRDb250cm9sSW5zdGFuY2UuZGF0YShcInNhcC11aS1jdXN0b20tc2V0dGluZ3NcIikgPz8ge307XG5cdFx0aWYgKGR0RGVzaWdudGltZSkge1xuXHRcdFx0Y3VzdG9tU2V0dGluZ3NbXCJzYXAudWkuZHRcIl0gPz89IHt9O1xuXHRcdFx0Y3VzdG9tU2V0dGluZ3NbXCJzYXAudWkuZHRcIl0uZGVzaWdudGltZSA9IGR0RGVzaWdudGltZTtcblx0XHR9XG5cdFx0aWYgKGZsRGVsZWdhdGUpIHtcblx0XHRcdGN1c3RvbVNldHRpbmdzW1wic2FwLnVpLmZsXCJdID8/PSB7fTtcblx0XHRcdGN1c3RvbVNldHRpbmdzW1wic2FwLnVpLmZsXCJdLmRlbGVnYXRlID0gZmxEZWxlZ2F0ZTtcblx0XHR9XG5cblx0XHRpZiAoT2JqZWN0LmtleXMoY3VzdG9tU2V0dGluZ3MpLmxlbmd0aCA+IDApIHtcblx0XHRcdHRhcmdldENvbnRyb2xJbnN0YW5jZS5kYXRhKFwic2FwLXVpLWN1c3RvbS1zZXR0aW5nc1wiLCBjdXN0b21TZXR0aW5ncyk7XG5cdFx0fVxuXG5cdFx0aWYgKGJpbmRpbmdEZWYpIHtcblx0XHRcdGlmICh0eXBlb2YgYmluZGluZ0RlZiA9PT0gXCJzdHJpbmdcIikge1xuXHRcdFx0XHRjb25zdCBiaW5kaW5nSW5mbyA9IEJpbmRpbmdJbmZvLnBhcnNlKGJpbmRpbmdEZWYpO1xuXHRcdFx0XHRpZiAoYmluZGluZ0luZm8pIHtcblx0XHRcdFx0XHR0YXJnZXRDb250cm9sSW5zdGFuY2UuYmluZEVsZW1lbnQoe1xuXHRcdFx0XHRcdFx0bW9kZWw6IGJpbmRpbmdJbmZvLm1vZGVsID8/IHVuZGVmaW5lZCxcblx0XHRcdFx0XHRcdHBhdGg6IGJpbmRpbmdJbmZvLnBhdGgsXG5cdFx0XHRcdFx0XHRwYXJhbWV0ZXJzOiBiaW5kaW5nSW5mby5wYXJhbWV0ZXJzID8/IHVuZGVmaW5lZFxuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHRhcmdldENvbnRyb2xJbnN0YW5jZS5iaW5kRWxlbWVudChiaW5kaW5nRGVmKTtcblx0XHRcdFx0fVxuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0Ly8gV2UgY29uc2lkZXIgaXQncyBhbiBvYmplY3Rcblx0XHRcdFx0T2JqZWN0LmtleXMoYmluZGluZ0RlZikuZm9yRWFjaCgoYmluZGluZ0RlZktleSkgPT4ge1xuXHRcdFx0XHRcdHRhcmdldENvbnRyb2xJbnN0YW5jZS5iaW5kRWxlbWVudCh7IG1vZGVsOiBiaW5kaW5nRGVmS2V5LCBwYXRoOiBiaW5kaW5nRGVmW2JpbmRpbmdEZWZLZXldIH0pO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Zm9yIChjb25zdCBsYXRlUHJvcGVydGllc0tleSBpbiBsYXRlUHJvcGVydGllcykge1xuXHRcdFx0bGF0ZVByb3BlcnRpZXNbbGF0ZVByb3BlcnRpZXNLZXldXG5cdFx0XHRcdC50aGVuKCh2YWx1ZSkgPT4ge1xuXHRcdFx0XHRcdGlmICh0YXJnZXRDb250cm9sSW5zdGFuY2UuaXNEZXN0cm95ZWQoKSkge1xuXHRcdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gdGFyZ2V0Q29udHJvbEluc3RhbmNlLnNldFByb3BlcnR5KGxhdGVQcm9wZXJ0aWVzS2V5LCB2YWx1ZSk7XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC5jYXRjaCgoZXJyb3IpID0+IHtcblx0XHRcdFx0XHRMb2cuZXJyb3IoYENvdWxkbid0IHNldCBwcm9wZXJ0eSAke2xhdGVQcm9wZXJ0aWVzS2V5fSBvbiAke0NvbnRyb2xUeXBlLmdldE1ldGFkYXRhKCkuZ2V0TmFtZSgpfWAsIGVycm9yLCBcImpzeENvbnRyb2xcIik7XG5cdFx0XHRcdH0pO1xuXHRcdH1cblx0XHR0YXJnZXRDb250cm9sID0gdGFyZ2V0Q29udHJvbEluc3RhbmNlO1xuXHR9IGVsc2UgaWYgKHR5cGVvZiBDb250cm9sVHlwZSA9PT0gXCJmdW5jdGlvblwiKSB7XG5cdFx0Y29uc3QgY29udHJvbFR5cGVGbiA9IENvbnRyb2xUeXBlO1xuXHRcdHRhcmdldENvbnRyb2wgPSBjb250cm9sVHlwZUZuKHNldHRpbmdzIGFzICRDb250cm9sU2V0dGluZ3MpO1xuXHR9IGVsc2Uge1xuXHRcdHRhcmdldENvbnRyb2wgPSBuZXcgVGV4dCh7IHRleHQ6IFwiTWlzc2luZyBjb21wb25lbnQgXCIgKyAoQ29udHJvbFR5cGUgYXMgc3RyaW5nKSB9KTtcblx0fVxuXG5cdHJldHVybiB0YXJnZXRDb250cm9sO1xufTtcblxuZXhwb3J0IGRlZmF1bHQganN4Q29udHJvbDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0VBcUJBLE1BQU1BLFdBQVcsR0FBRyxhQUFhO0VBQ2pDLE1BQU1D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
|
|
@@ -12,6 +12,7 @@ import type { ControlProperties, JSXContext, NonControlProperties, Ref } from "s
|
|
|
12
12
|
import Text from "sap/m/Text";
|
|
13
13
|
import BindingInfo from "sap/ui/base/BindingInfo";
|
|
14
14
|
import DataType from "sap/ui/base/DataType";
|
|
15
|
+
import type { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
|
|
15
16
|
import type ManagedObjectMetadata from "sap/ui/base/ManagedObjectMetadata";
|
|
16
17
|
import type Control from "sap/ui/core/Control";
|
|
17
18
|
import type { $ControlSettings } from "sap/ui/core/Control";
|
|
@@ -156,7 +157,9 @@ function processStringProperty(
|
|
|
156
157
|
* Processes an object property for function processProperties.
|
|
157
158
|
*
|
|
158
159
|
* If the property is a promise, it adds it to the late properties map. If the property is a binding info holder,
|
|
159
|
-
* it sets the binding info to the settings.
|
|
160
|
+
* it sets the binding info to the settings. If the property is a plain PropertyBindingInfo (e.g. from a column
|
|
161
|
+
* building block property with isBindingInfo: true), it is forwarded as-is so that ManagedObject can set up the
|
|
162
|
+
* binding correctly.
|
|
160
163
|
* @param settings The settings of the control
|
|
161
164
|
* @param settingsKey The key of the setting being processed
|
|
162
165
|
* @param value The object value to process
|
|
@@ -173,6 +176,11 @@ function processObjectProperty(
|
|
|
173
176
|
delete settings[settingsKey];
|
|
174
177
|
} else if ((value as BindingInfoHolder<unknown>).__bindingInfo) {
|
|
175
178
|
settings[settingsKey] = (value as BindingInfoHolder<unknown>).__bindingInfo;
|
|
179
|
+
} else if (typeof (value as PropertyBindingInfo).path === "string" || Array.isArray((value as PropertyBindingInfo).parts)) {
|
|
180
|
+
// Plain PropertyBindingInfo object (e.g. from a BB property with isBindingInfo: true).
|
|
181
|
+
// Covers both simple {path, model} and composite {parts: [...]} bindings.
|
|
182
|
+
// Forward it directly so ManagedObject sets up the binding.
|
|
183
|
+
settings[settingsKey] = value;
|
|
176
184
|
}
|
|
177
185
|
}
|
|
178
186
|
|
|
@@ -309,6 +317,9 @@ const jsxControl = function <T extends Element>(
|
|
|
309
317
|
for (const latePropertiesKey in lateProperties) {
|
|
310
318
|
lateProperties[latePropertiesKey]
|
|
311
319
|
.then((value) => {
|
|
320
|
+
if (targetControlInstance.isDestroyed()) {
|
|
321
|
+
return;
|
|
322
|
+
}
|
|
312
323
|
return targetControlInstance.setProperty(latePropertiesKey, value);
|
|
313
324
|
})
|
|
314
325
|
.catch((error) => {
|
|
@@ -22,7 +22,7 @@ sap.ui.define(["sap/ui/core/Lib"], function (Library) {
|
|
|
22
22
|
controls: [],
|
|
23
23
|
elements: [],
|
|
24
24
|
// eslint-disable-next-line no-template-curly-in-string
|
|
25
|
-
version: "1.
|
|
25
|
+
version: "1.153.0",
|
|
26
26
|
noLibraryCSS: true
|
|
27
27
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
28
28
|
});
|