UNPKG

core-fed-util

Version:

This is A collection of commonly used frontend utility functions‌

880 lines (662 loc) 27 kB
# core-fed-util This is A collection of commonly used frontend utility functions‌ ## Num ### Description Provides functions for number manipulation and arithmetic operations with precision. ### Functions - `getNthLargest(arr: number[], n: number): number | null` - Returns the nth largest number in an array. - **Params**: `arr` (array of numbers), `n` (position) - **Returns**: nth largest number or `null` if n exceeds array length. - `getDecimalPlaces(num: number): number` - Returns the number of decimal places in a number. - **Params**: `num` (number) - **Returns**: count of decimal places. - `addFloat(num1: number, num2: number): number` - Adds two floating-point numbers with precision. - **Params**: `num1`, `num2` - **Returns**: sum with precision. - `subtractFloat`, `multiplyFloat`, `divideFloat` - Perform subtraction, multiplication, and division with precision similar to `addFloat`. - `formatNumber(num: number): string` - Formats a number with commas and two decimal places. - **Params**: `num` - **Returns**: formatted string. - `convertNumberToDecimal(num: string): number` - Converts a number string with commas to a decimal. - **Params**: `num` (string) - **Returns**: decimal number. - `clampNumber(num: number, min: number, max: number): number` - Clamps a number between a minimum and maximum value. - **Params**: `num`, `min`, `max` - **Returns**: clamped number. - `convertNumberBase(number: number, base: number = 10): string` - Converts a number to a different base (2-36). - **Params**: `number`, `base` - **Returns**: string representation in the new base. - `isNumberInteger(num: number): boolean` - Checks if a number is an integer. - **Params**: `num` - **Returns**: `true` if integer. - `padNumber(num: number | string, padNum: number | string, length: number = 2): string` - Pads a number with a specified character to a specified length. - **Params**: `num`, `padNum`, `length` - **Returns**: padded string. ## Array ### Description Utility functions for array manipulation. ### Functions - `generateArrayNumbers(n: number, start: number = 1): number[]` - Generates an array of numbers starting from a given number. - **Params**: `n` (length), `start` (starting number) - **Returns**: array of numbers. - `flattenArray<T>(arr: T[], depth: number = 1): any[]` - Flattens a nested array up to a specified depth. - **Params**: `arr`, `depth` - **Returns**: flattened array. - `removeArrayDuplicates<T>(arr: T[], value: T): T[]` - Removes duplicates of a specific value from an array. - **Params**: `arr`, `value` - **Returns**: array with duplicates removed. - `findAllIndexes<T>(arr: T[], value: T): number[]` - Finds all indexes of a value in an array. - **Params**: `arr`, `value` - **Returns**: array of indexes. - `isEmptyArray<T>(arr: T[]): boolean` - Checks if an array is empty. - **Params**: `arr` - **Returns**: `true` if empty. - `sortArrayAscending(arr: number[]): number[]` - Sorts an array in ascending order. - **Params**: `arr` - **Returns**: sorted array. - `sortArrayDescending`, `bubbleArraySort` - Sort in descending order and bubble sort implementation. - `uniqueArray<T>(arr: T[]): T[]` - Returns an array with unique values. - **Params**: `arr` - **Returns**: array of unique values. - `omitArrayValues<T>(arr: T[], values: T[]): T[]` - Removes specified values from an array. - **Params**: `arr`, `values` - **Returns**: filtered array. - `arrayToMap(array: [string, any][]): Map<string, any>` - Converts an array of key-value pairs to a Map. - **Params**: `array` - **Returns**: Map. - `mergeArrays<T>(...arrays: T[][]): T[]` - Merges multiple arrays into one. - **Params**: variable number of arrays - **Returns**: merged array. ## Async ### Description Utilities for asynchronous operations. ### Functions - `sleep(ms: number): Promise<void>` - Pauses execution for specified milliseconds. - **Params**: `ms` - **Returns**: Promise that resolves after delay. - `executeAsyncFunctionsInOrder(functions: Function[]): Promise<AsyncResult[]>` - Executes async functions in order. - **Params**: array of async functions - **Returns**: results array. - `executeAsyncFunctionsConcurrently(functions: Function[]): Promise<any[]>` - Runs async functions concurrently. - **Params**: array of async functions - **Returns**: results array. - `runWithConcurrencyInLimit(tasks: Function[], maxConcurrency: number): Promise<any[]>` - Runs tasks with concurrency limit. - **Params**: `tasks`, `maxConcurrency` - **Returns**: results array. - `asyncify(fn: Function): Promise<(...args: any[]) => Promise<any>>` - Converts a sync function to async. - **Params**: `fn` - **Returns**: async function wrapper. ## Boolean ### Description Boolean value checking and manipulation. ### Functions - `checkAllTrue(...args: any[]): boolean` - Checks if all arguments are truthy. - **Params**: variable arguments - **Returns**: `true` if all truthy. - `checkAnyTrue`, `checkAllFalse`, `checkAnyFalse` - Similar checks for any truthy, all falsy, any falsy. - `classIf(condition: any, className: string): string` - Returns class name if condition is true. - **Params**: `condition`, `className` - **Returns**: class name or empty string. - `filterTruthyProps(obj: Record<string, any>): Record<string, any>` - Filters object to include only truthy properties. - **Params**: `obj` - **Returns**: filtered object. - `toBoolean(value: any): boolean` - Converts value to boolean. - **Params**: `value` - **Returns**: boolean value. - `isTrue(value: any): boolean`, `isFalse(value: any): boolean` - Check if value is truthy or falsy. ## Browser ### Description Browser-related utilities for URL and storage operations. ### Functions - `getUrlParam(name: string): string | null` - Gets a URL parameter value. - **Params**: `name` - **Returns**: parameter value or `null`. - `hasUrlParam(name: string): boolean` - Checks if URL parameter exists. - **Params**: `name` - **Returns**: `true` if exists. - `setUrlParam(name: string, value: string): void` - Sets a URL parameter. - **Params**: `name`, `value` - `removeUrlParam(name: string): void` - Removes a URL parameter. - **Params**: `name` - `getAllUrlParams(): Record<string, string>` - Gets all URL parameters as an object. - **Returns**: object of parameters. - `getCurrentUrlInfo(): { href, protocol, host, hostname, pathname, search, hash }` - Returns current URL information. - **Returns**: URL components object. - `detectDeviceType(): 'mobile' | 'tablet' | 'desktop'` - Detects device type based on user agent. - **Returns**: device type string. - `getBrowserType(): BrowserType` - Detects browser type. - **Returns**: browser name. ### StorageOperator Class - `static setKey(key: string, value: object, expireHours: number = 24): void` - Sets a value in localStorage with expiration. - **Params**: `key`, `value`, `expireHours` - `static getKey(key: string): object | null` - Gets a value from localStorage, respects expiration. - **Params**: `key` - **Returns**: value or `null` if expired. - `static removeKey(key: string): void` - Removes a key from localStorage. - **Params**: `key` ## Date ### Description Date and time utility functions. ### Functions - `getCurrentLocalDateTime(): string` - Gets current local date and time. - **Returns**: formatted string. - `getSpecificLocalDateTime(date: Date): string` - Gets specific local date and time. - **Params**: `date` - **Returns**: formatted string. - `getCurrentLocalDate(): string`, `getCurrentLocalTime(): string` - Get current date or time in specific formats. - `getSpecificLocalDate(date: Date): string`, `getSpecificTime(date: Date): string` - Get specific date or time in formats. - `getUtcTime(): string` - Gets current UTC time string. - **Returns**: UTC time string. - `getFormatDate(date: Date, format: string = '-'): string` - Formats date with custom separator. - **Params**: `date`, `format` - **Returns**: formatted date string. - `getFormatTime(date: Date, format: string = ':'): string` - Formats time with custom separator. - **Params**: `date`, `format` - **Returns**: formatted time string. - `getSpecificDateTime(date: Date, formatDate: string = '-', formatTime: string = ':'): string` - Combines formatted date and time. - **Params**: `date`, `formatDate`, `formatTime` - **Returns**: combined string. - `getRelativeTime(date: Date): string` - Returns relative time string (e.g., "2 days ago"). - **Params**: `date` - **Returns**: relative time string. - `dateDiff(date1: Date, date2: Date, unit: DateUnit): number` - Calculates difference between two dates in specified unit. - **Params**: `date1`, `date2`, `unit` - **Returns**: difference value. - `getFirstDayOfMonth(date: Date): Date` - Gets first day of the month for a date. - **Params**: `date` - **Returns**: first day Date. - `getLastDayOfMonth(date: Date): number` - Gets last day of the month for a date. - **Params**: `date` - **Returns**: day number. ## Dom ### Description DOM manipulation and interaction utilities. ### Functions - `getDomHeight(): number`, `getDomWidth(): number` - Gets DOM height or width. - **Returns**: dimension value. - `getViewportHeight(): number`, `getViewportWidth(): number` - Gets viewport height or width. - **Returns**: dimension value. - `getScrollTop(): number`, `getScrollLeft(): number` - Gets scroll position. - **Returns**: scroll value. - `mouseInElement(element: HTMLElement, x: number, y: number): boolean` - Checks if coordinates are inside an element. - **Params**: `element`, `x`, `y` - **Returns**: `true` if inside. - `mousePositioninElement(element: HTMLElement, event: MouseEvent): { x: number, y: number } | null` - Gets mouse position relative to element. - **Params**: `element`, `event` - **Returns**: position object or `null`. - `getMousePosition(event: MouseEvent): { x: number, y: number }` - Gets mouse position in document. - **Params**: `event` - **Returns**: position object. - `getRealElementHeight(element: HTMLElement): number`, `getElementRealWidth(element: HTMLElement): number` - Gets real dimensions of an element including scroll. - **Params**: `element` - **Returns**: dimension value. - `isElInViewport(el: HTMLElement): boolean` - Checks if element is visible in viewport. - **Params**: `el` - **Returns**: `true` if visible. - `removeElement(el: HTMLElement): void` - Removes element from DOM. - **Params**: `el` - `containSpecificEl(el: HTMLElement, child: HTMLElement): boolean` - Checks if element contains a child. - **Params**: `el`, `child` - **Returns**: `true` if contains. - `findAllChildElements(el: HTMLElement): HTMLElement[]` - Finds all child elements of a given element. - **Params**: `el` - **Returns**: array of child elements. - `hasChildElements(el: HTMLElement): boolean` - Checks if element has child elements. - **Params**: `el` - **Returns**: `true` if has children. - `documentHasFocus(): boolean` - Checks if document has focus. - **Returns**: `true` if focused. - `getElementPosition(el: HTMLElement): { top, left, width, height }` - Gets element position and dimensions. - **Params**: `el` - **Returns**: position object. - `addEventListener(target: HTMLElement, event: keyof HTMLElementEventMap, callback: () => void, options: AddEventListenerOptions = {}): void` - Adds event listener with browser compatibility. - **Params**: `target`, `event`, `callback`, `options` - `downloadFile(data: any, fileName: string): void` - Downloads data as a file. - **Params**: `data`, `fileName` - `downloadImage(imgElement: HTMLImageElement, fileName: string): void` - Downloads image from element. - **Params**: `imgElement`, `fileName` - `downloadImageByUrl(imgUrl: string, fileName: string): void` - Downloads image by URL. - **Params**: `imgUrl`, `fileName` - `uploadFile(fileInput: HTMLInputElement, callback: (data: string, fileName: string) => void): void` - Uploads file and calls callback with data. - **Params**: `fileInput`, `callback` - `copyToClipboard(text: string): Promise<boolean>` - Copies text to clipboard. - **Params**: `text` - **Returns**: Promise indicating success. - `readFromClipboard(): Promise<string>` - Reads text from clipboard. - **Returns**: Promise with clipboard text. ## Env ### Description Environment detection utilities. ### Functions - `isReactEnv(): boolean`, `isVueEnv(): boolean`, `isAngularEnv(): boolean`, `isSvelteEnv(): boolean`, `isPreactEnv(): boolean`, `isSolidEnv(): boolean` - Check if current environment is a specific framework environment. - **Returns**: `true` if framework is detected. - `isNodeEnv(): boolean` - Checks if environment is Node.js. - **Returns**: `true` in Node.js. - `isMobile(): boolean` - Checks if browser is on a mobile device. - **Returns**: `true` if mobile. - `curBrowser(): BrowserName` - Gets current browser name. - **Returns**: browser name string. - `hasGlobalVariable(variable: string | number): boolean` - Checks if a global variable exists. - **Params**: `variable` - **Returns**: `true` if exists. ## Function ### Description Function utilities for execution control and composition. ### Functions - `retryFn(fn: () => Promise<any>, maxAttempts: number = 3, delay: number = 1000): Promise<any>` - Retries an async function with exponential backoff. - **Params**: `fn`, `maxAttempts`, `delay` - **Returns**: Promise with result. - `TimedFn(fn: (...args: any[]) => any): (...args: any[]) => any` - Decorator to log function execution time. - **Params**: `fn` - **Returns**: wrapped function. - `onceFn(fn: Function): (...args: any[]) => any` - Ensures a function is executed only once. - **Params**: `fn` - **Returns**: controlled function. - `memoizeFn(fn: Function): (...args: any[]) => any` - Memoizes function results based on arguments. - **Params**: `fn` - **Returns**: memoized function. - `pipeFn(...fns: Function[]): (value: any) => any` - Creates a pipeline of functions. - **Params**: functions array - **Returns**: pipeline function. - `curryFn(fn: Function): (...args: any[]) => any` - Curries a function for partial application. - **Params**: `fn` - **Returns**: curried function. ## Is ### Description Type checking utilities. ### Functions - `isType(value: unknown, type: string): boolean` - Checks if value is of a specific type. - **Params**: `value`, `type` - **Returns**: `true` if matches. - Type-specific checks: `isNumber`, `isString`, `isArray`, `isObject`, `isFunction`, `isBoolean`, `isNull`, `isUndefined`, `isDate`, `isRegExp`, `isSymbol`, `isBigInt`, `isError`, `isDateTime`, `isMap`, `isSet`, `isWeakMap`, `isWeakSet`, `isPromise`, `isElement` - Each checks for their respective types. - **Params**: `value` - **Returns**: `true` if matches. ## Json ### Description JSON data manipulation utilities. ### Functions - `flattenJsonObject(obj: Record<string, any>, prefix: string = '', result: Record<string, any> = {}): Record<string, any>` - Flattens nested JSON object. - **Params**: `obj`, `prefix`, `result` - **Returns**: flattened object. - `unFlattenJsonObject(obj: Record<string, any>, separator: string = '.'): Record<string, any>` - Unflattens JSON object. - **Params**: `obj`, `separator` - **Returns**: nested object. - `getJsonObjectDiff(obj1: Record<string, any>, obj2: Record<string, any>): Record<string, { oldValue: any, newValue: any }>` - Gets differences between two JSON objects. - **Params**: `obj1`, `obj2` - **Returns**: differences object. - `renameJsonObject(obj: Record<string, any>, renameMap: Record<string, string>): Record<string, any>` - Renames keys in JSON object. - **Params**: `obj`, `renameMap` - **Returns**: renamed object. - `jsonToQueryString(obj: Record<string, any>, prefix: string = ''): string` - Converts JSON to query string. - **Params**: `obj`, `prefix` - **Returns**: query string. ## Log ### Description Logging utility with different levels and styling. ### Logger Class - `constructor(name: string = 'global', level: LogLevel = LogLevel.DEBUG)` - Initializes logger with name and level. - **Params**: `name`, `level` - `setLevel(level: LogLevel): void` - Sets logging level. - **Params**: `level` - `debug(...args: any[]): void`, `info(...args: any[]): void`, `warn(...args: any[]): void`, `error(...args: any[]): void` - Log messages at different levels. - **Params**: variable arguments - `time(label: string): () => void` - Starts a timer and returns a stop function. - **Params**: `label` - **Returns**: stop function that logs duration. ## Map ### Description Map utility functions. ### Functions - `safeGetMapValue<K, V>(map: Map<K, V>, key: K, defaultVal: V | undefined): V | undefined` - Safely gets a value from a Map with default. - **Params**: `map`, `key`, `defaultVal` - **Returns**: value or default. - `mapToObject(map: Map<string, any>): Record<string, any>` - Converts Map to plain object. - **Params**: `map` - **Returns**: object. - `mapToArray<K, V>(map: Map<K, V>): [K, V][]` - Converts Map to array of entries. - **Params**: `map` - **Returns**: array. - `areMapsEqual<K, V>(map1: Map<K, V>, map2: Map<K, V>): boolean` - Checks if two Maps are equal. - **Params**: `map1`, `map2` - **Returns**: `true` if equal. - `mergeMaps<K, V>(...maps: Map<K, V>[]): Map<K, V>` - Merges multiple Maps. - **Params**: variable Maps - **Returns**: merged Map. ## Math ### Description Mathematical utility functions. ### Functions - `getRandomInt(min: number, max: number): number` - Gets random integer between min and max. - **Params**: `min`, `max` - **Returns**: random integer. - `getRandomFromArray<T>(array: T[]): T` - Gets random element from array. - **Params**: `array` - **Returns**: random element. - `getInteger(num: number): number` - Gets integer part of a number. - **Params**: `num` - **Returns**: integer value. - `getFloat(num: number): number` - Gets decimal part of a number. - **Params**: `num` - **Returns**: decimal value. - `radianToAngle(radian: number): number`, `angleToRadian(angle: number): number` - Converts between radians and degrees. - **Params**: value in respective unit - **Returns**: converted value. - `getRadian(x: number, y: number, centerX: number, centerY: number): number` - Gets radian between point and circle center. - **Params**: coordinates - **Returns**: radian value. ## Obj ### Description Object manipulation utilities. ### Functions - `objDeepClone<T>(target: Record<string | number, any> | T[]): Record<string | number, any> | T[]` - Deep clones an object or array. - **Params**: `target` - **Returns**: clone. - `objShallowClone<T>(target: object | T[]): object | T[]` - Shallow clones an object or array. - **Params**: `target` - **Returns**: clone. - `isEqual(obj1: Record<string, any>, obj2: Record<string, any>): boolean` - Checks deep equality of two objects. - **Params**: `obj1`, `obj2` - **Returns**: `true` if equal. - `objInheritPrototype(child: any, parent: any): void` - Inherits prototype from parent to child. - **Params**: `child`, `parent` - `isEmptyObject(obj: object): boolean` - Checks if object is empty. - **Params**: `obj` - **Returns**: `true` if empty. - `objPick(obj: Record<string, any>, keys: (string | number)[]): Record<string, any>` - Picks specific keys from object. - **Params**: `obj`, `keys` - **Returns**: picked properties object. - `objOmit(obj: Record<string, any>, keys: (string | number)[]): Record<string, any>` - Omits specific keys from object. - **Params**: `obj`, `keys` - **Returns**: omitted properties object. - `objToQueryString(obj: object): string` - Converts object to query string. - **Params**: `obj` - **Returns**: query string. - `objectToMap(obj: Record<string, any>): Map<string, any>` - Converts object to Map. - **Params**: `obj` - **Returns**: Map. - `mergeObjects<T extends Record<string, any>>(...objects: T[]): T` - Merges multiple objects. - **Params**: variable objects - **Returns**: merged object. - `freezeObject<T extends Record<string, any>>(obj: T): Readonly<T>` - Recursively freezes an object. - **Params**: `obj` - **Returns**: frozen object. - `freezeObjectShallow<T extends Record<string, any>>(obj: T): Readonly<T>` - Freezes object shallowly. - **Params**: `obj` - **Returns**: frozen object. - `freezeObjectPickKeys<T extends Record<string, any>>(obj: T, keys: (string | number)[]): void` - Freezes specific keys of an object. - **Params**: `obj`, `keys` ## Proxy ### Description Proxy creation utilities for object control. ### Functions - `createValidatorProxy<T extends object>(target: T, validator: Validator): T` - Creates a proxy that validates property assignments. - **Params**: `target`, `validator` - **Returns**: proxy object. - `createReadonlyProxy<T extends object>(target: T): T` - Creates a read-only proxy. - **Params**: `target` - **Returns**: read-only proxy. - `createObservableProxy<T extends object>(target: T, onChange: (prop: string | symbol, value: any) => void): T` - Creates a proxy that notifies on changes. - **Params**: `target`, `onChange` - **Returns**: observable proxy. - `createCallFnAspectProxy(target: Function, callFn: (prop: string | symbol, args: any[]) => void, before: boolean = true): Function` - Creates a proxy for function call interception. - **Params**: `target`, `callFn`, `before` - **Returns**: proxy function. - `withPrivatePropsProxy<T extends object>(target: T, privateProps: (string | symbol)[]): T` - Creates a proxy with private properties. - **Params**: `target`, `privateProps` - **Returns**: proxy with access control. ## Regexp ### Description Regular expression validation utilities. ### Functions - `validEmail(email: string): boolean` - Validates email format. - **Params**: `email` - **Returns**: `true` if valid. - `validPassword(password: string): boolean` - Validates password strength (8+ chars, mixed case, digits). - **Params**: `password` - **Returns**: `true` if valid. - `validIdCard(idCard: string): boolean` - Validates ID card number format. - **Params**: `idCard` - **Returns**: `true` if valid. - `validateURL(url: string): boolean` - Validates URL format. - **Params**: `url` - **Returns**: `true` if valid. - `validateFormatDate(date: string, format: string): boolean` - Validates date string against format (e.g., 'YYYY-MM-DD'). - **Params**: `date`, `format` - **Returns**: `true` if valid. ## Request ### Description HTTP request utilities using XMLHttpRequest. ### Functions - `getRequest(url: string, params: object = {}): Promise<any>` - Makes a GET request. - **Params**: `url`, `params` - **Returns**: Promise with response. - `postRequest(url: string, data: object): Promise<any>` - Makes a POST request. - **Params**: `url`, `data` - **Returns**: Promise with response. - `delRequest(url: string, params: object = {}): Promise<any>` - Makes a DELETE request. - **Params**: `url`, `params` - **Returns**: Promise with response. - `putRequest(url: string, data: object): Promise<any>` - Makes a PUT request. - **Params**: `url`, `data` - **Returns**: Promise with response. ## Set ### Description Set operations utilities for arrays. ### Functions - `uninonSet<T>(...args: T[][]): T[]` - Computes union of multiple arrays. - **Params**: variable arrays - **Returns**: union array. - `intersectionSet<T>(...args: T[][]): T[]` - Computes intersection of multiple arrays. - **Params**: variable arrays - **Returns**: intersection array. - `differenceSet<T>(arr1: T[], arr2: T[]): T[]` - Computes difference between two arrays. - **Params**: `arr1`, `arr2` - **Returns**: difference array. - `symmetricDifferenceSet<T>(arr1: T[], arr2: T[]): T[]` - Computes symmetric difference between two arrays. - **Params**: `arr1`, `arr2` - **Returns**: symmetric difference array. - `isSubset<T>(arr1: T[], arr2: T[]): boolean` - Checks if one array is a subset of another. - **Params**: `arr1`, `arr2` - **Returns**: `true` if subset. - `isSuperset<T>(arr1: T[], arr2: T[]): boolean` - Checks if one array is a superset of another. - **Params**: `arr1`, `arr2` - **Returns**: `true` if superset. - `mapSet<T, U>(arr: Set<T>, callback: (item: T) => U): U[]` - Maps a Set to an array using a callback. - **Params**: `arr`, `callback` - **Returns**: mapped array. ## String ### Description String manipulation utilities. ### Functions - `truncateStr(str: string, maxLen: number, suffix: string = '...'): string` - Truncates string to maximum length with suffix. - **Params**: `str`, `maxLen`, `suffix` - **Returns**: truncated string. - `camelToKebab(str: string): string` - Converts camelCase to kebab-case. - **Params**: `str` - **Returns**: converted string. - `kebabToCamel(str: string): string` - Converts kebab-case to camelCase. - **Params**: `str` - **Returns**: converted string. - `escapeHTML(str: string): string` - Escapes HTML characters in a string. - **Params**: `str` - **Returns**: escaped string. - `unescapeHTML(str: string): string` - Unescapes HTML characters in a string. - **Params**: `str` - **Returns**: unescaped string. - `isValieUrl(url: string): boolean` - Validates if a string is a valid URL. - **Params**: `url` - **Returns**: `true` if valid. - `capitalizeStr(str: string): string` - Capitalizes the first character of a string. - **Params**: `str` - **Returns**: capitalized string. - `countOccurrences(str: string, char: string): number` - Counts occurrences of a character in a string. - **Params**: `str`, `char` - **Returns**: count. - `encodebase64(str: string): string` - Encodes string to base64. - **Params**: `str` - **Returns**: base64 string. - `decodebase64(str: string): string` - Decodes base64 string. - **Params**: `str` - **Returns**: decoded string. - `generateRandomString(length: number = 10, chars: string = 'A-Za-z0-9'): string` - Generates a random string. - **Params**: `length`, `chars` - **Returns**: random string. - `trimString(str: string): string` - Trims whitespace from string. - **Params**: `str` - **Returns**: trimmed string. This documentation covers all the provided modules in the Core-Fed-Util library. Each function and class is designed to simplify common programming tasks and improve code readability and maintainability.