市场夺宝奇兵
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

248 lines
10 KiB

  1. //#region rolldown:runtime
  2. var __create = Object.create;
  3. var __defProp = Object.defineProperty;
  4. var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
  5. var __getOwnPropNames = Object.getOwnPropertyNames;
  6. var __getProtoOf = Object.getPrototypeOf;
  7. var __hasOwnProp = Object.prototype.hasOwnProperty;
  8. var __commonJS = (cb, mod) => function() {
  9. return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
  10. };
  11. var __copyProps = (to, from, except, desc) => {
  12. if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
  13. key = keys[i];
  14. if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
  15. get: ((k) => from[k]).bind(null, key),
  16. enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
  17. });
  18. }
  19. return to;
  20. };
  21. var __toESM = (mod, isNodeMode, target$1) => (target$1 = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target$1, "default", {
  22. value: mod,
  23. enumerable: true
  24. }) : target$1, mod));
  25. //#endregion
  26. //#region src/constants.ts
  27. const VIEW_MODE_STORAGE_KEY = "__vue-devtools-view-mode__";
  28. const VITE_PLUGIN_DETECTED_STORAGE_KEY = "__vue-devtools-vite-plugin-detected__";
  29. const VITE_PLUGIN_CLIENT_URL_STORAGE_KEY = "__vue-devtools-vite-plugin-client-url__";
  30. const BROADCAST_CHANNEL_NAME = "__vue-devtools-broadcast-channel__";
  31. //#endregion
  32. //#region src/env.ts
  33. const isBrowser = typeof navigator !== "undefined";
  34. const target = typeof window !== "undefined" ? window : typeof globalThis !== "undefined" ? globalThis : typeof global !== "undefined" ? global : {};
  35. const isInChromePanel = typeof target.chrome !== "undefined" && !!target.chrome.devtools;
  36. const isInIframe = isBrowser && target.self !== target.top;
  37. const isInElectron = typeof navigator !== "undefined" && navigator.userAgent?.toLowerCase().includes("electron");
  38. const isNuxtApp = typeof window !== "undefined" && !!window.__NUXT__;
  39. const isInSeparateWindow = !isInIframe && !isInChromePanel && !isInElectron;
  40. //#endregion
  41. //#region ../../node_modules/.pnpm/rfdc@1.4.1/node_modules/rfdc/index.js
  42. var require_rfdc = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/rfdc@1.4.1/node_modules/rfdc/index.js": ((exports, module) => {
  43. module.exports = rfdc$1;
  44. function copyBuffer(cur) {
  45. if (cur instanceof Buffer) return Buffer.from(cur);
  46. return new cur.constructor(cur.buffer.slice(), cur.byteOffset, cur.length);
  47. }
  48. function rfdc$1(opts) {
  49. opts = opts || {};
  50. if (opts.circles) return rfdcCircles(opts);
  51. const constructorHandlers = /* @__PURE__ */ new Map();
  52. constructorHandlers.set(Date, (o) => new Date(o));
  53. constructorHandlers.set(Map, (o, fn) => new Map(cloneArray(Array.from(o), fn)));
  54. constructorHandlers.set(Set, (o, fn) => new Set(cloneArray(Array.from(o), fn)));
  55. if (opts.constructorHandlers) for (const handler$1 of opts.constructorHandlers) constructorHandlers.set(handler$1[0], handler$1[1]);
  56. let handler = null;
  57. return opts.proto ? cloneProto : clone;
  58. function cloneArray(a, fn) {
  59. const keys = Object.keys(a);
  60. const a2 = new Array(keys.length);
  61. for (let i = 0; i < keys.length; i++) {
  62. const k = keys[i];
  63. const cur = a[k];
  64. if (typeof cur !== "object" || cur === null) a2[k] = cur;
  65. else if (cur.constructor !== Object && (handler = constructorHandlers.get(cur.constructor))) a2[k] = handler(cur, fn);
  66. else if (ArrayBuffer.isView(cur)) a2[k] = copyBuffer(cur);
  67. else a2[k] = fn(cur);
  68. }
  69. return a2;
  70. }
  71. function clone(o) {
  72. if (typeof o !== "object" || o === null) return o;
  73. if (Array.isArray(o)) return cloneArray(o, clone);
  74. if (o.constructor !== Object && (handler = constructorHandlers.get(o.constructor))) return handler(o, clone);
  75. const o2 = {};
  76. for (const k in o) {
  77. if (Object.hasOwnProperty.call(o, k) === false) continue;
  78. const cur = o[k];
  79. if (typeof cur !== "object" || cur === null) o2[k] = cur;
  80. else if (cur.constructor !== Object && (handler = constructorHandlers.get(cur.constructor))) o2[k] = handler(cur, clone);
  81. else if (ArrayBuffer.isView(cur)) o2[k] = copyBuffer(cur);
  82. else o2[k] = clone(cur);
  83. }
  84. return o2;
  85. }
  86. function cloneProto(o) {
  87. if (typeof o !== "object" || o === null) return o;
  88. if (Array.isArray(o)) return cloneArray(o, cloneProto);
  89. if (o.constructor !== Object && (handler = constructorHandlers.get(o.constructor))) return handler(o, cloneProto);
  90. const o2 = {};
  91. for (const k in o) {
  92. const cur = o[k];
  93. if (typeof cur !== "object" || cur === null) o2[k] = cur;
  94. else if (cur.constructor !== Object && (handler = constructorHandlers.get(cur.constructor))) o2[k] = handler(cur, cloneProto);
  95. else if (ArrayBuffer.isView(cur)) o2[k] = copyBuffer(cur);
  96. else o2[k] = cloneProto(cur);
  97. }
  98. return o2;
  99. }
  100. }
  101. function rfdcCircles(opts) {
  102. const refs = [];
  103. const refsNew = [];
  104. const constructorHandlers = /* @__PURE__ */ new Map();
  105. constructorHandlers.set(Date, (o) => new Date(o));
  106. constructorHandlers.set(Map, (o, fn) => new Map(cloneArray(Array.from(o), fn)));
  107. constructorHandlers.set(Set, (o, fn) => new Set(cloneArray(Array.from(o), fn)));
  108. if (opts.constructorHandlers) for (const handler$1 of opts.constructorHandlers) constructorHandlers.set(handler$1[0], handler$1[1]);
  109. let handler = null;
  110. return opts.proto ? cloneProto : clone;
  111. function cloneArray(a, fn) {
  112. const keys = Object.keys(a);
  113. const a2 = new Array(keys.length);
  114. for (let i = 0; i < keys.length; i++) {
  115. const k = keys[i];
  116. const cur = a[k];
  117. if (typeof cur !== "object" || cur === null) a2[k] = cur;
  118. else if (cur.constructor !== Object && (handler = constructorHandlers.get(cur.constructor))) a2[k] = handler(cur, fn);
  119. else if (ArrayBuffer.isView(cur)) a2[k] = copyBuffer(cur);
  120. else {
  121. const index = refs.indexOf(cur);
  122. if (index !== -1) a2[k] = refsNew[index];
  123. else a2[k] = fn(cur);
  124. }
  125. }
  126. return a2;
  127. }
  128. function clone(o) {
  129. if (typeof o !== "object" || o === null) return o;
  130. if (Array.isArray(o)) return cloneArray(o, clone);
  131. if (o.constructor !== Object && (handler = constructorHandlers.get(o.constructor))) return handler(o, clone);
  132. const o2 = {};
  133. refs.push(o);
  134. refsNew.push(o2);
  135. for (const k in o) {
  136. if (Object.hasOwnProperty.call(o, k) === false) continue;
  137. const cur = o[k];
  138. if (typeof cur !== "object" || cur === null) o2[k] = cur;
  139. else if (cur.constructor !== Object && (handler = constructorHandlers.get(cur.constructor))) o2[k] = handler(cur, clone);
  140. else if (ArrayBuffer.isView(cur)) o2[k] = copyBuffer(cur);
  141. else {
  142. const i = refs.indexOf(cur);
  143. if (i !== -1) o2[k] = refsNew[i];
  144. else o2[k] = clone(cur);
  145. }
  146. }
  147. refs.pop();
  148. refsNew.pop();
  149. return o2;
  150. }
  151. function cloneProto(o) {
  152. if (typeof o !== "object" || o === null) return o;
  153. if (Array.isArray(o)) return cloneArray(o, cloneProto);
  154. if (o.constructor !== Object && (handler = constructorHandlers.get(o.constructor))) return handler(o, cloneProto);
  155. const o2 = {};
  156. refs.push(o);
  157. refsNew.push(o2);
  158. for (const k in o) {
  159. const cur = o[k];
  160. if (typeof cur !== "object" || cur === null) o2[k] = cur;
  161. else if (cur.constructor !== Object && (handler = constructorHandlers.get(cur.constructor))) o2[k] = handler(cur, cloneProto);
  162. else if (ArrayBuffer.isView(cur)) o2[k] = copyBuffer(cur);
  163. else {
  164. const i = refs.indexOf(cur);
  165. if (i !== -1) o2[k] = refsNew[i];
  166. else o2[k] = cloneProto(cur);
  167. }
  168. }
  169. refs.pop();
  170. refsNew.pop();
  171. return o2;
  172. }
  173. }
  174. }) });
  175. //#endregion
  176. //#region src/general.ts
  177. var import_rfdc = /* @__PURE__ */ __toESM(require_rfdc(), 1);
  178. function NOOP() {}
  179. const isNumeric = (str) => `${+str}` === str;
  180. const isMacOS = () => navigator?.platform ? navigator?.platform.toLowerCase().includes("mac") : /Macintosh/.test(navigator.userAgent);
  181. const classifyRE = /(?:^|[-_/])(\w)/g;
  182. const camelizeRE = /-(\w)/g;
  183. const kebabizeRE = /([a-z0-9])([A-Z])/g;
  184. function toUpper(_, c) {
  185. return c ? c.toUpperCase() : "";
  186. }
  187. function classify(str) {
  188. return str && `${str}`.replace(classifyRE, toUpper);
  189. }
  190. function camelize(str) {
  191. return str && str.replace(camelizeRE, toUpper);
  192. }
  193. function kebabize(str) {
  194. return str && str.replace(kebabizeRE, (_, lowerCaseCharacter, upperCaseLetter) => {
  195. return `${lowerCaseCharacter}-${upperCaseLetter}`;
  196. }).toLowerCase();
  197. }
  198. function basename(filename, ext) {
  199. let normalizedFilename = filename.replace(/^[a-z]:/i, "").replace(/\\/g, "/");
  200. if (normalizedFilename.endsWith(`index${ext}`)) normalizedFilename = normalizedFilename.replace(`/index${ext}`, ext);
  201. const lastSlashIndex = normalizedFilename.lastIndexOf("/");
  202. const baseNameWithExt = normalizedFilename.substring(lastSlashIndex + 1);
  203. if (ext) {
  204. const extIndex = baseNameWithExt.lastIndexOf(ext);
  205. return baseNameWithExt.substring(0, extIndex);
  206. }
  207. return "";
  208. }
  209. function sortByKey(state) {
  210. return state && state.slice().sort((a, b) => {
  211. if (a.key < b.key) return -1;
  212. if (a.key > b.key) return 1;
  213. return 0;
  214. });
  215. }
  216. const HTTP_URL_RE = /^https?:\/\//;
  217. /**
  218. * Check a string is start with `/` or a valid http url
  219. */
  220. function isUrlString(str) {
  221. return str.startsWith("/") || HTTP_URL_RE.test(str);
  222. }
  223. /**
  224. * @copyright [rfdc](https://github.com/davidmarkclements/rfdc)
  225. * @description A really fast deep clone alternative
  226. */
  227. const deepClone = (0, import_rfdc.default)({ circles: true });
  228. function randomStr() {
  229. return Math.random().toString(36).slice(2);
  230. }
  231. function isObject(value) {
  232. return typeof value === "object" && !Array.isArray(value) && value !== null;
  233. }
  234. function isArray(value) {
  235. return Array.isArray(value);
  236. }
  237. function isSet(value) {
  238. return value instanceof Set;
  239. }
  240. function isMap(value) {
  241. return value instanceof Map;
  242. }
  243. //#endregion
  244. export { BROADCAST_CHANNEL_NAME, NOOP, VIEW_MODE_STORAGE_KEY, VITE_PLUGIN_CLIENT_URL_STORAGE_KEY, VITE_PLUGIN_DETECTED_STORAGE_KEY, basename, camelize, classify, deepClone, isArray, isBrowser, isInChromePanel, isInElectron, isInIframe, isInSeparateWindow, isMacOS, isMap, isNumeric, isNuxtApp, isObject, isSet, isUrlString, kebabize, randomStr, sortByKey, target };