123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198 |
- // vite.config.ts
- import fs from "node:fs";
- import path2 from "node:path";
- import process2 from "node:process";
- import { defineConfig, loadEnv } from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/vite@5.4.2_@types+node@22.5.2_less@4.2.0_sass@1.77.8_terser@5.31.6/node_modules/vite/dist/node/index.js";
- // vite/plugins.ts
- import path from "node:path";
- import process from "node:process";
- import VueRouter from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/unplugin-vue-router@0.10.7_rollup@4.21.2_vue-router@4.4.3_vue@3.4.38_typescript@5.5.4___vue@3.4.38_typescript@5.5.4_/node_modules/unplugin-vue-router/dist/vite.js";
- import vue from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/@vitejs+plugin-vue@5.1.3_vite@5.4.2_@types+node@22.5.2_less@4.2.0_sass@1.77.8_terser@5.31.6___4repjllq6k2f2ar6knafw5fra4/node_modules/@vitejs/plugin-vue/dist/index.mjs";
- import vueJsx from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/@vitejs+plugin-vue-jsx@4.0.1_vite@5.4.2_@types+node@22.5.2_less@4.2.0_sass@1.77.8_terser@5.31_dlwz5wc7ah7vjzeedawr5fhwfq/node_modules/@vitejs/plugin-vue-jsx/dist/index.mjs";
- import vueLegacy from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/@vitejs+plugin-legacy@5.4.2_terser@5.31.6_vite@5.4.2_@types+node@22.5.2_less@4.2.0_sass@1.77.8_terser@5.31.6_/node_modules/@vitejs/plugin-legacy/dist/index.mjs";
- import VueDevTools from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/vite-plugin-vue-devtools@7.3.9_rollup@4.21.2_vite@5.4.2_@types+node@22.5.2_less@4.2.0_sass@1._qn2j5wbdvchbxqovwadctneqtu/node_modules/vite-plugin-vue-devtools/dist/vite.mjs";
- import autoImport from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/unplugin-auto-import@0.18.2_@vueuse+core@11.0.3_vue@3.4.38_typescript@5.5.4___rollup@4.21.2/node_modules/unplugin-auto-import/dist/vite.js";
- import { VueRouterAutoImports } from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/unplugin-vue-router@0.10.7_rollup@4.21.2_vue-router@4.4.3_vue@3.4.38_typescript@5.5.4___vue@3.4.38_typescript@5.5.4_/node_modules/unplugin-vue-router/dist/index.js";
- import components from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/unplugin-vue-components@0.27.4_@babel+parser@7.25.6_rollup@4.21.2_vue@3.4.38_typescript@5.5.4_/node_modules/unplugin-vue-components/dist/vite.js";
- import Unocss from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/unocss@0.62.3_postcss@8.4.42_rollup@4.21.2_vite@5.4.2_@types+node@22.5.2_less@4.2.0_sass@1.77.8_terser@5.31.6_/node_modules/unocss/dist/vite.mjs";
- import { createSvgIconsPlugin } from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/vite-plugin-svg-icons@2.0.1_vite@5.4.2_@types+node@22.5.2_less@4.2.0_sass@1.77.8_terser@5.31.6_/node_modules/vite-plugin-svg-icons/dist/index.mjs";
- import { vitePluginFakeServer } from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/vite-plugin-fake-server@2.1.1/node_modules/vite-plugin-fake-server/dist/index.mjs";
- import { compression } from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/vite-plugin-compression2@1.2.0_rollup@4.21.2/node_modules/vite-plugin-compression2/dist/index.mjs";
- import Archiver from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/vite-plugin-archiver@0.1.1/node_modules/vite-plugin-archiver/dist/index.js";
- import TurboConsole from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/unplugin-turbo-console@1.10.1_@babel+parser@7.25.6_esbuild@0.23.1_rollup@4.21.2_vite@5.4.2_@t_dydgrmrmjp3ucr7a367fsm5iiq/node_modules/unplugin-turbo-console/dist/vite.mjs";
- import banner from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/vite-plugin-banner@0.7.1/node_modules/vite-plugin-banner/dist/index.mjs";
- import boxen from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/boxen@8.0.1/node_modules/boxen/index.js";
- import picocolors from "file:///E:/WorkSpace/Web/insomnia-cognition-h5/node_modules/.pnpm/picocolors@1.0.1/node_modules/picocolors/picocolors.js";
- function createVitePlugins(viteEnv, isBuild = false) {
- const vitePlugins = [
- VueRouter({
- routesFolder: "./src/views",
- dts: "./src/types/typed-router.d.ts",
- exclude: ["**/components", "**/_*/**", "**/_*"]
- }),
- vue(),
- vueJsx(),
- vueLegacy({
- renderLegacyChunks: false,
- modernPolyfills: [
- "es.array.at"
- ]
- }),
- // https://github.com/vuejs/devtools-next
- viteEnv.VITE_OPEN_DEVTOOLS === "true" && VueDevTools(),
- // https://github.com/unplugin/unplugin-auto-import
- autoImport({
- imports: [
- "vue",
- "pinia",
- VueRouterAutoImports,
- {
- "vue-router/auto": ["useLink"]
- }
- ],
- dts: "./src/types/auto-imports.d.ts",
- dirs: [
- "./src/utils/composables/**"
- ]
- }),
- // https://github.com/unplugin/unplugin-vue-components
- components({
- dirs: [
- "src/components/*",
- "src/ui-kit"
- ],
- deep: false,
- include: [/\.vue$/, /\.vue\?vue/, /\.tsx$/],
- dts: "./src/types/components.d.ts"
- }),
- Unocss(),
- // https://github.com/vbenjs/vite-plugin-svg-icons
- createSvgIconsPlugin({
- iconDirs: [path.resolve(process.cwd(), "src/assets/icons/")],
- symbolId: "icon-[dir]-[name]",
- svgoOptions: isBuild
- }),
- // https://github.com/condorheroblog/vite-plugin-fake-server
- vitePluginFakeServer({
- logger: !isBuild,
- include: "src/mock",
- infixName: false,
- enableProd: isBuild && viteEnv.VITE_BUILD_MOCK === "true"
- }),
- // https://github.com/nonzzz/vite-plugin-compression
- viteEnv.VITE_BUILD_COMPRESS?.split(",").includes("gzip") && compression(),
- viteEnv.VITE_BUILD_COMPRESS?.split(",").includes("brotli") && compression({
- exclude: [/\.(br)$/, /\.(gz)$/],
- algorithm: "brotliCompress"
- }),
- viteEnv.VITE_BUILD_ARCHIVE && Archiver({
- archiveType: viteEnv.VITE_BUILD_ARCHIVE
- }),
- // https://github.com/unplugin/unplugin-turbo-console
- TurboConsole(),
- // https://github.com/chengpeiquan/vite-plugin-banner
- banner(`
- /**
- * \u7531 Fantastic-mobile \u63D0\u4F9B\u6280\u672F\u652F\u6301
- * Powered by Fantastic-mobile
- * https://fantastic-mobile.hurui.me/
- */
- `),
- {
- name: "vite-plugin-debug-plugin",
- transform: (code, id) => {
- if (/src\/main.ts$/.test(id)) {
- if (viteEnv.VITE_APP_DEBUG_TOOL === "eruda") {
- code = code.concat(`
- import eruda from 'eruda'
- eruda.init()
- `);
- } else if (viteEnv.VITE_APP_DEBUG_TOOL === "vconsole") {
- code = code.concat(`
- import VConsole from 'vconsole'
- new VConsole()
- `);
- }
- return {
- code,
- map: null
- };
- }
- }
- },
- {
- name: "appInfo",
- apply: "serve",
- async buildStart() {
- const { bold, green, cyan, bgGreen, underline } = picocolors;
- console.log(
- boxen(
- `${bold(green(`\u7531 ${bgGreen("Fantastic-mobile")} \u9A71\u52A8`))}
- ${underline("https://fantastic-mobile.hurui.me")}
- \u5F53\u524D\u4F7F\u7528\uFF1A${cyan("\u57FA\u7840\u7248")}`,
- {
- padding: 1,
- margin: 1,
- borderStyle: "double",
- textAlignment: "center"
- }
- )
- );
- }
- }
- ];
- return vitePlugins;
- }
- // vite.config.ts
- var __vite_injected_original_dirname = "E:\\WorkSpace\\Web\\insomnia-cognition-h5";
- var vite_config_default = ({ mode, command }) => {
- const env = loadEnv(mode, process2.cwd());
- const scssResources = [];
- fs.readdirSync("src/assets/styles/resources").forEach((dirname) => {
- if (fs.statSync(`src/assets/styles/resources/${dirname}`).isFile()) {
- scssResources.push(`@use "src/assets/styles/resources/${dirname}" as *;`);
- }
- });
- return defineConfig({
- base: "./",
- // 开发服务器选项 https://cn.vitejs.dev/config/server-options
- server: {
- open: true,
- port: 9e3,
- proxy: {
- "/proxy": {
- target: env.VITE_APP_API_BASE_URL,
- changeOrigin: command === "serve" && env.VITE_OPEN_PROXY === "true",
- rewrite: (path3) => path3.replace(/\/proxy/, "")
- }
- }
- },
- // 构建选项 https://cn.vitejs.dev/config/build-options
- build: {
- outDir: mode === "production" ? "dist" : `dist-${mode}`,
- sourcemap: env.VITE_BUILD_SOURCEMAP === "true"
- },
- plugins: createVitePlugins(env, command === "build"),
- resolve: {
- alias: {
- "@": path2.resolve(__vite_injected_original_dirname, "src"),
- "#": path2.resolve(__vite_injected_original_dirname, "src/types")
- }
- },
- css: {
- preprocessorOptions: {
- scss: {
- additionalData: scssResources.join("")
- }
- }
- }
- });
- };
- export {
- vite_config_default as default
- };
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcudHMiLCAidml0ZS9wbHVnaW5zLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiRTpcXFxcV29ya1NwYWNlXFxcXFdlYlxcXFxpbnNvbW5pYS1jb2duaXRpb24taDVcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkU6XFxcXFdvcmtTcGFjZVxcXFxXZWJcXFxcaW5zb21uaWEtY29nbml0aW9uLWg1XFxcXHZpdGUuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9FOi9Xb3JrU3BhY2UvV2ViL2luc29tbmlhLWNvZ25pdGlvbi1oNS92aXRlLmNvbmZpZy50c1wiO2ltcG9ydCBmcyBmcm9tICdub2RlOmZzJ1xuaW1wb3J0IHBhdGggZnJvbSAnbm9kZTpwYXRoJ1xuaW1wb3J0IHByb2Nlc3MgZnJvbSAnbm9kZTpwcm9jZXNzJ1xuaW1wb3J0IHsgZGVmaW5lQ29uZmlnLCBsb2FkRW52IH0gZnJvbSAndml0ZSdcbmltcG9ydCBjcmVhdGVWaXRlUGx1Z2lucyBmcm9tICcuL3ZpdGUvcGx1Z2lucydcblxuLy8gaHR0cHM6Ly92aXRlanMuZGV2L2NvbmZpZy9cbmV4cG9ydCBkZWZhdWx0ICh7IG1vZGUsIGNvbW1hbmQgfSkgPT4ge1xuICBjb25zdCBlbnYgPSBsb2FkRW52KG1vZGUsIHByb2Nlc3MuY3dkKCkpXG4gIC8vIFx1NTE2OFx1NUM0MCBzY3NzIFx1OEQ0NFx1NkU5MFxuICBjb25zdCBzY3NzUmVzb3VyY2VzID0gW11cbiAgZnMucmVhZGRpclN5bmMoJ3NyYy9hc3NldHMvc3R5bGVzL3Jlc291cmNlcycpLmZvckVhY2goKGRpcm5hbWUpID0+IHtcbiAgICBpZiAoZnMuc3RhdFN5bmMoYHNyYy9hc3NldHMvc3R5bGVzL3Jlc291cmNlcy8ke2Rpcm5hbWV9YCkuaXNGaWxlKCkpIHtcbiAgICAgIHNjc3NSZXNvdXJjZXMucHVzaChgQHVzZSBcInNyYy9hc3NldHMvc3R5bGVzL3Jlc291cmNlcy8ke2Rpcm5hbWV9XCIgYXMgKjtgKVxuICAgIH1cbiAgfSlcbiAgcmV0dXJuIGRlZmluZUNvbmZpZyh7XG4gICAgYmFzZTogJy4vJyxcbiAgICAvLyBcdTVGMDBcdTUzRDFcdTY3MERcdTUyQTFcdTU2NjhcdTkwMDlcdTk4NzkgaHR0cHM6Ly9jbi52aXRlanMuZGV2L2NvbmZpZy9zZXJ2ZXItb3B0aW9uc1xuICAgIHNlcnZlcjoge1xuICAgICAgb3BlbjogdHJ1ZSxcbiAgICAgIHBvcnQ6IDkwMDAsXG4gICAgICBwcm94eToge1xuICAgICAgICAnL3Byb3h5Jzoge1xuICAgICAgICAgIHRhcmdldDogZW52LlZJVEVfQVBQX0FQSV9CQVNFX1VSTCxcbiAgICAgICAgICBjaGFuZ2VPcmlnaW46IGNvbW1hbmQgPT09ICdzZXJ2ZScgJiYgZW52LlZJVEVfT1BFTl9QUk9YWSA9PT0gJ3RydWUnLFxuICAgICAgICAgIHJld3JpdGU6IHBhdGggPT4gcGF0aC5yZXBsYWNlKC9cXC9wcm94eS8sICcnKSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICAvLyBcdTY3ODRcdTVFRkFcdTkwMDlcdTk4NzkgaHR0cHM6Ly9jbi52aXRlanMuZGV2L2NvbmZpZy9idWlsZC1vcHRpb25zXG4gICAgYnVpbGQ6IHtcbiAgICAgIG91dERpcjogbW9kZSA9PT0gJ3Byb2R1Y3Rpb24nID8gJ2Rpc3QnIDogYGRpc3QtJHttb2RlfWAsXG4gICAgICBzb3VyY2VtYXA6IGVudi5WSVRFX0JVSUxEX1NPVVJDRU1BUCA9PT0gJ3RydWUnLFxuICAgIH0sXG4gICAgcGx1Z2luczogY3JlYXRlVml0ZVBsdWdpbnMoZW52LCBjb21tYW5kID09PSAnYnVpbGQnKSxcbiAgICByZXNvbHZlOiB7XG4gICAgICBhbGlhczoge1xuICAgICAgICAnQCc6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICdzcmMnKSxcbiAgICAgICAgJyMnOiBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnc3JjL3R5cGVzJyksXG4gICAgICB9LFxuICAgIH0sXG4gICAgY3NzOiB7XG4gICAgICBwcmVwcm9jZXNzb3JPcHRpb25zOiB7XG4gICAgICAgIHNjc3M6IHtcbiAgICAgICAgICBhZGRpdGlvbmFsRGF0YTogc2Nzc1Jlc291cmNlcy5qb2luKCcnKSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSlcbn1cbiIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiRTpcXFxcV29ya1NwYWNlXFxcXFdlYlxcXFxpbnNvbW5pYS1jb2duaXRpb24taDVcXFxcdml0ZVwiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiRTpcXFxcV29ya1NwYWNlXFxcXFdlYlxcXFxpbnNvbW5pYS1jb2duaXRpb24taDVcXFxcdml0ZVxcXFxwbHVnaW5zLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9FOi9Xb3JrU3BhY2UvV2ViL2luc29tbmlhLWNvZ25pdGlvbi1oNS92aXRlL3BsdWdpbnMudHNcIjtpbXBvcnQgcGF0aCBmcm9tICdub2RlOnBhdGgnXG5pbXBvcnQgcHJvY2VzcyBmcm9tICdub2RlOnByb2Nlc3MnXG5pbXBvcnQgdHlwZSB7IFBsdWdpbk9wdGlvbiB9IGZyb20gJ3ZpdGUnXG5pbXBvcnQgVnVlUm91dGVyIGZyb20gJ3VucGx1Z2luLXZ1ZS1yb3V0ZXIvdml0ZSdcbmltcG9ydCB2dWUgZnJvbSAnQHZpdGVqcy9wbHVnaW4tdnVlJ1xuaW1wb3J0IHZ1ZUpzeCBmcm9tICdAdml0ZWpzL3BsdWdpbi12dWUtanN4J1xuaW1wb3J0IHZ1ZUxlZ2FjeSBmcm9tICdAdml0ZWpzL3BsdWdpbi1sZWdhY3knXG5pbXBvcnQgVnVlRGV2VG9vbHMgZnJvbSAndml0ZS1wbHVnaW4tdnVlLWRldnRvb2xzJ1xuaW1wb3J0IGF1dG9JbXBvcnQgZnJvbSAndW5wbHVnaW4tYXV0by1pbXBvcnQvdml0ZSdcbmltcG9ydCB7IFZ1ZVJvdXRlckF1dG9JbXBvcnRzIH0gZnJvbSAndW5wbHVnaW4tdnVlLXJvdXRlcidcbmltcG9ydCBjb21wb25lbnRzIGZyb20gJ3VucGx1Z2luLXZ1ZS1jb21wb25lbnRzL3ZpdGUnXG5pbXBvcnQgVW5vY3NzIGZyb20gJ3Vub2Nzcy92aXRlJ1xuaW1wb3J0IHsgY3JlYXRlU3ZnSWNvbnNQbHVnaW4gfSBmcm9tICd2aXRlLXBsdWdpbi1zdmctaWNvbnMnXG5pbXBvcnQgeyB2aXRlUGx1Z2luRmFrZVNlcnZlciB9IGZyb20gJ3ZpdGUtcGx1Z2luLWZha2Utc2VydmVyJ1xuaW1wb3J0IHsgY29tcHJlc3Npb24gfSBmcm9tICd2aXRlLXBsdWdpbi1jb21wcmVzc2lvbjInXG5pbXBvcnQgQXJjaGl2ZXIgZnJvbSAndml0ZS1wbHVnaW4tYXJjaGl2ZXInXG5pbXBvcnQgVHVyYm9Db25zb2xlIGZyb20gJ3VucGx1Z2luLXR1cmJvLWNvbnNvbGUvdml0ZSdcbmltcG9ydCBiYW5uZXIgZnJvbSAndml0ZS1wbHVnaW4tYmFubmVyJ1xuaW1wb3J0IGJveGVuIGZyb20gJ2JveGVuJ1xuaW1wb3J0IHBpY29jb2xvcnMgZnJvbSAncGljb2NvbG9ycydcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlVml0ZVBsdWdpbnModml0ZUVudiwgaXNCdWlsZCA9IGZhbHNlKSB7XG4gIGNvbnN0IHZpdGVQbHVnaW5zOiAoUGx1Z2luT3B0aW9uIHwgUGx1Z2luT3B0aW9uW10pW10gPSBbXG4gICAgVnVlUm91dGVyKHtcbiAgICAgIHJvdXRlc0ZvbGRlcjogJy4vc3JjL3ZpZXdzJyxcbiAgICAgIGR0czogJy4vc3JjL3R5cGVzL3R5cGVkLXJvdXRlci5kLnRzJyxcbiAgICAgIGV4Y2x1ZGU6IFsnKiovY29tcG9uZW50cycsICcqKi9fKi8qKicsICcqKi9fKiddLFxuICAgIH0pLFxuICAgIHZ1ZSgpLFxuICAgIHZ1ZUpzeCgpLFxuICAgIHZ1ZUxlZ2FjeSh7XG4gICAgICByZW5kZXJMZWdhY3lDaHVua3M6IGZhbHNlLFxuICAgICAgbW9kZXJuUG9seWZpbGxzOiBbXG4gICAgICAgICdlcy5hcnJheS5hdCcsXG4gICAgICBdLFxuICAgIH0pLFxuXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3Z1ZWpzL2RldnRvb2xzLW5leHRcbiAgICB2aXRlRW52LlZJVEVfT1BFTl9ERVZUT09MUyA9PT0gJ3RydWUnICYmIFZ1ZURldlRvb2xzKCksXG5cbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdW5wbHVnaW4vdW5wbHVnaW4tYXV0by1pbXBvcnRcbiAgICBhdXRvSW1wb3J0KHtcbiAgICAgIGltcG9ydHM6IFtcbiAgICAgICAgJ3Z1ZScsXG4gICAgICAgICdwaW5pYScsXG4gICAgICAgIFZ1ZVJvdXRlckF1dG9JbXBvcnRzLFxuICAgICAgICB7XG4gICAgICAgICAgJ3Z1ZS1yb3V0ZXIvYXV0byc6IFsndXNlTGluayddLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIGR0czogJy4vc3JjL3R5cGVzL2F1dG8taW1wb3J0cy5kLnRzJyxcbiAgICAgIGRpcnM6IFtcbiAgICAgICAgJy4vc3JjL3V0aWxzL2NvbXBvc2FibGVzLyoqJyxcbiAgICAgIF0sXG4gICAgfSksXG5cbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdW5wbHVnaW4vdW5wbHVnaW4tdnVlLWNvbXBvbmVudHNcbiAgICBjb21wb25lbnRzKHtcbiAgICAgIGRpcnM6IFtcbiAgICAgICAgJ3NyYy9jb21wb25lbnRzLyonLFxuICAgICAgICAnc3JjL3VpLWtpdCcsXG4gICAgICBdLFxuICAgICAgZGVlcDogZmFsc2UsXG4gICAgICBpbmNsdWRlOiBbL1xcLnZ1ZSQvLCAvXFwudnVlXFw/dnVlLywgL1xcLnRzeCQvXSxcbiAgICAgIGR0czogJy4vc3JjL3R5cGVzL2NvbXBvbmVudHMuZC50cycsXG4gICAgfSksXG5cbiAgICBVbm9jc3MoKSxcblxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS92YmVuanMvdml0ZS1wbHVnaW4tc3ZnLWljb25zXG4gICAgY3JlYXRlU3ZnSWNvbnNQbHVnaW4oe1xuICAgICAgaWNvbkRpcnM6IFtwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgJ3NyYy9hc3NldHMvaWNvbnMvJyldLFxuICAgICAgc3ltYm9sSWQ6ICdpY29uLVtkaXJdLVtuYW1lXScsXG4gICAgICBzdmdvT3B0aW9uczogaXNCdWlsZCxcbiAgICB9KSxcblxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9jb25kb3JoZXJvYmxvZy92aXRlLXBsdWdpbi1mYWtlLXNlcnZlclxuICAgIHZpdGVQbHVnaW5GYWtlU2VydmVyKHtcbiAgICAgIGxvZ2dlcjogIWlzQnVpbGQsXG4gICAgICBpbmNsdWRlOiAnc3JjL21vY2snLFxuICAgICAgaW5maXhOYW1lOiBmYWxzZSxcbiAgICAgIGVuYWJsZVByb2Q6IGlzQnVpbGQgJiYgdml0ZUVudi5WSVRFX0JVSUxEX01PQ0sgPT09ICd0cnVlJyxcbiAgICB9KSxcblxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub256enovdml0ZS1wbHVnaW4tY29tcHJlc3Npb25cbiAgICB2aXRlRW52LlZJVEVfQlVJTERfQ09NUFJFU1M/LnNwbGl0KCcsJykuaW5jbHVkZXMoJ2d6aXAnKSAmJiBjb21wcmVzc2lvbigpLFxuICAgIHZpdGVFbnYuVklURV9CVUlMRF9DT01QUkVTUz8uc3BsaXQoJywnKS5pbmNsdWRlcygnYnJvdGxpJykgJiYgY29tcHJlc3Npb24oe1xuICAgICAgZXhjbHVkZTogWy9cXC4oYnIpJC8sIC9cXC4oZ3opJC9dLFxuICAgICAgYWxnb3JpdGhtOiAnYnJvdGxpQ29tcHJlc3MnLFxuICAgIH0pLFxuXG4gICAgdml0ZUVudi5WSVRFX0JVSUxEX0FSQ0hJVkUgJiYgQXJjaGl2ZXIoe1xuICAgICAgYXJjaGl2ZVR5cGU6IHZpdGVFbnYuVklURV9CVUlMRF9BUkNISVZFLFxuICAgIH0pLFxuXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3VucGx1Z2luL3VucGx1Z2luLXR1cmJvLWNvbnNvbGVcbiAgICBUdXJib0NvbnNvbGUoKSxcblxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9jaGVuZ3BlaXF1YW4vdml0ZS1wbHVnaW4tYmFubmVyXG4gICAgYmFubmVyKGBcbi8qKlxuICogXHU3NTMxIEZhbnRhc3RpYy1tb2JpbGUgXHU2M0QwXHU0RjlCXHU2MjgwXHU2NzJGXHU2NTJGXHU2MzAxXG4gKiBQb3dlcmVkIGJ5IEZhbnRhc3RpYy1tb2JpbGVcbiAqIGh0dHBzOi8vZmFudGFzdGljLW1vYmlsZS5odXJ1aS5tZS9cbiAqL1xuICAgIGApLFxuXG4gICAge1xuICAgICAgbmFtZTogJ3ZpdGUtcGx1Z2luLWRlYnVnLXBsdWdpbicsXG4gICAgICB0cmFuc2Zvcm06IChjb2RlLCBpZCkgPT4ge1xuICAgICAgICBpZiAoL3NyY1xcL21haW4udHMkLy50ZXN0KGlkKSkge1xuICAgICAgICAgIGlmICh2aXRlRW52LlZJVEVfQVBQX0RFQlVHX1RPT0wgPT09ICdlcnVkYScpIHtcbiAgICAgICAgICAgIGNvZGUgPSBjb2RlLmNvbmNhdChgXG4gICAgICAgICAgICAgIGltcG9ydCBlcnVkYSBmcm9tICdlcnVkYSdcbiAgICAgICAgICAgICAgZXJ1ZGEuaW5pdCgpXG4gICAgICAgICAgICBgKVxuICAgICAgICAgIH1cbiAgICAgICAgICBlbHNlIGlmICh2aXRlRW52LlZJVEVfQVBQX0RFQlVHX1RPT0wgPT09ICd2Y29uc29sZScpIHtcbiAgICAgICAgICAgIGNvZGUgPSBjb2RlLmNvbmNhdChgXG4gICAgICAgICAgICAgIGltcG9ydCBWQ29uc29sZSBmcm9tICd2Y29uc29sZSdcbiAgICAgICAgICAgICAgbmV3IFZDb25zb2xlKClcbiAgICAgICAgICAgIGApXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBjb2RlLFxuICAgICAgICAgICAgbWFwOiBudWxsLFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9LFxuXG4gICAge1xuICAgICAgbmFtZTogJ2FwcEluZm8nLFxuICAgICAgYXBwbHk6ICdzZXJ2ZScsXG4gICAgICBhc3luYyBidWlsZFN0YXJ0KCkge1xuICAgICAgICBjb25zdCB7IGJvbGQsIGdyZWVuLCBjeWFuLCBiZ0dyZWVuLCB1bmRlcmxpbmUgfSA9IHBpY29jb2xvcnNcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgYm94ZW4oXG4gICAgICAgICAgICBgJHtib2xkKGdyZWVuKGBcdTc1MzEgJHtiZ0dyZWVuKCdGYW50YXN0aWMtbW9iaWxlJyl9IFx1OUE3MVx1NTJBOGApKX1cXG5cXG4ke3VuZGVybGluZSgnaHR0cHM6Ly9mYW50YXN0aWMtbW9iaWxlLmh1cnVpLm1lJyl9XFxuXFxuXHU1RjUzXHU1MjREXHU0RjdGXHU3NTI4XHVGRjFBJHtjeWFuKCdcdTU3RkFcdTc4NDBcdTcyNDgnKX1gLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxLFxuICAgICAgICAgICAgICBtYXJnaW46IDEsXG4gICAgICAgICAgICAgIGJvcmRlclN0eWxlOiAnZG91YmxlJyxcbiAgICAgICAgICAgICAgdGV4dEFsaWdubWVudDogJ2NlbnRlcicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICksXG4gICAgICAgIClcbiAgICAgIH0sXG4gICAgfSxcbiAgXVxuICByZXR1cm4gdml0ZVBsdWdpbnNcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7QUFBNFMsT0FBTyxRQUFRO0FBQzNULE9BQU9BLFdBQVU7QUFDakIsT0FBT0MsY0FBYTtBQUNwQixTQUFTLGNBQWMsZUFBZTs7O0FDSCtRLE9BQU8sVUFBVTtBQUN0VSxPQUFPLGFBQWE7QUFFcEIsT0FBTyxlQUFlO0FBQ3RCLE9BQU8sU0FBUztBQUNoQixPQUFPLFlBQVk7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O0FBQUEsSUFDRjtBQUFBO0FBQUEsSUFFQSxPQUFPO0FBQUEsTUFDTCxRQUFRLFNBQVMsZUFBZSxTQUFTLFFBQVEsSUFBSTtBQUFBLE1BQ3JELFdBQVcsSUFBSSx5QkFBeUI7QUFBQSxJQUMxQztBQUFBLElBQ0EsU0FBUyxrQkFBa0IsS0FBSyxZQUFZLE9BQU87QUFBQSxJQUNuRCxTQUFTO0FBQUEsTUFDUCxPQUFPO0FBQUEsUUFDTCxLQUFLQSxNQUFLLFFBQVEsa0NBQVcsS0FBSztBQUFBLFFBQ2xDLEtBQUtBLE1BQUssUUFBUSxrQ0FBVyxXQUFXO0FBQUEsTUFDMUM7QUFBQSxJQUNGO0FBQUEsSUFDQSxLQUFLO0FBQUEsTUFDSCxxQkFBcUI7QUFBQSxRQUNuQixNQUFNO0FBQUEsVUFDSixnQkFBZ0IsY0FBYyxLQUFLLEVBQUU7QUFBQSxRQUN2QztBQUFBLE1BQ0Y7QUFBQSxJQUNGO0FBQUEsRUFDRixDQUFDO0FBQ0g7IiwKICAibmFtZXMiOiBbInBhdGgiLCAicHJvY2VzcyIsICJwcm9jZXNzIiwgInBhdGgiXQp9Cg==
|