@sdkwork/sdk-common 1.0.0
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/README.md +89 -0
- package/dist/auth/index.d.ts +3 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/token-manager.cjs +127 -0
- package/dist/auth/token-manager.cjs.map +1 -0
- package/dist/auth/token-manager.d.ts +80 -0
- package/dist/auth/token-manager.d.ts.map +1 -0
- package/dist/auth/token-manager.js +127 -0
- package/dist/auth/token-manager.js.map +1 -0
- package/dist/auth.cjs +9 -0
- package/dist/auth.cjs.map +1 -0
- package/dist/auth.js +9 -0
- package/dist/auth.js.map +1 -0
- package/dist/core/index.d.ts +3 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/types.cjs +54 -0
- package/dist/core/types.cjs.map +1 -0
- package/dist/core/types.d.ts +187 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +54 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core.cjs +11 -0
- package/dist/core.cjs.map +1 -0
- package/dist/core.js +11 -0
- package/dist/core.js.map +1 -0
- package/dist/errors/index.d.ts +103 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors.cjs +286 -0
- package/dist/errors.cjs.map +1 -0
- package/dist/errors.js +286 -0
- package/dist/errors.js.map +1 -0
- package/dist/http/base-client.cjs +485 -0
- package/dist/http/base-client.cjs.map +1 -0
- package/dist/http/base-client.d.ts +98 -0
- package/dist/http/base-client.d.ts.map +1 -0
- package/dist/http/base-client.js +485 -0
- package/dist/http/base-client.js.map +1 -0
- package/dist/http/index.d.ts +2 -0
- package/dist/http/index.d.ts.map +1 -0
- package/dist/http.cjs +6 -0
- package/dist/http.cjs.map +1 -0
- package/dist/http.js +6 -0
- package/dist/http.js.map +1 -0
- package/dist/index.cjs +48 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +48 -0
- package/dist/index.js.map +1 -0
- package/dist/utils/array.d.ts +146 -0
- package/dist/utils/array.d.ts.map +1 -0
- package/dist/utils/cache.cjs +80 -0
- package/dist/utils/cache.cjs.map +1 -0
- package/dist/utils/cache.d.ts +25 -0
- package/dist/utils/cache.d.ts.map +1 -0
- package/dist/utils/cache.js +80 -0
- package/dist/utils/cache.js.map +1 -0
- package/dist/utils/date.cjs +25 -0
- package/dist/utils/date.cjs.map +1 -0
- package/dist/utils/date.d.ts +127 -0
- package/dist/utils/date.d.ts.map +1 -0
- package/dist/utils/date.js +25 -0
- package/dist/utils/date.js.map +1 -0
- package/dist/utils/encoding.cjs +678 -0
- package/dist/utils/encoding.cjs.map +1 -0
- package/dist/utils/encoding.d.ts +107 -0
- package/dist/utils/encoding.d.ts.map +1 -0
- package/dist/utils/encoding.js +679 -0
- package/dist/utils/encoding.js.map +1 -0
- package/dist/utils/index.d.ts +11 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/logger.cjs +110 -0
- package/dist/utils/logger.cjs.map +1 -0
- package/dist/utils/logger.d.ts +28 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +110 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/object.d.ts +131 -0
- package/dist/utils/object.d.ts.map +1 -0
- package/dist/utils/retry.cjs +73 -0
- package/dist/utils/retry.cjs.map +1 -0
- package/dist/utils/retry.d.ts +9 -0
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/retry.js +73 -0
- package/dist/utils/retry.js.map +1 -0
- package/dist/utils/string.cjs +820 -0
- package/dist/utils/string.cjs.map +1 -0
- package/dist/utils/string.d.ts +160 -0
- package/dist/utils/string.d.ts.map +1 -0
- package/dist/utils/string.js +821 -0
- package/dist/utils/string.js.map +1 -0
- package/dist/utils/url.d.ts +106 -0
- package/dist/utils/url.d.ts.map +1 -0
- package/dist/utils/validation.d.ts +157 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils.cjs +52 -0
- package/dist/utils.cjs.map +1 -0
- package/dist/utils.js +46 -0
- package/dist/utils.js.map +1 -0
- package/package.json +80 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encoding.js","sources":["../../src/utils/encoding.ts"],"sourcesContent":["export namespace Encoding {\n export function base64Encode(input: string | Uint8Array): string {\n let bytes: Uint8Array;\n if (typeof input === 'string') {\n bytes = new TextEncoder().encode(input);\n } else {\n bytes = input;\n }\n \n const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n let result = '';\n let i = 0;\n \n while (i < bytes.length) {\n const a = bytes[i++] ?? 0;\n const b = i < bytes.length ? (bytes[i++] ?? 0) : 0;\n const c = i < bytes.length ? (bytes[i++] ?? 0) : 0;\n \n const bitmap = (a << 16) | (b << 8) | c;\n \n result += chars[(bitmap >> 18) & 63];\n result += chars[(bitmap >> 12) & 63];\n result += i > bytes.length + 1 ? '=' : chars[(bitmap >> 6) & 63];\n result += i > bytes.length ? '=' : chars[bitmap & 63];\n }\n \n return result;\n }\n\n export function base64Decode(input: string): string {\n const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n input = input.replace(/[^A-Za-z0-9+/]/g, '');\n \n const len = input.length;\n let result = '';\n let i = 0;\n \n while (i < len) {\n const a = chars.indexOf(input[i++] ?? '');\n const b = chars.indexOf(input[i++] ?? '');\n const c = chars.indexOf(input[i++] ?? '');\n const d = chars.indexOf(input[i++] ?? '');\n \n const bitmap = (a << 18) | (b << 12) | (c << 6) | d;\n \n result += String.fromCharCode((bitmap >> 16) & 255);\n if (c !== 64 && input[i - 2] !== '=') {\n result += String.fromCharCode((bitmap >> 8) & 255);\n }\n if (d !== 64 && input[i - 1] !== '=') {\n result += String.fromCharCode(bitmap & 255);\n }\n }\n \n return result;\n }\n\n export function base64UrlEncode(input: string | Uint8Array): string {\n return base64Encode(input)\n .replace(/\\+/g, '-')\n .replace(/\\//g, '_')\n .replace(/=/g, '');\n }\n\n export function base64UrlDecode(input: string): string {\n input = input.replace(/-/g, '+').replace(/_/g, '/');\n const pad = input.length % 4;\n if (pad) {\n input += '='.repeat(4 - pad);\n }\n return base64Decode(input);\n }\n\n export function base64ToBytes(base64: string): Uint8Array {\n const binary = atob(base64);\n const bytes = new Uint8Array(binary.length);\n for (let i = 0; i < binary.length; i++) {\n bytes[i] = binary.charCodeAt(i);\n }\n return bytes;\n }\n\n export function bytesToBase64(bytes: Uint8Array): string {\n let binary = '';\n for (let i = 0; i < bytes.length; i++) {\n binary += String.fromCharCode(bytes[i] ?? 0);\n }\n return btoa(binary);\n }\n\n export function utf8Encode(input: string): Uint8Array {\n return new TextEncoder().encode(input);\n }\n\n export function utf8Decode(input: Uint8Array): string {\n return new TextDecoder().decode(input);\n }\n\n export function hexEncode(input: string | Uint8Array): string {\n const bytes = typeof input === 'string' ? utf8Encode(input) : input;\n return Array.from(bytes)\n .map(byte => byte.toString(16).padStart(2, '0'))\n .join('');\n }\n\n export function hexDecode(input: string): string {\n const bytes = new Uint8Array(input.length / 2);\n for (let i = 0; i < input.length; i += 2) {\n bytes[i / 2] = parseInt(input.substr(i, 2), 16);\n }\n return utf8Decode(bytes);\n }\n\n export function hexToBytes(hex: string): Uint8Array {\n const bytes = new Uint8Array(hex.length / 2);\n for (let i = 0; i < hex.length; i += 2) {\n bytes[i / 2] = parseInt(hex.substr(i, 2), 16);\n }\n return bytes;\n }\n\n export function bytesToHex(bytes: Uint8Array): string {\n return Array.from(bytes)\n .map(byte => byte.toString(16).padStart(2, '0'))\n .join('');\n }\n\n export function urlEncode(input: string): string {\n return encodeURIComponent(input);\n }\n\n export function urlDecode(input: string): string {\n return decodeURIComponent(input);\n }\n\n export function urlEncodeComponent(input: string): string {\n return encodeURIComponent(input);\n }\n\n export function urlDecodeComponent(input: string): string {\n return decodeURIComponent(input);\n }\n\n export function htmlEncode(input: string): string {\n const htmlEntities: Record<string, string> = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/',\n '`': '`',\n '=': '='\n };\n \n return input.replace(/[&<>\"'`=/]/g, char => htmlEntities[char] || char);\n }\n\n export function htmlDecode(input: string): string {\n const htmlEntities: Record<string, string> = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\",\n ''': \"'\",\n '/': '/',\n '`': '`',\n '=': '=',\n ' ': ' '\n };\n \n return input.replace(/&[^;]+;/g, entity => htmlEntities[entity] || entity);\n }\n\n export function jsonEncode<T>(value: T, replacer?: (key: string, value: unknown) => unknown, space?: string | number): string {\n return JSON.stringify(value, replacer as (key: string, value: unknown) => unknown, space);\n }\n\n export function jsonDecode<T = unknown>(input: string): T {\n return JSON.parse(input) as T;\n }\n\n export function jsonEncodePretty<T>(value: T, indent: number = 2): string {\n return JSON.stringify(value, null, indent);\n }\n\n export function tryJsonDecode<T = unknown>(input: string, defaultValue: T): T {\n try {\n return JSON.parse(input) as T;\n } catch {\n return defaultValue;\n }\n }\n\n export function isJson(input: string): boolean {\n try {\n JSON.parse(input);\n return true;\n } catch {\n return false;\n }\n }\n\n export function xmlEncode(input: string): string {\n const xmlEntities: Record<string, string> = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n };\n \n return input.replace(/[&<>\"']/g, char => xmlEntities[char] || char);\n }\n\n export function xmlDecode(input: string): string {\n const xmlEntities: Record<string, string> = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\"\n };\n \n return input.replace(/&[^;]+;/g, entity => xmlEntities[entity] || entity);\n }\n\n export function escapeRegex(input: string): string {\n return input.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\n }\n\n export function escapeSql(input: string): string {\n return input.replace(/[\\0\\x08\\x09\\x1a\\n\\r\"'\\\\\\%]/g, char => {\n const sqlEscapes: Record<string, string> = {\n '\\0': '\\\\0',\n '\\x08': '\\\\b',\n '\\x09': '\\\\t',\n '\\x1a': '\\\\z',\n '\\n': '\\\\n',\n '\\r': '\\\\r',\n '\"': '\\\\\"',\n \"'\": \"\\\\'\",\n '\\\\': '\\\\\\\\',\n '%': '\\\\%'\n };\n return sqlEscapes[char] || char;\n });\n }\n\n export function escapeShell(input: string): string {\n return input.replace(/[^A-Za-z0-9_\\-.,:\\/@\\n]/g, char => {\n if (char === '\\n') {\n return \"'\\\\n'\";\n }\n return `\\\\${char}`;\n });\n }\n\n export function escapeCString(input: string): string {\n return input.replace(/[\\\\\"'\\n\\r\\t\\b\\f\\v\\0]/g, char => {\n const cEscapes: Record<string, string> = {\n '\\\\': '\\\\\\\\',\n '\"': '\\\\\"',\n \"'\": \"\\\\'\",\n '\\n': '\\\\n',\n '\\r': '\\\\r',\n '\\t': '\\\\t',\n '\\b': '\\\\b',\n '\\f': '\\\\f',\n '\\v': '\\\\v',\n '\\0': '\\\\0'\n };\n return cEscapes[char] || char;\n });\n }\n\n export function unescapeCString(input: string): string {\n return input.replace(/\\\\([\\\\\\\"'nrtbfv0])/g, (_, char) => {\n const cUnescapes: Record<string, string> = {\n '\\\\': '\\\\',\n '\"': '\"',\n \"'\": \"'\",\n 'n': '\\n',\n 'r': '\\r',\n 't': '\\t',\n 'b': '\\b',\n 'f': '\\f',\n 'v': '\\v',\n '0': '\\0'\n };\n return cUnescapes[char] || char;\n });\n }\n\n export function camelToSnake(input: string): string {\n return input.replace(/[A-Z]/g, letter => `_${letter.toLowerCase()}`);\n }\n\n export function snakeToCamel(input: string): string {\n return input.replace(/_([a-z])/g, (_, letter) => letter.toUpperCase());\n }\n\n export function camelToKebab(input: string): string {\n return input.replace(/[A-Z]/g, letter => `-${letter.toLowerCase()}`);\n }\n\n export function kebabToCamel(input: string): string {\n return input.replace(/-([a-z])/g, (_, letter) => letter.toUpperCase());\n }\n\n export function camelToPascal(input: string): string {\n return input.charAt(0).toUpperCase() + input.slice(1);\n }\n\n export function pascalToCamel(input: string): string {\n return input.charAt(0).toLowerCase() + input.slice(1);\n }\n\n export function pascalToSnake(input: string): string {\n return camelToSnake(input);\n }\n\n export function snakeToPascal(input: string): string {\n return camelToPascal(snakeToCamel(input));\n }\n\n export function pascalToKebab(input: string): string {\n return camelToKebab(input);\n }\n\n export function kebabToPascal(input: string): string {\n return camelToPascal(kebabToCamel(input));\n }\n\n export function toSnakeCase(input: string): string {\n return input\n .replace(/([a-z])([A-Z])/g, '$1_$2')\n .replace(/[-\\s]+/g, '_')\n .toLowerCase();\n }\n\n export function toKebabCase(input: string): string {\n return input\n .replace(/([a-z])([A-Z])/g, '$1-$2')\n .replace(/[_\\s]+/g, '-')\n .toLowerCase();\n }\n\n export function toCamelCase(input: string): string {\n return input\n .replace(/[-_\\s]+(.)?/g, (_, char) => (char ? char.toUpperCase() : ''))\n .replace(/^(.)/, char => char.toLowerCase());\n }\n\n export function toPascalCase(input: string): string {\n const camel = toCamelCase(input);\n return camel.charAt(0).toUpperCase() + camel.slice(1);\n }\n\n export function toConstantCase(input: string): string {\n return toSnakeCase(input).toUpperCase();\n }\n\n export function toSentenceCase(input: string): string {\n return input.charAt(0).toUpperCase() + input.slice(1).toLowerCase();\n }\n\n export function toTitleCase(input: string): string {\n return input.replace(/\\b\\w/g, char => char.toUpperCase());\n }\n\n export function toCapitalCase(input: string): string {\n return input.replace(/[-_\\s]+(.)?/g, (_, char) => (char ? ` ${char.toUpperCase()}` : '')).trim();\n }\n\n export function toDotCase(input: string): string {\n return input\n .replace(/([a-z])([A-Z])/g, '$1.$2')\n .replace(/[-_\\s]+/g, '.')\n .toLowerCase();\n }\n\n export function toPathCase(input: string): string {\n return input\n .replace(/([a-z])([A-Z])/g, '$1/$2')\n .replace(/[-_\\s]+/g, '/')\n .toLowerCase();\n }\n\n export function rot13(input: string): string {\n return input.replace(/[a-zA-Z]/g, char => {\n const start = char <= 'Z' ? 65 : 97;\n return String.fromCharCode(((char.charCodeAt(0) - start + 13) % 26) + start);\n });\n }\n\n export function caesarCipher(input: string, shift: number): string {\n return input.replace(/[a-zA-Z]/g, char => {\n const start = char <= 'Z' ? 65 : 97;\n const shifted = ((char.charCodeAt(0) - start + shift) % 26 + 26) % 26;\n return String.fromCharCode(shifted + start);\n });\n }\n\n export function caesarDecipher(input: string, shift: number): string {\n return caesarCipher(input, -shift);\n }\n\n export function xorEncode(input: string, key: string): string {\n const inputBytes = utf8Encode(input);\n const keyBytes = utf8Encode(key);\n const result = new Uint8Array(inputBytes.length);\n \n for (let i = 0; i < inputBytes.length; i++) {\n result[i] = (inputBytes[i] ?? 0) ^ (keyBytes[i % keyBytes.length] ?? 0);\n }\n \n return bytesToHex(result);\n }\n\n export function xorDecode(input: string, key: string): string {\n const inputBytes = hexToBytes(input);\n const keyBytes = utf8Encode(key);\n const result = new Uint8Array(inputBytes.length);\n \n for (let i = 0; i < inputBytes.length; i++) {\n result[i] = (inputBytes[i] ?? 0) ^ (keyBytes[i % keyBytes.length] ?? 0);\n }\n \n return utf8Decode(result);\n }\n\n export function charCodeEncode(input: string): number[] {\n return Array.from(input).map(char => char.charCodeAt(0));\n }\n\n export function charCodeDecode(codes: number[]): string {\n return String.fromCharCode(...codes);\n }\n\n export function binaryEncode(input: string): string {\n return Array.from(input)\n .map(char => char.charCodeAt(0).toString(2).padStart(8, '0'))\n .join(' ');\n }\n\n export function binaryDecode(input: string): string {\n return input\n .split(/\\s+/)\n .map(byte => String.fromCharCode(parseInt(byte, 2)))\n .join('');\n }\n\n export function octalEncode(input: string): string {\n return Array.from(input)\n .map(char => char.charCodeAt(0).toString(8).padStart(3, '0'))\n .join(' ');\n }\n\n export function octalDecode(input: string): string {\n return input\n .split(/\\s+/)\n .map(byte => String.fromCharCode(parseInt(byte, 8)))\n .join('');\n }\n\n export function decimalEncode(input: string): string {\n return Array.from(input)\n .map(char => char.charCodeAt(0).toString(10))\n .join(' ');\n }\n\n export function decimalDecode(input: string): string {\n return input\n .split(/\\s+/)\n .map(code => String.fromCharCode(parseInt(code, 10)))\n .join('');\n }\n\n export function punycodeEncode(input: string): string {\n const prefix = 'xn--';\n if (input.startsWith(prefix)) {\n return input;\n }\n \n const asciiPart = input.replace(/[^\\x00-\\x7F]/g, '');\n const nonAsciiPart = input.replace(/[\\x00-\\x7F]/g, '');\n \n if (!nonAsciiPart) {\n return input;\n }\n \n return prefix + asciiPart + '-' + nonAsciiPart.split('').map(c => c.charCodeAt(0).toString(36)).join('');\n }\n\n export function slugify(input: string): string {\n return input\n .toLowerCase()\n .trim()\n .replace(/[^\\w\\s-]/g, '')\n .replace(/[\\s_-]+/g, '-')\n .replace(/^-+|-+$/g, '');\n }\n\n export function unslugify(input: string): string {\n return input\n .replace(/-/g, ' ')\n .replace(/\\b\\w/g, char => char.toUpperCase());\n }\n\n export function queryStringEncode(params: Record<string, unknown>): string {\n return Object.entries(params)\n .filter(([, value]) => value !== undefined && value !== null)\n .map(([key, value]) => {\n if (Array.isArray(value)) {\n return value.map(v => `${urlEncode(key)}=${urlEncode(String(v))}`).join('&');\n }\n return `${urlEncode(key)}=${urlEncode(String(value))}`;\n })\n .join('&');\n }\n\n export function queryStringDecode(query: string): Record<string, string | string[]> {\n const result: Record<string, string | string[]> = {};\n \n if (!query) {\n return result;\n }\n \n query = query.replace(/^[?#]/, '');\n \n for (const pair of query.split('&')) {\n const parts = pair.split('=');\n const key = parts[0];\n const value = parts[1];\n if (!key) continue;\n const decodedKey = urlDecode(key);\n const decodedValue = value ? urlDecode(value) : '';\n \n if (result[decodedKey]) {\n if (Array.isArray(result[decodedKey])) {\n (result[decodedKey] as string[]).push(decodedValue);\n } else {\n result[decodedKey] = [result[decodedKey] as string, decodedValue];\n }\n } else {\n result[decodedKey] = decodedValue;\n }\n }\n \n return result;\n }\n\n export function formDataEncode(data: Record<string, unknown>): string {\n return Object.entries(data)\n .filter(([, value]) => value !== undefined && value !== null)\n .map(([key, value]) => `${urlEncode(key)}=${urlEncode(String(value))}`)\n .join('&');\n }\n\n export function mimeTypeToExtension(mimeType: string): string {\n const mimeMap: Record<string, string> = {\n 'application/json': 'json',\n 'application/xml': 'xml',\n 'application/pdf': 'pdf',\n 'application/zip': 'zip',\n 'application/gzip': 'gz',\n 'application/x-tar': 'tar',\n 'application/x-rar-compressed': 'rar',\n 'application/x-7z-compressed': '7z',\n 'application/vnd.ms-excel': 'xls',\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': 'xlsx',\n 'application/vnd.ms-powerpoint': 'ppt',\n 'application/vnd.openxmlformats-officedocument.presentationml.presentation': 'pptx',\n 'application/msword': 'doc',\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': 'docx',\n 'text/plain': 'txt',\n 'text/html': 'html',\n 'text/css': 'css',\n 'text/javascript': 'js',\n 'text/csv': 'csv',\n 'text/xml': 'xml',\n 'image/jpeg': 'jpg',\n 'image/png': 'png',\n 'image/gif': 'gif',\n 'image/svg+xml': 'svg',\n 'image/webp': 'webp',\n 'image/bmp': 'bmp',\n 'image/tiff': 'tiff',\n 'image/x-icon': 'ico',\n 'audio/mpeg': 'mp3',\n 'audio/wav': 'wav',\n 'audio/ogg': 'ogg',\n 'audio/aac': 'aac',\n 'video/mp4': 'mp4',\n 'video/mpeg': 'mpeg',\n 'video/webm': 'webm',\n 'video/ogg': 'ogv',\n 'video/x-msvideo': 'avi',\n 'video/quicktime': 'mov'\n };\n \n return mimeMap[mimeType.toLowerCase()] || '';\n }\n\n export function extensionToMimeType(extension: string): string {\n const extMap: Record<string, string> = {\n 'json': 'application/json',\n 'xml': 'application/xml',\n 'pdf': 'application/pdf',\n 'zip': 'application/zip',\n 'gz': 'application/gzip',\n 'tar': 'application/x-tar',\n 'rar': 'application/x-rar-compressed',\n '7z': 'application/x-7z-compressed',\n 'xls': 'application/vnd.ms-excel',\n 'xlsx': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n 'ppt': 'application/vnd.ms-powerpoint',\n 'pptx': 'application/vnd.openxmlformats-officedocument.presentationml.presentation',\n 'doc': 'application/msword',\n 'docx': 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n 'txt': 'text/plain',\n 'html': 'text/html',\n 'htm': 'text/html',\n 'css': 'text/css',\n 'js': 'text/javascript',\n 'csv': 'text/csv',\n 'jpg': 'image/jpeg',\n 'jpeg': 'image/jpeg',\n 'png': 'image/png',\n 'gif': 'image/gif',\n 'svg': 'image/svg+xml',\n 'webp': 'image/webp',\n 'bmp': 'image/bmp',\n 'tiff': 'image/tiff',\n 'tif': 'image/tiff',\n 'ico': 'image/x-icon',\n 'mp3': 'audio/mpeg',\n 'wav': 'audio/wav',\n 'ogg': 'audio/ogg',\n 'aac': 'audio/aac',\n 'mp4': 'video/mp4',\n 'mpeg': 'video/mpeg',\n 'mpg': 'video/mpeg',\n 'webm': 'video/webm',\n 'ogv': 'video/ogg',\n 'avi': 'video/x-msvideo',\n 'mov': 'video/quicktime'\n };\n \n return extMap[extension.toLowerCase().replace(/^\\./, '')] || 'application/octet-stream';\n }\n\n export function charsetEncode(input: string, _charset: string): Uint8Array {\n const encoder = new TextEncoder();\n return encoder.encode(input);\n }\n\n export function charsetDecode(input: Uint8Array, charset: string): string {\n const decoder = new TextDecoder(charset);\n return decoder.decode(input);\n }\n\n export function stripBom(input: string): string {\n if (input.charCodeAt(0) === 0xfeff) {\n return input.slice(1);\n }\n return input;\n }\n\n export function addBom(input: string, bom: 'utf-8' | 'utf-16le' | 'utf-16be' = 'utf-8'): string {\n const boms: Record<string, string> = {\n 'utf-8': '\\ufeff',\n 'utf-16le': '\\ufffe',\n 'utf-16be': '\\ufeff'\n };\n return boms[bom] + input;\n }\n\n export function normalizeEncoding(input: string, fromEncoding: string, toEncoding: string): string {\n const bytes = charsetEncode(input, fromEncoding);\n return charsetDecode(bytes, toEncoding);\n }\n\n export function isValidBase64(input: string): boolean {\n if (!input || input.length % 4 !== 0) {\n return false;\n }\n const base64Regex = /^[A-Za-z0-9+/]*={0,2}$/;\n return base64Regex.test(input);\n }\n\n export function isValidHex(input: string): boolean {\n return /^[0-9a-fA-F]*$/.test(input) && input.length % 2 === 0;\n }\n\n export function isValidUrl(input: string): boolean {\n try {\n new URL(input);\n return true;\n } catch {\n return false;\n }\n }\n\n export function isValidEmail(input: string): boolean {\n const emailRegex = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\n return emailRegex.test(input);\n }\n\n export function detectEncoding(input: string): string {\n if (input.charCodeAt(0) === 0xfeff) {\n return 'utf-8-bom';\n }\n if (input.charCodeAt(0) === 0xfffe) {\n return 'utf-16le';\n }\n if (input.charCodeAt(0) === 0xfeff && input.charCodeAt(1) === 0x0000) {\n return 'utf-16be';\n }\n \n if (/[\\u4e00-\\u9fa5]/.test(input)) {\n return 'utf-8';\n }\n \n return 'ascii';\n }\n}\n\nexport const base64Encode = Encoding.base64Encode;\nexport const base64Decode = Encoding.base64Decode;\nexport const base64UrlEncode = Encoding.base64UrlEncode;\nexport const base64UrlDecode = Encoding.base64UrlDecode;\nexport const utf8Encode = Encoding.utf8Encode;\nexport const utf8Decode = Encoding.utf8Decode;\nexport const hexEncode = Encoding.hexEncode;\nexport const hexDecode = Encoding.hexDecode;\nexport const urlEncode = Encoding.urlEncode;\nexport const urlDecode = Encoding.urlDecode;\nexport const htmlEncode = Encoding.htmlEncode;\nexport const htmlDecode = Encoding.htmlDecode;\nexport const jsonEncode = Encoding.jsonEncode;\nexport const jsonDecode = Encoding.jsonDecode;\nexport const xmlEncode = Encoding.xmlEncode;\nexport const xmlDecode = Encoding.xmlDecode;\nexport const escapeRegex = Encoding.escapeRegex;\nexport const escapeSql = Encoding.escapeSql;\nexport const escapeShell = Encoding.escapeShell;\nexport const queryStringEncode = Encoding.queryStringEncode;\nexport const queryStringDecode = Encoding.queryStringDecode;\nexport const slugify = Encoding.slugify;\nexport const unslugify = Encoding.unslugify;\n"],"names":["Encoding","base64Encode","base64Decode","base64UrlEncode","base64UrlDecode","utf8Encode","utf8Decode","hexEncode","hexDecode","urlEncode","urlDecode","htmlEncode","htmlDecode","jsonEncode","jsonDecode","xmlEncode","xmlDecode","escapeRegex","escapeSql","escapeShell","slugify","unslugify","queryStringEncode","queryStringDecode"],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { ConsoleLogger, noopLogger, createLogger } from './logger';
|
|
2
|
+
export type { Logger } from './logger';
|
|
3
|
+
export type { CacheStore } from './cache';
|
|
4
|
+
export { MemoryCacheStore, createCacheStore, generateCacheKey } from './cache';
|
|
5
|
+
export { sleep, calculateDelay, shouldRetry, withRetry, createRetryConfig } from './retry';
|
|
6
|
+
export { DEFAULT_RETRY_CONFIG, DEFAULT_CACHE_CONFIG, DEFAULT_LOGGER_CONFIG, DEFAULT_TIMEOUT, SUCCESS_CODES, HTTP_STATUS, MIME_TYPES } from '../core';
|
|
7
|
+
export { StringUtils, EMPTY_STRING, SPACE, DASH, UNDERSCORE, DOT, SLASH, BACKSLASH, NEWLINE, CARRIAGE_RETURN, TAB } from './string';
|
|
8
|
+
export { Encoding } from './encoding';
|
|
9
|
+
export type { TimeUnit, DateFormat, DateComponents, Duration } from './date';
|
|
10
|
+
export { MILLISECONDS_IN_SECOND, MILLISECONDS_IN_MINUTE, MILLISECONDS_IN_HOUR, MILLISECONDS_IN_DAY, MILLISECONDS_IN_WEEK, TIME_UNITS_IN_MS } from './date';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACnE,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC/E,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC3F,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErJ,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AACpI,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAC7E,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,QAAQ,CAAC"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
4
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
6
|
+
const LOG_LEVELS = {
|
|
7
|
+
debug: 0,
|
|
8
|
+
info: 1,
|
|
9
|
+
warn: 2,
|
|
10
|
+
error: 3,
|
|
11
|
+
silent: 4
|
|
12
|
+
};
|
|
13
|
+
class ConsoleLogger {
|
|
14
|
+
constructor(config = {}) {
|
|
15
|
+
__publicField(this, "level");
|
|
16
|
+
__publicField(this, "prefix");
|
|
17
|
+
__publicField(this, "timestamp");
|
|
18
|
+
__publicField(this, "colors");
|
|
19
|
+
this.level = config.level ?? "info";
|
|
20
|
+
this.prefix = config.prefix ?? "[SDK]";
|
|
21
|
+
this.timestamp = config.timestamp ?? true;
|
|
22
|
+
this.colors = config.colors ?? true;
|
|
23
|
+
}
|
|
24
|
+
formatMessage(level, message) {
|
|
25
|
+
const parts = [];
|
|
26
|
+
if (this.timestamp) {
|
|
27
|
+
parts.push((/* @__PURE__ */ new Date()).toISOString());
|
|
28
|
+
}
|
|
29
|
+
parts.push(this.prefix);
|
|
30
|
+
parts.push(`[${level.toUpperCase()}]`);
|
|
31
|
+
parts.push(message);
|
|
32
|
+
return parts.join(" ");
|
|
33
|
+
}
|
|
34
|
+
getColorCode(level) {
|
|
35
|
+
if (!this.colors) return "";
|
|
36
|
+
const colors = {
|
|
37
|
+
debug: "\x1B[36m",
|
|
38
|
+
info: "\x1B[32m",
|
|
39
|
+
warn: "\x1B[33m",
|
|
40
|
+
error: "\x1B[31m",
|
|
41
|
+
silent: ""
|
|
42
|
+
};
|
|
43
|
+
return colors[level];
|
|
44
|
+
}
|
|
45
|
+
getResetCode() {
|
|
46
|
+
return this.colors ? "\x1B[0m" : "";
|
|
47
|
+
}
|
|
48
|
+
log(level, message, ...args) {
|
|
49
|
+
if (LOG_LEVELS[level] < LOG_LEVELS[this.level]) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
const formattedMessage = this.formatMessage(level, message);
|
|
53
|
+
const colorCode = this.getColorCode(level);
|
|
54
|
+
const resetCode = this.getResetCode();
|
|
55
|
+
const output = `${colorCode}${formattedMessage}${resetCode}`;
|
|
56
|
+
switch (level) {
|
|
57
|
+
case "debug":
|
|
58
|
+
console.debug(output, ...args);
|
|
59
|
+
break;
|
|
60
|
+
case "info":
|
|
61
|
+
console.info(output, ...args);
|
|
62
|
+
break;
|
|
63
|
+
case "warn":
|
|
64
|
+
console.warn(output, ...args);
|
|
65
|
+
break;
|
|
66
|
+
case "error":
|
|
67
|
+
console.error(output, ...args);
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
debug(message, ...args) {
|
|
72
|
+
this.log("debug", message, ...args);
|
|
73
|
+
}
|
|
74
|
+
info(message, ...args) {
|
|
75
|
+
this.log("info", message, ...args);
|
|
76
|
+
}
|
|
77
|
+
warn(message, ...args) {
|
|
78
|
+
this.log("warn", message, ...args);
|
|
79
|
+
}
|
|
80
|
+
error(message, ...args) {
|
|
81
|
+
this.log("error", message, ...args);
|
|
82
|
+
}
|
|
83
|
+
setLevel(level) {
|
|
84
|
+
this.level = level;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
const noopLogger = {
|
|
88
|
+
debug: () => {
|
|
89
|
+
},
|
|
90
|
+
info: () => {
|
|
91
|
+
},
|
|
92
|
+
warn: () => {
|
|
93
|
+
},
|
|
94
|
+
error: () => {
|
|
95
|
+
},
|
|
96
|
+
log: () => {
|
|
97
|
+
},
|
|
98
|
+
setLevel: () => {
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
function createLogger(config) {
|
|
102
|
+
if ((config == null ? void 0 : config.level) === "silent") {
|
|
103
|
+
return noopLogger;
|
|
104
|
+
}
|
|
105
|
+
return new ConsoleLogger(config);
|
|
106
|
+
}
|
|
107
|
+
exports.ConsoleLogger = ConsoleLogger;
|
|
108
|
+
exports.createLogger = createLogger;
|
|
109
|
+
exports.noopLogger = noopLogger;
|
|
110
|
+
//# sourceMappingURL=logger.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.cjs","sources":["../../src/utils/logger.ts"],"sourcesContent":["import type { LogLevel, LoggerConfig } from '../core/types';\n\nexport interface Logger {\n debug(message: string, ...args: unknown[]): void;\n info(message: string, ...args: unknown[]): void;\n warn(message: string, ...args: unknown[]): void;\n error(message: string, ...args: unknown[]): void;\n log(level: LogLevel, message: string, ...args: unknown[]): void;\n setLevel(level: LogLevel): void;\n}\n\nconst LOG_LEVELS: Record<LogLevel, number> = {\n debug: 0,\n info: 1,\n warn: 2,\n error: 3,\n silent: 4,\n};\n\nexport class ConsoleLogger implements Logger {\n private level: LogLevel;\n private prefix: string;\n private timestamp: boolean;\n private colors: boolean;\n\n constructor(config: Partial<LoggerConfig> = {}) {\n this.level = config.level ?? 'info';\n this.prefix = config.prefix ?? '[SDK]';\n this.timestamp = config.timestamp ?? true;\n this.colors = config.colors ?? true;\n }\n\n private formatMessage(level: LogLevel, message: string): string {\n const parts: string[] = [];\n \n if (this.timestamp) {\n parts.push(new Date().toISOString());\n }\n \n parts.push(this.prefix);\n parts.push(`[${level.toUpperCase()}]`);\n parts.push(message);\n \n return parts.join(' ');\n }\n\n private getColorCode(level: LogLevel): string {\n if (!this.colors) return '';\n \n const colors: Record<LogLevel, string> = {\n debug: '\\x1b[36m',\n info: '\\x1b[32m',\n warn: '\\x1b[33m',\n error: '\\x1b[31m',\n silent: '',\n };\n \n return colors[level];\n }\n\n private getResetCode(): string {\n return this.colors ? '\\x1b[0m' : '';\n }\n\n log(level: LogLevel, message: string, ...args: unknown[]): void {\n if (LOG_LEVELS[level] < LOG_LEVELS[this.level]) {\n return;\n }\n\n const formattedMessage = this.formatMessage(level, message);\n const colorCode = this.getColorCode(level);\n const resetCode = this.getResetCode();\n\n const output = `${colorCode}${formattedMessage}${resetCode}`;\n\n switch (level) {\n case 'debug':\n console.debug(output, ...args);\n break;\n case 'info':\n console.info(output, ...args);\n break;\n case 'warn':\n console.warn(output, ...args);\n break;\n case 'error':\n console.error(output, ...args);\n break;\n }\n }\n\n debug(message: string, ...args: unknown[]): void {\n this.log('debug', message, ...args);\n }\n\n info(message: string, ...args: unknown[]): void {\n this.log('info', message, ...args);\n }\n\n warn(message: string, ...args: unknown[]): void {\n this.log('warn', message, ...args);\n }\n\n error(message: string, ...args: unknown[]): void {\n this.log('error', message, ...args);\n }\n\n setLevel(level: LogLevel): void {\n this.level = level;\n }\n}\n\nexport const noopLogger: Logger = {\n debug: () => {},\n info: () => {},\n warn: () => {},\n error: () => {},\n log: () => {},\n setLevel: () => {},\n};\n\nexport function createLogger(config?: Partial<LoggerConfig>): Logger {\n if (config?.level === 'silent') {\n return noopLogger;\n }\n return new ConsoleLogger(config);\n}\n"],"names":[],"mappings":";;;;;AAWA,MAAM,aAAuC;AAAA,EAC3C,OAAO;AAAA,EACP,MAAM;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AAAA,EACP,QAAQ;AACV;AAEO,MAAM,cAAgC;AAAA,EAM3C,YAAY,SAAgC,IAAI;AALxC;AACA;AACA;AACA;AAGN,SAAK,QAAQ,OAAO,SAAS;AAC7B,SAAK,SAAS,OAAO,UAAU;AAC/B,SAAK,YAAY,OAAO,aAAa;AACrC,SAAK,SAAS,OAAO,UAAU;AAAA,EACjC;AAAA,EAEQ,cAAc,OAAiB,SAAyB;AAC9D,UAAM,QAAkB,CAAA;AAExB,QAAI,KAAK,WAAW;AAClB,YAAM,MAAK,oBAAI,KAAA,GAAO,aAAa;AAAA,IACrC;AAEA,UAAM,KAAK,KAAK,MAAM;AACtB,UAAM,KAAK,IAAI,MAAM,YAAA,CAAa,GAAG;AACrC,UAAM,KAAK,OAAO;AAElB,WAAO,MAAM,KAAK,GAAG;AAAA,EACvB;AAAA,EAEQ,aAAa,OAAyB;AAC5C,QAAI,CAAC,KAAK,OAAQ,QAAO;AAEzB,UAAM,SAAmC;AAAA,MACvC,OAAO;AAAA,MACP,MAAM;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,IAAA;AAGV,WAAO,OAAO,KAAK;AAAA,EACrB;AAAA,EAEQ,eAAuB;AAC7B,WAAO,KAAK,SAAS,YAAY;AAAA,EACnC;AAAA,EAEA,IAAI,OAAiB,YAAoB,MAAuB;AAC9D,QAAI,WAAW,KAAK,IAAI,WAAW,KAAK,KAAK,GAAG;AAC9C;AAAA,IACF;AAEA,UAAM,mBAAmB,KAAK,cAAc,OAAO,OAAO;AAC1D,UAAM,YAAY,KAAK,aAAa,KAAK;AACzC,UAAM,YAAY,KAAK,aAAA;AAEvB,UAAM,SAAS,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS;AAE1D,YAAQ,OAAA;AAAA,MACN,KAAK;AACH,gBAAQ,MAAM,QAAQ,GAAG,IAAI;AAC7B;AAAA,MACF,KAAK;AACH,gBAAQ,KAAK,QAAQ,GAAG,IAAI;AAC5B;AAAA,MACF,KAAK;AACH,gBAAQ,KAAK,QAAQ,GAAG,IAAI;AAC5B;AAAA,MACF,KAAK;AACH,gBAAQ,MAAM,QAAQ,GAAG,IAAI;AAC7B;AAAA,IAAA;AAAA,EAEN;AAAA,EAEA,MAAM,YAAoB,MAAuB;AAC/C,SAAK,IAAI,SAAS,SAAS,GAAG,IAAI;AAAA,EACpC;AAAA,EAEA,KAAK,YAAoB,MAAuB;AAC9C,SAAK,IAAI,QAAQ,SAAS,GAAG,IAAI;AAAA,EACnC;AAAA,EAEA,KAAK,YAAoB,MAAuB;AAC9C,SAAK,IAAI,QAAQ,SAAS,GAAG,IAAI;AAAA,EACnC;AAAA,EAEA,MAAM,YAAoB,MAAuB;AAC/C,SAAK,IAAI,SAAS,SAAS,GAAG,IAAI;AAAA,EACpC;AAAA,EAEA,SAAS,OAAuB;AAC9B,SAAK,QAAQ;AAAA,EACf;AACF;AAEO,MAAM,aAAqB;AAAA,EAChC,OAAO,MAAM;AAAA,EAAC;AAAA,EACd,MAAM,MAAM;AAAA,EAAC;AAAA,EACb,MAAM,MAAM;AAAA,EAAC;AAAA,EACb,OAAO,MAAM;AAAA,EAAC;AAAA,EACd,KAAK,MAAM;AAAA,EAAC;AAAA,EACZ,UAAU,MAAM;AAAA,EAAC;AACnB;AAEO,SAAS,aAAa,QAAwC;AACnE,OAAI,iCAAQ,WAAU,UAAU;AAC9B,WAAO;AAAA,EACT;AACA,SAAO,IAAI,cAAc,MAAM;AACjC;;;;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { LogLevel, LoggerConfig } from '../core/types';
|
|
2
|
+
export interface Logger {
|
|
3
|
+
debug(message: string, ...args: unknown[]): void;
|
|
4
|
+
info(message: string, ...args: unknown[]): void;
|
|
5
|
+
warn(message: string, ...args: unknown[]): void;
|
|
6
|
+
error(message: string, ...args: unknown[]): void;
|
|
7
|
+
log(level: LogLevel, message: string, ...args: unknown[]): void;
|
|
8
|
+
setLevel(level: LogLevel): void;
|
|
9
|
+
}
|
|
10
|
+
export declare class ConsoleLogger implements Logger {
|
|
11
|
+
private level;
|
|
12
|
+
private prefix;
|
|
13
|
+
private timestamp;
|
|
14
|
+
private colors;
|
|
15
|
+
constructor(config?: Partial<LoggerConfig>);
|
|
16
|
+
private formatMessage;
|
|
17
|
+
private getColorCode;
|
|
18
|
+
private getResetCode;
|
|
19
|
+
log(level: LogLevel, message: string, ...args: unknown[]): void;
|
|
20
|
+
debug(message: string, ...args: unknown[]): void;
|
|
21
|
+
info(message: string, ...args: unknown[]): void;
|
|
22
|
+
warn(message: string, ...args: unknown[]): void;
|
|
23
|
+
error(message: string, ...args: unknown[]): void;
|
|
24
|
+
setLevel(level: LogLevel): void;
|
|
25
|
+
}
|
|
26
|
+
export declare const noopLogger: Logger;
|
|
27
|
+
export declare function createLogger(config?: Partial<LoggerConfig>): Logger;
|
|
28
|
+
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE5D,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACjD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACjD,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChE,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;CACjC;AAUD,qBAAa,aAAc,YAAW,MAAM;IAC1C,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,MAAM,CAAU;gBAEZ,MAAM,GAAE,OAAO,CAAC,YAAY,CAAM;IAO9C,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,YAAY;IAIpB,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IA2B/D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAIhD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAI/C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAI/C,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAIhD,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;CAGhC;AAED,eAAO,MAAM,UAAU,EAAE,MAOxB,CAAC;AAEF,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,MAAM,CAKnE"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
|
+
const LOG_LEVELS = {
|
|
5
|
+
debug: 0,
|
|
6
|
+
info: 1,
|
|
7
|
+
warn: 2,
|
|
8
|
+
error: 3,
|
|
9
|
+
silent: 4
|
|
10
|
+
};
|
|
11
|
+
class ConsoleLogger {
|
|
12
|
+
constructor(config = {}) {
|
|
13
|
+
__publicField(this, "level");
|
|
14
|
+
__publicField(this, "prefix");
|
|
15
|
+
__publicField(this, "timestamp");
|
|
16
|
+
__publicField(this, "colors");
|
|
17
|
+
this.level = config.level ?? "info";
|
|
18
|
+
this.prefix = config.prefix ?? "[SDK]";
|
|
19
|
+
this.timestamp = config.timestamp ?? true;
|
|
20
|
+
this.colors = config.colors ?? true;
|
|
21
|
+
}
|
|
22
|
+
formatMessage(level, message) {
|
|
23
|
+
const parts = [];
|
|
24
|
+
if (this.timestamp) {
|
|
25
|
+
parts.push((/* @__PURE__ */ new Date()).toISOString());
|
|
26
|
+
}
|
|
27
|
+
parts.push(this.prefix);
|
|
28
|
+
parts.push(`[${level.toUpperCase()}]`);
|
|
29
|
+
parts.push(message);
|
|
30
|
+
return parts.join(" ");
|
|
31
|
+
}
|
|
32
|
+
getColorCode(level) {
|
|
33
|
+
if (!this.colors) return "";
|
|
34
|
+
const colors = {
|
|
35
|
+
debug: "\x1B[36m",
|
|
36
|
+
info: "\x1B[32m",
|
|
37
|
+
warn: "\x1B[33m",
|
|
38
|
+
error: "\x1B[31m",
|
|
39
|
+
silent: ""
|
|
40
|
+
};
|
|
41
|
+
return colors[level];
|
|
42
|
+
}
|
|
43
|
+
getResetCode() {
|
|
44
|
+
return this.colors ? "\x1B[0m" : "";
|
|
45
|
+
}
|
|
46
|
+
log(level, message, ...args) {
|
|
47
|
+
if (LOG_LEVELS[level] < LOG_LEVELS[this.level]) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
const formattedMessage = this.formatMessage(level, message);
|
|
51
|
+
const colorCode = this.getColorCode(level);
|
|
52
|
+
const resetCode = this.getResetCode();
|
|
53
|
+
const output = `${colorCode}${formattedMessage}${resetCode}`;
|
|
54
|
+
switch (level) {
|
|
55
|
+
case "debug":
|
|
56
|
+
console.debug(output, ...args);
|
|
57
|
+
break;
|
|
58
|
+
case "info":
|
|
59
|
+
console.info(output, ...args);
|
|
60
|
+
break;
|
|
61
|
+
case "warn":
|
|
62
|
+
console.warn(output, ...args);
|
|
63
|
+
break;
|
|
64
|
+
case "error":
|
|
65
|
+
console.error(output, ...args);
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
debug(message, ...args) {
|
|
70
|
+
this.log("debug", message, ...args);
|
|
71
|
+
}
|
|
72
|
+
info(message, ...args) {
|
|
73
|
+
this.log("info", message, ...args);
|
|
74
|
+
}
|
|
75
|
+
warn(message, ...args) {
|
|
76
|
+
this.log("warn", message, ...args);
|
|
77
|
+
}
|
|
78
|
+
error(message, ...args) {
|
|
79
|
+
this.log("error", message, ...args);
|
|
80
|
+
}
|
|
81
|
+
setLevel(level) {
|
|
82
|
+
this.level = level;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
const noopLogger = {
|
|
86
|
+
debug: () => {
|
|
87
|
+
},
|
|
88
|
+
info: () => {
|
|
89
|
+
},
|
|
90
|
+
warn: () => {
|
|
91
|
+
},
|
|
92
|
+
error: () => {
|
|
93
|
+
},
|
|
94
|
+
log: () => {
|
|
95
|
+
},
|
|
96
|
+
setLevel: () => {
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
function createLogger(config) {
|
|
100
|
+
if ((config == null ? void 0 : config.level) === "silent") {
|
|
101
|
+
return noopLogger;
|
|
102
|
+
}
|
|
103
|
+
return new ConsoleLogger(config);
|
|
104
|
+
}
|
|
105
|
+
export {
|
|
106
|
+
ConsoleLogger,
|
|
107
|
+
createLogger,
|
|
108
|
+
noopLogger
|
|
109
|
+
};
|
|
110
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sources":["../../src/utils/logger.ts"],"sourcesContent":["import type { LogLevel, LoggerConfig } from '../core/types';\n\nexport interface Logger {\n debug(message: string, ...args: unknown[]): void;\n info(message: string, ...args: unknown[]): void;\n warn(message: string, ...args: unknown[]): void;\n error(message: string, ...args: unknown[]): void;\n log(level: LogLevel, message: string, ...args: unknown[]): void;\n setLevel(level: LogLevel): void;\n}\n\nconst LOG_LEVELS: Record<LogLevel, number> = {\n debug: 0,\n info: 1,\n warn: 2,\n error: 3,\n silent: 4,\n};\n\nexport class ConsoleLogger implements Logger {\n private level: LogLevel;\n private prefix: string;\n private timestamp: boolean;\n private colors: boolean;\n\n constructor(config: Partial<LoggerConfig> = {}) {\n this.level = config.level ?? 'info';\n this.prefix = config.prefix ?? '[SDK]';\n this.timestamp = config.timestamp ?? true;\n this.colors = config.colors ?? true;\n }\n\n private formatMessage(level: LogLevel, message: string): string {\n const parts: string[] = [];\n \n if (this.timestamp) {\n parts.push(new Date().toISOString());\n }\n \n parts.push(this.prefix);\n parts.push(`[${level.toUpperCase()}]`);\n parts.push(message);\n \n return parts.join(' ');\n }\n\n private getColorCode(level: LogLevel): string {\n if (!this.colors) return '';\n \n const colors: Record<LogLevel, string> = {\n debug: '\\x1b[36m',\n info: '\\x1b[32m',\n warn: '\\x1b[33m',\n error: '\\x1b[31m',\n silent: '',\n };\n \n return colors[level];\n }\n\n private getResetCode(): string {\n return this.colors ? '\\x1b[0m' : '';\n }\n\n log(level: LogLevel, message: string, ...args: unknown[]): void {\n if (LOG_LEVELS[level] < LOG_LEVELS[this.level]) {\n return;\n }\n\n const formattedMessage = this.formatMessage(level, message);\n const colorCode = this.getColorCode(level);\n const resetCode = this.getResetCode();\n\n const output = `${colorCode}${formattedMessage}${resetCode}`;\n\n switch (level) {\n case 'debug':\n console.debug(output, ...args);\n break;\n case 'info':\n console.info(output, ...args);\n break;\n case 'warn':\n console.warn(output, ...args);\n break;\n case 'error':\n console.error(output, ...args);\n break;\n }\n }\n\n debug(message: string, ...args: unknown[]): void {\n this.log('debug', message, ...args);\n }\n\n info(message: string, ...args: unknown[]): void {\n this.log('info', message, ...args);\n }\n\n warn(message: string, ...args: unknown[]): void {\n this.log('warn', message, ...args);\n }\n\n error(message: string, ...args: unknown[]): void {\n this.log('error', message, ...args);\n }\n\n setLevel(level: LogLevel): void {\n this.level = level;\n }\n}\n\nexport const noopLogger: Logger = {\n debug: () => {},\n info: () => {},\n warn: () => {},\n error: () => {},\n log: () => {},\n setLevel: () => {},\n};\n\nexport function createLogger(config?: Partial<LoggerConfig>): Logger {\n if (config?.level === 'silent') {\n return noopLogger;\n }\n return new ConsoleLogger(config);\n}\n"],"names":[],"mappings":";;;AAWA,MAAM,aAAuC;AAAA,EAC3C,OAAO;AAAA,EACP,MAAM;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AAAA,EACP,QAAQ;AACV;AAEO,MAAM,cAAgC;AAAA,EAM3C,YAAY,SAAgC,IAAI;AALxC;AACA;AACA;AACA;AAGN,SAAK,QAAQ,OAAO,SAAS;AAC7B,SAAK,SAAS,OAAO,UAAU;AAC/B,SAAK,YAAY,OAAO,aAAa;AACrC,SAAK,SAAS,OAAO,UAAU;AAAA,EACjC;AAAA,EAEQ,cAAc,OAAiB,SAAyB;AAC9D,UAAM,QAAkB,CAAA;AAExB,QAAI,KAAK,WAAW;AAClB,YAAM,MAAK,oBAAI,KAAA,GAAO,aAAa;AAAA,IACrC;AAEA,UAAM,KAAK,KAAK,MAAM;AACtB,UAAM,KAAK,IAAI,MAAM,YAAA,CAAa,GAAG;AACrC,UAAM,KAAK,OAAO;AAElB,WAAO,MAAM,KAAK,GAAG;AAAA,EACvB;AAAA,EAEQ,aAAa,OAAyB;AAC5C,QAAI,CAAC,KAAK,OAAQ,QAAO;AAEzB,UAAM,SAAmC;AAAA,MACvC,OAAO;AAAA,MACP,MAAM;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,IAAA;AAGV,WAAO,OAAO,KAAK;AAAA,EACrB;AAAA,EAEQ,eAAuB;AAC7B,WAAO,KAAK,SAAS,YAAY;AAAA,EACnC;AAAA,EAEA,IAAI,OAAiB,YAAoB,MAAuB;AAC9D,QAAI,WAAW,KAAK,IAAI,WAAW,KAAK,KAAK,GAAG;AAC9C;AAAA,IACF;AAEA,UAAM,mBAAmB,KAAK,cAAc,OAAO,OAAO;AAC1D,UAAM,YAAY,KAAK,aAAa,KAAK;AACzC,UAAM,YAAY,KAAK,aAAA;AAEvB,UAAM,SAAS,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS;AAE1D,YAAQ,OAAA;AAAA,MACN,KAAK;AACH,gBAAQ,MAAM,QAAQ,GAAG,IAAI;AAC7B;AAAA,MACF,KAAK;AACH,gBAAQ,KAAK,QAAQ,GAAG,IAAI;AAC5B;AAAA,MACF,KAAK;AACH,gBAAQ,KAAK,QAAQ,GAAG,IAAI;AAC5B;AAAA,MACF,KAAK;AACH,gBAAQ,MAAM,QAAQ,GAAG,IAAI;AAC7B;AAAA,IAAA;AAAA,EAEN;AAAA,EAEA,MAAM,YAAoB,MAAuB;AAC/C,SAAK,IAAI,SAAS,SAAS,GAAG,IAAI;AAAA,EACpC;AAAA,EAEA,KAAK,YAAoB,MAAuB;AAC9C,SAAK,IAAI,QAAQ,SAAS,GAAG,IAAI;AAAA,EACnC;AAAA,EAEA,KAAK,YAAoB,MAAuB;AAC9C,SAAK,IAAI,QAAQ,SAAS,GAAG,IAAI;AAAA,EACnC;AAAA,EAEA,MAAM,YAAoB,MAAuB;AAC/C,SAAK,IAAI,SAAS,SAAS,GAAG,IAAI;AAAA,EACpC;AAAA,EAEA,SAAS,OAAuB;AAC9B,SAAK,QAAQ;AAAA,EACf;AACF;AAEO,MAAM,aAAqB;AAAA,EAChC,OAAO,MAAM;AAAA,EAAC;AAAA,EACd,MAAM,MAAM;AAAA,EAAC;AAAA,EACb,MAAM,MAAM;AAAA,EAAC;AAAA,EACb,OAAO,MAAM;AAAA,EAAC;AAAA,EACd,KAAK,MAAM;AAAA,EAAC;AAAA,EACZ,UAAU,MAAM;AAAA,EAAC;AACnB;AAEO,SAAS,aAAa,QAAwC;AACnE,OAAI,iCAAQ,WAAU,UAAU;AAC9B,WAAO;AAAA,EACT;AACA,SAAO,IAAI,cAAc,MAAM;AACjC;"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
export type Primitive = string | number | boolean | null | undefined | symbol | bigint;
|
|
2
|
+
export type DeepKeyOf<T> = T extends object ? {
|
|
3
|
+
[K in keyof T]: K extends string ? T[K] extends object ? K | `${K}.${DeepKeyOf<T[K]>}` : K : never;
|
|
4
|
+
}[keyof T] : never;
|
|
5
|
+
export type DeepValueOf<T, P extends string> = P extends `${infer K}.${infer Rest}` ? K extends keyof T ? DeepValueOf<T[K], Rest> : never : P extends keyof T ? T[P] : never;
|
|
6
|
+
export declare function isObject(value: unknown): value is Record<string, unknown>;
|
|
7
|
+
export declare function isPlainObject(value: unknown): value is Record<string, unknown>;
|
|
8
|
+
export declare function isEmpty(value: unknown): boolean;
|
|
9
|
+
export declare function isNotEmpty(value: unknown): boolean;
|
|
10
|
+
export declare function hasKey<T extends object>(obj: T, key: PropertyKey): key is keyof T;
|
|
11
|
+
export declare function hasKeys<T extends object>(obj: T, keys: PropertyKey[]): boolean;
|
|
12
|
+
export declare function keys<T extends object>(obj: T): (keyof T)[];
|
|
13
|
+
export declare function values<T extends object>(obj: T): T[keyof T][];
|
|
14
|
+
export declare function entries<T extends object>(obj: T): [keyof T, T[keyof T]][];
|
|
15
|
+
export declare function fromEntries<K extends string, V>(entries: [K, V][]): Record<K, V>;
|
|
16
|
+
export declare function pick<T extends object, K extends keyof T>(obj: T, keys: K[]): Pick<T, K>;
|
|
17
|
+
export declare function pickBy<T extends object>(obj: T, predicate: (value: T[keyof T], key: keyof T) => boolean): Partial<T>;
|
|
18
|
+
export declare function omit<T extends object, K extends keyof T>(obj: T, keys: K[]): Omit<T, K>;
|
|
19
|
+
export declare function omitBy<T extends object>(obj: T, predicate: (value: T[keyof T], key: keyof T) => boolean): Partial<T>;
|
|
20
|
+
export declare function merge<T extends object, U extends object>(target: T, source: U): T & U;
|
|
21
|
+
export declare function mergeDeep<T extends object, U extends object>(target: T, source: U): T & U;
|
|
22
|
+
export declare function clone<T>(obj: T): T;
|
|
23
|
+
export declare function cloneDeep<T>(obj: T): T;
|
|
24
|
+
export declare function cloneShallow<T extends object>(obj: T): T;
|
|
25
|
+
export declare function equals(a: unknown, b: unknown): boolean;
|
|
26
|
+
export declare function deepEquals(a: unknown, b: unknown): boolean;
|
|
27
|
+
export declare function shallowEquals(a: unknown, b: unknown): boolean;
|
|
28
|
+
export declare function get<T extends object, P extends string>(obj: T, path: P, defaultValue?: unknown): DeepValueOf<T, P> | undefined;
|
|
29
|
+
export declare function set<T extends object>(obj: T, path: string, value: unknown): T;
|
|
30
|
+
export declare function has<T extends object>(obj: T, path: string): boolean;
|
|
31
|
+
export declare function unset<T extends object>(obj: T, path: string): T;
|
|
32
|
+
export declare function defaults<T extends object>(obj: T, defaults: Partial<T>): T;
|
|
33
|
+
export declare function defaultsDeep<T extends object>(obj: T, defaults: Partial<T>): T;
|
|
34
|
+
export declare function mapKeys<T extends object>(obj: T, mapper: (value: T[keyof T], key: keyof T) => string): Record<string, T[keyof T]>;
|
|
35
|
+
export declare function mapValues<T extends object, V>(obj: T, mapper: (value: T[keyof T], key: keyof T) => V): Record<keyof T, V>;
|
|
36
|
+
export declare function transform<T extends object, R>(obj: T, transformer: (result: R, value: T[keyof T], key: keyof T) => R, accumulator: R): R;
|
|
37
|
+
export declare function findKey<T extends object>(obj: T, predicate: (value: T[keyof T], key: keyof T) => boolean): keyof T | undefined;
|
|
38
|
+
export declare function findLastKey<T extends object>(obj: T, predicate: (value: T[keyof T], key: keyof T) => boolean): keyof T | undefined;
|
|
39
|
+
export declare function invert<T extends Record<string, string | number>>(obj: T): Record<T[keyof T], keyof T>;
|
|
40
|
+
export declare function invertBy<T extends Record<string, string | number>>(obj: T, mapper?: (key: keyof T) => string): Record<string, (keyof T)[]>;
|
|
41
|
+
export declare function toPairs<T extends object>(obj: T): [keyof T, T[keyof T]][];
|
|
42
|
+
export declare function fromPairs<K extends string, V>(pairs: [K, V][]): Record<K, V>;
|
|
43
|
+
export declare function size<T extends object>(obj: T): number;
|
|
44
|
+
export declare function at<T extends object>(obj: T, paths: (keyof T)[]): (T[keyof T] | undefined)[];
|
|
45
|
+
export declare function invoke<T extends object>(obj: T, path: string, ...args: unknown[]): unknown;
|
|
46
|
+
export declare function functions<T extends object>(obj: T): (keyof T)[];
|
|
47
|
+
export declare function functionsIn<T extends object>(obj: T): string[];
|
|
48
|
+
export declare function property<T extends object, P extends string>(path: P): (obj: T) => DeepValueOf<T, P> | undefined;
|
|
49
|
+
export declare function propertyOf<T extends object>(obj: T): <P extends string>(path: P) => DeepValueOf<T, P> | undefined;
|
|
50
|
+
export declare function matches<T extends object>(source: Partial<T>): (obj: T) => boolean;
|
|
51
|
+
export declare function matchesProperty<T extends object, K extends keyof T>(key: K, value: T[K]): (obj: T) => boolean;
|
|
52
|
+
export declare function isMatch<T extends object>(obj: T, source: Partial<T>): boolean;
|
|
53
|
+
export declare function assign<T extends object, U extends object>(target: T, ...sources: U[]): T & U;
|
|
54
|
+
export declare function assignIn<T extends object, U extends object>(target: T, ...sources: U[]): T & U;
|
|
55
|
+
export declare function assignWith<T extends object, U extends object>(target: T, source: U, customizer: (objValue: unknown, srcValue: unknown, key: string, target: T, source: U) => unknown): T & U;
|
|
56
|
+
export declare function create<T extends object>(prototype: T, properties?: PropertyDescriptorMap): T;
|
|
57
|
+
export declare function defaultsDeepAll<T extends object>(obj: T, ...sources: Partial<T>[]): T;
|
|
58
|
+
export declare function mergeWith<T extends object, U extends object>(target: T, source: U, customizer: (objValue: unknown, srcValue: unknown, key: string, target: T, source: U) => unknown): T & U;
|
|
59
|
+
export declare function toPlainObject<T extends object>(obj: T): Record<string, unknown>;
|
|
60
|
+
export declare function toMerged<T extends object, U extends object>(target: T, source: U): T & U;
|
|
61
|
+
export declare function getPrototype<T extends object>(obj: T): object | null;
|
|
62
|
+
export declare function getOwnPropertyNames<T extends object>(obj: T): string[];
|
|
63
|
+
export declare function getOwnPropertySymbols<T extends object>(obj: T): symbol[];
|
|
64
|
+
export declare function getOwnPropertyDescriptors<T extends object>(obj: T): PropertyDescriptorMap & ThisType<T>;
|
|
65
|
+
export declare function freeze<T extends object>(obj: T): Readonly<T>;
|
|
66
|
+
export declare function isFrozen<T extends object>(obj: T): boolean;
|
|
67
|
+
export declare function seal<T extends object>(obj: T): T;
|
|
68
|
+
export declare function isSealed<T extends object>(obj: T): boolean;
|
|
69
|
+
export declare function preventExtensions<T extends object>(obj: T): T;
|
|
70
|
+
export declare function isExtensible<T extends object>(obj: T): boolean;
|
|
71
|
+
export declare function defineProperty<T extends object>(obj: T, key: PropertyKey, descriptor: PropertyDescriptor): T;
|
|
72
|
+
export declare function defineProperties<T extends object>(obj: T, properties: PropertyDescriptorMap & ThisType<T>): T;
|
|
73
|
+
export declare function hasOwnProperty<T extends object>(obj: T, key: PropertyKey): boolean;
|
|
74
|
+
export declare function isPrototypeOf<T extends object>(obj: T, value: unknown): boolean;
|
|
75
|
+
export declare function propertyIsEnumerable<T extends object>(obj: T, key: PropertyKey): boolean;
|
|
76
|
+
export declare function isArguments(value: unknown): boolean;
|
|
77
|
+
export declare function isError(value: unknown): value is Error;
|
|
78
|
+
export declare function isFinite(value: unknown): boolean;
|
|
79
|
+
export declare function isInteger(value: unknown): boolean;
|
|
80
|
+
export declare function isNaN(value: unknown): boolean;
|
|
81
|
+
export declare function isNumber(value: unknown): value is number;
|
|
82
|
+
export declare function isString(value: unknown): value is string;
|
|
83
|
+
export declare function isBoolean(value: unknown): value is boolean;
|
|
84
|
+
export declare function isFunction(value: unknown): value is Function;
|
|
85
|
+
export declare function isSymbol(value: unknown): value is symbol;
|
|
86
|
+
export declare function isBigInt(value: unknown): value is bigint;
|
|
87
|
+
export declare function isUndefined(value: unknown): value is undefined;
|
|
88
|
+
export declare function isNull(value: unknown): value is null;
|
|
89
|
+
export declare function isNil(value: unknown): value is null | undefined;
|
|
90
|
+
export declare function isArray(value: unknown): value is unknown[];
|
|
91
|
+
export declare function isArrayBuffer(value: unknown): value is ArrayBuffer;
|
|
92
|
+
export declare function isArrayLike(value: unknown): boolean;
|
|
93
|
+
export declare function isArrayLikeObject(value: unknown): value is object & {
|
|
94
|
+
length: number;
|
|
95
|
+
};
|
|
96
|
+
export declare function isBuffer(value: unknown): boolean;
|
|
97
|
+
export declare function isDate(value: unknown): value is Date;
|
|
98
|
+
export declare function isElement(value: unknown): boolean;
|
|
99
|
+
export declare function isEmptyObject(value: unknown): boolean;
|
|
100
|
+
export declare function isLength(value: unknown): boolean;
|
|
101
|
+
export declare function isMap(value: unknown): value is Map<unknown, unknown>;
|
|
102
|
+
export declare function isSet(value: unknown): value is Set<unknown>;
|
|
103
|
+
export declare function isWeakMap(value: unknown): value is WeakMap<object, unknown>;
|
|
104
|
+
export declare function isWeakSet(value: unknown): value is WeakSet<object>;
|
|
105
|
+
export declare function isRegExp(value: unknown): value is RegExp;
|
|
106
|
+
export declare function isTypedArray(value: unknown): boolean;
|
|
107
|
+
export declare function isDataView(value: unknown): value is DataView;
|
|
108
|
+
export declare function isPromise(value: unknown): value is Promise<unknown>;
|
|
109
|
+
export declare function isObservable(value: unknown): boolean;
|
|
110
|
+
export declare function isGenerator(value: unknown): boolean;
|
|
111
|
+
export declare function isIterable(value: unknown): boolean;
|
|
112
|
+
export declare function isAsyncIterable(value: unknown): boolean;
|
|
113
|
+
export declare function toArray<T>(value: T | T[]): T[];
|
|
114
|
+
export declare function toNumber(value: unknown): number;
|
|
115
|
+
export declare function toString(value: unknown): string;
|
|
116
|
+
export declare function toInteger(value: unknown): number;
|
|
117
|
+
export declare function toSafeInteger(value: unknown): number;
|
|
118
|
+
export declare function toFinite(value: unknown): number;
|
|
119
|
+
export declare function toBoolean(value: unknown): boolean;
|
|
120
|
+
export declare function toPath(value: unknown): string[];
|
|
121
|
+
export declare function uniqueId(prefix?: string): string;
|
|
122
|
+
export declare function identity<T>(value: T): T;
|
|
123
|
+
export declare function noop(): void;
|
|
124
|
+
export declare function constant<T>(value: T): () => T;
|
|
125
|
+
export declare function times<T>(n: number, iteratee: (index: number) => T): T[];
|
|
126
|
+
export declare function stubArray(): unknown[];
|
|
127
|
+
export declare function stubFalse(): boolean;
|
|
128
|
+
export declare function stubObject(): Record<string, unknown>;
|
|
129
|
+
export declare function stubString(): string;
|
|
130
|
+
export declare function stubTrue(): boolean;
|
|
131
|
+
//# sourceMappingURL=object.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../src/utils/object.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const types = require("../core/types.cjs");
|
|
4
|
+
const errors = require("../errors.cjs");
|
|
5
|
+
function sleep(ms) {
|
|
6
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
7
|
+
}
|
|
8
|
+
function calculateDelay(attempt, baseDelay, backoff, maxDelay) {
|
|
9
|
+
let delay;
|
|
10
|
+
switch (backoff) {
|
|
11
|
+
case "fixed":
|
|
12
|
+
delay = baseDelay;
|
|
13
|
+
break;
|
|
14
|
+
case "linear":
|
|
15
|
+
delay = baseDelay * attempt;
|
|
16
|
+
break;
|
|
17
|
+
case "exponential":
|
|
18
|
+
delay = baseDelay * Math.pow(2, attempt - 1);
|
|
19
|
+
break;
|
|
20
|
+
default:
|
|
21
|
+
delay = baseDelay;
|
|
22
|
+
}
|
|
23
|
+
return Math.min(delay, maxDelay);
|
|
24
|
+
}
|
|
25
|
+
function shouldRetry(error, attempt, config) {
|
|
26
|
+
if (attempt >= config.maxRetries) {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
if (config.retryCondition) {
|
|
30
|
+
return config.retryCondition(error, attempt);
|
|
31
|
+
}
|
|
32
|
+
return errors.isRetryableError(error);
|
|
33
|
+
}
|
|
34
|
+
async function withRetry(fn, config = {}) {
|
|
35
|
+
const fullConfig = {
|
|
36
|
+
...types.DEFAULT_RETRY_CONFIG,
|
|
37
|
+
...config
|
|
38
|
+
};
|
|
39
|
+
let lastError;
|
|
40
|
+
let attempt = 0;
|
|
41
|
+
while (attempt <= fullConfig.maxRetries) {
|
|
42
|
+
try {
|
|
43
|
+
return await fn();
|
|
44
|
+
} catch (error) {
|
|
45
|
+
lastError = error;
|
|
46
|
+
attempt++;
|
|
47
|
+
if (!shouldRetry(lastError, attempt, fullConfig)) {
|
|
48
|
+
throw lastError;
|
|
49
|
+
}
|
|
50
|
+
const delay = calculateDelay(
|
|
51
|
+
attempt,
|
|
52
|
+
fullConfig.retryDelay,
|
|
53
|
+
fullConfig.retryBackoff,
|
|
54
|
+
fullConfig.maxRetryDelay
|
|
55
|
+
);
|
|
56
|
+
await sleep(delay);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
throw lastError;
|
|
60
|
+
}
|
|
61
|
+
function createRetryConfig(config) {
|
|
62
|
+
return {
|
|
63
|
+
...types.DEFAULT_RETRY_CONFIG,
|
|
64
|
+
...config
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
exports.DEFAULT_RETRY_CONFIG = types.DEFAULT_RETRY_CONFIG;
|
|
68
|
+
exports.calculateDelay = calculateDelay;
|
|
69
|
+
exports.createRetryConfig = createRetryConfig;
|
|
70
|
+
exports.shouldRetry = shouldRetry;
|
|
71
|
+
exports.sleep = sleep;
|
|
72
|
+
exports.withRetry = withRetry;
|
|
73
|
+
//# sourceMappingURL=retry.cjs.map
|