cool-admin-vue/build/.vite/deps/vite_dist_client_client__mjs.js
2022-07-29 01:43:56 +08:00

580 lines
16 KiB
JavaScript

import "./chunk-QOVRSCHT.js";
// node_modules/vite/dist/client/env.mjs
var context = (() => {
if (typeof globalThis !== "undefined") {
return globalThis;
} else if (typeof self !== "undefined") {
return self;
} else if (typeof window !== "undefined") {
return window;
} else {
return Function("return this")();
}
})();
var defines = __DEFINES__;
Object.keys(defines).forEach((key) => {
const segments = key.split(".");
let target = context;
for (let i = 0; i < segments.length; i++) {
const segment = segments[i];
if (i === segments.length - 1) {
target[segment] = defines[key];
} else {
target = target[segment] || (target[segment] = {});
}
}
});
// node_modules/vite/dist/client/client.mjs
var template = `
<style>
:host {
position: fixed;
z-index: 99999;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow-y: scroll;
margin: 0;
background: rgba(0, 0, 0, 0.66);
--monospace: 'SFMono-Regular', Consolas,
'Liberation Mono', Menlo, Courier, monospace;
--red: #ff5555;
--yellow: #e2aa53;
--purple: #cfa4ff;
--cyan: #2dd9da;
--dim: #c9c9c9;
}
.window {
font-family: var(--monospace);
line-height: 1.5;
width: 800px;
color: #d8d8d8;
margin: 30px auto;
padding: 25px 40px;
position: relative;
background: #181818;
border-radius: 6px 6px 8px 8px;
box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22);
overflow: hidden;
border-top: 8px solid var(--red);
direction: ltr;
text-align: left;
}
pre {
font-family: var(--monospace);
font-size: 16px;
margin-top: 0;
margin-bottom: 1em;
overflow-x: scroll;
scrollbar-width: none;
}
pre::-webkit-scrollbar {
display: none;
}
.message {
line-height: 1.3;
font-weight: 600;
white-space: pre-wrap;
}
.message-body {
color: var(--red);
}
.plugin {
color: var(--purple);
}
.file {
color: var(--cyan);
margin-bottom: 0;
white-space: pre-wrap;
word-break: break-all;
}
.frame {
color: var(--yellow);
}
.stack {
font-size: 13px;
color: var(--dim);
}
.tip {
font-size: 13px;
color: #999;
border-top: 1px dotted #999;
padding-top: 13px;
}
code {
font-size: 13px;
font-family: var(--monospace);
color: var(--yellow);
}
.file-link {
text-decoration: underline;
cursor: pointer;
}
</style>
<div class="window">
<pre class="message"><span class="plugin"></span><span class="message-body"></span></pre>
<pre class="file"></pre>
<pre class="frame"></pre>
<pre class="stack"></pre>
<div class="tip">
Click outside or fix the code to dismiss.<br>
You can also disable this overlay by setting
<code>server.hmr.overlay</code> to <code>false</code> in <code>vite.config.js.</code>
</div>
</div>
`;
var fileRE = /(?:[a-zA-Z]:\\|\/).*?:\d+:\d+/g;
var codeframeRE = /^(?:>?\s+\d+\s+\|.*|\s+\|\s*\^.*)\r?\n/gm;
var { HTMLElement = class {
} } = globalThis;
var ErrorOverlay = class extends HTMLElement {
constructor(err) {
var _a;
super();
this.root = this.attachShadow({ mode: "open" });
this.root.innerHTML = template;
codeframeRE.lastIndex = 0;
const hasFrame = err.frame && codeframeRE.test(err.frame);
const message = hasFrame ? err.message.replace(codeframeRE, "") : err.message;
if (err.plugin) {
this.text(".plugin", `[plugin:${err.plugin}] `);
}
this.text(".message-body", message.trim());
const [file] = (((_a = err.loc) === null || _a === void 0 ? void 0 : _a.file) || err.id || "unknown file").split(`?`);
if (err.loc) {
this.text(".file", `${file}:${err.loc.line}:${err.loc.column}`, true);
} else if (err.id) {
this.text(".file", file);
}
if (hasFrame) {
this.text(".frame", err.frame.trim());
}
this.text(".stack", err.stack, true);
this.root.querySelector(".window").addEventListener("click", (e) => {
e.stopPropagation();
});
this.addEventListener("click", () => {
this.close();
});
}
text(selector, text, linkFiles = false) {
const el = this.root.querySelector(selector);
if (!linkFiles) {
el.textContent = text;
} else {
let curIndex = 0;
let match;
while (match = fileRE.exec(text)) {
const { 0: file, index } = match;
if (index != null) {
const frag = text.slice(curIndex, index);
el.appendChild(document.createTextNode(frag));
const link = document.createElement("a");
link.textContent = file;
link.className = "file-link";
link.onclick = () => {
fetch("/__open-in-editor?file=" + encodeURIComponent(file));
};
el.appendChild(link);
curIndex += frag.length + file.length;
}
}
}
}
close() {
var _a;
(_a = this.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(this);
}
};
var overlayId = "vite-error-overlay";
var { customElements } = globalThis;
if (customElements && !customElements.get(overlayId)) {
customElements.define(overlayId, ErrorOverlay);
}
console.debug("[vite] connecting...");
var importMetaUrl = new URL(import.meta.url);
var serverHost = __SERVER_HOST__;
var socketProtocol = __HMR_PROTOCOL__ || (location.protocol === "https:" ? "wss" : "ws");
var hmrPort = __HMR_PORT__;
var socketHost = `${__HMR_HOSTNAME__ || importMetaUrl.hostname}:${hmrPort || importMetaUrl.port}${__HMR_BASE__}`;
var directSocketHost = __HMR_DIRECT_TARGET__;
var base = __BASE__ || "/";
var messageBuffer = [];
var socket;
try {
let fallback;
if (!hmrPort) {
fallback = () => {
socket = setupWebSocket(socketProtocol, directSocketHost, () => {
const currentScriptHostURL = new URL(import.meta.url);
const currentScriptHost = currentScriptHostURL.host + currentScriptHostURL.pathname.replace(/@vite\/client$/, "");
console.error(`[vite] failed to connect to websocket.
your current setup:
(browser) ${currentScriptHost} <--[HTTP]--> ${serverHost} (server)
(browser) ${socketHost} <--[WebSocket (failing)]--> ${directSocketHost} (server)
Check out your Vite / network configuration and https://vitejs.dev/config/server-options.html#server-hmr .`);
});
socket.addEventListener("open", () => {
console.info("[vite] Direct websocket connection fallback. Check out https://vitejs.dev/config/server-options.html#server-hmr to remove the previous connection error.");
}, { once: true });
};
}
socket = setupWebSocket(socketProtocol, socketHost, fallback);
} catch (error) {
console.error(`[vite] failed to connect to websocket (${error}). `);
}
function setupWebSocket(protocol, hostAndPath, onCloseWithoutOpen) {
const socket2 = new WebSocket(`${protocol}://${hostAndPath}`, "vite-hmr");
let isOpened = false;
socket2.addEventListener("open", () => {
isOpened = true;
}, { once: true });
socket2.addEventListener("message", async ({ data }) => {
handleMessage(JSON.parse(data));
});
socket2.addEventListener("close", async ({ wasClean }) => {
if (wasClean)
return;
if (!isOpened && onCloseWithoutOpen) {
onCloseWithoutOpen();
return;
}
console.log(`[vite] server connection lost. polling for restart...`);
await waitForSuccessfulPing(hostAndPath);
location.reload();
});
return socket2;
}
function warnFailedFetch(err, path) {
if (!err.message.match("fetch")) {
console.error(err);
}
console.error(`[hmr] Failed to reload ${path}. This could be due to syntax errors or importing non-existent modules. (see errors above)`);
}
function cleanUrl(pathname) {
const url = new URL(pathname, location.toString());
url.searchParams.delete("direct");
return url.pathname + url.search;
}
var isFirstUpdate = true;
async function handleMessage(payload) {
switch (payload.type) {
case "connected":
console.debug(`[vite] connected.`);
sendMessageBuffer();
setInterval(() => {
if (socket.readyState === socket.OPEN) {
socket.send('{"type":"ping"}');
}
}, __HMR_TIMEOUT__);
break;
case "update":
notifyListeners("vite:beforeUpdate", payload);
if (isFirstUpdate && hasErrorOverlay()) {
window.location.reload();
return;
} else {
clearErrorOverlay();
isFirstUpdate = false;
}
payload.updates.forEach((update) => {
if (update.type === "js-update") {
queueUpdate(fetchUpdate(update));
} else {
const { path, timestamp } = update;
const searchUrl = cleanUrl(path);
const el = Array.from(document.querySelectorAll("link")).find((e) => cleanUrl(e.href).includes(searchUrl));
if (el) {
const newPath = `${base}${searchUrl.slice(1)}${searchUrl.includes("?") ? "&" : "?"}t=${timestamp}`;
const newLinkTag = el.cloneNode();
newLinkTag.href = new URL(newPath, el.href).href;
const removeOldEl = () => el.remove();
newLinkTag.addEventListener("load", removeOldEl);
newLinkTag.addEventListener("error", removeOldEl);
el.after(newLinkTag);
}
console.log(`[vite] css hot updated: ${searchUrl}`);
}
});
break;
case "custom": {
notifyListeners(payload.event, payload.data);
break;
}
case "full-reload":
notifyListeners("vite:beforeFullReload", payload);
if (payload.path && payload.path.endsWith(".html")) {
const pagePath = decodeURI(location.pathname);
const payloadPath = base + payload.path.slice(1);
if (pagePath === payloadPath || payload.path === "/index.html" || pagePath.endsWith("/") && pagePath + "index.html" === payloadPath) {
location.reload();
}
return;
} else {
location.reload();
}
break;
case "prune":
notifyListeners("vite:beforePrune", payload);
payload.paths.forEach((path) => {
const fn = pruneMap.get(path);
if (fn) {
fn(dataMap.get(path));
}
});
break;
case "error": {
notifyListeners("vite:error", payload);
const err = payload.err;
if (enableOverlay) {
createErrorOverlay(err);
} else {
console.error(`[vite] Internal Server Error
${err.message}
${err.stack}`);
}
break;
}
default: {
const check = payload;
return check;
}
}
}
function notifyListeners(event, data) {
const cbs = customListenersMap.get(event);
if (cbs) {
cbs.forEach((cb) => cb(data));
}
}
var enableOverlay = __HMR_ENABLE_OVERLAY__;
function createErrorOverlay(err) {
if (!enableOverlay)
return;
clearErrorOverlay();
document.body.appendChild(new ErrorOverlay(err));
}
function clearErrorOverlay() {
document.querySelectorAll(overlayId).forEach((n) => n.close());
}
function hasErrorOverlay() {
return document.querySelectorAll(overlayId).length;
}
var pending = false;
var queued = [];
async function queueUpdate(p) {
queued.push(p);
if (!pending) {
pending = true;
await Promise.resolve();
pending = false;
const loading = [...queued];
queued = [];
(await Promise.all(loading)).forEach((fn) => fn && fn());
}
}
async function waitForSuccessfulPing(hostAndPath, ms = 1e3) {
while (true) {
try {
await fetch(`${location.protocol}//${hostAndPath}`, { mode: "no-cors" });
break;
} catch (e) {
await new Promise((resolve) => setTimeout(resolve, ms));
}
}
}
var sheetsMap = /* @__PURE__ */ new Map();
function updateStyle(id, content) {
let style = sheetsMap.get(id);
{
if (style && !(style instanceof HTMLStyleElement)) {
removeStyle(id);
style = void 0;
}
if (!style) {
style = document.createElement("style");
style.setAttribute("type", "text/css");
style.innerHTML = content;
document.head.appendChild(style);
} else {
style.innerHTML = content;
}
}
sheetsMap.set(id, style);
}
function removeStyle(id) {
const style = sheetsMap.get(id);
if (style) {
if (style instanceof CSSStyleSheet) {
document.adoptedStyleSheets = document.adoptedStyleSheets.filter((s) => s !== style);
} else {
document.head.removeChild(style);
}
sheetsMap.delete(id);
}
}
async function fetchUpdate({ path, acceptedPath, timestamp }) {
const mod = hotModulesMap.get(path);
if (!mod) {
return;
}
const moduleMap = /* @__PURE__ */ new Map();
const isSelfUpdate = path === acceptedPath;
const modulesToUpdate = /* @__PURE__ */ new Set();
if (isSelfUpdate) {
modulesToUpdate.add(path);
} else {
for (const { deps } of mod.callbacks) {
deps.forEach((dep) => {
if (acceptedPath === dep) {
modulesToUpdate.add(dep);
}
});
}
}
const qualifiedCallbacks = mod.callbacks.filter(({ deps }) => {
return deps.some((dep) => modulesToUpdate.has(dep));
});
await Promise.all(Array.from(modulesToUpdate).map(async (dep) => {
const disposer = disposeMap.get(dep);
if (disposer)
await disposer(dataMap.get(dep));
const [path2, query] = dep.split(`?`);
try {
const newMod = await import(
/* @vite-ignore */
base + path2.slice(1) + `?import&t=${timestamp}${query ? `&${query}` : ""}`
);
moduleMap.set(dep, newMod);
} catch (e) {
warnFailedFetch(e, dep);
}
}));
return () => {
for (const { deps, fn } of qualifiedCallbacks) {
fn(deps.map((dep) => moduleMap.get(dep)));
}
const loggedPath = isSelfUpdate ? path : `${acceptedPath} via ${path}`;
console.log(`[vite] hot updated: ${loggedPath}`);
};
}
function sendMessageBuffer() {
if (socket.readyState === 1) {
messageBuffer.forEach((msg) => socket.send(msg));
messageBuffer.length = 0;
}
}
var hotModulesMap = /* @__PURE__ */ new Map();
var disposeMap = /* @__PURE__ */ new Map();
var pruneMap = /* @__PURE__ */ new Map();
var dataMap = /* @__PURE__ */ new Map();
var customListenersMap = /* @__PURE__ */ new Map();
var ctxToListenersMap = /* @__PURE__ */ new Map();
function createHotContext(ownerPath) {
if (!dataMap.has(ownerPath)) {
dataMap.set(ownerPath, {});
}
const mod = hotModulesMap.get(ownerPath);
if (mod) {
mod.callbacks = [];
}
const staleListeners = ctxToListenersMap.get(ownerPath);
if (staleListeners) {
for (const [event, staleFns] of staleListeners) {
const listeners = customListenersMap.get(event);
if (listeners) {
customListenersMap.set(event, listeners.filter((l) => !staleFns.includes(l)));
}
}
}
const newListeners = /* @__PURE__ */ new Map();
ctxToListenersMap.set(ownerPath, newListeners);
function acceptDeps(deps, callback = () => {
}) {
const mod2 = hotModulesMap.get(ownerPath) || {
id: ownerPath,
callbacks: []
};
mod2.callbacks.push({
deps,
fn: callback
});
hotModulesMap.set(ownerPath, mod2);
}
const hot = {
get data() {
return dataMap.get(ownerPath);
},
accept(deps, callback) {
if (typeof deps === "function" || !deps) {
acceptDeps([ownerPath], ([mod2]) => deps && deps(mod2));
} else if (typeof deps === "string") {
acceptDeps([deps], ([mod2]) => callback && callback(mod2));
} else if (Array.isArray(deps)) {
acceptDeps(deps, callback);
} else {
throw new Error(`invalid hot.accept() usage.`);
}
},
acceptExports(_, callback) {
acceptDeps([ownerPath], callback && (([mod2]) => callback(mod2)));
},
dispose(cb) {
disposeMap.set(ownerPath, cb);
},
prune(cb) {
pruneMap.set(ownerPath, cb);
},
decline() {
},
invalidate() {
location.reload();
},
on(event, cb) {
const addToMap = (map) => {
const existing = map.get(event) || [];
existing.push(cb);
map.set(event, existing);
};
addToMap(customListenersMap);
addToMap(newListeners);
},
send(event, data) {
messageBuffer.push(JSON.stringify({ type: "custom", event, data }));
sendMessageBuffer();
}
};
return hot;
}
function injectQuery(url, queryToInject) {
if (!url.startsWith(".") && !url.startsWith("/")) {
return url;
}
const pathname = url.replace(/#.*$/, "").replace(/\?.*$/, "");
const { search, hash } = new URL(url, "http://vitejs.dev");
return `${pathname}?${queryToInject}${search ? `&` + search.slice(1) : ""}${hash || ""}`;
}
export {
ErrorOverlay,
createHotContext,
injectQuery,
removeStyle,
updateStyle
};
//# sourceMappingURL=vite_dist_client_client__mjs.js.map