zhengzhou-byd-lms-vue/vite.config.js.timestamp-1744860604269-ea4366546bb92.mjs
2025-04-18 16:37:16 +08:00

163 lines
20 KiB
JavaScript

// vite.config.js
import { defineConfig, loadEnv } from "file:///C:/Users/33134/Desktop/git%E4%BB%93%E5%BA%93/%E9%83%91%E5%B7%9E%E6%AF%94%E4%BA%9A%E8%BF%AA/zhengzhou-byd-lms-vue/node_modules/vite/dist/node/index.js";
import path2 from "path";
// vite/plugins/index.js
import vue from "file:///C:/Users/33134/Desktop/git%E4%BB%93%E5%BA%93/%E9%83%91%E5%B7%9E%E6%AF%94%E4%BA%9A%E8%BF%AA/zhengzhou-byd-lms-vue/node_modules/@vitejs/plugin-vue/dist/index.mjs";
// vite/plugins/auto-import.js
import autoImport from "file:///C:/Users/33134/Desktop/git%E4%BB%93%E5%BA%93/%E9%83%91%E5%B7%9E%E6%AF%94%E4%BA%9A%E8%BF%AA/zhengzhou-byd-lms-vue/node_modules/unplugin-auto-import/dist/vite.js";
function createAutoImport() {
return autoImport({
imports: [
"vue",
"vue-router",
"pinia"
],
dts: "src/auto-import.d.ts"
// 生成 `auto-import.d.ts` 全局声明
});
}
// vite/plugins/svg-icon.js
import { createSvgIconsPlugin } from "file:///C:/Users/33134/Desktop/git%E4%BB%93%E5%BA%93/%E9%83%91%E5%B7%9E%E6%AF%94%E4%BA%9A%E8%BF%AA/zhengzhou-byd-lms-vue/node_modules/vite-plugin-svg-icons/dist/index.mjs";
import path from "path";
function createSvgIcon(isBuild) {
return createSvgIconsPlugin({
iconDirs: [path.resolve(process.cwd(), "src/assets/icons/svg")],
symbolId: "icon-[dir]-[name]",
svgoOptions: isBuild
});
}
// vite/plugins/compression.js
import compression from "file:///C:/Users/33134/Desktop/git%E4%BB%93%E5%BA%93/%E9%83%91%E5%B7%9E%E6%AF%94%E4%BA%9A%E8%BF%AA/zhengzhou-byd-lms-vue/node_modules/vite-plugin-compression/dist/index.mjs";
function createCompression(env) {
const { VITE_BUILD_COMPRESS } = env;
const plugin = [];
if (VITE_BUILD_COMPRESS) {
const compressList = VITE_BUILD_COMPRESS.split(",");
if (compressList.includes("gzip")) {
plugin.push(
compression({
algorithm: "gzip",
threshold: 10240,
//>=10kb的文件进行压缩
verbose: false,
deleteOriginFile: false
})
);
}
if (compressList.includes("brotli")) {
plugin.push(
compression({
ext: ".br",
algorithm: "brotliCompress",
deleteOriginFile: false
})
);
}
}
return plugin;
}
// vite/plugins/setup-extend.js
import setupExtend from "file:///C:/Users/33134/Desktop/git%E4%BB%93%E5%BA%93/%E9%83%91%E5%B7%9E%E6%AF%94%E4%BA%9A%E8%BF%AA/zhengzhou-byd-lms-vue/node_modules/vite-plugin-vue-setup-extend/dist/index.mjs";
function createSetupExtend() {
return setupExtend();
}
// vite/plugins/index.js
import { lazyImport, VxeResolver } from "file:///C:/Users/33134/Desktop/git%E4%BB%93%E5%BA%93/%E9%83%91%E5%B7%9E%E6%AF%94%E4%BA%9A%E8%BF%AA/zhengzhou-byd-lms-vue/node_modules/vite-plugin-lazy-import/dist/index.cjs";
function createVitePlugins(viteEnv, isBuild = false) {
const vitePlugins = [vue()];
vitePlugins.push(createAutoImport());
vitePlugins.push(createSetupExtend());
vitePlugins.push(createSvgIcon(isBuild));
isBuild && vitePlugins.push(...createCompression(viteEnv));
vitePlugins.push(
lazyImport({
resolvers: [
VxeResolver({
libraryName: "vxe-table"
}),
VxeResolver({
libraryName: "vxe-pc-ui"
})
]
})
);
return vitePlugins;
}
// vite.config.js
var __vite_injected_original_dirname = "C:\\Users\\33134\\Desktop\\git\u4ED3\u5E93\\\u90D1\u5DDE\u6BD4\u4E9A\u8FEA\\zhengzhou-byd-lms-vue";
var vite_config_default = defineConfig(({ mode, command }) => {
const env = loadEnv(mode, process.cwd());
const alias = {
// 设置路径
"~": path2.resolve(__vite_injected_original_dirname, "./"),
// 设置别名
"@": path2.resolve(__vite_injected_original_dirname, "./src")
};
if (command === "serve") {
alias["vue-i18n"] = "vue-i18n/dist/vue-i18n.cjs.js";
}
return {
plugins: createVitePlugins(env, command === "build"),
resolve: {
// https://cn.vitejs.dev/config/#resolve-alias
alias,
// 导入时想要省略的扩展名列表
// https://cn.vitejs.dev/config/#resolve-extensions
extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", ".vue"]
},
css: {
devSourcemap: true
//开发模式时启用
},
base: env.VITE_APP_ROUTER_PREFIX,
// 打包配置
build: {
sourcemap: command === "build" ? false : "inline",
outDir: "dist",
//指定输出目录
assetsDir: "assets",
//指定静态资源存储目录(相对于outDir)
chunkSizeWarningLimit: 2e3,
//Adjust the limit to your desired value in KB
// 将js、css文件分离到单独文件夹
rollupOptions: {
output: {
chunkFileNames: "static/js/[name]-[hash].js",
entryFileNames: "static/js/[name]-[hash].js",
assetFileNames: "static/[ext]/[name]-[hash].[ext]"
}
}
},
// vite 相关配置
server: {
port: 8887,
host: true,
open: true,
proxy: {
// https://cn.vitejs.dev/config/#server-proxy
"/dev-api": {
target: env.VITE_APP_API_HOST,
changeOrigin: true,
rewrite: (path3) => path3.replace(/^\/dev-api/, "")
},
"/msghub": {
target: env.VITE_APP_API_HOST,
ws: true,
rewrite: (path3) => path3.replace(/^\/msgHub/, "")
}
}
}
};
});
export {
vite_config_default as default
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcuanMiLCAidml0ZS9wbHVnaW5zL2luZGV4LmpzIiwgInZpdGUvcGx1Z2lucy9hdXRvLWltcG9ydC5qcyIsICJ2aXRlL3BsdWdpbnMvc3ZnLWljb24uanMiLCAidml0ZS9wbHVnaW5zL2NvbXByZXNzaW9uLmpzIiwgInZpdGUvcGx1Z2lucy9zZXR1cC1leHRlbmQuanMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJDOlxcXFxVc2Vyc1xcXFwzMzEzNFxcXFxEZXNrdG9wXFxcXGdpdFx1NEVEM1x1NUU5M1xcXFxcdTkwRDFcdTVEREVcdTZCRDRcdTRFOUFcdThGRUFcXFxcemhlbmd6aG91LWJ5ZC1sbXMtdnVlXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCJDOlxcXFxVc2Vyc1xcXFwzMzEzNFxcXFxEZXNrdG9wXFxcXGdpdFx1NEVEM1x1NUU5M1xcXFxcdTkwRDFcdTVEREVcdTZCRDRcdTRFOUFcdThGRUFcXFxcemhlbmd6aG91LWJ5ZC1sbXMtdnVlXFxcXHZpdGUuY29uZmlnLmpzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9DOi9Vc2Vycy8zMzEzNC9EZXNrdG9wL2dpdCVFNCVCQiU5MyVFNSVCQSU5My8lRTklODMlOTElRTUlQjclOUUlRTYlQUYlOTQlRTQlQkElOUElRTglQkYlQUEvemhlbmd6aG91LWJ5ZC1sbXMtdnVlL3ZpdGUuY29uZmlnLmpzXCI7aW1wb3J0IHsgZGVmaW5lQ29uZmlnLCBsb2FkRW52IH0gZnJvbSAndml0ZSdcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnXG5pbXBvcnQgY3JlYXRlVml0ZVBsdWdpbnMgZnJvbSAnLi92aXRlL3BsdWdpbnMnXG5cbi8vIGh0dHBzOi8vdml0ZWpzLmRldi9jb25maWcvXG5leHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcoKHsgbW9kZSwgY29tbWFuZCB9KSA9PiB7XG4gIGNvbnN0IGVudiA9IGxvYWRFbnYobW9kZSwgcHJvY2Vzcy5jd2QoKSlcblxuICBjb25zdCBhbGlhcyA9IHtcbiAgICAvLyBcdThCQkVcdTdGNkVcdThERUZcdTVGODRcbiAgICAnfic6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICcuLycpLFxuICAgIC8vIFx1OEJCRVx1N0Y2RVx1NTIyQlx1NTQwRFxuICAgICdAJzogcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4vc3JjJylcbiAgfVxuICBpZiAoY29tbWFuZCA9PT0gJ3NlcnZlJykge1xuICAgIC8vIFx1ODlFM1x1NTFCM1x1OEI2Nlx1NTQ0QVlvdSBhcmUgcnVubmluZyB0aGUgZXNtLWJ1bmRsZXIgYnVpbGQgb2YgdnVlLWkxOG4uXG4gICAgYWxpYXNbJ3Z1ZS1pMThuJ10gPSAndnVlLWkxOG4vZGlzdC92dWUtaTE4bi5janMuanMnXG4gIH1cbiAgcmV0dXJuIHtcbiAgICBwbHVnaW5zOiBjcmVhdGVWaXRlUGx1Z2lucyhlbnYsIGNvbW1hbmQgPT09ICdidWlsZCcpLFxuICAgIHJlc29sdmU6IHtcbiAgICAgIC8vIGh0dHBzOi8vY24udml0ZWpzLmRldi9jb25maWcvI3Jlc29sdmUtYWxpYXNcbiAgICAgIGFsaWFzOiBhbGlhcyxcbiAgICAgIC8vIFx1NUJGQ1x1NTE2NVx1NjVGNlx1NjBGM1x1ODk4MVx1NzcwMVx1NzU2NVx1NzY4NFx1NjI2OVx1NUM1NVx1NTQwRFx1NTIxN1x1ODg2OFxuICAgICAgLy8gaHR0cHM6Ly9jbi52aXRlanMuZGV2L2NvbmZpZy8jcmVzb2x2ZS1leHRlbnNpb25zXG4gICAgICBleHRlbnNpb25zOiBbJy5tanMnLCAnLmpzJywgJy50cycsICcuanN4JywgJy50c3gnLCAnLmpzb24nLCAnLnZ1ZSddXG4gICAgfSxcbiAgICBjc3M6IHtcbiAgICAgIGRldlNvdXJjZW1hcDogdHJ1ZSAvL1x1NUYwMFx1NTNEMVx1NkEyMVx1NUYwRlx1NjVGNlx1NTQyRlx1NzUyOFxuICAgIH0sXG4gICAgYmFzZTogZW52LlZJVEVfQVBQX1JPVVRFUl9QUkVGSVgsXG4gICAgLy8gXHU2MjUzXHU1MzA1XHU5MTREXHU3RjZFXG4gICAgYnVpbGQ6IHtcbiAgICAgIHNvdXJjZW1hcDogY29tbWFuZCA9PT0gJ2J1aWxkJyA/IGZhbHNlIDogJ2lubGluZScsXG4gICAgICBvdXREaXI6ICdkaXN0JywgLy9cdTYzMDdcdTVCOUFcdThGOTNcdTUxRkFcdTc2RUVcdTVGNTVcbiAgICAgIGFzc2V0c0RpcjogJ2Fzc2V0cycsIC8vXHU2MzA3XHU1QjlBXHU5NzU5XHU2MDAxXHU4RDQ0XHU2RTkwXHU1QjU4XHU1MEE4XHU3NkVFXHU1RjU1KFx1NzZGOFx1NUJGOVx1NEU4RW91dERpcilcbiAgICAgIGNodW5rU2l6ZVdhcm5pbmdMaW1pdDogMjAwMCwgLy9BZGp1c3QgdGhlIGxpbWl0IHRvIHlvdXIgZGVzaXJlZCB2YWx1ZSBpbiBLQlxuICAgICAgLy8gXHU1QzA2anNcdTMwMDFjc3NcdTY1ODdcdTRFRjZcdTUyMDZcdTc5QkJcdTUyMzBcdTUzNTVcdTcyRUNcdTY1ODdcdTRFRjZcdTU5MzlcbiAgICAgIHJvbGx1cE9wdGlvbnM6IHtcbiAgICAgICAgb3V0cHV0OiB7XG4gICAgICAgICAgY2h1bmtGaWxlTmFtZXM6ICdzdGF0aWMvanMvW25hbWVdLVtoYXNoXS5qcycsXG4gICAgICAgICAgZW50cnlGaWxlTmFtZXM6ICdzdGF0aWMvanMvW25hbWVdLVtoYXNoXS5qcycsXG4gICAgICAgICAgYXNzZXRGaWxlTmFtZXM6ICdzdGF0aWMvW2V4dF0vW25hbWVdLVtoYXNoXS5bZXh0XSdcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgLy8gdml0ZSBcdTc2RjhcdTUxNzNcdTkxNERcdTdGNkVcbiAgICBzZXJ2ZXI6IHtcbiAgICAgIHBvcnQ6IDg4ODcsXG4gICAgICBob3N0OiB0cnVlLFxuICAgICAgb3BlbjogdHJ1ZSxcbiAgICAgIHByb3h5OiB7XG4gICAgICAgIC8vIGh0dHBzOi8vY24udml0ZWpzLmRldi9jb25maWcvI3NlcnZlci1wcm94eVxuICAgICAgICAnL2Rldi1hcGknOiB7XG4gICAgICAgICAgdGFyZ2V0OiBlbnYuVklURV9BUFBfQVBJX0hPU1QsXG4gICAgICAgICAgY2hhbmdlT3JpZ2luOiB0cnVlLFxuICAgICAgICAgIHJld3JpdGU6IChwYXRoKSA9PiBwYXRoLnJlcGxhY2UoL15cXC9kZXYtYXBpLywgJycpXG4gICAgICAgIH0sXG4gICAgICAgICcvbXNnaHViJzoge1xuICAgICAgICAgIHRhcmdldDogZW52LlZJVEVfQVBQX0FQSV9IT1NULFxuICAgICAgICAgIHdzOiB0cnVlLFxuICAgICAgICAgIHJld3JpdGU6IChwYXRoKSA9PiBwYXRoLnJlcGxhY2UoL15cXC9tc2dIdWIvLCAnJylcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSlcbiIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiQzpcXFxcVXNlcnNcXFxcMzMxMzRcXFxcRGVza3RvcFxcXFxnaXRcdTRFRDNcdTVFOTNcXFxcXHU5MEQxXHU1RERFXHU2QkQ0XHU0RTlBXHU4RkVBXFxcXHpoZW5nemhvdS1ieWQtbG1zLXZ1ZVxcXFx2aXRlXFxcXHBsdWdpbnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkM6XFxcXFVzZXJzXFxcXDMzMTM0XFxcXERlc2t0b3BcXFxcZ2l0XHU0RUQzXHU1RTkzXFxcXFx1OTBEMVx1NURERVx1NkJENFx1NEU5QVx1OEZFQVxcXFx6aGVuZ3pob3UtYnlkLWxtcy12dWVcXFxcdml0ZVxcXFxwbHVnaW5zXFxcXGluZGV4LmpzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9DOi9Vc2Vycy8zMzEzNC9EZXNrdG9wL2dpdCVFNCVCQiU5MyVFNSVCQSU5My8lRTklODMlOTElRTUlQjclOUUlRTYlQUYlOTQlRTQlQkElOUElRTglQkYlQUEvemhlbmd6aG91LWJ5ZC1sbXMtdnVlL3ZpdGUvcGx1Z2lucy9pbmRleC5qc1wiO2ltcG9ydCB2dWUgZnJvbSAnQHZpdGVqcy9wbHVnaW4tdnVlJ1xuXG5pbXBvcnQgY3JlYXRlQXV0b0ltcG9ydCBmcm9tICcuL2F1dG8taW1wb3J0J1xuaW1wb3J0IGNyZWF0ZVN2Z0ljb24gZnJvbSAnLi9zdmctaWNvbidcbmltcG9ydCBjcmVhdGVDb21wcmVzc2lvbiBmcm9tICcuL2NvbXByZXNzaW9uJ1xuaW1wb3J0IGNyZWF0ZVNldHVwRXh0ZW5kIGZyb20gJy4vc2V0dXAtZXh0ZW5kJ1xuLy8gaW1wb3J0IHsgY3JlYXRlU3R5bGVJbXBvcnRQbHVnaW4sIFZ4ZVRhYmxlUmVzb2x2ZSB9IGZyb20gJ3ZpdGUtcGx1Z2luLXN0eWxlLWltcG9ydCdcbmltcG9ydCB7IGxhenlJbXBvcnQsIFZ4ZVJlc29sdmVyIH0gZnJvbSAndml0ZS1wbHVnaW4tbGF6eS1pbXBvcnQnXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNyZWF0ZVZpdGVQbHVnaW5zKHZpdGVFbnYsIGlzQnVpbGQgPSBmYWxzZSkge1xuICBjb25zdCB2aXRlUGx1Z2lucyA9IFt2dWUoKV1cbiAgdml0ZVBsdWdpbnMucHVzaChjcmVhdGVBdXRvSW1wb3J0KCkpXG4gIHZpdGVQbHVnaW5zLnB1c2goY3JlYXRlU2V0dXBFeHRlbmQoKSlcbiAgdml0ZVBsdWdpbnMucHVzaChjcmVhdGVTdmdJY29uKGlzQnVpbGQpKVxuICBpc0J1aWxkICYmIHZpdGVQbHVnaW5zLnB1c2goLi4uY3JlYXRlQ29tcHJlc3Npb24odml0ZUVudikpXG5cbiAgLy8gdml0ZVBsdWdpbnMucHVzaChcbiAgLy8gICBjcmVhdGVTdHlsZUltcG9ydFBsdWdpbih7XG4gIC8vICAgICByZXNvbHZlczogW1Z4ZVRhYmxlUmVzb2x2ZSgpXVxuICAvLyAgIH0pXG4gIC8vIClcblxuICAvLyBWeGUgXHU2MzA5XHU5NzAwXHU1QkZDXHU1MTY1XG4gIHZpdGVQbHVnaW5zLnB1c2goXG4gICAgbGF6eUltcG9ydCh7XG4gICAgICByZXNvbHZlcnM6IFtcbiAgICAgICAgVnhlUmVzb2x2ZXIoe1xuICAgICAgICAgIGxpYnJhcnlOYW1lOiAndnhlLXRhYmxlJ1xuICAgICAgICB9KSxcbiAgICAgICAgVnhlUmVzb2x2ZXIoe1xuICAgICAgICAgIGxpYnJhcnlOYW1lOiAndnhlLXBjLXVpJ1xuICAgICAgICB9KVxuICAgICAgXVxuICAgIH0pXG4gIClcbiAgcmV0dXJuIHZpdGVQbHVnaW5zXG59XG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIkM6XFxcXFVzZXJzXFxcXDMzMTM0XFxcXERlc2t0b3BcXFxcZ2l0XHU0RUQzXHU1RTkzXFxcXFx1OTBEMVx1NURERVx1NkJENFx1NEU5QVx1OEZFQVxcXFx6aGVuZ3pob3UtYnlkLWxtcy12dWVcXFxcdml0ZVxcXFxwbHVnaW5zXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCJDOlxcXFxVc2Vyc1xcXFwzMzEzNFxcXFxEZXNrdG9wXFxcXGdpdFx1NEVEM1x1NUU5M1xcXFxcdTkwRDFcdTVEREVcdTZCRDRcdTRFOUFcdThGRUFcXFxcemhlbmd6aG91LWJ5ZC1sbXMtdnVlXFxcXHZpdGVcXFxccGx1Z2luc1xcXFxhdXRvLWltcG9ydC5qc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vQzovVXNlcnMvMzMxMzQvRGVza3RvcC9naXQlRTQlQkIlOTMlRTUlQkElOTMvJUU5JTgzJTkxJUU1JUI3JTlFJUU2JUFGJTk0JUU0JUJBJTlBJUU4JUJGJUFBL3poZW5nemhvdS1ieWQtbG1zLXZ1ZS92aXRlL3BsdWdpbnMvYXV0by1pbXBvcnQuanNcIjtpbXBvcnQgYXV0b0ltcG9ydCBmcm9tICd1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlJ1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBjcmVhdGVBdXRvSW1wb3J0KCkge1xuICByZXR1cm4gYXV0b0ltcG9ydCh7XG4gICAgaW1wb3J0czogW1xuICAgICAgJ3Z1ZScsXG4gICAgICAndnVlLXJvdXRlcicsXG4gICAgICAncGluaWEnXG4gICAgXSxcbiAgICBkdHM6IFwic3JjL2F1dG8taW1wb3J0LmQudHNcIiAvLyBcdTc1MUZcdTYyMTAgYGF1dG8taW1wb3J0LmQudHNgIFx1NTE2OFx1NUM0MFx1NThGMFx1NjYwRVxuICB9KVxufSIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiQzpcXFxcVXNlcnNcXFxcMzMxMzRcXFxcRGVza3RvcFxcXFxnaXRcdTRFRDNcdTVFOTNcXFxcXHU5MEQxXHU1RERFXHU2QkQ0XHU0RTlBXHU4RkVBXFxcXHpoZW5nemhvdS1ieWQtbG1zLXZ1ZVxcXFx2aXRlXFxcXHBsdWdpbnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkM6XFxcXFVzZXJzXFxcXDMzMTM0XFxcXERlc2t0b3BcXFxcZ2l0XHU0RUQzXHU1RTkzXFxcXFx1OTBEMVx1NURERVx1NkJENFx1NEU5QVx1OEZFQVxcXFx6aGVuZ3pob3UtYnlkLWxtcy12dWVcXFxcdml0ZVxcXFxwbHVnaW5zXFxcXHN2Zy1pY29uLmpzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9DOi9Vc2Vycy8zMzEzNC9EZXNrdG9wL2dpdCVFNCVCQiU5MyVFNSVCQSU5My8lRTklODMlOTElRTUlQjclOUUlRTYlQUYlOTQlRTQlQkElOUElRTglQkYlQUEvemhlbmd6aG91LWJ5ZC1sbXMtdnVlL3ZpdGUvcGx1Z2lucy9zdmctaWNvbi5qc1wiO2ltcG9ydCB7IGNyZWF0ZVN2Z0ljb25zUGx1Z2luIH0gZnJvbSAndml0ZS1wbHVnaW4tc3ZnLWljb25zJ1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlU3ZnSWNvbihpc0J1aWxkKSB7XG4gIHJldHVybiBjcmVhdGVTdmdJY29uc1BsdWdpbih7XG4gICAgaWNvbkRpcnM6IFtwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgJ3NyYy9hc3NldHMvaWNvbnMvc3ZnJyldLFxuICAgIHN5bWJvbElkOiAnaWNvbi1bZGlyXS1bbmFtZV0nLFxuICAgIHN2Z29PcHRpb25zOiBpc0J1aWxkXG4gIH0pXG59XG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIkM6XFxcXFVzZXJzXFxcXDMzMTM0XFxcXERlc2t0b3BcXFxcZ2l0XHU0RUQzXHU1RTkzXFxcXFx1OTBEMVx1NURERVx1NkJENFx1NEU5QVx1OEZFQVxcXFx6aGVuZ3pob3UtYnlkLWxtcy12dWVcXFxcdml0ZVxcXFxwbHVnaW5zXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCJDOlxcXFxVc2Vyc1xcXFwzMzEzNFxcXFxEZXNrdG9wXFxcXGdpdFx1NEVEM1x1NUU5M1xcXFxcdTkwRDFcdTVEREVcdTZCRDRcdTRFOUFcdThGRUFcXFxcemhlbmd6aG91LWJ5ZC1sbXMtdnVlXFxcXHZpdGVcXFxccGx1Z2luc1xcXFxjb21wcmVzc2lvbi5qc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vQzovVXNlcnMvMzMxMzQvRGVza3RvcC9naXQlRTQlQkIlOTMlRTUlQkElOTMvJUU5JTgzJTkxJUU1JUI3JTlFJUU2JUFGJTk0JUU0JUJBJTlBJUU4JUJGJUFBL3poZW5nemhvdS1ieWQtbG1zLXZ1ZS92aXRlL3BsdWdpbnMvY29tcHJlc3Npb24uanNcIjtpbXBvcnQgY29tcHJlc3Npb24gZnJvbSAndml0ZS1wbHVnaW4tY29tcHJlc3Npb24nXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNyZWF0ZUNvbXByZXNzaW9uKGVudikge1xuICBjb25zdCB7IFZJVEVfQlVJTERfQ09NUFJFU1MgfSA9IGVudlxuICBjb25zdCBwbHVnaW4gPSBbXVxuICBpZiAoVklURV9CVUlMRF9DT01QUkVTUykge1xuICAgIGNvbnN0IGNvbXByZXNzTGlzdCA9IFZJVEVfQlVJTERfQ09NUFJFU1Muc3BsaXQoJywnKVxuICAgIGlmIChjb21wcmVzc0xpc3QuaW5jbHVkZXMoJ2d6aXAnKSkge1xuICAgICAgLy8gaHR0cDovL2RvYy5ydW95aS52aXAvcnVveWktdnVlL290aGVyL2ZhcS5odG1sI1x1NEY3Rlx1NzUyOGd6aXBcdTg5RTNcdTUzOEJcdTdGMjlcdTk3NTlcdTYwMDFcdTY1ODdcdTRFRjZcbiAgICAgIHBsdWdpbi5wdXNoKFxuICAgICAgICBjb21wcmVzc2lvbih7XG4gICAgICAgICAgYWxnb3JpdGhtOiAnZ3ppcCcsXG4gICAgICAgICAgdGhyZXNob2xkOiAxMDI0MCwvLz49MTBrYlx1NzY4NFx1NjU4N1x1NEVGNlx1OEZEQlx1ODg0Q1x1NTM4Qlx1N0YyOVxuICAgICAgICAgIHZlcmJvc2U6IGZhbHNlLFxuICAgICAgICAgIGRlbGV0ZU9yaWdpbkZpbGU6IGZhbHNlXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfVxuICAgIGlmIChjb21wcmVzc0xpc3QuaW5jbHVkZXMoJ2Jyb3RsaScpKSB7XG4gICAgICBwbHVnaW4ucHVzaChcbiAgICAgICAgY29tcHJlc3Npb24oe1xuICAgICAgICAgIGV4dDogJy5icicsXG4gICAgICAgICAgYWxnb3JpdGhtOiAnYnJvdGxpQ29tcHJlc3MnLFxuICAgICAgICAgIGRlbGV0ZU9yaWdpbkZpbGU6IGZhbHNlXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgfVxuICB9XG4gIHJldHVybiBwbHVnaW5cbn1cbiIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiQzpcXFxcVXNlcnNcXFxcMzMxMzRcXFxcRGVza3RvcFxcXFxnaXRcdTRFRDNcdTVFOTNcXFxcXHU5MEQxXHU1RERFXHU2QkQ0XHU0RTlBXHU4RkVBXFxcXHpoZW5nemhvdS1ieWQtbG1zLXZ1ZVxcXFx2aXRlXFxcXHBsdWdpbnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkM6XFxcXFVzZXJzXFxcXDMzMTM0XFxcXERlc2t0b3BcXFxcZ2l0XHU0RUQzXHU1RTkzXFxcXFx1OTBEMVx1NURERVx1NkJENFx1NEU5QVx1OEZFQVxcXFx6aGVuZ3pob3UtYnlkLWxtcy12dWVcXFxcdml0ZVxcXFxwbHVnaW5zXFxcXHNldHVwLWV4dGVuZC5qc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vQzovVXNlcnMvMzMxMzQvRGVza3RvcC9naXQlRTQlQkIlOTMlRTUlQkElOTMvJUU5JTgzJTkxJUU1JUI3JTlFJUU2JUFGJTk0JUU0JUJBJTlBJUU4JUJGJUFBL3poZW5nemhvdS1ieWQtbG1zLXZ1ZS92aXRlL3BsdWdpbnMvc2V0dXAtZXh0ZW5kLmpzXCI7aW1wb3J0IHNldHVwRXh0ZW5kIGZyb20gJ3ZpdGUtcGx1Z2luLXZ1ZS1zZXR1cC1leHRlbmQnXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNyZWF0ZVNldHVwRXh0ZW5kKCkge1xuXHRyZXR1cm4gc2V0dXBFeHRlbmQoKVxufSJdLAogICJtYXBwaW5ncyI6ICI7QUFBZ2EsU0FBUyxjQUFjLGVBQWU7QUFDdGMsT0FBT0EsV0FBVTs7O0FDRDhhLE9BQU8sU0FBUzs7O0FDQUosT0FBTyxnQkFBZ0I7QUFFbmQsU0FBUixtQkFBb0M7QUFDekMsU0FBTyxXQUFXO0FBQUEsSUFDaEIsU0FBUztBQUFBLE1BQ1A7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLElBQ0Y7QUFBQSxJQUNBLEtBQUs7QUFBQTtBQUFBLEVBQ1AsQ0FBQztBQUNIOzs7QUNYcWMsU0FBUyw0QkFBNEI7QUFDMWUsT0FBTyxVQUFVO0FBRUYsU0FBUixjQUErQixTQUFTO0FBQzdDLFNBQU8scUJBQXFCO0FBQUEsSUFDMUIsVUFBVSxDQUFDLEtBQUssUUFBUSxRQUFRLElBQUksR0FBRyxzQkFBc0IsQ0FBQztBQUFBLElBQzlELFVBQVU7QUFBQSxJQUNWLGFBQWE7QUFBQSxFQUNmLENBQUM7QUFDSDs7O0FDVDJjLE9BQU8saUJBQWlCO0FBRXBkLFNBQVIsa0JBQW1DLEtBQUs7QUFDN0MsUUFBTSxFQUFFLG9CQUFvQixJQUFJO0FBQ2hDLFFBQU0sU0FBUyxDQUFDO0FBQ2hCLE1BQUkscUJBQXFCO0FBQ3ZCLFVBQU0sZUFBZSxvQkFBb0IsTUFBTSxHQUFHO0FBQ2xELFFBQUksYUFBYSxTQUFTLE1BQU0sR0FBRztBQUVqQyxhQUFPO0FBQUEsUUFDTCxZQUFZO0FBQUEsVUFDVixXQUFXO0FBQUEsVUFDWCxXQUFXO0FBQUE7QUFBQSxVQUNYLFNBQVM7QUFBQSxVQUNULGtCQUFrQjtBQUFBLFFBQ3BCLENBQUM7QUFBQSxNQUNIO0FBQUEsSUFDRjtBQUNBLFFBQUksYUFBYSxTQUFTLFFBQVEsR0FBRztBQUNuQyxhQUFPO0FBQUEsUUFDTCxZQUFZO0FBQUEsVUFDVixLQUFLO0FBQUEsVUFDTCxXQUFXO0FBQUEsVUFDWCxrQkFBa0I7QUFBQSxRQUNwQixDQUFDO0FBQUEsTUFDSDtBQUFBLElBQ0Y7QUFBQSxFQUNGO0FBQ0EsU0FBTztBQUNUOzs7QUM3QjZjLE9BQU8saUJBQWlCO0FBRXRkLFNBQVIsb0JBQXFDO0FBQzNDLFNBQU8sWUFBWTtBQUNwQjs7O0FKR0EsU0FBUyxZQUFZLG1CQUFtQjtBQUV6QixTQUFSLGtCQUFtQyxTQUFTLFVBQVUsT0FBTztBQUNsRSxRQUFNLGNBQWMsQ0FBQyxJQUFJLENBQUM7QUFDMUIsY0FBWSxLQUFLLGlCQUFpQixDQUFDO0FBQ25DLGNBQVksS0FBSyxrQkFBa0IsQ0FBQztBQUNwQyxjQUFZLEtBQUssY0FBYyxPQUFPLENBQUM7QUFDdkMsYUFBVyxZQUFZLEtBQUssR0FBRyxrQkFBa0IsT0FBTyxDQUFDO0FBU3pELGNBQVk7QUFBQSxJQUNWLFdBQVc7QUFBQSxNQUNULFdBQVc7QUFBQSxRQUNULFlBQVk7QUFBQSxVQUNWLGFBQWE7QUFBQSxRQUNmLENBQUM7QUFBQSxRQUNELFlBQVk7QUFBQSxVQUNWLGFBQWE7QUFBQSxRQUNmLENBQUM7QUFBQSxNQUNIO0FBQUEsSUFDRixDQUFDO0FBQUEsRUFDSDtBQUNBLFNBQU87QUFDVDs7O0FEcENBLElBQU0sbUNBQW1DO0FBS3pDLElBQU8sc0JBQVEsYUFBYSxDQUFDLEVBQUUsTUFBTSxRQUFRLE1BQU07QUFDakQsUUFBTSxNQUFNLFFBQVEsTUFBTSxRQUFRLElBQUksQ0FBQztBQUV2QyxRQUFNLFFBQVE7QUFBQTtBQUFBLElBRVosS0FBS0MsTUFBSyxRQUFRLGtDQUFXLElBQUk7QUFBQTtBQUFBLElBRWpDLEtBQUtBLE1BQUssUUFBUSxrQ0FBVyxPQUFPO0FBQUEsRUFDdEM7QUFDQSxNQUFJLFlBQVksU0FBUztBQUV2QixVQUFNLFVBQVUsSUFBSTtBQUFBLEVBQ3RCO0FBQ0EsU0FBTztBQUFBLElBQ0wsU0FBUyxrQkFBa0IsS0FBSyxZQUFZLE9BQU87QUFBQSxJQUNuRCxTQUFTO0FBQUE7QUFBQSxNQUVQO0FBQUE7QUFBQTtBQUFBLE1BR0EsWUFBWSxDQUFDLFFBQVEsT0FBTyxPQUFPLFFBQVEsUUFBUSxTQUFTLE1BQU07QUFBQSxJQUNwRTtBQUFBLElBQ0EsS0FBSztBQUFBLE1BQ0gsY0FBYztBQUFBO0FBQUEsSUFDaEI7QUFBQSxJQUNBLE1BQU0sSUFBSTtBQUFBO0FBQUEsSUFFVixPQUFPO0FBQUEsTUFDTCxXQUFXLFlBQVksVUFBVSxRQUFRO0FBQUEsTUFDekMsUUFBUTtBQUFBO0FBQUEsTUFDUixXQUFXO0FBQUE7QUFBQSxNQUNYLHVCQUF1QjtBQUFBO0FBQUE7QUFBQSxNQUV2QixlQUFlO0FBQUEsUUFDYixRQUFRO0FBQUEsVUFDTixnQkFBZ0I7QUFBQSxVQUNoQixnQkFBZ0I7QUFBQSxVQUNoQixnQkFBZ0I7QUFBQSxRQUNsQjtBQUFBLE1BQ0Y7QUFBQSxJQUNGO0FBQUE7QUFBQSxJQUVBLFFBQVE7QUFBQSxNQUNOLE1BQU07QUFBQSxNQUNOLE1BQU07QUFBQSxNQUNOLE1BQU07QUFBQSxNQUNOLE9BQU87QUFBQTtBQUFBLFFBRUwsWUFBWTtBQUFBLFVBQ1YsUUFBUSxJQUFJO0FBQUEsVUFDWixjQUFjO0FBQUEsVUFDZCxTQUFTLENBQUNBLFVBQVNBLE1BQUssUUFBUSxjQUFjLEVBQUU7QUFBQSxRQUNsRDtBQUFBLFFBQ0EsV0FBVztBQUFBLFVBQ1QsUUFBUSxJQUFJO0FBQUEsVUFDWixJQUFJO0FBQUEsVUFDSixTQUFTLENBQUNBLFVBQVNBLE1BQUssUUFBUSxhQUFhLEVBQUU7QUFBQSxRQUNqRDtBQUFBLE1BQ0Y7QUFBQSxJQUNGO0FBQUEsRUFDRjtBQUNGLENBQUM7IiwKICAibmFtZXMiOiBbInBhdGgiLCAicGF0aCJdCn0K