zeed 0.7.8 → 0.7.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-U56V5IBU.js → chunk-56HAZLHJ.js} +2 -2
- package/dist/{chunk-U56V5IBU.js.map → chunk-56HAZLHJ.js.map} +0 -0
- package/dist/{chunk-7JIUQQ7T.js → chunk-7KRB4ALO.js} +3 -3
- package/dist/{chunk-UO5SN75V.cjs.map → chunk-7KRB4ALO.js.map} +2 -2
- package/dist/{chunk-UO5SN75V.cjs → chunk-D236IUSV.cjs} +3 -3
- package/dist/{chunk-7JIUQQ7T.js.map → chunk-D236IUSV.cjs.map} +2 -2
- package/dist/{chunk-YBYLAMKH.cjs → chunk-FPEW75FB.cjs} +2 -2
- package/dist/{chunk-YBYLAMKH.cjs.map → chunk-FPEW75FB.cjs.map} +0 -0
- package/dist/chunk-H3FXJ3GO.cjs +2 -0
- package/dist/{chunk-IW32B3MF.cjs.map → chunk-H3FXJ3GO.cjs.map} +1 -1
- package/dist/{chunk-AH25NZK3.js → chunk-SBWPFLFM.js} +2 -2
- package/dist/{chunk-AH25NZK3.js.map → chunk-SBWPFLFM.js.map} +0 -0
- package/dist/chunk-WZC5PIVP.js +2 -0
- package/dist/{chunk-KFSEHZWL.js.map → chunk-WZC5PIVP.js.map} +1 -1
- package/dist/{chunk-6EDDCTHE.cjs → chunk-XYV25VLE.cjs} +2 -2
- package/dist/{chunk-6EDDCTHE.cjs.map → chunk-XYV25VLE.cjs.map} +0 -0
- package/dist/index.all.cjs +1 -1
- package/dist/index.all.d.ts +3 -3
- package/dist/index.all.js +1 -1
- package/dist/index.browser.cjs +1 -1
- package/dist/index.browser.d.ts +2 -2
- package/dist/index.browser.js +1 -1
- package/dist/index.log.cjs +1 -1
- package/dist/index.log.js +1 -1
- package/dist/index.node.cjs +1 -1
- package/dist/index.node.d.ts +2 -2
- package/dist/index.node.js +1 -1
- package/dist/{log-colors-5130ebac.d.ts → log-colors-e784f5f2.d.ts} +1 -1
- package/dist/{path-4bcf6da3.d.ts → path-474c394f.d.ts} +1 -1
- package/dist/{uuid-8d8cb2fe.d.ts → uuid-a85f7b18.d.ts} +5 -3
- package/package.json +1 -1
- package/dist/chunk-IW32B3MF.cjs +0 -2
- package/dist/chunk-KFSEHZWL.js +0 -2
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/common/platform.ts", "../src/common/time.ts", "../src/common/data/deep.ts", "../src/common/log-filter.ts", "../src/common/log-base.ts", "../src/common/log-console.ts", "../src/browser/log-colors.ts", "../src/browser/log-browser.ts", "../src/common/global.ts", "../src/common/log.ts"],
|
|
4
4
|
"sourcesContent": ["// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nexport function getWindow(): any | undefined {\n // @ts-ignore\n if (typeof window !== \"undefined\") return window\n}\n\nexport function getNavigator(): any | undefined {\n // @ts-ignore\n if (typeof navigator !== \"undefined\") return navigator\n}\n\nexport function getGlobal(): any {\n return getWindow() ??\n // @ts-ignore\n typeof WorkerGlobalScope !== \"undefined\"\n ? // @ts-ignore\n self\n : typeof global !== \"undefined\"\n ? global\n : Function(\"return this;\")()\n}\n\nconst _navigator = getNavigator()\nconst _window = getWindow()\n\nexport function detect(\n info = {\n ios: false,\n macos: false,\n windows: false,\n beaker: false,\n electron: false,\n wkwebview: false,\n pwa: false,\n pwaInstalled: false,\n browser: false,\n node: false,\n worker: false,\n jest: false,\n macosNative: false,\n iosNative: false,\n appleNative: false,\n touch: false,\n }\n) {\n info.ios = _navigator?.platform?.match(/(iPhone|iPod|iPad)/i) != null\n info.macos = !!_navigator?.platform?.startsWith(\"Mac\")\n info.windows = !!_navigator?.platform?.startsWith(\"Win\")\n\n // @ts-ignore\n info.beaker = _window?.[\"beaker\"] != null // https://github.com/beakerbrowser/beaker\n info.electron =\n (_navigator?.userAgent?.toLowerCase()?.indexOf(\" electron/\") || -1) > -1 &&\n !info.beaker\n // @ts-ignore\n info.wkwebview = _window?.webkit?.[\"messageHandlers\"] != null //Apple embedded\n\n info.pwa = _navigator?.serviceWorker != null\n\n info.pwaInstalled =\n // @ts-ignore\n _navigator?.standalone ||\n _window?.matchMedia(\"(display-mode: standalone)\")?.matches\n\n info.node =\n typeof process !== \"undefined\" && process?.release?.name === \"node\"\n info.browser = !info.electron && !info.wkwebview && !info.node\n\n // info.worker = typeof importScripts === 'function'\n // @ts-ignore\n info.worker =\n // @ts-ignore\n typeof WorkerGlobalScope !== \"undefined\" &&\n // @ts-ignore\n self instanceof WorkerGlobalScope\n // @ts-ignore\n info.jest = typeof jest !== \"undefined\"\n\n info.macosNative = info.wkwebview && info.macos\n info.iosNative = info.wkwebview && info.ios\n info.appleNative = info.wkwebview\n\n // https://github.com/viljamis/feature.js/blob/master/feature.js#L203\n // @ts-ignore\n info.touch =\n (_window && \"ontouchstart\" in _window) ||\n (_navigator?.maxTouchPoints || 0) > 1 ||\n // @ts-ignore\n (_navigator?.msPointerEnabled && _window?.MSGesture) ||\n // @ts-ignore\n (_window?.DocumentTouch && document instanceof DocumentTouch)\n\n return info\n}\n\n// https://stackoverflow.com/a/31090240/140927\n// export const isBrowser = new Function(\n// \"try {return this===window;}catch(e){ return false;}\"\n// )\n\n// export const isNode = new Function(\n// \"try {return this===global;}catch(e){return false;}\"\n// )\n\nexport const isBrowser = () =>\n typeof window !== \"undefined\" && globalThis === window\n\nexport const platform = detect()\n\n/**\n * Before closing the tab/window or quitting the node process\n * allow to do something important first\n */\nexport function useExitHandler(handler: () => void) {\n if (isBrowser()) {\n window.addEventListener(\"beforeunload\", handler)\n } else if (typeof process !== \"undefined\") {\n process.on(\"exit\", () => handler)\n }\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\n/**\n * @returns Timestamp in miliseconds\n */\nexport const getTimestamp = (): number =>\n // @ts-ignore\n typeof performance !== \"undefined\" ? performance.now() : new Date().getTime()\n\nexport function formatMilliseconds(ms: number): string {\n return ms > 999 ? (ms / 1000).toFixed(1) + \"s\" : ms.toFixed(2) + \"ms\"\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nexport const isObject = (obj: any) => obj && typeof obj === \"object\"\nexport const isPrimitive = (obj: any) => Object(obj) !== obj\n\n// export function deepClone(obj) {\n// return cloneDeep(obj)\n// }\n\n// // https://stackoverflow.com/a/40294058/140927\n// // Handles cyclic references\n// export function deepClone(obj, hash = new WeakMap()) {\n// return cloneDeep(obj)\n//\n// // primitives\n// if (Object(obj) !== obj) {\n// return obj\n// }\n//\n// // cyclic reference\n// if (hash.has(obj)) {\n// return hash.get(obj)\n// }\n//\n// let result\n//\n// // primitives as objects like new String(), new Number()\n// if (\n// obj instanceof String ||\n// obj instanceof Number ||\n// obj instanceof BigInt ||\n// obj instanceof Boolean ||\n// obj instanceof Symbol\n// ) {\n// result = new obj.constructor(obj.valueOf())\n// hash.set(obj, result)\n// return result\n// }\n//\n// if (obj instanceof Set) {\n// result = new Set(obj)\n// } else if (obj instanceof Map) {\n// result = new Map(Array.from(obj, ([key, val]) =>\n// [key, deepClone(val, hash)]))\n// } else if (obj instanceof Date) {\n// result = new Date(obj)\n// } else if (obj instanceof RegExp) {\n// result = new RegExp(obj.source, obj.flags)\n// } else if (obj.constructor) {\n// result = new obj.constructor()\n// } else {\n// result = Object.create(null)\n// }\n//\n// hash.set(obj, result)\n//\n// return Object.assign(result, ...Object.keys(obj).map(key => ({\n// [key]: deepClone(obj[key], hash),\n// })),\n// )\n// }\n//\n// // https://stackoverflow.com/a/40294058/140927\n// // Handles cyclic references\n// export function deepClonePrimitives(obj, hash = new WeakMap()) {\n//\n// // primitives\n// if (Object(obj) !== obj) {\n// // log('Primitive', obj)\n// return obj\n// }\n//\n// // cyclic reference\n// if (hash.has(obj)) {\n// return hash.get(obj)\n// }\n//\n// let result\n//\n// // primitives as objects like new String(), new Number()\n// if (\n// obj instanceof String ||\n// obj instanceof Number ||\n// obj instanceof BigInt ||\n// obj instanceof Boolean ||\n// obj instanceof Symbol\n// ) {\n// result = new obj.constructor(obj.valueOf())\n// // hash.set(obj, result)\n// return result\n// }\n//\n// // log('Obj', obj)\n//\n// if (obj instanceof Set) {\n// result = new Set(obj)\n// } else if (obj instanceof Map) {\n// result = new Map(Array.from(obj, ([key, val]) => [key, deepClonePrimitives(val, hash)]))\n// } else if (obj instanceof Date) {\n// result = new Date(obj)\n// } else if (obj instanceof RegExp) {\n// result = new RegExp(obj.source, obj.flags)\n// } else if (Array.isArray(obj)) {\n// result = Array.from(obj, val => deepClonePrimitives(val, hash))\n// } else if (obj.constructor) {\n// result = new obj.constructor()\n// log('bj object', result)\n// } else if (obj instanceof Function || typeof obj === 'function') {\n// log('Keep object', obj, Object.getPrototypeOf(obj))\n// result = obj\n// } else {\n// result = Object.create(null)\n// }\n//\n// hash.set(obj, result)\n//\n// return Object.assign(result, ...Object.keys(obj).map(key => ({\n// [key]: deepClonePrimitives(obj[key], hash),\n// })))\n// }\n\nexport function deepEqual(a: any, b: any, hash = new WeakSet()) {\n // if both x and y are null or undefined and exactly the same\n if (a === b) {\n return true\n }\n\n // Cyclic\n if (hash.has(b)) {\n // console.log('cyclic')\n return true\n }\n\n if (!isPrimitive(b)) {\n hash.add(b)\n }\n\n // if they are not strictly equal, they both need to be Objects\n if (!(a instanceof Object) || !(b instanceof Object)) {\n return false\n }\n\n // they must have the exact same prototype chain, the closest we can do is\n // test there constructor.\n if (a.constructor !== b.constructor) {\n return false\n }\n\n // Shortcut to avoid to many loops\n if (a.length !== b.length) {\n return false\n }\n\n for (let p in a) {\n // other properties were tested using x.constructor === y.constructor\n if (!a.hasOwnProperty(p)) {\n continue\n }\n\n // allows to compare x[ p ] and y[ p ] when set to undefined\n if (!b.hasOwnProperty(p)) {\n return false\n }\n\n let aa = a[p]\n let bb = b[p]\n\n // if they have the same strict value or identity then they are equal\n // if (aa === bb) {\n // console.log('eq', typeof bb)\n // if (bb != null) hash.set(bb, true)\n // continue\n // }\n //\n // // Numbers, Strings, Functions, Booleans must be strictly equal\n // if (typeof (aa) !== 'object') {\n // return false\n // }\n\n // Objects and Arrays must be tested recursively\n if (!deepEqual(aa, bb, hash)) {\n return false\n }\n }\n\n // allows x[ p ] to be set to undefined\n for (let p in b) {\n if (b.hasOwnProperty(p) && !a.hasOwnProperty(p)) {\n return false\n }\n }\n\n return true\n}\n\nexport function deepMerge(target: any, ...sources: any[]) {\n for (let source of sources) {\n if (!isObject(target)) {\n target = {}\n }\n\n if (source == null) continue\n\n Object.keys(source).forEach((key) => {\n const targetValue = target[key]\n const sourceValue = source[key]\n\n if (Array.isArray(targetValue) && Array.isArray(sourceValue)) {\n target[key] = targetValue.concat(sourceValue)\n } else if (isObject(targetValue) && isObject(sourceValue)) {\n target[key] = deepMerge(Object.assign({}, targetValue), sourceValue)\n } else {\n target[key] = sourceValue\n }\n })\n }\n\n return target\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\ninterface NamespaceFilter {\n (name: string): boolean\n accept: RegExp[]\n reject: RegExp[]\n filter: string\n}\n\n/**\n * Filter as described here https://github.com/visionmedia/debug#wildcards\n *\n * @param filter Namespace filter\n * @returns Function to check if filter applies\n */\nexport function useNamespaceFilter(filter?: string): NamespaceFilter {\n let fn: any // (name: string) => boolean\n let reject = [] as RegExp[]\n let accept = [] as RegExp[]\n\n if (!filter) {\n fn = function (name: string) {\n return false\n }\n } else if (filter === \"*\") {\n fn = function (name: string) {\n return true\n }\n } else {\n let i\n const split = filter.split(/[\\s,]+/)\n const len = split.length\n for (i = 0; i < len; i++) {\n if (!split[i]) {\n // ignore empty strings\n continue\n }\n let template = split[i].replace(/\\*/g, \".*?\")\n if (template[0] === \"-\") {\n reject.push(new RegExp(\"^\" + template.substr(1) + \"$\"))\n } else {\n accept.push(new RegExp(\"^\" + template + \"$\"))\n }\n }\n\n fn = function (name: string) {\n if (reject.length === 0 && accept.length === 0) {\n return true\n }\n let i, len\n for (i = 0, len = reject.length; i < len; i++) {\n if (reject[i].test(name)) {\n return false\n }\n }\n for (i = 0, len = accept.length; i < len; i++) {\n if (accept[i].test(name)) {\n return true\n }\n }\n return false\n }\n }\n fn.accept = accept\n fn.reject = reject\n fn.filter = filter\n return fn as NamespaceFilter\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nimport { deepEqual } from \"./data/deep\"\nimport { LoggerConsoleHandler } from \"./log-console\"\nimport { useNamespaceFilter } from \"./log-filter\"\n\nexport enum LogLevel {\n all = -1,\n debug = 0,\n info,\n warn,\n error,\n fatal,\n off = Infinity,\n}\n\nexport interface LogMessage {\n level: LogLevel\n name: string\n messages: any[]\n line?: number\n file?: string\n timestamp?: number\n}\n\nexport type LogHandler = (msg: LogMessage) => void\n\nexport interface LoggerInterface {\n (...messages: any[]): void\n\n /** @deprecated use .level = LogLevel.off or LogLevel.all */\n active: boolean\n\n level: LogLevel\n\n debug(...messages: any[]): void\n\n info(...messages: any[]): void\n\n warn(...messages: any[]): void\n\n error(...messages: any[]): void\n\n assert(cond: any, ...messages: any[]): void\n\n /** @deprecated use .assert */\n assertEqual(value: any, expected: any, ...args: any[]): void\n\n /** @deprecated use .assert */\n assertNotEqual(value: any, expected: any, ...args: any[]): void\n\n extend(prefix: string): LoggerInterface\n\n factory?: LoggerContextInterface\n}\n\nexport interface LoggerContextInterface {\n (name?: string): LoggerInterface\n registerHandler(handler: LogHandler): void\n setFilter(namespaces: string): void\n setHandlers(handlers?: LogHandler[]): void\n setLock(lock: boolean): void\n setLogLevel(level?: LogLevel): void\n setFactory(factory: (name?: string) => LoggerInterface): void\n}\n\nexport interface LogHandlerOptions {\n level?: LogLevel\n filter?: string\n colors?: boolean\n levelHelper?: boolean\n nameBrackets?: boolean\n padding?: number\n fill?: number\n stack?: boolean | number\n}\n\nexport function LoggerContext(prefix: string = \"\"): LoggerContextInterface {\n let logHandlers: LogHandler[] = [LoggerConsoleHandler()]\n let logAssertLevel: LogLevel = LogLevel.warn\n let logCheckNamespace = (name: string) => true\n let logLock = false\n let logFactory = LoggerBaseFactory\n\n function LoggerBaseFactory(name: string = \"\"): LoggerInterface {\n log.extend = function (prefix: string): LoggerInterface {\n return logFactory(name ? `${name}:${prefix}` : prefix)\n }\n\n const emit = (msg: LogMessage) => {\n if (log.active === true) {\n if (msg.level >= Logger.level && msg.level >= log.level) {\n if (logCheckNamespace(name)) {\n for (let handler of logHandlers) {\n if (handler) handler(msg)\n }\n }\n }\n }\n }\n\n function log(...messages: any[]) {\n emit({\n name,\n messages,\n level: LogLevel.debug,\n })\n }\n\n log.active = true\n log.level = LogLevel.all\n\n log.debug = function (...messages: any[]) {\n emit({\n name,\n messages,\n level: LogLevel.debug,\n })\n }\n\n log.info = function (...messages: any[]) {\n emit({\n name,\n messages,\n level: LogLevel.info,\n })\n }\n\n log.warn = function (...messages: any[]) {\n emit({\n name,\n messages,\n level: LogLevel.warn,\n })\n }\n\n log.error = function (...messages: any[]) {\n emit({\n name,\n messages,\n level: LogLevel.error,\n })\n }\n\n // fatal(...args: any[]) {\n // console.error(...args)\n // },\n\n log.assert = function (cond: any, ...messages: any[]) {\n if (!cond) {\n if (typeof console !== undefined) {\n if (console.assert) {\n // https://developer.mozilla.org/de/docs/Web/API/Console/assert\n console.assert(cond, ...messages)\n } else {\n console.error(`Assert did fail with: ${cond}`, ...messages)\n }\n }\n emit({\n name,\n messages: messages || [`Assert did fail with: ${cond}`],\n level: logAssertLevel,\n })\n // try {\n // if (typeof expect !== undefined) {\n // expect(cond).toBeTruthy()\n // }\n // } catch (err) {\n // methods.warn(...args)\n // }\n }\n }\n\n log.assertEqual = function (value: any, expected: any, ...args: any[]) {\n let equal = deepEqual(value, expected)\n if (!equal) {\n log.assert(\n equal,\n `Assert did fail. Expected ${expected} got ${value}`,\n expected,\n value,\n ...args\n )\n // } else {\n // methods.debug(`Passed equal`)\n }\n }\n\n log.assertNotEqual = function (value: any, expected: any, ...args: any[]) {\n let equal = deepEqual(value, expected)\n if (equal) {\n log.assert(\n equal,\n `Assert did fail. Expected ${expected} not to be equal with ${value}`,\n expected,\n value,\n ...args\n )\n // } else {\n // methods.debug(`Passed not equal check`)\n }\n }\n\n return log\n }\n\n function Logger(name: string = \"\"): LoggerInterface {\n return logFactory(name)\n }\n\n Logger.registerHandler = function (handler: LogHandler) {\n logHandlers.push(handler)\n }\n\n Logger.setFilter = function (namespaces: string) {\n logCheckNamespace = useNamespaceFilter(namespaces)\n }\n\n Logger.setLock = (lock: boolean = true) => (logLock = lock)\n\n Logger.setHandlers = function (handlers: LogHandler[] = []) {\n if (logFactory !== LoggerBaseFactory) {\n logFactory = LoggerBaseFactory\n }\n if (logLock) return\n logHandlers = [...handlers].filter((h) => typeof h === \"function\")\n }\n\n Logger.level = LogLevel.all\n\n /** @deprecated */\n Logger.setLogLevel = function (level: LogLevel = LogLevel.all) {\n if (logLock) return\n Logger.level = level\n }\n\n Logger.setFactory = function (\n factory: (name?: string) => LoggerInterface\n ): void {\n if (logLock) return\n logFactory = factory\n }\n\n return Logger\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nimport { LogLevel, LogHandler, LogMessage, LogHandlerOptions } from \"./log-base\"\n\n/**\n * Very basic logger. Please take a look at the browser and node\n * optimized loggers. This one is just the absolute fallback option.\n *\n * @param level Log level\n * @returns Logger\n */\nexport function LoggerConsoleHandler(opt: LogHandlerOptions = {}): LogHandler {\n const {\n level = LogLevel.all,\n colors = true,\n levelHelper = false,\n nameBrackets = true,\n padding = 16,\n filter = undefined,\n } = opt\n return (msg: LogMessage) => {\n if (msg.level < level) return\n let name = msg.name ? `[${msg.name}]` : \"\"\n switch (msg.level) {\n case LogLevel.info:\n console.info(`I|* ${name}`, ...msg.messages)\n break\n case LogLevel.warn:\n console.warn(`W|** ${name}`, ...msg.messages)\n break\n case LogLevel.error:\n console.error(`E|*** ${name}`, ...msg.messages)\n break\n default:\n console.debug(`D| ${name}`, ...msg.messages)\n break\n }\n }\n}\n", "// Taken from https://github.com/visionmedia/debug/blob/master/src/browser.js#L27\n\nconst colors = [\n \"#0000CC\",\n \"#0000FF\",\n \"#0033CC\",\n \"#0033FF\",\n \"#0066CC\",\n \"#0066FF\",\n \"#0099CC\",\n \"#0099FF\",\n \"#00CC00\",\n \"#00CC33\",\n \"#00CC66\",\n \"#00CC99\",\n \"#00CCCC\",\n \"#00CCFF\",\n \"#3300CC\",\n \"#3300FF\",\n \"#3333CC\",\n \"#3333FF\",\n \"#3366CC\",\n \"#3366FF\",\n \"#3399CC\",\n \"#3399FF\",\n \"#33CC00\",\n \"#33CC33\",\n \"#33CC66\",\n \"#33CC99\",\n \"#33CCCC\",\n \"#33CCFF\",\n \"#6600CC\",\n \"#6600FF\",\n \"#6633CC\",\n \"#6633FF\",\n \"#66CC00\",\n \"#66CC33\",\n \"#9900CC\",\n \"#9900FF\",\n \"#9933CC\",\n \"#9933FF\",\n \"#99CC00\",\n \"#99CC33\",\n \"#CC0000\",\n \"#CC0033\",\n \"#CC0066\",\n \"#CC0099\",\n \"#CC00CC\",\n \"#CC00FF\",\n \"#CC3300\",\n \"#CC3333\",\n \"#CC3366\",\n \"#CC3399\",\n \"#CC33CC\",\n \"#CC33FF\",\n \"#CC6600\",\n \"#CC6633\",\n \"#CC9900\",\n \"#CC9933\",\n \"#CCCC00\",\n \"#CCCC33\",\n \"#FF0000\",\n \"#FF0033\",\n \"#FF0066\",\n \"#FF0099\",\n \"#FF00CC\",\n \"#FF00FF\",\n \"#FF3300\",\n \"#FF3333\",\n \"#FF3366\",\n \"#FF3399\",\n \"#FF33CC\",\n \"#FF33FF\",\n \"#FF6600\",\n \"#FF6633\",\n \"#FF9900\",\n \"#FF9933\",\n \"#FFCC00\",\n \"#FFCC33\",\n]\n\nexport function supportsColors(): boolean {\n // NB: In an Electron preload script, document will be defined but not fully\n // initialized. Since we know we're in Chrome, we'll just detect this case\n // explicitly\n if (\n typeof window !== \"undefined\" &&\n window.process &&\n // @ts-ignore\n (window.process.type === \"renderer\" || window.process.__nwjs)\n ) {\n return true\n }\n\n // Internet Explorer and Edge do not support colors.\n if (\n typeof navigator !== \"undefined\" &&\n navigator.userAgent &&\n navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)\n ) {\n return false\n }\n\n // Is webkit? http://stackoverflow.com/a/16459606/376773\n // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n return (\n (typeof document !== \"undefined\" &&\n document.documentElement &&\n document.documentElement.style &&\n // @ts-ignore\n document.documentElement.style.WebkitAppearance) ||\n // Is firebug? http://stackoverflow.com/a/398120/376773\n (typeof window !== \"undefined\" &&\n window.console &&\n // @ts-ignore\n (window.console.firebug ||\n // @ts-ignore\n (window.console.exception && window.console.table))) ||\n // Is firefox >= v31?\n // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n (typeof navigator !== \"undefined\" &&\n navigator.userAgent &&\n navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) &&\n parseInt(RegExp.$1, 10) >= 31) ||\n // Double check webkit in userAgent just in case we are in a worker\n (typeof navigator !== \"undefined\" &&\n navigator.userAgent &&\n navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/))\n )\n}\n\nexport function selectColor(namespace: string) {\n let hash = 0\n for (let i = 0; i < namespace.length; i++) {\n hash = (hash << 5) - hash + namespace.charCodeAt(i)\n hash |= 0 // Convert to 32bit integer\n }\n return colors[Math.abs(hash) % colors.length]\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nimport { formatMilliseconds, getTimestamp } from \"../common/time\"\nimport {\n LoggerInterface,\n LogHandler,\n LogHandlerOptions,\n LogLevel,\n LogMessage,\n} from \"../common/log-base\"\nimport { selectColor, supportsColors } from \"./log-colors\"\nimport { useNamespaceFilter } from \"../common/log-filter\"\nimport { deepEqual } from \"../common/data/deep\"\n\nconst styleFont = `font-family: \"JetBrains Mono\", Menlo; font-size: 11px;`\nconst styleDefault = `${styleFont}`\nconst styleBold = `font-weight: 600; ${styleFont}`\nconst useColors = supportsColors()\n\nlet namespaces: Record<string, any> = {}\n\nlet time = getTimestamp()\n\nexport function LoggerBrowserHandler(opt: LogHandlerOptions = {}): LogHandler {\n const {\n level = LogLevel.all,\n colors = true,\n levelHelper = false,\n nameBrackets = true,\n padding = 16,\n } = opt\n const matches = useNamespaceFilter(\n opt.filter ?? localStorage.zeed ?? localStorage.debug\n )\n return (msg: LogMessage) => {\n if (msg.level < level) return\n if (!matches(msg.name)) return\n\n const timeNow = getTimestamp()\n let name = msg.name || \"\"\n let ninfo = namespaces[name || \"\"]\n if (ninfo == null) {\n ninfo = {\n color: selectColor(name),\n // time: timeNow\n }\n namespaces[name] = ninfo\n }\n const diff = formatMilliseconds(timeNow - time)\n let args: string[]\n\n if (padding > 0) {\n name = name.padEnd(16, \" \")\n }\n\n if (colors && useColors) {\n args = [`%c${name}%c \\t%s %c+${diff}`]\n args.push(`color:${ninfo.color}; ${styleBold}`)\n args.push(styleDefault)\n args.push(msg.messages?.[0] ?? \"\")\n args.push(`color:${ninfo.color};`)\n args.push(...msg.messages.slice(1))\n } else {\n args = [name, ...msg.messages, `+${diff}`]\n }\n\n // function consoleArgs(args: any[] = []): any[] {\n // return [\n // args\n // .filter((a) => typeof a === \"string\")\n // .map((a) => String(a))\n // .join(\" \"),\n // ...styles,\n // ...args.filter((a) => typeof a !== \"string\"),\n // ]\n // }\n\n switch (msg.level) {\n case LogLevel.info:\n if (opt.levelHelper) args[0] = `I|* ` + args[0]\n console.info(...args)\n break\n case LogLevel.warn:\n if (opt.levelHelper) args[0] = `W|** ` + args[0]\n console.warn(...args)\n break\n case LogLevel.error:\n if (opt.levelHelper) args[0] = `E|*** ` + args[0]\n console.error(...args)\n break\n default:\n if (opt.levelHelper) args[0] = `D| ` + args[0]\n console.debug(...args)\n break\n }\n }\n}\n\nexport function LoggerBrowserSetupDebugFactory(opt: LogHandlerOptions = {}) {\n const filter = opt.filter ?? localStorage.zeed ?? localStorage.debug\n\n /// The trick is, that console called directly provides a reference to the source code.\n /// For the regular implementation this information is lost. But this approach has other\n /// drawbacks, therefore only use it in the Browser when actively debugging.\n return function LoggerBrowserDebugFactory(\n name: string = \"\"\n ): LoggerInterface {\n let log: LoggerInterface\n\n const matches = useNamespaceFilter(filter)\n\n if (matches(name)) {\n let fixedArgs = []\n if (useColors) {\n const color = selectColor(name)\n fixedArgs.push(`%c${name.padEnd(16, \" \")}%c \\t%s`)\n fixedArgs.push(`color:${color}; ${styleBold}`)\n fixedArgs.push(styleDefault)\n } else {\n fixedArgs.push(`[${name}] \\t%s`)\n }\n\n // @ts-ignore\n // console.previous = {\n // debug: console.debug,\n // info: console.info,\n // warn: console.warn,\n // error: console.error,\n // assert: console.assert,\n // }\n\n log = console.debug.bind(console, ...fixedArgs) as LoggerInterface\n log.debug = console.debug.bind(console, ...fixedArgs)\n log.info = console.info.bind(console, ...fixedArgs)\n log.warn = console.warn.bind(console, ...fixedArgs)\n log.error = console.error.bind(console, ...fixedArgs)\n\n log.assert = console.assert.bind(console)\n\n log.assertEqual = function (value: any, expected: any, ...args: any[]) {\n let equal = deepEqual(value, expected)\n if (!equal) {\n log.assert(\n equal,\n `Assert did fail. Expected ${expected} got ${value}`,\n expected,\n value,\n ...args\n )\n }\n }\n\n log.assertNotEqual = function (\n value: any,\n expected: any,\n ...args: any[]\n ) {\n let equal = deepEqual(value, expected)\n if (equal) {\n log.assert(\n equal,\n `Assert did fail. Expected ${expected} not to be equal with ${value}`,\n expected,\n value,\n ...args\n )\n }\n }\n } else {\n const noop = () => {}\n log = noop as LoggerInterface\n log.debug = noop\n log.info = noop\n log.warn = noop\n log.error = noop\n\n log.assert = noop\n log.assertEqual = noop\n log.assertNotEqual = noop\n }\n\n log.extend = (subName: string) => {\n return LoggerBrowserDebugFactory(name ? `${name}:${subName}` : subName)\n }\n\n return log\n }\n}\n\n/** @deprecated This output is default for initial use of Logger in browser environments. */\nexport function activateConsoleDebug(opt: LogHandlerOptions = {}) {\n console.info(\"activateConsoleDebug is activated by default in browsers\")\n // Logger.setHandlers([LoggerBrowserHandler(opt)]) // Fallback for previously registered Loggers\n // Logger.setFactory(LoggerBrowserSetupDebugFactory(opt))\n}\n\n// let klass = console\n// let debug = console.debug.bind(window.console, klass.toString() + \": \")\n\n// debug(\"test\")\n// console.debug(\"test2\")\n\n// let dd\n// if (Function.prototype.bind) {\n// dd = Function.prototype.bind.call(console.log, console)\n// } else {\n// dd = function () {\n// Function.prototype.apply.call(console.log, console, arguments)\n// }\n// }\n\n// dd(\"dd\")\n\n// let c = 1\n// Object.defineProperty(window, \"log2\", {\n// get: () => {\n// return console.log.bind(\n// window.console,\n// \"%c[log]%c %s\" + c++,\n// \"color:red\",\n// \"\"\n// )\n// },\n// })\n\n// // usage:\n// log2(\"Back to the future\")\n// log2(\"Back to the future\")\n\n// let plog = new Proxy(console.debug, {\n// apply: function (target, that, args) {\n// target.apply(that, args)\n// // base.apply(that, args);\n// },\n// })\n\n// let cons = console.debug\n// let plog = (...args) => {\n// cons.apply(window.console, [\"|\", ...args])\n// }\n\n// plog(\"xxx\")\n\n// function a() {\n// var err = new Error()\n// var caller_line = err.stack.split(\"\\n\")[2]\n// var index = caller_line.indexOf(\"at \")\n// var clean = caller_line.slice(index + 2, caller_line.length)\n// clean = clean.replace(/\\?t=\\d+/, \"\").replace(\"@fs/\", \"\")\n// console.log(clean)\n// console.log(\n// \"http://localhost:8080/Users/dirk/work/viidoo/lib/src/browser/log-browser.ts:188:1 log-browser.ts:291:10\"\n// )\n// }\n// function b() {\n// a()\n// }\n// b()\n", "// Global context across build systems etc.\n\ndeclare global {\n interface ZeedGlobalContext {}\n}\n\ninterface ZeedGlobalIntegration {\n _zeedGlobal?: ZeedGlobalContext\n}\n\nfunction _global(): ZeedGlobalIntegration {\n if (typeof self !== \"undefined\") return self as ZeedGlobalIntegration\n if (typeof window !== \"undefined\") return window as ZeedGlobalIntegration\n if (typeof global !== \"undefined\") return global as ZeedGlobalIntegration\n if (typeof globalThis !== \"undefined\")\n return globalThis as ZeedGlobalIntegration\n throw new Error(\"unable to locate global object\")\n}\n\nexport function getGlobalContext(): ZeedGlobalContext {\n let gcontext = _global()\n if (gcontext._zeedGlobal == null) {\n gcontext._zeedGlobal = {}\n }\n return gcontext._zeedGlobal\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nimport { isBrowser } from \"./platform\"\nimport {\n LoggerBrowserHandler,\n LoggerBrowserSetupDebugFactory,\n} from \"../browser/log-browser\"\nimport { getGlobalContext } from \"./global\"\nimport { LoggerContext, LoggerContextInterface } from \"./log-base\"\n\n// Global logger to guarantee all submodules use the same logger instance\n\nlet globalLogger: LoggerContextInterface\n\ndeclare global {\n interface ZeedGlobalContext {\n logger?: LoggerContextInterface\n }\n}\n\nfunction getLoggerContext() {\n let logger = LoggerContext()\n if (isBrowser()) {\n logger.setHandlers([LoggerBrowserHandler()]) // Fallback for previously registered Loggers\n logger.setFactory(LoggerBrowserSetupDebugFactory({}))\n }\n return logger\n}\n\ntry {\n let _global = getGlobalContext()\n if (_global != null) {\n if (_global?.logger == null) {\n globalLogger = getLoggerContext()\n _global.logger = globalLogger\n } else {\n globalLogger = _global.logger\n }\n } else {\n globalLogger = getLoggerContext()\n }\n} catch (e) {\n globalLogger = getLoggerContext()\n}\n\n// /** @deprecated Use `Logger` instead, it is global as well */\n// export const GlobalLogger = globalLogger\n\nexport const Logger = globalLogger\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{getSourceLocation,renderMessages,toValidFilename}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{getSourceLocation,renderMessages,toValidFilename}from"./chunk-7KRB4ALO.js";import{LogLevel,Logger,__name,formatMilliseconds,getTimestamp,useNamespaceFilter}from"./chunk-WZC5PIVP.js";import fs from"fs";import{resolve}from"path";var log=Logger("zeed:env");var NEWLINE="\n";var RE_INI_KEY_VAL=/^\s*([\w_.-]+)\s*=\s*(.*)?\s*$/;var RE_NEWLINES=/\\n/g;var NEWLINES_MATCH=/\n|\r|\r\n/;function parse(src,options={}){let obj={};src.toString().split(NEWLINES_MATCH).forEach(function(line,idx){const keyValueArr=line.match(RE_INI_KEY_VAL);if(keyValueArr!=null){const key=keyValueArr[1];let val=keyValueArr[2]||"";const end=val.length-1;const isDoubleQuoted=val[0]==='"'&&val[end]==='"';const isSingleQuoted=val[0]==="'"&&val[end]==="'";if(isSingleQuoted||isDoubleQuoted){val=val.substring(1,end);if(isDoubleQuoted){val=val.replace(RE_NEWLINES,NEWLINE)}}else{val=val.trim()}obj[key]=val}else{log.debug(`did not match key and value when parsing line ${idx+1}: ${line}`)}});return obj}__name(parse,"parse");function stringToPath(value,defaultValue="."){return resolve(value!=null?value:defaultValue)}__name(stringToPath,"stringToPath");function valueToPath(value,defaultValue=""){if(value==null)value=defaultValue;return stringToPath(String(value).trim(),defaultValue)}__name(valueToPath,"valueToPath");var toPath=valueToPath;function setupEnv(options={}){var _a,_b,_c,_d;const dotenvPath=(_b=options==null?void 0:options.path)!=null?_b:resolve(process.cwd(),(_a=options==null?void 0:options.filename)!=null?_a:".env");const encoding=(_c=options==null?void 0:options.encoding)!=null?_c:"utf8";const debug=(options==null?void 0:options.debug)||false;if(debug!==true)log.level=LogLevel.off;try{const parsedEnv=fs.existsSync(dotenvPath)?parse(fs.readFileSync(dotenvPath,{encoding}),{debug}):{};const parsedEnvLocal=fs.existsSync(dotenvPath+".local")?parse(fs.readFileSync(dotenvPath+".local",{encoding}),{debug}):{};const parsed=Object.assign({},parsedEnv,parsedEnvLocal);let env=(_d=options==null?void 0:options.env)!=null?_d:process.env;Object.entries(parsed).forEach(([key,value])=>{if(typeof(options==null?void 0:options.prefix)==="string"){key=(options==null?void 0:options.prefix)+key}if(!Object.prototype.hasOwnProperty.call(env,key)){if(value!=null){log.info(`set env.${key} = ${value}`);env[key]=value}}else{log.debug(`"${key}" is already defined and will not be overwritten`)}});return{parsed}}catch(e){log.error(e);return{error:e}}}__name(setupEnv,"setupEnv");import{readFileSync,writeFileSync,mkdirSync,rmSync,unlinkSync,readdirSync}from"fs";import{resolve as resolve2}from"path";var log2=Logger("zeed:filestorage");var FileStorage=class{constructor(opt={}){this.store={};this.fileKeys=void 0;this.pretty=false;var _a,_b,_c;this.dirname=resolve2(process.cwd(),opt.path||".fileStorage");this.pretty=!!opt.pretty;this.extension=(_a=opt.extension)!=null?_a:".json";if(!this.extension.startsWith("."))this.extension="."+this.extension;this.extensionLength=this.extension.length;this.objectToString=(_b=opt.objectToString)!=null?_b:data=>{return this.pretty?JSON.stringify(data,null,2):JSON.stringify(data)};this.objectFromString=(_c=opt.objectFromString)!=null?_c:data=>{try{return JSON.parse(data)}catch(err){log2.warn(`fileStorage parse error '${err}' in`,data)}}}setItem(key,value){const data=this.objectToString(value);this.store[key]=data;try{const path=this.getPath(key);mkdirSync(this.dirname,{recursive:true});writeFileSync(path,data,"utf8")}catch(err){log2.error("setItem error",err)}}getPath(key){return resolve2(this.dirname,toValidFilename(key)+this.extension)}getBuffer(key){const path=this.getPath(key);return Buffer.from(readFileSync(path))}getItem(key){if(this.store.hasOwnProperty(key)){let value=this.store[key];return this.objectFromString(value)}else{try{const path=this.getPath(key);const data=readFileSync(path,"utf8");if(data){return this.objectFromString(data)}}catch(err){log2.error("getItem error",err)}}}removeItem(key){delete this.store[key];if(this.fileKeys!=null){const index=this.fileKeys.indexOf(key);if(index!==-1){this.fileKeys.splice(index,1)}}try{const path=this.getPath(key);unlinkSync(path)}catch(err){}}clear(){this.fileKeys=[];this.store={};rmSync(this.dirname,{recursive:true,force:true})}allKeys(){if(this.fileKeys==null){try{this.fileKeys=readdirSync(this.dirname,{withFileTypes:true}).filter(item=>!item.isDirectory()&&item.name.endsWith(this.extension)).map(item=>item.name.slice(0,-this.extensionLength))||[]}catch(err){}}let keys=[...this.fileKeys||[]];for(let key of Object.keys(this.store)){if(!keys.includes(key)){keys.push(key)}}keys.sort();return keys}};__name(FileStorage,"FileStorage");import{createWriteStream,mkdirSync as mkdirSync2}from"fs";import{resolve as resolve3,dirname}from"path";var namespaces={};function LoggerFileHandler(path,opt={}){const{level=LogLevel.all,colors:colors2=true,levelHelper=false,nameBrackets=true,padding=16,filter=void 0}=opt;path=resolve3(process.cwd(),path);mkdirSync2(dirname(path),{recursive:true});var stream=createWriteStream(path,{flags:"a"});return msg=>{if(msg.level<level)return;const time2=new Date().toISOString();let name=msg.name||"";let ninfo=namespaces[name||""];if(ninfo==null){namespaces[name]=ninfo}let args=[`[${name||"*"}]`,renderMessages(msg.messages,{pretty:false})];function write(...args2){stream.write(args2.join(" ")+"\n")}__name(write,"write");switch(msg.level){case LogLevel.info:write(time2,`I|* `,...args);break;case LogLevel.warn:write(time2,`W|** `,...args);break;case LogLevel.error:write(time2,`E|***`,...args);break;default:write(time2,`D| `,...args);break}}}__name(LoggerFileHandler,"LoggerFileHandler");import tty from"tty";var colors=[6,2,3,4,5,1];function selectColor(namespace){let hash=0;for(let i=0;i<namespace.length;i++){hash=(hash<<5)-hash+namespace.charCodeAt(i);hash|=0}return colors[Math.abs(hash)%colors.length]}__name(selectColor,"selectColor");var namespaces2={};var time=getTimestamp();var useColors=tty.isatty(process.stderr.fd);function log3(...args){return process.stderr.write(renderMessages(args)+"\n")}__name(log3,"log");var COLOR;(function(COLOR2){COLOR2[COLOR2["RED"]=1]="RED";COLOR2[COLOR2["GREEN"]=2]="GREEN";COLOR2[COLOR2["BLUE"]=4]="BLUE";COLOR2[COLOR2["PURPLE"]=5]="PURPLE";COLOR2[COLOR2["GRAY"]=7]="GRAY";COLOR2[COLOR2["ORANGE"]=8]="ORANGE"})(COLOR||(COLOR={}));var colorEnd="[0m";function colorString(value,colorCode){const colorStart="[3"+(colorCode<8?colorCode:"8;5;"+colorCode)+"m";return`${colorStart}${value}${colorEnd}`}__name(colorString,"colorString");function LoggerNodeHandler(opt={}){var _a;const{level=LogLevel.all,colors:colors2=true,levelHelper=true,nameBrackets=true,padding=0,fill=0,filter=void 0,stack=true}=opt;const matches=useNamespaceFilter((_a=filter!=null?filter:process.env.ZEED)!=null?_a:process.env.DEBUG);return msg=>{if(msg.level<level)return;if(!matches(msg.name))return;const timeNow=getTimestamp();let name=msg.name||"";let ninfo=namespaces2[name||""];if(ninfo==null){ninfo={color:selectColor(name)};namespaces2[name]=ninfo}const diff=formatMilliseconds(timeNow-time);let args;let displayName=nameBrackets?`[${name}]`:name;if(padding>0){displayName=displayName.padStart(padding," ")}if(fill>0){displayName=displayName.padEnd(fill," ")}if(colors2&&useColors){const c=ninfo.color;args=[colorString(displayName,c)+` | `];args.push(...msg.messages);args.push(colorString(`+${diff}`,c))}else{args=[displayName,...msg.messages];args.push(`+${diff}`)}if(stack){const depth=typeof stack==="number"?stack:3;const line=getSourceLocation(depth,true);if(line){args.push(colorString(`(${line})`,7))}}switch(msg.level){case LogLevel.info:if(levelHelper)args[0]=`I|* `+args[0];log3(...args);break;case LogLevel.warn:if(levelHelper)args[0]=`W|** `+args[0];log3(...args);break;case LogLevel.error:if(levelHelper)args[0]=`E|*** `+args[0];log3(...args);break;default:if(levelHelper)args[0]=`D| `+args[0];log3(...args);break}}}__name(LoggerNodeHandler,"LoggerNodeHandler");import{dirname as dirname2}from"path";import{fileURLToPath}from"url";var _dirname=typeof __dirname!=="undefined"?__dirname:dirname2(fileURLToPath(import.meta.url));export{stringToPath,valueToPath,toPath,setupEnv,FileStorage,LoggerFileHandler,colorString,LoggerNodeHandler,_dirname};
|
|
2
|
+
//# sourceMappingURL=chunk-SBWPFLFM.js.map
|
|
File without changes
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var __defProp=Object.defineProperty;var __getOwnPropSymbols=Object.getOwnPropertySymbols;var __hasOwnProp=Object.prototype.hasOwnProperty;var __propIsEnum=Object.prototype.propertyIsEnumerable;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:true,configurable:true,writable:true,value}):obj[key]=value;var __spreadValues=(a,b)=>{for(var prop in b||(b={}))if(__hasOwnProp.call(b,prop))__defNormalProp(a,prop,b[prop]);if(__getOwnPropSymbols)for(var prop of __getOwnPropSymbols(b)){if(__propIsEnum.call(b,prop))__defNormalProp(a,prop,b[prop])}return a};var __name=(target,value)=>__defProp(target,"name",{value,configurable:true});var __require=typeof require!=="undefined"?require:x=>{throw new Error('Dynamic require of "'+x+'" is not supported')};function getWindow(){if(typeof window!=="undefined")return window}__name(getWindow,"getWindow");function getNavigator(){if(typeof navigator!=="undefined")return navigator}__name(getNavigator,"getNavigator");function getGlobal(){var _a;return((_a=getWindow())!=null?_a:typeof WorkerGlobalScope!=="undefined")?self:typeof global!=="undefined"?global:Function("return this;")()}__name(getGlobal,"getGlobal");var _navigator=getNavigator();var _window=getWindow();function detect(info={ios:false,macos:false,windows:false,beaker:false,electron:false,wkwebview:false,pwa:false,pwaInstalled:false,browser:false,node:false,worker:false,jest:false,macosNative:false,iosNative:false,appleNative:false,touch:false}){var _a,_b,_c,_d,_e,_f,_g,_h;info.ios=((_a=_navigator==null?void 0:_navigator.platform)==null?void 0:_a.match(/(iPhone|iPod|iPad)/i))!=null;info.macos=!!((_b=_navigator==null?void 0:_navigator.platform)==null?void 0:_b.startsWith("Mac"));info.windows=!!((_c=_navigator==null?void 0:_navigator.platform)==null?void 0:_c.startsWith("Win"));info.beaker=(_window==null?void 0:_window["beaker"])!=null;info.electron=(((_e=(_d=_navigator==null?void 0:_navigator.userAgent)==null?void 0:_d.toLowerCase())==null?void 0:_e.indexOf(" electron/"))||-1)>-1&&!info.beaker;info.wkwebview=((_f=_window==null?void 0:_window.webkit)==null?void 0:_f["messageHandlers"])!=null;info.pwa=(_navigator==null?void 0:_navigator.serviceWorker)!=null;info.pwaInstalled=(_navigator==null?void 0:_navigator.standalone)||((_g=_window==null?void 0:_window.matchMedia("(display-mode: standalone)"))==null?void 0:_g.matches);info.node=typeof process!=="undefined"&&((_h=process==null?void 0:process.release)==null?void 0:_h.name)==="node";info.browser=!info.electron&&!info.wkwebview&&!info.node;info.worker=typeof WorkerGlobalScope!=="undefined"&&self instanceof WorkerGlobalScope;info.jest=typeof jest!=="undefined";info.macosNative=info.wkwebview&&info.macos;info.iosNative=info.wkwebview&&info.ios;info.appleNative=info.wkwebview;info.touch=_window&&"ontouchstart"in _window||((_navigator==null?void 0:_navigator.maxTouchPoints)||0)>1||(_navigator==null?void 0:_navigator.msPointerEnabled)&&(_window==null?void 0:_window.MSGesture)||(_window==null?void 0:_window.DocumentTouch)&&document instanceof DocumentTouch;return info}__name(detect,"detect");var isBrowser=__name(()=>typeof window!=="undefined"&&globalThis===window,"isBrowser");var platform=detect();function useExitHandler(handler){if(isBrowser()){window.addEventListener("beforeunload",handler)}else if(typeof process!=="undefined"){process.on("exit",()=>handler)}}__name(useExitHandler,"useExitHandler");var getTimestamp=__name(()=>typeof performance!=="undefined"?performance.now():new Date().getTime(),"getTimestamp");function formatMilliseconds(ms){return ms>999?(ms/1e3).toFixed(1)+"s":ms.toFixed(2)+"ms"}__name(formatMilliseconds,"formatMilliseconds");var isObject=__name(obj=>obj&&typeof obj==="object","isObject");var isPrimitive=__name(obj=>Object(obj)!==obj,"isPrimitive");function deepEqual(a,b,hash=new WeakSet){if(a===b){return true}if(hash.has(b)){return true}if(!isPrimitive(b)){hash.add(b)}if(!(a instanceof Object)||!(b instanceof Object)){return false}if(a.constructor!==b.constructor){return false}if(a.length!==b.length){return false}for(let p in a){if(!a.hasOwnProperty(p)){continue}if(!b.hasOwnProperty(p)){return false}let aa=a[p];let bb=b[p];if(!deepEqual(aa,bb,hash)){return false}}for(let p in b){if(b.hasOwnProperty(p)&&!a.hasOwnProperty(p)){return false}}return true}__name(deepEqual,"deepEqual");function deepMerge(target,...sources){for(let source of sources){if(!isObject(target)){target={}}if(source==null)continue;Object.keys(source).forEach(key=>{const targetValue=target[key];const sourceValue=source[key];if(Array.isArray(targetValue)&&Array.isArray(sourceValue)){target[key]=targetValue.concat(sourceValue)}else if(isObject(targetValue)&&isObject(sourceValue)){target[key]=deepMerge(Object.assign({},targetValue),sourceValue)}else{target[key]=sourceValue}})}return target}__name(deepMerge,"deepMerge");function useNamespaceFilter(filter){let fn;let reject=[];let accept=[];if(!filter){fn=__name(function(name){return false},"fn")}else if(filter==="*"){fn=__name(function(name){return true},"fn")}else{let i;const split=filter.split(/[\s,]+/);const len=split.length;for(i=0;i<len;i++){if(!split[i]){continue}let template=split[i].replace(/\*/g,".*?");if(template[0]==="-"){reject.push(new RegExp("^"+template.substr(1)+"$"))}else{accept.push(new RegExp("^"+template+"$"))}}fn=__name(function(name){if(reject.length===0&&accept.length===0){return true}let i2,len2;for(i2=0,len2=reject.length;i2<len2;i2++){if(reject[i2].test(name)){return false}}for(i2=0,len2=accept.length;i2<len2;i2++){if(accept[i2].test(name)){return true}}return false},"fn")}fn.accept=accept;fn.reject=reject;fn.filter=filter;return fn}__name(useNamespaceFilter,"useNamespaceFilter");var LogLevel;(function(LogLevel2){LogLevel2[LogLevel2["all"]=-1]="all";LogLevel2[LogLevel2["debug"]=0]="debug";LogLevel2[LogLevel2["info"]=1]="info";LogLevel2[LogLevel2["warn"]=2]="warn";LogLevel2[LogLevel2["error"]=3]="error";LogLevel2[LogLevel2["fatal"]=4]="fatal";LogLevel2[LogLevel2["off"]=Infinity]="off"})(LogLevel||(LogLevel={}));function LoggerContext(prefix=""){let logHandlers=[LoggerConsoleHandler()];let logAssertLevel=2;let logCheckNamespace=__name(name=>true,"logCheckNamespace");let logLock=false;let logFactory=LoggerBaseFactory;function LoggerBaseFactory(name=""){log.extend=function(prefix2){return logFactory(name?`${name}:${prefix2}`:prefix2)};const emit=__name(msg=>{if(log.active===true){if(msg.level>=Logger2.level&&msg.level>=log.level){if(logCheckNamespace(name)){for(let handler of logHandlers){if(handler)handler(msg)}}}}},"emit");function log(...messages){emit({name,messages,level:0})}__name(log,"log");log.active=true;log.level=-1;log.debug=function(...messages){emit({name,messages,level:0})};log.info=function(...messages){emit({name,messages,level:1})};log.warn=function(...messages){emit({name,messages,level:2})};log.error=function(...messages){emit({name,messages,level:3})};log.assert=function(cond,...messages){if(!cond){if(typeof console!==void 0){if(console.assert){console.assert(cond,...messages)}else{console.error(`Assert did fail with: ${cond}`,...messages)}}emit({name,messages:messages||[`Assert did fail with: ${cond}`],level:logAssertLevel})}};log.assertEqual=function(value,expected,...args){let equal=deepEqual(value,expected);if(!equal){log.assert(equal,`Assert did fail. Expected ${expected} got ${value}`,expected,value,...args)}};log.assertNotEqual=function(value,expected,...args){let equal=deepEqual(value,expected);if(equal){log.assert(equal,`Assert did fail. Expected ${expected} not to be equal with ${value}`,expected,value,...args)}};return log}__name(LoggerBaseFactory,"LoggerBaseFactory");function Logger2(name=""){return logFactory(name)}__name(Logger2,"Logger");Logger2.registerHandler=function(handler){logHandlers.push(handler)};Logger2.setFilter=function(namespaces2){logCheckNamespace=useNamespaceFilter(namespaces2)};Logger2.setLock=(lock=true)=>logLock=lock;Logger2.setHandlers=function(handlers=[]){if(logFactory!==LoggerBaseFactory){logFactory=LoggerBaseFactory}if(logLock)return;logHandlers=[...handlers].filter(h=>typeof h==="function")};Logger2.level=-1;Logger2.setLogLevel=function(level=-1){if(logLock)return;Logger2.level=level};Logger2.setFactory=function(factory){if(logLock)return;logFactory=factory};return Logger2}__name(LoggerContext,"LoggerContext");function LoggerConsoleHandler(opt={}){const{level=LogLevel.all,colors:colors2=true,levelHelper=false,nameBrackets=true,padding=16,filter=void 0}=opt;return msg=>{if(msg.level<level)return;let name=msg.name?`[${msg.name}]`:"";switch(msg.level){case LogLevel.info:console.info(`I|* ${name}`,...msg.messages);break;case LogLevel.warn:console.warn(`W|** ${name}`,...msg.messages);break;case LogLevel.error:console.error(`E|*** ${name}`,...msg.messages);break;default:console.debug(`D| ${name}`,...msg.messages);break}}}__name(LoggerConsoleHandler,"LoggerConsoleHandler");var colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function supportsColors(){if(typeof window!=="undefined"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)){return true}if(typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)){return false}return typeof document!=="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!=="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}__name(supportsColors,"supportsColors");function selectColor(namespace){let hash=0;for(let i=0;i<namespace.length;i++){hash=(hash<<5)-hash+namespace.charCodeAt(i);hash|=0}return colors[Math.abs(hash)%colors.length]}__name(selectColor,"selectColor");var styleFont=`font-family: "JetBrains Mono", Menlo; font-size: 11px;`;var styleDefault=`${styleFont}`;var styleBold=`font-weight: 600; ${styleFont}`;var useColors=supportsColors();var namespaces={};var time=getTimestamp();function LoggerBrowserHandler(opt={}){var _a,_b;const{level=LogLevel.all,colors:colors2=true,levelHelper=false,nameBrackets=true,padding=16}=opt;const matches=useNamespaceFilter((_b=(_a=opt.filter)!=null?_a:localStorage.zeed)!=null?_b:localStorage.debug);return msg=>{var _a2,_b2;if(msg.level<level)return;if(!matches(msg.name))return;const timeNow=getTimestamp();let name=msg.name||"";let ninfo=namespaces[name||""];if(ninfo==null){ninfo={color:selectColor(name)};namespaces[name]=ninfo}const diff=formatMilliseconds(timeNow-time);let args;if(padding>0){name=name.padEnd(16," ")}if(colors2&&useColors){args=[`%c${name}%c %s %c+${diff}`];args.push(`color:${ninfo.color}; ${styleBold}`);args.push(styleDefault);args.push((_b2=(_a2=msg.messages)==null?void 0:_a2[0])!=null?_b2:"");args.push(`color:${ninfo.color};`);args.push(...msg.messages.slice(1))}else{args=[name,...msg.messages,`+${diff}`]}switch(msg.level){case LogLevel.info:if(opt.levelHelper)args[0]=`I|* `+args[0];console.info(...args);break;case LogLevel.warn:if(opt.levelHelper)args[0]=`W|** `+args[0];console.warn(...args);break;case LogLevel.error:if(opt.levelHelper)args[0]=`E|*** `+args[0];console.error(...args);break;default:if(opt.levelHelper)args[0]=`D| `+args[0];console.debug(...args);break}}}__name(LoggerBrowserHandler,"LoggerBrowserHandler");function LoggerBrowserSetupDebugFactory(opt={}){var _a,_b;const filter=(_b=(_a=opt.filter)!=null?_a:localStorage.zeed)!=null?_b:localStorage.debug;return __name(function LoggerBrowserDebugFactory(name=""){let log;const matches=useNamespaceFilter(filter);if(matches(name)){let fixedArgs=[];if(useColors){const color=selectColor(name);fixedArgs.push(`%c${name.padEnd(16," ")}%c %s`);fixedArgs.push(`color:${color}; ${styleBold}`);fixedArgs.push(styleDefault)}else{fixedArgs.push(`[${name}] %s`)}log=console.debug.bind(console,...fixedArgs);log.debug=console.debug.bind(console,...fixedArgs);log.info=console.info.bind(console,...fixedArgs);log.warn=console.warn.bind(console,...fixedArgs);log.error=console.error.bind(console,...fixedArgs);log.assert=console.assert.bind(console);log.assertEqual=function(value,expected,...args){let equal=deepEqual(value,expected);if(!equal){log.assert(equal,`Assert did fail. Expected ${expected} got ${value}`,expected,value,...args)}};log.assertNotEqual=function(value,expected,...args){let equal=deepEqual(value,expected);if(equal){log.assert(equal,`Assert did fail. Expected ${expected} not to be equal with ${value}`,expected,value,...args)}}}else{const noop=__name(()=>{},"noop");log=noop;log.debug=noop;log.info=noop;log.warn=noop;log.error=noop;log.assert=noop;log.assertEqual=noop;log.assertNotEqual=noop}log.extend=subName=>{return LoggerBrowserDebugFactory(name?`${name}:${subName}`:subName)};return log},"LoggerBrowserDebugFactory")}__name(LoggerBrowserSetupDebugFactory,"LoggerBrowserSetupDebugFactory");function activateConsoleDebug(opt={}){console.info("activateConsoleDebug is activated by default in browsers")}__name(activateConsoleDebug,"activateConsoleDebug");function _global(){if(typeof self!=="undefined")return self;if(typeof window!=="undefined")return window;if(typeof global!=="undefined")return global;if(typeof globalThis!=="undefined")return globalThis;throw new Error("unable to locate global object")}__name(_global,"_global");function getGlobalContext(){let gcontext=_global();if(gcontext._zeedGlobal==null){gcontext._zeedGlobal={}}return gcontext._zeedGlobal}__name(getGlobalContext,"getGlobalContext");var globalLogger;function getLoggerContext(){let logger=LoggerContext();if(isBrowser()){logger.setHandlers([LoggerBrowserHandler()]);logger.setFactory(LoggerBrowserSetupDebugFactory({}))}return logger}__name(getLoggerContext,"getLoggerContext");try{let _global2=getGlobalContext();if(_global2!=null){if((_global2==null?void 0:_global2.logger)==null){globalLogger=getLoggerContext();_global2.logger=globalLogger}else{globalLogger=_global2.logger}}else{globalLogger=getLoggerContext()}}catch(e){globalLogger=getLoggerContext()}var Logger=globalLogger;export{__spreadValues,__name,getWindow,getNavigator,getGlobal,detect,isBrowser,platform,useExitHandler,getTimestamp,formatMilliseconds,isObject,isPrimitive,deepEqual,deepMerge,LoggerConsoleHandler,useNamespaceFilter,LogLevel,LoggerContext,supportsColors,selectColor,LoggerBrowserHandler,LoggerBrowserSetupDebugFactory,activateConsoleDebug,getGlobalContext,Logger};
|
|
2
|
+
//# sourceMappingURL=chunk-WZC5PIVP.js.map
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/common/platform.ts", "../src/common/time.ts", "../src/common/data/deep.ts", "../src/common/log-filter.ts", "../src/common/log-base.ts", "../src/common/log-console.ts", "../src/browser/log-colors.ts", "../src/browser/log-browser.ts", "../src/common/global.ts", "../src/common/log.ts"],
|
|
4
4
|
"sourcesContent": ["// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nexport function getWindow(): any | undefined {\n // @ts-ignore\n if (typeof window !== \"undefined\") return window\n}\n\nexport function getNavigator(): any | undefined {\n // @ts-ignore\n if (typeof navigator !== \"undefined\") return navigator\n}\n\nexport function getGlobal(): any {\n return getWindow() ??\n // @ts-ignore\n typeof WorkerGlobalScope !== \"undefined\"\n ? // @ts-ignore\n self\n : typeof global !== \"undefined\"\n ? global\n : Function(\"return this;\")()\n}\n\nconst _navigator = getNavigator()\nconst _window = getWindow()\n\nexport function detect(\n info = {\n ios: false,\n macos: false,\n windows: false,\n beaker: false,\n electron: false,\n wkwebview: false,\n pwa: false,\n pwaInstalled: false,\n browser: false,\n node: false,\n worker: false,\n jest: false,\n macosNative: false,\n iosNative: false,\n appleNative: false,\n touch: false,\n }\n) {\n info.ios = _navigator?.platform?.match(/(iPhone|iPod|iPad)/i) != null\n info.macos = !!_navigator?.platform?.startsWith(\"Mac\")\n info.windows = !!_navigator?.platform?.startsWith(\"Win\")\n\n // @ts-ignore\n info.beaker = _window?.[\"beaker\"] != null // https://github.com/beakerbrowser/beaker\n info.electron =\n (_navigator?.userAgent?.toLowerCase()?.indexOf(\" electron/\") || -1) > -1 &&\n !info.beaker\n // @ts-ignore\n info.wkwebview = _window?.webkit?.[\"messageHandlers\"] != null //Apple embedded\n\n info.pwa = _navigator?.serviceWorker != null\n\n info.pwaInstalled =\n // @ts-ignore\n _navigator?.standalone ||\n _window?.matchMedia(\"(display-mode: standalone)\")?.matches\n\n info.node =\n typeof process !== \"undefined\" && process?.release?.name === \"node\"\n info.browser = !info.electron && !info.wkwebview && !info.node\n\n // info.worker = typeof importScripts === 'function'\n // @ts-ignore\n info.worker =\n // @ts-ignore\n typeof WorkerGlobalScope !== \"undefined\" &&\n // @ts-ignore\n self instanceof WorkerGlobalScope\n // @ts-ignore\n info.jest = typeof jest !== \"undefined\"\n\n info.macosNative = info.wkwebview && info.macos\n info.iosNative = info.wkwebview && info.ios\n info.appleNative = info.wkwebview\n\n // https://github.com/viljamis/feature.js/blob/master/feature.js#L203\n // @ts-ignore\n info.touch =\n (_window && \"ontouchstart\" in _window) ||\n (_navigator?.maxTouchPoints || 0) > 1 ||\n // @ts-ignore\n (_navigator?.msPointerEnabled && _window?.MSGesture) ||\n // @ts-ignore\n (_window?.DocumentTouch && document instanceof DocumentTouch)\n\n return info\n}\n\n// https://stackoverflow.com/a/31090240/140927\n// export const isBrowser = new Function(\n// \"try {return this===window;}catch(e){ return false;}\"\n// )\n\n// export const isNode = new Function(\n// \"try {return this===global;}catch(e){return false;}\"\n// )\n\nexport const isBrowser = () =>\n typeof window !== \"undefined\" && globalThis === window\n\nexport const platform = detect()\n\n/**\n * Before closing the tab/window or quitting the node process\n * allow to do something important first\n */\nexport function useExitHandler(handler: () => void) {\n if (isBrowser()) {\n window.addEventListener(\"beforeunload\", handler)\n } else if (typeof process !== \"undefined\") {\n process.on(\"exit\", () => handler)\n }\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\n/**\n * @returns Timestamp in miliseconds\n */\nexport const getTimestamp = (): number =>\n // @ts-ignore\n typeof performance !== \"undefined\" ? performance.now() : new Date().getTime()\n\nexport function formatMilliseconds(ms: number): string {\n return ms > 999 ? (ms / 1000).toFixed(1) + \"s\" : ms.toFixed(2) + \"ms\"\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nexport const isObject = (obj: any) => obj && typeof obj === \"object\"\nexport const isPrimitive = (obj: any) => Object(obj) !== obj\n\n// export function deepClone(obj) {\n// return cloneDeep(obj)\n// }\n\n// // https://stackoverflow.com/a/40294058/140927\n// // Handles cyclic references\n// export function deepClone(obj, hash = new WeakMap()) {\n// return cloneDeep(obj)\n//\n// // primitives\n// if (Object(obj) !== obj) {\n// return obj\n// }\n//\n// // cyclic reference\n// if (hash.has(obj)) {\n// return hash.get(obj)\n// }\n//\n// let result\n//\n// // primitives as objects like new String(), new Number()\n// if (\n// obj instanceof String ||\n// obj instanceof Number ||\n// obj instanceof BigInt ||\n// obj instanceof Boolean ||\n// obj instanceof Symbol\n// ) {\n// result = new obj.constructor(obj.valueOf())\n// hash.set(obj, result)\n// return result\n// }\n//\n// if (obj instanceof Set) {\n// result = new Set(obj)\n// } else if (obj instanceof Map) {\n// result = new Map(Array.from(obj, ([key, val]) =>\n// [key, deepClone(val, hash)]))\n// } else if (obj instanceof Date) {\n// result = new Date(obj)\n// } else if (obj instanceof RegExp) {\n// result = new RegExp(obj.source, obj.flags)\n// } else if (obj.constructor) {\n// result = new obj.constructor()\n// } else {\n// result = Object.create(null)\n// }\n//\n// hash.set(obj, result)\n//\n// return Object.assign(result, ...Object.keys(obj).map(key => ({\n// [key]: deepClone(obj[key], hash),\n// })),\n// )\n// }\n//\n// // https://stackoverflow.com/a/40294058/140927\n// // Handles cyclic references\n// export function deepClonePrimitives(obj, hash = new WeakMap()) {\n//\n// // primitives\n// if (Object(obj) !== obj) {\n// // log('Primitive', obj)\n// return obj\n// }\n//\n// // cyclic reference\n// if (hash.has(obj)) {\n// return hash.get(obj)\n// }\n//\n// let result\n//\n// // primitives as objects like new String(), new Number()\n// if (\n// obj instanceof String ||\n// obj instanceof Number ||\n// obj instanceof BigInt ||\n// obj instanceof Boolean ||\n// obj instanceof Symbol\n// ) {\n// result = new obj.constructor(obj.valueOf())\n// // hash.set(obj, result)\n// return result\n// }\n//\n// // log('Obj', obj)\n//\n// if (obj instanceof Set) {\n// result = new Set(obj)\n// } else if (obj instanceof Map) {\n// result = new Map(Array.from(obj, ([key, val]) => [key, deepClonePrimitives(val, hash)]))\n// } else if (obj instanceof Date) {\n// result = new Date(obj)\n// } else if (obj instanceof RegExp) {\n// result = new RegExp(obj.source, obj.flags)\n// } else if (Array.isArray(obj)) {\n// result = Array.from(obj, val => deepClonePrimitives(val, hash))\n// } else if (obj.constructor) {\n// result = new obj.constructor()\n// log('bj object', result)\n// } else if (obj instanceof Function || typeof obj === 'function') {\n// log('Keep object', obj, Object.getPrototypeOf(obj))\n// result = obj\n// } else {\n// result = Object.create(null)\n// }\n//\n// hash.set(obj, result)\n//\n// return Object.assign(result, ...Object.keys(obj).map(key => ({\n// [key]: deepClonePrimitives(obj[key], hash),\n// })))\n// }\n\nexport function deepEqual(a: any, b: any, hash = new WeakSet()) {\n // if both x and y are null or undefined and exactly the same\n if (a === b) {\n return true\n }\n\n // Cyclic\n if (hash.has(b)) {\n // console.log('cyclic')\n return true\n }\n\n if (!isPrimitive(b)) {\n hash.add(b)\n }\n\n // if they are not strictly equal, they both need to be Objects\n if (!(a instanceof Object) || !(b instanceof Object)) {\n return false\n }\n\n // they must have the exact same prototype chain, the closest we can do is\n // test there constructor.\n if (a.constructor !== b.constructor) {\n return false\n }\n\n // Shortcut to avoid to many loops\n if (a.length !== b.length) {\n return false\n }\n\n for (let p in a) {\n // other properties were tested using x.constructor === y.constructor\n if (!a.hasOwnProperty(p)) {\n continue\n }\n\n // allows to compare x[ p ] and y[ p ] when set to undefined\n if (!b.hasOwnProperty(p)) {\n return false\n }\n\n let aa = a[p]\n let bb = b[p]\n\n // if they have the same strict value or identity then they are equal\n // if (aa === bb) {\n // console.log('eq', typeof bb)\n // if (bb != null) hash.set(bb, true)\n // continue\n // }\n //\n // // Numbers, Strings, Functions, Booleans must be strictly equal\n // if (typeof (aa) !== 'object') {\n // return false\n // }\n\n // Objects and Arrays must be tested recursively\n if (!deepEqual(aa, bb, hash)) {\n return false\n }\n }\n\n // allows x[ p ] to be set to undefined\n for (let p in b) {\n if (b.hasOwnProperty(p) && !a.hasOwnProperty(p)) {\n return false\n }\n }\n\n return true\n}\n\nexport function deepMerge(target: any, ...sources: any[]) {\n for (let source of sources) {\n if (!isObject(target)) {\n target = {}\n }\n\n if (source == null) continue\n\n Object.keys(source).forEach((key) => {\n const targetValue = target[key]\n const sourceValue = source[key]\n\n if (Array.isArray(targetValue) && Array.isArray(sourceValue)) {\n target[key] = targetValue.concat(sourceValue)\n } else if (isObject(targetValue) && isObject(sourceValue)) {\n target[key] = deepMerge(Object.assign({}, targetValue), sourceValue)\n } else {\n target[key] = sourceValue\n }\n })\n }\n\n return target\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\ninterface NamespaceFilter {\n (name: string): boolean\n accept: RegExp[]\n reject: RegExp[]\n filter: string\n}\n\n/**\n * Filter as described here https://github.com/visionmedia/debug#wildcards\n *\n * @param filter Namespace filter\n * @returns Function to check if filter applies\n */\nexport function useNamespaceFilter(filter?: string): NamespaceFilter {\n let fn: any // (name: string) => boolean\n let reject = [] as RegExp[]\n let accept = [] as RegExp[]\n\n if (!filter) {\n fn = function (name: string) {\n return false\n }\n } else if (filter === \"*\") {\n fn = function (name: string) {\n return true\n }\n } else {\n let i\n const split = filter.split(/[\\s,]+/)\n const len = split.length\n for (i = 0; i < len; i++) {\n if (!split[i]) {\n // ignore empty strings\n continue\n }\n let template = split[i].replace(/\\*/g, \".*?\")\n if (template[0] === \"-\") {\n reject.push(new RegExp(\"^\" + template.substr(1) + \"$\"))\n } else {\n accept.push(new RegExp(\"^\" + template + \"$\"))\n }\n }\n\n fn = function (name: string) {\n if (reject.length === 0 && accept.length === 0) {\n return true\n }\n let i, len\n for (i = 0, len = reject.length; i < len; i++) {\n if (reject[i].test(name)) {\n return false\n }\n }\n for (i = 0, len = accept.length; i < len; i++) {\n if (accept[i].test(name)) {\n return true\n }\n }\n return false\n }\n }\n fn.accept = accept\n fn.reject = reject\n fn.filter = filter\n return fn as NamespaceFilter\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nimport { deepEqual } from \"./data/deep\"\nimport { LoggerConsoleHandler } from \"./log-console\"\nimport { useNamespaceFilter } from \"./log-filter\"\n\nexport enum LogLevel {\n all = -1,\n debug = 0,\n info,\n warn,\n error,\n fatal,\n off = Infinity,\n}\n\nexport interface LogMessage {\n level: LogLevel\n name: string\n messages: any[]\n line?: number\n file?: string\n timestamp?: number\n}\n\nexport type LogHandler = (msg: LogMessage) => void\n\nexport interface LoggerInterface {\n (...messages: any[]): void\n\n /** @deprecated use .level = LogLevel.off or LogLevel.all */\n active: boolean\n\n level: LogLevel\n\n debug(...messages: any[]): void\n\n info(...messages: any[]): void\n\n warn(...messages: any[]): void\n\n error(...messages: any[]): void\n\n assert(cond: any, ...messages: any[]): void\n\n /** @deprecated use .assert */\n assertEqual(value: any, expected: any, ...args: any[]): void\n\n /** @deprecated use .assert */\n assertNotEqual(value: any, expected: any, ...args: any[]): void\n\n extend(prefix: string): LoggerInterface\n\n factory?: LoggerContextInterface\n}\n\nexport interface LoggerContextInterface {\n (name?: string): LoggerInterface\n registerHandler(handler: LogHandler): void\n setFilter(namespaces: string): void\n setHandlers(handlers?: LogHandler[]): void\n setLock(lock: boolean): void\n setLogLevel(level?: LogLevel): void\n setFactory(factory: (name?: string) => LoggerInterface): void\n}\n\nexport interface LogHandlerOptions {\n level?: LogLevel\n filter?: string\n colors?: boolean\n levelHelper?: boolean\n nameBrackets?: boolean\n padding?: number\n fill?: number\n stack?: boolean | number\n}\n\nexport function LoggerContext(prefix: string = \"\"): LoggerContextInterface {\n let logHandlers: LogHandler[] = [LoggerConsoleHandler()]\n let logAssertLevel: LogLevel = LogLevel.warn\n let logCheckNamespace = (name: string) => true\n let logLock = false\n let logFactory = LoggerBaseFactory\n\n function LoggerBaseFactory(name: string = \"\"): LoggerInterface {\n log.extend = function (prefix: string): LoggerInterface {\n return logFactory(name ? `${name}:${prefix}` : prefix)\n }\n\n const emit = (msg: LogMessage) => {\n if (log.active === true) {\n if (msg.level >= Logger.level && msg.level >= log.level) {\n if (logCheckNamespace(name)) {\n for (let handler of logHandlers) {\n if (handler) handler(msg)\n }\n }\n }\n }\n }\n\n function log(...messages: any[]) {\n emit({\n name,\n messages,\n level: LogLevel.debug,\n })\n }\n\n log.active = true\n log.level = LogLevel.all\n\n log.debug = function (...messages: any[]) {\n emit({\n name,\n messages,\n level: LogLevel.debug,\n })\n }\n\n log.info = function (...messages: any[]) {\n emit({\n name,\n messages,\n level: LogLevel.info,\n })\n }\n\n log.warn = function (...messages: any[]) {\n emit({\n name,\n messages,\n level: LogLevel.warn,\n })\n }\n\n log.error = function (...messages: any[]) {\n emit({\n name,\n messages,\n level: LogLevel.error,\n })\n }\n\n // fatal(...args: any[]) {\n // console.error(...args)\n // },\n\n log.assert = function (cond: any, ...messages: any[]) {\n if (!cond) {\n if (typeof console !== undefined) {\n if (console.assert) {\n // https://developer.mozilla.org/de/docs/Web/API/Console/assert\n console.assert(cond, ...messages)\n } else {\n console.error(`Assert did fail with: ${cond}`, ...messages)\n }\n }\n emit({\n name,\n messages: messages || [`Assert did fail with: ${cond}`],\n level: logAssertLevel,\n })\n // try {\n // if (typeof expect !== undefined) {\n // expect(cond).toBeTruthy()\n // }\n // } catch (err) {\n // methods.warn(...args)\n // }\n }\n }\n\n log.assertEqual = function (value: any, expected: any, ...args: any[]) {\n let equal = deepEqual(value, expected)\n if (!equal) {\n log.assert(\n equal,\n `Assert did fail. Expected ${expected} got ${value}`,\n expected,\n value,\n ...args\n )\n // } else {\n // methods.debug(`Passed equal`)\n }\n }\n\n log.assertNotEqual = function (value: any, expected: any, ...args: any[]) {\n let equal = deepEqual(value, expected)\n if (equal) {\n log.assert(\n equal,\n `Assert did fail. Expected ${expected} not to be equal with ${value}`,\n expected,\n value,\n ...args\n )\n // } else {\n // methods.debug(`Passed not equal check`)\n }\n }\n\n return log\n }\n\n function Logger(name: string = \"\"): LoggerInterface {\n return logFactory(name)\n }\n\n Logger.registerHandler = function (handler: LogHandler) {\n logHandlers.push(handler)\n }\n\n Logger.setFilter = function (namespaces: string) {\n logCheckNamespace = useNamespaceFilter(namespaces)\n }\n\n Logger.setLock = (lock: boolean = true) => (logLock = lock)\n\n Logger.setHandlers = function (handlers: LogHandler[] = []) {\n if (logFactory !== LoggerBaseFactory) {\n logFactory = LoggerBaseFactory\n }\n if (logLock) return\n logHandlers = [...handlers].filter((h) => typeof h === \"function\")\n }\n\n Logger.level = LogLevel.all\n\n /** @deprecated */\n Logger.setLogLevel = function (level: LogLevel = LogLevel.all) {\n if (logLock) return\n Logger.level = level\n }\n\n Logger.setFactory = function (\n factory: (name?: string) => LoggerInterface\n ): void {\n if (logLock) return\n logFactory = factory\n }\n\n return Logger\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nimport { LogLevel, LogHandler, LogMessage, LogHandlerOptions } from \"./log-base\"\n\n/**\n * Very basic logger. Please take a look at the browser and node\n * optimized loggers. This one is just the absolute fallback option.\n *\n * @param level Log level\n * @returns Logger\n */\nexport function LoggerConsoleHandler(opt: LogHandlerOptions = {}): LogHandler {\n const {\n level = LogLevel.all,\n colors = true,\n levelHelper = false,\n nameBrackets = true,\n padding = 16,\n filter = undefined,\n } = opt\n return (msg: LogMessage) => {\n if (msg.level < level) return\n let name = msg.name ? `[${msg.name}]` : \"\"\n switch (msg.level) {\n case LogLevel.info:\n console.info(`I|* ${name}`, ...msg.messages)\n break\n case LogLevel.warn:\n console.warn(`W|** ${name}`, ...msg.messages)\n break\n case LogLevel.error:\n console.error(`E|*** ${name}`, ...msg.messages)\n break\n default:\n console.debug(`D| ${name}`, ...msg.messages)\n break\n }\n }\n}\n", "// Taken from https://github.com/visionmedia/debug/blob/master/src/browser.js#L27\n\nconst colors = [\n \"#0000CC\",\n \"#0000FF\",\n \"#0033CC\",\n \"#0033FF\",\n \"#0066CC\",\n \"#0066FF\",\n \"#0099CC\",\n \"#0099FF\",\n \"#00CC00\",\n \"#00CC33\",\n \"#00CC66\",\n \"#00CC99\",\n \"#00CCCC\",\n \"#00CCFF\",\n \"#3300CC\",\n \"#3300FF\",\n \"#3333CC\",\n \"#3333FF\",\n \"#3366CC\",\n \"#3366FF\",\n \"#3399CC\",\n \"#3399FF\",\n \"#33CC00\",\n \"#33CC33\",\n \"#33CC66\",\n \"#33CC99\",\n \"#33CCCC\",\n \"#33CCFF\",\n \"#6600CC\",\n \"#6600FF\",\n \"#6633CC\",\n \"#6633FF\",\n \"#66CC00\",\n \"#66CC33\",\n \"#9900CC\",\n \"#9900FF\",\n \"#9933CC\",\n \"#9933FF\",\n \"#99CC00\",\n \"#99CC33\",\n \"#CC0000\",\n \"#CC0033\",\n \"#CC0066\",\n \"#CC0099\",\n \"#CC00CC\",\n \"#CC00FF\",\n \"#CC3300\",\n \"#CC3333\",\n \"#CC3366\",\n \"#CC3399\",\n \"#CC33CC\",\n \"#CC33FF\",\n \"#CC6600\",\n \"#CC6633\",\n \"#CC9900\",\n \"#CC9933\",\n \"#CCCC00\",\n \"#CCCC33\",\n \"#FF0000\",\n \"#FF0033\",\n \"#FF0066\",\n \"#FF0099\",\n \"#FF00CC\",\n \"#FF00FF\",\n \"#FF3300\",\n \"#FF3333\",\n \"#FF3366\",\n \"#FF3399\",\n \"#FF33CC\",\n \"#FF33FF\",\n \"#FF6600\",\n \"#FF6633\",\n \"#FF9900\",\n \"#FF9933\",\n \"#FFCC00\",\n \"#FFCC33\",\n]\n\nexport function supportsColors(): boolean {\n // NB: In an Electron preload script, document will be defined but not fully\n // initialized. Since we know we're in Chrome, we'll just detect this case\n // explicitly\n if (\n typeof window !== \"undefined\" &&\n window.process &&\n // @ts-ignore\n (window.process.type === \"renderer\" || window.process.__nwjs)\n ) {\n return true\n }\n\n // Internet Explorer and Edge do not support colors.\n if (\n typeof navigator !== \"undefined\" &&\n navigator.userAgent &&\n navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)\n ) {\n return false\n }\n\n // Is webkit? http://stackoverflow.com/a/16459606/376773\n // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n return (\n (typeof document !== \"undefined\" &&\n document.documentElement &&\n document.documentElement.style &&\n // @ts-ignore\n document.documentElement.style.WebkitAppearance) ||\n // Is firebug? http://stackoverflow.com/a/398120/376773\n (typeof window !== \"undefined\" &&\n window.console &&\n // @ts-ignore\n (window.console.firebug ||\n // @ts-ignore\n (window.console.exception && window.console.table))) ||\n // Is firefox >= v31?\n // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n (typeof navigator !== \"undefined\" &&\n navigator.userAgent &&\n navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) &&\n parseInt(RegExp.$1, 10) >= 31) ||\n // Double check webkit in userAgent just in case we are in a worker\n (typeof navigator !== \"undefined\" &&\n navigator.userAgent &&\n navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/))\n )\n}\n\nexport function selectColor(namespace: string) {\n let hash = 0\n for (let i = 0; i < namespace.length; i++) {\n hash = (hash << 5) - hash + namespace.charCodeAt(i)\n hash |= 0 // Convert to 32bit integer\n }\n return colors[Math.abs(hash) % colors.length]\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nimport { formatMilliseconds, getTimestamp } from \"../common/time\"\nimport {\n LoggerInterface,\n LogHandler,\n LogHandlerOptions,\n LogLevel,\n LogMessage,\n} from \"../common/log-base\"\nimport { selectColor, supportsColors } from \"./log-colors\"\nimport { useNamespaceFilter } from \"../common/log-filter\"\nimport { deepEqual } from \"../common/data/deep\"\n\nconst styleFont = `font-family: \"JetBrains Mono\", Menlo; font-size: 11px;`\nconst styleDefault = `${styleFont}`\nconst styleBold = `font-weight: 600; ${styleFont}`\nconst useColors = supportsColors()\n\nlet namespaces: Record<string, any> = {}\n\nlet time = getTimestamp()\n\nexport function LoggerBrowserHandler(opt: LogHandlerOptions = {}): LogHandler {\n const {\n level = LogLevel.all,\n colors = true,\n levelHelper = false,\n nameBrackets = true,\n padding = 16,\n } = opt\n const matches = useNamespaceFilter(\n opt.filter ?? localStorage.zeed ?? localStorage.debug\n )\n return (msg: LogMessage) => {\n if (msg.level < level) return\n if (!matches(msg.name)) return\n\n const timeNow = getTimestamp()\n let name = msg.name || \"\"\n let ninfo = namespaces[name || \"\"]\n if (ninfo == null) {\n ninfo = {\n color: selectColor(name),\n // time: timeNow\n }\n namespaces[name] = ninfo\n }\n const diff = formatMilliseconds(timeNow - time)\n let args: string[]\n\n if (padding > 0) {\n name = name.padEnd(16, \" \")\n }\n\n if (colors && useColors) {\n args = [`%c${name}%c \\t%s %c+${diff}`]\n args.push(`color:${ninfo.color}; ${styleBold}`)\n args.push(styleDefault)\n args.push(msg.messages?.[0] ?? \"\")\n args.push(`color:${ninfo.color};`)\n args.push(...msg.messages.slice(1))\n } else {\n args = [name, ...msg.messages, `+${diff}`]\n }\n\n // function consoleArgs(args: any[] = []): any[] {\n // return [\n // args\n // .filter((a) => typeof a === \"string\")\n // .map((a) => String(a))\n // .join(\" \"),\n // ...styles,\n // ...args.filter((a) => typeof a !== \"string\"),\n // ]\n // }\n\n switch (msg.level) {\n case LogLevel.info:\n if (opt.levelHelper) args[0] = `I|* ` + args[0]\n console.info(...args)\n break\n case LogLevel.warn:\n if (opt.levelHelper) args[0] = `W|** ` + args[0]\n console.warn(...args)\n break\n case LogLevel.error:\n if (opt.levelHelper) args[0] = `E|*** ` + args[0]\n console.error(...args)\n break\n default:\n if (opt.levelHelper) args[0] = `D| ` + args[0]\n console.debug(...args)\n break\n }\n }\n}\n\nexport function LoggerBrowserSetupDebugFactory(opt: LogHandlerOptions = {}) {\n const filter = opt.filter ?? localStorage.zeed ?? localStorage.debug\n\n /// The trick is, that console called directly provides a reference to the source code.\n /// For the regular implementation this information is lost. But this approach has other\n /// drawbacks, therefore only use it in the Browser when actively debugging.\n return function LoggerBrowserDebugFactory(\n name: string = \"\"\n ): LoggerInterface {\n let log: LoggerInterface\n\n const matches = useNamespaceFilter(filter)\n\n if (matches(name)) {\n let fixedArgs = []\n if (useColors) {\n const color = selectColor(name)\n fixedArgs.push(`%c${name.padEnd(16, \" \")}%c \\t%s`)\n fixedArgs.push(`color:${color}; ${styleBold}`)\n fixedArgs.push(styleDefault)\n } else {\n fixedArgs.push(`[${name}] \\t%s`)\n }\n\n // @ts-ignore\n // console.previous = {\n // debug: console.debug,\n // info: console.info,\n // warn: console.warn,\n // error: console.error,\n // assert: console.assert,\n // }\n\n log = console.debug.bind(console, ...fixedArgs) as LoggerInterface\n log.debug = console.debug.bind(console, ...fixedArgs)\n log.info = console.info.bind(console, ...fixedArgs)\n log.warn = console.warn.bind(console, ...fixedArgs)\n log.error = console.error.bind(console, ...fixedArgs)\n\n log.assert = console.assert.bind(console)\n\n log.assertEqual = function (value: any, expected: any, ...args: any[]) {\n let equal = deepEqual(value, expected)\n if (!equal) {\n log.assert(\n equal,\n `Assert did fail. Expected ${expected} got ${value}`,\n expected,\n value,\n ...args\n )\n }\n }\n\n log.assertNotEqual = function (\n value: any,\n expected: any,\n ...args: any[]\n ) {\n let equal = deepEqual(value, expected)\n if (equal) {\n log.assert(\n equal,\n `Assert did fail. Expected ${expected} not to be equal with ${value}`,\n expected,\n value,\n ...args\n )\n }\n }\n } else {\n const noop = () => {}\n log = noop as LoggerInterface\n log.debug = noop\n log.info = noop\n log.warn = noop\n log.error = noop\n\n log.assert = noop\n log.assertEqual = noop\n log.assertNotEqual = noop\n }\n\n log.extend = (subName: string) => {\n return LoggerBrowserDebugFactory(name ? `${name}:${subName}` : subName)\n }\n\n return log\n }\n}\n\n/** @deprecated This output is default for initial use of Logger in browser environments. */\nexport function activateConsoleDebug(opt: LogHandlerOptions = {}) {\n console.info(\"activateConsoleDebug is activated by default in browsers\")\n // Logger.setHandlers([LoggerBrowserHandler(opt)]) // Fallback for previously registered Loggers\n // Logger.setFactory(LoggerBrowserSetupDebugFactory(opt))\n}\n\n// let klass = console\n// let debug = console.debug.bind(window.console, klass.toString() + \": \")\n\n// debug(\"test\")\n// console.debug(\"test2\")\n\n// let dd\n// if (Function.prototype.bind) {\n// dd = Function.prototype.bind.call(console.log, console)\n// } else {\n// dd = function () {\n// Function.prototype.apply.call(console.log, console, arguments)\n// }\n// }\n\n// dd(\"dd\")\n\n// let c = 1\n// Object.defineProperty(window, \"log2\", {\n// get: () => {\n// return console.log.bind(\n// window.console,\n// \"%c[log]%c %s\" + c++,\n// \"color:red\",\n// \"\"\n// )\n// },\n// })\n\n// // usage:\n// log2(\"Back to the future\")\n// log2(\"Back to the future\")\n\n// let plog = new Proxy(console.debug, {\n// apply: function (target, that, args) {\n// target.apply(that, args)\n// // base.apply(that, args);\n// },\n// })\n\n// let cons = console.debug\n// let plog = (...args) => {\n// cons.apply(window.console, [\"|\", ...args])\n// }\n\n// plog(\"xxx\")\n\n// function a() {\n// var err = new Error()\n// var caller_line = err.stack.split(\"\\n\")[2]\n// var index = caller_line.indexOf(\"at \")\n// var clean = caller_line.slice(index + 2, caller_line.length)\n// clean = clean.replace(/\\?t=\\d+/, \"\").replace(\"@fs/\", \"\")\n// console.log(clean)\n// console.log(\n// \"http://localhost:8080/Users/dirk/work/viidoo/lib/src/browser/log-browser.ts:188:1 log-browser.ts:291:10\"\n// )\n// }\n// function b() {\n// a()\n// }\n// b()\n", "// Global context across build systems etc.\n\ndeclare global {\n interface ZeedGlobalContext {}\n}\n\ninterface ZeedGlobalIntegration {\n _zeedGlobal?: ZeedGlobalContext\n}\n\nfunction _global(): ZeedGlobalIntegration {\n if (typeof self !== \"undefined\") return self as ZeedGlobalIntegration\n if (typeof window !== \"undefined\") return window as ZeedGlobalIntegration\n if (typeof global !== \"undefined\") return global as ZeedGlobalIntegration\n if (typeof globalThis !== \"undefined\")\n return globalThis as ZeedGlobalIntegration\n throw new Error(\"unable to locate global object\")\n}\n\nexport function getGlobalContext(): ZeedGlobalContext {\n let gcontext = _global()\n if (gcontext._zeedGlobal == null) {\n gcontext._zeedGlobal = {}\n }\n return gcontext._zeedGlobal\n}\n", "// (C)opyright 2021-07-15 Dirk Holtwick, holtwick.it. All rights reserved.\n\nimport { isBrowser } from \"./platform\"\nimport {\n LoggerBrowserHandler,\n LoggerBrowserSetupDebugFactory,\n} from \"../browser/log-browser\"\nimport { getGlobalContext } from \"./global\"\nimport { LoggerContext, LoggerContextInterface } from \"./log-base\"\n\n// Global logger to guarantee all submodules use the same logger instance\n\nlet globalLogger: LoggerContextInterface\n\ndeclare global {\n interface ZeedGlobalContext {\n logger?: LoggerContextInterface\n }\n}\n\nfunction getLoggerContext() {\n let logger = LoggerContext()\n if (isBrowser()) {\n logger.setHandlers([LoggerBrowserHandler()]) // Fallback for previously registered Loggers\n logger.setFactory(LoggerBrowserSetupDebugFactory({}))\n }\n return logger\n}\n\ntry {\n let _global = getGlobalContext()\n if (_global != null) {\n if (_global?.logger == null) {\n globalLogger = getLoggerContext()\n _global.logger = globalLogger\n } else {\n globalLogger = _global.logger\n }\n } else {\n globalLogger = getLoggerContext()\n }\n} catch (e) {\n globalLogger = getLoggerContext()\n}\n\n// /** @deprecated Use `Logger` instead, it is global as well */\n// export const GlobalLogger = globalLogger\n\nexport const Logger = globalLogger\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var __import_meta_url = typeof document === 'undefined' ? 'file://' + __filename : new URL('chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
"use strict";var __import_meta_url = typeof document === 'undefined' ? 'file://' + __filename : new URL('chunk-XYV25VLE.cjs', document.baseURI).href;Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkD236IUSVcjs = require('./chunk-D236IUSV.cjs');var _chunkH3FXJ3GOcjs = require('./chunk-H3FXJ3GO.cjs');var _fs = require('fs'); var _fs2 = _interopRequireDefault(_fs);var _path = require('path');var log=_chunkH3FXJ3GOcjs.Logger.call(void 0, "zeed:env");var NEWLINE="\n";var RE_INI_KEY_VAL=/^\s*([\w_.-]+)\s*=\s*(.*)?\s*$/;var RE_NEWLINES=/\\n/g;var NEWLINES_MATCH=/\n|\r|\r\n/;function parse(src,options={}){let obj={};src.toString().split(NEWLINES_MATCH).forEach(function(line,idx){const keyValueArr=line.match(RE_INI_KEY_VAL);if(keyValueArr!=null){const key=keyValueArr[1];let val=keyValueArr[2]||"";const end=val.length-1;const isDoubleQuoted=val[0]==='"'&&val[end]==='"';const isSingleQuoted=val[0]==="'"&&val[end]==="'";if(isSingleQuoted||isDoubleQuoted){val=val.substring(1,end);if(isDoubleQuoted){val=val.replace(RE_NEWLINES,NEWLINE)}}else{val=val.trim()}obj[key]=val}else{log.debug(`did not match key and value when parsing line ${idx+1}: ${line}`)}});return obj}_chunkH3FXJ3GOcjs.__name.call(void 0, parse,"parse");function stringToPath(value,defaultValue="."){return _path.resolve.call(void 0, value!=null?value:defaultValue)}_chunkH3FXJ3GOcjs.__name.call(void 0, stringToPath,"stringToPath");function valueToPath(value,defaultValue=""){if(value==null)value=defaultValue;return stringToPath(String(value).trim(),defaultValue)}_chunkH3FXJ3GOcjs.__name.call(void 0, valueToPath,"valueToPath");var toPath=valueToPath;function setupEnv(options={}){var _a,_b,_c,_d;const dotenvPath=(_b=options==null?void 0:options.path)!=null?_b:_path.resolve.call(void 0, process.cwd(),(_a=options==null?void 0:options.filename)!=null?_a:".env");const encoding=(_c=options==null?void 0:options.encoding)!=null?_c:"utf8";const debug=(options==null?void 0:options.debug)||false;if(debug!==true)log.level=_chunkH3FXJ3GOcjs.LogLevel.off;try{const parsedEnv=_fs2.default.existsSync(dotenvPath)?parse(_fs2.default.readFileSync(dotenvPath,{encoding}),{debug}):{};const parsedEnvLocal=_fs2.default.existsSync(dotenvPath+".local")?parse(_fs2.default.readFileSync(dotenvPath+".local",{encoding}),{debug}):{};const parsed=Object.assign({},parsedEnv,parsedEnvLocal);let env=(_d=options==null?void 0:options.env)!=null?_d:process.env;Object.entries(parsed).forEach(([key,value])=>{if(typeof(options==null?void 0:options.prefix)==="string"){key=(options==null?void 0:options.prefix)+key}if(!Object.prototype.hasOwnProperty.call(env,key)){if(value!=null){log.info(`set env.${key} = ${value}`);env[key]=value}}else{log.debug(`"${key}" is already defined and will not be overwritten`)}});return{parsed}}catch(e){log.error(e);return{error:e}}}_chunkH3FXJ3GOcjs.__name.call(void 0, setupEnv,"setupEnv");var log2=_chunkH3FXJ3GOcjs.Logger.call(void 0, "zeed:filestorage");var FileStorage=class{constructor(opt={}){this.store={};this.fileKeys=void 0;this.pretty=false;var _a,_b,_c;this.dirname=_path.resolve.call(void 0, process.cwd(),opt.path||".fileStorage");this.pretty=!!opt.pretty;this.extension=(_a=opt.extension)!=null?_a:".json";if(!this.extension.startsWith("."))this.extension="."+this.extension;this.extensionLength=this.extension.length;this.objectToString=(_b=opt.objectToString)!=null?_b:data=>{return this.pretty?JSON.stringify(data,null,2):JSON.stringify(data)};this.objectFromString=(_c=opt.objectFromString)!=null?_c:data=>{try{return JSON.parse(data)}catch(err){log2.warn(`fileStorage parse error '${err}' in`,data)}}}setItem(key,value){const data=this.objectToString(value);this.store[key]=data;try{const path=this.getPath(key);_fs.mkdirSync.call(void 0, this.dirname,{recursive:true});_fs.writeFileSync.call(void 0, path,data,"utf8")}catch(err){log2.error("setItem error",err)}}getPath(key){return _path.resolve.call(void 0, this.dirname,_chunkD236IUSVcjs.toValidFilename.call(void 0, key)+this.extension)}getBuffer(key){const path=this.getPath(key);return Buffer.from(_fs.readFileSync.call(void 0, path))}getItem(key){if(this.store.hasOwnProperty(key)){let value=this.store[key];return this.objectFromString(value)}else{try{const path=this.getPath(key);const data=_fs.readFileSync.call(void 0, path,"utf8");if(data){return this.objectFromString(data)}}catch(err){log2.error("getItem error",err)}}}removeItem(key){delete this.store[key];if(this.fileKeys!=null){const index=this.fileKeys.indexOf(key);if(index!==-1){this.fileKeys.splice(index,1)}}try{const path=this.getPath(key);_fs.unlinkSync.call(void 0, path)}catch(err){}}clear(){this.fileKeys=[];this.store={};_fs.rmSync.call(void 0, this.dirname,{recursive:true,force:true})}allKeys(){if(this.fileKeys==null){try{this.fileKeys=_fs.readdirSync.call(void 0, this.dirname,{withFileTypes:true}).filter(item=>!item.isDirectory()&&item.name.endsWith(this.extension)).map(item=>item.name.slice(0,-this.extensionLength))||[]}catch(err){}}let keys=[...this.fileKeys||[]];for(let key of Object.keys(this.store)){if(!keys.includes(key)){keys.push(key)}}keys.sort();return keys}};_chunkH3FXJ3GOcjs.__name.call(void 0, FileStorage,"FileStorage");var namespaces={};function LoggerFileHandler(path,opt={}){const{level=_chunkH3FXJ3GOcjs.LogLevel.all,colors:colors2=true,levelHelper=false,nameBrackets=true,padding=16,filter=void 0}=opt;path=_path.resolve.call(void 0, process.cwd(),path);_fs.mkdirSync.call(void 0, _path.dirname.call(void 0, path),{recursive:true});var stream=_fs.createWriteStream.call(void 0, path,{flags:"a"});return msg=>{if(msg.level<level)return;const time2=new Date().toISOString();let name=msg.name||"";let ninfo=namespaces[name||""];if(ninfo==null){namespaces[name]=ninfo}let args=[`[${name||"*"}]`,_chunkD236IUSVcjs.renderMessages.call(void 0, msg.messages,{pretty:false})];function write(...args2){stream.write(args2.join(" ")+"\n")}_chunkH3FXJ3GOcjs.__name.call(void 0, write,"write");switch(msg.level){case _chunkH3FXJ3GOcjs.LogLevel.info:write(time2,`I|* `,...args);break;case _chunkH3FXJ3GOcjs.LogLevel.warn:write(time2,`W|** `,...args);break;case _chunkH3FXJ3GOcjs.LogLevel.error:write(time2,`E|***`,...args);break;default:write(time2,`D| `,...args);break}}}_chunkH3FXJ3GOcjs.__name.call(void 0, LoggerFileHandler,"LoggerFileHandler");var _tty = require('tty'); var _tty2 = _interopRequireDefault(_tty);var colors=[6,2,3,4,5,1];function selectColor(namespace){let hash=0;for(let i=0;i<namespace.length;i++){hash=(hash<<5)-hash+namespace.charCodeAt(i);hash|=0}return colors[Math.abs(hash)%colors.length]}_chunkH3FXJ3GOcjs.__name.call(void 0, selectColor,"selectColor");var namespaces2={};var time=_chunkH3FXJ3GOcjs.getTimestamp.call(void 0, );var useColors=_tty2.default.isatty(process.stderr.fd);function log3(...args){return process.stderr.write(_chunkD236IUSVcjs.renderMessages.call(void 0, args)+"\n")}_chunkH3FXJ3GOcjs.__name.call(void 0, log3,"log");var COLOR;(function(COLOR2){COLOR2[COLOR2["RED"]=1]="RED";COLOR2[COLOR2["GREEN"]=2]="GREEN";COLOR2[COLOR2["BLUE"]=4]="BLUE";COLOR2[COLOR2["PURPLE"]=5]="PURPLE";COLOR2[COLOR2["GRAY"]=7]="GRAY";COLOR2[COLOR2["ORANGE"]=8]="ORANGE"})(COLOR||(COLOR={}));var colorEnd="[0m";function colorString(value,colorCode){const colorStart="[3"+(colorCode<8?colorCode:"8;5;"+colorCode)+"m";return`${colorStart}${value}${colorEnd}`}_chunkH3FXJ3GOcjs.__name.call(void 0, colorString,"colorString");function LoggerNodeHandler(opt={}){var _a;const{level=_chunkH3FXJ3GOcjs.LogLevel.all,colors:colors2=true,levelHelper=true,nameBrackets=true,padding=0,fill=0,filter=void 0,stack=true}=opt;const matches=_chunkH3FXJ3GOcjs.useNamespaceFilter.call(void 0, (_a=filter!=null?filter:process.env.ZEED)!=null?_a:process.env.DEBUG);return msg=>{if(msg.level<level)return;if(!matches(msg.name))return;const timeNow=_chunkH3FXJ3GOcjs.getTimestamp.call(void 0, );let name=msg.name||"";let ninfo=namespaces2[name||""];if(ninfo==null){ninfo={color:selectColor(name)};namespaces2[name]=ninfo}const diff=_chunkH3FXJ3GOcjs.formatMilliseconds.call(void 0, timeNow-time);let args;let displayName=nameBrackets?`[${name}]`:name;if(padding>0){displayName=displayName.padStart(padding," ")}if(fill>0){displayName=displayName.padEnd(fill," ")}if(colors2&&useColors){const c=ninfo.color;args=[colorString(displayName,c)+` | `];args.push(...msg.messages);args.push(colorString(`+${diff}`,c))}else{args=[displayName,...msg.messages];args.push(`+${diff}`)}if(stack){const depth=typeof stack==="number"?stack:3;const line=_chunkD236IUSVcjs.getSourceLocation.call(void 0, depth,true);if(line){args.push(colorString(`(${line})`,7))}}switch(msg.level){case _chunkH3FXJ3GOcjs.LogLevel.info:if(levelHelper)args[0]=`I|* `+args[0];log3(...args);break;case _chunkH3FXJ3GOcjs.LogLevel.warn:if(levelHelper)args[0]=`W|** `+args[0];log3(...args);break;case _chunkH3FXJ3GOcjs.LogLevel.error:if(levelHelper)args[0]=`E|*** `+args[0];log3(...args);break;default:if(levelHelper)args[0]=`D| `+args[0];log3(...args);break}}}_chunkH3FXJ3GOcjs.__name.call(void 0, LoggerNodeHandler,"LoggerNodeHandler");var _url = require('url');var _dirname=typeof __dirname!=="undefined"?__dirname:_path.dirname.call(void 0, _url.fileURLToPath.call(void 0, __import_meta_url));exports.stringToPath = stringToPath; exports.valueToPath = valueToPath; exports.toPath = toPath; exports.setupEnv = setupEnv; exports.FileStorage = FileStorage; exports.LoggerFileHandler = LoggerFileHandler; exports.colorString = colorString; exports.LoggerNodeHandler = LoggerNodeHandler; exports._dirname = _dirname;
|
|
2
|
+
//# sourceMappingURL=chunk-XYV25VLE.cjs.map
|
|
File without changes
|
package/dist/index.all.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkFPEW75FBcjs = require('./chunk-FPEW75FB.cjs');var _chunkXYV25VLEcjs = require('./chunk-XYV25VLE.cjs');var _chunkD236IUSVcjs = require('./chunk-D236IUSV.cjs');var _chunkH3FXJ3GOcjs = require('./chunk-H3FXJ3GO.cjs');exports.Channel = _chunkD236IUSVcjs.Channel; exports.Emitter = _chunkD236IUSVcjs.Emitter; exports.FileStorage = _chunkXYV25VLEcjs.FileStorage; exports.JsonEncoder = _chunkD236IUSVcjs.JsonEncoder; exports.LocalChannel = _chunkD236IUSVcjs.LocalChannel; exports.LocalStorage = _chunkFPEW75FBcjs.LocalStorage; exports.LogLevel = _chunkH3FXJ3GOcjs.LogLevel; exports.Logger = _chunkH3FXJ3GOcjs.Logger; exports.LoggerBrowserClassicHandler = _chunkFPEW75FBcjs.LoggerBrowserClassicHandler; exports.LoggerBrowserHandler = _chunkH3FXJ3GOcjs.LoggerBrowserHandler; exports.LoggerBrowserSetupDebugFactory = _chunkH3FXJ3GOcjs.LoggerBrowserSetupDebugFactory; exports.LoggerConsoleHandler = _chunkH3FXJ3GOcjs.LoggerConsoleHandler; exports.LoggerContext = _chunkH3FXJ3GOcjs.LoggerContext; exports.LoggerFileHandler = _chunkXYV25VLEcjs.LoggerFileHandler; exports.LoggerNodeHandler = _chunkXYV25VLEcjs.LoggerNodeHandler; exports.MemStorage = _chunkD236IUSVcjs.MemStorage; exports.SerialQueue = _chunkD236IUSVcjs.SerialQueue; exports._dirname = _chunkXYV25VLEcjs._dirname; exports.activateConsoleDebug = _chunkH3FXJ3GOcjs.activateConsoleDebug; exports.arrayEmptyInPlace = _chunkD236IUSVcjs.arrayEmptyInPlace; exports.arrayFilterInPlace = _chunkD236IUSVcjs.arrayFilterInPlace; exports.arrayFlatten = _chunkD236IUSVcjs.arrayFlatten; exports.arrayIntersection = _chunkD236IUSVcjs.arrayIntersection; exports.arrayIsEqual = _chunkD236IUSVcjs.arrayIsEqual; exports.arrayMinus = _chunkD236IUSVcjs.arrayMinus; exports.arrayRandomElement = _chunkD236IUSVcjs.arrayRandomElement; exports.arrayRemoveElement = _chunkD236IUSVcjs.arrayRemoveElement; exports.arraySetElement = _chunkD236IUSVcjs.arraySetElement; exports.arrayShuffle = _chunkD236IUSVcjs.arrayShuffle; exports.arrayShuffleForce = _chunkD236IUSVcjs.arrayShuffleForce; exports.arrayShuffleInPlace = _chunkD236IUSVcjs.arrayShuffleInPlace; exports.arraySorted = _chunkD236IUSVcjs.arraySorted; exports.arraySortedNumbers = _chunkD236IUSVcjs.arraySortedNumbers; exports.arraySymmetricDifference = _chunkD236IUSVcjs.arraySymmetricDifference; exports.arrayToggleInPlace = _chunkD236IUSVcjs.arrayToggleInPlace; exports.arrayUnion = _chunkD236IUSVcjs.arrayUnion; exports.arrayUnique = _chunkD236IUSVcjs.arrayUnique; exports.cloneObject = _chunkD236IUSVcjs.cloneObject; exports.cmp = _chunkD236IUSVcjs.cmp; exports.colorString = _chunkXYV25VLEcjs.colorString; exports.composeOrderby = _chunkD236IUSVcjs.composeOrderby; exports.createMutex = _chunkD236IUSVcjs.createMutex; exports.csv = _chunkD236IUSVcjs.csv; exports.debounce = _chunkD236IUSVcjs.debounce; exports.decodeBase16 = _chunkD236IUSVcjs.decodeBase16; exports.decodeBase32 = _chunkD236IUSVcjs.decodeBase32; exports.decodeBase58 = _chunkD236IUSVcjs.decodeBase58; exports.decodeBase62 = _chunkD236IUSVcjs.decodeBase62; exports.deepEqual = _chunkH3FXJ3GOcjs.deepEqual; exports.deepMerge = _chunkH3FXJ3GOcjs.deepMerge; exports.detect = _chunkH3FXJ3GOcjs.detect; exports.empty = _chunkD236IUSVcjs.empty; exports.encodeBase16 = _chunkD236IUSVcjs.encodeBase16; exports.encodeBase32 = _chunkD236IUSVcjs.encodeBase32; exports.encodeBase58 = _chunkD236IUSVcjs.encodeBase58; exports.encodeBase62 = _chunkD236IUSVcjs.encodeBase62; exports.endSortWeight = _chunkD236IUSVcjs.endSortWeight; exports.escapeHTML = _chunkD236IUSVcjs.escapeHTML; exports.escapeRegExp = _chunkD236IUSVcjs.escapeRegExp; exports.fakeWorkerPair = _chunkD236IUSVcjs.fakeWorkerPair; exports.formatMessages = _chunkD236IUSVcjs.formatMessages; exports.formatMilliseconds = _chunkH3FXJ3GOcjs.formatMilliseconds; exports.getGlobal = _chunkH3FXJ3GOcjs.getGlobal; exports.getGlobalContext = _chunkH3FXJ3GOcjs.getGlobalContext; exports.getGlobalEmitter = _chunkD236IUSVcjs.getGlobalEmitter; exports.getNavigator = _chunkH3FXJ3GOcjs.getNavigator; exports.getSourceLocation = _chunkD236IUSVcjs.getSourceLocation; exports.getStackLlocationList = _chunkD236IUSVcjs.getStackLlocationList; exports.getTimestamp = _chunkH3FXJ3GOcjs.getTimestamp; exports.getWindow = _chunkH3FXJ3GOcjs.getWindow; exports.gravatarURLByEmail = _chunkFPEW75FBcjs.gravatarURLByEmail; exports.immediate = _chunkD236IUSVcjs.immediate; exports.isBrowser = _chunkH3FXJ3GOcjs.isBrowser; exports.isLocalHost = _chunkFPEW75FBcjs.isLocalHost; exports.isObject = _chunkH3FXJ3GOcjs.isObject; exports.isPrimitive = _chunkH3FXJ3GOcjs.isPrimitive; exports.isPromise = _chunkD236IUSVcjs.isPromise; exports.isTimeout = _chunkD236IUSVcjs.isTimeout; exports.jsonStringify = _chunkD236IUSVcjs.jsonStringify; exports.last = _chunkD236IUSVcjs.last; exports.lazyListener = _chunkD236IUSVcjs.lazyListener; exports.linkifyPlainText = _chunkD236IUSVcjs.linkifyPlainText; exports.messages = _chunkD236IUSVcjs.messages; exports.moveSortWeight = _chunkD236IUSVcjs.moveSortWeight; exports.parseOrderby = _chunkD236IUSVcjs.parseOrderby; exports.platform = _chunkH3FXJ3GOcjs.platform; exports.promisify = _chunkD236IUSVcjs.promisify; exports.qid = _chunkD236IUSVcjs.qid; exports.renderMessages = _chunkD236IUSVcjs.renderMessages; exports.selectColor = _chunkH3FXJ3GOcjs.selectColor; exports.setupEnv = _chunkXYV25VLEcjs.setupEnv; exports.size = _chunkD236IUSVcjs.size; exports.sleep = _chunkD236IUSVcjs.sleep; exports.sortedItems = _chunkD236IUSVcjs.sortedItems; exports.sortedOrderby = _chunkD236IUSVcjs.sortedOrderby; exports.startSortWeight = _chunkD236IUSVcjs.startSortWeight; exports.stringToBoolean = _chunkD236IUSVcjs.stringToBoolean; exports.stringToFloat = _chunkD236IUSVcjs.stringToFloat; exports.stringToInteger = _chunkD236IUSVcjs.stringToInteger; exports.stringToPath = _chunkXYV25VLEcjs.stringToPath; exports.suid = _chunkD236IUSVcjs.suid; exports.suidBytes = _chunkD236IUSVcjs.suidBytes; exports.suidBytesDate = _chunkD236IUSVcjs.suidBytesDate; exports.suidDate = _chunkD236IUSVcjs.suidDate; exports.supportsColors = _chunkH3FXJ3GOcjs.supportsColors; exports.throttle = _chunkD236IUSVcjs.throttle; exports.throttleAnimationFrame = _chunkD236IUSVcjs.throttleAnimationFrame; exports.timeout = _chunkD236IUSVcjs.timeout; exports.timeoutReached = _chunkD236IUSVcjs.timeoutReached; exports.timoutError = _chunkD236IUSVcjs.timoutError; exports.toBool = _chunkD236IUSVcjs.toBool; exports.toCamelCase = _chunkD236IUSVcjs.toCamelCase; exports.toFloat = _chunkD236IUSVcjs.toFloat; exports.toHumanReadableUrl = _chunkD236IUSVcjs.toHumanReadableUrl; exports.toInt = _chunkD236IUSVcjs.toInt; exports.toPath = _chunkXYV25VLEcjs.toPath; exports.toString = _chunkD236IUSVcjs.toString; exports.toValidFilename = _chunkD236IUSVcjs.toValidFilename; exports.tryTimeout = _chunkD236IUSVcjs.tryTimeout; exports.uname = _chunkD236IUSVcjs.uname; exports.unescapeHTML = _chunkD236IUSVcjs.unescapeHTML; exports.urlBase64ToUint8Array = _chunkFPEW75FBcjs.urlBase64ToUint8Array; exports.useBase = _chunkD236IUSVcjs.useBase; exports.useExitHandler = _chunkH3FXJ3GOcjs.useExitHandler; exports.useMessages = _chunkD236IUSVcjs.useMessages; exports.useNamespaceFilter = _chunkH3FXJ3GOcjs.useNamespaceFilter; exports.uuid = _chunkD236IUSVcjs.uuid; exports.uuidB32 = _chunkD236IUSVcjs.uuidB32; exports.uuidv4 = _chunkD236IUSVcjs.uuidv4; exports.valueToBoolean = _chunkD236IUSVcjs.valueToBoolean; exports.valueToFloat = _chunkD236IUSVcjs.valueToFloat; exports.valueToInteger = _chunkD236IUSVcjs.valueToInteger; exports.valueToPath = _chunkXYV25VLEcjs.valueToPath; exports.valueToString = _chunkD236IUSVcjs.valueToString; exports.waitOn = _chunkD236IUSVcjs.waitOn;
|
|
2
2
|
//# sourceMappingURL=index.all.cjs.map
|
package/dist/index.all.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { aj as Channel, ai as ChannelMessageEvent, ap as DefaultListener, b0 as Disposable, aq as Emitter, an as EmitterAllHandler, am as EmitterHandler, au as Encoder, b1 as Json, av as JsonEncoder, ao as ListenerSignature, ak as LocalChannel, ae as LoggerConsoleHandler, aW as MemStorage, aV as MemStorageOptions, ay as Message, aw as MessageAction, ax as MessageResult, az as MessagesOptions, aB as Mutex, b2 as ObjectStorage, R as RenderMessagesOptions, aU as SerialQueue, S as SortableItem, a1 as arrayEmptyInPlace, $ as arrayFilterInPlace, W as arrayFlatten, X as arrayIntersection, a4 as arrayIsEqual, U as arrayMinus, a8 as arrayRandomElement, Z as arrayRemoveElement, _ as arraySetElement, a6 as arrayShuffle, a7 as arrayShuffleForce, a5 as arrayShuffleInPlace, a2 as arraySorted, a3 as arraySortedNumbers, Y as arraySymmetricDifference, a0 as arrayToggleInPlace, V as arrayUnion, T as arrayUnique, Q as cloneObject, D as cmp, C as composeOrderby, aC as createMutex, c as csv, aY as debounce, d as decodeBase16, b as decodeBase32, g as decodeBase58, i as decodeBase62, ab as deepEqual, ac as deepMerge, aG as detect, P as empty, e as encodeBase16, a as encodeBase32, f as encodeBase58, h as encodeBase62, I as endSortWeight, y as escapeHTML, G as escapeRegExp, al as fakeWorkerPair, w as formatMessages, a$ as formatMilliseconds, aF as getGlobal, ad as getGlobalContext, ar as getGlobalEmitter, aE as getNavigator, ah as getSourceLocation, ag as getStackLlocationList, a_ as getTimestamp, aD as getWindow, aL as immediate, aH as isBrowser, a9 as isObject, aa as isPrimitive, aS as isPromise, aP as isTimeout, A as jsonStringify, O as last, at as lazyListener, L as linkifyPlainText, as as messages, J as moveSortWeight, B as parseOrderby, aI as platform, aT as promisify, b6 as qid, x as renderMessages, N as size, aK as sleep, K as sortedItems, E as sortedOrderby, H as startSortWeight, s as stringToBoolean, k as stringToFloat, j as stringToInteger, b9 as suid, b8 as suidBytes, bb as suidBytesDate, ba as suidDate, aX as throttle, aZ as throttleAnimationFrame, aN as timeout, aM as timeoutReached, aO as timoutError, r as toBool, t as toCamelCase, o as toFloat, M as toHumanReadableUrl, p as toInt, q as toString, F as toValidFilename, aQ as tryTimeout, b5 as uname, z as unescapeHTML, u as useBase, aJ as useExitHandler, aA as useMessages, af as useNamespaceFilter, b3 as uuid, b4 as uuidB32, b7 as uuidv4, v as valueToBoolean, m as valueToFloat, l as valueToInteger, n as valueToString, aR as waitOn } from './uuid-
|
|
1
|
+
export { aj as Channel, ai as ChannelMessageEvent, ap as DefaultListener, b0 as Disposable, aq as Emitter, an as EmitterAllHandler, am as EmitterHandler, au as Encoder, b1 as Json, av as JsonEncoder, ao as ListenerSignature, ak as LocalChannel, ae as LoggerConsoleHandler, aW as MemStorage, aV as MemStorageOptions, ay as Message, aw as MessageAction, ax as MessageResult, az as MessagesOptions, aB as Mutex, b2 as ObjectStorage, R as RenderMessagesOptions, aU as SerialQueue, S as SortableItem, a1 as arrayEmptyInPlace, $ as arrayFilterInPlace, W as arrayFlatten, X as arrayIntersection, a4 as arrayIsEqual, U as arrayMinus, a8 as arrayRandomElement, Z as arrayRemoveElement, _ as arraySetElement, a6 as arrayShuffle, a7 as arrayShuffleForce, a5 as arrayShuffleInPlace, a2 as arraySorted, a3 as arraySortedNumbers, Y as arraySymmetricDifference, a0 as arrayToggleInPlace, V as arrayUnion, T as arrayUnique, Q as cloneObject, D as cmp, C as composeOrderby, aC as createMutex, c as csv, aY as debounce, d as decodeBase16, b as decodeBase32, g as decodeBase58, i as decodeBase62, ab as deepEqual, ac as deepMerge, aG as detect, P as empty, e as encodeBase16, a as encodeBase32, f as encodeBase58, h as encodeBase62, I as endSortWeight, y as escapeHTML, G as escapeRegExp, al as fakeWorkerPair, w as formatMessages, a$ as formatMilliseconds, aF as getGlobal, ad as getGlobalContext, ar as getGlobalEmitter, aE as getNavigator, ah as getSourceLocation, ag as getStackLlocationList, a_ as getTimestamp, aD as getWindow, aL as immediate, aH as isBrowser, a9 as isObject, aa as isPrimitive, aS as isPromise, aP as isTimeout, A as jsonStringify, O as last, at as lazyListener, L as linkifyPlainText, as as messages, J as moveSortWeight, B as parseOrderby, aI as platform, aT as promisify, b6 as qid, x as renderMessages, N as size, aK as sleep, K as sortedItems, E as sortedOrderby, H as startSortWeight, s as stringToBoolean, k as stringToFloat, j as stringToInteger, b9 as suid, b8 as suidBytes, bb as suidBytesDate, ba as suidDate, aX as throttle, aZ as throttleAnimationFrame, aN as timeout, aM as timeoutReached, aO as timoutError, r as toBool, t as toCamelCase, o as toFloat, M as toHumanReadableUrl, p as toInt, q as toString, F as toValidFilename, aQ as tryTimeout, b5 as uname, z as unescapeHTML, u as useBase, aJ as useExitHandler, aA as useMessages, af as useNamespaceFilter, b3 as uuid, b4 as uuidB32, b7 as uuidv4, v as valueToBoolean, m as valueToFloat, l as valueToInteger, n as valueToString, aR as waitOn } from './uuid-a85f7b18';
|
|
2
2
|
export { b as LogHandler, e as LogHandlerOptions, L as LogLevel, a as LogMessage, g as Logger, f as LoggerContext, d as LoggerContextInterface, c as LoggerInterface } from './log-94b534a3';
|
|
3
|
-
export { b as FileStorage, F as FileStorageOptions, L as LoggerFileHandler, d as LoggerNodeHandler, _ as _dirname, c as colorString, a as setupEnv, s as stringToPath, t as toPath, v as valueToPath } from './path-
|
|
4
|
-
export { a as LocalStorage, L as LocalStorageOptions, b as LoggerBrowserClassicHandler, g as gravatarURLByEmail, i as isLocalHost, c as selectColor, s as supportsColors, u as urlBase64ToUint8Array } from './log-colors-
|
|
3
|
+
export { b as FileStorage, F as FileStorageOptions, L as LoggerFileHandler, d as LoggerNodeHandler, _ as _dirname, c as colorString, a as setupEnv, s as stringToPath, t as toPath, v as valueToPath } from './path-474c394f';
|
|
4
|
+
export { a as LocalStorage, L as LocalStorageOptions, b as LoggerBrowserClassicHandler, g as gravatarURLByEmail, i as isLocalHost, c as selectColor, s as supportsColors, u as urlBase64ToUint8Array } from './log-colors-e784f5f2';
|
|
5
5
|
export { L as LoggerBrowserHandler, a as LoggerBrowserSetupDebugFactory, b as activateConsoleDebug } from './log-browser-95ad6694';
|
package/dist/index.all.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{LocalStorage,LoggerBrowserClassicHandler,gravatarURLByEmail,isLocalHost,urlBase64ToUint8Array}from"./chunk-
|
|
1
|
+
import{LocalStorage,LoggerBrowserClassicHandler,gravatarURLByEmail,isLocalHost,urlBase64ToUint8Array}from"./chunk-56HAZLHJ.js";import{FileStorage,LoggerFileHandler,LoggerNodeHandler,_dirname,colorString,setupEnv,stringToPath,toPath,valueToPath}from"./chunk-SBWPFLFM.js";import{Channel,Emitter,JsonEncoder,LocalChannel,MemStorage,SerialQueue,arrayEmptyInPlace,arrayFilterInPlace,arrayFlatten,arrayIntersection,arrayIsEqual,arrayMinus,arrayRandomElement,arrayRemoveElement,arraySetElement,arrayShuffle,arrayShuffleForce,arrayShuffleInPlace,arraySorted,arraySortedNumbers,arraySymmetricDifference,arrayToggleInPlace,arrayUnion,arrayUnique,cloneObject,cmp,composeOrderby,createMutex,csv,debounce,decodeBase16,decodeBase32,decodeBase58,decodeBase62,empty,encodeBase16,encodeBase32,encodeBase58,encodeBase62,endSortWeight,escapeHTML,escapeRegExp,fakeWorkerPair,formatMessages,getGlobalEmitter,getSourceLocation,getStackLlocationList,immediate,isPromise,isTimeout,jsonStringify,last,lazyListener,linkifyPlainText,messages,moveSortWeight,parseOrderby,promisify,qid,renderMessages,size,sleep,sortedItems,sortedOrderby,startSortWeight,stringToBoolean,stringToFloat,stringToInteger,suid,suidBytes,suidBytesDate,suidDate,throttle,throttleAnimationFrame,timeout,timeoutReached,timoutError,toBool,toCamelCase,toFloat,toHumanReadableUrl,toInt,toString,toValidFilename,tryTimeout,uname,unescapeHTML,useBase,useMessages,uuid,uuidB32,uuidv4,valueToBoolean,valueToFloat,valueToInteger,valueToString,waitOn}from"./chunk-7KRB4ALO.js";import{LogLevel,Logger,LoggerBrowserHandler,LoggerBrowserSetupDebugFactory,LoggerConsoleHandler,LoggerContext,activateConsoleDebug,deepEqual,deepMerge,detect,formatMilliseconds,getGlobal,getGlobalContext,getNavigator,getTimestamp,getWindow,isBrowser,isObject,isPrimitive,platform,selectColor,supportsColors,useExitHandler,useNamespaceFilter}from"./chunk-WZC5PIVP.js";export{Channel,Emitter,FileStorage,JsonEncoder,LocalChannel,LocalStorage,LogLevel,Logger,LoggerBrowserClassicHandler,LoggerBrowserHandler,LoggerBrowserSetupDebugFactory,LoggerConsoleHandler,LoggerContext,LoggerFileHandler,LoggerNodeHandler,MemStorage,SerialQueue,_dirname,activateConsoleDebug,arrayEmptyInPlace,arrayFilterInPlace,arrayFlatten,arrayIntersection,arrayIsEqual,arrayMinus,arrayRandomElement,arrayRemoveElement,arraySetElement,arrayShuffle,arrayShuffleForce,arrayShuffleInPlace,arraySorted,arraySortedNumbers,arraySymmetricDifference,arrayToggleInPlace,arrayUnion,arrayUnique,cloneObject,cmp,colorString,composeOrderby,createMutex,csv,debounce,decodeBase16,decodeBase32,decodeBase58,decodeBase62,deepEqual,deepMerge,detect,empty,encodeBase16,encodeBase32,encodeBase58,encodeBase62,endSortWeight,escapeHTML,escapeRegExp,fakeWorkerPair,formatMessages,formatMilliseconds,getGlobal,getGlobalContext,getGlobalEmitter,getNavigator,getSourceLocation,getStackLlocationList,getTimestamp,getWindow,gravatarURLByEmail,immediate,isBrowser,isLocalHost,isObject,isPrimitive,isPromise,isTimeout,jsonStringify,last,lazyListener,linkifyPlainText,messages,moveSortWeight,parseOrderby,platform,promisify,qid,renderMessages,selectColor,setupEnv,size,sleep,sortedItems,sortedOrderby,startSortWeight,stringToBoolean,stringToFloat,stringToInteger,stringToPath,suid,suidBytes,suidBytesDate,suidDate,supportsColors,throttle,throttleAnimationFrame,timeout,timeoutReached,timoutError,toBool,toCamelCase,toFloat,toHumanReadableUrl,toInt,toPath,toString,toValidFilename,tryTimeout,uname,unescapeHTML,urlBase64ToUint8Array,useBase,useExitHandler,useMessages,useNamespaceFilter,uuid,uuidB32,uuidv4,valueToBoolean,valueToFloat,valueToInteger,valueToPath,valueToString,waitOn};
|
|
2
2
|
//# sourceMappingURL=index.all.js.map
|
package/dist/index.browser.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkFPEW75FBcjs = require('./chunk-FPEW75FB.cjs');var _chunkD236IUSVcjs = require('./chunk-D236IUSV.cjs');var _chunkH3FXJ3GOcjs = require('./chunk-H3FXJ3GO.cjs');exports.Channel = _chunkD236IUSVcjs.Channel; exports.Emitter = _chunkD236IUSVcjs.Emitter; exports.JsonEncoder = _chunkD236IUSVcjs.JsonEncoder; exports.LocalChannel = _chunkD236IUSVcjs.LocalChannel; exports.LocalStorage = _chunkFPEW75FBcjs.LocalStorage; exports.LogLevel = _chunkH3FXJ3GOcjs.LogLevel; exports.Logger = _chunkH3FXJ3GOcjs.Logger; exports.LoggerBrowserClassicHandler = _chunkFPEW75FBcjs.LoggerBrowserClassicHandler; exports.LoggerBrowserHandler = _chunkH3FXJ3GOcjs.LoggerBrowserHandler; exports.LoggerBrowserSetupDebugFactory = _chunkH3FXJ3GOcjs.LoggerBrowserSetupDebugFactory; exports.LoggerConsoleHandler = _chunkH3FXJ3GOcjs.LoggerConsoleHandler; exports.LoggerContext = _chunkH3FXJ3GOcjs.LoggerContext; exports.MemStorage = _chunkD236IUSVcjs.MemStorage; exports.SerialQueue = _chunkD236IUSVcjs.SerialQueue; exports.activateConsoleDebug = _chunkH3FXJ3GOcjs.activateConsoleDebug; exports.arrayEmptyInPlace = _chunkD236IUSVcjs.arrayEmptyInPlace; exports.arrayFilterInPlace = _chunkD236IUSVcjs.arrayFilterInPlace; exports.arrayFlatten = _chunkD236IUSVcjs.arrayFlatten; exports.arrayIntersection = _chunkD236IUSVcjs.arrayIntersection; exports.arrayIsEqual = _chunkD236IUSVcjs.arrayIsEqual; exports.arrayMinus = _chunkD236IUSVcjs.arrayMinus; exports.arrayRandomElement = _chunkD236IUSVcjs.arrayRandomElement; exports.arrayRemoveElement = _chunkD236IUSVcjs.arrayRemoveElement; exports.arraySetElement = _chunkD236IUSVcjs.arraySetElement; exports.arrayShuffle = _chunkD236IUSVcjs.arrayShuffle; exports.arrayShuffleForce = _chunkD236IUSVcjs.arrayShuffleForce; exports.arrayShuffleInPlace = _chunkD236IUSVcjs.arrayShuffleInPlace; exports.arraySorted = _chunkD236IUSVcjs.arraySorted; exports.arraySortedNumbers = _chunkD236IUSVcjs.arraySortedNumbers; exports.arraySymmetricDifference = _chunkD236IUSVcjs.arraySymmetricDifference; exports.arrayToggleInPlace = _chunkD236IUSVcjs.arrayToggleInPlace; exports.arrayUnion = _chunkD236IUSVcjs.arrayUnion; exports.arrayUnique = _chunkD236IUSVcjs.arrayUnique; exports.cloneObject = _chunkD236IUSVcjs.cloneObject; exports.cmp = _chunkD236IUSVcjs.cmp; exports.composeOrderby = _chunkD236IUSVcjs.composeOrderby; exports.createMutex = _chunkD236IUSVcjs.createMutex; exports.csv = _chunkD236IUSVcjs.csv; exports.debounce = _chunkD236IUSVcjs.debounce; exports.decodeBase16 = _chunkD236IUSVcjs.decodeBase16; exports.decodeBase32 = _chunkD236IUSVcjs.decodeBase32; exports.decodeBase58 = _chunkD236IUSVcjs.decodeBase58; exports.decodeBase62 = _chunkD236IUSVcjs.decodeBase62; exports.deepEqual = _chunkH3FXJ3GOcjs.deepEqual; exports.deepMerge = _chunkH3FXJ3GOcjs.deepMerge; exports.detect = _chunkH3FXJ3GOcjs.detect; exports.empty = _chunkD236IUSVcjs.empty; exports.encodeBase16 = _chunkD236IUSVcjs.encodeBase16; exports.encodeBase32 = _chunkD236IUSVcjs.encodeBase32; exports.encodeBase58 = _chunkD236IUSVcjs.encodeBase58; exports.encodeBase62 = _chunkD236IUSVcjs.encodeBase62; exports.endSortWeight = _chunkD236IUSVcjs.endSortWeight; exports.escapeHTML = _chunkD236IUSVcjs.escapeHTML; exports.escapeRegExp = _chunkD236IUSVcjs.escapeRegExp; exports.fakeWorkerPair = _chunkD236IUSVcjs.fakeWorkerPair; exports.formatMessages = _chunkD236IUSVcjs.formatMessages; exports.formatMilliseconds = _chunkH3FXJ3GOcjs.formatMilliseconds; exports.getGlobal = _chunkH3FXJ3GOcjs.getGlobal; exports.getGlobalContext = _chunkH3FXJ3GOcjs.getGlobalContext; exports.getGlobalEmitter = _chunkD236IUSVcjs.getGlobalEmitter; exports.getNavigator = _chunkH3FXJ3GOcjs.getNavigator; exports.getSourceLocation = _chunkD236IUSVcjs.getSourceLocation; exports.getStackLlocationList = _chunkD236IUSVcjs.getStackLlocationList; exports.getTimestamp = _chunkH3FXJ3GOcjs.getTimestamp; exports.getWindow = _chunkH3FXJ3GOcjs.getWindow; exports.gravatarURLByEmail = _chunkFPEW75FBcjs.gravatarURLByEmail; exports.immediate = _chunkD236IUSVcjs.immediate; exports.isBrowser = _chunkH3FXJ3GOcjs.isBrowser; exports.isLocalHost = _chunkFPEW75FBcjs.isLocalHost; exports.isObject = _chunkH3FXJ3GOcjs.isObject; exports.isPrimitive = _chunkH3FXJ3GOcjs.isPrimitive; exports.isPromise = _chunkD236IUSVcjs.isPromise; exports.isTimeout = _chunkD236IUSVcjs.isTimeout; exports.jsonStringify = _chunkD236IUSVcjs.jsonStringify; exports.last = _chunkD236IUSVcjs.last; exports.lazyListener = _chunkD236IUSVcjs.lazyListener; exports.linkifyPlainText = _chunkD236IUSVcjs.linkifyPlainText; exports.messages = _chunkD236IUSVcjs.messages; exports.moveSortWeight = _chunkD236IUSVcjs.moveSortWeight; exports.parseOrderby = _chunkD236IUSVcjs.parseOrderby; exports.platform = _chunkH3FXJ3GOcjs.platform; exports.promisify = _chunkD236IUSVcjs.promisify; exports.qid = _chunkD236IUSVcjs.qid; exports.renderMessages = _chunkD236IUSVcjs.renderMessages; exports.selectColor = _chunkH3FXJ3GOcjs.selectColor; exports.size = _chunkD236IUSVcjs.size; exports.sleep = _chunkD236IUSVcjs.sleep; exports.sortedItems = _chunkD236IUSVcjs.sortedItems; exports.sortedOrderby = _chunkD236IUSVcjs.sortedOrderby; exports.startSortWeight = _chunkD236IUSVcjs.startSortWeight; exports.stringToBoolean = _chunkD236IUSVcjs.stringToBoolean; exports.stringToFloat = _chunkD236IUSVcjs.stringToFloat; exports.stringToInteger = _chunkD236IUSVcjs.stringToInteger; exports.suid = _chunkD236IUSVcjs.suid; exports.suidBytes = _chunkD236IUSVcjs.suidBytes; exports.suidBytesDate = _chunkD236IUSVcjs.suidBytesDate; exports.suidDate = _chunkD236IUSVcjs.suidDate; exports.supportsColors = _chunkH3FXJ3GOcjs.supportsColors; exports.throttle = _chunkD236IUSVcjs.throttle; exports.throttleAnimationFrame = _chunkD236IUSVcjs.throttleAnimationFrame; exports.timeout = _chunkD236IUSVcjs.timeout; exports.timeoutReached = _chunkD236IUSVcjs.timeoutReached; exports.timoutError = _chunkD236IUSVcjs.timoutError; exports.toBool = _chunkD236IUSVcjs.toBool; exports.toCamelCase = _chunkD236IUSVcjs.toCamelCase; exports.toFloat = _chunkD236IUSVcjs.toFloat; exports.toHumanReadableUrl = _chunkD236IUSVcjs.toHumanReadableUrl; exports.toInt = _chunkD236IUSVcjs.toInt; exports.toString = _chunkD236IUSVcjs.toString; exports.toValidFilename = _chunkD236IUSVcjs.toValidFilename; exports.tryTimeout = _chunkD236IUSVcjs.tryTimeout; exports.uname = _chunkD236IUSVcjs.uname; exports.unescapeHTML = _chunkD236IUSVcjs.unescapeHTML; exports.urlBase64ToUint8Array = _chunkFPEW75FBcjs.urlBase64ToUint8Array; exports.useBase = _chunkD236IUSVcjs.useBase; exports.useExitHandler = _chunkH3FXJ3GOcjs.useExitHandler; exports.useMessages = _chunkD236IUSVcjs.useMessages; exports.useNamespaceFilter = _chunkH3FXJ3GOcjs.useNamespaceFilter; exports.uuid = _chunkD236IUSVcjs.uuid; exports.uuidB32 = _chunkD236IUSVcjs.uuidB32; exports.uuidv4 = _chunkD236IUSVcjs.uuidv4; exports.valueToBoolean = _chunkD236IUSVcjs.valueToBoolean; exports.valueToFloat = _chunkD236IUSVcjs.valueToFloat; exports.valueToInteger = _chunkD236IUSVcjs.valueToInteger; exports.valueToString = _chunkD236IUSVcjs.valueToString; exports.waitOn = _chunkD236IUSVcjs.waitOn;
|
|
2
2
|
//# sourceMappingURL=index.browser.cjs.map
|
package/dist/index.browser.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { aj as Channel, ai as ChannelMessageEvent, ap as DefaultListener, b0 as Disposable, aq as Emitter, an as EmitterAllHandler, am as EmitterHandler, au as Encoder, b1 as Json, av as JsonEncoder, ao as ListenerSignature, ak as LocalChannel, ae as LoggerConsoleHandler, aW as MemStorage, aV as MemStorageOptions, ay as Message, aw as MessageAction, ax as MessageResult, az as MessagesOptions, aB as Mutex, b2 as ObjectStorage, R as RenderMessagesOptions, aU as SerialQueue, S as SortableItem, a1 as arrayEmptyInPlace, $ as arrayFilterInPlace, W as arrayFlatten, X as arrayIntersection, a4 as arrayIsEqual, U as arrayMinus, a8 as arrayRandomElement, Z as arrayRemoveElement, _ as arraySetElement, a6 as arrayShuffle, a7 as arrayShuffleForce, a5 as arrayShuffleInPlace, a2 as arraySorted, a3 as arraySortedNumbers, Y as arraySymmetricDifference, a0 as arrayToggleInPlace, V as arrayUnion, T as arrayUnique, Q as cloneObject, D as cmp, C as composeOrderby, aC as createMutex, c as csv, aY as debounce, d as decodeBase16, b as decodeBase32, g as decodeBase58, i as decodeBase62, ab as deepEqual, ac as deepMerge, aG as detect, P as empty, e as encodeBase16, a as encodeBase32, f as encodeBase58, h as encodeBase62, I as endSortWeight, y as escapeHTML, G as escapeRegExp, al as fakeWorkerPair, w as formatMessages, a$ as formatMilliseconds, aF as getGlobal, ad as getGlobalContext, ar as getGlobalEmitter, aE as getNavigator, ah as getSourceLocation, ag as getStackLlocationList, a_ as getTimestamp, aD as getWindow, aL as immediate, aH as isBrowser, a9 as isObject, aa as isPrimitive, aS as isPromise, aP as isTimeout, A as jsonStringify, O as last, at as lazyListener, L as linkifyPlainText, as as messages, J as moveSortWeight, B as parseOrderby, aI as platform, aT as promisify, b6 as qid, x as renderMessages, N as size, aK as sleep, K as sortedItems, E as sortedOrderby, H as startSortWeight, s as stringToBoolean, k as stringToFloat, j as stringToInteger, b9 as suid, b8 as suidBytes, bb as suidBytesDate, ba as suidDate, aX as throttle, aZ as throttleAnimationFrame, aN as timeout, aM as timeoutReached, aO as timoutError, r as toBool, t as toCamelCase, o as toFloat, M as toHumanReadableUrl, p as toInt, q as toString, F as toValidFilename, aQ as tryTimeout, b5 as uname, z as unescapeHTML, u as useBase, aJ as useExitHandler, aA as useMessages, af as useNamespaceFilter, b3 as uuid, b4 as uuidB32, b7 as uuidv4, v as valueToBoolean, m as valueToFloat, l as valueToInteger, n as valueToString, aR as waitOn } from './uuid-
|
|
1
|
+
export { aj as Channel, ai as ChannelMessageEvent, ap as DefaultListener, b0 as Disposable, aq as Emitter, an as EmitterAllHandler, am as EmitterHandler, au as Encoder, b1 as Json, av as JsonEncoder, ao as ListenerSignature, ak as LocalChannel, ae as LoggerConsoleHandler, aW as MemStorage, aV as MemStorageOptions, ay as Message, aw as MessageAction, ax as MessageResult, az as MessagesOptions, aB as Mutex, b2 as ObjectStorage, R as RenderMessagesOptions, aU as SerialQueue, S as SortableItem, a1 as arrayEmptyInPlace, $ as arrayFilterInPlace, W as arrayFlatten, X as arrayIntersection, a4 as arrayIsEqual, U as arrayMinus, a8 as arrayRandomElement, Z as arrayRemoveElement, _ as arraySetElement, a6 as arrayShuffle, a7 as arrayShuffleForce, a5 as arrayShuffleInPlace, a2 as arraySorted, a3 as arraySortedNumbers, Y as arraySymmetricDifference, a0 as arrayToggleInPlace, V as arrayUnion, T as arrayUnique, Q as cloneObject, D as cmp, C as composeOrderby, aC as createMutex, c as csv, aY as debounce, d as decodeBase16, b as decodeBase32, g as decodeBase58, i as decodeBase62, ab as deepEqual, ac as deepMerge, aG as detect, P as empty, e as encodeBase16, a as encodeBase32, f as encodeBase58, h as encodeBase62, I as endSortWeight, y as escapeHTML, G as escapeRegExp, al as fakeWorkerPair, w as formatMessages, a$ as formatMilliseconds, aF as getGlobal, ad as getGlobalContext, ar as getGlobalEmitter, aE as getNavigator, ah as getSourceLocation, ag as getStackLlocationList, a_ as getTimestamp, aD as getWindow, aL as immediate, aH as isBrowser, a9 as isObject, aa as isPrimitive, aS as isPromise, aP as isTimeout, A as jsonStringify, O as last, at as lazyListener, L as linkifyPlainText, as as messages, J as moveSortWeight, B as parseOrderby, aI as platform, aT as promisify, b6 as qid, x as renderMessages, N as size, aK as sleep, K as sortedItems, E as sortedOrderby, H as startSortWeight, s as stringToBoolean, k as stringToFloat, j as stringToInteger, b9 as suid, b8 as suidBytes, bb as suidBytesDate, ba as suidDate, aX as throttle, aZ as throttleAnimationFrame, aN as timeout, aM as timeoutReached, aO as timoutError, r as toBool, t as toCamelCase, o as toFloat, M as toHumanReadableUrl, p as toInt, q as toString, F as toValidFilename, aQ as tryTimeout, b5 as uname, z as unescapeHTML, u as useBase, aJ as useExitHandler, aA as useMessages, af as useNamespaceFilter, b3 as uuid, b4 as uuidB32, b7 as uuidv4, v as valueToBoolean, m as valueToFloat, l as valueToInteger, n as valueToString, aR as waitOn } from './uuid-a85f7b18';
|
|
2
2
|
export { b as LogHandler, e as LogHandlerOptions, L as LogLevel, a as LogMessage, g as Logger, f as LoggerContext, d as LoggerContextInterface, c as LoggerInterface } from './log-94b534a3';
|
|
3
|
-
export { a as LocalStorage, L as LocalStorageOptions, b as LoggerBrowserClassicHandler, g as gravatarURLByEmail, i as isLocalHost, c as selectColor, s as supportsColors, u as urlBase64ToUint8Array } from './log-colors-
|
|
3
|
+
export { a as LocalStorage, L as LocalStorageOptions, b as LoggerBrowserClassicHandler, g as gravatarURLByEmail, i as isLocalHost, c as selectColor, s as supportsColors, u as urlBase64ToUint8Array } from './log-colors-e784f5f2';
|
|
4
4
|
export { L as LoggerBrowserHandler, a as LoggerBrowserSetupDebugFactory, b as activateConsoleDebug } from './log-browser-95ad6694';
|