dts-backoffice-util 2.8.1 → 2.8.3
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/CHANGELOG.md +2 -2
- package/README.md +52 -9
- package/bundles/dts-backoffice-util.umd.js +7 -4
- package/bundles/dts-backoffice-util.umd.js.map +1 -1
- package/bundles/dts-backoffice-util.umd.min.js +1 -1
- package/bundles/dts-backoffice-util.umd.min.js.map +1 -1
- package/esm2015/lib/utils/file.util.js +6 -4
- package/esm5/lib/utils/file.util.js +8 -5
- package/fesm2015/dts-backoffice-util.js +5 -3
- package/fesm2015/dts-backoffice-util.js.map +1 -1
- package/fesm5/dts-backoffice-util.js +7 -4
- package/fesm5/dts-backoffice-util.js.map +1 -1
- package/lib/utils/file.util.d.ts +1 -1
- package/package.json +1 -1
|
@@ -5,14 +5,16 @@
|
|
|
5
5
|
export class FileUtil {
|
|
6
6
|
constructor() { }
|
|
7
7
|
/**
|
|
8
|
-
* @param {?}
|
|
8
|
+
* @param {?} data
|
|
9
9
|
* @param {?} fileName
|
|
10
10
|
* @param {?=} contentType
|
|
11
|
+
* @param {?=} base64
|
|
11
12
|
* @return {?}
|
|
12
13
|
*/
|
|
13
|
-
static downloadFile(
|
|
14
|
+
static downloadFile(data, fileName, contentType, base64) {
|
|
15
|
+
base64 = (base64 === false) ? false : true;
|
|
14
16
|
/** @type {?} */
|
|
15
|
-
const dataBlob = this.b64toBlob(
|
|
17
|
+
const dataBlob = base64 ? this.b64toBlob(data, contentType) : data;
|
|
16
18
|
this.download(dataBlob, fileName);
|
|
17
19
|
}
|
|
18
20
|
/**
|
|
@@ -218,4 +220,4 @@ if (false) {
|
|
|
218
220
|
/** @type {?} */
|
|
219
221
|
DownloadDataParams.prototype.columnExclude;
|
|
220
222
|
}
|
|
221
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vZHRzLWJhY2tvZmZpY2UtdXRpbC8iLCJzb3VyY2VzIjpbImxpYi91dGlscy9maWxlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE1BQU0sT0FBTyxRQUFRO0lBRWpCLGdCQUNJLENBQUM7Ozs7Ozs7SUFFTCxNQUFNLENBQUMsWUFBWSxDQUFDLE9BQVksRUFBRSxRQUFnQixFQUFFLFdBQW9COztjQUM5RCxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDO1FBQ3JELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Ozs7OztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBZ0IsRUFBRSxnQkFBcUMsSUFBSTtRQUMzRSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQUUsT0FBTztTQUFFO1FBRXRCLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFBRSxhQUFhLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1NBQUU7UUFDakUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUU7WUFBRSxhQUFhLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztTQUFFO1FBQ3JFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFO1lBQUUsYUFBYSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7U0FBRTtRQUM3RCxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsRUFBRTtZQUFFLGFBQWEsQ0FBQyxlQUFlLEdBQUcsR0FBRyxDQUFDO1NBQUU7UUFDNUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUU7WUFBRSxhQUFhLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztTQUFFO1FBQ2pFLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFO1lBQUUsYUFBYSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7U0FBRTs7Y0FF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QWtCO0NBTTlCOzs7SUFMRyxzQ0FBaUI7O0lBQ2pCLHNDQUFjOztJQUNkLDZDQUF3Qjs7SUFDeEIsd0NBQTBCOztJQUMxQiwyQ0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgRmlsZVV0aWwge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgKSB7IH1cclxuXHJcbiAgICBzdGF0aWMgZG93bmxvYWRGaWxlKGRhdGFiNjQ6IGFueSwgZmlsZU5hbWU6IHN0cmluZywgY29udGVudFR5cGU/OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBkYXRhQmxvYiA9IHRoaXMuYjY0dG9CbG9iKGRhdGFiNjQsIGNvbnRlbnRUeXBlKTtcclxuICAgICAgICB0aGlzLmRvd25sb2FkKGRhdGFCbG9iLCBmaWxlTmFtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGRvd25sb2FkRGF0YShkYXRhOiBBcnJheTxhbnk+LCBkd2xkRGF0YVBhcmFtOiBJRG93bmxvYWREYXRhUGFyYW1zID0gbnVsbCk6IHZvaWQge1xyXG4gICAgICAgIGlmICghZGF0YSkgeyByZXR1cm47IH1cclxuXHJcbiAgICAgICAgaWYgKCFkd2xkRGF0YVBhcmFtKSB7IGR3bGREYXRhUGFyYW0gPSBuZXcgRG93bmxvYWREYXRhUGFyYW1zKCk7IH1cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0uZmlsZU5hbWUpIHsgZHdsZERhdGFQYXJhbS5maWxlTmFtZSA9ICdkYXRhLmNzdic7IH1cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0ubGl0ZXJhbHMpIHsgZHdsZERhdGFQYXJhbS5saXRlcmFscyA9IHt9OyB9XHJcbiAgICAgICAgaWYgKCFkd2xkRGF0YVBhcmFtLmNvbHVtbkRlbGltaXRlcikgeyBkd2xkRGF0YVBhcmFtLmNvbHVtbkRlbGltaXRlciA9ICc7JzsgfVxyXG4gICAgICAgIGlmICghZHdsZERhdGFQYXJhbS5jb2x1bW5MaXN0KSB7IGR3bGREYXRhUGFyYW0uY29sdW1uTGlzdCA9IFtdOyB9XHJcbiAgICAgICAgaWYgKCFkd2xkRGF0YVBhcmFtLmNvbHVtbkV4Y2x1ZGUpIHsgZHdsZERhdGFQYXJhbS5jb2x1bW5FeGNsdWRlID0gW107IH1cclxuXHJcbiAgICAgICAgY29uc3QgZGF0YWI2NCA9IGJ0b2EodGhpcy5qc29uVG9TdHJpbmcoZGF0YSwgZHdsZERhdGFQYXJhbSkpO1xyXG4gICAgICAgIHRoaXMuZG93bmxvYWRGaWxlKGRhdGFiNjQsIGR3bGREYXRhUGFyYW0uZmlsZU5hbWUsICd0ZXh0L2NzdicpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgc3RhdGljIGRvd25sb2FkKGZpbGU6IEJsb2IsIGZpbGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBiaW5hcnlEYXRhID0gW2ZpbGVdO1xyXG4gICAgICAgIGNvbnN0IGRvd25sb2FkTGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcclxuICAgICAgICBjb25zdCB1cmxEb3dubG9hZCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKGJpbmFyeURhdGEsIHsgdHlwZTogZmlsZS50eXBlIH0pKTtcclxuXHJcbiAgICAgICAgLyoqVmVyaWZpY2Egc2Ugw6kgaWUgb3UgZWRnZSwgcG9pcyBvIG1lc21vIHRlbSB0cmF0YW1lbnRvIHByw7NwcmlvIHBhcmEgYXJxdWl2b3MgYmxvYiAqL1xyXG4gICAgICAgIGlmIChuYXZpZ2F0b3IudXNlckFnZW50LnRvVXBwZXJDYXNlKCkuaW5kZXhPZignLk5FVCcpID4gMCB8fCBuYXZpZ2F0b3IudXNlckFnZW50LnRvVXBwZXJDYXNlKCkuaW5kZXhPZignRURHRScpID4gMCkge1xyXG4gICAgICAgICAgICB3aW5kb3cubmF2aWdhdG9yLm1zU2F2ZU9yT3BlbkJsb2IoZmlsZSwgZmlsZU5hbWUpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGRvd25sb2FkTGluay5ocmVmID0gdXJsRG93bmxvYWQ7XHJcbiAgICAgICAgICAgIGRvd25sb2FkTGluay5zZXRBdHRyaWJ1dGUoJ2Rvd25sb2FkJywgZmlsZU5hbWUpO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRvd25sb2FkTGluayk7XHJcbiAgICAgICAgICAgIGRvd25sb2FkTGluay5jbGljaygpO1xyXG4gICAgICAgICAgICB3aW5kb3cuVVJMLnJldm9rZU9iamVjdFVSTCh1cmxEb3dubG9hZCk7XHJcbiAgICAgICAgICAgIGRvd25sb2FkTGluay5yZW1vdmUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgYjY0dG9CbG9iKGI2NERhdGE6IGFueSwgY29udGVudFR5cGU/OiBzdHJpbmcsIHNsaWNlU2l6ZT86IG51bWJlcik6IEJsb2Ige1xyXG4gICAgICAgIGNvbnRlbnRUeXBlID0gY29udGVudFR5cGUgfHwgJyc7XHJcbiAgICAgICAgc2xpY2VTaXplID0gc2xpY2VTaXplIHx8IDUxMjtcclxuXHJcbiAgICAgICAgY29uc3QgYnl0ZUNoYXJhY3RlcnMgPSBhdG9iKGI2NERhdGEpO1xyXG4gICAgICAgIGNvbnN0IGJ5dGVBcnJheXMgPSBbXTtcclxuXHJcbiAgICAgICAgZm9yIChsZXQgb2Zmc2V0ID0gMDsgb2Zmc2V0IDwgYnl0ZUNoYXJhY3RlcnMubGVuZ3RoOyBvZmZzZXQgKz0gc2xpY2VTaXplKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNsaWNlID0gYnl0ZUNoYXJhY3RlcnMuc2xpY2Uob2Zmc2V0LCBvZmZzZXQgKyBzbGljZVNpemUpO1xyXG5cclxuICAgICAgICAgICAgY29uc3QgYnl0ZU51bWJlcnMgPSBuZXcgQXJyYXkoc2xpY2UubGVuZ3RoKTtcclxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzbGljZS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICAgICAgYnl0ZU51bWJlcnNbaV0gPSBzbGljZS5jaGFyQ29kZUF0KGkpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBjb25zdCBieXRlQXJyYXkgPSBuZXcgVWludDhBcnJheShieXRlTnVtYmVycyk7XHJcbiAgICAgICAgICAgIGJ5dGVBcnJheXMucHVzaChieXRlQXJyYXkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKGJ5dGVBcnJheXMsIHsgdHlwZTogY29udGVudFR5cGUgfSk7XHJcbiAgICAgICAgcmV0dXJuIGJsb2I7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMganNvblRvU3RyaW5nKGpzb25EYXRhOiBBcnJheTxhbnk+LCBkd2xkRGF0YVBhcmFtOiBJRG93bmxvYWREYXRhUGFyYW1zKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAoIWpzb25EYXRhIHx8IGpzb25EYXRhLmxlbmd0aCA9PT0gMCkgeyByZXR1cm4gJyc7IH1cclxuXHJcbiAgICAgICAgY29uc3QgbGluZURlbGltaXRlciA9ICdcXG4nO1xyXG5cclxuICAgICAgICBsZXQgY29sdW1uT3JpZyA9IG51bGw7XHJcbiAgICAgICAgbGV0IGNvbHVtbkhlYWRlciA9IG51bGw7XHJcbiAgICAgICAgY29uc3Qga2V5cyA9IFtdO1xyXG4gICAgICAgIGxldCBpbmNsdWRlS2V5OiBib29sZWFuO1xyXG5cclxuICAgICAgICBpZiAoZHdsZERhdGFQYXJhbS5jb2x1bW5MaXN0ICYmXHJcbiAgICAgICAgICAgIGR3bGREYXRhUGFyYW0uY29sdW1uTGlzdC5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGNvbHVtbk9yaWcgPSBkd2xkRGF0YVBhcmFtLmNvbHVtbkxpc3Q7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29sdW1uT3JpZyA9IE9iamVjdC5rZXlzKGpzb25EYXRhWzBdKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbHVtbk9yaWcuZm9yRWFjaChrZXkgPT4ge1xyXG4gICAgICAgICAgICBpbmNsdWRlS2V5ID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgICAgIGlmIChkd2xkRGF0YVBhcmFtLmNvbHVtbkV4Y2x1ZGUgJiZcclxuICAgICAgICAgICAgICAgIGR3bGREYXRhUGFyYW0uY29sdW1uRXhjbHVkZS5sZW5ndGggPiAwICYmXHJcbiAgICAgICAgICAgICAgICBkd2xkRGF0YVBhcmFtLmNvbHVtbkV4Y2x1ZGUuaW5kZXhPZihrZXkpICE9PSAtMSkge1xyXG4gICAgICAgICAgICAgICAgaW5jbHVkZUtleSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAoaW5jbHVkZUtleSkge1xyXG4gICAgICAgICAgICAgICAga2V5cy5wdXNoKGtleSk7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW5IZWFkZXIgPSAoIWNvbHVtbkhlYWRlcikgPyAnJyA6IGNvbHVtbkhlYWRlciArIGR3bGREYXRhUGFyYW0uY29sdW1uRGVsaW1pdGVyO1xyXG4gICAgICAgICAgICAgICAgY29sdW1uSGVhZGVyICs9IChkd2xkRGF0YVBhcmFtLmxpdGVyYWxzW2tleV0pID8gZHdsZERhdGFQYXJhbS5saXRlcmFsc1trZXldIDoga2V5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIGNvbnN0IGxpbmVTdHIgPSBqc29uRGF0YS5yZWR1Y2UoKGFjY0xpbmVTdHIsIGN1cnJlbnRJdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBmaXJzdCA9IHRydWU7XHJcbiAgICAgICAgICAgIGxldCBjb2x1bW5WYWx1ZSA9IG51bGw7XHJcblxyXG4gICAgICAgICAgICBrZXlzLmZvckVhY2goa2V5ID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICghZmlyc3QpIHsgYWNjTGluZVN0ciArPSBkd2xkRGF0YVBhcmFtLmNvbHVtbkRlbGltaXRlcjsgfVxyXG5cclxuICAgICAgICAgICAgICAgIGNvbHVtblZhbHVlID0gY3VycmVudEl0ZW1ba2V5XTtcclxuICAgICAgICAgICAgICAgIGlmIChjb2x1bW5WYWx1ZSA9PT0gbnVsbCB8fCBjb2x1bW5WYWx1ZSA9PT0gdW5kZWZpbmVkKSB7IGNvbHVtblZhbHVlID0gJyc7IH1cclxuICAgICAgICAgICAgICAgIHN3aXRjaCAodHlwZW9mIChjb2x1bW5WYWx1ZSkpIHtcclxuICAgICAgICAgICAgICAgICAgICBjYXNlICdudW1iZXInOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5WYWx1ZSA9IGNvbHVtblZhbHVlLnRvTG9jYWxlU3RyaW5nKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5WYWx1ZSA9IChkd2xkRGF0YVBhcmFtLmxpdGVyYWxzW2Ake2NvbHVtblZhbHVlfWBdKSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkd2xkRGF0YVBhcmFtLmxpdGVyYWxzW2Ake2NvbHVtblZhbHVlfWBdIDogY29sdW1uVmFsdWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ29iamVjdCc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtblZhbHVlID0gSlNPTi5zdHJpbmdpZnkoY29sdW1uVmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgYWNjTGluZVN0ciArPSBjb2x1bW5WYWx1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICBmaXJzdCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgIHJldHVybiBhY2NMaW5lU3RyICsgbGluZURlbGltaXRlcjtcclxuXHJcbiAgICAgICAgfSwgY29sdW1uSGVhZGVyICsgbGluZURlbGltaXRlcik7XHJcblxyXG4gICAgICAgIHJldHVybiBsaW5lU3RyO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElEb3dubG9hZERhdGFQYXJhbXMge1xyXG4gICAgZmlsZU5hbWU6IHN0cmluZztcclxuICAgIGxpdGVyYWxzOiBhbnk7XHJcbiAgICBjb2x1bW5EZWxpbWl0ZXI6IHN0cmluZztcclxuICAgIGNvbHVtbkxpc3Q6IEFycmF5PHN0cmluZz47XHJcbiAgICBjb2x1bW5FeGNsdWRlOiBBcnJheTxzdHJpbmc+O1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRG93bmxvYWREYXRhUGFyYW1zIGltcGxlbWVudHMgSURvd25sb2FkRGF0YVBhcmFtcyB7XHJcbiAgICBmaWxlTmFtZTogc3RyaW5nO1xyXG4gICAgbGl0ZXJhbHM6IGFueTtcclxuICAgIGNvbHVtbkRlbGltaXRlcjogc3RyaW5nO1xyXG4gICAgY29sdW1uTGlzdDogQXJyYXk8c3RyaW5nPjtcclxuICAgIGNvbHVtbkV4Y2x1ZGU6IEFycmF5PHN0cmluZz47XHJcbn1cclxuIl19
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vZHRzLWJhY2tvZmZpY2UtdXRpbC8iLCJzb3VyY2VzIjpbImxpYi91dGlscy9maWxlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE1BQU0sT0FBTyxRQUFRO0lBRWpCLGdCQUNJLENBQUM7Ozs7Ozs7O0lBRUwsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFTLEVBQUUsUUFBZ0IsRUFBRSxXQUFvQixFQUFFLE1BQWdCO1FBQ25GLE1BQU0sR0FBRyxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7O2NBQ3JDLFFBQVEsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJO1FBQ2xFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Ozs7OztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBZ0IsRUFBRSxnQkFBcUMsSUFBSTtRQUMzRSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQUUsT0FBTztTQUFFO1FBRXRCLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFBRSxhQUFhLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1NBQUU7UUFDakUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUU7WUFBRSxhQUFhLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztTQUFFO1FBQ3JFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFO1lBQUUsYUFBYSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7U0FBRTtRQUM3RCxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsRUFBRTtZQUFFLGFBQWEsQ0FBQyxlQUFlLEdBQUcsR0FBRyxDQUFDO1NBQUU7UUFDNUUsSUFBSSxDQUFDLGFB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QUVoQyxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0NBQ0o7Ozs7QUFFRCx5Q0FNQzs7O0lBTEcsdUNBQWlCOztJQUNqQix1Q0FBYzs7SUFDZCw4Q0FBd0I7O0lBQ3hCLHlDQUEwQjs7SUFDMUIsNENBQTZCOztBQUdqQyxNQUFNLE9BQU8sa0JBQWtCO0NBTTlCOzs7SUFMRyxzQ0FBaUI7O0lBQ2pCLHNDQUFjOztJQUNkLDZDQUF3Qjs7SUFDeEIsd0NBQTBCOztJQUMxQiwyQ0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgRmlsZVV0aWwge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgKSB7IH1cclxuXHJcbiAgICBzdGF0aWMgZG93bmxvYWRGaWxlKGRhdGE6IGFueSwgZmlsZU5hbWU6IHN0cmluZywgY29udGVudFR5cGU/OiBzdHJpbmcsIGJhc2U2ND86IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICBiYXNlNjQgPSAoYmFzZTY0ID09PSBmYWxzZSkgPyBmYWxzZSA6IHRydWU7XHJcbiAgICAgICAgY29uc3QgZGF0YUJsb2IgPSBiYXNlNjQgPyB0aGlzLmI2NHRvQmxvYihkYXRhLCBjb250ZW50VHlwZSkgOiBkYXRhO1xyXG4gICAgICAgIHRoaXMuZG93bmxvYWQoZGF0YUJsb2IsIGZpbGVOYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgZG93bmxvYWREYXRhKGRhdGE6IEFycmF5PGFueT4sIGR3bGREYXRhUGFyYW06IElEb3dubG9hZERhdGFQYXJhbXMgPSBudWxsKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCFkYXRhKSB7IHJldHVybjsgfVxyXG5cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0pIHsgZHdsZERhdGFQYXJhbSA9IG5ldyBEb3dubG9hZERhdGFQYXJhbXMoKTsgfVxyXG4gICAgICAgIGlmICghZHdsZERhdGFQYXJhbS5maWxlTmFtZSkgeyBkd2xkRGF0YVBhcmFtLmZpbGVOYW1lID0gJ2RhdGEuY3N2JzsgfVxyXG4gICAgICAgIGlmICghZHdsZERhdGFQYXJhbS5saXRlcmFscykgeyBkd2xkRGF0YVBhcmFtLmxpdGVyYWxzID0ge307IH1cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0uY29sdW1uRGVsaW1pdGVyKSB7IGR3bGREYXRhUGFyYW0uY29sdW1uRGVsaW1pdGVyID0gJzsnOyB9XHJcbiAgICAgICAgaWYgKCFkd2xkRGF0YVBhcmFtLmNvbHVtbkxpc3QpIHsgZHdsZERhdGFQYXJhbS5jb2x1bW5MaXN0ID0gW107IH1cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0uY29sdW1uRXhjbHVkZSkgeyBkd2xkRGF0YVBhcmFtLmNvbHVtbkV4Y2x1ZGUgPSBbXTsgfVxyXG5cclxuICAgICAgICBjb25zdCBkYXRhYjY0ID0gYnRvYSh0aGlzLmpzb25Ub1N0cmluZyhkYXRhLCBkd2xkRGF0YVBhcmFtKSk7XHJcbiAgICAgICAgdGhpcy5kb3dubG9hZEZpbGUoZGF0YWI2NCwgZHdsZERhdGFQYXJhbS5maWxlTmFtZSwgJ3RleHQvY3N2Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgZG93bmxvYWQoZmlsZTogQmxvYiwgZmlsZU5hbWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGJpbmFyeURhdGEgPSBbZmlsZV07XHJcbiAgICAgICAgY29uc3QgZG93bmxvYWRMaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgICAgIGNvbnN0IHVybERvd25sb2FkID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwobmV3IEJsb2IoYmluYXJ5RGF0YSwgeyB0eXBlOiBmaWxlLnR5cGUgfSkpO1xyXG5cclxuICAgICAgICAvKipWZXJpZmljYSBzZSDDqSBpZSBvdSBlZGdlLCBwb2lzIG8gbWVzbW8gdGVtIHRyYXRhbWVudG8gcHLDs3ByaW8gcGFyYSBhcnF1aXZvcyBibG9iICovXHJcbiAgICAgICAgaWYgKG5hdmlnYXRvci51c2VyQWdlbnQudG9VcHBlckNhc2UoKS5pbmRleE9mKCcuTkVUJykgPiAwIHx8IG5hdmlnYXRvci51c2VyQWdlbnQudG9VcHBlckNhc2UoKS5pbmRleE9mKCdFREdFJykgPiAwKSB7XHJcbiAgICAgICAgICAgIHdpbmRvdy5uYXZpZ2F0b3IubXNTYXZlT3JPcGVuQmxvYihmaWxlLCBmaWxlTmFtZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLmhyZWYgPSB1cmxEb3dubG9hZDtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLnNldEF0dHJpYnV0ZSgnZG93bmxvYWQnLCBmaWxlTmFtZSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG93bmxvYWRMaW5rKTtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLmNsaWNrKCk7XHJcbiAgICAgICAgICAgIHdpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKHVybERvd25sb2FkKTtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLnJlbW92ZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBiNjR0b0Jsb2IoYjY0RGF0YTogYW55LCBjb250ZW50VHlwZT86IHN0cmluZywgc2xpY2VTaXplPzogbnVtYmVyKTogQmxvYiB7XHJcbiAgICAgICAgY29udGVudFR5cGUgPSBjb250ZW50VHlwZSB8fCAnJztcclxuICAgICAgICBzbGljZVNpemUgPSBzbGljZVNpemUgfHwgNTEyO1xyXG5cclxuICAgICAgICBjb25zdCBieXRlQ2hhcmFjdGVycyA9IGF0b2IoYjY0RGF0YSk7XHJcbiAgICAgICAgY29uc3QgYnl0ZUFycmF5cyA9IFtdO1xyXG5cclxuICAgICAgICBmb3IgKGxldCBvZmZzZXQgPSAwOyBvZmZzZXQgPCBieXRlQ2hhcmFjdGVycy5sZW5ndGg7IG9mZnNldCArPSBzbGljZVNpemUpIHtcclxuICAgICAgICAgICAgY29uc3Qgc2xpY2UgPSBieXRlQ2hhcmFjdGVycy5zbGljZShvZmZzZXQsIG9mZnNldCArIHNsaWNlU2l6ZSk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBieXRlTnVtYmVycyA9IG5ldyBBcnJheShzbGljZS5sZW5ndGgpO1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNsaWNlLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBieXRlTnVtYmVyc1tpXSA9IHNsaWNlLmNoYXJDb2RlQXQoaSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGJ5dGVOdW1iZXJzKTtcclxuICAgICAgICAgICAgYnl0ZUFycmF5cy5wdXNoKGJ5dGVBcnJheSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoYnl0ZUFycmF5cywgeyB0eXBlOiBjb250ZW50VHlwZSB9KTtcclxuICAgICAgICByZXR1cm4gYmxvYjtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBqc29uVG9TdHJpbmcoanNvbkRhdGE6IEFycmF5PGFueT4sIGR3bGREYXRhUGFyYW06IElEb3dubG9hZERhdGFQYXJhbXMpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICghanNvbkRhdGEgfHwganNvbkRhdGEubGVuZ3RoID09PSAwKSB7IHJldHVybiAnJzsgfVxyXG5cclxuICAgICAgICBjb25zdCBsaW5lRGVsaW1pdGVyID0gJ1xcbic7XHJcblxyXG4gICAgICAgIGxldCBjb2x1bW5PcmlnID0gbnVsbDtcclxuICAgICAgICBsZXQgY29sdW1uSGVhZGVyID0gbnVsbDtcclxuICAgICAgICBjb25zdCBrZXlzID0gW107XHJcbiAgICAgICAgbGV0IGluY2x1ZGVLZXk6IGJvb2xlYW47XHJcblxyXG4gICAgICAgIGlmIChkd2xkRGF0YVBhcmFtLmNvbHVtbkxpc3QgJiZcclxuICAgICAgICAgICAgZHdsZERhdGFQYXJhbS5jb2x1bW5MaXN0Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY29sdW1uT3JpZyA9IGR3bGREYXRhUGFyYW0uY29sdW1uTGlzdDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb2x1bW5PcmlnID0gT2JqZWN0LmtleXMoanNvbkRhdGFbMF0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29sdW1uT3JpZy5mb3JFYWNoKGtleSA9PiB7XHJcbiAgICAgICAgICAgIGluY2x1ZGVLZXkgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgaWYgKGR3bGREYXRhUGFyYW0uY29sdW1uRXhjbHVkZSAmJlxyXG4gICAgICAgICAgICAgICAgZHdsZERhdGFQYXJhbS5jb2x1bW5FeGNsdWRlLmxlbmd0aCA+IDAgJiZcclxuICAgICAgICAgICAgICAgIGR3bGREYXRhUGFyYW0uY29sdW1uRXhjbHVkZS5pbmRleE9mKGtleSkgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgICBpbmNsdWRlS2V5ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChpbmNsdWRlS2V5KSB7XHJcbiAgICAgICAgICAgICAgICBrZXlzLnB1c2goa2V5KTtcclxuICAgICAgICAgICAgICAgIGNvbHVtbkhlYWRlciA9ICghY29sdW1uSGVhZGVyKSA/ICcnIDogY29sdW1uSGVhZGVyICsgZHdsZERhdGFQYXJhbS5jb2x1bW5EZWxpbWl0ZXI7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW5IZWFkZXIgKz0gKGR3bGREYXRhUGFyYW0ubGl0ZXJhbHNba2V5XSkgPyBkd2xkRGF0YVBhcmFtLmxpdGVyYWxzW2tleV0gOiBrZXk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgY29uc3QgbGluZVN0ciA9IGpzb25EYXRhLnJlZHVjZSgoYWNjTGluZVN0ciwgY3VycmVudEl0ZW0pID0+IHtcclxuICAgICAgICAgICAgbGV0IGZpcnN0ID0gdHJ1ZTtcclxuICAgICAgICAgICAgbGV0IGNvbHVtblZhbHVlID0gbnVsbDtcclxuXHJcbiAgICAgICAgICAgIGtleXMuZm9yRWFjaChrZXkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKCFmaXJzdCkgeyBhY2NMaW5lU3RyICs9IGR3bGREYXRhUGFyYW0uY29sdW1uRGVsaW1pdGVyOyB9XHJcblxyXG4gICAgICAgICAgICAgICAgY29sdW1uVmFsdWUgPSBjdXJyZW50SXRlbVtrZXldO1xyXG4gICAgICAgICAgICAgICAgaWYgKGNvbHVtblZhbHVlID09PSBudWxsIHx8IGNvbHVtblZhbHVlID09PSB1bmRlZmluZWQpIHsgY29sdW1uVmFsdWUgPSAnJzsgfVxyXG4gICAgICAgICAgICAgICAgc3dpdGNoICh0eXBlb2YgKGNvbHVtblZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ251bWJlcic6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtblZhbHVlID0gY29sdW1uVmFsdWUudG9Mb2NhbGVTdHJpbmcoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnYm9vbGVhbic6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtblZhbHVlID0gKGR3bGREYXRhUGFyYW0ubGl0ZXJhbHNbYCR7Y29sdW1uVmFsdWV9YF0pID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR3bGREYXRhUGFyYW0ubGl0ZXJhbHNbYCR7Y29sdW1uVmFsdWV9YF0gOiBjb2x1bW5WYWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnb2JqZWN0JzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uVmFsdWUgPSBKU09OLnN0cmluZ2lmeShjb2x1bW5WYWx1ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBhY2NMaW5lU3RyICs9IGNvbHVtblZhbHVlO1xyXG5cclxuICAgICAgICAgICAgICAgIGZpcnN0ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgcmV0dXJuIGFjY0xpbmVTdHIgKyBsaW5lRGVsaW1pdGVyO1xyXG5cclxuICAgICAgICB9LCBjb2x1bW5IZWFkZXIgKyBsaW5lRGVsaW1pdGVyKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGxpbmVTdHI7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSURvd25sb2FkRGF0YVBhcmFtcyB7XHJcbiAgICBmaWxlTmFtZTogc3RyaW5nO1xyXG4gICAgbGl0ZXJhbHM6IGFueTtcclxuICAgIGNvbHVtbkRlbGltaXRlcjogc3RyaW5nO1xyXG4gICAgY29sdW1uTGlzdDogQXJyYXk8c3RyaW5nPjtcclxuICAgIGNvbHVtbkV4Y2x1ZGU6IEFycmF5PHN0cmluZz47XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEb3dubG9hZERhdGFQYXJhbXMgaW1wbGVtZW50cyBJRG93bmxvYWREYXRhUGFyYW1zIHtcclxuICAgIGZpbGVOYW1lOiBzdHJpbmc7XHJcbiAgICBsaXRlcmFsczogYW55O1xyXG4gICAgY29sdW1uRGVsaW1pdGVyOiBzdHJpbmc7XHJcbiAgICBjb2x1bW5MaXN0OiBBcnJheTxzdHJpbmc+O1xyXG4gICAgY29sdW1uRXhjbHVkZTogQXJyYXk8c3RyaW5nPjtcclxufVxyXG4iXX0=
|
|
@@ -6,20 +6,23 @@ var FileUtil = /** @class */ (function () {
|
|
|
6
6
|
function FileUtil() {
|
|
7
7
|
}
|
|
8
8
|
/**
|
|
9
|
-
* @param {?}
|
|
9
|
+
* @param {?} data
|
|
10
10
|
* @param {?} fileName
|
|
11
11
|
* @param {?=} contentType
|
|
12
|
+
* @param {?=} base64
|
|
12
13
|
* @return {?}
|
|
13
14
|
*/
|
|
14
15
|
FileUtil.downloadFile = /**
|
|
15
|
-
* @param {?}
|
|
16
|
+
* @param {?} data
|
|
16
17
|
* @param {?} fileName
|
|
17
18
|
* @param {?=} contentType
|
|
19
|
+
* @param {?=} base64
|
|
18
20
|
* @return {?}
|
|
19
21
|
*/
|
|
20
|
-
function (
|
|
22
|
+
function (data, fileName, contentType, base64) {
|
|
23
|
+
base64 = (base64 === false) ? false : true;
|
|
21
24
|
/** @type {?} */
|
|
22
|
-
var dataBlob = this.b64toBlob(
|
|
25
|
+
var dataBlob = base64 ? this.b64toBlob(data, contentType) : data;
|
|
23
26
|
this.download(dataBlob, fileName);
|
|
24
27
|
};
|
|
25
28
|
/**
|
|
@@ -256,4 +259,4 @@ if (false) {
|
|
|
256
259
|
/** @type {?} */
|
|
257
260
|
DownloadDataParams.prototype.columnExclude;
|
|
258
261
|
}
|
|
259
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vZHRzLWJhY2tvZmZpY2UtdXRpbC8iLCJzb3VyY2VzIjpbImxpYi91dGlscy9maWxlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0lBRUk7SUFDSSxDQUFDOzs7Ozs7O0lBRUUscUJBQVk7Ozs7OztJQUFuQixVQUFvQixPQUFZLEVBQUUsUUFBZ0IsRUFBRSxXQUFvQjs7WUFDOUQsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQztRQUNyRCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN0QyxDQUFDOzs7Ozs7SUFFTSxxQkFBWTs7Ozs7SUFBbkIsVUFBb0IsSUFBZ0IsRUFBRSxhQUF5QztRQUF6Qyw4QkFBQSxFQUFBLG9CQUF5QztRQUMzRSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQUUsT0FBTztTQUFFO1FBRXRCLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFBRSxhQUFhLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1NBQUU7UUFDakUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUU7WUFBRSxhQUFhLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztTQUFFO1FBQ3JFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFO1lBQUUsYUFBYSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7U0FBRTtRQUM3RCxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsRUFBRTtZQUFFLGFBQWEsQ0FBQyxlQUFlLEdBQUcsR0FBRyxDQUFDO1NBQUU7UUFDNUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUU7WUFBRSxhQUFhLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztTQUFFO1FBQ2pFLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFO1lBQUUsYUFBYSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7U0FB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O0lBQUE7SUFNQSxDQUFDO0lBQUQseUJBQUM7QUFBRCxDQUFDLEFBTkQsSUFNQzs7OztJQUxHLHNDQUFpQjs7SUFDakIsc0NBQWM7O0lBQ2QsNkNBQXdCOztJQUN4Qix3Q0FBMEI7O0lBQzFCLDJDQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBGaWxlVXRpbCB7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICApIHsgfVxyXG5cclxuICAgIHN0YXRpYyBkb3dubG9hZEZpbGUoZGF0YWI2NDogYW55LCBmaWxlTmFtZTogc3RyaW5nLCBjb250ZW50VHlwZT86IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGRhdGFCbG9iID0gdGhpcy5iNjR0b0Jsb2IoZGF0YWI2NCwgY29udGVudFR5cGUpO1xyXG4gICAgICAgIHRoaXMuZG93bmxvYWQoZGF0YUJsb2IsIGZpbGVOYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgZG93bmxvYWREYXRhKGRhdGE6IEFycmF5PGFueT4sIGR3bGREYXRhUGFyYW06IElEb3dubG9hZERhdGFQYXJhbXMgPSBudWxsKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCFkYXRhKSB7IHJldHVybjsgfVxyXG5cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0pIHsgZHdsZERhdGFQYXJhbSA9IG5ldyBEb3dubG9hZERhdGFQYXJhbXMoKTsgfVxyXG4gICAgICAgIGlmICghZHdsZERhdGFQYXJhbS5maWxlTmFtZSkgeyBkd2xkRGF0YVBhcmFtLmZpbGVOYW1lID0gJ2RhdGEuY3N2JzsgfVxyXG4gICAgICAgIGlmICghZHdsZERhdGFQYXJhbS5saXRlcmFscykgeyBkd2xkRGF0YVBhcmFtLmxpdGVyYWxzID0ge307IH1cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0uY29sdW1uRGVsaW1pdGVyKSB7IGR3bGREYXRhUGFyYW0uY29sdW1uRGVsaW1pdGVyID0gJzsnOyB9XHJcbiAgICAgICAgaWYgKCFkd2xkRGF0YVBhcmFtLmNvbHVtbkxpc3QpIHsgZHdsZERhdGFQYXJhbS5jb2x1bW5MaXN0ID0gW107IH1cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0uY29sdW1uRXhjbHVkZSkgeyBkd2xkRGF0YVBhcmFtLmNvbHVtbkV4Y2x1ZGUgPSBbXTsgfVxyXG5cclxuICAgICAgICBjb25zdCBkYXRhYjY0ID0gYnRvYSh0aGlzLmpzb25Ub1N0cmluZyhkYXRhLCBkd2xkRGF0YVBhcmFtKSk7XHJcbiAgICAgICAgdGhpcy5kb3dubG9hZEZpbGUoZGF0YWI2NCwgZHdsZERhdGFQYXJhbS5maWxlTmFtZSwgJ3RleHQvY3N2Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgZG93bmxvYWQoZmlsZTogQmxvYiwgZmlsZU5hbWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGJpbmFyeURhdGEgPSBbZmlsZV07XHJcbiAgICAgICAgY29uc3QgZG93bmxvYWRMaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgICAgIGNvbnN0IHVybERvd25sb2FkID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwobmV3IEJsb2IoYmluYXJ5RGF0YSwgeyB0eXBlOiBmaWxlLnR5cGUgfSkpO1xyXG5cclxuICAgICAgICAvKipWZXJpZmljYSBzZSDDqSBpZSBvdSBlZGdlLCBwb2lzIG8gbWVzbW8gdGVtIHRyYXRhbWVudG8gcHLDs3ByaW8gcGFyYSBhcnF1aXZvcyBibG9iICovXHJcbiAgICAgICAgaWYgKG5hdmlnYXRvci51c2VyQWdlbnQudG9VcHBlckNhc2UoKS5pbmRleE9mKCcuTkVUJykgPiAwIHx8IG5hdmlnYXRvci51c2VyQWdlbnQudG9VcHBlckNhc2UoKS5pbmRleE9mKCdFREdFJykgPiAwKSB7XHJcbiAgICAgICAgICAgIHdpbmRvdy5uYXZpZ2F0b3IubXNTYXZlT3JPcGVuQmxvYihmaWxlLCBmaWxlTmFtZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLmhyZWYgPSB1cmxEb3dubG9hZDtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLnNldEF0dHJpYnV0ZSgnZG93bmxvYWQnLCBmaWxlTmFtZSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG93bmxvYWRMaW5rKTtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLmNsaWNrKCk7XHJcbiAgICAgICAgICAgIHdpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKHVybERvd25sb2FkKTtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLnJlbW92ZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBiNjR0b0Jsb2IoYjY0RGF0YTogYW55LCBjb250ZW50VHlwZT86IHN0cmluZywgc2xpY2VTaXplPzogbnVtYmVyKTogQmxvYiB7XHJcbiAgICAgICAgY29udGVudFR5cGUgPSBjb250ZW50VHlwZSB8fCAnJztcclxuICAgICAgICBzbGljZVNpemUgPSBzbGljZVNpemUgfHwgNTEyO1xyXG5cclxuICAgICAgICBjb25zdCBieXRlQ2hhcmFjdGVycyA9IGF0b2IoYjY0RGF0YSk7XHJcbiAgICAgICAgY29uc3QgYnl0ZUFycmF5cyA9IFtdO1xyXG5cclxuICAgICAgICBmb3IgKGxldCBvZmZzZXQgPSAwOyBvZmZzZXQgPCBieXRlQ2hhcmFjdGVycy5sZW5ndGg7IG9mZnNldCArPSBzbGljZVNpemUpIHtcclxuICAgICAgICAgICAgY29uc3Qgc2xpY2UgPSBieXRlQ2hhcmFjdGVycy5zbGljZShvZmZzZXQsIG9mZnNldCArIHNsaWNlU2l6ZSk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBieXRlTnVtYmVycyA9IG5ldyBBcnJheShzbGljZS5sZW5ndGgpO1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNsaWNlLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBieXRlTnVtYmVyc1tpXSA9IHNsaWNlLmNoYXJDb2RlQXQoaSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGJ5dGVOdW1iZXJzKTtcclxuICAgICAgICAgICAgYnl0ZUFycmF5cy5wdXNoKGJ5dGVBcnJheSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoYnl0ZUFycmF5cywgeyB0eXBlOiBjb250ZW50VHlwZSB9KTtcclxuICAgICAgICByZXR1cm4gYmxvYjtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBqc29uVG9TdHJpbmcoanNvbkRhdGE6IEFycmF5PGFueT4sIGR3bGREYXRhUGFyYW06IElEb3dubG9hZERhdGFQYXJhbXMpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICghanNvbkRhdGEgfHwganNvbkRhdGEubGVuZ3RoID09PSAwKSB7IHJldHVybiAnJzsgfVxyXG5cclxuICAgICAgICBjb25zdCBsaW5lRGVsaW1pdGVyID0gJ1xcbic7XHJcblxyXG4gICAgICAgIGxldCBjb2x1bW5PcmlnID0gbnVsbDtcclxuICAgICAgICBsZXQgY29sdW1uSGVhZGVyID0gbnVsbDtcclxuICAgICAgICBjb25zdCBrZXlzID0gW107XHJcbiAgICAgICAgbGV0IGluY2x1ZGVLZXk6IGJvb2xlYW47XHJcblxyXG4gICAgICAgIGlmIChkd2xkRGF0YVBhcmFtLmNvbHVtbkxpc3QgJiZcclxuICAgICAgICAgICAgZHdsZERhdGFQYXJhbS5jb2x1bW5MaXN0Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY29sdW1uT3JpZyA9IGR3bGREYXRhUGFyYW0uY29sdW1uTGlzdDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb2x1bW5PcmlnID0gT2JqZWN0LmtleXMoanNvbkRhdGFbMF0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29sdW1uT3JpZy5mb3JFYWNoKGtleSA9PiB7XHJcbiAgICAgICAgICAgIGluY2x1ZGVLZXkgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgaWYgKGR3bGREYXRhUGFyYW0uY29sdW1uRXhjbHVkZSAmJlxyXG4gICAgICAgICAgICAgICAgZHdsZERhdGFQYXJhbS5jb2x1bW5FeGNsdWRlLmxlbmd0aCA+IDAgJiZcclxuICAgICAgICAgICAgICAgIGR3bGREYXRhUGFyYW0uY29sdW1uRXhjbHVkZS5pbmRleE9mKGtleSkgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgICBpbmNsdWRlS2V5ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChpbmNsdWRlS2V5KSB7XHJcbiAgICAgICAgICAgICAgICBrZXlzLnB1c2goa2V5KTtcclxuICAgICAgICAgICAgICAgIGNvbHVtbkhlYWRlciA9ICghY29sdW1uSGVhZGVyKSA/ICcnIDogY29sdW1uSGVhZGVyICsgZHdsZERhdGFQYXJhbS5jb2x1bW5EZWxpbWl0ZXI7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW5IZWFkZXIgKz0gKGR3bGREYXRhUGFyYW0ubGl0ZXJhbHNba2V5XSkgPyBkd2xkRGF0YVBhcmFtLmxpdGVyYWxzW2tleV0gOiBrZXk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgY29uc3QgbGluZVN0ciA9IGpzb25EYXRhLnJlZHVjZSgoYWNjTGluZVN0ciwgY3VycmVudEl0ZW0pID0+IHtcclxuICAgICAgICAgICAgbGV0IGZpcnN0ID0gdHJ1ZTtcclxuICAgICAgICAgICAgbGV0IGNvbHVtblZhbHVlID0gbnVsbDtcclxuXHJcbiAgICAgICAgICAgIGtleXMuZm9yRWFjaChrZXkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKCFmaXJzdCkgeyBhY2NMaW5lU3RyICs9IGR3bGREYXRhUGFyYW0uY29sdW1uRGVsaW1pdGVyOyB9XHJcblxyXG4gICAgICAgICAgICAgICAgY29sdW1uVmFsdWUgPSBjdXJyZW50SXRlbVtrZXldO1xyXG4gICAgICAgICAgICAgICAgaWYgKGNvbHVtblZhbHVlID09PSBudWxsIHx8IGNvbHVtblZhbHVlID09PSB1bmRlZmluZWQpIHsgY29sdW1uVmFsdWUgPSAnJzsgfVxyXG4gICAgICAgICAgICAgICAgc3dpdGNoICh0eXBlb2YgKGNvbHVtblZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ251bWJlcic6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtblZhbHVlID0gY29sdW1uVmFsdWUudG9Mb2NhbGVTdHJpbmcoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnYm9vbGVhbic6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtblZhbHVlID0gKGR3bGREYXRhUGFyYW0ubGl0ZXJhbHNbYCR7Y29sdW1uVmFsdWV9YF0pID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR3bGREYXRhUGFyYW0ubGl0ZXJhbHNbYCR7Y29sdW1uVmFsdWV9YF0gOiBjb2x1bW5WYWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnb2JqZWN0JzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uVmFsdWUgPSBKU09OLnN0cmluZ2lmeShjb2x1bW5WYWx1ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBhY2NMaW5lU3RyICs9IGNvbHVtblZhbHVlO1xyXG5cclxuICAgICAgICAgICAgICAgIGZpcnN0ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgcmV0dXJuIGFjY0xpbmVTdHIgKyBsaW5lRGVsaW1pdGVyO1xyXG5cclxuICAgICAgICB9LCBjb2x1bW5IZWFkZXIgKyBsaW5lRGVsaW1pdGVyKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGxpbmVTdHI7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSURvd25sb2FkRGF0YVBhcmFtcyB7XHJcbiAgICBmaWxlTmFtZTogc3RyaW5nO1xyXG4gICAgbGl0ZXJhbHM6IGFueTtcclxuICAgIGNvbHVtbkRlbGltaXRlcjogc3RyaW5nO1xyXG4gICAgY29sdW1uTGlzdDogQXJyYXk8c3RyaW5nPjtcclxuICAgIGNvbHVtbkV4Y2x1ZGU6IEFycmF5PHN0cmluZz47XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEb3dubG9hZERhdGFQYXJhbXMgaW1wbGVtZW50cyBJRG93bmxvYWREYXRhUGFyYW1zIHtcclxuICAgIGZpbGVOYW1lOiBzdHJpbmc7XHJcbiAgICBsaXRlcmFsczogYW55O1xyXG4gICAgY29sdW1uRGVsaW1pdGVyOiBzdHJpbmc7XHJcbiAgICBjb2x1bW5MaXN0OiBBcnJheTxzdHJpbmc+O1xyXG4gICAgY29sdW1uRXhjbHVkZTogQXJyYXk8c3RyaW5nPjtcclxufVxyXG4iXX0=
|
|
262
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vZHRzLWJhY2tvZmZpY2UtdXRpbC8iLCJzb3VyY2VzIjpbImxpYi91dGlscy9maWxlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0lBRUk7SUFDSSxDQUFDOzs7Ozs7OztJQUVFLHFCQUFZOzs7Ozs7O0lBQW5CLFVBQW9CLElBQVMsRUFBRSxRQUFnQixFQUFFLFdBQW9CLEVBQUUsTUFBZ0I7UUFDbkYsTUFBTSxHQUFHLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQzs7WUFDckMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUk7UUFDbEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdEMsQ0FBQzs7Ozs7O0lBRU0scUJBQVk7Ozs7O0lBQW5CLFVBQW9CLElBQWdCLEVBQUUsYUFBeUM7UUFBekMsOEJBQUEsRUFBQSxvQkFBeUM7UUFDM0UsSUFBSSxDQUFDLElBQUksRUFBRTtZQUFFLE9BQU87U0FBRTtRQUV0QixJQUFJLENBQUMsYUFBYSxFQUFFO1lBQUUsYUFBYSxHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQztTQUFFO1FBQ2pFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFO1lBQUUsYUFBYSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7U0FBRTtRQUNyRSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRTtZQUFFLGFBQWEsQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1NBQUU7UUFDN0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLEVBQUU7WUFBRSxhQUFhLENBQUMsZUFBZSxHQUFHLEdBQUcsQ0FBQztTQUFFO1FBQzVFLElBQUks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TyxDQUFDO0lBQ25CLENBQUM7SUFDTCxlQUFDO0FBQUQsQ0FBQyxBQWxJRCxJQWtJQzs7Ozs7QUFFRCx5Q0FNQzs7O0lBTEcsdUNBQWlCOztJQUNqQix1Q0FBYzs7SUFDZCw4Q0FBd0I7O0lBQ3hCLHlDQUEwQjs7SUFDMUIsNENBQTZCOztBQUdqQztJQUFBO0lBTUEsQ0FBQztJQUFELHlCQUFDO0FBQUQsQ0FBQyxBQU5ELElBTUM7Ozs7SUFMRyxzQ0FBaUI7O0lBQ2pCLHNDQUFjOztJQUNkLDZDQUF3Qjs7SUFDeEIsd0NBQTBCOztJQUMxQiwyQ0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgRmlsZVV0aWwge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgKSB7IH1cclxuXHJcbiAgICBzdGF0aWMgZG93bmxvYWRGaWxlKGRhdGE6IGFueSwgZmlsZU5hbWU6IHN0cmluZywgY29udGVudFR5cGU/OiBzdHJpbmcsIGJhc2U2ND86IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICBiYXNlNjQgPSAoYmFzZTY0ID09PSBmYWxzZSkgPyBmYWxzZSA6IHRydWU7XHJcbiAgICAgICAgY29uc3QgZGF0YUJsb2IgPSBiYXNlNjQgPyB0aGlzLmI2NHRvQmxvYihkYXRhLCBjb250ZW50VHlwZSkgOiBkYXRhO1xyXG4gICAgICAgIHRoaXMuZG93bmxvYWQoZGF0YUJsb2IsIGZpbGVOYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgZG93bmxvYWREYXRhKGRhdGE6IEFycmF5PGFueT4sIGR3bGREYXRhUGFyYW06IElEb3dubG9hZERhdGFQYXJhbXMgPSBudWxsKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCFkYXRhKSB7IHJldHVybjsgfVxyXG5cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0pIHsgZHdsZERhdGFQYXJhbSA9IG5ldyBEb3dubG9hZERhdGFQYXJhbXMoKTsgfVxyXG4gICAgICAgIGlmICghZHdsZERhdGFQYXJhbS5maWxlTmFtZSkgeyBkd2xkRGF0YVBhcmFtLmZpbGVOYW1lID0gJ2RhdGEuY3N2JzsgfVxyXG4gICAgICAgIGlmICghZHdsZERhdGFQYXJhbS5saXRlcmFscykgeyBkd2xkRGF0YVBhcmFtLmxpdGVyYWxzID0ge307IH1cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0uY29sdW1uRGVsaW1pdGVyKSB7IGR3bGREYXRhUGFyYW0uY29sdW1uRGVsaW1pdGVyID0gJzsnOyB9XHJcbiAgICAgICAgaWYgKCFkd2xkRGF0YVBhcmFtLmNvbHVtbkxpc3QpIHsgZHdsZERhdGFQYXJhbS5jb2x1bW5MaXN0ID0gW107IH1cclxuICAgICAgICBpZiAoIWR3bGREYXRhUGFyYW0uY29sdW1uRXhjbHVkZSkgeyBkd2xkRGF0YVBhcmFtLmNvbHVtbkV4Y2x1ZGUgPSBbXTsgfVxyXG5cclxuICAgICAgICBjb25zdCBkYXRhYjY0ID0gYnRvYSh0aGlzLmpzb25Ub1N0cmluZyhkYXRhLCBkd2xkRGF0YVBhcmFtKSk7XHJcbiAgICAgICAgdGhpcy5kb3dubG9hZEZpbGUoZGF0YWI2NCwgZHdsZERhdGFQYXJhbS5maWxlTmFtZSwgJ3RleHQvY3N2Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgZG93bmxvYWQoZmlsZTogQmxvYiwgZmlsZU5hbWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGJpbmFyeURhdGEgPSBbZmlsZV07XHJcbiAgICAgICAgY29uc3QgZG93bmxvYWRMaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgICAgIGNvbnN0IHVybERvd25sb2FkID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwobmV3IEJsb2IoYmluYXJ5RGF0YSwgeyB0eXBlOiBmaWxlLnR5cGUgfSkpO1xyXG5cclxuICAgICAgICAvKipWZXJpZmljYSBzZSDDqSBpZSBvdSBlZGdlLCBwb2lzIG8gbWVzbW8gdGVtIHRyYXRhbWVudG8gcHLDs3ByaW8gcGFyYSBhcnF1aXZvcyBibG9iICovXHJcbiAgICAgICAgaWYgKG5hdmlnYXRvci51c2VyQWdlbnQudG9VcHBlckNhc2UoKS5pbmRleE9mKCcuTkVUJykgPiAwIHx8IG5hdmlnYXRvci51c2VyQWdlbnQudG9VcHBlckNhc2UoKS5pbmRleE9mKCdFREdFJykgPiAwKSB7XHJcbiAgICAgICAgICAgIHdpbmRvdy5uYXZpZ2F0b3IubXNTYXZlT3JPcGVuQmxvYihmaWxlLCBmaWxlTmFtZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLmhyZWYgPSB1cmxEb3dubG9hZDtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLnNldEF0dHJpYnV0ZSgnZG93bmxvYWQnLCBmaWxlTmFtZSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG93bmxvYWRMaW5rKTtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLmNsaWNrKCk7XHJcbiAgICAgICAgICAgIHdpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKHVybERvd25sb2FkKTtcclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLnJlbW92ZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBiNjR0b0Jsb2IoYjY0RGF0YTogYW55LCBjb250ZW50VHlwZT86IHN0cmluZywgc2xpY2VTaXplPzogbnVtYmVyKTogQmxvYiB7XHJcbiAgICAgICAgY29udGVudFR5cGUgPSBjb250ZW50VHlwZSB8fCAnJztcclxuICAgICAgICBzbGljZVNpemUgPSBzbGljZVNpemUgfHwgNTEyO1xyXG5cclxuICAgICAgICBjb25zdCBieXRlQ2hhcmFjdGVycyA9IGF0b2IoYjY0RGF0YSk7XHJcbiAgICAgICAgY29uc3QgYnl0ZUFycmF5cyA9IFtdO1xyXG5cclxuICAgICAgICBmb3IgKGxldCBvZmZzZXQgPSAwOyBvZmZzZXQgPCBieXRlQ2hhcmFjdGVycy5sZW5ndGg7IG9mZnNldCArPSBzbGljZVNpemUpIHtcclxuICAgICAgICAgICAgY29uc3Qgc2xpY2UgPSBieXRlQ2hhcmFjdGVycy5zbGljZShvZmZzZXQsIG9mZnNldCArIHNsaWNlU2l6ZSk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBieXRlTnVtYmVycyA9IG5ldyBBcnJheShzbGljZS5sZW5ndGgpO1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNsaWNlLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBieXRlTnVtYmVyc1tpXSA9IHNsaWNlLmNoYXJDb2RlQXQoaSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGJ5dGVOdW1iZXJzKTtcclxuICAgICAgICAgICAgYnl0ZUFycmF5cy5wdXNoKGJ5dGVBcnJheSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoYnl0ZUFycmF5cywgeyB0eXBlOiBjb250ZW50VHlwZSB9KTtcclxuICAgICAgICByZXR1cm4gYmxvYjtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBqc29uVG9TdHJpbmcoanNvbkRhdGE6IEFycmF5PGFueT4sIGR3bGREYXRhUGFyYW06IElEb3dubG9hZERhdGFQYXJhbXMpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICghanNvbkRhdGEgfHwganNvbkRhdGEubGVuZ3RoID09PSAwKSB7IHJldHVybiAnJzsgfVxyXG5cclxuICAgICAgICBjb25zdCBsaW5lRGVsaW1pdGVyID0gJ1xcbic7XHJcblxyXG4gICAgICAgIGxldCBjb2x1bW5PcmlnID0gbnVsbDtcclxuICAgICAgICBsZXQgY29sdW1uSGVhZGVyID0gbnVsbDtcclxuICAgICAgICBjb25zdCBrZXlzID0gW107XHJcbiAgICAgICAgbGV0IGluY2x1ZGVLZXk6IGJvb2xlYW47XHJcblxyXG4gICAgICAgIGlmIChkd2xkRGF0YVBhcmFtLmNvbHVtbkxpc3QgJiZcclxuICAgICAgICAgICAgZHdsZERhdGFQYXJhbS5jb2x1bW5MaXN0Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY29sdW1uT3JpZyA9IGR3bGREYXRhUGFyYW0uY29sdW1uTGlzdDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb2x1bW5PcmlnID0gT2JqZWN0LmtleXMoanNvbkRhdGFbMF0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29sdW1uT3JpZy5mb3JFYWNoKGtleSA9PiB7XHJcbiAgICAgICAgICAgIGluY2x1ZGVLZXkgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgaWYgKGR3bGREYXRhUGFyYW0uY29sdW1uRXhjbHVkZSAmJlxyXG4gICAgICAgICAgICAgICAgZHdsZERhdGFQYXJhbS5jb2x1bW5FeGNsdWRlLmxlbmd0aCA+IDAgJiZcclxuICAgICAgICAgICAgICAgIGR3bGREYXRhUGFyYW0uY29sdW1uRXhjbHVkZS5pbmRleE9mKGtleSkgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgICBpbmNsdWRlS2V5ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChpbmNsdWRlS2V5KSB7XHJcbiAgICAgICAgICAgICAgICBrZXlzLnB1c2goa2V5KTtcclxuICAgICAgICAgICAgICAgIGNvbHVtbkhlYWRlciA9ICghY29sdW1uSGVhZGVyKSA/ICcnIDogY29sdW1uSGVhZGVyICsgZHdsZERhdGFQYXJhbS5jb2x1bW5EZWxpbWl0ZXI7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW5IZWFkZXIgKz0gKGR3bGREYXRhUGFyYW0ubGl0ZXJhbHNba2V5XSkgPyBkd2xkRGF0YVBhcmFtLmxpdGVyYWxzW2tleV0gOiBrZXk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgY29uc3QgbGluZVN0ciA9IGpzb25EYXRhLnJlZHVjZSgoYWNjTGluZVN0ciwgY3VycmVudEl0ZW0pID0+IHtcclxuICAgICAgICAgICAgbGV0IGZpcnN0ID0gdHJ1ZTtcclxuICAgICAgICAgICAgbGV0IGNvbHVtblZhbHVlID0gbnVsbDtcclxuXHJcbiAgICAgICAgICAgIGtleXMuZm9yRWFjaChrZXkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKCFmaXJzdCkgeyBhY2NMaW5lU3RyICs9IGR3bGREYXRhUGFyYW0uY29sdW1uRGVsaW1pdGVyOyB9XHJcblxyXG4gICAgICAgICAgICAgICAgY29sdW1uVmFsdWUgPSBjdXJyZW50SXRlbVtrZXldO1xyXG4gICAgICAgICAgICAgICAgaWYgKGNvbHVtblZhbHVlID09PSBudWxsIHx8IGNvbHVtblZhbHVlID09PSB1bmRlZmluZWQpIHsgY29sdW1uVmFsdWUgPSAnJzsgfVxyXG4gICAgICAgICAgICAgICAgc3dpdGNoICh0eXBlb2YgKGNvbHVtblZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ251bWJlcic6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtblZhbHVlID0gY29sdW1uVmFsdWUudG9Mb2NhbGVTdHJpbmcoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnYm9vbGVhbic6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtblZhbHVlID0gKGR3bGREYXRhUGFyYW0ubGl0ZXJhbHNbYCR7Y29sdW1uVmFsdWV9YF0pID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR3bGREYXRhUGFyYW0ubGl0ZXJhbHNbYCR7Y29sdW1uVmFsdWV9YF0gOiBjb2x1bW5WYWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnb2JqZWN0JzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uVmFsdWUgPSBKU09OLnN0cmluZ2lmeShjb2x1bW5WYWx1ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBhY2NMaW5lU3RyICs9IGNvbHVtblZhbHVlO1xyXG5cclxuICAgICAgICAgICAgICAgIGZpcnN0ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgcmV0dXJuIGFjY0xpbmVTdHIgKyBsaW5lRGVsaW1pdGVyO1xyXG5cclxuICAgICAgICB9LCBjb2x1bW5IZWFkZXIgKyBsaW5lRGVsaW1pdGVyKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGxpbmVTdHI7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSURvd25sb2FkRGF0YVBhcmFtcyB7XHJcbiAgICBmaWxlTmFtZTogc3RyaW5nO1xyXG4gICAgbGl0ZXJhbHM6IGFueTtcclxuICAgIGNvbHVtbkRlbGltaXRlcjogc3RyaW5nO1xyXG4gICAgY29sdW1uTGlzdDogQXJyYXk8c3RyaW5nPjtcclxuICAgIGNvbHVtbkV4Y2x1ZGU6IEFycmF5PHN0cmluZz47XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEb3dubG9hZERhdGFQYXJhbXMgaW1wbGVtZW50cyBJRG93bmxvYWREYXRhUGFyYW1zIHtcclxuICAgIGZpbGVOYW1lOiBzdHJpbmc7XHJcbiAgICBsaXRlcmFsczogYW55O1xyXG4gICAgY29sdW1uRGVsaW1pdGVyOiBzdHJpbmc7XHJcbiAgICBjb2x1bW5MaXN0OiBBcnJheTxzdHJpbmc+O1xyXG4gICAgY29sdW1uRXhjbHVkZTogQXJyYXk8c3RyaW5nPjtcclxufVxyXG4iXX0=
|
|
@@ -2008,14 +2008,16 @@ if (false) {
|
|
|
2008
2008
|
class FileUtil {
|
|
2009
2009
|
constructor() { }
|
|
2010
2010
|
/**
|
|
2011
|
-
* @param {?}
|
|
2011
|
+
* @param {?} data
|
|
2012
2012
|
* @param {?} fileName
|
|
2013
2013
|
* @param {?=} contentType
|
|
2014
|
+
* @param {?=} base64
|
|
2014
2015
|
* @return {?}
|
|
2015
2016
|
*/
|
|
2016
|
-
static downloadFile(
|
|
2017
|
+
static downloadFile(data, fileName, contentType, base64) {
|
|
2018
|
+
base64 = (base64 === false) ? false : true;
|
|
2017
2019
|
/** @type {?} */
|
|
2018
|
-
const dataBlob = this.b64toBlob(
|
|
2020
|
+
const dataBlob = base64 ? this.b64toBlob(data, contentType) : data;
|
|
2019
2021
|
this.download(dataBlob, fileName);
|
|
2020
2022
|
}
|
|
2021
2023
|
/**
|