| 12345678910111213141516171819202122232425262728293031323334 | /** * Used to parse the .env.development proxy configuration */import type { ProxyOptions } from 'vite';type ProxyItem = [string, string];type ProxyList = ProxyItem[];type ProxyTargetList = Record<string, ProxyOptions & { rewrite: (path: string) => string }>;const httpsRE = /^https:\/\//;/** * Generate proxy * @param list */export function createProxy(list: ProxyList = []) {  const ret: ProxyTargetList = {};  for (const [prefix, target] of list) {    const isHttps = httpsRE.test(target);    // https://github.com/http-party/node-http-proxy#options    ret[prefix] = {      target: target,      changeOrigin: true,      ws: true,      rewrite: (path) => path.replace(new RegExp(`^${prefix}`), ''),      // https is require secure=false      ...(isHttps ? { secure: false } : {}),    };  }  return ret;}
 |