| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215 |
- (function() {
- var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
- var __module = nodeEnv ? module : {exports:{}};
- var __filename = 'preview-scripts/assets/script/mk/utils/LoadResUtil.js';
- var __require = nodeEnv ? function (request) {
- return cc.require(request);
- } : function (request) {
- return __quick_compile_project__.require(request, __filename);
- };
- function __define (exports, require, module) {
- if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict";
- cc._RF.push(module, '027abfHullEcrlQpxOvHVc5', 'LoadResUtil');
- // script/mk/utils/LoadResUtil.ts
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- /**
- * 加载资源工具类
- * @description
- * @author 冯聪
- */
- var LoadResUtil = /** @class */ (function () {
- function LoadResUtil() {
- }
- /**
- * 预加载本地资源
- * @description https://docs.cocos.com/creator/manual/zh/release-notes/subpackage-upgrade-guide.html
- * @param paths 加载路径
- * @param type 资源类型(cc.Asset)
- * @returns Promise
- */
- LoadResUtil.prototype.preload = function (paths, type) {
- return new Promise(function (resolve, reject) {
- cc.resources.preload(paths, type,
- //onProgress
- function (finish, total, item) {
- },
- //onComplete
- function (err, data) {
- if (err === void 0) { err = null; }
- if (!err) {
- resolve(data);
- }
- else {
- reject(err);
- }
- });
- });
- };
- /**
- * 加载本地资源
- * @description https://docs.cocos.com/creator/manual/zh/release-notes/subpackage-upgrade-guide.html
- * @param paths 加载路径
- * @param type 资源类型(cc.Asset)
- * @returns Promise
- */
- LoadResUtil.prototype.load = function (paths, type) {
- return new Promise(function (resolve, reject) {
- cc.resources.load(paths, type,
- //onProgress
- function (finish, total, item) {
- },
- //onComplete
- function (err, data) {
- if (err === void 0) { err = null; }
- if (!err) {
- resolve(data);
- }
- else {
- reject(err);
- }
- });
- });
- };
- /**
- * 预加载文件夹资源
- * @description https://docs.cocos.com/creator/manual/zh/release-notes/subpackage-upgrade-guide.html
- * @param dir 文件夹路径
- * @param type 资源类型(cc.Asset)
- * @returns Promise
- */
- LoadResUtil.prototype.preloadDir = function (dir, type) {
- return new Promise(function (resolve, reject) {
- cc.resources.preloadDir(dir, type, //onProgress
- function (finish, total, item) {
- }, function (err, data) {
- if (err === void 0) { err = null; }
- if (!err) {
- resolve(data);
- }
- else {
- reject(err);
- }
- });
- });
- };
- /**
- * 加载文件夹资源
- * @description https://docs.cocos.com/creator/manual/zh/release-notes/subpackage-upgrade-guide.html
- * @param dir 文件夹路径
- * @param type 资源类型(cc.Asset)
- * @returns Promise
- */
- LoadResUtil.prototype.loadDir = function (dir, type) {
- return new Promise(function (resolve, reject) {
- cc.resources.loadDir(dir, type,
- //onProgress
- function (finish, total, item) {
- },
- //onComplete
- function (err, data) {
- if (err === void 0) { err = null; }
- if (!err) {
- resolve(data);
- }
- else {
- reject(err);
- }
- });
- });
- };
- /**
- * 加载远程资源
- * @description https://docs.cocos.com/creator/manual/zh/release-notes/subpackage-upgrade-guide.html
- * @param url 加载路径
- * @param options
- * @returns Promise
- */
- LoadResUtil.prototype.loadRemote = function (url, options) {
- return new Promise(function (resolve, reject) {
- cc.assetManager.loadRemote(url, options,
- //onComplete
- function (err, data) {
- if (err === void 0) { err = null; }
- if (!err) {
- resolve(data);
- }
- else {
- reject(err);
- }
- });
- });
- };
- /**
- * 预加载场景
- * @description https://docs.cocos.com/creator/manual/zh/release-notes/subpackage-upgrade-guide.html
- * @param url 加载路径
- * @param options
- * @returns Promise
- */
- LoadResUtil.prototype.preloadScene = function (sceneName, options) {
- return new Promise(function (resolve, reject) {
- cc.resources.preloadScene(sceneName, options,
- //onProgress
- function (finish, total, item) {
- },
- //onComplete
- function (err) {
- if (err === void 0) { err = null; }
- if (!err) {
- resolve();
- }
- else {
- reject(err);
- }
- });
- });
- };
- /**
- * 加载场景
- * @description https://docs.cocos.com/creator/manual/zh/release-notes/subpackage-upgrade-guide.html
- * @param url 加载路径
- * @param options
- * @returns Promise
- */
- LoadResUtil.prototype.loadScene = function (sceneName, options) {
- return new Promise(function (resolve, reject) {
- cc.resources.loadScene(sceneName, options,
- //onProgress
- function (finish, total, item) {
- },
- //onComplete
- function (err, data) {
- if (err === void 0) { err = null; }
- if (!err) {
- resolve(data);
- }
- else {
- reject(err);
- }
- });
- });
- };
- /**
- * 日志标签
- * @description
- */
- LoadResUtil._logTag = "[LoadResUtil]";
- return LoadResUtil;
- }());
- exports.default = LoadResUtil;
- cc._RF.pop();
- }
- if (nodeEnv) {
- __define(__module.exports, __require, __module);
- }
- else {
- __quick_compile_project__.registerModuleFunc(__filename, function () {
- __define(__module.exports, __require, __module);
- });
- }
- })();
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcc2NyaXB0XFxta1xcdXRpbHNcXExvYWRSZXNVdGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0E7Ozs7R0FJRztBQUNIO0lBQUE7SUF1TEEsQ0FBQztJQS9LRzs7Ozs7O09BTUc7SUFDSSw2QkFBTyxHQUFkLFVBQWUsS0FBbUIsRUFBRSxJQUFxQjtRQUNyRCxPQUFPLElBQUksT0FBTyxDQUFnQyxVQUFDLE9BQXNELEVBQUUsTUFBTTtZQUM3RyxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsSUFBSTtZQUM1QixZQUFZO1lBQ1osVUFBQyxNQUFjLEVBQUUsS0FBYSxFQUFFLElBQWlDO1lBRWpFLENBQUM7WUFDRCxZQUFZO1lBQ1osVUFBQyxHQUFpQixFQUFFLElBQW1DO2dCQUF0RCxvQkFBQSxFQUFBLFVBQWlCO2dCQUNkLElBQUksQ0FBQyxHQUFHLEVBQUU7b0JBQ04sT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNqQjtxQkFDSTtvQkFDRCxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ2Y7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLDBCQUFJLEdBQVgsVUFBZ0MsS0FBbUIsRUFBRSxJQUFxQjtRQUN0RSxPQUFPLElBQUksT0FBTyxDQUFJLFVBQUMsT0FBMEIsRUFBRSxNQUFNO1lBQ3JELEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJO1lBQ3pCLFlBQVk7WUFDWixVQUFDLE1BQWMsRUFBRSxLQUFhLEVBQUUsSUFBaUM7WUFFakUsQ0FBQztZQUNELFlBQVk7WUFDWixVQUFDLEdBQWlCLEVBQUUsSUFBTztnQkFBMUIsb0JBQUEsRUFBQSxVQUFpQjtnQkFDZCxJQUFJLENBQUMsR0FBRyxFQUFFO29CQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztp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TSxVQUFDLE9BQTRCLEVBQUUsTUFBTTtZQUN6RCxFQUFFLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsT0FBTztZQUNyQyxZQUFZO1lBQ1osVUFBQyxNQUFjLEVBQUUsS0FBYSxFQUFFLElBQWlDO1lBRWpFLENBQUM7WUFDRCxZQUFZO1lBQ1osVUFBQyxHQUFpQixFQUFFLElBQW1CO2dCQUF0QyxvQkFBQSxFQUFBLFVBQWlCO2dCQUNkLElBQUksQ0FBQyxHQUFHLEVBQUU7b0JBQ04sT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNqQjtxQkFDSTtvQkFDRCxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ2Y7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQXBMRDs7O09BR0c7SUFDWSxtQkFBTyxHQUFHLGVBQWUsQ0FBQztJQWlMN0Msa0JBQUM7Q0F2TEQsQUF1TEMsSUFBQTtrQkF2TG9CLFdBQVciLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcclxuLyoqXHJcbiAqIOWKoOi9vei1hOa6kOW3peWFt+exu1xyXG4gKiBAZGVzY3JpcHRpb24gXHJcbiAqIEBhdXRob3Ig5Yav6IGqXHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBMb2FkUmVzVXRpbCB7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDml6Xlv5fmoIfnrb5cclxuICAgICAqIEBkZXNjcmlwdGlvbiBcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBzdGF0aWMgX2xvZ1RhZyA9IFwiW0xvYWRSZXNVdGlsXVwiO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICog6aKE5Yqg6L295pys5Zyw6LWE5rqQIFxyXG4gICAgICogQGRlc2NyaXB0aW9uICAgaHR0cHM6Ly9kb2NzLmNvY29zLmNvbS9jcmVhdG9yL21hbnVhbC96aC9yZWxlYXNlLW5vdGVzL3N1YnBhY2thZ2UtdXBncmFkZS1ndWlkZS5odG1sXHJcbiAgICAgKiBAcGFyYW0gIHBhdGhzICDliqDovb3ot6/lvoRcclxuICAgICAqIEBwYXJhbSAgdHlwZSAgIOi1hOa6kOexu+WeiyhjYy5Bc3NldClcclxuICAgICAqIEByZXR1cm5zIFByb21pc2VcclxuICAgICAqL1xyXG4gICAgcHVibGljIHByZWxvYWQocGF0aHM6IHN0cmluZyB8IGFueSwgdHlwZTogdHlwZW9mIGNjLkFzc2V0KTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2U8Y2MuQXNzZXRNYW5hZ2VyLlJlcXVlc3RJdGVtW10+KChyZXNvbHZlOiAoZGF0YTogY2MuQXNzZXRNYW5hZ2VyLlJlcXVlc3RJdGVtW10pID0+IHZvaWQsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgICBjYy5yZXNvdXJjZXMucHJlbG9hZChwYXRocywgdHlwZSxcclxuICAgICAgICAgICAgICAgIC8vb25Qcm9ncmVzc1xyXG4gICAgICAgICAgICAgICAgKGZpbmlzaDogbnVtYmVyLCB0b3RhbDogbnVtYmVyLCBpdGVtOiBjYy5Bc3NldE1hbmFnZXIuUmVxdWVzdEl0ZW0pID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgLy9vbkNvbXBsZXRlXHJcbiAgICAgICAgICAgICAgICAoZXJyOiBFcnJvciA9IG51bGwsIGRhdGE6IGNjLkFzc2V0TWFuYWdlci5SZXF1ZXN0SXRlbVtdKTogdm9pZCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFlcnIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShkYXRhKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5Yqg6L295pys5Zyw6LWE5rqQIFxyXG4gICAgICogQGRlc2NyaXB0aW9uICAgaHR0cHM6Ly9kb2NzLmNvY29zLmNvbS9jcmVhdG9yL21hbnVhbC96aC9yZWxlYXNlLW5vdGVzL3N1YnBhY2thZ2UtdXBncmFkZS1ndWlkZS5odG1sXHJcbiAgICAgKiBAcGFyYW0gIHBhdGhzICDliqDovb3ot6/lvoRcclxuICAgICAqIEBwYXJhbSAgdHlwZSAgIOi1hOa6kOexu+WeiyhjYy5Bc3NldClcclxuICAgICAqIEByZXR1cm5zIFByb21pc2VcclxuICAgICAqL1xyXG4gICAgcHVibGljIGxvYWQ8VCBleHRlbmRzIGNjLkFzc2V0PihwYXRoczogc3RyaW5nIHwgYW55LCB0eXBlOiB0eXBlb2YgY2MuQXNzZXQpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxUPigocmVzb2x2ZTogKGRhdGE6IFQpID0+IHZvaWQsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgICBjYy5yZXNvdXJjZXMubG9hZChwYXRocywgdHlwZSxcclxuICAgICAgICAgICAgICAgIC8vb25Qcm9ncmVzc1xyXG4gICAgICAgICAgICAgICAgKGZpbmlzaDogbnVtYmVyLCB0b3RhbDogbnVtYmVyLCBpdGVtOiBjYy5Bc3NldE1hbmFnZXIuUmVxdWVzdEl0ZW0pID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgLy9vbkNvbXBsZXRlXHJcbiAgICAgICAgICAgICAgICAoZXJyOiBFcnJvciA9IG51bGwsIGRhdGE6IFQpOiB2b2lkID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoIWVycikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGRhdGEpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDpooTliqDovb3mlofku7blpLnotYTmupAgXHJcbiAgICAgKiBAZGVzY3JpcHRpb24gICBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL3poL3JlbGVhc2Utbm90ZXMvc3VicGFja2FnZS11cGdyYWRlLWd1aWRlLmh0bWxcclxuICAgICAqIEBwYXJhbSAgIGRpciAgIOaWh+S7tuWkuei3r+W+hFxyXG4gICAgICogQHBhcmFtICAgdHlwZSAg6LWE5rqQ57G75Z6LKGNjLkFzc2V0KVxyXG4gICAgICogQHJldHVybnMgUHJvbWlzZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgcHJlbG9hZERpcihkaXI6IHN0cmluZywgdHlwZTogdHlwZW9mIGNjLkFzc2V0KTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2U8Y2MuQXNzZXRNYW5hZ2VyLlJlcXVlc3RJdGVtW10+KChyZXNvbHZlOiAoZGF0YTogY2MuQXNzZXRNYW5hZ2VyLlJlcXVlc3RJdGVtW10pID0+IHZvaWQsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgICBjYy5yZXNvdXJjZXMucHJlbG9hZERpcihkaXIsIHR5cGUsICAvL29uUHJvZ3Jlc3NcclxuICAgICAgICAgICAgICAgIChmaW5pc2g6IG51bWJlciwgdG90YWw6IG51bWJlciwgaXRlbTogY2MuQXNzZXRNYW5hZ2VyLlJlcXVlc3RJdGVtKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIChlcnI6IEVycm9yID0gbnVsbCwgZGF0YTogY2MuQXNzZXRNYW5hZ2VyLlJlcXVlc3RJdGVtW10pOiB2b2lkID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoIWVycikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGRhdGEpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDliqDovb3mlofku7blpLnotYTmupAgXHJcbiAgICAgKiBAZGVzY3JpcHRpb24gICBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL3poL3JlbGVhc2Utbm90ZXMvc3VicGFja2FnZS11cGdyYWRlLWd1aWRlLmh0bWxcclxuICAgICAqIEBwYXJhbSAgIGRpciAgIOaWh+S7tuWkuei3r+W+hFxyXG4gICAgICogQHBhcmFtICAgdHlwZSAg6LWE5rqQ57G75Z6LKGNjLkFzc2V0KVxyXG4gICAgICogQHJldHVybnMgUHJvbWlzZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgbG9hZERpcjxUIGV4dGVuZHMgY2MuQXNzZXQ+KGRpcjogc3RyaW5nLCB0eXBlOiB0eXBlb2YgY2MuQXNzZXQpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxUPigocmVzb2x2ZTogKGRhdGE6IFQpID0+IHZvaWQsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgICBjYy5yZXNvdXJjZXMubG9hZERpcihkaXIsIHR5cGUsXHJcbiAgICAgICAgICAgICAgICAvL29uUHJvZ3Jlc3NcclxuICAgICAgICAgICAgICAgIChmaW5pc2g6IG51bWJlciwgdG90YWw6IG51bWJlciwgaXRlbTogY2MuQXNzZXRNYW5hZ2VyLlJlcXVlc3RJdGVtKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIC8vb25Db21wbGV0ZVxyXG4gICAgICAgICAgICAgICAgKGVycjogRXJyb3IgPSBudWxsLCBkYXRhOiBUIHwgYW55KTogdm9pZCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFlcnIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShkYXRhKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5Yqg6L296L+c56iL6LWE5rqQIFxyXG4gICAgICogQGRlc2NyaXB0aW9uICAgICAgaHR0cHM6Ly9kb2NzLmNvY29zLmNvbS9jcmVhdG9yL21hbnVhbC96aC9yZWxlYXNlLW5vdGVzL3N1YnBhY2thZ2UtdXBncmFkZS1ndWlkZS5odG1sXHJcbiAgICAgKiBAcGFyYW0gICB1cmwgICAgICDliqDovb3ot6/lvoRcclxuICAgICAqIEBwYXJhbSAgIG9wdGlvbnMgIFxyXG4gICAgICogQHJldHVybnMgUHJvbWlzZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgbG9hZFJlbW90ZTxUIGV4dGVuZHMgY2MuQXNzZXQ+KHVybDogc3RyaW5nLCBvcHRpb25zOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2U8VD4oKHJlc29sdmU6IChkYXRhOiBUKSA9PiB2b2lkLCByZWplY3QpID0+IHtcclxuICAgICAgICAgICAgY2MuYXNzZXRNYW5hZ2VyLmxvYWRSZW1vdGUodXJsLCBvcHRpb25zLFxyXG4gICAgICAgICAgICAgICAgLy9vbkNvbXBsZXRlXHJcbiAgICAgICAgICAgICAgICAoZXJyOiBFcnJvciA9IG51bGwsIGRhdGE6IFQpOiB2b2lkID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoIWVycikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGRhdGEpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDpooTliqDovb3lnLrmma8gXHJcbiAgICAgKiBAZGVzY3JpcHRpb24gICAgIGh0dHBzOi8vZG9jcy5jb2Nvcy5jb20vY3JlYXRvci9tYW51YWwvemgvcmVsZWFzZS1ub3Rlcy9zdWJwYWNrYWdlLXVwZ3JhZGUtZ3VpZGUuaHRtbFxyXG4gICAgICogQHBhcmFtICAgdXJsICAgICDliqDovb3ot6/lvoRcclxuICAgICAqIEBwYXJhbSAgIG9wdGlvbnMgIFxyXG4gICAgICogQHJldHVybnMgUHJvbWlzZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgcHJlbG9hZFNjZW5lKHNjZW5lTmFtZTogc3RyaW5nLCBvcHRpb25zOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KSB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlOiAoKSA9PiB2b2lkLCByZWplY3QpID0+IHtcclxuICAgICAgICAgICAgY2MucmVzb3VyY2VzLnByZWxvYWRTY2VuZShzY2VuZU5hbWUsIG9wdGlvbnMsXHJcbiAgICAgICAgICAgICAgICAvL29uUHJvZ3Jlc3NcclxuICAgICAgICAgICAgICAgIChmaW5pc2g6IG51bWJlciwgdG90YWw6IG51bWJlciwgaXRlbTogY2MuQXNzZXRNYW5hZ2VyLlJlcXVlc3RJdGVtKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIC8vb25Db21wbGV0ZVxyXG4gICAgICAgICAgICAgICAgKGVycjogRXJyb3IgPSBudWxsKTogdm9pZCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFlcnIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDliqDovb3lnLrmma8gXHJcbiAgICAgKiBAZGVzY3JpcHRpb24gICAgIGh0dHBzOi8vZG9jcy5jb2Nvcy5jb20vY3JlYXRvci9tYW51YWwvemgvcmVsZWFzZS1ub3Rlcy9zdWJwYWNrYWdlLXVwZ3JhZGUtZ3VpZGUuaHRtbFxyXG4gICAgICogQHBhcmFtICAgdXJsICAgICDliqDovb3ot6/lvoRcclxuICAgICAqIEBwYXJhbSAgIG9wdGlvbnMgXHJcbiAgICAgKiBAcmV0dXJucyBQcm9taXNlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBsb2FkU2NlbmUoc2NlbmVOYW1lOiBzdHJpbmcsIG9wdGlvbnM6IFJlY29yZDxzdHJpbmcsIGFueT4pOiBQcm9taXNlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxhbnk+KChyZXNvbHZlOiAoZGF0YTogYW55KSA9PiB2b2lkLCByZWplY3QpID0+IHtcclxuICAgICAgICAgICAgY2MucmVzb3VyY2VzLmxvYWRTY2VuZShzY2VuZU5hbWUsIG9wdGlvbnMsXHJcbiAgICAgICAgICAgICAgICAvL29uUHJvZ3Jlc3NcclxuICAgICAgICAgICAgICAgIChmaW5pc2g6IG51bWJlciwgdG90YWw6IG51bWJlciwgaXRlbTogY2MuQXNzZXRNYW5hZ2VyLlJlcXVlc3RJdGVtKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIC8vb25Db21wbGV0ZVxyXG4gICAgICAgICAgICAgICAgKGVycjogRXJyb3IgPSBudWxsLCBkYXRhOiBjYy5TY2VuZUFzc2V0KTogdm9pZCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFlcnIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShkYXRhKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|