@xyo-network/shared 2.90.23 → 2.91.1
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/browser/IdLogger.d.cts.map +1 -1
- package/dist/browser/IdLogger.d.mts.map +1 -1
- package/dist/browser/IdLogger.d.ts.map +1 -1
- package/dist/browser/index.cjs +4 -4
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/index.js +4 -4
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/is-ip/ip-regex.d.cts.map +1 -1
- package/dist/browser/is-ip/ip-regex.d.mts.map +1 -1
- package/dist/browser/is-ip/ip-regex.d.ts.map +1 -1
- package/dist/browser/is-ip/is-ip.d.cts.map +1 -1
- package/dist/browser/is-ip/is-ip.d.mts.map +1 -1
- package/dist/browser/is-ip/is-ip.d.ts.map +1 -1
- package/dist/node/IdLogger.d.cts.map +1 -1
- package/dist/node/IdLogger.d.mts.map +1 -1
- package/dist/node/IdLogger.d.ts.map +1 -1
- package/dist/node/index.cjs +4 -4
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.js +4 -4
- package/dist/node/index.js.map +1 -1
- package/dist/node/is-ip/ip-regex.d.cts.map +1 -1
- package/dist/node/is-ip/ip-regex.d.mts.map +1 -1
- package/dist/node/is-ip/ip-regex.d.ts.map +1 -1
- package/dist/node/is-ip/is-ip.d.cts.map +1 -1
- package/dist/node/is-ip/is-ip.d.mts.map +1 -1
- package/dist/node/is-ip/is-ip.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/IdLogger.ts +3 -1
- package/src/is-ip/ip-regex.ts +6 -6
- package/src/is-ip/is-ip.ts +6 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;CAOjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;CAOjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;CAOjB"}
|
package/dist/browser/index.cjs
CHANGED
|
@@ -103,7 +103,7 @@ var IdLogger = class {
|
|
|
103
103
|
|
|
104
104
|
// src/is-ip/ip-regex.ts
|
|
105
105
|
var word = "[a-fA-F\\d:]";
|
|
106
|
-
var
|
|
106
|
+
var boundary = /* @__PURE__ */ __name((options) => options && options.includeBoundaries ? `(?:(?<=\\s|^)(?=${word})|(?<=${word})(?=\\s|$))` : "", "boundary");
|
|
107
107
|
var v4 = "(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}";
|
|
108
108
|
var v6segment = "[a-fA-F\\d]{1,4}";
|
|
109
109
|
var v6 = `
|
|
@@ -121,9 +121,9 @@ var v6 = `
|
|
|
121
121
|
var v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`);
|
|
122
122
|
var v4exact = new RegExp(`^${v4}$`);
|
|
123
123
|
var v6exact = new RegExp(`^${v6}$`);
|
|
124
|
-
var ipRegex = /* @__PURE__ */ __name((options) => options && options.exact ? v46Exact : new RegExp(`(?:${
|
|
125
|
-
ipRegex.v4 = (options) => options && options.exact ? v4exact : new RegExp(`${
|
|
126
|
-
ipRegex.v6 = (options) => options && options.exact ? v6exact : new RegExp(`${
|
|
124
|
+
var ipRegex = /* @__PURE__ */ __name((options) => options && options.exact ? v46Exact : new RegExp(`(?:${boundary(options)}${v4}${boundary(options)})|(?:${boundary(options)}${v6}${boundary(options)})`, "g"), "ipRegex");
|
|
125
|
+
ipRegex.v4 = (options) => options && options.exact ? v4exact : new RegExp(`${boundary(options)}${v4}${boundary(options)}`, "g");
|
|
126
|
+
ipRegex.v6 = (options) => options && options.exact ? v6exact : new RegExp(`${boundary(options)}${v6}${boundary(options)}`, "g");
|
|
127
127
|
|
|
128
128
|
// src/is-ip/is-ip.ts
|
|
129
129
|
function isIP(value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/dump.ts","../../src/Logger.ts","../../src/IdLogger.ts","../../src/is-ip/ip-regex.ts","../../src/is-ip/is-ip.ts"],"sourcesContent":["export * from './dump'\nexport * from './IdLogger'\nexport * from './is-ip'\nexport * from './Job'\nexport * from './Logger'\n","export const dump = (object: unknown) => {\n const cache: unknown[] = []\n return JSON.stringify(\n object,\n (key, value) => {\n if (typeof value === 'object' && value !== null) {\n // Duplicate reference found, discard key\n if (cache.includes(value)) {\n return '[circular]'\n }\n\n // Store value in our collection\n cache.push(value)\n }\n return value\n },\n 2,\n )\n}\n","/** @deprecated use from @xylabs/logger instead */\nexport type LogFunction = (message?: unknown) => void\nimport { handleError } from '@xylabs/error'\n\n/**\n * Interface to handle overlap between Winston &\n * `console` with as much congruency as possible.\n */\n\n/** @deprecated use from @xylabs/logger instead */\nexport interface Logger {\n debug: LogFunction\n error: LogFunction\n info: LogFunction\n log: LogFunction\n // trace: LogFunction\n warn: LogFunction\n}\n\n/** @deprecated use from @xylabs/logger instead */\nexport const getFunctionName = (depth = 2) => {\n try {\n throw new Error('Just for Stack Trace')\n } catch (error) {\n return handleError(error, (error) => {\n let newIndex: number | undefined\n const stackParts = error.stack?.split('\\n')[depth].split(' ')\n const functionName =\n stackParts?.find((item, index) => {\n if (item.length > 0 && item !== 'at') {\n //check if constructor\n if (item === 'new') {\n newIndex = index\n }\n return item\n }\n }) ?? '<unknown>'\n return newIndex ? `${functionName} ${stackParts?.[newIndex + 1]}` : functionName\n })\n }\n}\n","/* eslint-disable import/no-deprecated */\n// eslint-disable-next-line import/no-deprecated\nimport { getFunctionName, Logger } from './Logger'\n\n/** @deprecated use from @xylabs/logger instead */\nexport class IdLogger implements Logger {\n private _id?: () => string\n private _logger: Logger\n\n constructor(logger: Logger, id?: () => string) {\n this._logger = logger\n this._id = id\n }\n\n set id(id: string) {\n this._id = () => id\n }\n\n debug(message?: unknown) {\n this._logger?.debug(this.generate(message, getFunctionName(3)))\n }\n error(message?: unknown) {\n this._logger?.error(this.generate(message, getFunctionName(3)))\n }\n info(message?: unknown) {\n this._logger?.info(this.generate(message, getFunctionName(3)))\n }\n log(message?: unknown) {\n this._logger?.log(this.generate(message, getFunctionName(3)))\n }\n warn(message?: unknown) {\n this._logger?.warn(this.generate(message, getFunctionName(3)))\n }\n\n private generate(message?: unknown, tag?: string) {\n return `${tag} ${this._id ? `[${this._id}] ` : ''}${\n typeof message === 'string' ? message : typeof message === 'object' ? JSON.stringify(message, undefined, 2) : `${message}`\n }`\n }\n}\n","const word = '[a-fA-F\\\\d:]'\n\nexport interface Options {\n readonly exact?: boolean\n readonly includeBoundaries?: boolean\n}\n\nconst boundry = (options: Options) => (options && options.includeBoundaries ? `(?:(?<=\\\\s|^)(?=${word})|(?<=${word})(?=\\\\s|$))` : '')\n\nconst v4 = '(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}'\n\nconst v6segment = '[a-fA-F\\\\d]{1,4}'\n\nconst v6 = `\n(?:\n(?:${v6segment}:){7}(?:${v6segment}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${v6segment}:){6}(?:${v4}|:${v6segment}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${v6segment}:){5}(?::${v4}|(?::${v6segment}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${v6segment}:){4}(?:(?::${v6segment}){0,1}:${v4}|(?::${v6segment}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${v6segment}:){3}(?:(?::${v6segment}){0,2}:${v4}|(?::${v6segment}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${v6segment}:){2}(?:(?::${v6segment}){0,3}:${v4}|(?::${v6segment}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${v6segment}:){1}(?:(?::${v6segment}){0,4}:${v4}|(?::${v6segment}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${v6segment}){0,5}:${v4}|(?::${v6segment}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`\n .replaceAll(/\\s*\\/\\/.*$/gm, '')\n .replaceAll('\\n', '')\n .trim()\n\n// Pre-compile only the exact regexes because adding a global flag make regexes stateful\nconst v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`)\nconst v4exact = new RegExp(`^${v4}$`)\nconst v6exact = new RegExp(`^${v6}$`)\n\nexport const ipRegex = (options: Options) =>\n options && options.exact\n ? v46Exact\n : new RegExp(`(?:${boundry(options)}${v4}${boundry(options)})|(?:${boundry(options)}${v6}${boundry(options)})`, 'g')\n\nipRegex.v4 = (options: Options) => (options && options.exact ? v4exact : new RegExp(`${boundry(options)}${v4}${boundry(options)}`, 'g'))\nipRegex.v6 = (options: Options) => (options && options.exact ? v6exact : new RegExp(`${boundry(options)}${v6}${boundry(options)}`, 'g'))\n","import { ipRegex } from './ip-regex'\n\nexport function isIP(value: string) {\n return ipRegex({ exact: true }).test(value)\n}\n\nexport function isIPv6(value: string) {\n return ipRegex.v6({ exact: true }).test(value)\n}\n\nexport function isIPv4(value: string) {\n return ipRegex.v4({ exact: true }).test(value)\n}\n\nexport function ipVersion(value: string) {\n return isIP(value) ? (isIPv6(value) ? 6 : 4) : undefined\n}\n"],"mappings":"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","names":["dump","object","cache","JSON","stringify","key","value","includes","push","getFunctionName","depth","Error","error","handleError","newIndex","stackParts","stack","split","functionName","find","item","index","length","IdLogger","_id","_logger","constructor","logger","id","debug","message","generate","getFunctionName","error","info","log","warn","tag","JSON","stringify","undefined","word","boundry","options","includeBoundaries","v4","v6segment","v6","replaceAll","trim","v46Exact","RegExp","v4exact","v6exact","ipRegex","exact","isIP","value","ipRegex","exact","test","isIPv6","v6","isIPv4","v4","ipVersion","undefined"]}
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/dump.ts","../../src/Logger.ts","../../src/IdLogger.ts","../../src/is-ip/ip-regex.ts","../../src/is-ip/is-ip.ts"],"sourcesContent":["export * from './dump'\nexport * from './IdLogger'\nexport * from './is-ip'\nexport * from './Job'\nexport * from './Logger'\n","export const dump = (object: unknown) => {\n const cache: unknown[] = []\n return JSON.stringify(\n object,\n (key, value) => {\n if (typeof value === 'object' && value !== null) {\n // Duplicate reference found, discard key\n if (cache.includes(value)) {\n return '[circular]'\n }\n\n // Store value in our collection\n cache.push(value)\n }\n return value\n },\n 2,\n )\n}\n","/** @deprecated use from @xylabs/logger instead */\nexport type LogFunction = (message?: unknown) => void\nimport { handleError } from '@xylabs/error'\n\n/**\n * Interface to handle overlap between Winston &\n * `console` with as much congruency as possible.\n */\n\n/** @deprecated use from @xylabs/logger instead */\nexport interface Logger {\n debug: LogFunction\n error: LogFunction\n info: LogFunction\n log: LogFunction\n // trace: LogFunction\n warn: LogFunction\n}\n\n/** @deprecated use from @xylabs/logger instead */\nexport const getFunctionName = (depth = 2) => {\n try {\n throw new Error('Just for Stack Trace')\n } catch (error) {\n return handleError(error, (error) => {\n let newIndex: number | undefined\n const stackParts = error.stack?.split('\\n')[depth].split(' ')\n const functionName =\n stackParts?.find((item, index) => {\n if (item.length > 0 && item !== 'at') {\n //check if constructor\n if (item === 'new') {\n newIndex = index\n }\n return item\n }\n }) ?? '<unknown>'\n return newIndex ? `${functionName} ${stackParts?.[newIndex + 1]}` : functionName\n })\n }\n}\n","/* eslint-disable import/no-deprecated */\n// eslint-disable-next-line import/no-deprecated\nimport { getFunctionName, Logger } from './Logger'\n\n/** @deprecated use from @xylabs/logger instead */\nexport class IdLogger implements Logger {\n private _id?: () => string\n private _logger: Logger\n\n constructor(logger: Logger, id?: () => string) {\n this._logger = logger\n this._id = id\n }\n\n set id(id: string) {\n this._id = () => id\n }\n\n debug(message?: unknown) {\n this._logger?.debug(this.generate(message, getFunctionName(3)))\n }\n error(message?: unknown) {\n this._logger?.error(this.generate(message, getFunctionName(3)))\n }\n info(message?: unknown) {\n this._logger?.info(this.generate(message, getFunctionName(3)))\n }\n log(message?: unknown) {\n this._logger?.log(this.generate(message, getFunctionName(3)))\n }\n warn(message?: unknown) {\n this._logger?.warn(this.generate(message, getFunctionName(3)))\n }\n\n private generate(message?: unknown, tag?: string) {\n return `${tag} ${this._id ? `[${this._id}] ` : ''}${\n typeof message === 'string' ? message\n : typeof message === 'object' ? JSON.stringify(message, undefined, 2)\n : `${message}`\n }`\n }\n}\n","const word = '[a-fA-F\\\\d:]'\n\nexport interface Options {\n readonly exact?: boolean\n readonly includeBoundaries?: boolean\n}\n\nconst boundary = (options: Options) => (options && options.includeBoundaries ? `(?:(?<=\\\\s|^)(?=${word})|(?<=${word})(?=\\\\s|$))` : '')\n\nconst v4 = '(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}'\n\nconst v6segment = '[a-fA-F\\\\d]{1,4}'\n\nconst v6 = `\n(?:\n(?:${v6segment}:){7}(?:${v6segment}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${v6segment}:){6}(?:${v4}|:${v6segment}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${v6segment}:){5}(?::${v4}|(?::${v6segment}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${v6segment}:){4}(?:(?::${v6segment}){0,1}:${v4}|(?::${v6segment}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${v6segment}:){3}(?:(?::${v6segment}){0,2}:${v4}|(?::${v6segment}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${v6segment}:){2}(?:(?::${v6segment}){0,3}:${v4}|(?::${v6segment}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${v6segment}:){1}(?:(?::${v6segment}){0,4}:${v4}|(?::${v6segment}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${v6segment}){0,5}:${v4}|(?::${v6segment}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`\n .replaceAll(/\\s*\\/\\/.*$/gm, '')\n .replaceAll('\\n', '')\n .trim()\n\n// Pre-compile only the exact regexes because adding a global flag make regexes stateful\nconst v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`)\nconst v4exact = new RegExp(`^${v4}$`)\nconst v6exact = new RegExp(`^${v6}$`)\n\nexport const ipRegex = (options: Options) =>\n options && options.exact ?\n v46Exact\n : new RegExp(`(?:${boundary(options)}${v4}${boundary(options)})|(?:${boundary(options)}${v6}${boundary(options)})`, 'g')\n\nipRegex.v4 = (options: Options) => (options && options.exact ? v4exact : new RegExp(`${boundary(options)}${v4}${boundary(options)}`, 'g'))\nipRegex.v6 = (options: Options) => (options && options.exact ? v6exact : new RegExp(`${boundary(options)}${v6}${boundary(options)}`, 'g'))\n","import { ipRegex } from './ip-regex'\n\nexport function isIP(value: string) {\n return ipRegex({ exact: true }).test(value)\n}\n\nexport function isIPv6(value: string) {\n return ipRegex.v6({ exact: true }).test(value)\n}\n\nexport function isIPv4(value: string) {\n return ipRegex.v4({ exact: true }).test(value)\n}\n\nexport function ipVersion(value: string) {\n return (\n isIP(value) ?\n isIPv6(value) ? 6\n : 4\n : undefined\n )\n}\n"],"mappings":"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","names":["dump","object","cache","JSON","stringify","key","value","includes","push","getFunctionName","depth","Error","error","handleError","newIndex","stackParts","stack","split","functionName","find","item","index","length","IdLogger","_id","_logger","constructor","logger","id","debug","message","generate","getFunctionName","error","info","log","warn","tag","JSON","stringify","undefined","word","boundary","options","includeBoundaries","v4","v6segment","v6","replaceAll","trim","v46Exact","RegExp","v4exact","v6exact","ipRegex","exact","isIP","value","ipRegex","exact","test","isIPv6","v6","isIPv4","v4","ipVersion","undefined"]}
|
package/dist/browser/index.js
CHANGED
|
@@ -73,7 +73,7 @@ var IdLogger = class {
|
|
|
73
73
|
|
|
74
74
|
// src/is-ip/ip-regex.ts
|
|
75
75
|
var word = "[a-fA-F\\d:]";
|
|
76
|
-
var
|
|
76
|
+
var boundary = /* @__PURE__ */ __name((options) => options && options.includeBoundaries ? `(?:(?<=\\s|^)(?=${word})|(?<=${word})(?=\\s|$))` : "", "boundary");
|
|
77
77
|
var v4 = "(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}";
|
|
78
78
|
var v6segment = "[a-fA-F\\d]{1,4}";
|
|
79
79
|
var v6 = `
|
|
@@ -91,9 +91,9 @@ var v6 = `
|
|
|
91
91
|
var v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`);
|
|
92
92
|
var v4exact = new RegExp(`^${v4}$`);
|
|
93
93
|
var v6exact = new RegExp(`^${v6}$`);
|
|
94
|
-
var ipRegex = /* @__PURE__ */ __name((options) => options && options.exact ? v46Exact : new RegExp(`(?:${
|
|
95
|
-
ipRegex.v4 = (options) => options && options.exact ? v4exact : new RegExp(`${
|
|
96
|
-
ipRegex.v6 = (options) => options && options.exact ? v6exact : new RegExp(`${
|
|
94
|
+
var ipRegex = /* @__PURE__ */ __name((options) => options && options.exact ? v46Exact : new RegExp(`(?:${boundary(options)}${v4}${boundary(options)})|(?:${boundary(options)}${v6}${boundary(options)})`, "g"), "ipRegex");
|
|
95
|
+
ipRegex.v4 = (options) => options && options.exact ? v4exact : new RegExp(`${boundary(options)}${v4}${boundary(options)}`, "g");
|
|
96
|
+
ipRegex.v6 = (options) => options && options.exact ? v6exact : new RegExp(`${boundary(options)}${v6}${boundary(options)}`, "g");
|
|
97
97
|
|
|
98
98
|
// src/is-ip/is-ip.ts
|
|
99
99
|
function isIP(value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/dump.ts","../../src/Logger.ts","../../src/IdLogger.ts","../../src/is-ip/ip-regex.ts","../../src/is-ip/is-ip.ts"],"sourcesContent":["export const dump = (object: unknown) => {\n const cache: unknown[] = []\n return JSON.stringify(\n object,\n (key, value) => {\n if (typeof value === 'object' && value !== null) {\n // Duplicate reference found, discard key\n if (cache.includes(value)) {\n return '[circular]'\n }\n\n // Store value in our collection\n cache.push(value)\n }\n return value\n },\n 2,\n )\n}\n","/** @deprecated use from @xylabs/logger instead */\nexport type LogFunction = (message?: unknown) => void\nimport { handleError } from '@xylabs/error'\n\n/**\n * Interface to handle overlap between Winston &\n * `console` with as much congruency as possible.\n */\n\n/** @deprecated use from @xylabs/logger instead */\nexport interface Logger {\n debug: LogFunction\n error: LogFunction\n info: LogFunction\n log: LogFunction\n // trace: LogFunction\n warn: LogFunction\n}\n\n/** @deprecated use from @xylabs/logger instead */\nexport const getFunctionName = (depth = 2) => {\n try {\n throw new Error('Just for Stack Trace')\n } catch (error) {\n return handleError(error, (error) => {\n let newIndex: number | undefined\n const stackParts = error.stack?.split('\\n')[depth].split(' ')\n const functionName =\n stackParts?.find((item, index) => {\n if (item.length > 0 && item !== 'at') {\n //check if constructor\n if (item === 'new') {\n newIndex = index\n }\n return item\n }\n }) ?? '<unknown>'\n return newIndex ? `${functionName} ${stackParts?.[newIndex + 1]}` : functionName\n })\n }\n}\n","/* eslint-disable import/no-deprecated */\n// eslint-disable-next-line import/no-deprecated\nimport { getFunctionName, Logger } from './Logger'\n\n/** @deprecated use from @xylabs/logger instead */\nexport class IdLogger implements Logger {\n private _id?: () => string\n private _logger: Logger\n\n constructor(logger: Logger, id?: () => string) {\n this._logger = logger\n this._id = id\n }\n\n set id(id: string) {\n this._id = () => id\n }\n\n debug(message?: unknown) {\n this._logger?.debug(this.generate(message, getFunctionName(3)))\n }\n error(message?: unknown) {\n this._logger?.error(this.generate(message, getFunctionName(3)))\n }\n info(message?: unknown) {\n this._logger?.info(this.generate(message, getFunctionName(3)))\n }\n log(message?: unknown) {\n this._logger?.log(this.generate(message, getFunctionName(3)))\n }\n warn(message?: unknown) {\n this._logger?.warn(this.generate(message, getFunctionName(3)))\n }\n\n private generate(message?: unknown, tag?: string) {\n return `${tag} ${this._id ? `[${this._id}] ` : ''}${\n typeof message === 'string' ? message
|
|
1
|
+
{"version":3,"sources":["../../src/dump.ts","../../src/Logger.ts","../../src/IdLogger.ts","../../src/is-ip/ip-regex.ts","../../src/is-ip/is-ip.ts"],"sourcesContent":["export const dump = (object: unknown) => {\n const cache: unknown[] = []\n return JSON.stringify(\n object,\n (key, value) => {\n if (typeof value === 'object' && value !== null) {\n // Duplicate reference found, discard key\n if (cache.includes(value)) {\n return '[circular]'\n }\n\n // Store value in our collection\n cache.push(value)\n }\n return value\n },\n 2,\n )\n}\n","/** @deprecated use from @xylabs/logger instead */\nexport type LogFunction = (message?: unknown) => void\nimport { handleError } from '@xylabs/error'\n\n/**\n * Interface to handle overlap between Winston &\n * `console` with as much congruency as possible.\n */\n\n/** @deprecated use from @xylabs/logger instead */\nexport interface Logger {\n debug: LogFunction\n error: LogFunction\n info: LogFunction\n log: LogFunction\n // trace: LogFunction\n warn: LogFunction\n}\n\n/** @deprecated use from @xylabs/logger instead */\nexport const getFunctionName = (depth = 2) => {\n try {\n throw new Error('Just for Stack Trace')\n } catch (error) {\n return handleError(error, (error) => {\n let newIndex: number | undefined\n const stackParts = error.stack?.split('\\n')[depth].split(' ')\n const functionName =\n stackParts?.find((item, index) => {\n if (item.length > 0 && item !== 'at') {\n //check if constructor\n if (item === 'new') {\n newIndex = index\n }\n return item\n }\n }) ?? '<unknown>'\n return newIndex ? `${functionName} ${stackParts?.[newIndex + 1]}` : functionName\n })\n }\n}\n","/* eslint-disable import/no-deprecated */\n// eslint-disable-next-line import/no-deprecated\nimport { getFunctionName, Logger } from './Logger'\n\n/** @deprecated use from @xylabs/logger instead */\nexport class IdLogger implements Logger {\n private _id?: () => string\n private _logger: Logger\n\n constructor(logger: Logger, id?: () => string) {\n this._logger = logger\n this._id = id\n }\n\n set id(id: string) {\n this._id = () => id\n }\n\n debug(message?: unknown) {\n this._logger?.debug(this.generate(message, getFunctionName(3)))\n }\n error(message?: unknown) {\n this._logger?.error(this.generate(message, getFunctionName(3)))\n }\n info(message?: unknown) {\n this._logger?.info(this.generate(message, getFunctionName(3)))\n }\n log(message?: unknown) {\n this._logger?.log(this.generate(message, getFunctionName(3)))\n }\n warn(message?: unknown) {\n this._logger?.warn(this.generate(message, getFunctionName(3)))\n }\n\n private generate(message?: unknown, tag?: string) {\n return `${tag} ${this._id ? `[${this._id}] ` : ''}${\n typeof message === 'string' ? message\n : typeof message === 'object' ? JSON.stringify(message, undefined, 2)\n : `${message}`\n }`\n }\n}\n","const word = '[a-fA-F\\\\d:]'\n\nexport interface Options {\n readonly exact?: boolean\n readonly includeBoundaries?: boolean\n}\n\nconst boundary = (options: Options) => (options && options.includeBoundaries ? `(?:(?<=\\\\s|^)(?=${word})|(?<=${word})(?=\\\\s|$))` : '')\n\nconst v4 = '(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}'\n\nconst v6segment = '[a-fA-F\\\\d]{1,4}'\n\nconst v6 = `\n(?:\n(?:${v6segment}:){7}(?:${v6segment}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${v6segment}:){6}(?:${v4}|:${v6segment}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${v6segment}:){5}(?::${v4}|(?::${v6segment}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${v6segment}:){4}(?:(?::${v6segment}){0,1}:${v4}|(?::${v6segment}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${v6segment}:){3}(?:(?::${v6segment}){0,2}:${v4}|(?::${v6segment}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${v6segment}:){2}(?:(?::${v6segment}){0,3}:${v4}|(?::${v6segment}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${v6segment}:){1}(?:(?::${v6segment}){0,4}:${v4}|(?::${v6segment}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${v6segment}){0,5}:${v4}|(?::${v6segment}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`\n .replaceAll(/\\s*\\/\\/.*$/gm, '')\n .replaceAll('\\n', '')\n .trim()\n\n// Pre-compile only the exact regexes because adding a global flag make regexes stateful\nconst v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`)\nconst v4exact = new RegExp(`^${v4}$`)\nconst v6exact = new RegExp(`^${v6}$`)\n\nexport const ipRegex = (options: Options) =>\n options && options.exact ?\n v46Exact\n : new RegExp(`(?:${boundary(options)}${v4}${boundary(options)})|(?:${boundary(options)}${v6}${boundary(options)})`, 'g')\n\nipRegex.v4 = (options: Options) => (options && options.exact ? v4exact : new RegExp(`${boundary(options)}${v4}${boundary(options)}`, 'g'))\nipRegex.v6 = (options: Options) => (options && options.exact ? v6exact : new RegExp(`${boundary(options)}${v6}${boundary(options)}`, 'g'))\n","import { ipRegex } from './ip-regex'\n\nexport function isIP(value: string) {\n return ipRegex({ exact: true }).test(value)\n}\n\nexport function isIPv6(value: string) {\n return ipRegex.v6({ exact: true }).test(value)\n}\n\nexport function isIPv4(value: string) {\n return ipRegex.v4({ exact: true }).test(value)\n}\n\nexport function ipVersion(value: string) {\n return (\n isIP(value) ?\n isIPv6(value) ? 6\n : 4\n : undefined\n )\n}\n"],"mappings":";;;;AAAO,IAAMA,OAAO,wBAACC,WAAAA;AACnB,QAAMC,QAAmB,CAAA;AACzB,SAAOC,KAAKC,UACVH,QACA,CAACI,KAAKC,UAAAA;AACJ,QAAI,OAAOA,UAAU,YAAYA,UAAU,MAAM;AAE/C,UAAIJ,MAAMK,SAASD,KAAAA,GAAQ;AACzB,eAAO;MACT;AAGAJ,YAAMM,KAAKF,KAAAA;IACb;AACA,WAAOA;EACT,GACA,CAAA;AAEJ,GAlBoB;;;ACEpB,SAASG,mBAAmB;AAkBrB,IAAMC,kBAAkB,wBAACC,QAAQ,MAAC;AACvC,MAAI;AACF,UAAM,IAAIC,MAAM,sBAAA;EAClB,SAASC,OAAO;AACd,WAAOC,YAAYD,OAAO,CAACA,WAAAA;AACzB,UAAIE;AACJ,YAAMC,aAAaH,OAAMI,OAAOC,MAAM,IAAA,EAAMP,KAAAA,EAAOO,MAAM,GAAA;AACzD,YAAMC,eACJH,YAAYI,KAAK,CAACC,MAAMC,UAAAA;AACtB,YAAID,KAAKE,SAAS,KAAKF,SAAS,MAAM;AAEpC,cAAIA,SAAS,OAAO;AAClBN,uBAAWO;UACb;AACA,iBAAOD;QACT;MACF,CAAA,KAAM;AACR,aAAON,WAAW,GAAGI,YAAAA,IAAgBH,aAAaD,WAAW,CAAA,CAAE,KAAKI;IACtE,CAAA;EACF;AACF,GApB+B;;;ACfxB,IAAMK,WAAN,MAAMA;EALb,OAKaA;;;EACHC;EACAC;EAERC,YAAYC,QAAgBC,IAAmB;AAC7C,SAAKH,UAAUE;AACf,SAAKH,MAAMI;EACb;EAEA,IAAIA,GAAGA,IAAY;AACjB,SAAKJ,MAAM,MAAMI;EACnB;EAEAC,MAAMC,SAAmB;AACvB,SAAKL,SAASI,MAAM,KAAKE,SAASD,SAASE,gBAAgB,CAAA,CAAA,CAAA;EAC7D;EACAC,MAAMH,SAAmB;AACvB,SAAKL,SAASQ,MAAM,KAAKF,SAASD,SAASE,gBAAgB,CAAA,CAAA,CAAA;EAC7D;EACAE,KAAKJ,SAAmB;AACtB,SAAKL,SAASS,KAAK,KAAKH,SAASD,SAASE,gBAAgB,CAAA,CAAA,CAAA;EAC5D;EACAG,IAAIL,SAAmB;AACrB,SAAKL,SAASU,IAAI,KAAKJ,SAASD,SAASE,gBAAgB,CAAA,CAAA,CAAA;EAC3D;EACAI,KAAKN,SAAmB;AACtB,SAAKL,SAASW,KAAK,KAAKL,SAASD,SAASE,gBAAgB,CAAA,CAAA,CAAA;EAC5D;EAEQD,SAASD,SAAmBO,KAAc;AAChD,WAAO,GAAGA,GAAAA,IAAO,KAAKb,MAAM,IAAI,KAAKA,GAAG,OAAO,EAAA,GAC7C,OAAOM,YAAY,WAAWA,UAC5B,OAAOA,YAAY,WAAWQ,KAAKC,UAAUT,SAASU,QAAW,CAAA,IACjE,GAAGV,OAAAA,EAAS;EAElB;AACF;;;ACzCA,IAAMW,OAAO;AAOb,IAAMC,WAAW,wBAACC,YAAsBA,WAAWA,QAAQC,oBAAoB,mBAAmBH,IAAAA,SAAaA,IAAAA,gBAAoB,IAAlH;AAEjB,IAAMI,KAAK;AAEX,IAAMC,YAAY;AAElB,IAAMC,KAAK;;KAEND,SAAAA,WAAoBA,SAAAA;KACpBA,SAAAA,WAAoBD,EAAAA,KAAOC,SAAAA;KAC3BA,SAAAA,YAAqBD,EAAAA,QAAUC,SAAAA;KAC/BA,SAAAA,eAAwBA,SAAAA,UAAmBD,EAAAA,QAAUC,SAAAA;KACrDA,SAAAA,eAAwBA,SAAAA,UAAmBD,EAAAA,QAAUC,SAAAA;KACrDA,SAAAA,eAAwBA,SAAAA,UAAmBD,EAAAA,QAAUC,SAAAA;KACrDA,SAAAA,eAAwBA,SAAAA,UAAmBD,EAAAA,QAAUC,SAAAA;aAC7CA,SAAAA,UAAmBD,EAAAA,QAAUC,SAAAA;;EAGvCE,WAAW,gBAAgB,EAAA,EAC3BA,WAAW,MAAM,EAAA,EACjBC,KAAI;AAGP,IAAMC,WAAW,IAAIC,OAAO,OAAON,EAAAA,UAAYE,EAAAA,IAAM;AACrD,IAAMK,UAAU,IAAID,OAAO,IAAIN,EAAAA,GAAK;AACpC,IAAMQ,UAAU,IAAIF,OAAO,IAAIJ,EAAAA,GAAK;AAE7B,IAAMO,UAAU,wBAACX,YACtBA,WAAWA,QAAQY,QACjBL,WACA,IAAIC,OAAO,MAAMT,SAASC,OAAAA,CAAAA,GAAWE,EAAAA,GAAKH,SAASC,OAAAA,CAAAA,QAAgBD,SAASC,OAAAA,CAAAA,GAAWI,EAAAA,GAAKL,SAASC,OAAAA,CAAAA,KAAa,GAAA,GAH/F;AAKvBW,QAAQT,KAAK,CAACF,YAAsBA,WAAWA,QAAQY,QAAQH,UAAU,IAAID,OAAO,GAAGT,SAASC,OAAAA,CAAAA,GAAWE,EAAAA,GAAKH,SAASC,OAAAA,CAAAA,IAAY,GAAA;AACrIW,QAAQP,KAAK,CAACJ,YAAsBA,WAAWA,QAAQY,QAAQF,UAAU,IAAIF,OAAO,GAAGT,SAASC,OAAAA,CAAAA,GAAWI,EAAAA,GAAKL,SAASC,OAAAA,CAAAA,IAAY,GAAA;;;ACtC9H,SAASa,KAAKC,OAAa;AAChC,SAAOC,QAAQ;IAAEC,OAAO;EAAK,CAAA,EAAGC,KAAKH,KAAAA;AACvC;AAFgBD;AAIT,SAASK,OAAOJ,OAAa;AAClC,SAAOC,QAAQI,GAAG;IAAEH,OAAO;EAAK,CAAA,EAAGC,KAAKH,KAAAA;AAC1C;AAFgBI;AAIT,SAASE,OAAON,OAAa;AAClC,SAAOC,QAAQM,GAAG;IAAEL,OAAO;EAAK,CAAA,EAAGC,KAAKH,KAAAA;AAC1C;AAFgBM;AAIT,SAASE,UAAUR,OAAa;AACrC,SACED,KAAKC,KAAAA,IACHI,OAAOJ,KAAAA,IAAS,IACd,IACFS;AAEN;AAPgBD;","names":["dump","object","cache","JSON","stringify","key","value","includes","push","handleError","getFunctionName","depth","Error","error","handleError","newIndex","stackParts","stack","split","functionName","find","item","index","length","IdLogger","_id","_logger","constructor","logger","id","debug","message","generate","getFunctionName","error","info","log","warn","tag","JSON","stringify","undefined","word","boundary","options","includeBoundaries","v4","v6segment","v6","replaceAll","trim","v46Exact","RegExp","v4exact","v6exact","ipRegex","exact","isIP","value","ipRegex","exact","test","isIPv6","v6","isIPv4","v4","ipVersion","undefined"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;
|
|
1
|
+
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;CAH4F,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;
|
|
1
|
+
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;CAH4F,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;
|
|
1
|
+
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;CAH4F,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,qBAOtC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,qBAOtC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,qBAOtC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;CAOjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;CAOjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"IdLogger.d.ts","sourceRoot":"","sources":["../../src/IdLogger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,qBAAa,QAAS,YAAW,MAAM;IACrC,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,MAAM;IAK7C,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAEhB;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAGtB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;IAGrB,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAItB,OAAO,CAAC,QAAQ;CAOjB"}
|
package/dist/node/index.cjs
CHANGED
|
@@ -108,7 +108,7 @@ var IdLogger = _IdLogger;
|
|
|
108
108
|
|
|
109
109
|
// src/is-ip/ip-regex.ts
|
|
110
110
|
var word = "[a-fA-F\\d:]";
|
|
111
|
-
var
|
|
111
|
+
var boundary = /* @__PURE__ */ __name((options) => options && options.includeBoundaries ? `(?:(?<=\\s|^)(?=${word})|(?<=${word})(?=\\s|$))` : "", "boundary");
|
|
112
112
|
var v4 = "(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}";
|
|
113
113
|
var v6segment = "[a-fA-F\\d]{1,4}";
|
|
114
114
|
var v6 = `
|
|
@@ -126,9 +126,9 @@ var v6 = `
|
|
|
126
126
|
var v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`);
|
|
127
127
|
var v4exact = new RegExp(`^${v4}$`);
|
|
128
128
|
var v6exact = new RegExp(`^${v6}$`);
|
|
129
|
-
var ipRegex = /* @__PURE__ */ __name((options) => options && options.exact ? v46Exact : new RegExp(`(?:${
|
|
130
|
-
ipRegex.v4 = (options) => options && options.exact ? v4exact : new RegExp(`${
|
|
131
|
-
ipRegex.v6 = (options) => options && options.exact ? v6exact : new RegExp(`${
|
|
129
|
+
var ipRegex = /* @__PURE__ */ __name((options) => options && options.exact ? v46Exact : new RegExp(`(?:${boundary(options)}${v4}${boundary(options)})|(?:${boundary(options)}${v6}${boundary(options)})`, "g"), "ipRegex");
|
|
130
|
+
ipRegex.v4 = (options) => options && options.exact ? v4exact : new RegExp(`${boundary(options)}${v4}${boundary(options)}`, "g");
|
|
131
|
+
ipRegex.v6 = (options) => options && options.exact ? v6exact : new RegExp(`${boundary(options)}${v6}${boundary(options)}`, "g");
|
|
132
132
|
|
|
133
133
|
// src/is-ip/is-ip.ts
|
|
134
134
|
function isIP(value) {
|
package/dist/node/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/dump.ts","../../src/Logger.ts","../../src/IdLogger.ts","../../src/is-ip/ip-regex.ts","../../src/is-ip/is-ip.ts"],"sourcesContent":["export * from './dump'\nexport * from './IdLogger'\nexport * from './is-ip'\nexport * from './Job'\nexport * from './Logger'\n","export const dump = (object: unknown) => {\n const cache: unknown[] = []\n return JSON.stringify(\n object,\n (key, value) => {\n if (typeof value === 'object' && value !== null) {\n // Duplicate reference found, discard key\n if (cache.includes(value)) {\n return '[circular]'\n }\n\n // Store value in our collection\n cache.push(value)\n }\n return value\n },\n 2,\n )\n}\n","/** @deprecated use from @xylabs/logger instead */\nexport type LogFunction = (message?: unknown) => void\nimport { handleError } from '@xylabs/error'\n\n/**\n * Interface to handle overlap between Winston &\n * `console` with as much congruency as possible.\n */\n\n/** @deprecated use from @xylabs/logger instead */\nexport interface Logger {\n debug: LogFunction\n error: LogFunction\n info: LogFunction\n log: LogFunction\n // trace: LogFunction\n warn: LogFunction\n}\n\n/** @deprecated use from @xylabs/logger instead */\nexport const getFunctionName = (depth = 2) => {\n try {\n throw new Error('Just for Stack Trace')\n } catch (error) {\n return handleError(error, (error) => {\n let newIndex: number | undefined\n const stackParts = error.stack?.split('\\n')[depth].split(' ')\n const functionName =\n stackParts?.find((item, index) => {\n if (item.length > 0 && item !== 'at') {\n //check if constructor\n if (item === 'new') {\n newIndex = index\n }\n return item\n }\n }) ?? '<unknown>'\n return newIndex ? `${functionName} ${stackParts?.[newIndex + 1]}` : functionName\n })\n }\n}\n","/* eslint-disable import/no-deprecated */\n// eslint-disable-next-line import/no-deprecated\nimport { getFunctionName, Logger } from './Logger'\n\n/** @deprecated use from @xylabs/logger instead */\nexport class IdLogger implements Logger {\n private _id?: () => string\n private _logger: Logger\n\n constructor(logger: Logger, id?: () => string) {\n this._logger = logger\n this._id = id\n }\n\n set id(id: string) {\n this._id = () => id\n }\n\n debug(message?: unknown) {\n this._logger?.debug(this.generate(message, getFunctionName(3)))\n }\n error(message?: unknown) {\n this._logger?.error(this.generate(message, getFunctionName(3)))\n }\n info(message?: unknown) {\n this._logger?.info(this.generate(message, getFunctionName(3)))\n }\n log(message?: unknown) {\n this._logger?.log(this.generate(message, getFunctionName(3)))\n }\n warn(message?: unknown) {\n this._logger?.warn(this.generate(message, getFunctionName(3)))\n }\n\n private generate(message?: unknown, tag?: string) {\n return `${tag} ${this._id ? `[${this._id}] ` : ''}${\n typeof message === 'string' ? message : typeof message === 'object' ? JSON.stringify(message, undefined, 2) : `${message}`\n }`\n }\n}\n","const word = '[a-fA-F\\\\d:]'\n\nexport interface Options {\n readonly exact?: boolean\n readonly includeBoundaries?: boolean\n}\n\nconst boundry = (options: Options) => (options && options.includeBoundaries ? `(?:(?<=\\\\s|^)(?=${word})|(?<=${word})(?=\\\\s|$))` : '')\n\nconst v4 = '(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}'\n\nconst v6segment = '[a-fA-F\\\\d]{1,4}'\n\nconst v6 = `\n(?:\n(?:${v6segment}:){7}(?:${v6segment}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${v6segment}:){6}(?:${v4}|:${v6segment}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${v6segment}:){5}(?::${v4}|(?::${v6segment}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${v6segment}:){4}(?:(?::${v6segment}){0,1}:${v4}|(?::${v6segment}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${v6segment}:){3}(?:(?::${v6segment}){0,2}:${v4}|(?::${v6segment}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${v6segment}:){2}(?:(?::${v6segment}){0,3}:${v4}|(?::${v6segment}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${v6segment}:){1}(?:(?::${v6segment}){0,4}:${v4}|(?::${v6segment}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${v6segment}){0,5}:${v4}|(?::${v6segment}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`\n .replaceAll(/\\s*\\/\\/.*$/gm, '')\n .replaceAll('\\n', '')\n .trim()\n\n// Pre-compile only the exact regexes because adding a global flag make regexes stateful\nconst v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`)\nconst v4exact = new RegExp(`^${v4}$`)\nconst v6exact = new RegExp(`^${v6}$`)\n\nexport const ipRegex = (options: Options) =>\n options && options.exact\n ? v46Exact\n : new RegExp(`(?:${boundry(options)}${v4}${boundry(options)})|(?:${boundry(options)}${v6}${boundry(options)})`, 'g')\n\nipRegex.v4 = (options: Options) => (options && options.exact ? v4exact : new RegExp(`${boundry(options)}${v4}${boundry(options)}`, 'g'))\nipRegex.v6 = (options: Options) => (options && options.exact ? v6exact : new RegExp(`${boundry(options)}${v6}${boundry(options)}`, 'g'))\n","import { ipRegex } from './ip-regex'\n\nexport function isIP(value: string) {\n return ipRegex({ exact: true }).test(value)\n}\n\nexport function isIPv6(value: string) {\n return ipRegex.v6({ exact: true }).test(value)\n}\n\nexport function isIPv4(value: string) {\n return ipRegex.v4({ exact: true }).test(value)\n}\n\nexport function ipVersion(value: string) {\n return isIP(value) ? (isIPv6(value) ? 6 : 4) : undefined\n}\n"],"mappings":"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","names":["dump","object","cache","JSON","stringify","key","value","includes","push","getFunctionName","depth","Error","error","handleError","newIndex","stackParts","stack","split","functionName","find","item","index","length","IdLogger","_id","_logger","constructor","logger","id","debug","message","generate","getFunctionName","error","info","log","warn","tag","JSON","stringify","undefined","word","boundry","options","includeBoundaries","v4","v6segment","v6","replaceAll","trim","v46Exact","RegExp","v4exact","v6exact","ipRegex","exact","isIP","value","ipRegex","exact","test","isIPv6","v6","isIPv4","v4","ipVersion","undefined"]}
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/dump.ts","../../src/Logger.ts","../../src/IdLogger.ts","../../src/is-ip/ip-regex.ts","../../src/is-ip/is-ip.ts"],"sourcesContent":["export * from './dump'\nexport * from './IdLogger'\nexport * from './is-ip'\nexport * from './Job'\nexport * from './Logger'\n","export const dump = (object: unknown) => {\n const cache: unknown[] = []\n return JSON.stringify(\n object,\n (key, value) => {\n if (typeof value === 'object' && value !== null) {\n // Duplicate reference found, discard key\n if (cache.includes(value)) {\n return '[circular]'\n }\n\n // Store value in our collection\n cache.push(value)\n }\n return value\n },\n 2,\n )\n}\n","/** @deprecated use from @xylabs/logger instead */\nexport type LogFunction = (message?: unknown) => void\nimport { handleError } from '@xylabs/error'\n\n/**\n * Interface to handle overlap between Winston &\n * `console` with as much congruency as possible.\n */\n\n/** @deprecated use from @xylabs/logger instead */\nexport interface Logger {\n debug: LogFunction\n error: LogFunction\n info: LogFunction\n log: LogFunction\n // trace: LogFunction\n warn: LogFunction\n}\n\n/** @deprecated use from @xylabs/logger instead */\nexport const getFunctionName = (depth = 2) => {\n try {\n throw new Error('Just for Stack Trace')\n } catch (error) {\n return handleError(error, (error) => {\n let newIndex: number | undefined\n const stackParts = error.stack?.split('\\n')[depth].split(' ')\n const functionName =\n stackParts?.find((item, index) => {\n if (item.length > 0 && item !== 'at') {\n //check if constructor\n if (item === 'new') {\n newIndex = index\n }\n return item\n }\n }) ?? '<unknown>'\n return newIndex ? `${functionName} ${stackParts?.[newIndex + 1]}` : functionName\n })\n }\n}\n","/* eslint-disable import/no-deprecated */\n// eslint-disable-next-line import/no-deprecated\nimport { getFunctionName, Logger } from './Logger'\n\n/** @deprecated use from @xylabs/logger instead */\nexport class IdLogger implements Logger {\n private _id?: () => string\n private _logger: Logger\n\n constructor(logger: Logger, id?: () => string) {\n this._logger = logger\n this._id = id\n }\n\n set id(id: string) {\n this._id = () => id\n }\n\n debug(message?: unknown) {\n this._logger?.debug(this.generate(message, getFunctionName(3)))\n }\n error(message?: unknown) {\n this._logger?.error(this.generate(message, getFunctionName(3)))\n }\n info(message?: unknown) {\n this._logger?.info(this.generate(message, getFunctionName(3)))\n }\n log(message?: unknown) {\n this._logger?.log(this.generate(message, getFunctionName(3)))\n }\n warn(message?: unknown) {\n this._logger?.warn(this.generate(message, getFunctionName(3)))\n }\n\n private generate(message?: unknown, tag?: string) {\n return `${tag} ${this._id ? `[${this._id}] ` : ''}${\n typeof message === 'string' ? message\n : typeof message === 'object' ? JSON.stringify(message, undefined, 2)\n : `${message}`\n }`\n }\n}\n","const word = '[a-fA-F\\\\d:]'\n\nexport interface Options {\n readonly exact?: boolean\n readonly includeBoundaries?: boolean\n}\n\nconst boundary = (options: Options) => (options && options.includeBoundaries ? `(?:(?<=\\\\s|^)(?=${word})|(?<=${word})(?=\\\\s|$))` : '')\n\nconst v4 = '(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}'\n\nconst v6segment = '[a-fA-F\\\\d]{1,4}'\n\nconst v6 = `\n(?:\n(?:${v6segment}:){7}(?:${v6segment}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${v6segment}:){6}(?:${v4}|:${v6segment}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${v6segment}:){5}(?::${v4}|(?::${v6segment}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${v6segment}:){4}(?:(?::${v6segment}){0,1}:${v4}|(?::${v6segment}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${v6segment}:){3}(?:(?::${v6segment}){0,2}:${v4}|(?::${v6segment}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${v6segment}:){2}(?:(?::${v6segment}){0,3}:${v4}|(?::${v6segment}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${v6segment}:){1}(?:(?::${v6segment}){0,4}:${v4}|(?::${v6segment}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${v6segment}){0,5}:${v4}|(?::${v6segment}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`\n .replaceAll(/\\s*\\/\\/.*$/gm, '')\n .replaceAll('\\n', '')\n .trim()\n\n// Pre-compile only the exact regexes because adding a global flag make regexes stateful\nconst v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`)\nconst v4exact = new RegExp(`^${v4}$`)\nconst v6exact = new RegExp(`^${v6}$`)\n\nexport const ipRegex = (options: Options) =>\n options && options.exact ?\n v46Exact\n : new RegExp(`(?:${boundary(options)}${v4}${boundary(options)})|(?:${boundary(options)}${v6}${boundary(options)})`, 'g')\n\nipRegex.v4 = (options: Options) => (options && options.exact ? v4exact : new RegExp(`${boundary(options)}${v4}${boundary(options)}`, 'g'))\nipRegex.v6 = (options: Options) => (options && options.exact ? v6exact : new RegExp(`${boundary(options)}${v6}${boundary(options)}`, 'g'))\n","import { ipRegex } from './ip-regex'\n\nexport function isIP(value: string) {\n return ipRegex({ exact: true }).test(value)\n}\n\nexport function isIPv6(value: string) {\n return ipRegex.v6({ exact: true }).test(value)\n}\n\nexport function isIPv4(value: string) {\n return ipRegex.v4({ exact: true }).test(value)\n}\n\nexport function ipVersion(value: string) {\n return (\n isIP(value) ?\n isIPv6(value) ? 6\n : 4\n : undefined\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;ACAO,IAAMA,OAAO,wBAACC,WAAAA;AACnB,QAAMC,QAAmB,CAAA;AACzB,SAAOC,KAAKC,UACVH,QACA,CAACI,KAAKC,UAAAA;AACJ,QAAI,OAAOA,UAAU,YAAYA,UAAU,MAAM;AAE/C,UAAIJ,MAAMK,SAASD,KAAAA,GAAQ;AACzB,eAAO;MACT;AAGAJ,YAAMM,KAAKF,KAAAA;IACb;AACA,WAAOA;EACT,GACA,CAAA;AAEJ,GAlBoB;;;ACEpB,mBAA4B;AAkBrB,IAAMG,kBAAkB,wBAACC,QAAQ,MAAC;AACvC,MAAI;AACF,UAAM,IAAIC,MAAM,sBAAA;EAClB,SAASC,OAAO;AACd,eAAOC,0BAAYD,OAAO,CAACA,WAAAA;AAxB/B;AAyBM,UAAIE;AACJ,YAAMC,cAAaH,KAAAA,OAAMI,UAANJ,mBAAaK,MAAM,MAAMP,OAAOO,MAAM;AACzD,YAAMC,gBACJH,yCAAYI,KAAK,CAACC,MAAMC,UAAAA;AACtB,YAAID,KAAKE,SAAS,KAAKF,SAAS,MAAM;AAEpC,cAAIA,SAAS,OAAO;AAClBN,uBAAWO;UACb;AACA,iBAAOD;QACT;MACF,OAAM;AACR,aAAON,WAAW,GAAGI,YAAAA,IAAgBH,yCAAaD,WAAW,EAAE,KAAKI;IACtE,CAAA;EACF;AACF,GApB+B;;;ACfxB,IAAMK,YAAN,MAAMA,UAAAA;EACHC;EACAC;EAERC,YAAYC,QAAgBC,IAAmB;AAC7C,SAAKH,UAAUE;AACf,SAAKH,MAAMI;EACb;EAEA,IAAIA,GAAGA,IAAY;AACjB,SAAKJ,MAAM,MAAMI;EACnB;EAEAC,MAAMC,SAAmB;AAlB3B;AAmBI,eAAKL,YAAL,mBAAcI,MAAM,KAAKE,SAASD,SAASE,gBAAgB,CAAA,CAAA;EAC7D;EACAC,MAAMH,SAAmB;AArB3B;AAsBI,eAAKL,YAAL,mBAAcQ,MAAM,KAAKF,SAASD,SAASE,gBAAgB,CAAA,CAAA;EAC7D;EACAE,KAAKJ,SAAmB;AAxB1B;AAyBI,eAAKL,YAAL,mBAAcS,KAAK,KAAKH,SAASD,SAASE,gBAAgB,CAAA,CAAA;EAC5D;EACAG,IAAIL,SAAmB;AA3BzB;AA4BI,eAAKL,YAAL,mBAAcU,IAAI,KAAKJ,SAASD,SAASE,gBAAgB,CAAA,CAAA;EAC3D;EACAI,KAAKN,SAAmB;AA9B1B;AA+BI,eAAKL,YAAL,mBAAcW,KAAK,KAAKL,SAASD,SAASE,gBAAgB,CAAA,CAAA;EAC5D;EAEQD,SAASD,SAAmBO,KAAc;AAChD,WAAO,GAAGA,GAAAA,IAAO,KAAKb,MAAM,IAAI,KAAKA,GAAG,OAAO,EAAA,GAC7C,OAAOM,YAAY,WAAWA,UAC5B,OAAOA,YAAY,WAAWQ,KAAKC,UAAUT,SAASU,QAAW,CAAA,IACjE,GAAGV,OAAAA,EAAS;EAElB;AACF;AApCaP;AAAN,IAAMA,WAAN;;;ACLP,IAAMkB,OAAO;AAOb,IAAMC,WAAW,wBAACC,YAAsBA,WAAWA,QAAQC,oBAAoB,mBAAmBH,IAAAA,SAAaA,IAAAA,gBAAoB,IAAlH;AAEjB,IAAMI,KAAK;AAEX,IAAMC,YAAY;AAElB,IAAMC,KAAK;;KAEND,SAAAA,WAAoBA,SAAAA;KACpBA,SAAAA,WAAoBD,EAAAA,KAAOC,SAAAA;KAC3BA,SAAAA,YAAqBD,EAAAA,QAAUC,SAAAA;KAC/BA,SAAAA,eAAwBA,SAAAA,UAAmBD,EAAAA,QAAUC,SAAAA;KACrDA,SAAAA,eAAwBA,SAAAA,UAAmBD,EAAAA,QAAUC,SAAAA;KACrDA,SAAAA,eAAwBA,SAAAA,UAAmBD,EAAAA,QAAUC,SAAAA;KACrDA,SAAAA,eAAwBA,SAAAA,UAAmBD,EAAAA,QAAUC,SAAAA;aAC7CA,SAAAA,UAAmBD,EAAAA,QAAUC,SAAAA;;EAGvCE,WAAW,gBAAgB,EAAA,EAC3BA,WAAW,MAAM,EAAA,EACjBC,KAAI;AAGP,IAAMC,WAAW,IAAIC,OAAO,OAAON,EAAAA,UAAYE,EAAAA,IAAM;AACrD,IAAMK,UAAU,IAAID,OAAO,IAAIN,EAAAA,GAAK;AACpC,IAAMQ,UAAU,IAAIF,OAAO,IAAIJ,EAAAA,GAAK;AAE7B,IAAMO,UAAU,wBAACX,YACtBA,WAAWA,QAAQY,QACjBL,WACA,IAAIC,OAAO,MAAMT,SAASC,OAAAA,CAAAA,GAAWE,EAAAA,GAAKH,SAASC,OAAAA,CAAAA,QAAgBD,SAASC,OAAAA,CAAAA,GAAWI,EAAAA,GAAKL,SAASC,OAAAA,CAAAA,KAAa,GAAA,GAH/F;AAKvBW,QAAQT,KAAK,CAACF,YAAsBA,WAAWA,QAAQY,QAAQH,UAAU,IAAID,OAAO,GAAGT,SAASC,OAAAA,CAAAA,GAAWE,EAAAA,GAAKH,SAASC,OAAAA,CAAAA,IAAY,GAAA;AACrIW,QAAQP,KAAK,CAACJ,YAAsBA,WAAWA,QAAQY,QAAQF,UAAU,IAAIF,OAAO,GAAGT,SAASC,OAAAA,CAAAA,GAAWI,EAAAA,GAAKL,SAASC,OAAAA,CAAAA,IAAY,GAAA;;;ACtC9H,SAASa,KAAKC,OAAa;AAChC,SAAOC,QAAQ;IAAEC,OAAO;EAAK,CAAA,EAAGC,KAAKH,KAAAA;AACvC;AAFgBD;AAIT,SAASK,OAAOJ,OAAa;AAClC,SAAOC,QAAQI,GAAG;IAAEH,OAAO;EAAK,CAAA,EAAGC,KAAKH,KAAAA;AAC1C;AAFgBI;AAIT,SAASE,OAAON,OAAa;AAClC,SAAOC,QAAQM,GAAG;IAAEL,OAAO;EAAK,CAAA,EAAGC,KAAKH,KAAAA;AAC1C;AAFgBM;AAIT,SAASE,UAAUR,OAAa;AACrC,SACED,KAAKC,KAAAA,IACHI,OAAOJ,KAAAA,IAAS,IACd,IACFS;AAEN;AAPgBD;","names":["dump","object","cache","JSON","stringify","key","value","includes","push","getFunctionName","depth","Error","error","handleError","newIndex","stackParts","stack","split","functionName","find","item","index","length","IdLogger","_id","_logger","constructor","logger","id","debug","message","generate","getFunctionName","error","info","log","warn","tag","JSON","stringify","undefined","word","boundary","options","includeBoundaries","v4","v6segment","v6","replaceAll","trim","v46Exact","RegExp","v4exact","v6exact","ipRegex","exact","isIP","value","ipRegex","exact","test","isIPv6","v6","isIPv4","v4","ipVersion","undefined"]}
|
package/dist/node/index.js
CHANGED
|
@@ -78,7 +78,7 @@ var IdLogger = _IdLogger;
|
|
|
78
78
|
|
|
79
79
|
// src/is-ip/ip-regex.ts
|
|
80
80
|
var word = "[a-fA-F\\d:]";
|
|
81
|
-
var
|
|
81
|
+
var boundary = /* @__PURE__ */ __name((options) => options && options.includeBoundaries ? `(?:(?<=\\s|^)(?=${word})|(?<=${word})(?=\\s|$))` : "", "boundary");
|
|
82
82
|
var v4 = "(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}";
|
|
83
83
|
var v6segment = "[a-fA-F\\d]{1,4}";
|
|
84
84
|
var v6 = `
|
|
@@ -96,9 +96,9 @@ var v6 = `
|
|
|
96
96
|
var v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`);
|
|
97
97
|
var v4exact = new RegExp(`^${v4}$`);
|
|
98
98
|
var v6exact = new RegExp(`^${v6}$`);
|
|
99
|
-
var ipRegex = /* @__PURE__ */ __name((options) => options && options.exact ? v46Exact : new RegExp(`(?:${
|
|
100
|
-
ipRegex.v4 = (options) => options && options.exact ? v4exact : new RegExp(`${
|
|
101
|
-
ipRegex.v6 = (options) => options && options.exact ? v6exact : new RegExp(`${
|
|
99
|
+
var ipRegex = /* @__PURE__ */ __name((options) => options && options.exact ? v46Exact : new RegExp(`(?:${boundary(options)}${v4}${boundary(options)})|(?:${boundary(options)}${v6}${boundary(options)})`, "g"), "ipRegex");
|
|
100
|
+
ipRegex.v4 = (options) => options && options.exact ? v4exact : new RegExp(`${boundary(options)}${v4}${boundary(options)}`, "g");
|
|
101
|
+
ipRegex.v6 = (options) => options && options.exact ? v6exact : new RegExp(`${boundary(options)}${v6}${boundary(options)}`, "g");
|
|
102
102
|
|
|
103
103
|
// src/is-ip/is-ip.ts
|
|
104
104
|
function isIP(value) {
|
package/dist/node/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/dump.ts","../../src/Logger.ts","../../src/IdLogger.ts","../../src/is-ip/ip-regex.ts","../../src/is-ip/is-ip.ts"],"sourcesContent":["export const dump = (object: unknown) => {\n const cache: unknown[] = []\n return JSON.stringify(\n object,\n (key, value) => {\n if (typeof value === 'object' && value !== null) {\n // Duplicate reference found, discard key\n if (cache.includes(value)) {\n return '[circular]'\n }\n\n // Store value in our collection\n cache.push(value)\n }\n return value\n },\n 2,\n )\n}\n","/** @deprecated use from @xylabs/logger instead */\nexport type LogFunction = (message?: unknown) => void\nimport { handleError } from '@xylabs/error'\n\n/**\n * Interface to handle overlap between Winston &\n * `console` with as much congruency as possible.\n */\n\n/** @deprecated use from @xylabs/logger instead */\nexport interface Logger {\n debug: LogFunction\n error: LogFunction\n info: LogFunction\n log: LogFunction\n // trace: LogFunction\n warn: LogFunction\n}\n\n/** @deprecated use from @xylabs/logger instead */\nexport const getFunctionName = (depth = 2) => {\n try {\n throw new Error('Just for Stack Trace')\n } catch (error) {\n return handleError(error, (error) => {\n let newIndex: number | undefined\n const stackParts = error.stack?.split('\\n')[depth].split(' ')\n const functionName =\n stackParts?.find((item, index) => {\n if (item.length > 0 && item !== 'at') {\n //check if constructor\n if (item === 'new') {\n newIndex = index\n }\n return item\n }\n }) ?? '<unknown>'\n return newIndex ? `${functionName} ${stackParts?.[newIndex + 1]}` : functionName\n })\n }\n}\n","/* eslint-disable import/no-deprecated */\n// eslint-disable-next-line import/no-deprecated\nimport { getFunctionName, Logger } from './Logger'\n\n/** @deprecated use from @xylabs/logger instead */\nexport class IdLogger implements Logger {\n private _id?: () => string\n private _logger: Logger\n\n constructor(logger: Logger, id?: () => string) {\n this._logger = logger\n this._id = id\n }\n\n set id(id: string) {\n this._id = () => id\n }\n\n debug(message?: unknown) {\n this._logger?.debug(this.generate(message, getFunctionName(3)))\n }\n error(message?: unknown) {\n this._logger?.error(this.generate(message, getFunctionName(3)))\n }\n info(message?: unknown) {\n this._logger?.info(this.generate(message, getFunctionName(3)))\n }\n log(message?: unknown) {\n this._logger?.log(this.generate(message, getFunctionName(3)))\n }\n warn(message?: unknown) {\n this._logger?.warn(this.generate(message, getFunctionName(3)))\n }\n\n private generate(message?: unknown, tag?: string) {\n return `${tag} ${this._id ? `[${this._id}] ` : ''}${\n typeof message === 'string' ? message
|
|
1
|
+
{"version":3,"sources":["../../src/dump.ts","../../src/Logger.ts","../../src/IdLogger.ts","../../src/is-ip/ip-regex.ts","../../src/is-ip/is-ip.ts"],"sourcesContent":["export const dump = (object: unknown) => {\n const cache: unknown[] = []\n return JSON.stringify(\n object,\n (key, value) => {\n if (typeof value === 'object' && value !== null) {\n // Duplicate reference found, discard key\n if (cache.includes(value)) {\n return '[circular]'\n }\n\n // Store value in our collection\n cache.push(value)\n }\n return value\n },\n 2,\n )\n}\n","/** @deprecated use from @xylabs/logger instead */\nexport type LogFunction = (message?: unknown) => void\nimport { handleError } from '@xylabs/error'\n\n/**\n * Interface to handle overlap between Winston &\n * `console` with as much congruency as possible.\n */\n\n/** @deprecated use from @xylabs/logger instead */\nexport interface Logger {\n debug: LogFunction\n error: LogFunction\n info: LogFunction\n log: LogFunction\n // trace: LogFunction\n warn: LogFunction\n}\n\n/** @deprecated use from @xylabs/logger instead */\nexport const getFunctionName = (depth = 2) => {\n try {\n throw new Error('Just for Stack Trace')\n } catch (error) {\n return handleError(error, (error) => {\n let newIndex: number | undefined\n const stackParts = error.stack?.split('\\n')[depth].split(' ')\n const functionName =\n stackParts?.find((item, index) => {\n if (item.length > 0 && item !== 'at') {\n //check if constructor\n if (item === 'new') {\n newIndex = index\n }\n return item\n }\n }) ?? '<unknown>'\n return newIndex ? `${functionName} ${stackParts?.[newIndex + 1]}` : functionName\n })\n }\n}\n","/* eslint-disable import/no-deprecated */\n// eslint-disable-next-line import/no-deprecated\nimport { getFunctionName, Logger } from './Logger'\n\n/** @deprecated use from @xylabs/logger instead */\nexport class IdLogger implements Logger {\n private _id?: () => string\n private _logger: Logger\n\n constructor(logger: Logger, id?: () => string) {\n this._logger = logger\n this._id = id\n }\n\n set id(id: string) {\n this._id = () => id\n }\n\n debug(message?: unknown) {\n this._logger?.debug(this.generate(message, getFunctionName(3)))\n }\n error(message?: unknown) {\n this._logger?.error(this.generate(message, getFunctionName(3)))\n }\n info(message?: unknown) {\n this._logger?.info(this.generate(message, getFunctionName(3)))\n }\n log(message?: unknown) {\n this._logger?.log(this.generate(message, getFunctionName(3)))\n }\n warn(message?: unknown) {\n this._logger?.warn(this.generate(message, getFunctionName(3)))\n }\n\n private generate(message?: unknown, tag?: string) {\n return `${tag} ${this._id ? `[${this._id}] ` : ''}${\n typeof message === 'string' ? message\n : typeof message === 'object' ? JSON.stringify(message, undefined, 2)\n : `${message}`\n }`\n }\n}\n","const word = '[a-fA-F\\\\d:]'\n\nexport interface Options {\n readonly exact?: boolean\n readonly includeBoundaries?: boolean\n}\n\nconst boundary = (options: Options) => (options && options.includeBoundaries ? `(?:(?<=\\\\s|^)(?=${word})|(?<=${word})(?=\\\\s|$))` : '')\n\nconst v4 = '(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}'\n\nconst v6segment = '[a-fA-F\\\\d]{1,4}'\n\nconst v6 = `\n(?:\n(?:${v6segment}:){7}(?:${v6segment}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${v6segment}:){6}(?:${v4}|:${v6segment}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${v6segment}:){5}(?::${v4}|(?::${v6segment}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${v6segment}:){4}(?:(?::${v6segment}){0,1}:${v4}|(?::${v6segment}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${v6segment}:){3}(?:(?::${v6segment}){0,2}:${v4}|(?::${v6segment}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${v6segment}:){2}(?:(?::${v6segment}){0,3}:${v4}|(?::${v6segment}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${v6segment}:){1}(?:(?::${v6segment}){0,4}:${v4}|(?::${v6segment}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${v6segment}){0,5}:${v4}|(?::${v6segment}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`\n .replaceAll(/\\s*\\/\\/.*$/gm, '')\n .replaceAll('\\n', '')\n .trim()\n\n// Pre-compile only the exact regexes because adding a global flag make regexes stateful\nconst v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`)\nconst v4exact = new RegExp(`^${v4}$`)\nconst v6exact = new RegExp(`^${v6}$`)\n\nexport const ipRegex = (options: Options) =>\n options && options.exact ?\n v46Exact\n : new RegExp(`(?:${boundary(options)}${v4}${boundary(options)})|(?:${boundary(options)}${v6}${boundary(options)})`, 'g')\n\nipRegex.v4 = (options: Options) => (options && options.exact ? v4exact : new RegExp(`${boundary(options)}${v4}${boundary(options)}`, 'g'))\nipRegex.v6 = (options: Options) => (options && options.exact ? v6exact : new RegExp(`${boundary(options)}${v6}${boundary(options)}`, 'g'))\n","import { ipRegex } from './ip-regex'\n\nexport function isIP(value: string) {\n return ipRegex({ exact: true }).test(value)\n}\n\nexport function isIPv6(value: string) {\n return ipRegex.v6({ exact: true }).test(value)\n}\n\nexport function isIPv4(value: string) {\n return ipRegex.v4({ exact: true }).test(value)\n}\n\nexport function ipVersion(value: string) {\n return (\n isIP(value) ?\n isIPv6(value) ? 6\n : 4\n : undefined\n )\n}\n"],"mappings":"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","names":["dump","object","cache","JSON","stringify","key","value","includes","push","handleError","getFunctionName","depth","Error","error","handleError","newIndex","stackParts","stack","split","functionName","find","item","index","length","IdLogger","_id","_logger","constructor","logger","id","debug","message","generate","getFunctionName","error","info","log","warn","tag","JSON","stringify","undefined","word","boundary","options","includeBoundaries","v4","v6segment","v6","replaceAll","trim","v46Exact","RegExp","v4exact","v6exact","ipRegex","exact","isIP","value","ipRegex","exact","test","isIPv6","v6","isIPv4","v4","ipVersion","undefined"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;
|
|
1
|
+
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;CAH4F,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;
|
|
1
|
+
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;CAH4F,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;
|
|
1
|
+
{"version":3,"file":"ip-regex.d.ts","sourceRoot":"","sources":["../../../src/is-ip/ip-regex.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AA6BD,eAAO,MAAM,OAAO;cAAa,OAAO;gBAKjB,OAAO;gBACP,OAAO;CAH4F,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,qBAOtC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,qBAOtC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"is-ip.d.ts","sourceRoot":"","sources":["../../../src/is-ip/is-ip.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,WAEjC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,WAEnC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,qBAOtC"}
|
package/package.json
CHANGED
|
@@ -11,11 +11,11 @@
|
|
|
11
11
|
},
|
|
12
12
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@xylabs/error": "^
|
|
14
|
+
"@xylabs/error": "^3.0.2"
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
|
-
"@xylabs/ts-scripts-yarn3": "^3.
|
|
18
|
-
"@xylabs/tsconfig": "^3.
|
|
17
|
+
"@xylabs/ts-scripts-yarn3": "^3.4.1",
|
|
18
|
+
"@xylabs/tsconfig": "^3.4.1",
|
|
19
19
|
"typescript": "^5.3.3"
|
|
20
20
|
},
|
|
21
21
|
"exports": {
|
|
@@ -56,6 +56,6 @@
|
|
|
56
56
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
|
|
57
57
|
},
|
|
58
58
|
"sideEffects": false,
|
|
59
|
-
"version": "2.
|
|
59
|
+
"version": "2.91.1",
|
|
60
60
|
"type": "module"
|
|
61
61
|
}
|
package/src/IdLogger.ts
CHANGED
|
@@ -34,7 +34,9 @@ export class IdLogger implements Logger {
|
|
|
34
34
|
|
|
35
35
|
private generate(message?: unknown, tag?: string) {
|
|
36
36
|
return `${tag} ${this._id ? `[${this._id}] ` : ''}${
|
|
37
|
-
typeof message === 'string' ? message
|
|
37
|
+
typeof message === 'string' ? message
|
|
38
|
+
: typeof message === 'object' ? JSON.stringify(message, undefined, 2)
|
|
39
|
+
: `${message}`
|
|
38
40
|
}`
|
|
39
41
|
}
|
|
40
42
|
}
|
package/src/is-ip/ip-regex.ts
CHANGED
|
@@ -5,7 +5,7 @@ export interface Options {
|
|
|
5
5
|
readonly includeBoundaries?: boolean
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
const
|
|
8
|
+
const boundary = (options: Options) => (options && options.includeBoundaries ? `(?:(?<=\\s|^)(?=${word})|(?<=${word})(?=\\s|$))` : '')
|
|
9
9
|
|
|
10
10
|
const v4 = '(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}'
|
|
11
11
|
|
|
@@ -33,9 +33,9 @@ const v4exact = new RegExp(`^${v4}$`)
|
|
|
33
33
|
const v6exact = new RegExp(`^${v6}$`)
|
|
34
34
|
|
|
35
35
|
export const ipRegex = (options: Options) =>
|
|
36
|
-
options && options.exact
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
options && options.exact ?
|
|
37
|
+
v46Exact
|
|
38
|
+
: new RegExp(`(?:${boundary(options)}${v4}${boundary(options)})|(?:${boundary(options)}${v6}${boundary(options)})`, 'g')
|
|
39
39
|
|
|
40
|
-
ipRegex.v4 = (options: Options) => (options && options.exact ? v4exact : new RegExp(`${
|
|
41
|
-
ipRegex.v6 = (options: Options) => (options && options.exact ? v6exact : new RegExp(`${
|
|
40
|
+
ipRegex.v4 = (options: Options) => (options && options.exact ? v4exact : new RegExp(`${boundary(options)}${v4}${boundary(options)}`, 'g'))
|
|
41
|
+
ipRegex.v6 = (options: Options) => (options && options.exact ? v6exact : new RegExp(`${boundary(options)}${v6}${boundary(options)}`, 'g'))
|
package/src/is-ip/is-ip.ts
CHANGED