react-native-quick-crypto 0.4.4 → 0.4.5
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/lib/commonjs/Utils.js.map +1 -1
- package/lib/module/Utils.js.map +1 -1
- package/package.json +1 -1
- package/src/Utils.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Utils.ts"],"names":["defaultEncoding","setDefaultEncoding","encoding","getDefaultEncoding","kEmptyObject","Object","freeze","create","isBuffer","buf","Buffer","constructor","name","toArrayBuffer","buffer","slice","byteOffset","byteLength","ab","ArrayBuffer","length","view","Uint8Array","i","binaryLikeToArrayBuffer","input","from","ab2str","toString","validateString","str","isString","Error","validateFunction","f","isStringOrBuffer","val","isView","validateObject","value","options","useDefaultOptions","allowArray","allowFunction","nullable","Array","isArray","validateInt32","min","max","Number","isInteger","validateUint32","positive"],"mappings":"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","sourcesContent":["import { Buffer } from '@craftzdog/react-native-buffer';\n\nexport type BinaryLike = string | ArrayBuffer | Buffer;\n\nexport type BinaryToTextEncoding = 'base64' | 'base64url' | 'hex' | 'binary';\nexport type CharacterEncoding = 'utf8' | 'utf-8' | 'utf16le' | 'latin1';\nexport type LegacyCharacterEncoding = 'ascii' | 'binary' | 'ucs2' | 'ucs-2';\nexport type Encoding =\n | BinaryToTextEncoding\n | CharacterEncoding\n | LegacyCharacterEncoding;\n\n// TODO(osp) should buffer be part of the Encoding type?\nexport type CipherEncoding = Encoding | 'buffer';\n\n// Mimics node behavior for default global encoding\nlet defaultEncoding: CipherEncoding = 'buffer';\n\nexport function setDefaultEncoding(encoding: CipherEncoding) {\n defaultEncoding = encoding;\n}\n\nexport function getDefaultEncoding(): CipherEncoding {\n return defaultEncoding;\n}\n\nexport const kEmptyObject = Object.freeze(Object.create(null));\n\n// Should be used by Cipher (or any other module that requires valid encodings)\n// function slowCases(enc: string) {\n// switch (enc.length) {\n// case 4:\n// if (enc === 'UTF8') return 'utf8';\n// if (enc === 'ucs2' || enc === 'UCS2') return 'utf16le';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'utf8') return 'utf8';\n// if (enc === 'ucs2') return 'utf16le';\n// break;\n// case 3:\n// if (enc === 'hex' || enc === 'HEX' || `${enc}`.toLowerCase() === 'hex')\n// return 'hex';\n// break;\n// case 5:\n// if (enc === 'ascii') return 'ascii';\n// if (enc === 'ucs-2') return 'utf16le';\n// if (enc === 'UTF-8') return 'utf8';\n// if (enc === 'ASCII') return 'ascii';\n// if (enc === 'UCS-2') return 'utf16le';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'utf-8') return 'utf8';\n// if (enc === 'ascii') return 'ascii';\n// if (enc === 'ucs-2') return 'utf16le';\n// break;\n// case 6:\n// if (enc === 'base64') return 'base64';\n// if (enc === 'latin1' || enc === 'binary') return 'latin1';\n// if (enc === 'BASE64') return 'base64';\n// if (enc === 'LATIN1' || enc === 'BINARY') return 'latin1';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'base64') return 'base64';\n// if (enc === 'latin1' || enc === 'binary') return 'latin1';\n// break;\n// case 7:\n// if (\n// enc === 'utf16le' ||\n// enc === 'UTF16LE' ||\n// `${enc}`.toLowerCase() === 'utf16le'\n// )\n// return 'utf16le';\n// break;\n// case 8:\n// if (\n// enc === 'utf-16le' ||\n// enc === 'UTF-16LE' ||\n// `${enc}`.toLowerCase() === 'utf-16le'\n// )\n// return 'utf16le';\n// break;\n// case 9:\n// if (\n// enc === 'base64url' ||\n// enc === 'BASE64URL' ||\n// `${enc}`.toLowerCase() === 'base64url'\n// )\n// return 'base64url';\n// break;\n// default:\n// if (enc === '') return 'utf8';\n// }\n// }\n\n// // Return undefined if there is no match.\n// // Move the \"slow cases\" to a separate function to make sure this function gets\n// // inlined properly. That prioritizes the common case.\n// export function normalizeEncoding(enc?: string) {\n// if (enc == null || enc === 'utf8' || enc === 'utf-8') return 'utf8';\n// return slowCases(enc);\n// }\n\nexport function isBuffer(buf: any): buf is Buffer {\n return buf instanceof Buffer || buf?.constructor?.name === 'Buffer';\n}\n\nexport function toArrayBuffer(buf: Buffer): ArrayBuffer {\n if (buf?.buffer?.slice) {\n return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n }\n const ab = new ArrayBuffer(buf.length);\n const view = new Uint8Array(ab);\n for (let i = 0; i < buf.length; ++i) {\n view[i] = buf[i];\n }\n return ab;\n}\n\nexport function binaryLikeToArrayBuffer(\n input: BinaryLike,\n encoding: string = 'utf-8'\n): ArrayBuffer {\n if (typeof input === 'string') {\n const buffer = Buffer.from(input, encoding);\n\n return buffer.buffer.slice(\n buffer.byteOffset,\n buffer.byteOffset + buffer.byteLength\n );\n }\n\n if (isBuffer(input)) {\n return toArrayBuffer(input);\n }\n\n // TODO add further binary types to BinaryLike, UInt8Array and so for have this array as property\n if ((input as any).buffer) {\n return (input as any).buffer;\n }\n\n if (!(input instanceof ArrayBuffer)) {\n try {\n const buffer = Buffer.from(input);\n return buffer.buffer.slice(\n buffer.byteOffset,\n buffer.byteOffset + buffer.byteLength\n );\n } catch {\n throw 'error';\n }\n }\n return input;\n}\n\nexport function ab2str(buf: ArrayBuffer, encoding: string = 'hex') {\n return Buffer.from(buf).toString(encoding);\n}\n\nexport function validateString(str: any, name?: string): str is string {\n const isString = typeof str === 'string';\n if (isString) {\n throw new Error(`${name} is not a string`);\n }\n return isString;\n}\n\nexport function validateFunction(f: any): f is Function {\n return f != null && typeof f === 'function';\n}\n\nexport function isStringOrBuffer(val: any): val is string | ArrayBuffer {\n return typeof val === 'string' || ArrayBuffer.isView(val);\n}\n\nexport function validateObject<T>(\n value: any,\n name: string,\n options?: {\n allowArray: boolean;\n allowFunction: boolean;\n nullable: boolean;\n } | null\n): value is T {\n const useDefaultOptions = options == null;\n const allowArray = useDefaultOptions ? false : options.allowArray;\n const allowFunction = useDefaultOptions ? false : options.allowFunction;\n const nullable = useDefaultOptions ? false : options.nullable;\n if (\n (!nullable && value === null) ||\n (!allowArray && Array.isArray(value)) ||\n (typeof value !== 'object' &&\n (!allowFunction || typeof value !== 'function'))\n ) {\n throw new Error(`${name} is not a valid object $${value}`);\n }\n return true;\n}\n\nexport function validateInt32(\n value: any,\n name: string,\n min = -2147483648,\n max = 2147483647\n) {\n // The defaults for min and max correspond to the limits of 32-bit integers.\n if (typeof value !== 'number') {\n throw new Error(`Invalid argument - ${name} is not a number: ${value}`);\n }\n if (!Number.isInteger(value)) {\n throw new Error(\n `Argument out of range - ${name} out of integer range: ${value}`\n );\n }\n if (value < min || value > max) {\n throw new Error(\n `Invalid argument - ${name} out of range >= ${min} && <= ${max}: ${value}`\n );\n }\n}\n\nexport function validateUint32(\n value: number,\n name: string,\n positive?: boolean\n) {\n if (typeof value !== 'number') {\n // throw new ERR_INVALID_ARG_TYPE(name, 'number', value);\n throw new Error(`Invalid argument - ${name} is not a number: ${value}`);\n }\n if (!Number.isInteger(value)) {\n // throw new ERR_OUT_OF_RANGE(name, 'an integer', value);\n throw new Error(\n `Argument out of range - ${name} out of integer range: ${value}`\n );\n }\n const min = positive ? 1 : 0;\n // 2 ** 32 === 4294967296\n const max = 4_294_967_295;\n if (value < min || value > max) {\n // throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n throw new Error(\n `Invalid argument - ${name} out of range >= ${min} && <= ${max}: ${value}`\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Utils.ts"],"names":["defaultEncoding","setDefaultEncoding","encoding","getDefaultEncoding","kEmptyObject","Object","freeze","create","isBuffer","buf","Buffer","constructor","name","toArrayBuffer","buffer","slice","byteOffset","byteLength","ab","ArrayBuffer","length","view","Uint8Array","i","binaryLikeToArrayBuffer","input","from","ab2str","toString","validateString","str","isString","Error","validateFunction","f","isStringOrBuffer","val","isView","validateObject","value","options","useDefaultOptions","allowArray","allowFunction","nullable","Array","isArray","validateInt32","min","max","Number","isInteger","validateUint32","positive"],"mappings":"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","sourcesContent":["import { Buffer } from '@craftzdog/react-native-buffer';\n\nexport type BinaryLike = string | ArrayBuffer | Buffer;\n\nexport type BinaryToTextEncoding = 'base64' | 'base64url' | 'hex' | 'binary';\nexport type CharacterEncoding = 'utf8' | 'utf-8' | 'utf16le' | 'latin1';\nexport type LegacyCharacterEncoding = 'ascii' | 'binary' | 'ucs2' | 'ucs-2';\nexport type Encoding =\n | BinaryToTextEncoding\n | CharacterEncoding\n | LegacyCharacterEncoding;\n\n// TODO(osp) should buffer be part of the Encoding type?\nexport type CipherEncoding = Encoding | 'buffer';\n\n// Mimics node behavior for default global encoding\nlet defaultEncoding: CipherEncoding = 'buffer';\n\nexport function setDefaultEncoding(encoding: CipherEncoding) {\n defaultEncoding = encoding;\n}\n\nexport function getDefaultEncoding(): CipherEncoding {\n return defaultEncoding;\n}\n\nexport const kEmptyObject = Object.freeze(Object.create(null));\n\n// Should be used by Cipher (or any other module that requires valid encodings)\n// function slowCases(enc: string) {\n// switch (enc.length) {\n// case 4:\n// if (enc === 'UTF8') return 'utf8';\n// if (enc === 'ucs2' || enc === 'UCS2') return 'utf16le';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'utf8') return 'utf8';\n// if (enc === 'ucs2') return 'utf16le';\n// break;\n// case 3:\n// if (enc === 'hex' || enc === 'HEX' || `${enc}`.toLowerCase() === 'hex')\n// return 'hex';\n// break;\n// case 5:\n// if (enc === 'ascii') return 'ascii';\n// if (enc === 'ucs-2') return 'utf16le';\n// if (enc === 'UTF-8') return 'utf8';\n// if (enc === 'ASCII') return 'ascii';\n// if (enc === 'UCS-2') return 'utf16le';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'utf-8') return 'utf8';\n// if (enc === 'ascii') return 'ascii';\n// if (enc === 'ucs-2') return 'utf16le';\n// break;\n// case 6:\n// if (enc === 'base64') return 'base64';\n// if (enc === 'latin1' || enc === 'binary') return 'latin1';\n// if (enc === 'BASE64') return 'base64';\n// if (enc === 'LATIN1' || enc === 'BINARY') return 'latin1';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'base64') return 'base64';\n// if (enc === 'latin1' || enc === 'binary') return 'latin1';\n// break;\n// case 7:\n// if (\n// enc === 'utf16le' ||\n// enc === 'UTF16LE' ||\n// `${enc}`.toLowerCase() === 'utf16le'\n// )\n// return 'utf16le';\n// break;\n// case 8:\n// if (\n// enc === 'utf-16le' ||\n// enc === 'UTF-16LE' ||\n// `${enc}`.toLowerCase() === 'utf-16le'\n// )\n// return 'utf16le';\n// break;\n// case 9:\n// if (\n// enc === 'base64url' ||\n// enc === 'BASE64URL' ||\n// `${enc}`.toLowerCase() === 'base64url'\n// )\n// return 'base64url';\n// break;\n// default:\n// if (enc === '') return 'utf8';\n// }\n// }\n\n// // Return undefined if there is no match.\n// // Move the \"slow cases\" to a separate function to make sure this function gets\n// // inlined properly. That prioritizes the common case.\n// export function normalizeEncoding(enc?: string) {\n// if (enc == null || enc === 'utf8' || enc === 'utf-8') return 'utf8';\n// return slowCases(enc);\n// }\n\nexport function isBuffer(buf: any): buf is Buffer {\n return buf instanceof Buffer || buf?.constructor?.name === 'Buffer';\n}\n\nexport function toArrayBuffer(buf: Buffer): ArrayBuffer {\n if (buf?.buffer?.slice) {\n return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n }\n const ab = new ArrayBuffer(buf.length);\n const view = new Uint8Array(ab);\n for (let i = 0; i < buf.length; ++i) {\n view[i] = buf[i];\n }\n return ab;\n}\n\nexport function binaryLikeToArrayBuffer(\n input: BinaryLike,\n encoding: string = 'utf-8'\n): ArrayBuffer {\n if (typeof input === 'string') {\n const buffer = Buffer.from(input, encoding);\n\n return buffer.buffer.slice(\n buffer.byteOffset,\n buffer.byteOffset + buffer.byteLength\n );\n }\n\n if (isBuffer(input)) {\n return toArrayBuffer(input);\n }\n\n // TODO add further binary types to BinaryLike, UInt8Array and so for have this array as property\n if ((input as any).buffer) {\n return (input as any).buffer;\n }\n\n if (!(input instanceof ArrayBuffer)) {\n try {\n const buffer = Buffer.from(input);\n return buffer.buffer.slice(\n buffer.byteOffset,\n buffer.byteOffset + buffer.byteLength\n );\n } catch {\n throw 'error';\n }\n }\n return input;\n}\n\nexport function ab2str(buf: ArrayBuffer, encoding: string = 'hex') {\n return Buffer.from(buf).toString(encoding);\n}\n\nexport function validateString(str: any, name?: string): str is string {\n const isString = typeof str === 'string';\n if (isString) {\n throw new Error(`${name} is not a string`);\n }\n return isString;\n}\n\nexport function validateFunction(f: any): f is Function {\n return f != null && typeof f === 'function';\n}\n\nexport function isStringOrBuffer(val: any): val is string | ArrayBuffer {\n return typeof val === 'string' || ArrayBuffer.isView(val);\n}\n\nexport function validateObject<T>(\n value: any,\n name: string,\n options?: {\n allowArray: boolean;\n allowFunction: boolean;\n nullable: boolean;\n } | null\n): value is T {\n const useDefaultOptions = options == null;\n const allowArray = useDefaultOptions ? false : options.allowArray;\n const allowFunction = useDefaultOptions ? false : options.allowFunction;\n const nullable = useDefaultOptions ? false : options.nullable;\n if (\n (!nullable && value === null) ||\n (!allowArray && Array.isArray(value)) ||\n (typeof value !== 'object' &&\n (!allowFunction || typeof value !== 'function'))\n ) {\n throw new Error(`${name} is not a valid object $${value}`);\n }\n return true;\n}\n\nexport function validateInt32(\n value: any,\n name: string,\n min = -2147483648,\n max = 2147483647\n) {\n // The defaults for min and max correspond to the limits of 32-bit integers.\n if (typeof value !== 'number') {\n throw new Error(`Invalid argument - ${name} is not a number: ${value}`);\n }\n if (!Number.isInteger(value)) {\n throw new Error(\n `Argument out of range - ${name} out of integer range: ${value}`\n );\n }\n if (value < min || value > max) {\n throw new Error(\n `Invalid argument - ${name} out of range >= ${min} && <= ${max}: ${value}`\n );\n }\n}\n\nexport function validateUint32(\n value: number,\n name: string,\n positive?: boolean\n) {\n if (typeof value !== 'number') {\n // throw new ERR_INVALID_ARG_TYPE(name, 'number', value);\n throw new Error(`Invalid argument - ${name} is not a number: ${value}`);\n }\n if (!Number.isInteger(value)) {\n // throw new ERR_OUT_OF_RANGE(name, 'an integer', value);\n throw new Error(\n `Argument out of range - ${name} out of integer range: ${value}`\n );\n }\n const min = positive ? 1 : 0;\n // 2 ** 32 === 4294967296\n const max = 4294967295;\n if (value < min || value > max) {\n // throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n throw new Error(\n `Invalid argument - ${name} out of range >= ${min} && <= ${max}: ${value}`\n );\n }\n}\n"]}
|
package/lib/module/Utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Utils.ts"],"names":["Buffer","defaultEncoding","setDefaultEncoding","encoding","getDefaultEncoding","kEmptyObject","Object","freeze","create","isBuffer","buf","constructor","name","toArrayBuffer","buffer","slice","byteOffset","byteLength","ab","ArrayBuffer","length","view","Uint8Array","i","binaryLikeToArrayBuffer","input","from","ab2str","toString","validateString","str","isString","Error","validateFunction","f","isStringOrBuffer","val","isView","validateObject","value","options","useDefaultOptions","allowArray","allowFunction","nullable","Array","isArray","validateInt32","min","max","Number","isInteger","validateUint32","positive"],"mappings":"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","sourcesContent":["import { Buffer } from '@craftzdog/react-native-buffer';\n\nexport type BinaryLike = string | ArrayBuffer | Buffer;\n\nexport type BinaryToTextEncoding = 'base64' | 'base64url' | 'hex' | 'binary';\nexport type CharacterEncoding = 'utf8' | 'utf-8' | 'utf16le' | 'latin1';\nexport type LegacyCharacterEncoding = 'ascii' | 'binary' | 'ucs2' | 'ucs-2';\nexport type Encoding =\n | BinaryToTextEncoding\n | CharacterEncoding\n | LegacyCharacterEncoding;\n\n// TODO(osp) should buffer be part of the Encoding type?\nexport type CipherEncoding = Encoding | 'buffer';\n\n// Mimics node behavior for default global encoding\nlet defaultEncoding: CipherEncoding = 'buffer';\n\nexport function setDefaultEncoding(encoding: CipherEncoding) {\n defaultEncoding = encoding;\n}\n\nexport function getDefaultEncoding(): CipherEncoding {\n return defaultEncoding;\n}\n\nexport const kEmptyObject = Object.freeze(Object.create(null));\n\n// Should be used by Cipher (or any other module that requires valid encodings)\n// function slowCases(enc: string) {\n// switch (enc.length) {\n// case 4:\n// if (enc === 'UTF8') return 'utf8';\n// if (enc === 'ucs2' || enc === 'UCS2') return 'utf16le';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'utf8') return 'utf8';\n// if (enc === 'ucs2') return 'utf16le';\n// break;\n// case 3:\n// if (enc === 'hex' || enc === 'HEX' || `${enc}`.toLowerCase() === 'hex')\n// return 'hex';\n// break;\n// case 5:\n// if (enc === 'ascii') return 'ascii';\n// if (enc === 'ucs-2') return 'utf16le';\n// if (enc === 'UTF-8') return 'utf8';\n// if (enc === 'ASCII') return 'ascii';\n// if (enc === 'UCS-2') return 'utf16le';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'utf-8') return 'utf8';\n// if (enc === 'ascii') return 'ascii';\n// if (enc === 'ucs-2') return 'utf16le';\n// break;\n// case 6:\n// if (enc === 'base64') return 'base64';\n// if (enc === 'latin1' || enc === 'binary') return 'latin1';\n// if (enc === 'BASE64') return 'base64';\n// if (enc === 'LATIN1' || enc === 'BINARY') return 'latin1';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'base64') return 'base64';\n// if (enc === 'latin1' || enc === 'binary') return 'latin1';\n// break;\n// case 7:\n// if (\n// enc === 'utf16le' ||\n// enc === 'UTF16LE' ||\n// `${enc}`.toLowerCase() === 'utf16le'\n// )\n// return 'utf16le';\n// break;\n// case 8:\n// if (\n// enc === 'utf-16le' ||\n// enc === 'UTF-16LE' ||\n// `${enc}`.toLowerCase() === 'utf-16le'\n// )\n// return 'utf16le';\n// break;\n// case 9:\n// if (\n// enc === 'base64url' ||\n// enc === 'BASE64URL' ||\n// `${enc}`.toLowerCase() === 'base64url'\n// )\n// return 'base64url';\n// break;\n// default:\n// if (enc === '') return 'utf8';\n// }\n// }\n\n// // Return undefined if there is no match.\n// // Move the \"slow cases\" to a separate function to make sure this function gets\n// // inlined properly. That prioritizes the common case.\n// export function normalizeEncoding(enc?: string) {\n// if (enc == null || enc === 'utf8' || enc === 'utf-8') return 'utf8';\n// return slowCases(enc);\n// }\n\nexport function isBuffer(buf: any): buf is Buffer {\n return buf instanceof Buffer || buf?.constructor?.name === 'Buffer';\n}\n\nexport function toArrayBuffer(buf: Buffer): ArrayBuffer {\n if (buf?.buffer?.slice) {\n return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n }\n const ab = new ArrayBuffer(buf.length);\n const view = new Uint8Array(ab);\n for (let i = 0; i < buf.length; ++i) {\n view[i] = buf[i];\n }\n return ab;\n}\n\nexport function binaryLikeToArrayBuffer(\n input: BinaryLike,\n encoding: string = 'utf-8'\n): ArrayBuffer {\n if (typeof input === 'string') {\n const buffer = Buffer.from(input, encoding);\n\n return buffer.buffer.slice(\n buffer.byteOffset,\n buffer.byteOffset + buffer.byteLength\n );\n }\n\n if (isBuffer(input)) {\n return toArrayBuffer(input);\n }\n\n // TODO add further binary types to BinaryLike, UInt8Array and so for have this array as property\n if ((input as any).buffer) {\n return (input as any).buffer;\n }\n\n if (!(input instanceof ArrayBuffer)) {\n try {\n const buffer = Buffer.from(input);\n return buffer.buffer.slice(\n buffer.byteOffset,\n buffer.byteOffset + buffer.byteLength\n );\n } catch {\n throw 'error';\n }\n }\n return input;\n}\n\nexport function ab2str(buf: ArrayBuffer, encoding: string = 'hex') {\n return Buffer.from(buf).toString(encoding);\n}\n\nexport function validateString(str: any, name?: string): str is string {\n const isString = typeof str === 'string';\n if (isString) {\n throw new Error(`${name} is not a string`);\n }\n return isString;\n}\n\nexport function validateFunction(f: any): f is Function {\n return f != null && typeof f === 'function';\n}\n\nexport function isStringOrBuffer(val: any): val is string | ArrayBuffer {\n return typeof val === 'string' || ArrayBuffer.isView(val);\n}\n\nexport function validateObject<T>(\n value: any,\n name: string,\n options?: {\n allowArray: boolean;\n allowFunction: boolean;\n nullable: boolean;\n } | null\n): value is T {\n const useDefaultOptions = options == null;\n const allowArray = useDefaultOptions ? false : options.allowArray;\n const allowFunction = useDefaultOptions ? false : options.allowFunction;\n const nullable = useDefaultOptions ? false : options.nullable;\n if (\n (!nullable && value === null) ||\n (!allowArray && Array.isArray(value)) ||\n (typeof value !== 'object' &&\n (!allowFunction || typeof value !== 'function'))\n ) {\n throw new Error(`${name} is not a valid object $${value}`);\n }\n return true;\n}\n\nexport function validateInt32(\n value: any,\n name: string,\n min = -2147483648,\n max = 2147483647\n) {\n // The defaults for min and max correspond to the limits of 32-bit integers.\n if (typeof value !== 'number') {\n throw new Error(`Invalid argument - ${name} is not a number: ${value}`);\n }\n if (!Number.isInteger(value)) {\n throw new Error(\n `Argument out of range - ${name} out of integer range: ${value}`\n );\n }\n if (value < min || value > max) {\n throw new Error(\n `Invalid argument - ${name} out of range >= ${min} && <= ${max}: ${value}`\n );\n }\n}\n\nexport function validateUint32(\n value: number,\n name: string,\n positive?: boolean\n) {\n if (typeof value !== 'number') {\n // throw new ERR_INVALID_ARG_TYPE(name, 'number', value);\n throw new Error(`Invalid argument - ${name} is not a number: ${value}`);\n }\n if (!Number.isInteger(value)) {\n // throw new ERR_OUT_OF_RANGE(name, 'an integer', value);\n throw new Error(\n `Argument out of range - ${name} out of integer range: ${value}`\n );\n }\n const min = positive ? 1 : 0;\n // 2 ** 32 === 4294967296\n const max = 4_294_967_295;\n if (value < min || value > max) {\n // throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n throw new Error(\n `Invalid argument - ${name} out of range >= ${min} && <= ${max}: ${value}`\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Utils.ts"],"names":["Buffer","defaultEncoding","setDefaultEncoding","encoding","getDefaultEncoding","kEmptyObject","Object","freeze","create","isBuffer","buf","constructor","name","toArrayBuffer","buffer","slice","byteOffset","byteLength","ab","ArrayBuffer","length","view","Uint8Array","i","binaryLikeToArrayBuffer","input","from","ab2str","toString","validateString","str","isString","Error","validateFunction","f","isStringOrBuffer","val","isView","validateObject","value","options","useDefaultOptions","allowArray","allowFunction","nullable","Array","isArray","validateInt32","min","max","Number","isInteger","validateUint32","positive"],"mappings":"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","sourcesContent":["import { Buffer } from '@craftzdog/react-native-buffer';\n\nexport type BinaryLike = string | ArrayBuffer | Buffer;\n\nexport type BinaryToTextEncoding = 'base64' | 'base64url' | 'hex' | 'binary';\nexport type CharacterEncoding = 'utf8' | 'utf-8' | 'utf16le' | 'latin1';\nexport type LegacyCharacterEncoding = 'ascii' | 'binary' | 'ucs2' | 'ucs-2';\nexport type Encoding =\n | BinaryToTextEncoding\n | CharacterEncoding\n | LegacyCharacterEncoding;\n\n// TODO(osp) should buffer be part of the Encoding type?\nexport type CipherEncoding = Encoding | 'buffer';\n\n// Mimics node behavior for default global encoding\nlet defaultEncoding: CipherEncoding = 'buffer';\n\nexport function setDefaultEncoding(encoding: CipherEncoding) {\n defaultEncoding = encoding;\n}\n\nexport function getDefaultEncoding(): CipherEncoding {\n return defaultEncoding;\n}\n\nexport const kEmptyObject = Object.freeze(Object.create(null));\n\n// Should be used by Cipher (or any other module that requires valid encodings)\n// function slowCases(enc: string) {\n// switch (enc.length) {\n// case 4:\n// if (enc === 'UTF8') return 'utf8';\n// if (enc === 'ucs2' || enc === 'UCS2') return 'utf16le';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'utf8') return 'utf8';\n// if (enc === 'ucs2') return 'utf16le';\n// break;\n// case 3:\n// if (enc === 'hex' || enc === 'HEX' || `${enc}`.toLowerCase() === 'hex')\n// return 'hex';\n// break;\n// case 5:\n// if (enc === 'ascii') return 'ascii';\n// if (enc === 'ucs-2') return 'utf16le';\n// if (enc === 'UTF-8') return 'utf8';\n// if (enc === 'ASCII') return 'ascii';\n// if (enc === 'UCS-2') return 'utf16le';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'utf-8') return 'utf8';\n// if (enc === 'ascii') return 'ascii';\n// if (enc === 'ucs-2') return 'utf16le';\n// break;\n// case 6:\n// if (enc === 'base64') return 'base64';\n// if (enc === 'latin1' || enc === 'binary') return 'latin1';\n// if (enc === 'BASE64') return 'base64';\n// if (enc === 'LATIN1' || enc === 'BINARY') return 'latin1';\n// enc = `${enc}`.toLowerCase();\n// if (enc === 'base64') return 'base64';\n// if (enc === 'latin1' || enc === 'binary') return 'latin1';\n// break;\n// case 7:\n// if (\n// enc === 'utf16le' ||\n// enc === 'UTF16LE' ||\n// `${enc}`.toLowerCase() === 'utf16le'\n// )\n// return 'utf16le';\n// break;\n// case 8:\n// if (\n// enc === 'utf-16le' ||\n// enc === 'UTF-16LE' ||\n// `${enc}`.toLowerCase() === 'utf-16le'\n// )\n// return 'utf16le';\n// break;\n// case 9:\n// if (\n// enc === 'base64url' ||\n// enc === 'BASE64URL' ||\n// `${enc}`.toLowerCase() === 'base64url'\n// )\n// return 'base64url';\n// break;\n// default:\n// if (enc === '') return 'utf8';\n// }\n// }\n\n// // Return undefined if there is no match.\n// // Move the \"slow cases\" to a separate function to make sure this function gets\n// // inlined properly. That prioritizes the common case.\n// export function normalizeEncoding(enc?: string) {\n// if (enc == null || enc === 'utf8' || enc === 'utf-8') return 'utf8';\n// return slowCases(enc);\n// }\n\nexport function isBuffer(buf: any): buf is Buffer {\n return buf instanceof Buffer || buf?.constructor?.name === 'Buffer';\n}\n\nexport function toArrayBuffer(buf: Buffer): ArrayBuffer {\n if (buf?.buffer?.slice) {\n return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n }\n const ab = new ArrayBuffer(buf.length);\n const view = new Uint8Array(ab);\n for (let i = 0; i < buf.length; ++i) {\n view[i] = buf[i];\n }\n return ab;\n}\n\nexport function binaryLikeToArrayBuffer(\n input: BinaryLike,\n encoding: string = 'utf-8'\n): ArrayBuffer {\n if (typeof input === 'string') {\n const buffer = Buffer.from(input, encoding);\n\n return buffer.buffer.slice(\n buffer.byteOffset,\n buffer.byteOffset + buffer.byteLength\n );\n }\n\n if (isBuffer(input)) {\n return toArrayBuffer(input);\n }\n\n // TODO add further binary types to BinaryLike, UInt8Array and so for have this array as property\n if ((input as any).buffer) {\n return (input as any).buffer;\n }\n\n if (!(input instanceof ArrayBuffer)) {\n try {\n const buffer = Buffer.from(input);\n return buffer.buffer.slice(\n buffer.byteOffset,\n buffer.byteOffset + buffer.byteLength\n );\n } catch {\n throw 'error';\n }\n }\n return input;\n}\n\nexport function ab2str(buf: ArrayBuffer, encoding: string = 'hex') {\n return Buffer.from(buf).toString(encoding);\n}\n\nexport function validateString(str: any, name?: string): str is string {\n const isString = typeof str === 'string';\n if (isString) {\n throw new Error(`${name} is not a string`);\n }\n return isString;\n}\n\nexport function validateFunction(f: any): f is Function {\n return f != null && typeof f === 'function';\n}\n\nexport function isStringOrBuffer(val: any): val is string | ArrayBuffer {\n return typeof val === 'string' || ArrayBuffer.isView(val);\n}\n\nexport function validateObject<T>(\n value: any,\n name: string,\n options?: {\n allowArray: boolean;\n allowFunction: boolean;\n nullable: boolean;\n } | null\n): value is T {\n const useDefaultOptions = options == null;\n const allowArray = useDefaultOptions ? false : options.allowArray;\n const allowFunction = useDefaultOptions ? false : options.allowFunction;\n const nullable = useDefaultOptions ? false : options.nullable;\n if (\n (!nullable && value === null) ||\n (!allowArray && Array.isArray(value)) ||\n (typeof value !== 'object' &&\n (!allowFunction || typeof value !== 'function'))\n ) {\n throw new Error(`${name} is not a valid object $${value}`);\n }\n return true;\n}\n\nexport function validateInt32(\n value: any,\n name: string,\n min = -2147483648,\n max = 2147483647\n) {\n // The defaults for min and max correspond to the limits of 32-bit integers.\n if (typeof value !== 'number') {\n throw new Error(`Invalid argument - ${name} is not a number: ${value}`);\n }\n if (!Number.isInteger(value)) {\n throw new Error(\n `Argument out of range - ${name} out of integer range: ${value}`\n );\n }\n if (value < min || value > max) {\n throw new Error(\n `Invalid argument - ${name} out of range >= ${min} && <= ${max}: ${value}`\n );\n }\n}\n\nexport function validateUint32(\n value: number,\n name: string,\n positive?: boolean\n) {\n if (typeof value !== 'number') {\n // throw new ERR_INVALID_ARG_TYPE(name, 'number', value);\n throw new Error(`Invalid argument - ${name} is not a number: ${value}`);\n }\n if (!Number.isInteger(value)) {\n // throw new ERR_OUT_OF_RANGE(name, 'an integer', value);\n throw new Error(\n `Argument out of range - ${name} out of integer range: ${value}`\n );\n }\n const min = positive ? 1 : 0;\n // 2 ** 32 === 4294967296\n const max = 4294967295;\n if (value < min || value > max) {\n // throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n throw new Error(\n `Invalid argument - ${name} out of range >= ${min} && <= ${max}: ${value}`\n );\n }\n}\n"]}
|
package/package.json
CHANGED
package/src/Utils.ts
CHANGED
|
@@ -232,7 +232,7 @@ export function validateUint32(
|
|
|
232
232
|
}
|
|
233
233
|
const min = positive ? 1 : 0;
|
|
234
234
|
// 2 ** 32 === 4294967296
|
|
235
|
-
const max =
|
|
235
|
+
const max = 4294967295;
|
|
236
236
|
if (value < min || value > max) {
|
|
237
237
|
// throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);
|
|
238
238
|
throw new Error(
|