diff --git a/main.js b/main.js index 0f4f85d..b1b138b 100644 --- a/main.js +++ b/main.js @@ -199,7 +199,7 @@ var cmd_export_plugin = (plugin) => ({ } let items = ["main.js", "manifest.json", "styles.css", "data.json"]; for (let item of items) { - let src = `${plugin.fsEditor.root}/${plugin.manifest.dir}/${item}`; + let src = `${plugin.fsEditor.root}/${eplugin.manifest.dir}/${item}`; let dst = `${target}/${item}`; plugin.fsEditor.copy_file_by_path(src, dst, "overwrite"); new import_obsidian.Notice(`\u5BFC\u51FA\uFF1A${p}/${item}`, 3e3); @@ -337,4 +337,4 @@ var VExporterSettingTab = class extends import_obsidian.PluginSettingTab { })); } }; -//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsibWFpbi50cyIsICJzcmMvZnNlZGl0b3IudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCAqIGFzIE1vZHVsZSBmcm9tICdtb2R1bGUnO1xyXG5pbXBvcnQgeyBBcHAsIEVkaXRvciwgTWFya2Rvd25WaWV3LCBNb2RhbCwgTm90aWNlLCBQbHVnaW4sIFBsdWdpblNldHRpbmdUYWIsIFNldHRpbmcsIFRGaWxlIH0gZnJvbSAnb2JzaWRpYW4nO1xyXG5cclxuaW1wb3J0IHsgRnNFZGl0b3IgfSBmcm9tICdzcmMvZnNlZGl0b3InO1xyXG5cclxuaW50ZXJmYWNlIFZFeHBvcnRlclNldHRpbmdzIHtcclxuXHRuYW1lTG9jYWxHaXRQcm9qZWN0OiBzdHJpbmc7XHJcblx0YXNzZXRzTG9jYWxHaXRQcm9qZWN0OnN0cmluZztcclxuXHRyZWFkbWVSZW1vdmVGcm9udG1hdHRlcjpib29sZWFuO1xyXG5cdHBsdWdpbkRpckV4cG9ydGVyOnN0cmluZztcclxufVxyXG5cclxuY29uc3QgREVGQVVMVF9TRVRUSU5HUzogVkV4cG9ydGVyU2V0dGluZ3MgPSB7XHJcblx0bmFtZUxvY2FsR2l0UHJvamVjdDogJ0xvY2FsR2l0UHJvamVjdCcsXHJcblx0cmVhZG1lUmVtb3ZlRnJvbnRtYXR0ZXI6dHJ1ZSxcclxuXHRhc3NldHNMb2NhbEdpdFByb2plY3Q6ICdhc3NldHMnLFxyXG5cdHBsdWdpbkRpckV4cG9ydGVyOicnXHJcbn1cclxuXHJcblxyXG5jb25zdCBjbWRfZXhwb3J0X3JlYWRtZSA9IChwbHVnaW46VmF1bHRFeHBvdGVyUGx1Z2luKSA9PiAoe1xyXG5cdGlkOiAnZXhwb3J0X3JlYWRtZScsXHJcblx0bmFtZTogJ0V4cG9ydCByZWFkTWUnLFxyXG5cdGNhbGxiYWNrOiBhc3luYyAoKSA9PiB7XHJcblx0XHRjb25zdCBuYyA9IHBsdWdpbi5ub3RlY2hhaW47XHJcblx0XHRsZXQgdGZpbGUgPSBuYy5jaGFpbi5jdXJyZW50X25vdGU7XHJcblx0XHRhd2FpdCBwbHVnaW4uZXhwb3J0X3JlYWRtZShcclxuXHRcdFx0dGZpbGUsbnVsbCx0cnVlLHBsdWdpbi5zZXR0aW5ncy5hc3NldHNMb2NhbEdpdFByb2plY3RcclxuXHRcdCk7XHJcblx0fVxyXG59KTtcclxuXHJcbmNvbnN0IGNtZF9zZXRfZ2l0X3Byb2plY3QgPSAocGx1Z2luOlZhdWx0RXhwb3RlclBsdWdpbikgPT4gKHtcclxuXHRpZDogJ3NldF9naXRfcHJvamVjdCcsXHJcblx0bmFtZTogJ1NldCBHaXQgUHJvamVjdCcsXHJcblx0Y2FsbGJhY2s6IGFzeW5jICgpID0+IHtcclxuXHRcdGNvbnN0IG5jID0gcGx1Z2luLm5vdGVjaGFpbjtcclxuXHRcdGxldCBkaXIgPSBhd2FpdCBuYy5jaGFpbi50cF9wcm9tcHQoJ1x1OEY5M1x1NTE2NVx1NjU4N1x1NEVGNlx1NTkzOScpO1xyXG5cdFx0aWYoIWRpciB8fCAhcGx1Z2luLmZzRWRpdG9yLmZzLmV4aXN0c1N5bmMoZGlyKSl7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHRcdGF3YWl0IG5jLmVkaXRvci5zZXRfZnJvbnRtYXR0ZXIoXHJcblx0XHRcdG5jLmNoYWluLmN1cnJlbnRfbm90ZSxcclxuXHRcdFx0cGx1Z2luLnNldHRpbmdzLm5hbWVMb2NhbEdpdFByb2plY3QsXHJcblx0XHRcdGRpclxyXG5cdFx0KVxyXG5cdH1cclxufSk7XHJcblxyXG5jb25zdCBjbWRfZXhwb3J0X3BsdWdpbiA9IChwbHVnaW46VmF1bHRFeHBvdGVyUGx1Z2luKSA9PiAoe1xyXG5cdGlkOiAnY21kX2V4cG9ydF9wbHVnaW4nLFxyXG5cdG5hbWU6ICdFeHBvcnQgUGx1Z2luJyxcclxuXHRjYWxsYmFjazogYXN5bmMgKCkgPT4ge1xyXG5cdFx0Y29uc3QgbmMgPSBwbHVnaW4ubm90ZWNoYWluO1xyXG5cdFx0XHJcblx0XHRsZXQgcGx1Z2lucyA9IE9iamVjdC5rZXlzKChwbHVnaW4uYXBwIGFzIGFueSkucGx1Z2lucy5wbHVnaW5zKTtcclxuXHRcdGxldCBwID0gYXdhaXQgbmMuY2hhaW4udHBfc3VnZ2VzdGVyKHBsdWdpbnMscGx1Z2lucyk7XHJcblx0XHRsZXQgZXBsdWdpbiA9IChwbHVnaW4uYXBwIGFzIGFueSkucGx1Z2lucy5nZXRQbHVnaW4ocCk7XHJcblx0XHRpZihlcGx1Z2luKXtcclxuXHRcdFx0bGV0IHRhcmdldCA9IHBsdWdpbi5zZXR0aW5ncy5wbHVnaW5EaXJFeHBvcnRlcjtcclxuXHRcdFx0aWYoIXBsdWdpbi5mc0VkaXRvci5mcy5leGlzdHNTeW5jKHRhcmdldCkpe1xyXG5cdFx0XHRcdHRhcmdldCA9IGF3YWl0IG5jLmNoYWluLnRwX3Byb21wdCgnXHU4RjkzXHU1MUZBXHU3NkVFXHU1RjU1Jyk7XHJcblx0XHRcdH1cclxuXHRcdFx0dGFyZ2V0ID0gdGFyZ2V0LnJlcGxhY2UoL1xcXFwvZywnLycpO1xyXG5cdFx0XHRpZighdGFyZ2V0LmVuZHNXaXRoKCcvJyArIHApKXtcclxuXHRcdFx0XHR0YXJnZXQgPSB0YXJnZXQgKyAnLycgKyBwO1xyXG5cdFx0XHR9XHJcblx0XHRcdGlmKCFwbHVnaW4uZnNFZGl0b3IuZnMuZXhpc3RzU3luYyh0YXJnZXQpKXtcclxuXHRcdFx0XHRwbHVnaW4uZnNFZGl0b3IuZnMubWtkaXJTeW5jKHRhcmdldCk7XHJcblx0XHRcdH1cclxuXHRcdFx0bGV0IGl0ZW1zID0gWydtYWluLmpzJywnbWFuaWZlc3QuanNvbicsJ3N0eWxlcy5jc3MnLCdkYXRhLmpzb24nXTtcclxuXHRcdFx0Zm9yKGxldCBpdGVtIG9mIGl0ZW1zKXtcclxuXHRcdFx0XHRsZXQgc3JjID0gYCR7cGx1Z2luLmZzRWRpdG9yLnJvb3R9LyR7cGx1Z2luLm1hbmlmZXN0LmRpcn0vJHtpdGVtfWA7XHJcblx0XHRcdFx0bGV0IGRzdCA9IGAke3RhcmdldH0vJHtpdGVtfWA7XHJcblx0XHRcdFx0cGx1Z2luLmZzRWRpdG9yLmNvcHlfZmlsZV9ieV9wYXRoKHNyYyxkc3QsJ292ZXJ3cml0ZScpO1xyXG5cdFx0XHRcdG5ldyBOb3RpY2UoYFx1NUJGQ1x1NTFGQVx1RkYxQSR7cH0vJHtpdGVtfWAsMzAwMCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0pO1xyXG5cclxuY29uc3QgY29tbWFuZEJ1aWxkZXJzID0gW1xyXG5cdGNtZF9leHBvcnRfcmVhZG1lLFxyXG5cdGNtZF9zZXRfZ2l0X3Byb2plY3QsXHJcblx0Y21kX2V4cG9ydF9wbHVnaW5cclxuXTtcclxuXHJcbmZ1bmN0aW9uIGFkZENvbW1hbmRzKHBsdWdpbjpWYXVsdEV4cG90ZXJQbHVnaW4pIHtcclxuICAgIGNvbW1hbmRCdWlsZGVycy5mb3JFYWNoKChjKSA9PiB7XHJcbiAgICAgICAgcGx1Z2luLmFkZENvbW1hbmQoYyhwbHVnaW4pKTtcclxuICAgIH0pO1xyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWYXVsdEV4cG90ZXJQbHVnaW4gZXh0ZW5kcyBQbHVnaW4ge1xyXG5cdHNldHRpbmdzOiBWRXhwb3J0ZXJTZXR0aW5ncztcclxuXHRmc0VkaXRvciA6IEZzRWRpdG9yO1xyXG5cdGFzeW5jIG9ubG9hZCgpIHtcclxuXHRcdGF3YWl0IHRoaXMubG9hZFNldHRpbmdzKCk7XHJcblx0XHR0aGlzLmFwcC52dCA9IHRoaXM7XHJcblx0XHR0aGlzLmZzRWRpdG9yID0gbmV3IEZzRWRpdG9yKHRoaXMpO1xyXG5cdFx0Ly8gVGhpcyBhZGRzIGEgc2V0dGluZ3MgdGFiIHNvIHRoZSB1c2VyIGNhbiBjb25maWd1cmUgdmFyaW91cyBhc3BlY3RzIG9mIHRoZSBwbHVnaW5cclxuXHRcdHRoaXMuYWRkU2V0dGluZ1RhYihuZXcgVkV4cG9ydGVyU2V0dGluZ1RhYih0aGlzLmFwcCwgdGhpcykpO1xyXG5cclxuXHRcdGFkZENvbW1hbmRzKHRoaXMpO1xyXG5cdH1cclxuXHJcblx0b251bmxvYWQoKSB7XHJcblxyXG5cdH1cclxuXHJcblx0Z2V0IG5vdGVjaGFpbigpe1xyXG5cdFx0cmV0dXJuICh0aGlzLmFwcCBhcyBhbnkpLnBsdWdpbnMuZ2V0UGx1Z2luKCdub3RlLWNoYWluJyk7XHJcblx0fVxyXG5cclxuXHRhc3luYyBsb2FkU2V0dGluZ3MoKSB7XHJcblx0XHR0aGlzLnNldHRpbmdzID0gT2JqZWN0LmFzc2lnbih7fSwgREVGQVVMVF9TRVRUSU5HUywgYXdhaXQgdGhpcy5sb2FkRGF0YSgpKTtcclxuXHR9XHJcblxyXG5cdGFzeW5jIHNhdmVTZXR0aW5ncygpIHtcclxuXHRcdGF3YWl0IHRoaXMuc2F2ZURhdGEodGhpcy5zZXR0aW5ncyk7XHJcblx0fVxyXG5cdFxyXG5cdGFzeW5jIGV4cG9ydF9yZWFkbWUodGZpbGU6VEZpbGUsZHN0OnN0cmluZ3xudWxsLGFzX3JlYWRtZT10cnVlLGFzc2V0cz0nYXNzZXRzJyl7XHJcblx0XHRsZXQgbmMgPSAodGhpcy5hcHAgYXMgYW55KS5wbHVnaW5zLmdldFBsdWdpbignbm90ZS1jaGFpbicpO1xyXG5cdFx0aWYoIXRmaWxlKXt0ZmlsZSA9IG5jLmNoYWluLmN1cnJlbnRfbm90ZTt9XHJcblx0XHRcclxuXHRcdGlmKCFkc3Qpe1xyXG5cdFx0XHRkc3QgPSB0aGlzLnNldHRpbmdzLm5hbWVMb2NhbEdpdFByb2plY3Q7XHJcblx0XHR9XHJcblx0XHRpZighZHN0LmNvbnRhaW5zKCcvJykpe1xyXG5cdFx0XHRkc3QgPSBuYy5lZGl0b3IuZ2V0X2Zyb250bWF0dGVyKHRmaWxlLGRzdCk7XHJcblx0XHR9XHJcblxyXG5cdFx0aWYoIWRzdCl7XHJcblx0XHRcdGRzdCA9IGF3YWl0IG5jLmNoYWluLnRwX3Byb21wdCgnUGF0aCBvZiBMb2NhbEdpdFByb2plY3QnKTtcclxuXHRcdFx0aWYoIWRzdCl7cmV0dXJuO31cclxuXHRcdH1cclxuXHRcdGRzdCA9IGRzdC5yZXBsYWNlKC9cXFxcL2csJy8nKTtcclxuXHRcdGlmKCF0aGlzLmZzRWRpdG9yLmZzLmV4aXN0c1N5bmMoZHN0KSl7XHJcblx0XHRcdGNvbnNvbGUubG9nKCdObyBEaXI6Jyxkc3QpO1xyXG5cdFx0fVxyXG5cdFx0Y29uc29sZS5sb2coZHN0KTtcclxuXHRcdGxldCBvbGlua3MgPSBuYy5jaGFpbi5nZXRfb3V0bGlua3ModGZpbGUpO1xyXG5cdFx0XHJcblx0XHRsZXQgdG1wO1xyXG5cdFx0aWYoYXNfcmVhZG1lKXtcclxuXHRcdFx0dG1wID0gZHN0KycvJysncmVhZE1lLm1kJztcclxuXHRcdH1lbHNle1xyXG5cdFx0XHR0bXAgPSBkc3QrJy8nK3RmaWxlLmJhc2VuYW1lKycubWQnO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMuZnNFZGl0b3IuY29weV90ZmlsZSh0ZmlsZSx0bXApO1xyXG5cdFx0YXdhaXQgdGhpcy5yZXBsYWNlX3JlYWRtZSh0bXApO1xyXG5cclxuXHRcdGxldCBhZGlyID0gZHN0KycvJythc3NldHM7XHJcblx0XHRpZighdGhpcy5mc0VkaXRvci5mcy5leGlzdHNTeW5jKGFkaXIpKXtcclxuXHRcdFx0dGhpcy5mc0VkaXRvci5mcy5ta2RpclN5bmMoYWRpcik7XHJcblx0XHR9XHJcblx0XHRmb3IobGV0IGYgb2Ygb2xpbmtzKXtcclxuXHRcdFx0aWYoIShmLmV4dGVuc2lvbj09PSdtZCcpKXtcclxuXHRcdFx0XHR0aGlzLmZzRWRpdG9yLmNvcHlfdGZpbGUoZixhZGlyKycvJytmLmJhc2VuYW1lKycuJytmLmV4dGVuc2lvbik7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0XHJcblx0cmVwbGFjZV9yZWFkbWUocGF0aDpzdHJpbmcpe1xyXG5cdFx0Y29uc3QgdWZ1bmMgPSAocGF0aDpzdHJpbmcsZGF0YTpzdHJpbmcpPT57XHJcblx0XHRcdGxldCByZXBsYWNlZENvbnRlbnQgPSBkYXRhLnJlcGxhY2UoXHJcblx0XHRcdFx0L1xcIVxcW1xcWyguKj8pXFxdXFxdL2csIFxyXG5cdFx0XHRcdChtYXRjaDphbnksIGZpbGVuYW1lOnN0cmluZykgPT4ge1xyXG5cdFx0XHRcdHJldHVybiBgIVske2ZpbGVuYW1lfV0oLi9hc3NldHMvJHtmaWxlbmFtZX0pYDtcclxuXHRcdFx0fSk7XHJcblx0XHRcdGlmKHRoaXMuc2V0dGluZ3MucmVhZG1lUmVtb3ZlRnJvbnRtYXR0ZXIpe1xyXG5cdFx0XHRcdHJlcGxhY2VkQ29udGVudCA9IHJlcGxhY2VkQ29udGVudC5yZXBsYWNlKFxyXG5cdFx0XHRcdFx0Ly0tLVtcXG4oXFxyXFxuKV1bXFxzXFxTXSo/LS0tW1xcbihcXHJcXG4pXS8sJydcclxuXHRcdFx0XHQpXHJcblx0XHRcdH1cclxuXHRcdFx0cmV0dXJuIHJlcGxhY2VkQ29udGVudDtcclxuXHRcdH1cclxuXHRcdHRoaXMuZnNFZGl0b3IubW9kaWZ5KHBhdGgsdWZ1bmMsJ3V0ZjgnKTtcclxuXHR9XHJcbn1cclxuXHJcbmNsYXNzIFZFeHBvcnRlclNldHRpbmdUYWIgZXh0ZW5kcyBQbHVnaW5TZXR0aW5nVGFiIHtcclxuXHRwbHVnaW46IFZhdWx0RXhwb3RlclBsdWdpbjtcclxuXHRcclxuXHJcblx0Y29uc3RydWN0b3IoYXBwOiBBcHAsIHBsdWdpbjogVmF1bHRFeHBvdGVyUGx1Z2luKSB7XHJcblx0XHRzdXBlcihhcHAsIHBsdWdpbik7XHJcblx0XHR0aGlzLnBsdWdpbiA9IHBsdWdpbjtcclxuXHR9XHJcblxyXG5cdGdldFNldHRpbmdWYWx1ZShmaWVsZDoga2V5b2YgVkV4cG9ydGVyU2V0dGluZ3MpIHtcclxuXHRcdHJldHVybiB0aGlzLnBsdWdpbi5zZXR0aW5nc1tmaWVsZF07XHJcblx0fVxyXG5cclxuXHRhZGRfdG9nZ2xlKG5hbWU6c3RyaW5nLGRlc2M6c3RyaW5nLGZpZWxkOmtleW9mIFZFeHBvcnRlclNldHRpbmdzKXtcclxuXHRcdGNvbnN0IHtjb250YWluZXJFbH0gPSB0aGlzO1xyXG5cdFx0bGV0IHZhbHVlID0gdGhpcy5wbHVnaW4uc2V0dGluZ3NbZmllbGRdIGFzIGJvb2xlYW47XHJcblx0XHRsZXQgaXRlbSA9IG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKSAgXHJcblx0XHRcdC5zZXROYW1lKG5hbWUpXHJcblx0XHRcdC5zZXREZXNjKGRlc2MpXHJcblx0XHRcdC5hZGRUb2dnbGUodGV4dCA9PiB0ZXh0XHJcblx0XHRcdFx0LnNldFZhbHVlKHZhbHVlKVxyXG5cdFx0XHRcdC5vbkNoYW5nZShhc3luYyAodmFsdWU6bmV2ZXIpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMucGx1Z2luLnNldHRpbmdzW2ZpZWxkXSA9IHZhbHVlO1xyXG5cdFx0XHRcdFx0YXdhaXQgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XHJcblx0XHRcdFx0fSlcclxuXHRcdFx0KTtcclxuXHRcdHJldHVybiBpdGVtO1xyXG5cdH1cclxuXHJcblx0ZGlzcGxheSgpOiB2b2lkIHtcclxuXHRcdGNvbnN0IHtjb250YWluZXJFbH0gPSB0aGlzO1xyXG5cclxuXHRcdGNvbnRhaW5lckVsLmVtcHR5KCk7XHJcblxyXG5cdFx0bmV3IFNldHRpbmcoY29udGFpbmVyRWwpXHJcblx0XHRcdC5zZXROYW1lKCdMb2NhbEdpdFByb2plY3QnKVxyXG5cdFx0XHQuc2V0RGVzYygnTWV0YWRhdGEgTmFtZSBmb3IgRGlyIG9mIEdpdCBQb3JqZWN0JylcclxuXHRcdFx0LmFkZFRleHQodGV4dCA9PiB0ZXh0XHJcblx0XHRcdFx0LnNldFBsYWNlaG9sZGVyKCdFbnRlciB5b3VyIGZpZWxkJylcclxuXHRcdFx0XHQuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MubmFtZUxvY2FsR2l0UHJvamVjdClcclxuXHRcdFx0XHQub25DaGFuZ2UoYXN5bmMgKHZhbHVlKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLnBsdWdpbi5zZXR0aW5ncy5uYW1lTG9jYWxHaXRQcm9qZWN0ID0gdmFsdWU7XHJcblx0XHRcdFx0XHRhd2FpdCB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcclxuXHRcdFx0XHR9KSk7XHJcblx0XHRcclxuXHRcdG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxyXG5cdFx0XHQuc2V0TmFtZSgnRm9sZGVyIEZvciBBc3NldHMnKVxyXG5cdFx0XHQuc2V0RGVzYygnRGlyIE5hbWUgZm9yIEFzc2V0cycpXHJcblx0XHRcdC5hZGRUZXh0KHRleHQgPT4gdGV4dFxyXG5cdFx0XHRcdC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy5hc3NldHNMb2NhbEdpdFByb2plY3QpXHJcblx0XHRcdFx0Lm9uQ2hhbmdlKGFzeW5jICh2YWx1ZSkgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5wbHVnaW4uc2V0dGluZ3MuYXNzZXRzTG9jYWxHaXRQcm9qZWN0ID0gdmFsdWU7XHJcblx0XHRcdFx0XHRhd2FpdCB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcclxuXHRcdFx0XHR9KSk7XHJcblx0XHRcclxuXHRcdHRoaXMuYWRkX3RvZ2dsZShcclxuXHRcdFx0J1JlbW92ZSBGcm9udG1hdHRlcj8nLCcnLCdyZWFkbWVSZW1vdmVGcm9udG1hdHRlcidcclxuXHRcdCk7XHJcblxyXG5cdFx0bmV3IFNldHRpbmcoY29udGFpbmVyRWwpXHJcblx0XHRcdC5zZXROYW1lKCdQbHVnaW4gRGlyIFRvIEV4cG9ydCcpXHJcblx0XHRcdC5hZGRUZXh0KHRleHQgPT4gdGV4dFxyXG5cdFx0XHRcdC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy5wbHVnaW5EaXJFeHBvcnRlcilcclxuXHRcdFx0XHQub25DaGFuZ2UoYXN5bmMgKHZhbHVlKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLnBsdWdpbi5zZXR0aW5ncy5wbHVnaW5EaXJFeHBvcnRlciA9IHZhbHVlO1xyXG5cdFx0XHRcdFx0YXdhaXQgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XHJcblx0XHRcdFx0fSkpO1xyXG5cdFx0XHJcblx0fVxyXG59XHJcbiIsICJcclxuaW1wb3J0IHsgQXBwLCBFZGl0b3IsIE1hcmtkb3duVmlldywgTW9kYWwsIE5vdGljZSwgUGx1Z2luLCBQbHVnaW5TZXR0aW5nVGFiLCBTZXR0aW5nLCBURmlsZSB9IGZyb20gJ29ic2lkaWFuJztcclxuXHJcbmV4cG9ydCBjbGFzcyBGc0VkaXRvcntcclxuICAgIGZzO1xyXG4gICAgcGF0aDtcclxuICAgIHBsdWdpbiA6UGx1Z2luO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHBsdWdpbjpQbHVnaW4pe1xyXG4gICAgICAgIHRoaXMucGx1Z2luID0gcGx1Z2luO1xyXG4gICAgICAgIHRoaXMuZnMgPSByZXF1aXJlKCdmcycpO1xyXG4gICAgICAgIHRoaXMucGF0aCA9IHJlcXVpcmUoJ3BhdGgnKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgcm9vdCgpe1xyXG4gICAgICAgIGxldCBhID0gdGhpcy5wbHVnaW4uYXBwLnZhdWx0LmFkYXB0ZXIgYXMgYW55O1xyXG4gICAgICAgIHJldHVybiBhLmJhc2VQYXRoLnJlcGxhY2UoL1xcXFwvZywnLycpO1xyXG4gICAgfVxyXG5cclxuICAgIGFic3BhdGgodGZpbGU6VEZpbGUpe1xyXG5cdFx0aWYodGZpbGUpe1xyXG5cdFx0XHRyZXR1cm4gdGhpcy5yb290KycvJyt0ZmlsZS5wYXRoO1xyXG5cdFx0fWVsc2V7XHJcblx0XHRcdHJldHVybiBudWxsO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcbiAgICBpc2ZpbGUocGF0aDpzdHJpbmcpe1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZzLmV4aXN0c1N5bmMocGF0aCkgJiYgdGhpcy5mcy5zdGF0U3luYyhwYXRoKS5pc0ZpbGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBpc2RpcihwYXRoOnN0cmluZyl7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZnMuZXhpc3RzU3luYyhwYXRoKSAmJiB0aGlzLmZzLnN0YXRTeW5jKHBhdGgpLmlzRGlyZWN0b3J5KCk7XHJcbiAgICB9XHJcblxyXG4gICAgbWtkaXJSZWN1cnNpdmVTeW5jKHBhdGg6c3RyaW5nKXtcclxuICAgICAgICBpZih0aGlzLmlzZGlyKHBhdGgpKXtyZXR1cm4gdHJ1ZTt9XHJcbiAgICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5wYXRoLmRpcm5hbWUocGF0aCk7XHJcbiAgICAgICAgaWYoIXRoaXMuaXNkaXIocGFyZW50KSl7XHJcbiAgICAgICAgICAgIHRoaXMubWtkaXJSZWN1cnNpdmVTeW5jKHBhcmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuZnMubWtkaXJTeW5jKHBhdGgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG5cdCogXHU5NjQ0XHU0RUY2IHNyYyBcdTUyMzAgZHN0XHVGRjBDXHU0RTBEXHU1NzI4IHZhdWx0IFx1NEUyRFx1RkYwQ1x1OTcwMFx1ODk4MVx1N0VERFx1NUJGOVx1OERFRlx1NUY4NFxyXG5cdCogb3ZlcndyaXRlXHVGRjBDXHU1OTBEXHU3NkQ2XHVGRjFCbXRpbWVcdUZGMENcdTY1QjBcdTY1ODdcdTRFRjZcdUZGMUJcclxuXHQqL1xyXG4gICAgY29weV9maWxlX2J5X3BhdGgoc3JjOnN0cmluZyxkc3Q6c3RyaW5nLG1vZGU9J3Bhc3M+b3ZlcndyaXRlPm10aW1lJykge1xyXG4gICAgICAgIGNvbnN0IGZzID0gdGhpcy5mcztcclxuXHJcbiAgICAgICAgbW9kZSA9IG1vZGUuc3BsaXQoJz4nKVswXVxyXG4gICAgICAgIGlmKCFmcy5leGlzdHNTeW5jKHNyYykpe1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKGZzLmV4aXN0c1N5bmMoZHN0KSl7XHJcbiAgICAgICAgICAgIGlmKG1vZGU9PT0nb3ZlcndyaXRlJyl7XHJcbiAgICAgICAgICAgICAgICBmcy51bmxpbmtTeW5jKGRzdCk7XHJcbiAgICAgICAgICAgICAgICBmcy5jb3B5RmlsZVN5bmMoc3JjLGRzdCk7XHJcbiAgICAgICAgICAgIH1lbHNlIGlmKG1vZGU9PT0nbXRpbWUnKXtcclxuICAgICAgICAgICAgICAgIC8vIGRzdCBcdTY2RjRcdTY1QjBcdTY1RjZcdTk1RjRcdTVDMEZcdTRFOEUgc3JjXHJcbiAgICAgICAgICAgICAgICBpZihmcy5zdGF0U3luYyhkc3QpLm10aW1lTXM8ZnMuc3RhdFN5bmMoc3JjKS5tdGltZU1zKXtcclxuICAgICAgICAgICAgICAgICAgICBmcy51bmxpbmtTeW5jKGRzdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgZnMuY29weUZpbGVTeW5jKHNyYyxkc3QpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgIGZzLmNvcHlGaWxlU3luYyhzcmMsZHN0KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgY29weV90ZmlsZSh0ZmlsZTpURmlsZSwgZHN0OnN0cmluZyxtb2RlPSdtdGltZScpIHtcclxuXHRcdGlmKHRmaWxlKXtcclxuXHRcdFx0bGV0IHNyYyA9IHRoaXMuYWJzcGF0aCh0ZmlsZSk7XHJcblx0XHRcdHNyYyAmJiB0aGlzLmNvcHlfZmlsZV9ieV9wYXRoKHNyYyxkc3QsbW9kZSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuICAgIG1pcnJvcl90ZmlsZSh0ZmlsZTpURmlsZSx2YXVsdF9yb290OnN0cmluZyxtb2RlPSdtdGltZScsYXR0YWNobWVudD10cnVlLG91dGxpbms9ZmFsc2Upe1xyXG4gICAgICAgIC8vIFx1NUMwNlx1N0IxNFx1OEJCMFx1OTU1Q1x1NTBDRlx1NzlGQlx1NTJBOFx1NTIzMFx1NTIyQlx1NzY4NFx1NUU5M1x1NEUyRFx1RkYwQ1x1NjU4N1x1NEVGNlx1N0VEM1x1Njc4NFx1NEUwRVx1NUY1M1x1NTI0RFx1NUU5M1x1NzZGOFx1NTQwQ1xyXG4gICAgICAgIGlmKHRmaWxlKXtcclxuICAgICAgICAgICAgdmF1bHRfcm9vdCA9IHZhdWx0X3Jvb3QucmVwbGFjZSgvXFxcXGcvLCcvJyk7XHJcblx0XHRcdGxldCBzcmMgPSB0aGlzLnJvb3QgKyAnLycgKyB0ZmlsZS5wYXRoO1xyXG4gICAgICAgICAgICBsZXQgZHN0ID0gdmF1bHRfcm9vdCsnLycrdGZpbGUucGF0aDtcclxuICAgICAgICAgICAgdGhpcy5ta2RpclJlY3Vyc2l2ZVN5bmModGhpcy5wYXRoLmRpcm5hbWUpO1xyXG5cdFx0XHR0aGlzLmNvcHlfZmlsZV9ieV9wYXRoKHNyYyxkc3QsbW9kZSk7XHJcbiAgICAgICAgICAgIGlmKGF0dGFjaG1lbnQpe1xyXG4gICAgICAgICAgICAgICAgbGV0IG5jID0gKHRoaXMucGx1Z2luLmFwcCBhcyBhbnkpLnBsdWdpbnMuZ2V0UGx1Z2luKCdub3RlLWNoYWluJyk7XHJcbiAgICAgICAgICAgICAgICBsZXQgdGZpbGVzID0gbmMuY2hhaW4uZ2V0X291dGxpbmtzKHRmaWxlKTtcclxuICAgICAgICAgICAgICAgIGZvcihsZXQgdCBvZiB0ZmlsZXMpe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKCEodC5leHRlbnNpb249PT0nbWQnKSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWlycm9yX3RmaWxlKHQsdmF1bHRfcm9vdCxtb2RlLGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICB9ZWxzZSBpZihvdXRsaW5rKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5taXJyb3JfdGZpbGUodCx2YXVsdF9yb290LG1vZGUsZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cdFx0fVxyXG4gICAgfVxyXG5cclxuICAgIG1vZGlmeShwYXRoOnN0cmluZyxjYWxsYmFjazpGdW5jdGlvbixlbmNvZGluZz0ndXRmOCcpe1xyXG4gICAgICAgIGNvbnN0IGZzID0gdGhpcy5mcztcclxuICAgICAgICBpZighZnMuZXhpc3RzU3luYyhwYXRoKSl7cmV0dXJufTtcclxuXHJcbiAgICAgICAgZnMucmVhZEZpbGUocGF0aCwgZW5jb2RpbmcsIChlcnI6RXJyb3IsIGRhdGE6c3RyaW5nKSA9PiB7XHJcblx0XHRcdGlmKGVycil7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciByZWFkaW5nIGZpbGU6JywgZXJyKTs7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGV0IHJzID0gY2FsbGJhY2socGF0aCxkYXRhKTtcclxuXHRcdFx0ZnMud3JpdGVGaWxlKHBhdGgsIHJzLCBlbmNvZGluZywgKGVycjpFcnJvcikgPT4ge1xyXG5cdFx0XHQgIGlmIChlcnIpIHtcclxuXHRcdFx0XHRjb25zb2xlLmVycm9yKCdFcnJvciB3cml0aW5nIGZpbGU6JywgZXJyKTtcclxuXHRcdFx0ICB9IGVsc2Uge1xyXG5cdFx0XHRcdGNvbnNvbGUubG9nKCdGaWxlIGNvbnRlbnQgdXBkYXRlZCBzdWNjZXNzZnVsbHkuJyk7XHJcblx0XHRcdCAgfVxyXG5cdFx0XHR9KTtcclxuXHRcdCAgfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbn1cclxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBLHNCQUFtRzs7O0FDRTVGLElBQU0sV0FBTixNQUFjO0FBQUEsRUFLakIsWUFBWSxRQUFjO0FBQ3RCLFNBQUssU0FBUztBQUNkLFNBQUssS0FBSyxRQUFRLElBQUk7QUFDdEIsU0FBSyxPQUFPLFFBQVEsTUFBTTtBQUFBLEVBQzlCO0FBQUEsRUFFQSxJQUFJLE9BQU07QUFDTixRQUFJLElBQUksS0FBSyxPQUFPLElBQUksTUFBTTtBQUM5QixXQUFPLEVBQUUsU0FBUyxRQUFRLE9BQU0sR0FBRztBQUFBLEVBQ3ZDO0FBQUEsRUFFQSxRQUFRLE9BQVk7QUFDdEIsUUFBRyxPQUFNO0FBQ1IsYUFBTyxLQUFLLE9BQUssTUFBSSxNQUFNO0FBQUEsSUFDNUIsT0FBSztBQUNKLGFBQU87QUFBQSxJQUNSO0FBQUEsRUFDRDtBQUFBLEVBRUcsT0FBTyxNQUFZO0FBQ2YsV0FBTyxLQUFLLEdBQUcsV0FBVyxJQUFJLEtBQUssS0FBSyxHQUFHLFNBQVMsSUFBSSxFQUFFLE9BQU87QUFBQSxFQUNyRTtBQUFBLEVBRUEsTUFBTSxNQUFZO0FBQ2QsV0FBTyxLQUFLLEdBQUcsV0FBVyxJQUFJLEtBQUssS0FBSyxHQUFHLFNBQVMsSUFBSSxFQUFFLFlBQVk7QUFBQSxFQUMxRTtBQUFBLEVBRUEsbUJBQW1CLE1BQVk7QUFDM0IsUUFBRyxLQUFLLE1BQU0sSUFBSSxHQUFF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 +//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsibWFpbi50cyIsICJzcmMvZnNlZGl0b3IudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCAqIGFzIE1vZHVsZSBmcm9tICdtb2R1bGUnO1xyXG5pbXBvcnQgeyBBcHAsIEVkaXRvciwgTWFya2Rvd25WaWV3LCBNb2RhbCwgTm90aWNlLCBQbHVnaW4sIFBsdWdpblNldHRpbmdUYWIsIFNldHRpbmcsIFRGaWxlIH0gZnJvbSAnb2JzaWRpYW4nO1xyXG5cclxuaW1wb3J0IHsgRnNFZGl0b3IgfSBmcm9tICdzcmMvZnNlZGl0b3InO1xyXG5cclxuaW50ZXJmYWNlIFZFeHBvcnRlclNldHRpbmdzIHtcclxuXHRuYW1lTG9jYWxHaXRQcm9qZWN0OiBzdHJpbmc7XHJcblx0YXNzZXRzTG9jYWxHaXRQcm9qZWN0OnN0cmluZztcclxuXHRyZWFkbWVSZW1vdmVGcm9udG1hdHRlcjpib29sZWFuO1xyXG5cdHBsdWdpbkRpckV4cG9ydGVyOnN0cmluZztcclxufVxyXG5cclxuY29uc3QgREVGQVVMVF9TRVRUSU5HUzogVkV4cG9ydGVyU2V0dGluZ3MgPSB7XHJcblx0bmFtZUxvY2FsR2l0UHJvamVjdDogJ0xvY2FsR2l0UHJvamVjdCcsXHJcblx0cmVhZG1lUmVtb3ZlRnJvbnRtYXR0ZXI6dHJ1ZSxcclxuXHRhc3NldHNMb2NhbEdpdFByb2plY3Q6ICdhc3NldHMnLFxyXG5cdHBsdWdpbkRpckV4cG9ydGVyOicnXHJcbn1cclxuXHJcblxyXG5jb25zdCBjbWRfZXhwb3J0X3JlYWRtZSA9IChwbHVnaW46VmF1bHRFeHBvdGVyUGx1Z2luKSA9PiAoe1xyXG5cdGlkOiAnZXhwb3J0X3JlYWRtZScsXHJcblx0bmFtZTogJ0V4cG9ydCByZWFkTWUnLFxyXG5cdGNhbGxiYWNrOiBhc3luYyAoKSA9PiB7XHJcblx0XHRjb25zdCBuYyA9IHBsdWdpbi5ub3RlY2hhaW47XHJcblx0XHRsZXQgdGZpbGUgPSBuYy5jaGFpbi5jdXJyZW50X25vdGU7XHJcblx0XHRhd2FpdCBwbHVnaW4uZXhwb3J0X3JlYWRtZShcclxuXHRcdFx0dGZpbGUsbnVsbCx0cnVlLHBsdWdpbi5zZXR0aW5ncy5hc3NldHNMb2NhbEdpdFByb2plY3RcclxuXHRcdCk7XHJcblx0fVxyXG59KTtcclxuXHJcbmNvbnN0IGNtZF9zZXRfZ2l0X3Byb2plY3QgPSAocGx1Z2luOlZhdWx0RXhwb3RlclBsdWdpbikgPT4gKHtcclxuXHRpZDogJ3NldF9naXRfcHJvamVjdCcsXHJcblx0bmFtZTogJ1NldCBHaXQgUHJvamVjdCcsXHJcblx0Y2FsbGJhY2s6IGFzeW5jICgpID0+IHtcclxuXHRcdGNvbnN0IG5jID0gcGx1Z2luLm5vdGVjaGFpbjtcclxuXHRcdGxldCBkaXIgPSBhd2FpdCBuYy5jaGFpbi50cF9wcm9tcHQoJ1x1OEY5M1x1NTE2NVx1NjU4N1x1NEVGNlx1NTkzOScpO1xyXG5cdFx0aWYoIWRpciB8fCAhcGx1Z2luLmZzRWRpdG9yLmZzLmV4aXN0c1N5bmMoZGlyKSl7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHRcdGF3YWl0IG5jLmVkaXRvci5zZXRfZnJvbnRtYXR0ZXIoXHJcblx0XHRcdG5jLmNoYWluLmN1cnJlbnRfbm90ZSxcclxuXHRcdFx0cGx1Z2luLnNldHRpbmdzLm5hbWVMb2NhbEdpdFByb2plY3QsXHJcblx0XHRcdGRpclxyXG5cdFx0KVxyXG5cdH1cclxufSk7XHJcblxyXG5jb25zdCBjbWRfZXhwb3J0X3BsdWdpbiA9IChwbHVnaW46VmF1bHRFeHBvdGVyUGx1Z2luKSA9PiAoe1xyXG5cdGlkOiAnY21kX2V4cG9ydF9wbHVnaW4nLFxyXG5cdG5hbWU6ICdFeHBvcnQgUGx1Z2luJyxcclxuXHRjYWxsYmFjazogYXN5bmMgKCkgPT4ge1xyXG5cdFx0Y29uc3QgbmMgPSBwbHVnaW4ubm90ZWNoYWluO1xyXG5cdFx0XHJcblx0XHRsZXQgcGx1Z2lucyA9IE9iamVjdC5rZXlzKChwbHVnaW4uYXBwIGFzIGFueSkucGx1Z2lucy5wbHVnaW5zKTtcclxuXHRcdGxldCBwID0gYXdhaXQgbmMuY2hhaW4udHBfc3VnZ2VzdGVyKHBsdWdpbnMscGx1Z2lucyk7XHJcblx0XHRsZXQgZXBsdWdpbiA9IChwbHVnaW4uYXBwIGFzIGFueSkucGx1Z2lucy5nZXRQbHVnaW4ocCk7XHJcblx0XHRpZihlcGx1Z2luKXtcclxuXHRcdFx0bGV0IHRhcmdldCA9IHBsdWdpbi5zZXR0aW5ncy5wbHVnaW5EaXJFeHBvcnRlcjtcclxuXHRcdFx0aWYoIXBsdWdpbi5mc0VkaXRvci5mcy5leGlzdHNTeW5jKHRhcmdldCkpe1xyXG5cdFx0XHRcdHRhcmdldCA9IGF3YWl0IG5jLmNoYWluLnRwX3Byb21wdCgnXHU4RjkzXHU1MUZBXHU3NkVFXHU1RjU1Jyk7XHJcblx0XHRcdH1cclxuXHRcdFx0dGFyZ2V0ID0gdGFyZ2V0LnJlcGxhY2UoL1xcXFwvZywnLycpO1xyXG5cdFx0XHRpZighdGFyZ2V0LmVuZHNXaXRoKCcvJyArIHApKXtcclxuXHRcdFx0XHR0YXJnZXQgPSB0YXJnZXQgKyAnLycgKyBwO1xyXG5cdFx0XHR9XHJcblx0XHRcdGlmKCFwbHVnaW4uZnNFZGl0b3IuZnMuZXhpc3RzU3luYyh0YXJnZXQpKXtcclxuXHRcdFx0XHRwbHVnaW4uZnNFZGl0b3IuZnMubWtkaXJTeW5jKHRhcmdldCk7XHJcblx0XHRcdH1cclxuXHRcdFx0bGV0IGl0ZW1zID0gWydtYWluLmpzJywnbWFuaWZlc3QuanNvbicsJ3N0eWxlcy5jc3MnLCdkYXRhLmpzb24nXTtcclxuXHRcdFx0Zm9yKGxldCBpdGVtIG9mIGl0ZW1zKXtcclxuXHRcdFx0XHRsZXQgc3JjID0gYCR7cGx1Z2luLmZzRWRpdG9yLnJvb3R9LyR7ZXBsdWdpbi5tYW5pZmVzdC5kaXJ9LyR7aXRlbX1gO1xyXG5cdFx0XHRcdGxldCBkc3QgPSBgJHt0YXJnZXR9LyR7aXRlbX1gO1xyXG5cdFx0XHRcdHBsdWdpbi5mc0VkaXRvci5jb3B5X2ZpbGVfYnlfcGF0aChzcmMsZHN0LCdvdmVyd3JpdGUnKTtcclxuXHRcdFx0XHRuZXcgTm90aWNlKGBcdTVCRkNcdTUxRkFcdUZGMUEke3B9LyR7aXRlbX1gLDMwMDApO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59KTtcclxuXHJcbmNvbnN0IGNvbW1hbmRCdWlsZGVycyA9IFtcclxuXHRjbWRfZXhwb3J0X3JlYWRtZSxcclxuXHRjbWRfc2V0X2dpdF9wcm9qZWN0LFxyXG5cdGNtZF9leHBvcnRfcGx1Z2luXHJcbl07XHJcblxyXG5mdW5jdGlvbiBhZGRDb21tYW5kcyhwbHVnaW46VmF1bHRFeHBvdGVyUGx1Z2luKSB7XHJcbiAgICBjb21tYW5kQnVpbGRlcnMuZm9yRWFjaCgoYykgPT4ge1xyXG4gICAgICAgIHBsdWdpbi5hZGRDb21tYW5kKGMocGx1Z2luKSk7XHJcbiAgICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmF1bHRFeHBvdGVyUGx1Z2luIGV4dGVuZHMgUGx1Z2luIHtcclxuXHRzZXR0aW5nczogVkV4cG9ydGVyU2V0dGluZ3M7XHJcblx0ZnNFZGl0b3IgOiBGc0VkaXRvcjtcclxuXHRhc3luYyBvbmxvYWQoKSB7XHJcblx0XHRhd2FpdCB0aGlzLmxvYWRTZXR0aW5ncygpO1xyXG5cdFx0dGhpcy5hcHAudnQgPSB0aGlzO1xyXG5cdFx0dGhpcy5mc0VkaXRvciA9IG5ldyBGc0VkaXRvcih0aGlzKTtcclxuXHRcdC8vIFRoaXMgYWRkcyBhIHNldHRpbmdzIHRhYiBzbyB0aGUgdXNlciBjYW4gY29uZmlndXJlIHZhcmlvdXMgYXNwZWN0cyBvZiB0aGUgcGx1Z2luXHJcblx0XHR0aGlzLmFkZFNldHRpbmdUYWIobmV3IFZFeHBvcnRlclNldHRpbmdUYWIodGhpcy5hcHAsIHRoaXMpKTtcclxuXHJcblx0XHRhZGRDb21tYW5kcyh0aGlzKTtcclxuXHR9XHJcblxyXG5cdG9udW5sb2FkKCkge1xyXG5cclxuXHR9XHJcblxyXG5cdGdldCBub3RlY2hhaW4oKXtcclxuXHRcdHJldHVybiAodGhpcy5hcHAgYXMgYW55KS5wbHVnaW5zLmdldFBsdWdpbignbm90ZS1jaGFpbicpO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgbG9hZFNldHRpbmdzKCkge1xyXG5cdFx0dGhpcy5zZXR0aW5ncyA9IE9iamVjdC5hc3NpZ24oe30sIERFRkFVTFRfU0VUVElOR1MsIGF3YWl0IHRoaXMubG9hZERhdGEoKSk7XHJcblx0fVxyXG5cclxuXHRhc3luYyBzYXZlU2V0dGluZ3MoKSB7XHJcblx0XHRhd2FpdCB0aGlzLnNhdmVEYXRhKHRoaXMuc2V0dGluZ3MpO1xyXG5cdH1cclxuXHRcclxuXHRhc3luYyBleHBvcnRfcmVhZG1lKHRmaWxlOlRGaWxlLGRzdDpzdHJpbmd8bnVsbCxhc19yZWFkbWU9dHJ1ZSxhc3NldHM9J2Fzc2V0cycpe1xyXG5cdFx0bGV0IG5jID0gKHRoaXMuYXBwIGFzIGFueSkucGx1Z2lucy5nZXRQbHVnaW4oJ25vdGUtY2hhaW4nKTtcclxuXHRcdGlmKCF0ZmlsZSl7dGZpbGUgPSBuYy5jaGFpbi5jdXJyZW50X25vdGU7fVxyXG5cdFx0XHJcblx0XHRpZighZHN0KXtcclxuXHRcdFx0ZHN0ID0gdGhpcy5zZXR0aW5ncy5uYW1lTG9jYWxHaXRQcm9qZWN0O1xyXG5cdFx0fVxyXG5cdFx0aWYoIWRzdC5jb250YWlucygnLycpKXtcclxuXHRcdFx0ZHN0ID0gbmMuZWRpdG9yLmdldF9mcm9udG1hdHRlcih0ZmlsZSxkc3QpO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmKCFkc3Qpe1xyXG5cdFx0XHRkc3QgPSBhd2FpdCBuYy5jaGFpbi50cF9wcm9tcHQoJ1BhdGggb2YgTG9jYWxHaXRQcm9qZWN0Jyk7XHJcblx0XHRcdGlmKCFkc3Qpe3JldHVybjt9XHJcblx0XHR9XHJcblx0XHRkc3QgPSBkc3QucmVwbGFjZSgvXFxcXC9nLCcvJyk7XHJcblx0XHRpZighdGhpcy5mc0VkaXRvci5mcy5leGlzdHNTeW5jKGRzdCkpe1xyXG5cdFx0XHRjb25zb2xlLmxvZygnTm8gRGlyOicsZHN0KTtcclxuXHRcdH1cclxuXHRcdGNvbnNvbGUubG9nKGRzdCk7XHJcblx0XHRsZXQgb2xpbmtzID0gbmMuY2hhaW4uZ2V0X291dGxpbmtzKHRmaWxlKTtcclxuXHRcdFxyXG5cdFx0bGV0IHRtcDtcclxuXHRcdGlmKGFzX3JlYWRtZSl7XHJcblx0XHRcdHRtcCA9IGRzdCsnLycrJ3JlYWRNZS5tZCc7XHJcblx0XHR9ZWxzZXtcclxuXHRcdFx0dG1wID0gZHN0KycvJyt0ZmlsZS5iYXNlbmFtZSsnLm1kJztcclxuXHRcdH1cclxuXHJcblx0XHR0aGlzLmZzRWRpdG9yLmNvcHlfdGZpbGUodGZpbGUsdG1wKTtcclxuXHRcdGF3YWl0IHRoaXMucmVwbGFjZV9yZWFkbWUodG1wKTtcclxuXHJcblx0XHRsZXQgYWRpciA9IGRzdCsnLycrYXNzZXRzO1xyXG5cdFx0aWYoIXRoaXMuZnNFZGl0b3IuZnMuZXhpc3RzU3luYyhhZGlyKSl7XHJcblx0XHRcdHRoaXMuZnNFZGl0b3IuZnMubWtkaXJTeW5jKGFkaXIpO1xyXG5cdFx0fVxyXG5cdFx0Zm9yKGxldCBmIG9mIG9saW5rcyl7XHJcblx0XHRcdGlmKCEoZi5leHRlbnNpb249PT0nbWQnKSl7XHJcblx0XHRcdFx0dGhpcy5mc0VkaXRvci5jb3B5X3RmaWxlKGYsYWRpcisnLycrZi5iYXNlbmFtZSsnLicrZi5leHRlbnNpb24pO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdHJlcGxhY2VfcmVhZG1lKHBhdGg6c3RyaW5nKXtcclxuXHRcdGNvbnN0IHVmdW5jID0gKHBhdGg6c3RyaW5nLGRhdGE6c3RyaW5nKT0+e1xyXG5cdFx0XHRsZXQgcmVwbGFjZWRDb250ZW50ID0gZGF0YS5yZXBsYWNlKFxyXG5cdFx0XHRcdC9cXCFcXFtcXFsoLio/KVxcXVxcXS9nLCBcclxuXHRcdFx0XHQobWF0Y2g6YW55LCBmaWxlbmFtZTpzdHJpbmcpID0+IHtcclxuXHRcdFx0XHRyZXR1cm4gYCFbJHtmaWxlbmFtZX1dKC4vYXNzZXRzLyR7ZmlsZW5hbWV9KWA7XHJcblx0XHRcdH0pO1xyXG5cdFx0XHRpZih0aGlzLnNldHRpbmdzLnJlYWRtZVJlbW92ZUZyb250bWF0dGVyKXtcclxuXHRcdFx0XHRyZXBsYWNlZENvbnRlbnQgPSByZXBsYWNlZENvbnRlbnQucmVwbGFjZShcclxuXHRcdFx0XHRcdC8tLS1bXFxuKFxcclxcbildW1xcc1xcU10qPy0tLVtcXG4oXFxyXFxuKV0vLCcnXHJcblx0XHRcdFx0KVxyXG5cdFx0XHR9XHJcblx0XHRcdHJldHVybiByZXBsYWNlZENvbnRlbnQ7XHJcblx0XHR9XHJcblx0XHR0aGlzLmZzRWRpdG9yLm1vZGlmeShwYXRoLHVmdW5jLCd1dGY4Jyk7XHJcblx0fVxyXG59XHJcblxyXG5jbGFzcyBWRXhwb3J0ZXJTZXR0aW5nVGFiIGV4dGVuZHMgUGx1Z2luU2V0dGluZ1RhYiB7XHJcblx0cGx1Z2luOiBWYXVsdEV4cG90ZXJQbHVnaW47XHJcblx0XHJcblxyXG5cdGNvbnN0cnVjdG9yKGFwcDogQXBwLCBwbHVnaW46IFZhdWx0RXhwb3RlclBsdWdpbikge1xyXG5cdFx0c3VwZXIoYXBwLCBwbHVnaW4pO1xyXG5cdFx0dGhpcy5wbHVnaW4gPSBwbHVnaW47XHJcblx0fVxyXG5cclxuXHRnZXRTZXR0aW5nVmFsdWUoZmllbGQ6IGtleW9mIFZFeHBvcnRlclNldHRpbmdzKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5wbHVnaW4uc2V0dGluZ3NbZmllbGRdO1xyXG5cdH1cclxuXHJcblx0YWRkX3RvZ2dsZShuYW1lOnN0cmluZyxkZXNjOnN0cmluZyxmaWVsZDprZXlvZiBWRXhwb3J0ZXJTZXR0aW5ncyl7XHJcblx0XHRjb25zdCB7Y29udGFpbmVyRWx9ID0gdGhpcztcclxuXHRcdGxldCB2YWx1ZSA9IHRoaXMucGx1Z2luLnNldHRpbmdzW2ZpZWxkXSBhcyBib29sZWFuO1xyXG5cdFx0bGV0IGl0ZW0gPSBuZXcgU2V0dGluZyhjb250YWluZXJFbCkgIFxyXG5cdFx0XHQuc2V0TmFtZShuYW1lKVxyXG5cdFx0XHQuc2V0RGVzYyhkZXNjKVxyXG5cdFx0XHQuYWRkVG9nZ2xlKHRleHQgPT4gdGV4dFxyXG5cdFx0XHRcdC5zZXRWYWx1ZSh2YWx1ZSlcclxuXHRcdFx0XHQub25DaGFuZ2UoYXN5bmMgKHZhbHVlOm5ldmVyKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLnBsdWdpbi5zZXR0aW5nc1tmaWVsZF0gPSB2YWx1ZTtcclxuXHRcdFx0XHRcdGF3YWl0IHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdCk7XHJcblx0XHRyZXR1cm4gaXRlbTtcclxuXHR9XHJcblxyXG5cdGRpc3BsYXkoKTogdm9pZCB7XHJcblx0XHRjb25zdCB7Y29udGFpbmVyRWx9ID0gdGhpcztcclxuXHJcblx0XHRjb250YWluZXJFbC5lbXB0eSgpO1xyXG5cclxuXHRcdG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxyXG5cdFx0XHQuc2V0TmFtZSgnTG9jYWxHaXRQcm9qZWN0JylcclxuXHRcdFx0LnNldERlc2MoJ01ldGFkYXRhIE5hbWUgZm9yIERpciBvZiBHaXQgUG9yamVjdCcpXHJcblx0XHRcdC5hZGRUZXh0KHRleHQgPT4gdGV4dFxyXG5cdFx0XHRcdC5zZXRQbGFjZWhvbGRlcignRW50ZXIgeW91ciBmaWVsZCcpXHJcblx0XHRcdFx0LnNldFZhbHVlKHRoaXMucGx1Z2luLnNldHRpbmdzLm5hbWVMb2NhbEdpdFByb2plY3QpXHJcblx0XHRcdFx0Lm9uQ2hhbmdlKGFzeW5jICh2YWx1ZSkgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5wbHVnaW4uc2V0dGluZ3MubmFtZUxvY2FsR2l0UHJvamVjdCA9IHZhbHVlO1xyXG5cdFx0XHRcdFx0YXdhaXQgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XHJcblx0XHRcdFx0fSkpO1xyXG5cdFx0XHJcblx0XHRuZXcgU2V0dGluZyhjb250YWluZXJFbClcclxuXHRcdFx0LnNldE5hbWUoJ0ZvbGRlciBGb3IgQXNzZXRzJylcclxuXHRcdFx0LnNldERlc2MoJ0RpciBOYW1lIGZvciBBc3NldHMnKVxyXG5cdFx0XHQuYWRkVGV4dCh0ZXh0ID0+IHRleHRcclxuXHRcdFx0XHQuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MuYXNzZXRzTG9jYWxHaXRQcm9qZWN0KVxyXG5cdFx0XHRcdC5vbkNoYW5nZShhc3luYyAodmFsdWUpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMucGx1Z2luLnNldHRpbmdzLmFzc2V0c0xvY2FsR2l0UHJvamVjdCA9IHZhbHVlO1xyXG5cdFx0XHRcdFx0YXdhaXQgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XHJcblx0XHRcdFx0fSkpO1xyXG5cdFx0XHJcblx0XHR0aGlzLmFkZF90b2dnbGUoXHJcblx0XHRcdCdSZW1vdmUgRnJvbnRtYXR0ZXI/JywnJywncmVhZG1lUmVtb3ZlRnJvbnRtYXR0ZXInXHJcblx0XHQpO1xyXG5cclxuXHRcdG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxyXG5cdFx0XHQuc2V0TmFtZSgnUGx1Z2luIERpciBUbyBFeHBvcnQnKVxyXG5cdFx0XHQuYWRkVGV4dCh0ZXh0ID0+IHRleHRcclxuXHRcdFx0XHQuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MucGx1Z2luRGlyRXhwb3J0ZXIpXHJcblx0XHRcdFx0Lm9uQ2hhbmdlKGFzeW5jICh2YWx1ZSkgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5wbHVnaW4uc2V0dGluZ3MucGx1Z2luRGlyRXhwb3J0ZXIgPSB2YWx1ZTtcclxuXHRcdFx0XHRcdGF3YWl0IHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xyXG5cdFx0XHRcdH0pKTtcclxuXHRcdFxyXG5cdH1cclxufVxyXG4iLCAiXHJcbmltcG9ydCB7IEFwcCwgRWRpdG9yLCBNYXJrZG93blZpZXcsIE1vZGFsLCBOb3RpY2UsIFBsdWdpbiwgUGx1Z2luU2V0dGluZ1RhYiwgU2V0dGluZywgVEZpbGUgfSBmcm9tICdvYnNpZGlhbic7XHJcblxyXG5leHBvcnQgY2xhc3MgRnNFZGl0b3J7XHJcbiAgICBmcztcclxuICAgIHBhdGg7XHJcbiAgICBwbHVnaW4gOlBsdWdpbjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihwbHVnaW46UGx1Z2luKXtcclxuICAgICAgICB0aGlzLnBsdWdpbiA9IHBsdWdpbjtcclxuICAgICAgICB0aGlzLmZzID0gcmVxdWlyZSgnZnMnKTtcclxuICAgICAgICB0aGlzLnBhdGggPSByZXF1aXJlKCdwYXRoJyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHJvb3QoKXtcclxuICAgICAgICBsZXQgYSA9IHRoaXMucGx1Z2luLmFwcC52YXVsdC5hZGFwdGVyIGFzIGFueTtcclxuICAgICAgICByZXR1cm4gYS5iYXNlUGF0aC5yZXBsYWNlKC9cXFxcL2csJy8nKTtcclxuICAgIH1cclxuXHJcbiAgICBhYnNwYXRoKHRmaWxlOlRGaWxlKXtcclxuXHRcdGlmKHRmaWxlKXtcclxuXHRcdFx0cmV0dXJuIHRoaXMucm9vdCsnLycrdGZpbGUucGF0aDtcclxuXHRcdH1lbHNle1xyXG5cdFx0XHRyZXR1cm4gbnVsbDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG4gICAgaXNmaWxlKHBhdGg6c3RyaW5nKXtcclxuICAgICAgICByZXR1cm4gdGhpcy5mcy5leGlzdHNTeW5jKHBhdGgpICYmIHRoaXMuZnMuc3RhdFN5bmMocGF0aCkuaXNGaWxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaXNkaXIocGF0aDpzdHJpbmcpe1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZzLmV4aXN0c1N5bmMocGF0aCkgJiYgdGhpcy5mcy5zdGF0U3luYyhwYXRoKS5pc0RpcmVjdG9yeSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG1rZGlyUmVjdXJzaXZlU3luYyhwYXRoOnN0cmluZyl7XHJcbiAgICAgICAgaWYodGhpcy5pc2RpcihwYXRoKSl7cmV0dXJuIHRydWU7fVxyXG4gICAgICAgIGNvbnN0IHBhcmVudCA9IHRoaXMucGF0aC5kaXJuYW1lKHBhdGgpO1xyXG4gICAgICAgIGlmKCF0aGlzLmlzZGlyKHBhcmVudCkpe1xyXG4gICAgICAgICAgICB0aGlzLm1rZGlyUmVjdXJzaXZlU3luYyhwYXJlbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmZzLm1rZGlyU3luYyhwYXRoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuXHQqIFx1OTY0NFx1NEVGNiBzcmMgXHU1MjMwIGRzdFx1RkYwQ1x1NEUwRFx1NTcyOCB2YXVsdCBcdTRFMkRcdUZGMENcdTk3MDBcdTg5ODFcdTdFRERcdTVCRjlcdThERUZcdTVGODRcclxuXHQqIG92ZXJ3cml0ZVx1RkYwQ1x1NTkwRFx1NzZENlx1RkYxQm10aW1lXHVGRjBDXHU2NUIwXHU2NTg3XHU0RUY2XHVGRjFCXHJcblx0Ki9cclxuICAgIGNvcHlfZmlsZV9ieV9wYXRoKHNyYzpzdHJpbmcsZHN0OnN0cmluZyxtb2RlPSdwYXNzPm92ZXJ3cml0ZT5tdGltZScpIHtcclxuICAgICAgICBjb25zdCBmcyA9IHRoaXMuZnM7XHJcblxyXG4gICAgICAgIG1vZGUgPSBtb2RlLnNwbGl0KCc+JylbMF1cclxuICAgICAgICBpZighZnMuZXhpc3RzU3luYyhzcmMpKXtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZihmcy5leGlzdHNTeW5jKGRzdCkpe1xyXG4gICAgICAgICAgICBpZihtb2RlPT09J292ZXJ3cml0ZScpe1xyXG4gICAgICAgICAgICAgICAgZnMudW5saW5rU3luYyhkc3QpO1xyXG4gICAgICAgICAgICAgICAgZnMuY29weUZpbGVTeW5jKHNyYyxkc3QpO1xyXG4gICAgICAgICAgICB9ZWxzZSBpZihtb2RlPT09J210aW1lJyl7XHJcbiAgICAgICAgICAgICAgICAvLyBkc3QgXHU2NkY0XHU2NUIwXHU2NUY2XHU5NUY0XHU1QzBGXHU0RThFIHNyY1xyXG4gICAgICAgICAgICAgICAgaWYoZnMuc3RhdFN5bmMoZHN0KS5tdGltZU1zPGZzLnN0YXRTeW5jKHNyYykubXRpbWVNcyl7XHJcbiAgICAgICAgICAgICAgICAgICAgZnMudW5saW5rU3luYyhkc3QpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZzLmNvcHlGaWxlU3luYyhzcmMsZHN0KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgICBmcy5jb3B5RmlsZVN5bmMoc3JjLGRzdCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNvcHlfdGZpbGUodGZpbGU6VEZpbGUsIGRzdDpzdHJpbmcsbW9kZT0nbXRpbWUnKSB7XHJcblx0XHRpZih0ZmlsZSl7XHJcblx0XHRcdGxldCBzcmMgPSB0aGlzLmFic3BhdGgodGZpbGUpO1xyXG5cdFx0XHRzcmMgJiYgdGhpcy5jb3B5X2ZpbGVfYnlfcGF0aChzcmMsZHN0LG1vZGUpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcbiAgICBtaXJyb3JfdGZpbGUodGZpbGU6VEZpbGUsdmF1bHRfcm9vdDpzdHJpbmcsbW9kZT0nbXRpbWUnLGF0dGFjaG1lbnQ9dHJ1ZSxvdXRsaW5rPWZhbHNlKXtcclxuICAgICAgICAvLyBcdTVDMDZcdTdCMTRcdThCQjBcdTk1NUNcdTUwQ0ZcdTc5RkJcdTUyQThcdTUyMzBcdTUyMkJcdTc2ODRcdTVFOTNcdTRFMkRcdUZGMENcdTY1ODdcdTRFRjZcdTdFRDNcdTY3ODRcdTRFMEVcdTVGNTNcdTUyNERcdTVFOTNcdTc2RjhcdTU0MENcclxuICAgICAgICBpZih0ZmlsZSl7XHJcbiAgICAgICAgICAgIHZhdWx0X3Jvb3QgPSB2YXVsdF9yb290LnJlcGxhY2UoL1xcXFxnLywnLycpO1xyXG5cdFx0XHRsZXQgc3JjID0gdGhpcy5yb290ICsgJy8nICsgdGZpbGUucGF0aDtcclxuICAgICAgICAgICAgbGV0IGRzdCA9IHZhdWx0X3Jvb3QrJy8nK3RmaWxlLnBhdGg7XHJcbiAgICAgICAgICAgIHRoaXMubWtkaXJSZWN1cnNpdmVTeW5jKHRoaXMucGF0aC5kaXJuYW1lKTtcclxuXHRcdFx0dGhpcy5jb3B5X2ZpbGVfYnlfcGF0aChzcmMsZHN0LG1vZGUpO1xyXG4gICAgICAgICAgICBpZihhdHRhY2htZW50KXtcclxuICAgICAgICAgICAgICAgIGxldCBuYyA9ICh0aGlzLnBsdWdpbi5hcHAgYXMgYW55KS5wbHVnaW5zLmdldFBsdWdpbignbm90ZS1jaGFpbicpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHRmaWxlcyA9IG5jLmNoYWluLmdldF9vdXRsaW5rcyh0ZmlsZSk7XHJcbiAgICAgICAgICAgICAgICBmb3IobGV0IHQgb2YgdGZpbGVzKXtcclxuICAgICAgICAgICAgICAgICAgICBpZighKHQuZXh0ZW5zaW9uPT09J21kJykpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1pcnJvcl90ZmlsZSh0LHZhdWx0X3Jvb3QsbW9kZSxmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfWVsc2UgaWYob3V0bGluayl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWlycm9yX3RmaWxlKHQsdmF1bHRfcm9vdCxtb2RlLGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHRcdH1cclxuICAgIH1cclxuXHJcbiAgICBtb2RpZnkocGF0aDpzdHJpbmcsY2FsbGJhY2s6RnVuY3Rpb24sZW5jb2Rpbmc9J3V0ZjgnKXtcclxuICAgICAgICBjb25zdCBmcyA9IHRoaXMuZnM7XHJcbiAgICAgICAgaWYoIWZzLmV4aXN0c1N5bmMocGF0aCkpe3JldHVybn07XHJcblxyXG4gICAgICAgIGZzLnJlYWRGaWxlKHBhdGgsIGVuY29kaW5nLCAoZXJyOkVycm9yLCBkYXRhOnN0cmluZykgPT4ge1xyXG5cdFx0XHRpZihlcnIpe1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgcmVhZGluZyBmaWxlOicsIGVycik7O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBycyA9IGNhbGxiYWNrKHBhdGgsZGF0YSk7XHJcblx0XHRcdGZzLndyaXRlRmlsZShwYXRoLCBycywgZW5jb2RpbmcsIChlcnI6RXJyb3IpID0+IHtcclxuXHRcdFx0ICBpZiAoZXJyKSB7XHJcblx0XHRcdFx0Y29uc29sZS5lcnJvcignRXJyb3Igd3JpdGluZyBmaWxlOicsIGVycik7XHJcblx0XHRcdCAgfSBlbHNlIHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnRmlsZSBjb250ZW50IHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5LicpO1xyXG5cdFx0XHQgIH1cclxuXHRcdFx0fSk7XHJcblx0XHQgIH1cclxuICAgICAgICApO1xyXG4gICAgfVxyXG59XHJcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQSxzQkFBbUc7OztBQ0U1RixJQUFNLFdBQU4sTUFBYztBQUFBLEVBS2pCLFlBQVksUUFBYztBQUN0QixTQUFLLFNBQVM7QUFDZCxTQUFLLEtBQUssUUFBUSxJQUFJO0FBQ3RCLFNBQUssT0FBTyxRQUFRLE1BQU07QUFBQSxFQUM5QjtBQUFBLEVBRUEsSUFBSSxPQUFNO0FBQ04sUUFBSSxJQUFJLEtBQUssT0FBTyxJQUFJLE1BQU07QUFDOUIsV0FBTyxFQUFFLFNBQVMsUUFBUSxPQUFNLEdBQUc7QUFBQSxFQUN2QztBQUFBLEVBRUEsUUFBUSxPQUFZO0FBQ3RCLFFBQUcsT0FBTTtBQUNSLGFBQU8sS0FBSyxPQUFLLE1BQUksTUFBTTtBQUFBLElBQzVCLE9BQUs7QUFDSixhQUFPO0FBQUEsSUFDUjtBQUFBLEVBQ0Q7QUFBQSxFQUVHLE9BQU8sTUFBWTtBQUNmLFdBQU8sS0FBSyxHQUFHLFdBQVcsSUFBSSxLQUFLLEtBQUssR0FBRyxTQUFTLElBQUksRUFBRSxPQUFPO0FBQUEsRUFDckU7QUFBQSxFQUVBLE1BQU0sTUFBWTtBQUNkLFdBQU8sS0FBSyxHQUFHLFdBQVcsSUFBSSxLQUFLLEtBQUssR0FBRyxTQUFTLElBQUksRUFBRSxZQUFZO0FBQUEsRUFDMUU7QUFBQSxFQUVBLG1CQUFtQixNQUFZO0FBQzNCLFFBQUcsS0FBSyxNQUFNLElBQUksR0FB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 diff --git a/main.ts b/main.ts index 80281f9..6763000 100644 --- a/main.ts +++ b/main.ts @@ -70,7 +70,7 @@ const cmd_export_plugin = (plugin:VaultExpoterPlugin) => ({ } let items = ['main.js','manifest.json','styles.css','data.json']; for(let item of items){ - let src = `${plugin.fsEditor.root}/${plugin.manifest.dir}/${item}`; + let src = `${plugin.fsEditor.root}/${eplugin.manifest.dir}/${item}`; let dst = `${target}/${item}`; plugin.fsEditor.copy_file_by_path(src,dst,'overwrite'); new Notice(`导出:${p}/${item}`,3000);