@hyperfrontend/cryptography
Advanced tools
| 'use strict'; | ||
| const { isArray } = require('../immutable-api-utils/built-in-copy/array/index.cjs.js'); | ||
| const { createError } = require('../immutable-api-utils/built-in-copy/error/index.cjs.js'); | ||
| const { freeze, keys: keys$1 } = require('../immutable-api-utils/built-in-copy/object/index.cjs.js'); | ||
| const { createMap } = require('../immutable-api-utils/built-in-copy/map/index.cjs.js'); | ||
| const { createDate } = require('../immutable-api-utils/built-in-copy/date/index.cjs.js'); | ||
| const { random, round } = require('../immutable-api-utils/built-in-copy/math/index.cjs.js'); | ||
| const isMarker = (text) => { | ||
| if (typeof text !== 'string' || !text.startsWith('__$')) | ||
| return false; | ||
| return /^__\$[0-9]+$/.test(text); | ||
| }; | ||
| const registeredClasses = []; | ||
| const registeredIterableClasses = [ | ||
| { | ||
| classRef: Array, | ||
| instantiate: () => [], | ||
| getKeys: (target) => { | ||
| const keysArray = keys$1(target); | ||
| if (getConfig().detectCircularReferences) { | ||
| return keysArray.filter((key) => !isMarker(key)); | ||
| } | ||
| return keysArray; | ||
| }, | ||
| read: (target, key) => target[key], | ||
| write: (target, value, key) => (target[key] = value), | ||
| remove: (target, value) => target.splice(value, 1), | ||
| }, | ||
| { | ||
| classRef: Object, | ||
| instantiate: () => ({}), | ||
| getKeys: (target) => { | ||
| const keysArray = keys$1(target); | ||
| if (getConfig().detectCircularReferences) { | ||
| return keysArray.filter((key) => !isMarker(key)); | ||
| } | ||
| return keysArray; | ||
| }, | ||
| read: (target, key) => target[key], | ||
| write: (target, value, key) => (target[key] = value), | ||
| remove: (target, value) => delete target[value], | ||
| }, | ||
| ]; | ||
| let samePositionOfOwnProperties = false; | ||
| let detectCircularReferences = false; | ||
| const getConfig = () => ({ | ||
| samePositionOfOwnProperties, | ||
| detectCircularReferences, | ||
| }); | ||
| const getKeysFromIterable = (target, dataType) => { | ||
| if (dataType === 'array') | ||
| dataType = Array.name; | ||
| if (dataType === 'object') | ||
| dataType = Object.name; | ||
| const iterableClass = registeredIterableClasses.find(({ classRef }) => dataType === classRef.name); | ||
| if (iterableClass === undefined) | ||
| return []; | ||
| return iterableClass.getKeys(target); | ||
| }; | ||
| const getType = (target) => { | ||
| if (target === null) | ||
| return 'null'; | ||
| const nativeDataType = typeof target; | ||
| if (nativeDataType === 'object') { | ||
| if (isArray(target)) | ||
| return 'array'; | ||
| for (const registeredClass of registeredClasses) { | ||
| if (target instanceof registeredClass) | ||
| return registeredClass.name; | ||
| } | ||
| } | ||
| return nativeDataType; | ||
| }; | ||
| const getIterableTypes = () => registeredIterableClasses.map(({ classRef }) => { | ||
| const name = classRef.name; | ||
| if (name === Object.name) | ||
| return 'object'; | ||
| if (name === Array.name) | ||
| return 'array'; | ||
| return name; | ||
| }); | ||
| const isIterableType = (dataType) => getIterableTypes().includes(dataType); | ||
| const isIterable = (target) => isIterableType(getType(target)); | ||
| const marker = () => { | ||
| const randomValue = round(random() * 10000000000000); | ||
| const sequential = createDate().getTime(); | ||
| const unique = `${randomValue}${sequential}`; | ||
| const prefix = `__$`; | ||
| return `${prefix}${unique}`; | ||
| }; | ||
| const referenceStack = () => { | ||
| const records = createMap(); | ||
| const flag = marker(); | ||
| const exists = (ref) => (isIterable(ref) ? flag in ref && records.has(ref[flag]) : false); | ||
| const add = (ref) => { | ||
| if (!isIterable(ref) || exists(ref)) | ||
| return; | ||
| ref[flag] = Symbol(); | ||
| records.set(ref[flag], [flag, ref, records.size]); | ||
| }; | ||
| const lastSeen = (ref) => { | ||
| if (!isIterable(ref)) | ||
| return null; | ||
| const record = records.get(ref[flag]); | ||
| return record ? record[2] - records.size : null; | ||
| }; | ||
| const clear = () => (records.forEach(([key, ref]) => { | ||
| delete ref[key]; | ||
| }), | ||
| records.clear()); | ||
| return { | ||
| add: (ref) => add(ref), | ||
| exists: (ref) => exists(ref), | ||
| lastSeen: (ref) => lastSeen(ref), | ||
| clear: () => clear(), | ||
| get size() { | ||
| return records.size; | ||
| }, | ||
| }; | ||
| }; | ||
| const errorMessage = (thing, type) => `Expected ${thing} to be ${type}.`; | ||
| const nextIterationDetails = (path, key, value) => ({ | ||
| nextPath: [...path, key], | ||
| nextValue: value[key], | ||
| }); | ||
| const circularDependencyTraversal = (condition, callback, config, key, path, value, parent, state, stack, root = false) => { | ||
| if (stack.exists(value)) | ||
| return state; | ||
| const ok = condition(config, key, value, path, parent); | ||
| if (config.exitEarly) | ||
| return state; | ||
| if (ok) | ||
| callback(key, value, path, state, parent); | ||
| stack.add(value); | ||
| const type = getType(value); | ||
| if (!isIterableType(type)) | ||
| return state; | ||
| const keys = getKeysFromIterable(value, type); | ||
| keys.forEach((key) => { | ||
| const { nextPath, nextValue } = nextIterationDetails(path, key, value); | ||
| circularDependencyTraversal(condition, callback, config, key, nextPath, nextValue, value, state, stack); | ||
| }); | ||
| if (root) | ||
| stack.clear(); | ||
| return state; | ||
| }; | ||
| const nonCircularDependencyTraversal = (condition, callback, config, key, path, value, parent, state) => { | ||
| const ok = condition(config, key, value, path, parent); | ||
| if (config.exitEarly) | ||
| return state; | ||
| if (ok) | ||
| callback(key, value, path, state, parent); | ||
| const type = getType(value); | ||
| if (!isIterableType(type)) | ||
| return state; | ||
| const keys = getKeysFromIterable(value, type); | ||
| keys.forEach((key) => { | ||
| const { nextPath, nextValue } = nextIterationDetails(path, key, value); | ||
| nonCircularDependencyTraversal(condition, callback, config, key, nextPath, nextValue, value, state); | ||
| }); | ||
| return state; | ||
| }; | ||
| const traversal = (target, condition, callback, options, state) => { | ||
| if (typeof callback !== 'function') | ||
| throw createError(errorMessage('callback', 'a function')); | ||
| if (!(typeof options === 'object' && !isArray(options))) | ||
| throw createError(errorMessage('options', 'an object')); | ||
| if (!isArray(options.depth)) | ||
| throw createError(errorMessage('options.depth', 'an array')); | ||
| const [startDepth, maxDepth] = options.depth; | ||
| if (startDepth !== void 0 && typeof startDepth !== 'number') | ||
| throw createError(errorMessage('options.depth.0', 'a number')); | ||
| if (maxDepth !== void 0) { | ||
| const maxDepthType = typeof maxDepth; | ||
| if (!['number', 'string'].includes(maxDepthType)) | ||
| throw createError(errorMessage('options.depth.1', 'a number or a string')); | ||
| if (maxDepthType === 'string' && maxDepth !== '*') | ||
| throw createError("Only valid string value in options.depth.1 is '*'."); | ||
| } | ||
| const config = { | ||
| depth: freeze([options.depth[0] ?? 0, options.depth[1] ?? '*']), | ||
| exitEarly: false, | ||
| }; | ||
| const initialArgs = [condition, callback, config, '', [], target, void 0, state]; | ||
| if (getConfig().detectCircularReferences) | ||
| return circularDependencyTraversal(...initialArgs, referenceStack(), true); | ||
| return nonCircularDependencyTraversal(...initialArgs); | ||
| }; | ||
| const createTraversal = (condition) => (target, callback, options, state) => traversal(target, condition, callback, options ?? { depth: [0, '*'] }, state ?? {}); | ||
| const condition = (config, key, value, path) => !(path.length < config.depth[0] || config.depth[1] < path.length); | ||
| const traverseBetweenDepthRange = createTraversal(condition); | ||
| exports.createTraversal = createTraversal; | ||
| exports.getConfig = getConfig; | ||
| exports.getIterableTypes = getIterableTypes; | ||
| exports.getKeysFromIterable = getKeysFromIterable; | ||
| exports.getType = getType; | ||
| exports.isIterable = isIterable; | ||
| exports.isIterableType = isIterableType; | ||
| exports.isMarker = isMarker; | ||
| exports.marker = marker; | ||
| exports.referenceStack = referenceStack; | ||
| exports.registeredClasses = registeredClasses; | ||
| exports.registeredIterableClasses = registeredIterableClasses; |
| import { isArray } from '../immutable-api-utils/built-in-copy/array/index.esm.js'; | ||
| import { createError } from '../immutable-api-utils/built-in-copy/error/index.esm.js'; | ||
| import { keys, freeze } from '../immutable-api-utils/built-in-copy/object/index.esm.js'; | ||
| import { createMap } from '../immutable-api-utils/built-in-copy/map/index.esm.js'; | ||
| import { createDate } from '../immutable-api-utils/built-in-copy/date/index.esm.js'; | ||
| import { round, random } from '../immutable-api-utils/built-in-copy/math/index.esm.js'; | ||
| const isMarker = (text) => { | ||
| if (typeof text !== 'string' || !text.startsWith('__$')) | ||
| return false; | ||
| return /^__\$[0-9]+$/.test(text); | ||
| }; | ||
| const registeredClasses = []; | ||
| const registeredIterableClasses = [ | ||
| { | ||
| classRef: Array, | ||
| instantiate: () => [], | ||
| getKeys: (target) => { | ||
| const keysArray = keys(target); | ||
| if (getConfig().detectCircularReferences) { | ||
| return keysArray.filter((key) => !isMarker(key)); | ||
| } | ||
| return keysArray; | ||
| }, | ||
| read: (target, key) => target[key], | ||
| write: (target, value, key) => (target[key] = value), | ||
| remove: (target, value) => target.splice(value, 1), | ||
| }, | ||
| { | ||
| classRef: Object, | ||
| instantiate: () => ({}), | ||
| getKeys: (target) => { | ||
| const keysArray = keys(target); | ||
| if (getConfig().detectCircularReferences) { | ||
| return keysArray.filter((key) => !isMarker(key)); | ||
| } | ||
| return keysArray; | ||
| }, | ||
| read: (target, key) => target[key], | ||
| write: (target, value, key) => (target[key] = value), | ||
| remove: (target, value) => delete target[value], | ||
| }, | ||
| ]; | ||
| let samePositionOfOwnProperties = false; | ||
| let detectCircularReferences = false; | ||
| const getConfig = () => ({ | ||
| samePositionOfOwnProperties, | ||
| detectCircularReferences, | ||
| }); | ||
| const getKeysFromIterable = (target, dataType) => { | ||
| if (dataType === 'array') | ||
| dataType = Array.name; | ||
| if (dataType === 'object') | ||
| dataType = Object.name; | ||
| const iterableClass = registeredIterableClasses.find(({ classRef }) => dataType === classRef.name); | ||
| if (iterableClass === undefined) | ||
| return []; | ||
| return iterableClass.getKeys(target); | ||
| }; | ||
| const getType = (target) => { | ||
| if (target === null) | ||
| return 'null'; | ||
| const nativeDataType = typeof target; | ||
| if (nativeDataType === 'object') { | ||
| if (isArray(target)) | ||
| return 'array'; | ||
| for (const registeredClass of registeredClasses) { | ||
| if (target instanceof registeredClass) | ||
| return registeredClass.name; | ||
| } | ||
| } | ||
| return nativeDataType; | ||
| }; | ||
| const getIterableTypes = () => registeredIterableClasses.map(({ classRef }) => { | ||
| const name = classRef.name; | ||
| if (name === Object.name) | ||
| return 'object'; | ||
| if (name === Array.name) | ||
| return 'array'; | ||
| return name; | ||
| }); | ||
| const isIterableType = (dataType) => getIterableTypes().includes(dataType); | ||
| const isIterable = (target) => isIterableType(getType(target)); | ||
| const marker = () => { | ||
| const randomValue = round(random() * 10000000000000); | ||
| const sequential = createDate().getTime(); | ||
| const unique = `${randomValue}${sequential}`; | ||
| const prefix = `__$`; | ||
| return `${prefix}${unique}`; | ||
| }; | ||
| const referenceStack = () => { | ||
| const records = createMap(); | ||
| const flag = marker(); | ||
| const exists = (ref) => (isIterable(ref) ? flag in ref && records.has(ref[flag]) : false); | ||
| const add = (ref) => { | ||
| if (!isIterable(ref) || exists(ref)) | ||
| return; | ||
| ref[flag] = Symbol(); | ||
| records.set(ref[flag], [flag, ref, records.size]); | ||
| }; | ||
| const lastSeen = (ref) => { | ||
| if (!isIterable(ref)) | ||
| return null; | ||
| const record = records.get(ref[flag]); | ||
| return record ? record[2] - records.size : null; | ||
| }; | ||
| const clear = () => (records.forEach(([key, ref]) => { | ||
| delete ref[key]; | ||
| }), | ||
| records.clear()); | ||
| return { | ||
| add: (ref) => add(ref), | ||
| exists: (ref) => exists(ref), | ||
| lastSeen: (ref) => lastSeen(ref), | ||
| clear: () => clear(), | ||
| get size() { | ||
| return records.size; | ||
| }, | ||
| }; | ||
| }; | ||
| const errorMessage = (thing, type) => `Expected ${thing} to be ${type}.`; | ||
| const nextIterationDetails = (path, key, value) => ({ | ||
| nextPath: [...path, key], | ||
| nextValue: value[key], | ||
| }); | ||
| const circularDependencyTraversal = (condition, callback, config, key, path, value, parent, state, stack, root = false) => { | ||
| if (stack.exists(value)) | ||
| return state; | ||
| const ok = condition(config, key, value, path, parent); | ||
| if (config.exitEarly) | ||
| return state; | ||
| if (ok) | ||
| callback(key, value, path, state, parent); | ||
| stack.add(value); | ||
| const type = getType(value); | ||
| if (!isIterableType(type)) | ||
| return state; | ||
| const keys = getKeysFromIterable(value, type); | ||
| keys.forEach((key) => { | ||
| const { nextPath, nextValue } = nextIterationDetails(path, key, value); | ||
| circularDependencyTraversal(condition, callback, config, key, nextPath, nextValue, value, state, stack); | ||
| }); | ||
| if (root) | ||
| stack.clear(); | ||
| return state; | ||
| }; | ||
| const nonCircularDependencyTraversal = (condition, callback, config, key, path, value, parent, state) => { | ||
| const ok = condition(config, key, value, path, parent); | ||
| if (config.exitEarly) | ||
| return state; | ||
| if (ok) | ||
| callback(key, value, path, state, parent); | ||
| const type = getType(value); | ||
| if (!isIterableType(type)) | ||
| return state; | ||
| const keys = getKeysFromIterable(value, type); | ||
| keys.forEach((key) => { | ||
| const { nextPath, nextValue } = nextIterationDetails(path, key, value); | ||
| nonCircularDependencyTraversal(condition, callback, config, key, nextPath, nextValue, value, state); | ||
| }); | ||
| return state; | ||
| }; | ||
| const traversal = (target, condition, callback, options, state) => { | ||
| if (typeof callback !== 'function') | ||
| throw createError(errorMessage('callback', 'a function')); | ||
| if (!(typeof options === 'object' && !isArray(options))) | ||
| throw createError(errorMessage('options', 'an object')); | ||
| if (!isArray(options.depth)) | ||
| throw createError(errorMessage('options.depth', 'an array')); | ||
| const [startDepth, maxDepth] = options.depth; | ||
| if (startDepth !== void 0 && typeof startDepth !== 'number') | ||
| throw createError(errorMessage('options.depth.0', 'a number')); | ||
| if (maxDepth !== void 0) { | ||
| const maxDepthType = typeof maxDepth; | ||
| if (!['number', 'string'].includes(maxDepthType)) | ||
| throw createError(errorMessage('options.depth.1', 'a number or a string')); | ||
| if (maxDepthType === 'string' && maxDepth !== '*') | ||
| throw createError("Only valid string value in options.depth.1 is '*'."); | ||
| } | ||
| const config = { | ||
| depth: freeze([options.depth[0] ?? 0, options.depth[1] ?? '*']), | ||
| exitEarly: false, | ||
| }; | ||
| const initialArgs = [condition, callback, config, '', [], target, void 0, state]; | ||
| if (getConfig().detectCircularReferences) | ||
| return circularDependencyTraversal(...initialArgs, referenceStack(), true); | ||
| return nonCircularDependencyTraversal(...initialArgs); | ||
| }; | ||
| const createTraversal = (condition) => (target, callback, options, state) => traversal(target, condition, callback, options ?? { depth: [0, '*'] }, state ?? {}); | ||
| const condition = (config, key, value, path) => !(path.length < config.depth[0] || config.depth[1] < path.length); | ||
| const traverseBetweenDepthRange = createTraversal(condition); | ||
| export { createTraversal, getConfig, getIterableTypes, getKeysFromIterable, getType, isIterable, isIterableType, isMarker, marker, referenceStack, registeredClasses, registeredIterableClasses }; |
| 'use strict'; | ||
| const _Array = globalThis.Array; | ||
| const isArray = _Array.isArray; | ||
| const from = _Array.from; | ||
| exports.from = from; | ||
| exports.isArray = isArray; |
| const _Array = globalThis.Array; | ||
| const isArray = _Array.isArray; | ||
| const from = _Array.from; | ||
| export { from, isArray }; |
| 'use strict'; | ||
| const _Date = globalThis.Date; | ||
| const _Reflect = globalThis.Reflect; | ||
| function createDate(...args) { | ||
| return _Reflect.construct(_Date, args); | ||
| } | ||
| exports.createDate = createDate; |
| const _Date = globalThis.Date; | ||
| const _Reflect = globalThis.Reflect; | ||
| function createDate(...args) { | ||
| return _Reflect.construct(_Date, args); | ||
| } | ||
| export { createDate }; |
| 'use strict'; | ||
| const _TextEncoder = globalThis.TextEncoder; | ||
| const _TextDecoder = globalThis.TextDecoder; | ||
| const _Reflect = globalThis.Reflect; | ||
| const createTextEncoder = () => _Reflect.construct(_TextEncoder, []); | ||
| const createTextDecoder = (label, options) => _Reflect.construct(_TextDecoder, [label, options]); | ||
| exports.createTextDecoder = createTextDecoder; | ||
| exports.createTextEncoder = createTextEncoder; |
| const _TextEncoder = globalThis.TextEncoder; | ||
| const _TextDecoder = globalThis.TextDecoder; | ||
| const _Reflect = globalThis.Reflect; | ||
| const createTextEncoder = () => _Reflect.construct(_TextEncoder, []); | ||
| const createTextDecoder = (label, options) => _Reflect.construct(_TextDecoder, [label, options]); | ||
| export { createTextDecoder, createTextEncoder }; |
| 'use strict'; | ||
| const _Error = globalThis.Error; | ||
| const _Reflect = globalThis.Reflect; | ||
| const createError = (message, options) => _Reflect.construct(_Error, [message, options]); | ||
| exports.createError = createError; |
| const _Error = globalThis.Error; | ||
| const _Reflect = globalThis.Reflect; | ||
| const createError = (message, options) => _Reflect.construct(_Error, [message, options]); | ||
| export { createError }; |
| 'use strict'; | ||
| const _Map = globalThis.Map; | ||
| const _Reflect = globalThis.Reflect; | ||
| const createMap = (iterable) => _Reflect.construct(_Map, iterable ? [iterable] : []); | ||
| exports.createMap = createMap; |
| const _Map = globalThis.Map; | ||
| const _Reflect = globalThis.Reflect; | ||
| const createMap = (iterable) => _Reflect.construct(_Map, iterable ? [iterable] : []); | ||
| export { createMap }; |
| 'use strict'; | ||
| const _Math = globalThis.Math; | ||
| const floor = _Math.floor; | ||
| const round = _Math.round; | ||
| const sin = _Math.sin; | ||
| const random = _Math.random; | ||
| exports.floor = floor; | ||
| exports.random = random; | ||
| exports.round = round; | ||
| exports.sin = sin; |
| const _Math = globalThis.Math; | ||
| const floor = _Math.floor; | ||
| const round = _Math.round; | ||
| const sin = _Math.sin; | ||
| const random = _Math.random; | ||
| export { floor, random, round, sin }; |
| 'use strict'; | ||
| const _isNaN = globalThis.isNaN; | ||
| const globalIsNaN = _isNaN; | ||
| exports.globalIsNaN = globalIsNaN; |
| const _isNaN = globalThis.isNaN; | ||
| const globalIsNaN = _isNaN; | ||
| export { globalIsNaN }; |
| 'use strict'; | ||
| const _Object = globalThis.Object; | ||
| const freeze = _Object.freeze; | ||
| const create = _Object.create; | ||
| const keys = _Object.keys; | ||
| exports.create = create; | ||
| exports.freeze = freeze; | ||
| exports.keys = keys; |
| const _Object = globalThis.Object; | ||
| const freeze = _Object.freeze; | ||
| const create = _Object.create; | ||
| const keys = _Object.keys; | ||
| export { create, freeze, keys }; |
| 'use strict'; | ||
| const _Promise = globalThis.Promise; | ||
| const _Reflect = globalThis.Reflect; | ||
| const createPromise = (executor) => _Reflect.construct(_Promise, [executor]); | ||
| exports.createPromise = createPromise; |
| const _Promise = globalThis.Promise; | ||
| const _Reflect = globalThis.Reflect; | ||
| const createPromise = (executor) => _Reflect.construct(_Promise, [executor]); | ||
| export { createPromise }; |
| 'use strict'; | ||
| const _ArrayBuffer = globalThis.ArrayBuffer; | ||
| const _SharedArrayBuffer = globalThis.SharedArrayBuffer; | ||
| const _Uint8Array = globalThis.Uint8Array; | ||
| const _Reflect = globalThis.Reflect; | ||
| function createUint8Array(arg, byteOffset, length) { | ||
| if (typeof arg === 'number') { | ||
| return _Reflect.construct(_Uint8Array, [arg]); | ||
| } | ||
| if (arg instanceof _ArrayBuffer || arg instanceof _SharedArrayBuffer) { | ||
| return _Reflect.construct(_Uint8Array, [arg, byteOffset, length]); | ||
| } | ||
| return _Reflect.construct(_Uint8Array, [arg]); | ||
| } | ||
| exports.createUint8Array = createUint8Array; |
| const _ArrayBuffer = globalThis.ArrayBuffer; | ||
| const _SharedArrayBuffer = globalThis.SharedArrayBuffer; | ||
| const _Uint8Array = globalThis.Uint8Array; | ||
| const _Reflect = globalThis.Reflect; | ||
| function createUint8Array(arg, byteOffset, length) { | ||
| if (typeof arg === 'number') { | ||
| return _Reflect.construct(_Uint8Array, [arg]); | ||
| } | ||
| if (arg instanceof _ArrayBuffer || arg instanceof _SharedArrayBuffer) { | ||
| return _Reflect.construct(_Uint8Array, [arg, byteOffset, length]); | ||
| } | ||
| return _Reflect.construct(_Uint8Array, [arg]); | ||
| } | ||
| export { createUint8Array }; |
| 'use strict'; | ||
| const { floor, sin } = require('../immutable-api-utils/built-in-copy/math/index.cjs.js'); | ||
| function randomPseudo(seed) { | ||
| const x = sin(seed) * 10000; | ||
| return x - floor(x); | ||
| } | ||
| function randomPseudoTimeBased(seedTime) { | ||
| return randomPseudo(seedTime.getTime()); | ||
| } | ||
| exports.randomPseudo = randomPseudo; | ||
| exports.randomPseudoTimeBased = randomPseudoTimeBased; |
| import { sin, floor } from '../immutable-api-utils/built-in-copy/math/index.esm.js'; | ||
| function randomPseudo(seed) { | ||
| const x = sin(seed) * 10000; | ||
| return x - floor(x); | ||
| } | ||
| function randomPseudoTimeBased(seedTime) { | ||
| return randomPseudo(seedTime.getTime()); | ||
| } | ||
| export { randomPseudo, randomPseudoTimeBased }; |
| 'use strict'; | ||
| const { createTextDecoder, createTextEncoder } = require('../../immutable-api-utils/built-in-copy/encoding/index.cjs.js'); | ||
| const { createUint8Array } = require('../../immutable-api-utils/built-in-copy/typed-arrays/index.cjs.js'); | ||
| createTextEncoder(); | ||
| const UTF8_DECODER = createTextDecoder('utf8'); | ||
| ({ | ||
| SIMPLE: { | ||
| ARRAY: createUint8Array([104, 101, 108, 108, 111]), | ||
| }, | ||
| NON_ASCII: { | ||
| ARRAY: createUint8Array([227, 129, 147, 227, 130, 147, 227, 129, 171, 227, 129, 161, 227, 129, 175]), | ||
| }, | ||
| EMPTY: { | ||
| ARRAY: createUint8Array([]), | ||
| }, | ||
| }); | ||
| function arrayBufferToUtf8String(uint8Array) { | ||
| return UTF8_DECODER.decode(uint8Array); | ||
| } | ||
| function utf8StringToUint8Array(text) { | ||
| return createTextEncoder().encode(text); | ||
| } | ||
| exports.arrayBufferToUtf8String = arrayBufferToUtf8String; | ||
| exports.utf8StringToUint8Array = utf8StringToUint8Array; |
| import { createTextEncoder, createTextDecoder } from '../../immutable-api-utils/built-in-copy/encoding/index.esm.js'; | ||
| import { createUint8Array } from '../../immutable-api-utils/built-in-copy/typed-arrays/index.esm.js'; | ||
| createTextEncoder(); | ||
| const UTF8_DECODER = createTextDecoder('utf8'); | ||
| ({ | ||
| SIMPLE: { | ||
| ARRAY: createUint8Array([104, 101, 108, 108, 111]), | ||
| }, | ||
| NON_ASCII: { | ||
| ARRAY: createUint8Array([227, 129, 147, 227, 130, 147, 227, 129, 171, 227, 129, 161, 227, 129, 175]), | ||
| }, | ||
| EMPTY: { | ||
| ARRAY: createUint8Array([]), | ||
| }, | ||
| }); | ||
| function arrayBufferToUtf8String(uint8Array) { | ||
| return UTF8_DECODER.decode(uint8Array); | ||
| } | ||
| function utf8StringToUint8Array(text) { | ||
| return createTextEncoder().encode(text); | ||
| } | ||
| export { arrayBufferToUtf8String, utf8StringToUint8Array }; |
| 'use strict'; | ||
| const { createTextDecoder, createTextEncoder } = require('../../immutable-api-utils/built-in-copy/encoding/index.cjs.js'); | ||
| const { createUint8Array } = require('../../immutable-api-utils/built-in-copy/typed-arrays/index.cjs.js'); | ||
| createTextEncoder(); | ||
| const UTF8_DECODER = createTextDecoder('utf8'); | ||
| ({ | ||
| SIMPLE: { | ||
| ARRAY: createUint8Array([104, 101, 108, 108, 111]), | ||
| }, | ||
| NON_ASCII: { | ||
| ARRAY: createUint8Array([227, 129, 147, 227, 130, 147, 227, 129, 171, 227, 129, 161, 227, 129, 175]), | ||
| }, | ||
| EMPTY: { | ||
| ARRAY: createUint8Array([]), | ||
| }, | ||
| }); | ||
| function arrayBufferToUtf8String(uint8Array) { | ||
| return UTF8_DECODER.decode(uint8Array); | ||
| } | ||
| function utf8StringToUint8Array(text) { | ||
| return createUint8Array(Buffer.from(text, 'utf8')); | ||
| } | ||
| exports.arrayBufferToUtf8String = arrayBufferToUtf8String; | ||
| exports.utf8StringToUint8Array = utf8StringToUint8Array; |
| import { createTextEncoder, createTextDecoder } from '../../immutable-api-utils/built-in-copy/encoding/index.esm.js'; | ||
| import { createUint8Array } from '../../immutable-api-utils/built-in-copy/typed-arrays/index.esm.js'; | ||
| createTextEncoder(); | ||
| const UTF8_DECODER = createTextDecoder('utf8'); | ||
| ({ | ||
| SIMPLE: { | ||
| ARRAY: createUint8Array([104, 101, 108, 108, 111]), | ||
| }, | ||
| NON_ASCII: { | ||
| ARRAY: createUint8Array([227, 129, 147, 227, 130, 147, 227, 129, 171, 227, 129, 161, 227, 129, 175]), | ||
| }, | ||
| EMPTY: { | ||
| ARRAY: createUint8Array([]), | ||
| }, | ||
| }); | ||
| function arrayBufferToUtf8String(uint8Array) { | ||
| return UTF8_DECODER.decode(uint8Array); | ||
| } | ||
| function utf8StringToUint8Array(text) { | ||
| return createUint8Array(Buffer.from(text, 'utf8')); | ||
| } | ||
| export { arrayBufferToUtf8String, utf8StringToUint8Array }; |
| 'use strict'; | ||
| const { createDate } = require('../immutable-api-utils/built-in-copy/date/index.cjs.js'); | ||
| const { createError } = require('../immutable-api-utils/built-in-copy/error/index.cjs.js'); | ||
| const { floor } = require('../immutable-api-utils/built-in-copy/math/index.cjs.js'); | ||
| const { globalIsNaN } = require('../immutable-api-utils/built-in-copy/number/index.cjs.js'); | ||
| function normalizeToBaseTimeWindow(time, baseTimeWindow) { | ||
| if (!time || !(time instanceof Date) || globalIsNaN(time.getTime())) { | ||
| throw createError('Invalid time input'); | ||
| } | ||
| if (baseTimeWindow <= 0) { | ||
| throw createError('Base time window must be positive'); | ||
| } | ||
| const timeInMs = time.getTime(); | ||
| const windowInMs = baseTimeWindow * 60 * 1000; | ||
| const normalizedTimeInMs = floor(timeInMs / windowInMs) * windowInMs; | ||
| return createDate(normalizedTimeInMs); | ||
| } | ||
| exports.normalizeToBaseTimeWindow = normalizeToBaseTimeWindow; |
| import { createDate } from '../immutable-api-utils/built-in-copy/date/index.esm.js'; | ||
| import { createError } from '../immutable-api-utils/built-in-copy/error/index.esm.js'; | ||
| import { floor } from '../immutable-api-utils/built-in-copy/math/index.esm.js'; | ||
| import { globalIsNaN } from '../immutable-api-utils/built-in-copy/number/index.esm.js'; | ||
| function normalizeToBaseTimeWindow(time, baseTimeWindow) { | ||
| if (!time || !(time instanceof Date) || globalIsNaN(time.getTime())) { | ||
| throw createError('Invalid time input'); | ||
| } | ||
| if (baseTimeWindow <= 0) { | ||
| throw createError('Base time window must be positive'); | ||
| } | ||
| const timeInMs = time.getTime(); | ||
| const windowInMs = baseTimeWindow * 60 * 1000; | ||
| const normalizedTimeInMs = floor(timeInMs / windowInMs) * windowInMs; | ||
| return createDate(normalizedTimeInMs); | ||
| } | ||
| export { normalizeToBaseTimeWindow }; |
| 'use strict'; | ||
| const index_cjs_js$4 = require('../../../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.cjs.js'); | ||
| const encryptionConfig = index_cjs_js$4.freeze({ | ||
| name: 'AES-GCM', | ||
| }); | ||
| exports.encryptionConfig = encryptionConfig; |
| import { freeze } from '../../../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.esm.js'; | ||
| const encryptionConfig = freeze({ | ||
| name: 'AES-GCM', | ||
| }); | ||
| export { encryptionConfig }; |
| 'use strict'; | ||
| const index_cjs_js$5 = require('../../../_dependencies/@hyperfrontend/data-utils/index.cjs.js'); | ||
| function isSHA256Hash(hash) { | ||
| return index_cjs_js$5.getType(hash) === 'string' ? /^[a-f0-9]{64}$/i.test(hash) : false; | ||
| } | ||
| exports.isSHA256Hash = isSHA256Hash; |
| import { getType } from '../../../_dependencies/@hyperfrontend/data-utils/index.esm.js'; | ||
| function isSHA256Hash(hash) { | ||
| return getType(hash) === 'string' ? /^[a-f0-9]{64}$/i.test(hash) : false; | ||
| } | ||
| export { isSHA256Hash }; |
+45
-563
| 'use strict'; | ||
| /** | ||
| * Safe copies of Array built-in static methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/array | ||
| */ | ||
| const _Array = globalThis.Array; | ||
| /** | ||
| * (Safe copy) Determines whether the passed value is an Array. | ||
| */ | ||
| const isArray = _Array.isArray; | ||
| /** | ||
| * (Safe copy) Creates an array from an array-like or iterable object. | ||
| */ | ||
| const from = _Array.from; | ||
| const index_cjs_js = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.cjs.js'); | ||
| const index_cjs_js$3 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.cjs.js'); | ||
| const index_cjs_js$1 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays/index.cjs.js'); | ||
| const index_cjs_js$2 = require('../_dependencies/@hyperfrontend/string-utils/browser/index.cjs.js'); | ||
| const index_cjs_js$5 = require('../_dependencies/@hyperfrontend/data-utils/index.cjs.js'); | ||
| const index_cjs_js$4 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.cjs.js'); | ||
| const index_cjs_js$6 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/map/index.cjs.js'); | ||
| const index_cjs_js$7 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/date/index.cjs.js'); | ||
| const index_cjs_js$8 = require('../_dependencies/@hyperfrontend/random-generator-utils/index.cjs.js'); | ||
| const index_cjs_js$9 = require('../_dependencies/@hyperfrontend/time-utils/index.cjs.js'); | ||
| const { encryptionConfig } = require('../_shared/lib/encryption-config/index.cjs.js'); | ||
| const { isSHA256Hash } = require('../_shared/lib/is-sha-256-hash/index.cjs.js'); | ||
| /** | ||
| * Safe copies of Error built-ins via factory functions. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides factory functions that use Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/error | ||
| */ | ||
| const _Error = globalThis.Error; | ||
| const _Reflect$4 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Error using the captured Error constructor. | ||
| * Use this instead of `new Error()`. | ||
| * | ||
| * @param message - Optional error message. | ||
| * @param options - Optional error options. | ||
| * @returns A new Error instance. | ||
| * | ||
| * @example Creating Error instances | ||
| * ```typescript | ||
| * const error = createError('Operation failed') | ||
| * // With cause for error chaining | ||
| * const wrapped = createError('Request failed', { cause: originalError }) | ||
| * ``` | ||
| */ | ||
| const createError = (message, options) => _Reflect$4.construct(_Error, [message, options]); | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of TypedArray and ArrayBuffer built-ins via factory functions. | ||
| * | ||
| * Provides safe references to Uint8Array, Int8Array, ArrayBuffer, DataView, etc. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays | ||
| */ | ||
| const _ArrayBuffer = globalThis.ArrayBuffer; | ||
| const _SharedArrayBuffer = globalThis.SharedArrayBuffer; | ||
| const _Uint8Array = globalThis.Uint8Array; | ||
| const _Uint8ClampedArray = globalThis.Uint8ClampedArray; | ||
| const _Uint16Array = globalThis.Uint16Array; | ||
| const _Uint32Array = globalThis.Uint32Array; | ||
| const _Int8Array = globalThis.Int8Array; | ||
| const _Int16Array = globalThis.Int16Array; | ||
| const _Int32Array = globalThis.Int32Array; | ||
| const _Float32Array = globalThis.Float32Array; | ||
| const _Float64Array = globalThis.Float64Array; | ||
| const _BigInt64Array = globalThis.BigInt64Array; | ||
| const _BigUint64Array = globalThis.BigUint64Array; | ||
| const _Reflect$3 = globalThis.Reflect; | ||
| function createUint8Array(arg, byteOffset, length) { | ||
| if (typeof arg === 'number') { | ||
| return _Reflect$3.construct(_Uint8Array, [arg]); | ||
| } | ||
| if (arg instanceof _ArrayBuffer || arg instanceof _SharedArrayBuffer) { | ||
| return _Reflect$3.construct(_Uint8Array, [arg, byteOffset, length]); | ||
| } | ||
| return _Reflect$3.construct(_Uint8Array, [arg]); | ||
| } | ||
| /** | ||
| * (Safe copy) Creates a new Uint8Array from an array-like or iterable object. | ||
| */ | ||
| _Uint8Array.from.bind(_Uint8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8Array from a variable number of arguments. | ||
| */ | ||
| _Uint8Array.of.bind(_Uint8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8ClampedArray from an array-like or iterable object. | ||
| */ | ||
| _Uint8ClampedArray.from.bind(_Uint8ClampedArray); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8ClampedArray from a variable number of arguments. | ||
| */ | ||
| _Uint8ClampedArray.of.bind(_Uint8ClampedArray); | ||
| /** | ||
| * (Safe copy) Creates a new Uint16Array from an array-like or iterable object. | ||
| */ | ||
| _Uint16Array.from.bind(_Uint16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint16Array from a variable number of arguments. | ||
| */ | ||
| _Uint16Array.of.bind(_Uint16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint32Array from an array-like or iterable object. | ||
| */ | ||
| _Uint32Array.from.bind(_Uint32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint32Array from a variable number of arguments. | ||
| */ | ||
| _Uint32Array.of.bind(_Uint32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int8Array from an array-like or iterable object. | ||
| */ | ||
| _Int8Array.from.bind(_Int8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int8Array from a variable number of arguments. | ||
| */ | ||
| _Int8Array.of.bind(_Int8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int16Array from an array-like or iterable object. | ||
| */ | ||
| _Int16Array.from.bind(_Int16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int16Array from a variable number of arguments. | ||
| */ | ||
| _Int16Array.of.bind(_Int16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int32Array from an array-like or iterable object. | ||
| */ | ||
| _Int32Array.from.bind(_Int32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int32Array from a variable number of arguments. | ||
| */ | ||
| _Int32Array.of.bind(_Int32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float32Array from an array-like or iterable object. | ||
| */ | ||
| _Float32Array.from.bind(_Float32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float32Array from a variable number of arguments. | ||
| */ | ||
| _Float32Array.of.bind(_Float32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float64Array from an array-like or iterable object. | ||
| */ | ||
| _Float64Array.from.bind(_Float64Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float64Array from a variable number of arguments. | ||
| */ | ||
| _Float64Array.of.bind(_Float64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigInt64Array from an array-like or iterable object. | ||
| */ | ||
| _BigInt64Array.from.bind(_BigInt64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigInt64Array from a variable number of arguments. | ||
| */ | ||
| _BigInt64Array.of.bind(_BigInt64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigUint64Array from an array-like or iterable object. | ||
| */ | ||
| _BigUint64Array.from.bind(_BigUint64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigUint64Array from a variable number of arguments. | ||
| */ | ||
| _BigUint64Array.of.bind(_BigUint64Array); | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of encoding built-ins via factory functions. | ||
| * | ||
| * Provides safe references to TextEncoder, TextDecoder, atob, and btoa. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/encoding | ||
| */ | ||
| const _TextEncoder = globalThis.TextEncoder; | ||
| const _TextDecoder = globalThis.TextDecoder; | ||
| const _Reflect$2 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new TextEncoder using the captured TextEncoder constructor. | ||
| * Use this instead of `new TextEncoder()`. | ||
| * | ||
| * @returns A new TextEncoder instance. | ||
| */ | ||
| const createTextEncoder = () => _Reflect$2.construct(_TextEncoder, []); | ||
| /** | ||
| * (Safe copy) Creates a new TextDecoder using the captured TextDecoder constructor. | ||
| * Use this instead of `new TextDecoder()`. | ||
| * | ||
| * @param label - The encoding label (e.g., 'utf-8', 'utf-16'). Defaults to 'utf-8'. | ||
| * @param options - Optional TextDecoderOptions. | ||
| * @returns A new TextDecoder instance. | ||
| */ | ||
| const createTextDecoder = (label, options) => _Reflect$2.construct(_TextDecoder, [label, options]); | ||
| createTextEncoder(); | ||
| const UTF8_DECODER = createTextDecoder('utf8'); | ||
| ({ | ||
| SIMPLE: { | ||
| ARRAY: createUint8Array([104, 101, 108, 108, 111]), | ||
| }, | ||
| NON_ASCII: { | ||
| ARRAY: createUint8Array([227, 129, 147, 227, 130, 147, 227, 129, 171, 227, 129, 161, 227, 129, 175]), | ||
| }, | ||
| EMPTY: { | ||
| ARRAY: createUint8Array([]), | ||
| }, | ||
| }); | ||
| /** | ||
| * Converts an ArrayBuffer to a UTF-8 encoded string. | ||
| * | ||
| * @param uint8Array - The ArrayBuffer to convert | ||
| * @returns The decoded UTF-8 string | ||
| * | ||
| * @example Converting ArrayBuffer to string | ||
| * ```typescript | ||
| * const encoder = new TextEncoder() | ||
| * const buffer = encoder.encode('Hello, World!').buffer | ||
| * const decoded = arrayBufferToUtf8String(buffer) | ||
| * // => 'Hello, World!' | ||
| * ``` | ||
| */ | ||
| function arrayBufferToUtf8String(uint8Array) { | ||
| return UTF8_DECODER.decode(uint8Array); | ||
| } | ||
| /** | ||
| * Converts a UTF-8 string to a Uint8Array (browser implementation). | ||
| * | ||
| * @param text - The UTF-8 string to convert | ||
| * @returns The encoded Uint8Array | ||
| * | ||
| * @example Encoding string to bytes (browser) | ||
| * ```typescript | ||
| * const bytes = utf8StringToUint8Array('Hello') | ||
| * // => Uint8Array([72, 101, 108, 108, 111]) | ||
| * ``` | ||
| */ | ||
| function utf8StringToUint8Array(text) { | ||
| return createTextEncoder().encode(text); | ||
| } | ||
| const subtle = globalThis.crypto.subtle; | ||
@@ -269,3 +34,3 @@ | ||
| try { | ||
| return from(createUint8Array(await subtle.digest(algorithm, utf8StringToUint8Array(data)))) | ||
| return index_cjs_js.from(index_cjs_js$1.createUint8Array(await subtle.digest(algorithm, index_cjs_js$2.utf8StringToUint8Array(data)))) | ||
| .map((b) => b.toString(16).padStart(2, '0')) | ||
@@ -275,3 +40,3 @@ .join(''); | ||
| catch { | ||
| throw createError('Error creating hash'); | ||
| throw index_cjs_js$3.createError('Error creating hash'); | ||
| } | ||
@@ -281,134 +46,2 @@ } | ||
| /** | ||
| * Safe copies of Object built-in methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/object | ||
| */ | ||
| const _Object = globalThis.Object; | ||
| /** | ||
| * (Safe copy) Prevents modification of existing property attributes and values, | ||
| * and prevents the addition of new properties. | ||
| */ | ||
| const freeze = _Object.freeze; | ||
| /** | ||
| * (Safe copy) Creates an object that has the specified prototype or that has null prototype. | ||
| */ | ||
| const create = _Object.create; | ||
| const registeredClasses = []; | ||
| /** | ||
| * Returns the data type of the target. | ||
| * Uses native `typeof` operator, however, makes distinction between `null`, `array`, and `object`. | ||
| * Also, when classes are registered via `registerClass`, it checks if objects are instance of any known registered class. | ||
| * | ||
| * @param target - The target to get the data type of. | ||
| * @returns The data type of the target. | ||
| * | ||
| * @example Determining data types | ||
| * ```typescript | ||
| * getType([1, 2]) // 'array' | ||
| * getType({ a: 1 }) // 'object' | ||
| * getType(null) // 'null' | ||
| * ``` | ||
| */ | ||
| const getType = (target) => { | ||
| if (target === null) | ||
| return 'null'; | ||
| const nativeDataType = typeof target; | ||
| if (nativeDataType === 'object') { | ||
| if (isArray(target)) | ||
| return 'array'; | ||
| for (const registeredClass of registeredClasses) { | ||
| if (target instanceof registeredClass) | ||
| return registeredClass.name; | ||
| } | ||
| } | ||
| return nativeDataType; | ||
| }; | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Map built-in via factory function. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/map | ||
| */ | ||
| const _Map = globalThis.Map; | ||
| const _Reflect$1 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Map using the captured Map constructor. | ||
| * Use this instead of `new Map()`. | ||
| * | ||
| * @param iterable - Optional iterable of key-value pairs. | ||
| * @returns A new Map instance. | ||
| */ | ||
| const createMap = (iterable) => _Reflect$1.construct(_Map, iterable ? [iterable] : []); | ||
| /* eslint-disable jsdoc/require-param */ | ||
| /** | ||
| * Safe copies of Date built-in via factory function and static methods. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/date | ||
| */ | ||
| const _Date = globalThis.Date; | ||
| const _Reflect = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Date using the captured Date constructor. | ||
| * Use this instead of `new Date()`. Accepts all standard Date constructor signatures. | ||
| * | ||
| * @returns A new Date instance. | ||
| * | ||
| * @example Creating Date instances | ||
| * ```typescript | ||
| * const now = createDate() | ||
| * const fromTimestamp = createDate(1704067200000) | ||
| * const fromString = createDate('2024-01-01T00:00:00Z') | ||
| * const fromParts = createDate(2024, 0, 1, 12, 30, 0) // Jan 1, 2024 12:30:00 | ||
| * ``` | ||
| */ | ||
| function createDate(...args) { | ||
| return _Reflect.construct(_Date, args); | ||
| } | ||
| /** | ||
| * Safe copies of Math built-in methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/math | ||
| */ | ||
| const _Math = globalThis.Math; | ||
| /** | ||
| * (Safe copy) Returns the largest integer less than or equal to a number. | ||
| */ | ||
| const floor = _Math.floor; | ||
| /** | ||
| * (Safe copy) Returns the sine of a number. | ||
| */ | ||
| const sin = _Math.sin; | ||
| /** | ||
| * Frozen encryption configuration to prevent runtime tampering. | ||
| * Using AES-GCM as the default algorithm for authenticated encryption. | ||
| */ | ||
| const encryptionConfig = freeze({ | ||
| name: 'AES-GCM', | ||
| }); | ||
| /** | ||
| * Creates a key generator function that derives encryption keys from passwords using PBKDF2. | ||
@@ -430,10 +63,10 @@ * Uses 100,000 iterations with SHA-256 hashing for secure key derivation. | ||
| return async function generateKey(password, salt) { | ||
| if (getType(password) !== 'string') { | ||
| throw createError('Cannot generate key without a password type string'); | ||
| if (index_cjs_js$5.getType(password) !== 'string') { | ||
| throw index_cjs_js$3.createError('Cannot generate key without a password type string'); | ||
| } | ||
| if (password.length === 0) { | ||
| throw createError('Cannot generate key with an empty string as password'); | ||
| throw index_cjs_js$3.createError('Cannot generate key with an empty string as password'); | ||
| } | ||
| if (!salt) { | ||
| throw createError('Cannot generate key without a salt'); | ||
| throw index_cjs_js$3.createError('Cannot generate key without a salt'); | ||
| } | ||
@@ -453,3 +86,3 @@ const keyMaterial = await subtle.importKey('raw', utf8StringToUint8Array(password), { name: 'PBKDF2' }, false, [ | ||
| const generateKey = createKeyGenerator(subtle, utf8StringToUint8Array); | ||
| const generateKey = createKeyGenerator(subtle, index_cjs_js$2.utf8StringToUint8Array); | ||
@@ -474,6 +107,6 @@ /** | ||
| if (!encrypted || !encrypted.length) { | ||
| throw createError('Cannot decrypt without a message'); | ||
| throw index_cjs_js$3.createError('Cannot decrypt without a message'); | ||
| } | ||
| if (!password) { | ||
| throw createError('Cannot decrypt without a password'); | ||
| throw index_cjs_js$3.createError('Cannot decrypt without a password'); | ||
| } | ||
@@ -489,3 +122,3 @@ const salt = encrypted.slice(0, 16); | ||
| const decrypt = createDecrypt(arrayBufferToUtf8String, generateKey, subtle); | ||
| const decrypt = createDecrypt(index_cjs_js$2.arrayBufferToUtf8String, generateKey, subtle); | ||
@@ -507,5 +140,5 @@ /** | ||
| if (!byteLength) { | ||
| throw createError('Cannot generate random values without a byte length.'); | ||
| throw index_cjs_js$3.createError('Cannot generate random values without a byte length.'); | ||
| } | ||
| return globalThis.crypto.getRandomValues(createUint8Array(byteLength)); | ||
| return globalThis.crypto.getRandomValues(index_cjs_js$1.createUint8Array(byteLength)); | ||
| } | ||
@@ -532,6 +165,6 @@ | ||
| if (!message) { | ||
| throw createError('Cannot encrypt an empty message.'); | ||
| throw index_cjs_js$3.createError('Cannot encrypt an empty message.'); | ||
| } | ||
| if (!password) { | ||
| throw createError('Cannot encrypt without a password.'); | ||
| throw index_cjs_js$3.createError('Cannot encrypt without a password.'); | ||
| } | ||
@@ -542,4 +175,4 @@ const salt = getRandomValues(16); | ||
| const encryptedContent = await subtle.encrypt({ ...encryptionConfig, iv: iv }, key, utf8StringToUint8Array(message)); | ||
| const buffer = createUint8Array(encryptedContent); | ||
| const result = createUint8Array(salt.byteLength + iv.byteLength + buffer.byteLength); | ||
| const buffer = index_cjs_js$1.createUint8Array(encryptedContent); | ||
| const result = index_cjs_js$1.createUint8Array(salt.byteLength + iv.byteLength + buffer.byteLength); | ||
| result.set(salt, 0); | ||
@@ -552,3 +185,3 @@ result.set(iv, salt.byteLength); | ||
| const encrypt = createEncrypt(utf8StringToUint8Array, getRandomValues, generateKey, subtle); | ||
| const encrypt = createEncrypt(index_cjs_js$2.utf8StringToUint8Array, getRandomValues, generateKey, subtle); | ||
@@ -575,3 +208,3 @@ /** | ||
| return function createVault(singleUse = false) { | ||
| let password = from(getRandomValues(16)) | ||
| let password = index_cjs_js.from(getRandomValues(16)) | ||
| .map((b) => b.toString(16).padStart(2, '0')) | ||
@@ -581,3 +214,3 @@ .join(''); | ||
| let isVaultClosed = false; | ||
| let storage = createMap(); | ||
| let storage = index_cjs_js$6.createMap(); | ||
| /** | ||
@@ -593,9 +226,9 @@ * Writes an encrypted value to the vault with the specified label. | ||
| if (isVaultClosed) { | ||
| throw createError('Vault is closed.'); | ||
| throw index_cjs_js$3.createError('Vault is closed.'); | ||
| } | ||
| if (!label) { | ||
| throw createError('Label is required.'); | ||
| throw index_cjs_js$3.createError('Label is required.'); | ||
| } | ||
| if (!value) { | ||
| throw createError('Value is required.'); | ||
| throw index_cjs_js$3.createError('Value is required.'); | ||
| } | ||
@@ -616,9 +249,9 @@ const encryptedValue = await encrypt(value, password); | ||
| if (isVaultClosed) { | ||
| throw createError('Vault is closed.'); | ||
| throw index_cjs_js$3.createError('Vault is closed.'); | ||
| } | ||
| if (!label) { | ||
| throw createError('Label is required.'); | ||
| throw index_cjs_js$3.createError('Label is required.'); | ||
| } | ||
| if (!password) { | ||
| throw createError('Password is required.'); | ||
| throw index_cjs_js$3.createError('Password is required.'); | ||
| } | ||
@@ -644,3 +277,3 @@ const encryptedValue = storage.get(label); | ||
| if (isVaultClosed) { | ||
| throw createError('Vault is closed.'); | ||
| throw index_cjs_js$3.createError('Vault is closed.'); | ||
| } | ||
@@ -663,3 +296,3 @@ if (isPasswordAccessed) { | ||
| } | ||
| const vault = create(null, { | ||
| const vault = index_cjs_js$4.create(null, { | ||
| write: { | ||
@@ -690,3 +323,3 @@ value: write, | ||
| }); | ||
| return freeze(vault); | ||
| return index_cjs_js$4.freeze(vault); | ||
| }; | ||
@@ -698,132 +331,2 @@ } | ||
| /** | ||
| * A simple pseudo-random number generator. | ||
| * | ||
| * @param seed - The seed for the generator. | ||
| * @returns A pseudo-random number between 0 and 1. | ||
| * | ||
| * @example Reproducible random values for testing | ||
| * ```typescript | ||
| * // Same seed always yields the same result | ||
| * randomPseudo(42) | ||
| * // => 0.6853... (deterministic) | ||
| * | ||
| * randomPseudo(42) | ||
| * // => 0.6853... (identical) | ||
| * | ||
| * randomPseudo(43) | ||
| * // => 0.1762... (different seed, different result) | ||
| * ``` | ||
| */ | ||
| function randomPseudo(seed) { | ||
| const x = sin(seed) * 10000; | ||
| return x - floor(x); | ||
| } | ||
| /** | ||
| * Generates a deterministic pseudo-random variation based solely on the seed time. | ||
| * | ||
| * @param seedTime - The seed time for the variation. | ||
| * @returns The pseudo-random variation as a number. | ||
| * | ||
| * @example Reproducible randomness for a specific timestamp | ||
| * ```typescript | ||
| * const releaseDate = new Date('2024-03-15T10:30:00Z') | ||
| * | ||
| * // Same date always produces the same result | ||
| * const value1 = randomPseudoTimeBased(releaseDate) | ||
| * const value2 = randomPseudoTimeBased(releaseDate) | ||
| * // value1 === value2 (deterministic) | ||
| * ``` | ||
| */ | ||
| function randomPseudoTimeBased(seedTime) { | ||
| return randomPseudo(seedTime.getTime()); | ||
| } | ||
| /** | ||
| * Safe copies of Number built-in methods and constants. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/number | ||
| */ | ||
| const _isNaN = globalThis.isNaN; | ||
| /** | ||
| * (Safe copy) Global isNaN function (coerces to number first, less strict than Number.isNaN). | ||
| */ | ||
| const globalIsNaN = _isNaN; | ||
| /** | ||
| * Normalizes a given time to the nearest base time window. | ||
| * | ||
| * @param time - The Date object to normalize to the nearest time window | ||
| * @param baseTimeWindow - The size of the time window in minutes for normalization | ||
| * @returns A new Date object normalized to the start of the time window | ||
| * | ||
| * @example Normalizing to 15-minute buckets | ||
| * ```typescript | ||
| * // Round timestamps to 15-minute intervals for analytics bucketing | ||
| * const eventTime = new Date('2024-03-15T14:23:45Z') | ||
| * const bucketTime = normalizeToBaseTimeWindow(eventTime, 15) | ||
| * // => 2024-03-15T14:15:00.000Z | ||
| * ``` | ||
| */ | ||
| function normalizeToBaseTimeWindow(time, baseTimeWindow) { | ||
| if (!time || !(time instanceof Date) || globalIsNaN(time.getTime())) { | ||
| throw createError('Invalid time input'); | ||
| } | ||
| if (baseTimeWindow <= 0) { | ||
| throw createError('Base time window must be positive'); | ||
| } | ||
| const timeInMs = time.getTime(); | ||
| const windowInMs = baseTimeWindow * 60 * 1000; | ||
| const normalizedTimeInMs = floor(timeInMs / windowInMs) * windowInMs; | ||
| return createDate(normalizedTimeInMs); | ||
| } | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Promise built-in methods via factory functions. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides factory functions that use Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/promise | ||
| */ | ||
| const _Promise = globalThis.Promise; | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves with the given value. | ||
| */ | ||
| _Promise.resolve.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that rejects with the given reason. | ||
| */ | ||
| _Promise.reject.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves when all promises resolve. | ||
| */ | ||
| _Promise.all.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves/rejects with the first settled promise. | ||
| */ | ||
| _Promise.race.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves when all promises settle. | ||
| */ | ||
| _Promise.allSettled.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves with the first fulfilled promise. | ||
| */ | ||
| _Promise.any.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Creates a Promise along with its resolve and reject functions. | ||
| * Note: Available only in ES2024+ environments. | ||
| */ | ||
| // eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
| _Promise.withResolvers?.bind(_Promise); | ||
| /** | ||
| * Creates a time-based one-time password (TOTP) generator function. | ||
@@ -843,7 +346,7 @@ * Generates passwords that change based on time windows, supporting previous/current/next window offsets. | ||
| return async function getTimeBasedPassword(currentUtcTime, baseTimeWindow, windowOffset = 0) { | ||
| if (getType(windowOffset) !== 'number' || windowOffset < -1 || 1 < windowOffset) { | ||
| throw createError('Window offset must be -1, 0, or 1.'); | ||
| if (index_cjs_js$5.getType(windowOffset) !== 'number' || windowOffset < -1 || 1 < windowOffset) { | ||
| throw index_cjs_js$3.createError('Window offset must be -1, 0, or 1.'); | ||
| } | ||
| const offsetTime = createDate(currentUtcTime.getTime() + windowOffset * baseTimeWindow * 60000); | ||
| return await createHash(randomPseudoTimeBased(normalizeToBaseTimeWindow(offsetTime, baseTimeWindow)).toString()); | ||
| const offsetTime = index_cjs_js$7.createDate(currentUtcTime.getTime() + windowOffset * baseTimeWindow * 60000); | ||
| return await createHash(index_cjs_js$8.randomPseudoTimeBased(index_cjs_js$9.normalizeToBaseTimeWindow(offsetTime, baseTimeWindow)).toString()); | ||
| }; | ||
@@ -883,3 +386,3 @@ } | ||
| const next = () => getTimeBasedPassword(currentUtcTime, baseTimeWindow, 1); | ||
| return freeze({ current, previous, next }); | ||
| return index_cjs_js$4.freeze({ current, previous, next }); | ||
| }; | ||
@@ -898,22 +401,2 @@ } | ||
| /** | ||
| * Validates whether the provided value is a valid SHA-256 hash string. | ||
| * Checks for exactly 64 hexadecimal characters (case-insensitive). | ||
| * | ||
| * @param hash - The value to validate as a SHA-256 hash | ||
| * @returns True if the value is a valid SHA-256 hash string, false otherwise | ||
| * | ||
| * @example Validating SHA-256 hashes | ||
| * ```typescript | ||
| * isSHA256Hash('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') | ||
| * // => true | ||
| * | ||
| * isSHA256Hash('invalid') | ||
| * // => false | ||
| * ``` | ||
| */ | ||
| function isSHA256Hash(hash) { | ||
| return getType(hash) === 'string' ? /^[a-f0-9]{64}$/i.test(hash) : false; | ||
| } | ||
| exports.createHash = createHash; | ||
@@ -930,2 +413,1 @@ exports.createVault = createVault; | ||
| exports.subtle = subtle; | ||
| //# sourceMappingURL=index.cjs.js.map |
+132
-16
@@ -1,16 +0,132 @@ | ||
| export type { HashAlgorithm } from '../lib/create-hash/model'; | ||
| export type { Vault } from '../lib/create-vault/model'; | ||
| export type { EncryptionConfig } from '../lib/encryption-config.model'; | ||
| export type { TimeBasedPasswordGenerators } from '../lib/get-time-based-passwords/model'; | ||
| export { createHash } from '../lib/create-hash/browser'; | ||
| export { createVault } from '../lib/create-vault/browser'; | ||
| export { decrypt } from '../lib/decrypt/browser'; | ||
| export { encrypt } from '../lib/encrypt/browser'; | ||
| export { encryptionConfig } from '../lib/encryption-config'; | ||
| export { generateKey } from '../lib/generate-key/browser'; | ||
| export { getRandomValues } from '../lib/get-random-values/browser'; | ||
| export { getTimeBasedPassword } from '../lib/get-time-based-password/browser'; | ||
| export { getTimeBasedPasswords } from '../lib/get-time-based-passwords/browser'; | ||
| export { subtle } from '../lib/subtle/browser'; | ||
| export { isSHA256Hash } from '../lib/is-sha-256-hash'; | ||
| //# sourceMappingURL=index.d.ts.map | ||
| /** | ||
| * Supported cryptographic hash algorithms. | ||
| */ | ||
| type HashAlgorithm = 'SHA-256' | 'SHA-384' | 'SHA-512'; | ||
| /** | ||
| * Secure vault for storing encrypted key-value pairs. | ||
| */ | ||
| interface Vault { | ||
| /** Writes an encrypted value with the given label */ | ||
| readonly write: (label: string, value: string) => Promise<void>; | ||
| /** Reads and decrypts a value by label, requiring the password */ | ||
| readonly read: (label: string, password: string) => Promise<string | null>; | ||
| /** Retrieves the current vault password, or null if not set */ | ||
| readonly getPassword: () => string | null; | ||
| /** Closes the vault and clears sensitive data from memory */ | ||
| readonly close: () => void; | ||
| } | ||
| /** Configuration for encryption algorithm settings. */ | ||
| interface EncryptionConfig { | ||
| /** Encryption algorithm name (AES-GCM, AES-CBC, or AES-CTR). */ | ||
| name: 'AES-GCM' | 'AES-CBC' | 'AES-CTR'; | ||
| } | ||
| /** | ||
| * Generators for time-based one-time passwords (TOTP). | ||
| */ | ||
| interface TimeBasedPasswordGenerators { | ||
| /** Generates the password for the current time window. */ | ||
| readonly current: () => Promise<string>; | ||
| /** Generates the password for the previous time window. */ | ||
| readonly previous: () => Promise<string>; | ||
| /** Generates the password for the next time window. */ | ||
| readonly next: () => Promise<string>; | ||
| } | ||
| /** | ||
| * Creates a cryptographic hash of the provided data using Web Crypto API (browser implementation). | ||
| * | ||
| * @param data - The string data to hash | ||
| * @param algorithm - The hash algorithm to use (defaults to SHA-256) | ||
| * @returns A promise that resolves to the hexadecimal hash string | ||
| * @throws {Error} When hash creation fails | ||
| * | ||
| * @example Creating a hash | ||
| * ```typescript | ||
| * const hash = await createHash('secret-message') | ||
| * // => '64-character hexadecimal string' | ||
| * ``` | ||
| */ | ||
| declare function createHash(data: string, algorithm?: HashAlgorithm): Promise<string>; | ||
| declare const createVault: (singleUse?: boolean) => Readonly<Vault>; | ||
| declare const decrypt: (encrypted: Uint8Array, password: string) => Promise<string>; | ||
| declare const encrypt: (message: string, password: string) => Promise<Uint8Array>; | ||
| /** | ||
| * Shape of the frozen encryption configuration. | ||
| */ | ||
| interface EncryptionConfigShape { | ||
| /** Algorithm name used for encryption */ | ||
| name: EncryptionConfig['name']; | ||
| } | ||
| /** | ||
| * Frozen encryption configuration to prevent runtime tampering. | ||
| * Using AES-GCM as the default algorithm for authenticated encryption. | ||
| */ | ||
| declare const encryptionConfig: Readonly<EncryptionConfigShape>; | ||
| declare const generateKey: (password: string, salt: Uint8Array) => Promise<CryptoKey>; | ||
| /** | ||
| * Generates cryptographically secure random values using Web Crypto API (browser implementation). | ||
| * | ||
| * @param byteLength - The number of random bytes to generate | ||
| * @returns A Uint8Array containing the random bytes | ||
| * @throws {Error} When byteLength is not provided or is zero | ||
| * | ||
| * @example Generating random bytes | ||
| * ```typescript | ||
| * const randomBytes = getRandomValues(16) | ||
| * // => Uint8Array(16) with cryptographically secure random values | ||
| * ``` | ||
| */ | ||
| declare function getRandomValues(byteLength: number): Uint8Array; | ||
| /** | ||
| * Generates a UTC time-based one-time password (TOTP) with configurable time window and offset (browser implementation). | ||
| * Uses Web Crypto API for hash generation. | ||
| * | ||
| * @param currentUtcTime - The current UTC time for password generation | ||
| * @param baseTimeWindow - The base time window in minutes that defines password validity period | ||
| * @param windowOffset - The window offset (-1 for previous window, 0 for current, 1 for next window) | ||
| * @returns A promise that resolves to the generated time-based password | ||
| */ | ||
| declare const getTimeBasedPassword: (currentUtcTime: Date, baseTimeWindow: number, windowOffset?: -1 | 0 | 1) => Promise<string>; | ||
| /** | ||
| * Generates time-based one-time passwords (TOTP) for current, previous, and next time windows (browser implementation). | ||
| * Useful for handling time synchronization issues by providing passwords across adjacent time windows. | ||
| * | ||
| * @param currentUtcTime - The current UTC time for password generation | ||
| * @param baseTimeWindow - The base time window in minutes that defines password validity periods | ||
| * @returns An object containing generator functions for current, previous, and next window passwords | ||
| */ | ||
| declare const getTimeBasedPasswords: (currentUtcTime: Date, baseTimeWindow: number) => Readonly<TimeBasedPasswordGenerators>; | ||
| /** | ||
| * Validates whether the provided value is a valid SHA-256 hash string. | ||
| * Checks for exactly 64 hexadecimal characters (case-insensitive). | ||
| * | ||
| * @param hash - The value to validate as a SHA-256 hash | ||
| * @returns True if the value is a valid SHA-256 hash string, false otherwise | ||
| * | ||
| * @example Validating SHA-256 hashes | ||
| * ```typescript | ||
| * isSHA256Hash('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') | ||
| * // => true | ||
| * | ||
| * isSHA256Hash('invalid') | ||
| * // => false | ||
| * ``` | ||
| */ | ||
| declare function isSHA256Hash(hash: unknown): boolean; | ||
| declare const subtle: SubtleCrypto; | ||
| export { createHash, createVault, decrypt, encrypt, encryptionConfig, generateKey, getRandomValues, getTimeBasedPassword, getTimeBasedPasswords, isSHA256Hash, subtle }; | ||
| export type { EncryptionConfig, HashAlgorithm, TimeBasedPasswordGenerators, Vault }; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../libs/cryptography/src/browser/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,YAAY,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,YAAY,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAA;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../libs/cryptography/src/browser/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,YAAY,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,YAAY,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,YAAY,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAA;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA"} |
+12
-530
@@ -1,249 +0,14 @@ | ||
| /** | ||
| * Safe copies of Array built-in static methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/array | ||
| */ | ||
| const _Array = globalThis.Array; | ||
| /** | ||
| * (Safe copy) Determines whether the passed value is an Array. | ||
| */ | ||
| const isArray = _Array.isArray; | ||
| /** | ||
| * (Safe copy) Creates an array from an array-like or iterable object. | ||
| */ | ||
| const from = _Array.from; | ||
| import { from } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.esm.js'; | ||
| import { createError } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.esm.js'; | ||
| import { createUint8Array } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays/index.esm.js'; | ||
| import { utf8StringToUint8Array, arrayBufferToUtf8String } from '../_dependencies/@hyperfrontend/string-utils/browser/index.esm.js'; | ||
| import { getType } from '../_dependencies/@hyperfrontend/data-utils/index.esm.js'; | ||
| import { freeze, create } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.esm.js'; | ||
| import { createMap } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/map/index.esm.js'; | ||
| import { createDate } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/date/index.esm.js'; | ||
| import { randomPseudoTimeBased } from '../_dependencies/@hyperfrontend/random-generator-utils/index.esm.js'; | ||
| import { normalizeToBaseTimeWindow } from '../_dependencies/@hyperfrontend/time-utils/index.esm.js'; | ||
| import { encryptionConfig } from '../_shared/lib/encryption-config/index.esm.js'; | ||
| import { isSHA256Hash } from '../_shared/lib/is-sha-256-hash/index.esm.js'; | ||
| /** | ||
| * Safe copies of Error built-ins via factory functions. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides factory functions that use Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/error | ||
| */ | ||
| const _Error = globalThis.Error; | ||
| const _Reflect$4 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Error using the captured Error constructor. | ||
| * Use this instead of `new Error()`. | ||
| * | ||
| * @param message - Optional error message. | ||
| * @param options - Optional error options. | ||
| * @returns A new Error instance. | ||
| * | ||
| * @example Creating Error instances | ||
| * ```typescript | ||
| * const error = createError('Operation failed') | ||
| * // With cause for error chaining | ||
| * const wrapped = createError('Request failed', { cause: originalError }) | ||
| * ``` | ||
| */ | ||
| const createError = (message, options) => _Reflect$4.construct(_Error, [message, options]); | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of TypedArray and ArrayBuffer built-ins via factory functions. | ||
| * | ||
| * Provides safe references to Uint8Array, Int8Array, ArrayBuffer, DataView, etc. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays | ||
| */ | ||
| const _ArrayBuffer = globalThis.ArrayBuffer; | ||
| const _SharedArrayBuffer = globalThis.SharedArrayBuffer; | ||
| const _Uint8Array = globalThis.Uint8Array; | ||
| const _Uint8ClampedArray = globalThis.Uint8ClampedArray; | ||
| const _Uint16Array = globalThis.Uint16Array; | ||
| const _Uint32Array = globalThis.Uint32Array; | ||
| const _Int8Array = globalThis.Int8Array; | ||
| const _Int16Array = globalThis.Int16Array; | ||
| const _Int32Array = globalThis.Int32Array; | ||
| const _Float32Array = globalThis.Float32Array; | ||
| const _Float64Array = globalThis.Float64Array; | ||
| const _BigInt64Array = globalThis.BigInt64Array; | ||
| const _BigUint64Array = globalThis.BigUint64Array; | ||
| const _Reflect$3 = globalThis.Reflect; | ||
| function createUint8Array(arg, byteOffset, length) { | ||
| if (typeof arg === 'number') { | ||
| return _Reflect$3.construct(_Uint8Array, [arg]); | ||
| } | ||
| if (arg instanceof _ArrayBuffer || arg instanceof _SharedArrayBuffer) { | ||
| return _Reflect$3.construct(_Uint8Array, [arg, byteOffset, length]); | ||
| } | ||
| return _Reflect$3.construct(_Uint8Array, [arg]); | ||
| } | ||
| /** | ||
| * (Safe copy) Creates a new Uint8Array from an array-like or iterable object. | ||
| */ | ||
| _Uint8Array.from.bind(_Uint8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8Array from a variable number of arguments. | ||
| */ | ||
| _Uint8Array.of.bind(_Uint8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8ClampedArray from an array-like or iterable object. | ||
| */ | ||
| _Uint8ClampedArray.from.bind(_Uint8ClampedArray); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8ClampedArray from a variable number of arguments. | ||
| */ | ||
| _Uint8ClampedArray.of.bind(_Uint8ClampedArray); | ||
| /** | ||
| * (Safe copy) Creates a new Uint16Array from an array-like or iterable object. | ||
| */ | ||
| _Uint16Array.from.bind(_Uint16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint16Array from a variable number of arguments. | ||
| */ | ||
| _Uint16Array.of.bind(_Uint16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint32Array from an array-like or iterable object. | ||
| */ | ||
| _Uint32Array.from.bind(_Uint32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint32Array from a variable number of arguments. | ||
| */ | ||
| _Uint32Array.of.bind(_Uint32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int8Array from an array-like or iterable object. | ||
| */ | ||
| _Int8Array.from.bind(_Int8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int8Array from a variable number of arguments. | ||
| */ | ||
| _Int8Array.of.bind(_Int8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int16Array from an array-like or iterable object. | ||
| */ | ||
| _Int16Array.from.bind(_Int16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int16Array from a variable number of arguments. | ||
| */ | ||
| _Int16Array.of.bind(_Int16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int32Array from an array-like or iterable object. | ||
| */ | ||
| _Int32Array.from.bind(_Int32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int32Array from a variable number of arguments. | ||
| */ | ||
| _Int32Array.of.bind(_Int32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float32Array from an array-like or iterable object. | ||
| */ | ||
| _Float32Array.from.bind(_Float32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float32Array from a variable number of arguments. | ||
| */ | ||
| _Float32Array.of.bind(_Float32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float64Array from an array-like or iterable object. | ||
| */ | ||
| _Float64Array.from.bind(_Float64Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float64Array from a variable number of arguments. | ||
| */ | ||
| _Float64Array.of.bind(_Float64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigInt64Array from an array-like or iterable object. | ||
| */ | ||
| _BigInt64Array.from.bind(_BigInt64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigInt64Array from a variable number of arguments. | ||
| */ | ||
| _BigInt64Array.of.bind(_BigInt64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigUint64Array from an array-like or iterable object. | ||
| */ | ||
| _BigUint64Array.from.bind(_BigUint64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigUint64Array from a variable number of arguments. | ||
| */ | ||
| _BigUint64Array.of.bind(_BigUint64Array); | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of encoding built-ins via factory functions. | ||
| * | ||
| * Provides safe references to TextEncoder, TextDecoder, atob, and btoa. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/encoding | ||
| */ | ||
| const _TextEncoder = globalThis.TextEncoder; | ||
| const _TextDecoder = globalThis.TextDecoder; | ||
| const _Reflect$2 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new TextEncoder using the captured TextEncoder constructor. | ||
| * Use this instead of `new TextEncoder()`. | ||
| * | ||
| * @returns A new TextEncoder instance. | ||
| */ | ||
| const createTextEncoder = () => _Reflect$2.construct(_TextEncoder, []); | ||
| /** | ||
| * (Safe copy) Creates a new TextDecoder using the captured TextDecoder constructor. | ||
| * Use this instead of `new TextDecoder()`. | ||
| * | ||
| * @param label - The encoding label (e.g., 'utf-8', 'utf-16'). Defaults to 'utf-8'. | ||
| * @param options - Optional TextDecoderOptions. | ||
| * @returns A new TextDecoder instance. | ||
| */ | ||
| const createTextDecoder = (label, options) => _Reflect$2.construct(_TextDecoder, [label, options]); | ||
| createTextEncoder(); | ||
| const UTF8_DECODER = createTextDecoder('utf8'); | ||
| ({ | ||
| SIMPLE: { | ||
| ARRAY: createUint8Array([104, 101, 108, 108, 111]), | ||
| }, | ||
| NON_ASCII: { | ||
| ARRAY: createUint8Array([227, 129, 147, 227, 130, 147, 227, 129, 171, 227, 129, 161, 227, 129, 175]), | ||
| }, | ||
| EMPTY: { | ||
| ARRAY: createUint8Array([]), | ||
| }, | ||
| }); | ||
| /** | ||
| * Converts an ArrayBuffer to a UTF-8 encoded string. | ||
| * | ||
| * @param uint8Array - The ArrayBuffer to convert | ||
| * @returns The decoded UTF-8 string | ||
| * | ||
| * @example Converting ArrayBuffer to string | ||
| * ```typescript | ||
| * const encoder = new TextEncoder() | ||
| * const buffer = encoder.encode('Hello, World!').buffer | ||
| * const decoded = arrayBufferToUtf8String(buffer) | ||
| * // => 'Hello, World!' | ||
| * ``` | ||
| */ | ||
| function arrayBufferToUtf8String(uint8Array) { | ||
| return UTF8_DECODER.decode(uint8Array); | ||
| } | ||
| /** | ||
| * Converts a UTF-8 string to a Uint8Array (browser implementation). | ||
| * | ||
| * @param text - The UTF-8 string to convert | ||
| * @returns The encoded Uint8Array | ||
| * | ||
| * @example Encoding string to bytes (browser) | ||
| * ```typescript | ||
| * const bytes = utf8StringToUint8Array('Hello') | ||
| * // => Uint8Array([72, 101, 108, 108, 111]) | ||
| * ``` | ||
| */ | ||
| function utf8StringToUint8Array(text) { | ||
| return createTextEncoder().encode(text); | ||
| } | ||
| const subtle = globalThis.crypto.subtle; | ||
@@ -277,134 +42,2 @@ | ||
| /** | ||
| * Safe copies of Object built-in methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/object | ||
| */ | ||
| const _Object = globalThis.Object; | ||
| /** | ||
| * (Safe copy) Prevents modification of existing property attributes and values, | ||
| * and prevents the addition of new properties. | ||
| */ | ||
| const freeze = _Object.freeze; | ||
| /** | ||
| * (Safe copy) Creates an object that has the specified prototype or that has null prototype. | ||
| */ | ||
| const create = _Object.create; | ||
| const registeredClasses = []; | ||
| /** | ||
| * Returns the data type of the target. | ||
| * Uses native `typeof` operator, however, makes distinction between `null`, `array`, and `object`. | ||
| * Also, when classes are registered via `registerClass`, it checks if objects are instance of any known registered class. | ||
| * | ||
| * @param target - The target to get the data type of. | ||
| * @returns The data type of the target. | ||
| * | ||
| * @example Determining data types | ||
| * ```typescript | ||
| * getType([1, 2]) // 'array' | ||
| * getType({ a: 1 }) // 'object' | ||
| * getType(null) // 'null' | ||
| * ``` | ||
| */ | ||
| const getType = (target) => { | ||
| if (target === null) | ||
| return 'null'; | ||
| const nativeDataType = typeof target; | ||
| if (nativeDataType === 'object') { | ||
| if (isArray(target)) | ||
| return 'array'; | ||
| for (const registeredClass of registeredClasses) { | ||
| if (target instanceof registeredClass) | ||
| return registeredClass.name; | ||
| } | ||
| } | ||
| return nativeDataType; | ||
| }; | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Map built-in via factory function. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/map | ||
| */ | ||
| const _Map = globalThis.Map; | ||
| const _Reflect$1 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Map using the captured Map constructor. | ||
| * Use this instead of `new Map()`. | ||
| * | ||
| * @param iterable - Optional iterable of key-value pairs. | ||
| * @returns A new Map instance. | ||
| */ | ||
| const createMap = (iterable) => _Reflect$1.construct(_Map, iterable ? [iterable] : []); | ||
| /* eslint-disable jsdoc/require-param */ | ||
| /** | ||
| * Safe copies of Date built-in via factory function and static methods. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/date | ||
| */ | ||
| const _Date = globalThis.Date; | ||
| const _Reflect = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Date using the captured Date constructor. | ||
| * Use this instead of `new Date()`. Accepts all standard Date constructor signatures. | ||
| * | ||
| * @returns A new Date instance. | ||
| * | ||
| * @example Creating Date instances | ||
| * ```typescript | ||
| * const now = createDate() | ||
| * const fromTimestamp = createDate(1704067200000) | ||
| * const fromString = createDate('2024-01-01T00:00:00Z') | ||
| * const fromParts = createDate(2024, 0, 1, 12, 30, 0) // Jan 1, 2024 12:30:00 | ||
| * ``` | ||
| */ | ||
| function createDate(...args) { | ||
| return _Reflect.construct(_Date, args); | ||
| } | ||
| /** | ||
| * Safe copies of Math built-in methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/math | ||
| */ | ||
| const _Math = globalThis.Math; | ||
| /** | ||
| * (Safe copy) Returns the largest integer less than or equal to a number. | ||
| */ | ||
| const floor = _Math.floor; | ||
| /** | ||
| * (Safe copy) Returns the sine of a number. | ||
| */ | ||
| const sin = _Math.sin; | ||
| /** | ||
| * Frozen encryption configuration to prevent runtime tampering. | ||
| * Using AES-GCM as the default algorithm for authenticated encryption. | ||
| */ | ||
| const encryptionConfig = freeze({ | ||
| name: 'AES-GCM', | ||
| }); | ||
| /** | ||
| * Creates a key generator function that derives encryption keys from passwords using PBKDF2. | ||
@@ -679,132 +312,2 @@ * Uses 100,000 iterations with SHA-256 hashing for secure key derivation. | ||
| /** | ||
| * A simple pseudo-random number generator. | ||
| * | ||
| * @param seed - The seed for the generator. | ||
| * @returns A pseudo-random number between 0 and 1. | ||
| * | ||
| * @example Reproducible random values for testing | ||
| * ```typescript | ||
| * // Same seed always yields the same result | ||
| * randomPseudo(42) | ||
| * // => 0.6853... (deterministic) | ||
| * | ||
| * randomPseudo(42) | ||
| * // => 0.6853... (identical) | ||
| * | ||
| * randomPseudo(43) | ||
| * // => 0.1762... (different seed, different result) | ||
| * ``` | ||
| */ | ||
| function randomPseudo(seed) { | ||
| const x = sin(seed) * 10000; | ||
| return x - floor(x); | ||
| } | ||
| /** | ||
| * Generates a deterministic pseudo-random variation based solely on the seed time. | ||
| * | ||
| * @param seedTime - The seed time for the variation. | ||
| * @returns The pseudo-random variation as a number. | ||
| * | ||
| * @example Reproducible randomness for a specific timestamp | ||
| * ```typescript | ||
| * const releaseDate = new Date('2024-03-15T10:30:00Z') | ||
| * | ||
| * // Same date always produces the same result | ||
| * const value1 = randomPseudoTimeBased(releaseDate) | ||
| * const value2 = randomPseudoTimeBased(releaseDate) | ||
| * // value1 === value2 (deterministic) | ||
| * ``` | ||
| */ | ||
| function randomPseudoTimeBased(seedTime) { | ||
| return randomPseudo(seedTime.getTime()); | ||
| } | ||
| /** | ||
| * Safe copies of Number built-in methods and constants. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/number | ||
| */ | ||
| const _isNaN = globalThis.isNaN; | ||
| /** | ||
| * (Safe copy) Global isNaN function (coerces to number first, less strict than Number.isNaN). | ||
| */ | ||
| const globalIsNaN = _isNaN; | ||
| /** | ||
| * Normalizes a given time to the nearest base time window. | ||
| * | ||
| * @param time - The Date object to normalize to the nearest time window | ||
| * @param baseTimeWindow - The size of the time window in minutes for normalization | ||
| * @returns A new Date object normalized to the start of the time window | ||
| * | ||
| * @example Normalizing to 15-minute buckets | ||
| * ```typescript | ||
| * // Round timestamps to 15-minute intervals for analytics bucketing | ||
| * const eventTime = new Date('2024-03-15T14:23:45Z') | ||
| * const bucketTime = normalizeToBaseTimeWindow(eventTime, 15) | ||
| * // => 2024-03-15T14:15:00.000Z | ||
| * ``` | ||
| */ | ||
| function normalizeToBaseTimeWindow(time, baseTimeWindow) { | ||
| if (!time || !(time instanceof Date) || globalIsNaN(time.getTime())) { | ||
| throw createError('Invalid time input'); | ||
| } | ||
| if (baseTimeWindow <= 0) { | ||
| throw createError('Base time window must be positive'); | ||
| } | ||
| const timeInMs = time.getTime(); | ||
| const windowInMs = baseTimeWindow * 60 * 1000; | ||
| const normalizedTimeInMs = floor(timeInMs / windowInMs) * windowInMs; | ||
| return createDate(normalizedTimeInMs); | ||
| } | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Promise built-in methods via factory functions. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides factory functions that use Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/promise | ||
| */ | ||
| const _Promise = globalThis.Promise; | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves with the given value. | ||
| */ | ||
| _Promise.resolve.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that rejects with the given reason. | ||
| */ | ||
| _Promise.reject.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves when all promises resolve. | ||
| */ | ||
| _Promise.all.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves/rejects with the first settled promise. | ||
| */ | ||
| _Promise.race.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves when all promises settle. | ||
| */ | ||
| _Promise.allSettled.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves with the first fulfilled promise. | ||
| */ | ||
| _Promise.any.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Creates a Promise along with its resolve and reject functions. | ||
| * Note: Available only in ES2024+ environments. | ||
| */ | ||
| // eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
| _Promise.withResolvers?.bind(_Promise); | ||
| /** | ||
| * Creates a time-based one-time password (TOTP) generator function. | ||
@@ -877,23 +380,2 @@ * Generates passwords that change based on time windows, supporting previous/current/next window offsets. | ||
| /** | ||
| * Validates whether the provided value is a valid SHA-256 hash string. | ||
| * Checks for exactly 64 hexadecimal characters (case-insensitive). | ||
| * | ||
| * @param hash - The value to validate as a SHA-256 hash | ||
| * @returns True if the value is a valid SHA-256 hash string, false otherwise | ||
| * | ||
| * @example Validating SHA-256 hashes | ||
| * ```typescript | ||
| * isSHA256Hash('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') | ||
| * // => true | ||
| * | ||
| * isSHA256Hash('invalid') | ||
| * // => false | ||
| * ``` | ||
| */ | ||
| function isSHA256Hash(hash) { | ||
| return getType(hash) === 'string' ? /^[a-f0-9]{64}$/i.test(hash) : false; | ||
| } | ||
| export { createHash, createVault, decrypt, encrypt, encryptionConfig, generateKey, getRandomValues, getTimeBasedPassword, getTimeBasedPasswords, isSHA256Hash, subtle }; | ||
| //# sourceMappingURL=index.esm.js.map |
+9
-36
@@ -52,12 +52,8 @@ var HyperfrontendCryptography = (function (exports) { | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of TypedArray and ArrayBuffer built-ins via factory functions. | ||
| * Safe TypedArray and ArrayBuffer factories for protected array construction. | ||
| * | ||
| * Provides safe references to Uint8Array, Int8Array, ArrayBuffer, DataView, etc. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays | ||
| */ | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| const _ArrayBuffer = globalThis.ArrayBuffer; | ||
@@ -175,12 +171,8 @@ const _SharedArrayBuffer = globalThis.SharedArrayBuffer; | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of encoding built-ins via factory functions. | ||
| * Safe copies of encoding built-ins for TextEncoder, TextDecoder, atob, and btoa. | ||
| * | ||
| * Provides safe references to TextEncoder, TextDecoder, atob, and btoa. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/encoding | ||
| */ | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| const _TextEncoder = globalThis.TextEncoder; | ||
@@ -332,14 +324,8 @@ const _TextDecoder = globalThis.TextDecoder; | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Map built-in via factory function. | ||
| * Safe Map factory with optional groupBy for ES2024+. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/map | ||
| */ | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| const _Map = globalThis.Map; | ||
@@ -356,14 +342,8 @@ const _Reflect$1 = globalThis.Reflect; | ||
| /* eslint-disable jsdoc/require-param */ | ||
| /** | ||
| * Safe copies of Date built-in via factory function and static methods. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/date | ||
| */ | ||
| /* eslint-disable jsdoc/require-param */ | ||
| const _Date = globalThis.Date; | ||
@@ -770,14 +750,8 @@ const _Reflect = globalThis.Reflect; | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Promise built-in methods via factory functions. | ||
| * Safe Promise factory and bound static methods. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides factory functions that use Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/promise | ||
| */ | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| const _Promise = globalThis.Promise; | ||
@@ -918,2 +892,1 @@ /** | ||
| })({}); | ||
| //# sourceMappingURL=index.iife.js.map |
| var HyperfrontendCryptography=function(t){"use strict";const n=globalThis.Array,e=n.isArray,r=n.from,o=globalThis.Error,i=globalThis.Reflect,a=(t,n)=>i.construct(o,[t,n]),s=globalThis.ArrayBuffer,l=globalThis.SharedArrayBuffer,c=globalThis.Uint8Array,u=globalThis.Uint8ClampedArray,f=globalThis.Uint16Array,b=globalThis.Uint32Array,h=globalThis.Int8Array,g=globalThis.Int16Array,d=globalThis.Int32Array,y=globalThis.Float32Array,w=globalThis.Float64Array,m=globalThis.BigInt64Array,T=globalThis.BigUint64Array,p=globalThis.Reflect;function A(t,n,e){return"number"==typeof t?p.construct(c,[t]):t instanceof s||t instanceof l?p.construct(c,[t,n,e]):p.construct(c,[t])}c.from.bind(c),c.of.bind(c),u.from.bind(u),u.of.bind(u),f.from.bind(f),f.of.bind(f),b.from.bind(b),b.of.bind(b),h.from.bind(h),h.of.bind(h),g.from.bind(g),g.of.bind(g),d.from.bind(d),d.of.bind(d),y.from.bind(y),y.of.bind(y),w.from.bind(w),w.of.bind(w),m.from.bind(m),m.of.bind(m),T.from.bind(T),T.of.bind(T);const v=globalThis.TextEncoder,C=globalThis.TextDecoder,S=globalThis.Reflect,B=()=>S.construct(v,[]);B();const L=(R="utf8",S.construct(C,[R,P]));var R,P;function V(t){return B().encode(t)}A([104,101,108,108,111]),A([227,129,147,227,130,147,227,129,171,227,129,161,227,129,175]),A([]);const H=globalThis.crypto.subtle;async function K(t,n="SHA-256"){try{return r(A(await H.digest(n,V(t)))).map(t=>t.toString(16).padStart(2,"0")).join("")}catch{throw a("Error creating hash")}}const j=globalThis.Object,D=j.freeze,I=j.create,U=[],q=t=>{if(null===t)return"null";const n=typeof t;if("object"===n){if(e(t))return"array";for(const n of U)if(t instanceof n)return n.name}return n},E=globalThis.Map,F=globalThis.Reflect,k=globalThis.Date,x=globalThis.Reflect;function M(...t){return x.construct(k,t)}const N=globalThis.Math,z=N.floor,G=N.sin,O=D({name:"AES-GCM"});const W=function(t,n){return async function(e,r){if("string"!==q(e))throw a("Cannot generate key without a password type string");if(0===e.length)throw a("Cannot generate key with an empty string as password");if(!r)throw a("Cannot generate key without a salt");const o=await t.importKey("raw",n(e),{name:"PBKDF2"},!1,["deriveKey"]);return t.deriveKey({name:"PBKDF2",salt:r,iterations:1e5,hash:"SHA-256"},o,{...O,length:256},!1,["encrypt","decrypt"])}}(H,V);const $=function(t,n,e){return async function(r,o){if(!r||!r.length)throw a("Cannot decrypt without a message");if(!o)throw a("Cannot decrypt without a password");const i=r.slice(0,16),s=r.slice(16,28),l=r.slice(28),c=await n(o,i),u=await e.decrypt({...O,iv:s},c,l);return t(u)}}(function(t){return L.decode(t)},W,H);function J(t){if(!t)throw a("Cannot generate random values without a byte length.");return globalThis.crypto.getRandomValues(A(t))}const Q=function(t,n,e,r){return async function(o,i){if(!o)throw a("Cannot encrypt an empty message.");if(!i)throw a("Cannot encrypt without a password.");const s=n(16),l=n(12),c=await e(i,s),u=A(await r.encrypt({...O,iv:l},c,t(o))),f=A(s.byteLength+l.byteLength+u.byteLength);return f.set(s,0),f.set(l,s.byteLength),f.set(u,s.byteLength+l.byteLength),f}}(V,J,W,H);const X=function(t,n,e){return function(o=!1){let i=r(t(16)).map(t=>t.toString(16).padStart(2,"0")).join(""),s=!1,l=!1,c=F.construct(E,u?[u]:[]);var u;function f(){c.clear(),c=null,i=null,l=!0}const b=I(null,{write:{value:async function(t,e){if(l)throw a("Vault is closed.");if(!t)throw a("Label is required.");if(!e)throw a("Value is required.");const r=await n(e,i);c.set(t,r)},enumerable:!1,writable:!1,configurable:!1},read:{value:async function(t,n){if(l)throw a("Vault is closed.");if(!t)throw a("Label is required.");if(!n)throw a("Password is required.");const r=c.get(t);if(!r)return null;const i=await e(r,n);return o&&f(),i},enumerable:!1,writable:!1,configurable:!1},getPassword:{value:function(){if(l)throw a("Vault is closed.");return s?null:(s=!0,i)},enumerable:!1,writable:!1,configurable:!1},close:{value:f,enumerable:!1,writable:!1,configurable:!1}});return D(b)}}(J,Q,$);function Y(t){return function(t){const n=1e4*G(t);return n-z(n)}(t.getTime())}const Z=globalThis.isNaN;const _=globalThis.Promise;_.resolve.bind(_),_.reject.bind(_),_.all.bind(_),_.race.bind(_),_.allSettled.bind(_),_.any.bind(_),_.withResolvers?.bind(_);const tt=function(t){return async function(n,e,r=0){if("number"!==q(r)||r<-1||1<r)throw a("Window offset must be -1, 0, or 1.");const o=M(n.getTime()+r*e*6e4);return await t(Y(function(t,n){if(!t||!(t instanceof Date)||Z(t.getTime()))throw a("Invalid time input");if(n<=0)throw a("Base time window must be positive");const e=t.getTime(),r=60*n*1e3;return M(z(e/r)*r)}(o,e)).toString())}}(K);const nt=function(t){return function(n,e){return D({current:()=>t(n,e,0),previous:()=>t(n,e,-1),next:()=>t(n,e,1)})}}(tt);return t.createHash=K,t.createVault=X,t.decrypt=$,t.encrypt=Q,t.encryptionConfig=O,t.generateKey=W,t.getRandomValues=J,t.getTimeBasedPassword=tt,t.getTimeBasedPasswords=nt,t.isSHA256Hash=function(t){return"string"===q(t)&&/^[a-f0-9]{64}$/i.test(t)},t.subtle=H,t}({}); | ||
| //# sourceMappingURL=index.iife.min.js.map |
+9
-36
@@ -55,12 +55,8 @@ (function (global, factory) { | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of TypedArray and ArrayBuffer built-ins via factory functions. | ||
| * Safe TypedArray and ArrayBuffer factories for protected array construction. | ||
| * | ||
| * Provides safe references to Uint8Array, Int8Array, ArrayBuffer, DataView, etc. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays | ||
| */ | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| const _ArrayBuffer = globalThis.ArrayBuffer; | ||
@@ -178,12 +174,8 @@ const _SharedArrayBuffer = globalThis.SharedArrayBuffer; | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of encoding built-ins via factory functions. | ||
| * Safe copies of encoding built-ins for TextEncoder, TextDecoder, atob, and btoa. | ||
| * | ||
| * Provides safe references to TextEncoder, TextDecoder, atob, and btoa. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/encoding | ||
| */ | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| const _TextEncoder = globalThis.TextEncoder; | ||
@@ -335,14 +327,8 @@ const _TextDecoder = globalThis.TextDecoder; | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Map built-in via factory function. | ||
| * Safe Map factory with optional groupBy for ES2024+. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/map | ||
| */ | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| const _Map = globalThis.Map; | ||
@@ -359,14 +345,8 @@ const _Reflect$1 = globalThis.Reflect; | ||
| /* eslint-disable jsdoc/require-param */ | ||
| /** | ||
| * Safe copies of Date built-in via factory function and static methods. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/date | ||
| */ | ||
| /* eslint-disable jsdoc/require-param */ | ||
| const _Date = globalThis.Date; | ||
@@ -773,14 +753,8 @@ const _Reflect = globalThis.Reflect; | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Promise built-in methods via factory functions. | ||
| * Safe Promise factory and bound static methods. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides factory functions that use Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/promise | ||
| */ | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| const _Promise = globalThis.Promise; | ||
@@ -919,2 +893,1 @@ /** | ||
| })); | ||
| //# sourceMappingURL=index.umd.js.map |
| !function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((t="undefined"!=typeof globalThis?globalThis:t||self).HyperfrontendCryptography={})}(this,function(t){"use strict";const n=globalThis.Array,e=n.isArray,r=n.from,o=globalThis.Error,i=globalThis.Reflect,a=(t,n)=>i.construct(o,[t,n]),s=globalThis.ArrayBuffer,l=globalThis.SharedArrayBuffer,c=globalThis.Uint8Array,u=globalThis.Uint8ClampedArray,f=globalThis.Uint16Array,b=globalThis.Uint32Array,d=globalThis.Int8Array,h=globalThis.Int16Array,g=globalThis.Int32Array,y=globalThis.Float32Array,w=globalThis.Float64Array,m=globalThis.BigInt64Array,p=globalThis.BigUint64Array,T=globalThis.Reflect;function A(t,n,e){return"number"==typeof t?T.construct(c,[t]):t instanceof s||t instanceof l?T.construct(c,[t,n,e]):T.construct(c,[t])}c.from.bind(c),c.of.bind(c),u.from.bind(u),u.of.bind(u),f.from.bind(f),f.of.bind(f),b.from.bind(b),b.of.bind(b),d.from.bind(d),d.of.bind(d),h.from.bind(h),h.of.bind(h),g.from.bind(g),g.of.bind(g),y.from.bind(y),y.of.bind(y),w.from.bind(w),w.of.bind(w),m.from.bind(m),m.of.bind(m),p.from.bind(p),p.of.bind(p);const v=globalThis.TextEncoder,C=globalThis.TextDecoder,S=globalThis.Reflect,B=()=>S.construct(v,[]);B();const L=(R="utf8",S.construct(C,[R,P]));var R,P;function V(t){return B().encode(t)}A([104,101,108,108,111]),A([227,129,147,227,130,147,227,129,171,227,129,161,227,129,175]),A([]);const j=globalThis.crypto.subtle;async function x(t,n="SHA-256"){try{return r(A(await j.digest(n,V(t)))).map(t=>t.toString(16).padStart(2,"0")).join("")}catch{throw a("Error creating hash")}}const H=globalThis.Object,K=H.freeze,D=H.create,I=[],U=t=>{if(null===t)return"null";const n=typeof t;if("object"===n){if(e(t))return"array";for(const n of I)if(t instanceof n)return n.name}return n},q=globalThis.Map,E=globalThis.Reflect,F=globalThis.Date,k=globalThis.Reflect;function M(...t){return k.construct(F,t)}const N=globalThis.Math,z=N.floor,G=N.sin,O=K({name:"AES-GCM"});const W=function(t,n){return async function(e,r){if("string"!==U(e))throw a("Cannot generate key without a password type string");if(0===e.length)throw a("Cannot generate key with an empty string as password");if(!r)throw a("Cannot generate key without a salt");const o=await t.importKey("raw",n(e),{name:"PBKDF2"},!1,["deriveKey"]);return t.deriveKey({name:"PBKDF2",salt:r,iterations:1e5,hash:"SHA-256"},o,{...O,length:256},!1,["encrypt","decrypt"])}}(j,V);const $=function(t,n,e){return async function(r,o){if(!r||!r.length)throw a("Cannot decrypt without a message");if(!o)throw a("Cannot decrypt without a password");const i=r.slice(0,16),s=r.slice(16,28),l=r.slice(28),c=await n(o,i),u=await e.decrypt({...O,iv:s},c,l);return t(u)}}(function(t){return L.decode(t)},W,j);function J(t){if(!t)throw a("Cannot generate random values without a byte length.");return globalThis.crypto.getRandomValues(A(t))}const Q=function(t,n,e,r){return async function(o,i){if(!o)throw a("Cannot encrypt an empty message.");if(!i)throw a("Cannot encrypt without a password.");const s=n(16),l=n(12),c=await e(i,s),u=A(await r.encrypt({...O,iv:l},c,t(o))),f=A(s.byteLength+l.byteLength+u.byteLength);return f.set(s,0),f.set(l,s.byteLength),f.set(u,s.byteLength+l.byteLength),f}}(V,J,W,j);const X=function(t,n,e){return function(o=!1){let i=r(t(16)).map(t=>t.toString(16).padStart(2,"0")).join(""),s=!1,l=!1,c=E.construct(q,u?[u]:[]);var u;function f(){c.clear(),c=null,i=null,l=!0}const b=D(null,{write:{value:async function(t,e){if(l)throw a("Vault is closed.");if(!t)throw a("Label is required.");if(!e)throw a("Value is required.");const r=await n(e,i);c.set(t,r)},enumerable:!1,writable:!1,configurable:!1},read:{value:async function(t,n){if(l)throw a("Vault is closed.");if(!t)throw a("Label is required.");if(!n)throw a("Password is required.");const r=c.get(t);if(!r)return null;const i=await e(r,n);return o&&f(),i},enumerable:!1,writable:!1,configurable:!1},getPassword:{value:function(){if(l)throw a("Vault is closed.");return s?null:(s=!0,i)},enumerable:!1,writable:!1,configurable:!1},close:{value:f,enumerable:!1,writable:!1,configurable:!1}});return K(b)}}(J,Q,$);function Y(t){return function(t){const n=1e4*G(t);return n-z(n)}(t.getTime())}const Z=globalThis.isNaN;const _=globalThis.Promise;_.resolve.bind(_),_.reject.bind(_),_.all.bind(_),_.race.bind(_),_.allSettled.bind(_),_.any.bind(_),_.withResolvers?.bind(_);const tt=function(t){return async function(n,e,r=0){if("number"!==U(r)||r<-1||1<r)throw a("Window offset must be -1, 0, or 1.");const o=M(n.getTime()+r*e*6e4);return await t(Y(function(t,n){if(!t||!(t instanceof Date)||Z(t.getTime()))throw a("Invalid time input");if(n<=0)throw a("Base time window must be positive");const e=t.getTime(),r=60*n*1e3;return M(z(e/r)*r)}(o,e)).toString())}}(x);const nt=function(t){return function(n,e){return K({current:()=>t(n,e,0),previous:()=>t(n,e,-1),next:()=>t(n,e,1)})}}(tt);t.createHash=x,t.createVault=X,t.decrypt=$,t.encrypt=Q,t.encryptionConfig=O,t.generateKey=W,t.getRandomValues=J,t.getTimeBasedPassword=tt,t.getTimeBasedPasswords=nt,t.isSHA256Hash=function(t){return"string"===U(t)&&/^[a-f0-9]{64}$/i.test(t)},t.subtle=j}); | ||
| //# sourceMappingURL=index.umd.min.js.map |
+6
-0
@@ -5,2 +5,8 @@ # Changelog | ||
| ## [0.2.1](https://github.com/AndrewRedican/hyperfrontend/compare/a0ce00788db9fe1c2b1acf06dd59b2622cb1ed3f...466c0388c4cd516b9c704214140b4df1004098e6) - 2026-06-23 | ||
| ### Other | ||
| - **@hyperfrontend/workspace:** remove lib-builder and tool-package as implicit dependencies for all lib projects | ||
| ## [0.2.0](https://github.com/AndrewRedican/hyperfrontend/compare/a9185d9b783d7d8d51cc4ad91eb3178eba3e3930...8a05c80832de91cd61f8af064b417870ea1e3b01) - 2026-04-13 | ||
@@ -7,0 +13,0 @@ |
+2
-66
| 'use strict'; | ||
| const registeredClasses = []; | ||
| const index_cjs_js = require('../_dependencies/@hyperfrontend/data-utils/index.cjs.js'); | ||
| const { isSHA256Hash } = require('../_shared/lib/is-sha-256-hash/index.cjs.js'); | ||
| /** | ||
| * Safe copies of Array built-in static methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/array | ||
| */ | ||
| const _Array = globalThis.Array; | ||
| /** | ||
| * (Safe copy) Determines whether the passed value is an Array. | ||
| */ | ||
| const isArray = _Array.isArray; | ||
| /** | ||
| * Returns the data type of the target. | ||
| * Uses native `typeof` operator, however, makes distinction between `null`, `array`, and `object`. | ||
| * Also, when classes are registered via `registerClass`, it checks if objects are instance of any known registered class. | ||
| * | ||
| * @param target - The target to get the data type of. | ||
| * @returns The data type of the target. | ||
| * | ||
| * @example Determining data types | ||
| * ```typescript | ||
| * getType([1, 2]) // 'array' | ||
| * getType({ a: 1 }) // 'object' | ||
| * getType(null) // 'null' | ||
| * ``` | ||
| */ | ||
| const getType = (target) => { | ||
| if (target === null) | ||
| return 'null'; | ||
| const nativeDataType = typeof target; | ||
| if (nativeDataType === 'object') { | ||
| if (isArray(target)) | ||
| return 'array'; | ||
| for (const registeredClass of registeredClasses) { | ||
| if (target instanceof registeredClass) | ||
| return registeredClass.name; | ||
| } | ||
| } | ||
| return nativeDataType; | ||
| }; | ||
| /** | ||
| * Validates whether the provided value is a valid SHA-256 hash string. | ||
| * Checks for exactly 64 hexadecimal characters (case-insensitive). | ||
| * | ||
| * @param hash - The value to validate as a SHA-256 hash | ||
| * @returns True if the value is a valid SHA-256 hash string, false otherwise | ||
| * | ||
| * @example Validating SHA-256 hashes | ||
| * ```typescript | ||
| * isSHA256Hash('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') | ||
| * // => true | ||
| * | ||
| * isSHA256Hash('invalid') | ||
| * // => false | ||
| * ``` | ||
| */ | ||
| function isSHA256Hash(hash) { | ||
| return getType(hash) === 'string' ? /^[a-f0-9]{64}$/i.test(hash) : false; | ||
| } | ||
| exports.isSHA256Hash = isSHA256Hash; | ||
| //# sourceMappingURL=index.cjs.js.map |
+19
-2
@@ -1,2 +0,19 @@ | ||
| export { isSHA256Hash } from '../lib/is-sha-256-hash'; | ||
| //# sourceMappingURL=index.d.ts.map | ||
| /** | ||
| * Validates whether the provided value is a valid SHA-256 hash string. | ||
| * Checks for exactly 64 hexadecimal characters (case-insensitive). | ||
| * | ||
| * @param hash - The value to validate as a SHA-256 hash | ||
| * @returns True if the value is a valid SHA-256 hash string, false otherwise | ||
| * | ||
| * @example Validating SHA-256 hashes | ||
| * ```typescript | ||
| * isSHA256Hash('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') | ||
| * // => true | ||
| * | ||
| * isSHA256Hash('invalid') | ||
| * // => false | ||
| * ``` | ||
| */ | ||
| declare function isSHA256Hash(hash: unknown): boolean; | ||
| export { isSHA256Hash }; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../libs/cryptography/src/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../libs/cryptography/src/common/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA"} |
+2
-66
@@ -1,68 +0,4 @@ | ||
| const registeredClasses = []; | ||
| import { getType } from '../_dependencies/@hyperfrontend/data-utils/index.esm.js'; | ||
| import { isSHA256Hash } from '../_shared/lib/is-sha-256-hash/index.esm.js'; | ||
| /** | ||
| * Safe copies of Array built-in static methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/array | ||
| */ | ||
| const _Array = globalThis.Array; | ||
| /** | ||
| * (Safe copy) Determines whether the passed value is an Array. | ||
| */ | ||
| const isArray = _Array.isArray; | ||
| /** | ||
| * Returns the data type of the target. | ||
| * Uses native `typeof` operator, however, makes distinction between `null`, `array`, and `object`. | ||
| * Also, when classes are registered via `registerClass`, it checks if objects are instance of any known registered class. | ||
| * | ||
| * @param target - The target to get the data type of. | ||
| * @returns The data type of the target. | ||
| * | ||
| * @example Determining data types | ||
| * ```typescript | ||
| * getType([1, 2]) // 'array' | ||
| * getType({ a: 1 }) // 'object' | ||
| * getType(null) // 'null' | ||
| * ``` | ||
| */ | ||
| const getType = (target) => { | ||
| if (target === null) | ||
| return 'null'; | ||
| const nativeDataType = typeof target; | ||
| if (nativeDataType === 'object') { | ||
| if (isArray(target)) | ||
| return 'array'; | ||
| for (const registeredClass of registeredClasses) { | ||
| if (target instanceof registeredClass) | ||
| return registeredClass.name; | ||
| } | ||
| } | ||
| return nativeDataType; | ||
| }; | ||
| /** | ||
| * Validates whether the provided value is a valid SHA-256 hash string. | ||
| * Checks for exactly 64 hexadecimal characters (case-insensitive). | ||
| * | ||
| * @param hash - The value to validate as a SHA-256 hash | ||
| * @returns True if the value is a valid SHA-256 hash string, false otherwise | ||
| * | ||
| * @example Validating SHA-256 hashes | ||
| * ```typescript | ||
| * isSHA256Hash('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') | ||
| * // => true | ||
| * | ||
| * isSHA256Hash('invalid') | ||
| * // => false | ||
| * ``` | ||
| */ | ||
| function isSHA256Hash(hash) { | ||
| return getType(hash) === 'string' ? /^[a-f0-9]{64}$/i.test(hash) : false; | ||
| } | ||
| export { isSHA256Hash }; | ||
| //# sourceMappingURL=index.esm.js.map |
+47
-574
| 'use strict'; | ||
| var node_crypto = require('node:crypto'); | ||
| const node_crypto = require('node:crypto'); | ||
| const index_cjs_js$1 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.cjs.js'); | ||
| const index_cjs_js = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/promise/index.cjs.js'); | ||
| const index_cjs_js$4 = require('../_dependencies/@hyperfrontend/string-utils/node/index.cjs.js'); | ||
| const index_cjs_js$3 = require('../_dependencies/@hyperfrontend/data-utils/index.cjs.js'); | ||
| const index_cjs_js$2 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.cjs.js'); | ||
| const index_cjs_js$5 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays/index.cjs.js'); | ||
| const index_cjs_js$6 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.cjs.js'); | ||
| const index_cjs_js$7 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/map/index.cjs.js'); | ||
| const index_cjs_js$8 = require('../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/date/index.cjs.js'); | ||
| const index_cjs_js$9 = require('../_dependencies/@hyperfrontend/random-generator-utils/index.cjs.js'); | ||
| const index_cjs_js$a = require('../_dependencies/@hyperfrontend/time-utils/index.cjs.js'); | ||
| const { encryptionConfig } = require('../_shared/lib/encryption-config/index.cjs.js'); | ||
| const { isSHA256Hash } = require('../_shared/lib/is-sha-256-hash/index.cjs.js'); | ||
| /** | ||
| * Safe copies of Error built-ins via factory functions. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides factory functions that use Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/error | ||
| */ | ||
| const _Error = globalThis.Error; | ||
| const _Reflect$5 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Error using the captured Error constructor. | ||
| * Use this instead of `new Error()`. | ||
| * | ||
| * @param message - Optional error message. | ||
| * @param options - Optional error options. | ||
| * @returns A new Error instance. | ||
| * | ||
| * @example Creating Error instances | ||
| * ```typescript | ||
| * const error = createError('Operation failed') | ||
| * // With cause for error chaining | ||
| * const wrapped = createError('Request failed', { cause: originalError }) | ||
| * ``` | ||
| */ | ||
| const createError = (message, options) => _Reflect$5.construct(_Error, [message, options]); | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Promise built-in methods via factory functions. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides factory functions that use Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/promise | ||
| */ | ||
| const _Promise = globalThis.Promise; | ||
| const _Reflect$4 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Promise using the captured Promise constructor. | ||
| * Use this instead of `new Promise()`. | ||
| * | ||
| * @param executor - The executor function. | ||
| * @returns A new Promise instance. | ||
| */ | ||
| const createPromise = (executor) => _Reflect$4.construct(_Promise, [executor]); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves with the given value. | ||
| */ | ||
| _Promise.resolve.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that rejects with the given reason. | ||
| */ | ||
| _Promise.reject.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves when all promises resolve. | ||
| */ | ||
| _Promise.all.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves/rejects with the first settled promise. | ||
| */ | ||
| _Promise.race.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves when all promises settle. | ||
| */ | ||
| _Promise.allSettled.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves with the first fulfilled promise. | ||
| */ | ||
| _Promise.any.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Creates a Promise along with its resolve and reject functions. | ||
| * Note: Available only in ES2024+ environments. | ||
| */ | ||
| // eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
| _Promise.withResolvers?.bind(_Promise); | ||
| /** | ||
| * Creates a cryptographic hash of the provided data using Node.js crypto module. | ||
@@ -103,3 +33,3 @@ * | ||
| async function createHash(data, algorithm = 'SHA-256') { | ||
| return createPromise((resolve, reject) => { | ||
| return index_cjs_js.createPromise((resolve, reject) => { | ||
| try { | ||
@@ -110,3 +40,3 @@ const hash = node_crypto.createHash(algorithm).update(data).digest('hex'); | ||
| catch { | ||
| reject(createError('Error creating hash')); | ||
| reject(index_cjs_js$1.createError('Error creating hash')); | ||
| } | ||
@@ -116,355 +46,5 @@ }); | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of encoding built-ins via factory functions. | ||
| * | ||
| * Provides safe references to TextEncoder, TextDecoder, atob, and btoa. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/encoding | ||
| */ | ||
| const _TextEncoder = globalThis.TextEncoder; | ||
| const _TextDecoder = globalThis.TextDecoder; | ||
| const _Reflect$3 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new TextEncoder using the captured TextEncoder constructor. | ||
| * Use this instead of `new TextEncoder()`. | ||
| * | ||
| * @returns A new TextEncoder instance. | ||
| */ | ||
| const createTextEncoder = () => _Reflect$3.construct(_TextEncoder, []); | ||
| /** | ||
| * (Safe copy) Creates a new TextDecoder using the captured TextDecoder constructor. | ||
| * Use this instead of `new TextDecoder()`. | ||
| * | ||
| * @param label - The encoding label (e.g., 'utf-8', 'utf-16'). Defaults to 'utf-8'. | ||
| * @param options - Optional TextDecoderOptions. | ||
| * @returns A new TextDecoder instance. | ||
| */ | ||
| const createTextDecoder = (label, options) => _Reflect$3.construct(_TextDecoder, [label, options]); | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of TypedArray and ArrayBuffer built-ins via factory functions. | ||
| * | ||
| * Provides safe references to Uint8Array, Int8Array, ArrayBuffer, DataView, etc. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays | ||
| */ | ||
| const _ArrayBuffer = globalThis.ArrayBuffer; | ||
| const _SharedArrayBuffer = globalThis.SharedArrayBuffer; | ||
| const _Uint8Array = globalThis.Uint8Array; | ||
| const _Uint8ClampedArray = globalThis.Uint8ClampedArray; | ||
| const _Uint16Array = globalThis.Uint16Array; | ||
| const _Uint32Array = globalThis.Uint32Array; | ||
| const _Int8Array = globalThis.Int8Array; | ||
| const _Int16Array = globalThis.Int16Array; | ||
| const _Int32Array = globalThis.Int32Array; | ||
| const _Float32Array = globalThis.Float32Array; | ||
| const _Float64Array = globalThis.Float64Array; | ||
| const _BigInt64Array = globalThis.BigInt64Array; | ||
| const _BigUint64Array = globalThis.BigUint64Array; | ||
| const _Reflect$2 = globalThis.Reflect; | ||
| function createUint8Array(arg, byteOffset, length) { | ||
| if (typeof arg === 'number') { | ||
| return _Reflect$2.construct(_Uint8Array, [arg]); | ||
| } | ||
| if (arg instanceof _ArrayBuffer || arg instanceof _SharedArrayBuffer) { | ||
| return _Reflect$2.construct(_Uint8Array, [arg, byteOffset, length]); | ||
| } | ||
| return _Reflect$2.construct(_Uint8Array, [arg]); | ||
| } | ||
| /** | ||
| * (Safe copy) Creates a new Uint8Array from an array-like or iterable object. | ||
| */ | ||
| _Uint8Array.from.bind(_Uint8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8Array from a variable number of arguments. | ||
| */ | ||
| _Uint8Array.of.bind(_Uint8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8ClampedArray from an array-like or iterable object. | ||
| */ | ||
| _Uint8ClampedArray.from.bind(_Uint8ClampedArray); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8ClampedArray from a variable number of arguments. | ||
| */ | ||
| _Uint8ClampedArray.of.bind(_Uint8ClampedArray); | ||
| /** | ||
| * (Safe copy) Creates a new Uint16Array from an array-like or iterable object. | ||
| */ | ||
| _Uint16Array.from.bind(_Uint16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint16Array from a variable number of arguments. | ||
| */ | ||
| _Uint16Array.of.bind(_Uint16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint32Array from an array-like or iterable object. | ||
| */ | ||
| _Uint32Array.from.bind(_Uint32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint32Array from a variable number of arguments. | ||
| */ | ||
| _Uint32Array.of.bind(_Uint32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int8Array from an array-like or iterable object. | ||
| */ | ||
| _Int8Array.from.bind(_Int8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int8Array from a variable number of arguments. | ||
| */ | ||
| _Int8Array.of.bind(_Int8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int16Array from an array-like or iterable object. | ||
| */ | ||
| _Int16Array.from.bind(_Int16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int16Array from a variable number of arguments. | ||
| */ | ||
| _Int16Array.of.bind(_Int16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int32Array from an array-like or iterable object. | ||
| */ | ||
| _Int32Array.from.bind(_Int32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int32Array from a variable number of arguments. | ||
| */ | ||
| _Int32Array.of.bind(_Int32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float32Array from an array-like or iterable object. | ||
| */ | ||
| _Float32Array.from.bind(_Float32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float32Array from a variable number of arguments. | ||
| */ | ||
| _Float32Array.of.bind(_Float32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float64Array from an array-like or iterable object. | ||
| */ | ||
| _Float64Array.from.bind(_Float64Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float64Array from a variable number of arguments. | ||
| */ | ||
| _Float64Array.of.bind(_Float64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigInt64Array from an array-like or iterable object. | ||
| */ | ||
| _BigInt64Array.from.bind(_BigInt64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigInt64Array from a variable number of arguments. | ||
| */ | ||
| _BigInt64Array.of.bind(_BigInt64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigUint64Array from an array-like or iterable object. | ||
| */ | ||
| _BigUint64Array.from.bind(_BigUint64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigUint64Array from a variable number of arguments. | ||
| */ | ||
| _BigUint64Array.of.bind(_BigUint64Array); | ||
| createTextEncoder(); | ||
| const UTF8_DECODER = createTextDecoder('utf8'); | ||
| ({ | ||
| SIMPLE: { | ||
| ARRAY: createUint8Array([104, 101, 108, 108, 111]), | ||
| }, | ||
| NON_ASCII: { | ||
| ARRAY: createUint8Array([227, 129, 147, 227, 130, 147, 227, 129, 171, 227, 129, 161, 227, 129, 175]), | ||
| }, | ||
| EMPTY: { | ||
| ARRAY: createUint8Array([]), | ||
| }, | ||
| }); | ||
| /** | ||
| * Converts an ArrayBuffer to a UTF-8 encoded string. | ||
| * | ||
| * @param uint8Array - The ArrayBuffer to convert | ||
| * @returns The decoded UTF-8 string | ||
| * | ||
| * @example Converting ArrayBuffer to string | ||
| * ```typescript | ||
| * const encoder = new TextEncoder() | ||
| * const buffer = encoder.encode('Hello, World!').buffer | ||
| * const decoded = arrayBufferToUtf8String(buffer) | ||
| * // => 'Hello, World!' | ||
| * ``` | ||
| */ | ||
| function arrayBufferToUtf8String(uint8Array) { | ||
| return UTF8_DECODER.decode(uint8Array); | ||
| } | ||
| /** | ||
| * Converts a UTF-8 string to a Uint8Array (Node.js implementation). | ||
| * | ||
| * @param text - The UTF-8 string to convert | ||
| * @returns The encoded Uint8Array | ||
| * | ||
| * @example Encoding string to bytes (Node.js) | ||
| * ```typescript | ||
| * const bytes = utf8StringToUint8Array('Hello') | ||
| * // => Uint8Array([72, 101, 108, 108, 111]) | ||
| * ``` | ||
| */ | ||
| function utf8StringToUint8Array(text) { | ||
| return createUint8Array(Buffer.from(text, 'utf8')); | ||
| } | ||
| const subtle = node_crypto.webcrypto.subtle; | ||
| /** | ||
| * Safe copies of Object built-in methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/object | ||
| */ | ||
| const _Object = globalThis.Object; | ||
| /** | ||
| * (Safe copy) Prevents modification of existing property attributes and values, | ||
| * and prevents the addition of new properties. | ||
| */ | ||
| const freeze = _Object.freeze; | ||
| /** | ||
| * (Safe copy) Creates an object that has the specified prototype or that has null prototype. | ||
| */ | ||
| const create = _Object.create; | ||
| const registeredClasses = []; | ||
| /** | ||
| * Safe copies of Array built-in static methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/array | ||
| */ | ||
| const _Array = globalThis.Array; | ||
| /** | ||
| * (Safe copy) Determines whether the passed value is an Array. | ||
| */ | ||
| const isArray = _Array.isArray; | ||
| /** | ||
| * (Safe copy) Creates an array from an array-like or iterable object. | ||
| */ | ||
| const from = _Array.from; | ||
| /** | ||
| * Returns the data type of the target. | ||
| * Uses native `typeof` operator, however, makes distinction between `null`, `array`, and `object`. | ||
| * Also, when classes are registered via `registerClass`, it checks if objects are instance of any known registered class. | ||
| * | ||
| * @param target - The target to get the data type of. | ||
| * @returns The data type of the target. | ||
| * | ||
| * @example Determining data types | ||
| * ```typescript | ||
| * getType([1, 2]) // 'array' | ||
| * getType({ a: 1 }) // 'object' | ||
| * getType(null) // 'null' | ||
| * ``` | ||
| */ | ||
| const getType = (target) => { | ||
| if (target === null) | ||
| return 'null'; | ||
| const nativeDataType = typeof target; | ||
| if (nativeDataType === 'object') { | ||
| if (isArray(target)) | ||
| return 'array'; | ||
| for (const registeredClass of registeredClasses) { | ||
| if (target instanceof registeredClass) | ||
| return registeredClass.name; | ||
| } | ||
| } | ||
| return nativeDataType; | ||
| }; | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Map built-in via factory function. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/map | ||
| */ | ||
| const _Map = globalThis.Map; | ||
| const _Reflect$1 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Map using the captured Map constructor. | ||
| * Use this instead of `new Map()`. | ||
| * | ||
| * @param iterable - Optional iterable of key-value pairs. | ||
| * @returns A new Map instance. | ||
| */ | ||
| const createMap = (iterable) => _Reflect$1.construct(_Map, iterable ? [iterable] : []); | ||
| /* eslint-disable jsdoc/require-param */ | ||
| /** | ||
| * Safe copies of Date built-in via factory function and static methods. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/date | ||
| */ | ||
| const _Date = globalThis.Date; | ||
| const _Reflect = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Date using the captured Date constructor. | ||
| * Use this instead of `new Date()`. Accepts all standard Date constructor signatures. | ||
| * | ||
| * @returns A new Date instance. | ||
| * | ||
| * @example Creating Date instances | ||
| * ```typescript | ||
| * const now = createDate() | ||
| * const fromTimestamp = createDate(1704067200000) | ||
| * const fromString = createDate('2024-01-01T00:00:00Z') | ||
| * const fromParts = createDate(2024, 0, 1, 12, 30, 0) // Jan 1, 2024 12:30:00 | ||
| * ``` | ||
| */ | ||
| function createDate(...args) { | ||
| return _Reflect.construct(_Date, args); | ||
| } | ||
| /** | ||
| * Safe copies of Math built-in methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/math | ||
| */ | ||
| const _Math = globalThis.Math; | ||
| /** | ||
| * (Safe copy) Returns the largest integer less than or equal to a number. | ||
| */ | ||
| const floor = _Math.floor; | ||
| /** | ||
| * (Safe copy) Returns the sine of a number. | ||
| */ | ||
| const sin = _Math.sin; | ||
| /** | ||
| * Frozen encryption configuration to prevent runtime tampering. | ||
| * Using AES-GCM as the default algorithm for authenticated encryption. | ||
| */ | ||
| const encryptionConfig = freeze({ | ||
| name: 'AES-GCM', | ||
| }); | ||
| /** | ||
| * Creates a key generator function that derives encryption keys from passwords using PBKDF2. | ||
@@ -486,10 +66,10 @@ * Uses 100,000 iterations with SHA-256 hashing for secure key derivation. | ||
| return async function generateKey(password, salt) { | ||
| if (getType(password) !== 'string') { | ||
| throw createError('Cannot generate key without a password type string'); | ||
| if (index_cjs_js$3.getType(password) !== 'string') { | ||
| throw index_cjs_js$1.createError('Cannot generate key without a password type string'); | ||
| } | ||
| if (password.length === 0) { | ||
| throw createError('Cannot generate key with an empty string as password'); | ||
| throw index_cjs_js$1.createError('Cannot generate key with an empty string as password'); | ||
| } | ||
| if (!salt) { | ||
| throw createError('Cannot generate key without a salt'); | ||
| throw index_cjs_js$1.createError('Cannot generate key without a salt'); | ||
| } | ||
@@ -509,3 +89,3 @@ const keyMaterial = await subtle.importKey('raw', utf8StringToUint8Array(password), { name: 'PBKDF2' }, false, [ | ||
| const generateKey = createKeyGenerator(subtle, utf8StringToUint8Array); | ||
| const generateKey = createKeyGenerator(subtle, index_cjs_js$4.utf8StringToUint8Array); | ||
@@ -530,6 +110,6 @@ /** | ||
| if (!encrypted || !encrypted.length) { | ||
| throw createError('Cannot decrypt without a message'); | ||
| throw index_cjs_js$1.createError('Cannot decrypt without a message'); | ||
| } | ||
| if (!password) { | ||
| throw createError('Cannot decrypt without a password'); | ||
| throw index_cjs_js$1.createError('Cannot decrypt without a password'); | ||
| } | ||
@@ -545,3 +125,3 @@ const salt = encrypted.slice(0, 16); | ||
| const decrypt = createDecrypt(arrayBufferToUtf8String, generateKey, subtle); | ||
| const decrypt = createDecrypt(index_cjs_js$4.arrayBufferToUtf8String, generateKey, subtle); | ||
@@ -563,5 +143,5 @@ /** | ||
| if (!byteLength) { | ||
| throw createError('Cannot generate random values without a byte length.'); | ||
| throw index_cjs_js$1.createError('Cannot generate random values without a byte length.'); | ||
| } | ||
| return createUint8Array(node_crypto.randomBytes(byteLength)); | ||
| return index_cjs_js$5.createUint8Array(node_crypto.randomBytes(byteLength)); | ||
| } | ||
@@ -588,6 +168,6 @@ | ||
| if (!message) { | ||
| throw createError('Cannot encrypt an empty message.'); | ||
| throw index_cjs_js$1.createError('Cannot encrypt an empty message.'); | ||
| } | ||
| if (!password) { | ||
| throw createError('Cannot encrypt without a password.'); | ||
| throw index_cjs_js$1.createError('Cannot encrypt without a password.'); | ||
| } | ||
@@ -598,4 +178,4 @@ const salt = getRandomValues(16); | ||
| const encryptedContent = await subtle.encrypt({ ...encryptionConfig, iv: iv }, key, utf8StringToUint8Array(message)); | ||
| const buffer = createUint8Array(encryptedContent); | ||
| const result = createUint8Array(salt.byteLength + iv.byteLength + buffer.byteLength); | ||
| const buffer = index_cjs_js$5.createUint8Array(encryptedContent); | ||
| const result = index_cjs_js$5.createUint8Array(salt.byteLength + iv.byteLength + buffer.byteLength); | ||
| result.set(salt, 0); | ||
@@ -608,3 +188,3 @@ result.set(iv, salt.byteLength); | ||
| const encrypt = createEncrypt(utf8StringToUint8Array, getRandomValues, generateKey, subtle); | ||
| const encrypt = createEncrypt(index_cjs_js$4.utf8StringToUint8Array, getRandomValues, generateKey, subtle); | ||
@@ -631,3 +211,3 @@ /** | ||
| return function createVault(singleUse = false) { | ||
| let password = from(getRandomValues(16)) | ||
| let password = index_cjs_js$6.from(getRandomValues(16)) | ||
| .map((b) => b.toString(16).padStart(2, '0')) | ||
@@ -637,3 +217,3 @@ .join(''); | ||
| let isVaultClosed = false; | ||
| let storage = createMap(); | ||
| let storage = index_cjs_js$7.createMap(); | ||
| /** | ||
@@ -649,9 +229,9 @@ * Writes an encrypted value to the vault with the specified label. | ||
| if (isVaultClosed) { | ||
| throw createError('Vault is closed.'); | ||
| throw index_cjs_js$1.createError('Vault is closed.'); | ||
| } | ||
| if (!label) { | ||
| throw createError('Label is required.'); | ||
| throw index_cjs_js$1.createError('Label is required.'); | ||
| } | ||
| if (!value) { | ||
| throw createError('Value is required.'); | ||
| throw index_cjs_js$1.createError('Value is required.'); | ||
| } | ||
@@ -672,9 +252,9 @@ const encryptedValue = await encrypt(value, password); | ||
| if (isVaultClosed) { | ||
| throw createError('Vault is closed.'); | ||
| throw index_cjs_js$1.createError('Vault is closed.'); | ||
| } | ||
| if (!label) { | ||
| throw createError('Label is required.'); | ||
| throw index_cjs_js$1.createError('Label is required.'); | ||
| } | ||
| if (!password) { | ||
| throw createError('Password is required.'); | ||
| throw index_cjs_js$1.createError('Password is required.'); | ||
| } | ||
@@ -700,3 +280,3 @@ const encryptedValue = storage.get(label); | ||
| if (isVaultClosed) { | ||
| throw createError('Vault is closed.'); | ||
| throw index_cjs_js$1.createError('Vault is closed.'); | ||
| } | ||
@@ -719,3 +299,3 @@ if (isPasswordAccessed) { | ||
| } | ||
| const vault = create(null, { | ||
| const vault = index_cjs_js$2.create(null, { | ||
| write: { | ||
@@ -746,3 +326,3 @@ value: write, | ||
| }); | ||
| return freeze(vault); | ||
| return index_cjs_js$2.freeze(vault); | ||
| }; | ||
@@ -754,88 +334,2 @@ } | ||
| /** | ||
| * A simple pseudo-random number generator. | ||
| * | ||
| * @param seed - The seed for the generator. | ||
| * @returns A pseudo-random number between 0 and 1. | ||
| * | ||
| * @example Reproducible random values for testing | ||
| * ```typescript | ||
| * // Same seed always yields the same result | ||
| * randomPseudo(42) | ||
| * // => 0.6853... (deterministic) | ||
| * | ||
| * randomPseudo(42) | ||
| * // => 0.6853... (identical) | ||
| * | ||
| * randomPseudo(43) | ||
| * // => 0.1762... (different seed, different result) | ||
| * ``` | ||
| */ | ||
| function randomPseudo(seed) { | ||
| const x = sin(seed) * 10000; | ||
| return x - floor(x); | ||
| } | ||
| /** | ||
| * Generates a deterministic pseudo-random variation based solely on the seed time. | ||
| * | ||
| * @param seedTime - The seed time for the variation. | ||
| * @returns The pseudo-random variation as a number. | ||
| * | ||
| * @example Reproducible randomness for a specific timestamp | ||
| * ```typescript | ||
| * const releaseDate = new Date('2024-03-15T10:30:00Z') | ||
| * | ||
| * // Same date always produces the same result | ||
| * const value1 = randomPseudoTimeBased(releaseDate) | ||
| * const value2 = randomPseudoTimeBased(releaseDate) | ||
| * // value1 === value2 (deterministic) | ||
| * ``` | ||
| */ | ||
| function randomPseudoTimeBased(seedTime) { | ||
| return randomPseudo(seedTime.getTime()); | ||
| } | ||
| /** | ||
| * Safe copies of Number built-in methods and constants. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/number | ||
| */ | ||
| const _isNaN = globalThis.isNaN; | ||
| /** | ||
| * (Safe copy) Global isNaN function (coerces to number first, less strict than Number.isNaN). | ||
| */ | ||
| const globalIsNaN = _isNaN; | ||
| /** | ||
| * Normalizes a given time to the nearest base time window. | ||
| * | ||
| * @param time - The Date object to normalize to the nearest time window | ||
| * @param baseTimeWindow - The size of the time window in minutes for normalization | ||
| * @returns A new Date object normalized to the start of the time window | ||
| * | ||
| * @example Normalizing to 15-minute buckets | ||
| * ```typescript | ||
| * // Round timestamps to 15-minute intervals for analytics bucketing | ||
| * const eventTime = new Date('2024-03-15T14:23:45Z') | ||
| * const bucketTime = normalizeToBaseTimeWindow(eventTime, 15) | ||
| * // => 2024-03-15T14:15:00.000Z | ||
| * ``` | ||
| */ | ||
| function normalizeToBaseTimeWindow(time, baseTimeWindow) { | ||
| if (!time || !(time instanceof Date) || globalIsNaN(time.getTime())) { | ||
| throw createError('Invalid time input'); | ||
| } | ||
| if (baseTimeWindow <= 0) { | ||
| throw createError('Base time window must be positive'); | ||
| } | ||
| const timeInMs = time.getTime(); | ||
| const windowInMs = baseTimeWindow * 60 * 1000; | ||
| const normalizedTimeInMs = floor(timeInMs / windowInMs) * windowInMs; | ||
| return createDate(normalizedTimeInMs); | ||
| } | ||
| /** | ||
| * Creates a time-based one-time password (TOTP) generator function. | ||
@@ -855,7 +349,7 @@ * Generates passwords that change based on time windows, supporting previous/current/next window offsets. | ||
| return async function getTimeBasedPassword(currentUtcTime, baseTimeWindow, windowOffset = 0) { | ||
| if (getType(windowOffset) !== 'number' || windowOffset < -1 || 1 < windowOffset) { | ||
| throw createError('Window offset must be -1, 0, or 1.'); | ||
| if (index_cjs_js$3.getType(windowOffset) !== 'number' || windowOffset < -1 || 1 < windowOffset) { | ||
| throw index_cjs_js$1.createError('Window offset must be -1, 0, or 1.'); | ||
| } | ||
| const offsetTime = createDate(currentUtcTime.getTime() + windowOffset * baseTimeWindow * 60000); | ||
| return await createHash(randomPseudoTimeBased(normalizeToBaseTimeWindow(offsetTime, baseTimeWindow)).toString()); | ||
| const offsetTime = index_cjs_js$8.createDate(currentUtcTime.getTime() + windowOffset * baseTimeWindow * 60000); | ||
| return await createHash(index_cjs_js$9.randomPseudoTimeBased(index_cjs_js$a.normalizeToBaseTimeWindow(offsetTime, baseTimeWindow)).toString()); | ||
| }; | ||
@@ -895,3 +389,3 @@ } | ||
| const next = () => getTimeBasedPassword(currentUtcTime, baseTimeWindow, 1); | ||
| return freeze({ current, previous, next }); | ||
| return index_cjs_js$2.freeze({ current, previous, next }); | ||
| }; | ||
@@ -910,22 +404,2 @@ } | ||
| /** | ||
| * Validates whether the provided value is a valid SHA-256 hash string. | ||
| * Checks for exactly 64 hexadecimal characters (case-insensitive). | ||
| * | ||
| * @param hash - The value to validate as a SHA-256 hash | ||
| * @returns True if the value is a valid SHA-256 hash string, false otherwise | ||
| * | ||
| * @example Validating SHA-256 hashes | ||
| * ```typescript | ||
| * isSHA256Hash('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') | ||
| * // => true | ||
| * | ||
| * isSHA256Hash('invalid') | ||
| * // => false | ||
| * ``` | ||
| */ | ||
| function isSHA256Hash(hash) { | ||
| return getType(hash) === 'string' ? /^[a-f0-9]{64}$/i.test(hash) : false; | ||
| } | ||
| exports.createHash = createHash; | ||
@@ -942,2 +416,1 @@ exports.createVault = createVault; | ||
| exports.subtle = subtle; | ||
| //# sourceMappingURL=index.cjs.js.map |
+132
-16
@@ -1,16 +0,132 @@ | ||
| export type { HashAlgorithm } from '../lib/create-hash/model'; | ||
| export type { Vault } from '../lib/create-vault/model'; | ||
| export type { EncryptionConfig } from '../lib/encryption-config.model'; | ||
| export type { TimeBasedPasswordGenerators } from '../lib/get-time-based-passwords/model'; | ||
| export { createHash } from '../lib/create-hash/node'; | ||
| export { createVault } from '../lib/create-vault/node'; | ||
| export { decrypt } from '../lib/decrypt/node'; | ||
| export { encrypt } from '../lib/encrypt/node'; | ||
| export { encryptionConfig } from '../lib/encryption-config'; | ||
| export { generateKey } from '../lib/generate-key/node'; | ||
| export { getRandomValues } from '../lib/get-random-values/node'; | ||
| export { getTimeBasedPassword } from '../lib/get-time-based-password/node'; | ||
| export { getTimeBasedPasswords } from '../lib/get-time-based-passwords/node'; | ||
| export { isSHA256Hash } from '../lib/is-sha-256-hash'; | ||
| export { subtle } from '../lib/subtle/node'; | ||
| //# sourceMappingURL=index.d.ts.map | ||
| /** | ||
| * Supported cryptographic hash algorithms. | ||
| */ | ||
| type HashAlgorithm = 'SHA-256' | 'SHA-384' | 'SHA-512'; | ||
| /** | ||
| * Secure vault for storing encrypted key-value pairs. | ||
| */ | ||
| interface Vault { | ||
| /** Writes an encrypted value with the given label */ | ||
| readonly write: (label: string, value: string) => Promise<void>; | ||
| /** Reads and decrypts a value by label, requiring the password */ | ||
| readonly read: (label: string, password: string) => Promise<string | null>; | ||
| /** Retrieves the current vault password, or null if not set */ | ||
| readonly getPassword: () => string | null; | ||
| /** Closes the vault and clears sensitive data from memory */ | ||
| readonly close: () => void; | ||
| } | ||
| /** Configuration for encryption algorithm settings. */ | ||
| interface EncryptionConfig { | ||
| /** Encryption algorithm name (AES-GCM, AES-CBC, or AES-CTR). */ | ||
| name: 'AES-GCM' | 'AES-CBC' | 'AES-CTR'; | ||
| } | ||
| /** | ||
| * Generators for time-based one-time passwords (TOTP). | ||
| */ | ||
| interface TimeBasedPasswordGenerators { | ||
| /** Generates the password for the current time window. */ | ||
| readonly current: () => Promise<string>; | ||
| /** Generates the password for the previous time window. */ | ||
| readonly previous: () => Promise<string>; | ||
| /** Generates the password for the next time window. */ | ||
| readonly next: () => Promise<string>; | ||
| } | ||
| /** | ||
| * Creates a cryptographic hash of the provided data using Node.js crypto module. | ||
| * | ||
| * @param data - The string data to hash | ||
| * @param algorithm - The hash algorithm to use (defaults to SHA-256) | ||
| * @returns A promise that resolves to the hexadecimal hash string | ||
| * @throws {Error} When hash creation fails | ||
| * | ||
| * @example Creating a hash | ||
| * ```typescript | ||
| * const hash = await createHash('secret-message') | ||
| * // => '64-character hexadecimal string' | ||
| * ``` | ||
| */ | ||
| declare function createHash(data: string, algorithm?: HashAlgorithm): Promise<string>; | ||
| declare const createVault: (singleUse?: boolean) => Readonly<Vault>; | ||
| declare const decrypt: (encrypted: Uint8Array, password: string) => Promise<string>; | ||
| declare const encrypt: (message: string, password: string) => Promise<Uint8Array>; | ||
| /** | ||
| * Shape of the frozen encryption configuration. | ||
| */ | ||
| interface EncryptionConfigShape { | ||
| /** Algorithm name used for encryption */ | ||
| name: EncryptionConfig['name']; | ||
| } | ||
| /** | ||
| * Frozen encryption configuration to prevent runtime tampering. | ||
| * Using AES-GCM as the default algorithm for authenticated encryption. | ||
| */ | ||
| declare const encryptionConfig: Readonly<EncryptionConfigShape>; | ||
| declare const generateKey: (password: string, salt: Uint8Array) => Promise<CryptoKey>; | ||
| /** | ||
| * Generates cryptographically secure random values using Node.js crypto module. | ||
| * | ||
| * @param byteLength - The number of random bytes to generate | ||
| * @returns A Uint8Array containing the random bytes | ||
| * @throws {Error} When byteLength is not provided or is zero | ||
| * | ||
| * @example Generating random bytes | ||
| * ```typescript | ||
| * const randomBytes = getRandomValues(16) | ||
| * // => Uint8Array(16) with cryptographically secure random values | ||
| * ``` | ||
| */ | ||
| declare function getRandomValues(byteLength: number): Uint8Array; | ||
| /** | ||
| * Generates a UTC time-based one-time password (TOTP) with configurable time window and offset (Node.js implementation). | ||
| * Uses Node.js crypto module for hash generation. | ||
| * | ||
| * @param currentUtcTime - The current UTC time for password generation | ||
| * @param baseTimeWindow - The base time window in minutes that defines password validity period | ||
| * @param windowOffset - The window offset (-1 for previous window, 0 for current, 1 for next window) | ||
| * @returns A promise that resolves to the generated time-based password | ||
| */ | ||
| declare const getTimeBasedPassword: (currentUtcTime: Date, baseTimeWindow: number, windowOffset?: -1 | 0 | 1) => Promise<string>; | ||
| /** | ||
| * Generates time-based one-time passwords (TOTP) for current, previous, and next time windows (Node.js implementation). | ||
| * Useful for handling time synchronization issues by providing passwords across adjacent time windows. | ||
| * | ||
| * @param currentUtcTime - The current UTC time for password generation | ||
| * @param baseTimeWindow - The base time window in minutes that defines password validity periods | ||
| * @returns An object containing generator functions for current, previous, and next window passwords | ||
| */ | ||
| declare const getTimeBasedPasswords: (currentUtcTime: Date, baseTimeWindow: number) => Readonly<TimeBasedPasswordGenerators>; | ||
| /** | ||
| * Validates whether the provided value is a valid SHA-256 hash string. | ||
| * Checks for exactly 64 hexadecimal characters (case-insensitive). | ||
| * | ||
| * @param hash - The value to validate as a SHA-256 hash | ||
| * @returns True if the value is a valid SHA-256 hash string, false otherwise | ||
| * | ||
| * @example Validating SHA-256 hashes | ||
| * ```typescript | ||
| * isSHA256Hash('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') | ||
| * // => true | ||
| * | ||
| * isSHA256Hash('invalid') | ||
| * // => false | ||
| * ``` | ||
| */ | ||
| declare function isSHA256Hash(hash: unknown): boolean; | ||
| declare const subtle: SubtleCrypto; | ||
| export { createHash, createVault, decrypt, encrypt, encryptionConfig, generateKey, getRandomValues, getTimeBasedPassword, getTimeBasedPasswords, isSHA256Hash, subtle }; | ||
| export type { EncryptionConfig, HashAlgorithm, TimeBasedPasswordGenerators, Vault }; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../libs/cryptography/src/node/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,YAAY,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,YAAY,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAA;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAA;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../libs/cryptography/src/node/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,YAAY,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,YAAY,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,YAAY,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAA;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAA;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA"} |
+13
-540
| import { createHash as createHash$1, webcrypto, randomBytes } from 'node:crypto'; | ||
| import { createError } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.esm.js'; | ||
| import { createPromise } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/promise/index.esm.js'; | ||
| import { utf8StringToUint8Array, arrayBufferToUtf8String } from '../_dependencies/@hyperfrontend/string-utils/node/index.esm.js'; | ||
| import { getType } from '../_dependencies/@hyperfrontend/data-utils/index.esm.js'; | ||
| import { freeze, create } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.esm.js'; | ||
| import { createUint8Array } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays/index.esm.js'; | ||
| import { from } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.esm.js'; | ||
| import { createMap } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/map/index.esm.js'; | ||
| import { createDate } from '../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/date/index.esm.js'; | ||
| import { randomPseudoTimeBased } from '../_dependencies/@hyperfrontend/random-generator-utils/index.esm.js'; | ||
| import { normalizeToBaseTimeWindow } from '../_dependencies/@hyperfrontend/time-utils/index.esm.js'; | ||
| import { encryptionConfig } from '../_shared/lib/encryption-config/index.esm.js'; | ||
| import { isSHA256Hash } from '../_shared/lib/is-sha-256-hash/index.esm.js'; | ||
| /** | ||
| * Safe copies of Error built-ins via factory functions. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides factory functions that use Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/error | ||
| */ | ||
| const _Error = globalThis.Error; | ||
| const _Reflect$5 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Error using the captured Error constructor. | ||
| * Use this instead of `new Error()`. | ||
| * | ||
| * @param message - Optional error message. | ||
| * @param options - Optional error options. | ||
| * @returns A new Error instance. | ||
| * | ||
| * @example Creating Error instances | ||
| * ```typescript | ||
| * const error = createError('Operation failed') | ||
| * // With cause for error chaining | ||
| * const wrapped = createError('Request failed', { cause: originalError }) | ||
| * ``` | ||
| */ | ||
| const createError = (message, options) => _Reflect$5.construct(_Error, [message, options]); | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Promise built-in methods via factory functions. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides factory functions that use Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/promise | ||
| */ | ||
| const _Promise = globalThis.Promise; | ||
| const _Reflect$4 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Promise using the captured Promise constructor. | ||
| * Use this instead of `new Promise()`. | ||
| * | ||
| * @param executor - The executor function. | ||
| * @returns A new Promise instance. | ||
| */ | ||
| const createPromise = (executor) => _Reflect$4.construct(_Promise, [executor]); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves with the given value. | ||
| */ | ||
| _Promise.resolve.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that rejects with the given reason. | ||
| */ | ||
| _Promise.reject.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves when all promises resolve. | ||
| */ | ||
| _Promise.all.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves/rejects with the first settled promise. | ||
| */ | ||
| _Promise.race.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves when all promises settle. | ||
| */ | ||
| _Promise.allSettled.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Returns a Promise that resolves with the first fulfilled promise. | ||
| */ | ||
| _Promise.any.bind(_Promise); | ||
| /** | ||
| * (Safe copy) Creates a Promise along with its resolve and reject functions. | ||
| * Note: Available only in ES2024+ environments. | ||
| */ | ||
| // eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
| _Promise.withResolvers?.bind(_Promise); | ||
| /** | ||
| * Creates a cryptographic hash of the provided data using Node.js crypto module. | ||
@@ -112,355 +42,5 @@ * | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of encoding built-ins via factory functions. | ||
| * | ||
| * Provides safe references to TextEncoder, TextDecoder, atob, and btoa. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/encoding | ||
| */ | ||
| const _TextEncoder = globalThis.TextEncoder; | ||
| const _TextDecoder = globalThis.TextDecoder; | ||
| const _Reflect$3 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new TextEncoder using the captured TextEncoder constructor. | ||
| * Use this instead of `new TextEncoder()`. | ||
| * | ||
| * @returns A new TextEncoder instance. | ||
| */ | ||
| const createTextEncoder = () => _Reflect$3.construct(_TextEncoder, []); | ||
| /** | ||
| * (Safe copy) Creates a new TextDecoder using the captured TextDecoder constructor. | ||
| * Use this instead of `new TextDecoder()`. | ||
| * | ||
| * @param label - The encoding label (e.g., 'utf-8', 'utf-16'). Defaults to 'utf-8'. | ||
| * @param options - Optional TextDecoderOptions. | ||
| * @returns A new TextDecoder instance. | ||
| */ | ||
| const createTextDecoder = (label, options) => _Reflect$3.construct(_TextDecoder, [label, options]); | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of TypedArray and ArrayBuffer built-ins via factory functions. | ||
| * | ||
| * Provides safe references to Uint8Array, Int8Array, ArrayBuffer, DataView, etc. | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays | ||
| */ | ||
| const _ArrayBuffer = globalThis.ArrayBuffer; | ||
| const _SharedArrayBuffer = globalThis.SharedArrayBuffer; | ||
| const _Uint8Array = globalThis.Uint8Array; | ||
| const _Uint8ClampedArray = globalThis.Uint8ClampedArray; | ||
| const _Uint16Array = globalThis.Uint16Array; | ||
| const _Uint32Array = globalThis.Uint32Array; | ||
| const _Int8Array = globalThis.Int8Array; | ||
| const _Int16Array = globalThis.Int16Array; | ||
| const _Int32Array = globalThis.Int32Array; | ||
| const _Float32Array = globalThis.Float32Array; | ||
| const _Float64Array = globalThis.Float64Array; | ||
| const _BigInt64Array = globalThis.BigInt64Array; | ||
| const _BigUint64Array = globalThis.BigUint64Array; | ||
| const _Reflect$2 = globalThis.Reflect; | ||
| function createUint8Array(arg, byteOffset, length) { | ||
| if (typeof arg === 'number') { | ||
| return _Reflect$2.construct(_Uint8Array, [arg]); | ||
| } | ||
| if (arg instanceof _ArrayBuffer || arg instanceof _SharedArrayBuffer) { | ||
| return _Reflect$2.construct(_Uint8Array, [arg, byteOffset, length]); | ||
| } | ||
| return _Reflect$2.construct(_Uint8Array, [arg]); | ||
| } | ||
| /** | ||
| * (Safe copy) Creates a new Uint8Array from an array-like or iterable object. | ||
| */ | ||
| _Uint8Array.from.bind(_Uint8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8Array from a variable number of arguments. | ||
| */ | ||
| _Uint8Array.of.bind(_Uint8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8ClampedArray from an array-like or iterable object. | ||
| */ | ||
| _Uint8ClampedArray.from.bind(_Uint8ClampedArray); | ||
| /** | ||
| * (Safe copy) Creates a new Uint8ClampedArray from a variable number of arguments. | ||
| */ | ||
| _Uint8ClampedArray.of.bind(_Uint8ClampedArray); | ||
| /** | ||
| * (Safe copy) Creates a new Uint16Array from an array-like or iterable object. | ||
| */ | ||
| _Uint16Array.from.bind(_Uint16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint16Array from a variable number of arguments. | ||
| */ | ||
| _Uint16Array.of.bind(_Uint16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint32Array from an array-like or iterable object. | ||
| */ | ||
| _Uint32Array.from.bind(_Uint32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Uint32Array from a variable number of arguments. | ||
| */ | ||
| _Uint32Array.of.bind(_Uint32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int8Array from an array-like or iterable object. | ||
| */ | ||
| _Int8Array.from.bind(_Int8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int8Array from a variable number of arguments. | ||
| */ | ||
| _Int8Array.of.bind(_Int8Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int16Array from an array-like or iterable object. | ||
| */ | ||
| _Int16Array.from.bind(_Int16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int16Array from a variable number of arguments. | ||
| */ | ||
| _Int16Array.of.bind(_Int16Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int32Array from an array-like or iterable object. | ||
| */ | ||
| _Int32Array.from.bind(_Int32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Int32Array from a variable number of arguments. | ||
| */ | ||
| _Int32Array.of.bind(_Int32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float32Array from an array-like or iterable object. | ||
| */ | ||
| _Float32Array.from.bind(_Float32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float32Array from a variable number of arguments. | ||
| */ | ||
| _Float32Array.of.bind(_Float32Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float64Array from an array-like or iterable object. | ||
| */ | ||
| _Float64Array.from.bind(_Float64Array); | ||
| /** | ||
| * (Safe copy) Creates a new Float64Array from a variable number of arguments. | ||
| */ | ||
| _Float64Array.of.bind(_Float64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigInt64Array from an array-like or iterable object. | ||
| */ | ||
| _BigInt64Array.from.bind(_BigInt64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigInt64Array from a variable number of arguments. | ||
| */ | ||
| _BigInt64Array.of.bind(_BigInt64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigUint64Array from an array-like or iterable object. | ||
| */ | ||
| _BigUint64Array.from.bind(_BigUint64Array); | ||
| /** | ||
| * (Safe copy) Creates a new BigUint64Array from a variable number of arguments. | ||
| */ | ||
| _BigUint64Array.of.bind(_BigUint64Array); | ||
| createTextEncoder(); | ||
| const UTF8_DECODER = createTextDecoder('utf8'); | ||
| ({ | ||
| SIMPLE: { | ||
| ARRAY: createUint8Array([104, 101, 108, 108, 111]), | ||
| }, | ||
| NON_ASCII: { | ||
| ARRAY: createUint8Array([227, 129, 147, 227, 130, 147, 227, 129, 171, 227, 129, 161, 227, 129, 175]), | ||
| }, | ||
| EMPTY: { | ||
| ARRAY: createUint8Array([]), | ||
| }, | ||
| }); | ||
| /** | ||
| * Converts an ArrayBuffer to a UTF-8 encoded string. | ||
| * | ||
| * @param uint8Array - The ArrayBuffer to convert | ||
| * @returns The decoded UTF-8 string | ||
| * | ||
| * @example Converting ArrayBuffer to string | ||
| * ```typescript | ||
| * const encoder = new TextEncoder() | ||
| * const buffer = encoder.encode('Hello, World!').buffer | ||
| * const decoded = arrayBufferToUtf8String(buffer) | ||
| * // => 'Hello, World!' | ||
| * ``` | ||
| */ | ||
| function arrayBufferToUtf8String(uint8Array) { | ||
| return UTF8_DECODER.decode(uint8Array); | ||
| } | ||
| /** | ||
| * Converts a UTF-8 string to a Uint8Array (Node.js implementation). | ||
| * | ||
| * @param text - The UTF-8 string to convert | ||
| * @returns The encoded Uint8Array | ||
| * | ||
| * @example Encoding string to bytes (Node.js) | ||
| * ```typescript | ||
| * const bytes = utf8StringToUint8Array('Hello') | ||
| * // => Uint8Array([72, 101, 108, 108, 111]) | ||
| * ``` | ||
| */ | ||
| function utf8StringToUint8Array(text) { | ||
| return createUint8Array(Buffer.from(text, 'utf8')); | ||
| } | ||
| const subtle = webcrypto.subtle; | ||
| /** | ||
| * Safe copies of Object built-in methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/object | ||
| */ | ||
| const _Object = globalThis.Object; | ||
| /** | ||
| * (Safe copy) Prevents modification of existing property attributes and values, | ||
| * and prevents the addition of new properties. | ||
| */ | ||
| const freeze = _Object.freeze; | ||
| /** | ||
| * (Safe copy) Creates an object that has the specified prototype or that has null prototype. | ||
| */ | ||
| const create = _Object.create; | ||
| const registeredClasses = []; | ||
| /** | ||
| * Safe copies of Array built-in static methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/array | ||
| */ | ||
| const _Array = globalThis.Array; | ||
| /** | ||
| * (Safe copy) Determines whether the passed value is an Array. | ||
| */ | ||
| const isArray = _Array.isArray; | ||
| /** | ||
| * (Safe copy) Creates an array from an array-like or iterable object. | ||
| */ | ||
| const from = _Array.from; | ||
| /** | ||
| * Returns the data type of the target. | ||
| * Uses native `typeof` operator, however, makes distinction between `null`, `array`, and `object`. | ||
| * Also, when classes are registered via `registerClass`, it checks if objects are instance of any known registered class. | ||
| * | ||
| * @param target - The target to get the data type of. | ||
| * @returns The data type of the target. | ||
| * | ||
| * @example Determining data types | ||
| * ```typescript | ||
| * getType([1, 2]) // 'array' | ||
| * getType({ a: 1 }) // 'object' | ||
| * getType(null) // 'null' | ||
| * ``` | ||
| */ | ||
| const getType = (target) => { | ||
| if (target === null) | ||
| return 'null'; | ||
| const nativeDataType = typeof target; | ||
| if (nativeDataType === 'object') { | ||
| if (isArray(target)) | ||
| return 'array'; | ||
| for (const registeredClass of registeredClasses) { | ||
| if (target instanceof registeredClass) | ||
| return registeredClass.name; | ||
| } | ||
| } | ||
| return nativeDataType; | ||
| }; | ||
| /* eslint-disable workspace/lib-require-jsdoc-example */ | ||
| /** | ||
| * Safe copies of Map built-in via factory function. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/map | ||
| */ | ||
| const _Map = globalThis.Map; | ||
| const _Reflect$1 = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Map using the captured Map constructor. | ||
| * Use this instead of `new Map()`. | ||
| * | ||
| * @param iterable - Optional iterable of key-value pairs. | ||
| * @returns A new Map instance. | ||
| */ | ||
| const createMap = (iterable) => _Reflect$1.construct(_Map, iterable ? [iterable] : []); | ||
| /* eslint-disable jsdoc/require-param */ | ||
| /** | ||
| * Safe copies of Date built-in via factory function and static methods. | ||
| * | ||
| * Since constructors cannot be safely captured via Object.assign, this module | ||
| * provides a factory function that uses Reflect.construct internally. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/date | ||
| */ | ||
| const _Date = globalThis.Date; | ||
| const _Reflect = globalThis.Reflect; | ||
| /** | ||
| * (Safe copy) Creates a new Date using the captured Date constructor. | ||
| * Use this instead of `new Date()`. Accepts all standard Date constructor signatures. | ||
| * | ||
| * @returns A new Date instance. | ||
| * | ||
| * @example Creating Date instances | ||
| * ```typescript | ||
| * const now = createDate() | ||
| * const fromTimestamp = createDate(1704067200000) | ||
| * const fromString = createDate('2024-01-01T00:00:00Z') | ||
| * const fromParts = createDate(2024, 0, 1, 12, 30, 0) // Jan 1, 2024 12:30:00 | ||
| * ``` | ||
| */ | ||
| function createDate(...args) { | ||
| return _Reflect.construct(_Date, args); | ||
| } | ||
| /** | ||
| * Safe copies of Math built-in methods. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/math | ||
| */ | ||
| const _Math = globalThis.Math; | ||
| /** | ||
| * (Safe copy) Returns the largest integer less than or equal to a number. | ||
| */ | ||
| const floor = _Math.floor; | ||
| /** | ||
| * (Safe copy) Returns the sine of a number. | ||
| */ | ||
| const sin = _Math.sin; | ||
| /** | ||
| * Frozen encryption configuration to prevent runtime tampering. | ||
| * Using AES-GCM as the default algorithm for authenticated encryption. | ||
| */ | ||
| const encryptionConfig = freeze({ | ||
| name: 'AES-GCM', | ||
| }); | ||
| /** | ||
| * Creates a key generator function that derives encryption keys from passwords using PBKDF2. | ||
@@ -735,88 +315,2 @@ * Uses 100,000 iterations with SHA-256 hashing for secure key derivation. | ||
| /** | ||
| * A simple pseudo-random number generator. | ||
| * | ||
| * @param seed - The seed for the generator. | ||
| * @returns A pseudo-random number between 0 and 1. | ||
| * | ||
| * @example Reproducible random values for testing | ||
| * ```typescript | ||
| * // Same seed always yields the same result | ||
| * randomPseudo(42) | ||
| * // => 0.6853... (deterministic) | ||
| * | ||
| * randomPseudo(42) | ||
| * // => 0.6853... (identical) | ||
| * | ||
| * randomPseudo(43) | ||
| * // => 0.1762... (different seed, different result) | ||
| * ``` | ||
| */ | ||
| function randomPseudo(seed) { | ||
| const x = sin(seed) * 10000; | ||
| return x - floor(x); | ||
| } | ||
| /** | ||
| * Generates a deterministic pseudo-random variation based solely on the seed time. | ||
| * | ||
| * @param seedTime - The seed time for the variation. | ||
| * @returns The pseudo-random variation as a number. | ||
| * | ||
| * @example Reproducible randomness for a specific timestamp | ||
| * ```typescript | ||
| * const releaseDate = new Date('2024-03-15T10:30:00Z') | ||
| * | ||
| * // Same date always produces the same result | ||
| * const value1 = randomPseudoTimeBased(releaseDate) | ||
| * const value2 = randomPseudoTimeBased(releaseDate) | ||
| * // value1 === value2 (deterministic) | ||
| * ``` | ||
| */ | ||
| function randomPseudoTimeBased(seedTime) { | ||
| return randomPseudo(seedTime.getTime()); | ||
| } | ||
| /** | ||
| * Safe copies of Number built-in methods and constants. | ||
| * | ||
| * These references are captured at module initialization time to protect against | ||
| * prototype pollution attacks. Import only what you need for tree-shaking. | ||
| * | ||
| * @module @hyperfrontend/immutable-api-utils/built-in-copy/number | ||
| */ | ||
| const _isNaN = globalThis.isNaN; | ||
| /** | ||
| * (Safe copy) Global isNaN function (coerces to number first, less strict than Number.isNaN). | ||
| */ | ||
| const globalIsNaN = _isNaN; | ||
| /** | ||
| * Normalizes a given time to the nearest base time window. | ||
| * | ||
| * @param time - The Date object to normalize to the nearest time window | ||
| * @param baseTimeWindow - The size of the time window in minutes for normalization | ||
| * @returns A new Date object normalized to the start of the time window | ||
| * | ||
| * @example Normalizing to 15-minute buckets | ||
| * ```typescript | ||
| * // Round timestamps to 15-minute intervals for analytics bucketing | ||
| * const eventTime = new Date('2024-03-15T14:23:45Z') | ||
| * const bucketTime = normalizeToBaseTimeWindow(eventTime, 15) | ||
| * // => 2024-03-15T14:15:00.000Z | ||
| * ``` | ||
| */ | ||
| function normalizeToBaseTimeWindow(time, baseTimeWindow) { | ||
| if (!time || !(time instanceof Date) || globalIsNaN(time.getTime())) { | ||
| throw createError('Invalid time input'); | ||
| } | ||
| if (baseTimeWindow <= 0) { | ||
| throw createError('Base time window must be positive'); | ||
| } | ||
| const timeInMs = time.getTime(); | ||
| const windowInMs = baseTimeWindow * 60 * 1000; | ||
| const normalizedTimeInMs = floor(timeInMs / windowInMs) * windowInMs; | ||
| return createDate(normalizedTimeInMs); | ||
| } | ||
| /** | ||
| * Creates a time-based one-time password (TOTP) generator function. | ||
@@ -889,23 +383,2 @@ * Generates passwords that change based on time windows, supporting previous/current/next window offsets. | ||
| /** | ||
| * Validates whether the provided value is a valid SHA-256 hash string. | ||
| * Checks for exactly 64 hexadecimal characters (case-insensitive). | ||
| * | ||
| * @param hash - The value to validate as a SHA-256 hash | ||
| * @returns True if the value is a valid SHA-256 hash string, false otherwise | ||
| * | ||
| * @example Validating SHA-256 hashes | ||
| * ```typescript | ||
| * isSHA256Hash('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') | ||
| * // => true | ||
| * | ||
| * isSHA256Hash('invalid') | ||
| * // => false | ||
| * ``` | ||
| */ | ||
| function isSHA256Hash(hash) { | ||
| return getType(hash) === 'string' ? /^[a-f0-9]{64}$/i.test(hash) : false; | ||
| } | ||
| export { createHash, createVault, decrypt, encrypt, encryptionConfig, generateKey, getRandomValues, getTimeBasedPassword, getTimeBasedPasswords, isSHA256Hash, subtle }; | ||
| //# sourceMappingURL=index.esm.js.map |
+13
-7
| { | ||
| "name": "@hyperfrontend/cryptography", | ||
| "version": "0.2.0", | ||
| "version": "0.2.1", | ||
| "description": "Cryptography utilities for browser and Node.js environments.", | ||
@@ -27,6 +27,2 @@ "license": "MIT", | ||
| "require": "./common/index.cjs.js" | ||
| }, | ||
| "./bundle": { | ||
| "import": "./bundle/index.iife.min.js", | ||
| "require": "./bundle/index.iife.min.js" | ||
| } | ||
@@ -71,3 +67,13 @@ }, | ||
| "unpkg": "./bundle/index.umd.min.js", | ||
| "jsdelivr": "./bundle/index.umd.min.js" | ||
| } | ||
| "jsdelivr": "./bundle/index.umd.min.js", | ||
| "files": [ | ||
| "**/index.*", | ||
| "**/index.d.ts", | ||
| "CHANGELOG.md", | ||
| "FUNDING.md", | ||
| "LICENSE.md", | ||
| "README.md", | ||
| "SECURITY.md", | ||
| "!**/*.js.map" | ||
| ] | ||
| } |
| {"version":3,"file":"index.cjs.js","sources":["../../../../../../../../libs/utils/immutable-api/src/built-in-copy/array/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/typed-arrays/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/encoding/index.ts","../../../../../../../../libs/utils/string/src/lib/shared-consts.ts","../../../../../../../../libs/utils/string/src/lib/array-buffer-to-utf8-string/array-buffer-to-utf8-string.ts","../../../../../../../../libs/utils/string/src/lib/utf8-string-to-uint8-array/browser/utf8-string-to-uint8-array.ts","../../../../../../../../libs/cryptography/src/lib/subtle/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-hash/browser.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/object/index.ts","../../../../../../../../libs/utils/data/src/shared/consts.ts","../../../../../../../../libs/utils/data/src/get-type.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/date/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/math/index.ts","../../../../../../../../libs/cryptography/src/lib/encryption-config.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/create-key-generator.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/browser.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/create-decrypt.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-random-values/browser.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/create-encrypt.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/create-value-creator.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/browser.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo-time-based.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/number/index.ts","../../../../../../../../libs/utils/time/src/normalize-to-base-time-window.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/promise/index.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/create-get-time-based-password.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/create-get-time-based-passwords.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/browser.ts","../../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["_Reflect"],"mappings":"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"} |
| {"version":3,"file":"index.esm.js","sources":["../../../../../../../../libs/utils/immutable-api/src/built-in-copy/array/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/typed-arrays/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/encoding/index.ts","../../../../../../../../libs/utils/string/src/lib/shared-consts.ts","../../../../../../../../libs/utils/string/src/lib/array-buffer-to-utf8-string/array-buffer-to-utf8-string.ts","../../../../../../../../libs/utils/string/src/lib/utf8-string-to-uint8-array/browser/utf8-string-to-uint8-array.ts","../../../../../../../../libs/cryptography/src/lib/subtle/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-hash/browser.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/object/index.ts","../../../../../../../../libs/utils/data/src/shared/consts.ts","../../../../../../../../libs/utils/data/src/get-type.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/date/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/math/index.ts","../../../../../../../../libs/cryptography/src/lib/encryption-config.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/create-key-generator.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/browser.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/create-decrypt.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-random-values/browser.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/create-encrypt.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/create-value-creator.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/browser.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo-time-based.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/number/index.ts","../../../../../../../../libs/utils/time/src/normalize-to-base-time-window.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/promise/index.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/create-get-time-based-password.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/create-get-time-based-passwords.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/browser.ts","../../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["_Reflect"],"mappings":"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"} |
| {"version":3,"file":"index.iife.js","sources":["../../../../../../../../libs/utils/immutable-api/src/built-in-copy/array/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/typed-arrays/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/encoding/index.ts","../../../../../../../../libs/utils/string/src/lib/shared-consts.ts","../../../../../../../../libs/utils/string/src/lib/array-buffer-to-utf8-string/array-buffer-to-utf8-string.ts","../../../../../../../../libs/utils/string/src/lib/utf8-string-to-uint8-array/browser/utf8-string-to-uint8-array.ts","../../../../../../../../libs/cryptography/src/lib/subtle/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-hash/browser.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/object/index.ts","../../../../../../../../libs/utils/data/src/shared/consts.ts","../../../../../../../../libs/utils/data/src/get-type.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/date/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/math/index.ts","../../../../../../../../libs/cryptography/src/lib/encryption-config.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/create-key-generator.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/browser.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/create-decrypt.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-random-values/browser.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/create-encrypt.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/create-value-creator.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/browser.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo-time-based.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/number/index.ts","../../../../../../../../libs/utils/time/src/normalize-to-base-time-window.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/promise/index.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/create-get-time-based-password.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/create-get-time-based-passwords.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/browser.ts","../../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["_Reflect"],"mappings":"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"} |
| {"version":3,"file":"index.iife.min.js","sources":["../../../../../../../../libs/utils/immutable-api/src/built-in-copy/array/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/typed-arrays/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/encoding/index.ts","../../../../../../../../libs/utils/string/src/lib/shared-consts.ts","../../../../../../../../libs/utils/string/src/lib/utf8-string-to-uint8-array/browser/utf8-string-to-uint8-array.ts","../../../../../../../../libs/cryptography/src/lib/subtle/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-hash/browser.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/object/index.ts","../../../../../../../../libs/utils/data/src/shared/consts.ts","../../../../../../../../libs/utils/data/src/get-type.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/date/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/math/index.ts","../../../../../../../../libs/cryptography/src/lib/encryption-config.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/browser.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/create-key-generator.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/create-decrypt.ts","../../../../../../../../libs/utils/string/src/lib/array-buffer-to-utf8-string/array-buffer-to-utf8-string.ts","../../../../../../../../libs/cryptography/src/lib/get-random-values/browser.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/create-encrypt.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/create-value-creator.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo-time-based.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/number/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/promise/index.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/create-get-time-based-password.ts","../../../../../../../../libs/utils/time/src/normalize-to-base-time-window.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/create-get-time-based-passwords.ts","../../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["_Array","globalThis","Array","isArray","from","_Error","Error","_Reflect","Reflect","createError","message","options","construct","_ArrayBuffer","ArrayBuffer","_SharedArrayBuffer","SharedArrayBuffer","_Uint8Array","Uint8Array","_Uint8ClampedArray","Uint8ClampedArray","_Uint16Array","Uint16Array","_Uint32Array","Uint32Array","_Int8Array","Int8Array","_Int16Array","Int16Array","_Int32Array","Int32Array","_Float32Array","Float32Array","_Float64Array","Float64Array","_BigInt64Array","BigInt64Array","_BigUint64Array","BigUint64Array","createUint8Array","arg","byteOffset","length","bind","of","_TextEncoder","TextEncoder","_TextDecoder","TextDecoder","createTextEncoder","UTF8_DECODER","label","utf8StringToUint8Array","text","encode","subtle","crypto","async","createHash","data","algorithm","digest","map","b","toString","padStart","join","_Object","Object","freeze","create","registeredClasses","getType","target","nativeDataType","registeredClass","name","_Map","Map","_Date","Date","createDate","args","_Math","Math","floor","sin","encryptionConfig","generateKey","password","salt","keyMaterial","importKey","deriveKey","iterations","hash","createKeyGenerator","decrypt","arrayBufferToUtf8String","encrypted","slice","iv","key","decryptedContent","createDecrypt","uint8Array","decode","getRandomValues","byteLength","encrypt","buffer","result","set","createEncrypt","createVault","singleUse","isPasswordAccessed","isVaultClosed","storage","iterable","close","clear","vault","write","value","encryptedValue","enumerable","writable","configurable","read","get","getPassword","createValueCreator","randomPseudoTimeBased","seedTime","seed","x","randomPseudo","getTime","globalIsNaN","isNaN","_Promise","Promise","resolve","reject","all","race","allSettled","any","withResolvers","getTimeBasedPassword","currentUtcTime","baseTimeWindow","windowOffset","offsetTime","time","timeInMs","windowInMs","normalizeToBaseTimeWindow","createGetTimeBasedPassword","getTimeBasedPasswords","current","previous","next","createTimeBasedPasswords","test"],"mappings":"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"} |
| {"version":3,"file":"index.umd.js","sources":["../../../../../../../../libs/utils/immutable-api/src/built-in-copy/array/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/typed-arrays/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/encoding/index.ts","../../../../../../../../libs/utils/string/src/lib/shared-consts.ts","../../../../../../../../libs/utils/string/src/lib/array-buffer-to-utf8-string/array-buffer-to-utf8-string.ts","../../../../../../../../libs/utils/string/src/lib/utf8-string-to-uint8-array/browser/utf8-string-to-uint8-array.ts","../../../../../../../../libs/cryptography/src/lib/subtle/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-hash/browser.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/object/index.ts","../../../../../../../../libs/utils/data/src/shared/consts.ts","../../../../../../../../libs/utils/data/src/get-type.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/date/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/math/index.ts","../../../../../../../../libs/cryptography/src/lib/encryption-config.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/create-key-generator.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/browser.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/create-decrypt.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-random-values/browser.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/create-encrypt.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/create-value-creator.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/browser.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo-time-based.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/number/index.ts","../../../../../../../../libs/utils/time/src/normalize-to-base-time-window.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/promise/index.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/create-get-time-based-password.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/create-get-time-based-passwords.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/browser.ts","../../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["_Reflect"],"mappings":"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"} |
| {"version":3,"file":"index.umd.min.js","sources":["../../../../../../../../libs/utils/immutable-api/src/built-in-copy/array/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/typed-arrays/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/encoding/index.ts","../../../../../../../../libs/utils/string/src/lib/shared-consts.ts","../../../../../../../../libs/utils/string/src/lib/utf8-string-to-uint8-array/browser/utf8-string-to-uint8-array.ts","../../../../../../../../libs/cryptography/src/lib/subtle/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-hash/browser.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/object/index.ts","../../../../../../../../libs/utils/data/src/shared/consts.ts","../../../../../../../../libs/utils/data/src/get-type.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/date/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/math/index.ts","../../../../../../../../libs/cryptography/src/lib/encryption-config.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/browser.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/create-key-generator.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/create-decrypt.ts","../../../../../../../../libs/utils/string/src/lib/array-buffer-to-utf8-string/array-buffer-to-utf8-string.ts","../../../../../../../../libs/cryptography/src/lib/get-random-values/browser.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/browser.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/create-encrypt.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/browser.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/create-value-creator.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo-time-based.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/number/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/promise/index.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/create-get-time-based-password.ts","../../../../../../../../libs/utils/time/src/normalize-to-base-time-window.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/browser.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/create-get-time-based-passwords.ts","../../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["_Array","globalThis","Array","isArray","from","_Error","Error","_Reflect","Reflect","createError","message","options","construct","_ArrayBuffer","ArrayBuffer","_SharedArrayBuffer","SharedArrayBuffer","_Uint8Array","Uint8Array","_Uint8ClampedArray","Uint8ClampedArray","_Uint16Array","Uint16Array","_Uint32Array","Uint32Array","_Int8Array","Int8Array","_Int16Array","Int16Array","_Int32Array","Int32Array","_Float32Array","Float32Array","_Float64Array","Float64Array","_BigInt64Array","BigInt64Array","_BigUint64Array","BigUint64Array","createUint8Array","arg","byteOffset","length","bind","of","_TextEncoder","TextEncoder","_TextDecoder","TextDecoder","createTextEncoder","UTF8_DECODER","label","utf8StringToUint8Array","text","encode","subtle","crypto","async","createHash","data","algorithm","digest","map","b","toString","padStart","join","_Object","Object","freeze","create","registeredClasses","getType","target","nativeDataType","registeredClass","name","_Map","Map","_Date","Date","createDate","args","_Math","Math","floor","sin","encryptionConfig","generateKey","password","salt","keyMaterial","importKey","deriveKey","iterations","hash","createKeyGenerator","decrypt","arrayBufferToUtf8String","encrypted","slice","iv","key","decryptedContent","createDecrypt","uint8Array","decode","getRandomValues","byteLength","encrypt","buffer","result","set","createEncrypt","createVault","singleUse","isPasswordAccessed","isVaultClosed","storage","iterable","close","clear","vault","write","value","encryptedValue","enumerable","writable","configurable","read","get","getPassword","createValueCreator","randomPseudoTimeBased","seedTime","seed","x","randomPseudo","getTime","globalIsNaN","isNaN","_Promise","Promise","resolve","reject","all","race","allSettled","any","withResolvers","getTimeBasedPassword","currentUtcTime","baseTimeWindow","windowOffset","offsetTime","time","timeInMs","windowInMs","normalizeToBaseTimeWindow","createGetTimeBasedPassword","getTimeBasedPasswords","current","previous","next","createTimeBasedPasswords","test"],"mappings":"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"} |
| {"version":3,"file":"index.cjs.js","sources":["../../../../../../../../libs/utils/data/src/shared/consts.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/array/index.ts","../../../../../../../../libs/utils/data/src/get-type.ts","../../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":";;AAIO,MAAM,iBAAiB,GAAmB,EAAE;;ACJnD;;;;;;;AAOG;AAEH,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK;AAG/B;;AAEG;AACI,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO;;ACXrC;;;;;;;;;;;;;;AAcG;AACI,MAAM,OAAO,GAAG,CAA8B,MAAe,KAAO;IACzE,IAAI,MAAM,KAAK,IAAI;AAAE,QAAA,OAAU,MAAM;AACrC,IAAA,MAAM,cAAc,GAAG,OAAO,MAAM;AACpC,IAAA,IAAI,cAAc,KAAK,QAAQ,EAAE;QAC/B,IAAI,OAAO,CAAC,MAAM,CAAC;AAAE,YAAA,OAAU,OAAO;AACtC,QAAA,KAAK,MAAM,eAAe,IAAI,iBAAiB,EAAE;YAC/C,IAAI,MAAM,YAAY,eAAe;gBAAE,OAAU,eAAe,CAAC,IAAI;QACvE;IACF;AACA,IAAA,OAAU,cAAc;AAC1B,CAAC;;AC3BD;;;;;;;;;;;;;;;AAeG;AACG,SAAU,YAAY,CAAC,IAAa,EAAA;AACxC,IAAA,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAS,IAAI,CAAC,GAAG,KAAK;AAClF;;;;"} |
| {"version":3,"file":"index.esm.js","sources":["../../../../../../../../libs/utils/data/src/shared/consts.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/array/index.ts","../../../../../../../../libs/utils/data/src/get-type.ts","../../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"AAIO,MAAM,iBAAiB,GAAmB,EAAE;;ACJnD;;;;;;;AAOG;AAEH,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK;AAG/B;;AAEG;AACI,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO;;ACXrC;;;;;;;;;;;;;;AAcG;AACI,MAAM,OAAO,GAAG,CAA8B,MAAe,KAAO;IACzE,IAAI,MAAM,KAAK,IAAI;AAAE,QAAA,OAAU,MAAM;AACrC,IAAA,MAAM,cAAc,GAAG,OAAO,MAAM;AACpC,IAAA,IAAI,cAAc,KAAK,QAAQ,EAAE;QAC/B,IAAI,OAAO,CAAC,MAAM,CAAC;AAAE,YAAA,OAAU,OAAO;AACtC,QAAA,KAAK,MAAM,eAAe,IAAI,iBAAiB,EAAE;YAC/C,IAAI,MAAM,YAAY,eAAe;gBAAE,OAAU,eAAe,CAAC,IAAI;QACvE;IACF;AACA,IAAA,OAAU,cAAc;AAC1B,CAAC;;AC3BD;;;;;;;;;;;;;;;AAeG;AACG,SAAU,YAAY,CAAC,IAAa,EAAA;AACxC,IAAA,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAS,IAAI,CAAC,GAAG,KAAK;AAClF;;;;"} |
| import type { HashAlgorithm } from './model'; | ||
| /** | ||
| * Creates a cryptographic hash of the provided data using Web Crypto API (browser implementation). | ||
| * | ||
| * @param data - The string data to hash | ||
| * @param algorithm - The hash algorithm to use (defaults to SHA-256) | ||
| * @returns A promise that resolves to the hexadecimal hash string | ||
| * @throws {Error} When hash creation fails | ||
| * | ||
| * @example Creating a hash | ||
| * ```typescript | ||
| * const hash = await createHash('secret-message') | ||
| * // => '64-character hexadecimal string' | ||
| * ``` | ||
| */ | ||
| export declare function createHash(data: string, algorithm?: HashAlgorithm): Promise<string>; | ||
| //# sourceMappingURL=browser.d.ts.map |
| {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/create-hash/browser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAO5C;;;;;;;;;;;;;GAaG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAE,aAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAQpG"} |
| /** | ||
| * Supported cryptographic hash algorithms. | ||
| */ | ||
| export type HashAlgorithm = 'SHA-256' | 'SHA-384' | 'SHA-512'; | ||
| //# sourceMappingURL=model.d.ts.map |
| {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/create-hash/model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA"} |
| import type { HashAlgorithm } from './model'; | ||
| /** | ||
| * Creates a cryptographic hash of the provided data using Node.js crypto module. | ||
| * | ||
| * @param data - The string data to hash | ||
| * @param algorithm - The hash algorithm to use (defaults to SHA-256) | ||
| * @returns A promise that resolves to the hexadecimal hash string | ||
| * @throws {Error} When hash creation fails | ||
| * | ||
| * @example Creating a hash | ||
| * ```typescript | ||
| * const hash = await createHash('secret-message') | ||
| * // => '64-character hexadecimal string' | ||
| * ``` | ||
| */ | ||
| export declare function createHash(data: string, algorithm?: HashAlgorithm): Promise<string>; | ||
| //# sourceMappingURL=node.d.ts.map |
| {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/create-hash/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAK5C;;;;;;;;;;;;;GAaG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAE,aAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CASpG"} |
| export declare const createVault: (singleUse?: boolean) => Readonly<import("./model").Vault>; | ||
| //# sourceMappingURL=browser.d.ts.map |
| {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/create-vault/browser.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW,4DAAwD,CAAA"} |
| import type { Vault } from './model'; | ||
| /** | ||
| * Creates a vault factory function that produces encrypted storage instances. | ||
| * Vaults provide secure, password-protected storage for sensitive data with optional single-use mode. | ||
| * | ||
| * @param getRandomValues - Function to generate cryptographically secure random values for passwords | ||
| * @param encrypt - Function to encrypt data with a password | ||
| * @param decrypt - Function to decrypt data with a password | ||
| * @returns A function that creates new vault instances | ||
| * | ||
| * @example Creating and using a vault | ||
| * ```typescript | ||
| * const createVault = createValueCreator(getRandomValues, encrypt, decrypt) | ||
| * const vault = createVault() | ||
| * await vault.write('api-key', 'secret-value') | ||
| * const password = vault.getPassword() | ||
| * const apiKey = await vault.read('api-key', password) | ||
| * ``` | ||
| */ | ||
| export declare function createValueCreator(getRandomValues: (byteLength: number) => Uint8Array, encrypt: (message: string, password: string) => Promise<Uint8Array>, decrypt: (encrypted: Uint8Array, password: string) => Promise<string>): (singleUse?: boolean) => Readonly<Vault>; | ||
| //# sourceMappingURL=create-value-creator.d.ts.map |
| {"version":3,"file":"create-value-creator.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/create-vault/create-value-creator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAMpC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAChC,eAAe,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,UAAU,EACnD,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,EACnE,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,GACpE,CAAC,SAAS,CAAC,EAAE,OAAO,KAAK,QAAQ,CAAC,KAAK,CAAC,CAyH1C"} |
| /** | ||
| * Secure vault for storing encrypted key-value pairs. | ||
| */ | ||
| export interface Vault { | ||
| /** Writes an encrypted value with the given label */ | ||
| readonly write: (label: string, value: string) => Promise<void>; | ||
| /** Reads and decrypts a value by label, requiring the password */ | ||
| readonly read: (label: string, password: string) => Promise<string | null>; | ||
| /** Retrieves the current vault password, or null if not set */ | ||
| readonly getPassword: () => string | null; | ||
| /** Closes the vault and clears sensitive data from memory */ | ||
| readonly close: () => void; | ||
| } | ||
| //# sourceMappingURL=model.d.ts.map |
| {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/create-vault/model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,qDAAqD;IACrD,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/D,kEAAkE;IAClE,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAC1E,+DAA+D;IAC/D,QAAQ,CAAC,WAAW,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;IACzC,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAA;CAC3B"} |
| export declare const createVault: (singleUse?: boolean) => Readonly<import("./model").Vault>; | ||
| //# sourceMappingURL=node.d.ts.map |
| {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/create-vault/node.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW,4DAAwD,CAAA"} |
| export declare const decrypt: (encrypted: Uint8Array, password: string) => Promise<string>; | ||
| //# sourceMappingURL=browser.d.ts.map |
| {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/decrypt/browser.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,OAAO,8DAA8D,CAAA"} |
| /** | ||
| * Creates a decryption function that decrypts AES-GCM encrypted messages using password-derived keys. | ||
| * Extracts salt and IV from the encrypted data to derive the correct decryption key. | ||
| * | ||
| * @param arrayBufferToUtf8String - Function to convert byte arrays to UTF-8 strings | ||
| * @param generateKey - Function to derive decryption keys from passwords | ||
| * @param subtle - The SubtleCrypto interface for cryptographic operations | ||
| * @returns A function that decrypts encrypted messages with passwords | ||
| * | ||
| * @example Decrypting encrypted data | ||
| * ```typescript | ||
| * const decrypt = createDecrypt(arrayBufferToUtf8String, generateKey, crypto.subtle) | ||
| * const plaintext = await decrypt(encryptedData, 'user-password') | ||
| * ``` | ||
| */ | ||
| export declare function createDecrypt(arrayBufferToUtf8String: (bytes: ArrayBuffer) => string, generateKey: (password: string, salt: Uint8Array) => Promise<CryptoKey>, subtle: SubtleCrypto): (encrypted: Uint8Array, password: string) => Promise<string>; | ||
| //# sourceMappingURL=create-decrypt.d.ts.map |
| {"version":3,"file":"create-decrypt.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/decrypt/create-decrypt.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAC3B,uBAAuB,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,MAAM,EACvD,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,SAAS,CAAC,EACvE,MAAM,EAAE,YAAY,GACnB,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAe9D"} |
| export declare const decrypt: (encrypted: Uint8Array, password: string) => Promise<string>; | ||
| //# sourceMappingURL=node.d.ts.map |
| {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/decrypt/node.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,OAAO,8DAA8D,CAAA"} |
| export declare const encrypt: (message: string, password: string) => Promise<Uint8Array>; | ||
| //# sourceMappingURL=browser.d.ts.map |
| {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/encrypt/browser.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,OAAO,4DAA8E,CAAA"} |
| /** | ||
| * Creates an encryption function that encrypts messages using AES-GCM with password-derived keys. | ||
| * Generates random salt and initialization vector (IV) for each encryption operation. | ||
| * | ||
| * @param utf8StringToUint8Array - Function to convert UTF-8 strings to byte arrays | ||
| * @param getRandomValues - Function to generate cryptographically secure random values | ||
| * @param generateKey - Function to derive encryption keys from passwords | ||
| * @param subtle - The SubtleCrypto interface for cryptographic operations | ||
| * @returns A function that encrypts messages with passwords | ||
| * | ||
| * @example Encrypting sensitive data | ||
| * ```typescript | ||
| * const encrypt = createEncrypt(utf8StringToUint8Array, getRandomValues, generateKey, crypto.subtle) | ||
| * const encrypted = await encrypt('sensitive-data', 'user-password') | ||
| * ``` | ||
| */ | ||
| export declare function createEncrypt(utf8StringToUint8Array: (text: string) => Uint8Array, getRandomValues: (byteLength: number) => Uint8Array, generateKey: (password: string, salt: Uint8Array) => Promise<CryptoKey>, subtle: SubtleCrypto): (message: string, password: string) => Promise<Uint8Array>; | ||
| //# sourceMappingURL=create-encrypt.d.ts.map |
| {"version":3,"file":"create-encrypt.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/encrypt/create-encrypt.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CAC3B,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,UAAU,EACpD,eAAe,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,UAAU,EACnD,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,SAAS,CAAC,EACvE,MAAM,EAAE,YAAY,GACnB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAuB5D"} |
| export declare const encrypt: (message: string, password: string) => Promise<Uint8Array>; | ||
| //# sourceMappingURL=node.d.ts.map |
| {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/encrypt/node.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,OAAO,4DAA8E,CAAA"} |
| import type { EncryptionConfig } from './encryption-config.model'; | ||
| /** | ||
| * Shape of the frozen encryption configuration. | ||
| */ | ||
| interface EncryptionConfigShape { | ||
| /** Algorithm name used for encryption */ | ||
| name: EncryptionConfig['name']; | ||
| } | ||
| /** | ||
| * Frozen encryption configuration to prevent runtime tampering. | ||
| * Using AES-GCM as the default algorithm for authenticated encryption. | ||
| */ | ||
| export declare const encryptionConfig: Readonly<EncryptionConfigShape>; | ||
| export {}; | ||
| //# sourceMappingURL=encryption-config.d.ts.map |
| {"version":3,"file":"encryption-config.d.ts","sourceRoot":"","sources":["../../../../../../../libs/cryptography/src/lib/encryption-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAGjE;;GAEG;AACH,UAAU,qBAAqB;IAC7B,yCAAyC;IACzC,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;CAC/B;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,qBAAqB,CAE3D,CAAA"} |
| /** Configuration for encryption algorithm settings. */ | ||
| export interface EncryptionConfig { | ||
| /** Encryption algorithm name (AES-GCM, AES-CBC, or AES-CTR). */ | ||
| name: 'AES-GCM' | 'AES-CBC' | 'AES-CTR'; | ||
| } | ||
| //# sourceMappingURL=encryption-config.model.d.ts.map |
| {"version":3,"file":"encryption-config.model.d.ts","sourceRoot":"","sources":["../../../../../../../libs/cryptography/src/lib/encryption-config.model.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,MAAM,WAAW,gBAAgB;IAC/B,gEAAgE;IAChE,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;CACxC"} |
| export declare const generateKey: (password: string, salt: Uint8Array) => Promise<CryptoKey>; | ||
| //# sourceMappingURL=browser.d.ts.map |
| {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/generate-key/browser.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,WAAW,4DAAqD,CAAA"} |
| /** | ||
| * Creates a key generator function that derives encryption keys from passwords using PBKDF2. | ||
| * Uses 100,000 iterations with SHA-256 hashing for secure key derivation. | ||
| * | ||
| * @param subtle - The SubtleCrypto interface for cryptographic operations | ||
| * @param utf8StringToUint8Array - Function to convert UTF-8 strings to byte arrays | ||
| * @returns A function that generates CryptoKey instances from passwords and salts | ||
| * | ||
| * @example Generating an encryption key | ||
| * ```typescript | ||
| * const generateKey = createKeyGenerator(crypto.subtle, utf8StringToUint8Array) | ||
| * const salt = getRandomValues(16) | ||
| * const key = await generateKey('user-password', salt) | ||
| * ``` | ||
| */ | ||
| export declare function createKeyGenerator(subtle: SubtleCrypto, utf8StringToUint8Array: (text: string) => Uint8Array): (password: string, salt: Uint8Array) => Promise<CryptoKey>; | ||
| //# sourceMappingURL=create-key-generator.d.ts.map |
| {"version":3,"file":"create-key-generator.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/generate-key/create-key-generator.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,YAAY,EACpB,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,UAAU,GACnD,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,SAAS,CAAC,CA4B5D"} |
| export declare const generateKey: (password: string, salt: Uint8Array) => Promise<CryptoKey>; | ||
| //# sourceMappingURL=node.d.ts.map |
| {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/generate-key/node.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,WAAW,4DAAqD,CAAA"} |
| /** | ||
| * Generates cryptographically secure random values using Web Crypto API (browser implementation). | ||
| * | ||
| * @param byteLength - The number of random bytes to generate | ||
| * @returns A Uint8Array containing the random bytes | ||
| * @throws {Error} When byteLength is not provided or is zero | ||
| * | ||
| * @example Generating random bytes | ||
| * ```typescript | ||
| * const randomBytes = getRandomValues(16) | ||
| * // => Uint8Array(16) with cryptographically secure random values | ||
| * ``` | ||
| */ | ||
| export declare function getRandomValues(byteLength: number): Uint8Array; | ||
| //# sourceMappingURL=browser.d.ts.map |
| {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/get-random-values/browser.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,CAK9D"} |
| /** | ||
| * Generates cryptographically secure random values using Node.js crypto module. | ||
| * | ||
| * @param byteLength - The number of random bytes to generate | ||
| * @returns A Uint8Array containing the random bytes | ||
| * @throws {Error} When byteLength is not provided or is zero | ||
| * | ||
| * @example Generating random bytes | ||
| * ```typescript | ||
| * const randomBytes = getRandomValues(16) | ||
| * // => Uint8Array(16) with cryptographically secure random values | ||
| * ``` | ||
| */ | ||
| export declare function getRandomValues(byteLength: number): Uint8Array; | ||
| //# sourceMappingURL=node.d.ts.map |
| {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/get-random-values/node.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,CAK9D"} |
| /** | ||
| * Generates a UTC time-based one-time password (TOTP) with configurable time window and offset (browser implementation). | ||
| * Uses Web Crypto API for hash generation. | ||
| * | ||
| * @param currentUtcTime - The current UTC time for password generation | ||
| * @param baseTimeWindow - The base time window in minutes that defines password validity period | ||
| * @param windowOffset - The window offset (-1 for previous window, 0 for current, 1 for next window) | ||
| * @returns A promise that resolves to the generated time-based password | ||
| */ | ||
| export declare const getTimeBasedPassword: (currentUtcTime: Date, baseTimeWindow: number, windowOffset?: -1 | 0 | 1) => Promise<string>; | ||
| //# sourceMappingURL=browser.d.ts.map |
| {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/get-time-based-password/browser.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,8FAAyC,CAAA"} |
| import type { HashAlgorithm } from '../create-hash/model'; | ||
| /** | ||
| * Creates a time-based one-time password (TOTP) generator function. | ||
| * Generates passwords that change based on time windows, supporting previous/current/next window offsets. | ||
| * | ||
| * @param createHash - Function to create cryptographic hashes | ||
| * @returns A function that generates time-based passwords | ||
| * | ||
| * @example Generating a time-based password | ||
| * ```typescript | ||
| * const getPassword = createGetTimeBasedPassword(createHash) | ||
| * const password = await getPassword(new Date(), 5) // 5-minute window | ||
| * ``` | ||
| */ | ||
| export declare function createGetTimeBasedPassword(createHash: (data: string, algorithm?: HashAlgorithm) => Promise<string>): (currentUtcTime: Date, baseTimeWindow: number, windowOffset?: -1 | 0 | 1) => Promise<string>; | ||
| //# sourceMappingURL=create-get-time-based-password.d.ts.map |
| {"version":3,"file":"create-get-time-based-password.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/get-time-based-password/create-get-time-based-password.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAOzD;;;;;;;;;;;;GAYG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,CAAC,GACvE,CAAC,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAS9F"} |
| /** | ||
| * Generates a UTC time-based one-time password (TOTP) with configurable time window and offset (Node.js implementation). | ||
| * Uses Node.js crypto module for hash generation. | ||
| * | ||
| * @param currentUtcTime - The current UTC time for password generation | ||
| * @param baseTimeWindow - The base time window in minutes that defines password validity period | ||
| * @param windowOffset - The window offset (-1 for previous window, 0 for current, 1 for next window) | ||
| * @returns A promise that resolves to the generated time-based password | ||
| */ | ||
| export declare const getTimeBasedPassword: (currentUtcTime: Date, baseTimeWindow: number, windowOffset?: -1 | 0 | 1) => Promise<string>; | ||
| //# sourceMappingURL=node.d.ts.map |
| {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/get-time-based-password/node.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,8FAAyC,CAAA"} |
| /** | ||
| * Generates time-based one-time passwords (TOTP) for current, previous, and next time windows (browser implementation). | ||
| * Useful for handling time synchronization issues by providing passwords across adjacent time windows. | ||
| * | ||
| * @param currentUtcTime - The current UTC time for password generation | ||
| * @param baseTimeWindow - The base time window in minutes that defines password validity periods | ||
| * @returns An object containing generator functions for current, previous, and next window passwords | ||
| */ | ||
| export declare const getTimeBasedPasswords: (currentUtcTime: Date, baseTimeWindow: number) => Readonly<import("./model").TimeBasedPasswordGenerators>; | ||
| //# sourceMappingURL=browser.d.ts.map |
| {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/browser.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,2GAAiD,CAAA"} |
| import type { TimeBasedPasswordGenerators } from './model'; | ||
| /** | ||
| * Creates a factory function that generates time-based password generators for multiple time windows. | ||
| * Returns a frozen object with methods to generate passwords for current, previous, and next time windows. | ||
| * | ||
| * @param getTimeBasedPassword - Function to generate a single time-based password with window offset | ||
| * @returns A function that creates password generators for adjacent time windows | ||
| * | ||
| * @example Creating password generators | ||
| * ```typescript | ||
| * const getPasswords = createTimeBasedPasswords(getTimeBasedPassword) | ||
| * const passwords = getPasswords(new Date(), 5) | ||
| * const current = await passwords.current() | ||
| * const previous = await passwords.previous() | ||
| * ``` | ||
| */ | ||
| export declare function createTimeBasedPasswords(getTimeBasedPassword: (currentUtcTime: Date, baseTimeWindow: number, windowOffset?: -1 | 0 | 1) => Promise<string>): (currentUtcTime: Date, baseTimeWindow: number) => Readonly<TimeBasedPasswordGenerators>; | ||
| //# sourceMappingURL=create-get-time-based-passwords.d.ts.map |
| {"version":3,"file":"create-get-time-based-passwords.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/create-get-time-based-passwords.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAA;AAG1D;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CACtC,oBAAoB,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,GACjH,CAAC,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,KAAK,QAAQ,CAAC,2BAA2B,CAAC,CAOzF"} |
| /** | ||
| * Generators for time-based one-time passwords (TOTP). | ||
| */ | ||
| export interface TimeBasedPasswordGenerators { | ||
| /** Generates the password for the current time window. */ | ||
| readonly current: () => Promise<string>; | ||
| /** Generates the password for the previous time window. */ | ||
| readonly previous: () => Promise<string>; | ||
| /** Generates the password for the next time window. */ | ||
| readonly next: () => Promise<string>; | ||
| } | ||
| //# sourceMappingURL=model.d.ts.map |
| {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,0DAA0D;IAC1D,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IACvC,2DAA2D;IAC3D,QAAQ,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IACxC,uDAAuD;IACvD,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;CACrC"} |
| /** | ||
| * Generates time-based one-time passwords (TOTP) for current, previous, and next time windows (Node.js implementation). | ||
| * Useful for handling time synchronization issues by providing passwords across adjacent time windows. | ||
| * | ||
| * @param currentUtcTime - The current UTC time for password generation | ||
| * @param baseTimeWindow - The base time window in minutes that defines password validity periods | ||
| * @returns An object containing generator functions for current, previous, and next window passwords | ||
| */ | ||
| export declare const getTimeBasedPasswords: (currentUtcTime: Date, baseTimeWindow: number) => Readonly<import("./model").TimeBasedPasswordGenerators>; | ||
| //# sourceMappingURL=node.d.ts.map |
| {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/node.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,2GAAiD,CAAA"} |
| /** | ||
| * Validates whether the provided value is a valid SHA-256 hash string. | ||
| * Checks for exactly 64 hexadecimal characters (case-insensitive). | ||
| * | ||
| * @param hash - The value to validate as a SHA-256 hash | ||
| * @returns True if the value is a valid SHA-256 hash string, false otherwise | ||
| * | ||
| * @example Validating SHA-256 hashes | ||
| * ```typescript | ||
| * isSHA256Hash('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') | ||
| * // => true | ||
| * | ||
| * isSHA256Hash('invalid') | ||
| * // => false | ||
| * ``` | ||
| */ | ||
| export declare function isSHA256Hash(hash: unknown): boolean; | ||
| //# sourceMappingURL=is-sha-256-hash.d.ts.map |
| {"version":3,"file":"is-sha-256-hash.d.ts","sourceRoot":"","sources":["../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAEnD"} |
| export declare const subtle: SubtleCrypto; | ||
| //# sourceMappingURL=browser.d.ts.map |
| {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/subtle/browser.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,EAAI,YAAqC,CAAA"} |
| export declare const subtle: SubtleCrypto; | ||
| //# sourceMappingURL=node.d.ts.map |
| {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/cryptography/src/lib/subtle/node.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,EAAI,YAA6B,CAAA"} |
| {"version":3,"file":"index.cjs.js","sources":["../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/promise/index.ts","../../../../../../../../libs/cryptography/src/lib/create-hash/node.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/encoding/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/typed-arrays/index.ts","../../../../../../../../libs/utils/string/src/lib/shared-consts.ts","../../../../../../../../libs/utils/string/src/lib/array-buffer-to-utf8-string/array-buffer-to-utf8-string.ts","../../../../../../../../libs/utils/string/src/lib/utf8-string-to-uint8-array/node/utf8-string-to-uint8-array.ts","../../../../../../../../libs/cryptography/src/lib/subtle/node.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/object/index.ts","../../../../../../../../libs/utils/data/src/shared/consts.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/array/index.ts","../../../../../../../../libs/utils/data/src/get-type.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/date/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/math/index.ts","../../../../../../../../libs/cryptography/src/lib/encryption-config.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/create-key-generator.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/node.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/create-decrypt.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/node.ts","../../../../../../../../libs/cryptography/src/lib/get-random-values/node.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/create-encrypt.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/node.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/create-value-creator.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/node.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo-time-based.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/number/index.ts","../../../../../../../../libs/utils/time/src/normalize-to-base-time-window.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/create-get-time-based-password.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/node.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/create-get-time-based-passwords.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/node.ts","../../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["_Reflect","_createHash","webcrypto","randomBytes"],"mappings":"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"} |
| {"version":3,"file":"index.esm.js","sources":["../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/promise/index.ts","../../../../../../../../libs/cryptography/src/lib/create-hash/node.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/encoding/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/typed-arrays/index.ts","../../../../../../../../libs/utils/string/src/lib/shared-consts.ts","../../../../../../../../libs/utils/string/src/lib/array-buffer-to-utf8-string/array-buffer-to-utf8-string.ts","../../../../../../../../libs/utils/string/src/lib/utf8-string-to-uint8-array/node/utf8-string-to-uint8-array.ts","../../../../../../../../libs/cryptography/src/lib/subtle/node.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/object/index.ts","../../../../../../../../libs/utils/data/src/shared/consts.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/array/index.ts","../../../../../../../../libs/utils/data/src/get-type.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/date/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/math/index.ts","../../../../../../../../libs/cryptography/src/lib/encryption-config.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/create-key-generator.ts","../../../../../../../../libs/cryptography/src/lib/generate-key/node.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/create-decrypt.ts","../../../../../../../../libs/cryptography/src/lib/decrypt/node.ts","../../../../../../../../libs/cryptography/src/lib/get-random-values/node.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/create-encrypt.ts","../../../../../../../../libs/cryptography/src/lib/encrypt/node.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/create-value-creator.ts","../../../../../../../../libs/cryptography/src/lib/create-vault/node.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo.ts","../../../../../../../../libs/utils/random-generator/src/random-pseudo-time-based.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/number/index.ts","../../../../../../../../libs/utils/time/src/normalize-to-base-time-window.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/create-get-time-based-password.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-password/node.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/create-get-time-based-passwords.ts","../../../../../../../../libs/cryptography/src/lib/get-time-based-passwords/node.ts","../../../../../../../../libs/cryptography/src/lib/is-sha-256-hash.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["_Reflect","_createHash"],"mappings":";;AAAA;;;;;;;;;;AAUG;AAEH,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK;AAQ/B,MAAMA,UAAQ,GAAG,UAAU,CAAC,OAAO;AAGnC;;;;;;;;;;;;;;AAcG;AACI,MAAM,WAAW,GAAG,CAAC,OAAgB,EAAE,OAAsB,KAAmBA,UAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;;ACtCrI;AACA;;;;;;;;;;AAUG;AAEH,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO;AACnC,MAAMA,UAAQ,GAAG,UAAU,CAAC,OAAO;AAGnC;;;;;;AAMG;AACI,MAAM,aAAa,GAAG,CAC3B,QAAoG,KACzEA,UAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;AAErE;;AAEG;AAC2B,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;AAE5D;;AAEG;AAC0B,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ;AAE1D;;AAEG;AACuB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ;AAEpD;;AAEG;AACwB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ;AAEtD;;AAEG;AAC8B,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ;AAElE;;AAEG;AACuB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ;AAEpD;;;AAGG;AACH;AAC0C,QAAS,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ;;AC1DhF;;;;;;;;;;;;;AAaG;AACI,eAAe,UAAU,CAAC,IAAY,EAAE,YAA2B,SAAS,EAAA;AACjF,IAAA,OAAO,aAAa,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACvC,QAAA,IAAI;AACF,YAAA,MAAM,IAAI,GAAGC,YAAW,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YAC9D,OAAO,CAAC,IAAI,CAAC;QACf;AAAE,QAAA,MAAM;AACN,YAAA,MAAM,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;QAC5C;AACF,IAAA,CAAC,CAAC;AACJ;;AC5BA;AACA;;;;;;;;AAQG;AAEH,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW;AAC3C,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW;AAG3C,MAAMD,UAAQ,GAAG,UAAU,CAAC,OAAO;AAGnC;;;;;AAKG;AACI,MAAM,iBAAiB,GAAG,MAAgCA,UAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,CAAC;AAErG;;;;;;;AAOG;AACI,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAE,OAA4B,KAC/DA,UAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;;ACnCjE;AACA;;;;;;;;AAQG;AAEH,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW;AAC3C,MAAM,kBAAkB,GAAG,UAAU,CAAC,iBAAiB;AAEvD,MAAM,WAAW,GAAG,UAAU,CAAC,UAAU;AACzC,MAAM,kBAAkB,GAAG,UAAU,CAAC,iBAAiB;AACvD,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW;AAC3C,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW;AAC3C,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS;AACvC,MAAM,WAAW,GAAG,UAAU,CAAC,UAAU;AACzC,MAAM,WAAW,GAAG,UAAU,CAAC,UAAU;AACzC,MAAM,aAAa,GAAG,UAAU,CAAC,YAAY;AAC7C,MAAM,aAAa,GAAG,UAAU,CAAC,YAAY;AAC7C,MAAM,cAAc,GAAG,UAAU,CAAC,aAAa;AAC/C,MAAM,eAAe,GAAG,UAAU,CAAC,cAAc;AACjD,MAAMA,UAAQ,GAAG,UAAU,CAAC,OAAO;SAkFnB,gBAAgB,CAC9B,GAAoE,EACpE,UAAmB,EACnB,MAAe,EAAA;AAEf,IAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,OAAmBA,UAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC;IAC3D;IACA,IAAI,GAAG,YAAY,YAAY,IAAI,GAAG,YAAY,kBAAkB,EAAE;AACpE,QAAA,OAAmBA,UAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC/E;IACA,OAAmBA,UAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC;AAC3D;AAEA;;AAEG;AACmD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW;AAEvF;;AAEG;AAC+C,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW;AAmBjF;;AAEG;AACiE,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB;AAEnH;;AAEG;AAC6D,kBAAkB,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB;AAiB7G;;AAEG;AACqD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY;AAE3F;;AAEG;AACiD,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY;AAiBrF;;AAEG;AACqD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY;AAE3F;;AAEG;AACiD,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY;AAkBrF;;AAEG;AACiD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU;AAEnF;;AAEG;AAC6C,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU;AAkB7E;;AAEG;AACmD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW;AAEvF;;AAEG;AAC+C,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW;AAkBjF;;AAEG;AACmD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW;AAEvF;;AAEG;AAC+C,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW;AAkBjF;;AAEG;AACuD,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa;AAE/F;;AAEG;AACmD,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa;AAkBzF;;AAEG;AACuD,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa;AAE/F;;AAEG;AACmD,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa;AAkBzF;;AAEG;AACyD,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc;AAEnG;;AAEG;AACqD,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc;AAkB7F;;AAEG;AAC2D,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe;AAEvG;;AAEG;AACuD,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe;;ACjY1E,iBAAiB;AACjC,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,CAAC;CAkBN;AAC7C,IAAA,MAAM,EAAE;AACN,QACA,KAAK,EAAE,gBAAgB,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACnD,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QACA,KAAK,EAAE,gBAAgB,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACrG,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QACA,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC;AAC5B,KAAA;;;AChCH;;;;;;;;;;;;;AAaG;AACG,SAAU,uBAAuB,CAAC,UAAuB,EAAA;AAC7D,IAAA,OAAO,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC;AACxC;;AChBA;;;;;;;;;;;AAWG;AACG,SAAU,sBAAsB,CAAC,IAAY,EAAA;IACjD,OAAO,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACpD;;ACdO,MAAM,MAAM,GAAiB,SAAS,CAAC;;ACF9C;;;;;;;AAOG;AAEH,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM;AAMjC;;;AAGG;AACI,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM;AAEpC;;AAEG;AACI,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM;;ACpB7B,MAAM,iBAAiB,GAAmB,EAAE;;ACJnD;;;;;;;AAOG;AAEH,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK;AAG/B;;AAEG;AACI,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO;AAErC;;AAEG;AACI,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;;AChB/B;;;;;;;;;;;;;;AAcG;AACI,MAAM,OAAO,GAAG,CAA8B,MAAe,KAAO;IACzE,IAAI,MAAM,KAAK,IAAI;AAAE,QAAA,OAAU,MAAM;AACrC,IAAA,MAAM,cAAc,GAAG,OAAO,MAAM;AACpC,IAAA,IAAI,cAAc,KAAK,QAAQ,EAAE;QAC/B,IAAI,OAAO,CAAC,MAAM,CAAC;AAAE,YAAA,OAAU,OAAO;AACtC,QAAA,KAAK,MAAM,eAAe,IAAI,iBAAiB,EAAE;YAC/C,IAAI,MAAM,YAAY,eAAe;gBAAE,OAAU,eAAe,CAAC,IAAI;QACvE;IACF;AACA,IAAA,OAAU,cAAc;AAC1B,CAAC;;AC7BD;AACA;;;;;;;;;;AAUG;AAEH,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG;AAC3B,MAAMA,UAAQ,GAAG,UAAU,CAAC,OAAO;AAGnC;;;;;;AAMG;AACI,MAAM,SAAS,GAAG,CAAO,QAA2C,KAC9DA,UAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;;ACzBjE;AACA;;;;;;;;;;AAUG;AAEH,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI;AAC7B,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO;AAcnC;;;;;;;;;;;;;AAaG;AACG,SAAU,UAAU,CAAC,GAAG,IAAe,EAAA;IAC3C,OAAa,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC;AAC9C;;AC5CA;;;;;;;AAOG;AAEH,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI;AA0D7B;;AAEG;AACI,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK;AAwEhC;;AAEG;AACI,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG;;ACtI5B;;;AAGG;AACI,MAAM,gBAAgB,GAAoC,MAAM,CAAQ;AAC7E,IAAA,IAAI,EAA4B,SAAS;AAC1C,CAAA;;ACbD;;;;;;;;;;;;;;AAcG;AACG,SAAU,kBAAkB,CAChC,MAAoB,EACpB,sBAAoD,EAAA;AAEpD,IAAA,OAAO,eAAe,WAAW,CAAC,QAAgB,EAAE,IAAgB,EAAA;AAClE,QAAA,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,QAAQ,EAAE;AAClC,YAAA,MAAM,WAAW,CAAC,oDAAoD,CAAC;QACzE;AACA,QAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;AACzB,YAAA,MAAM,WAAW,CAAC,sDAAsD,CAAC;QAC3E;QACA,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,MAAM,WAAW,CAAC,oCAAoC,CAAC;QACzD;QACA,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,EAAgB,sBAAsB,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE;YAC3H,WAAW;AACZ,SAAA,CAAC;QACF,OAAO,MAAM,CAAC,SAAS,CACrB;AACE,YAAA,IAAI,EAAE,QAAQ;;AAEd,YAAA,IAAI,EAAO,IAAI;AACf,YAAA,UAAU,EAAE,OAAO;AACnB,YAAA,IAAI,EAAE,SAAS;AAChB,SAAA,EACD,WAAW,EACX,EAAE,GAAG,gBAAgB,EAAE,MAAM,EAAE,GAAG,EAAE,EACpC,KAAK,EACL,CAAC,SAAS,EAAE,SAAS,CAAC,CACvB;AACH,IAAA,CAAC;AACH;;AC9CO,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,EAAE,sBAAsB;;ACD5E;;;;;;;;;;;;;;AAcG;SACa,aAAa,CAC3B,uBAAuD,EACvD,WAAuE,EACvE,MAAoB,EAAA;AAEpB,IAAA,OAAO,eAAe,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAA;QAC/C,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;AACnC,YAAA,MAAM,WAAW,CAAC,kCAAkC,CAAC;QACvD;QACA,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,MAAM,WAAW,CAAC,mCAAmC,CAAC;QACxD;QACA,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC;AAC7C,QAAA,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,gBAAgB,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC;AACrF,QAAA,OAAO,uBAAuB,CAAC,gBAAgB,CAAC;AAClD,IAAA,CAAC;AACH;;AChCO,MAAM,OAAO,GAAG,aAAa,CAAC,uBAAuB,EAAE,WAAW,EAAE,MAAM;;ACDjF;;;;;;;;;;;;AAYG;AACG,SAAU,eAAe,CAAC,UAAkB,EAAA;IAChD,IAAI,CAAC,UAAU,EAAE;AACf,QAAA,MAAM,WAAW,CAAC,sDAAsD,CAAC;IAC3E;AACA,IAAA,OAAO,gBAAgB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;AAClD;;AClBA;;;;;;;;;;;;;;;AAeG;AACG,SAAU,aAAa,CAC3B,sBAAoD,EACpD,eAAmD,EACnD,WAAuE,EACvE,MAAoB,EAAA;AAEpB,IAAA,OAAO,eAAe,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAA;QAC7C,IAAI,CAAC,OAAO,EAAE;AACZ,YAAA,MAAM,WAAW,CAAC,kCAAkC,CAAC;QACvD;QACA,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,MAAM,WAAW,CAAC,oCAAoC,CAAC;QACzD;AACA,QAAA,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,CAAC;AAChC,QAAA,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC;QAC7C,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,OAAO,CAC3C,EAAE,GAAG,gBAAgB,EAAE,EAAE,EAAyB,EAAG,EAAE,EACvD,GAAG,EACW,sBAAsB,CAAC,OAAO,CAAC,CAC9C;AACD,QAAA,MAAM,MAAM,GAAG,gBAAgB,CAAC,gBAAgB,CAAC;AACjD,QAAA,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AACpF,QAAA,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACnB,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC;AAC/B,QAAA,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC;AACnD,QAAA,OAAO,MAAM;AACf,IAAA,CAAC;AACH;;AC1CO,MAAM,OAAO,GAAG,aAAa,CAAC,sBAAsB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM;;ACCjG;;;;;;;;;;;;;;;;;AAiBG;SACa,kBAAkB,CAChC,eAAmD,EACnD,OAAmE,EACnE,OAAqE,EAAA;AAErE,IAAA,OAAO,SAAS,WAAW,CAAC,SAAS,GAAG,KAAK,EAAA;QAC3C,IAAI,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;AACpC,aAAA,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;aAC1C,IAAI,CAAC,EAAE,CAAC;QAEX,IAAI,kBAAkB,GAAG,KAAK;QAC9B,IAAI,aAAa,GAAG,KAAK;AAEzB,QAAA,IAAI,OAAO,GAAG,SAAS,EAAsB;AAE7C;;;;;;;AAOG;AACH,QAAA,eAAe,KAAK,CAAC,KAAa,EAAE,KAAa,EAAA;YAC/C,IAAI,aAAa,EAAE;AACjB,gBAAA,MAAM,WAAW,CAAC,kBAAkB,CAAC;YACvC;YACA,IAAI,CAAC,KAAK,EAAE;AACV,gBAAA,MAAM,WAAW,CAAC,oBAAoB,CAAC;YACzC;YACA,IAAI,CAAC,KAAK,EAAE;AACV,gBAAA,MAAM,WAAW,CAAC,oBAAoB,CAAC;YACzC;YACA,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;AACrD,YAAA,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC;QACpC;AAEA;;;;;;;;AAQG;AACH,QAAA,eAAe,IAAI,CAAC,KAAa,EAAE,QAAgB,EAAA;YACjD,IAAI,aAAa,EAAE;AACjB,gBAAA,MAAM,WAAW,CAAC,kBAAkB,CAAC;YACvC;YACA,IAAI,CAAC,KAAK,EAAE;AACV,gBAAA,MAAM,WAAW,CAAC,oBAAoB,CAAC;YACzC;YACA,IAAI,CAAC,QAAQ,EAAE;AACb,gBAAA,MAAM,WAAW,CAAC,uBAAuB,CAAC;YAC5C;YACA,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;YACzC,IAAI,CAAC,cAAc,EAAE;AACnB,gBAAA,OAAO,IAAI;YACb;YACA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC;YACtD,IAAI,SAAS,EAAE;AACb,gBAAA,KAAK,EAAE;YACT;AACA,YAAA,OAAO,MAAM;QACf;AAEA;;;;;;AAMG;AACH,QAAA,SAAS,WAAW,GAAA;YAClB,IAAI,aAAa,EAAE;AACjB,gBAAA,MAAM,WAAW,CAAC,kBAAkB,CAAC;YACvC;YACA,IAAI,kBAAkB,EAAE;AACtB,gBAAA,OAAO,IAAI;YACb;YACA,kBAAkB,GAAG,IAAI;AACzB,YAAA,OAAO,QAAQ;QACjB;AAEA;;;AAGG;AACH,QAAA,SAAS,KAAK,GAAA;YACZ,OAAO,CAAC,KAAK,EAAE;YACR,OAAQ,GAAG,IAAI;YACf,QAAS,GAAG,IAAI;YACvB,aAAa,GAAG,IAAI;QACtB;AAEA,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE;AACzB,YAAA,KAAK,EAAE;AACL,gBAAA,KAAK,EAAE,KAAK;AACZ,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,YAAY,EAAE,KAAK;AACpB,aAAA;AACD,YAAA,IAAI,EAAE;AACJ,gBAAA,KAAK,EAAE,IAAI;AACX,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,YAAY,EAAE,KAAK;AACpB,aAAA;AACD,YAAA,WAAW,EAAE;AACX,gBAAA,KAAK,EAAE,WAAW;AAClB,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,YAAY,EAAE,KAAK;AACpB,aAAA;AACD,YAAA,KAAK,EAAE;AACL,gBAAA,KAAK,EAAE,KAAK;AACZ,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,YAAY,EAAE,KAAK;AACpB,aAAA;AACF,SAAA,CAAC;AAEF,QAAA,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,IAAA,CAAC;AACH;;ACjJO,MAAM,WAAW,GAAG,kBAAkB,CAAC,eAAe,EAAE,OAAO,EAAE,OAAO;;ACH/E;;;;;;;;;;;;;;;;;;AAkBG;AACG,SAAU,YAAY,CAAC,IAAY,EAAA;IACvC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK;AAC3B,IAAA,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;AACrB;;ACtBA;;;;;;;;;;;;;;;AAeG;AACG,SAAU,qBAAqB,CAAC,QAAc,EAAA;AAClD,IAAA,OAAO,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;AACzC;;ACpBA;;;;;;;AAOG;AAKH,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK;AA0E/B;;AAEG;AACI,MAAM,WAAW,GAAG,MAAM;;ACpFjC;;;;;;;;;;;;;;AAcG;AACG,SAAU,yBAAyB,CAAC,IAAU,EAAE,cAAsB,EAAA;AAC1E,IAAA,IAAI,CAAC,IAAI,IAAI,EAAE,IAAI,YAAY,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE;AACnE,QAAA,MAAM,WAAW,CAAC,oBAAoB,CAAC;IACzC;AAEA,IAAA,IAAI,cAAc,IAAI,CAAC,EAAE;AACvB,QAAA,MAAM,WAAW,CAAC,mCAAmC,CAAC;IACxD;AAEA,IAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE;AAC/B,IAAA,MAAM,UAAU,GAAG,cAAc,GAAG,EAAE,GAAG,IAAI;IAC7C,MAAM,kBAAkB,GAAG,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,UAAU;AACpE,IAAA,OAAO,UAAU,CAAC,kBAAkB,CAAC;AACvC;;AC1BA;;;;;;;;;;;;AAYG;AACG,SAAU,0BAA0B,CACxC,UAAwE,EAAA;IAExE,OAAO,eAAe,oBAAoB,CAAC,cAAc,EAAE,cAAc,EAAE,YAAY,GAAG,CAAC,EAAA;AACzF,QAAA,IAAI,OAAO,CAAC,YAAY,CAAC,KAAK,QAAQ,IAAI,YAAY,GAAG,EAAE,IAAI,CAAC,GAAG,YAAY,EAAE;AAC/E,YAAA,MAAM,WAAW,CAAC,oCAAoC,CAAC;QACzD;AACA,QAAA,MAAM,UAAU,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,YAAY,GAAG,cAAc,GAAG,KAAK,CAAC;AAE/F,QAAA,OAAO,MAAM,UAAU,CAAC,qBAAqB,CAAC,yBAAyB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAClH,IAAA,CAAC;AACH;;AC5BA;;;;;;;;AAQG;MACU,oBAAoB,GAAG,0BAA0B,CAAC,UAAU;;ACTzE;;;;;;;;;;;;;;AAcG;AACG,SAAU,wBAAwB,CACtC,oBAAkH,EAAA;AAElH,IAAA,OAAO,SAAS,qBAAqB,CAAC,cAAc,EAAE,cAAc,EAAA;AAClE,QAAA,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC;AAC7E,QAAA,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,cAAc,EAAE,cAAc,EAAE,EAAE,CAAC;AAC/E,QAAA,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC;QAC1E,OAAO,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5C,IAAA,CAAC;AACH;;ACxBA;;;;;;;AAOG;MACU,qBAAqB,GAAG,wBAAwB,CAAC,oBAAoB;;ACTlF;;;;;;;;;;;;;;;AAeG;AACG,SAAU,YAAY,CAAC,IAAa,EAAA;AACxC,IAAA,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAS,IAAI,CAAC,GAAG,KAAK;AAClF;;;;"} |
212774
-45.64%56
-39.13%4164
-27.14%