UNPKG

@techmely/utils

Version:

Collection of helpful JavaScript / TypeScript utils

530 lines (526 loc) 9.2 kB
/*! * @techmely/utils * Copyright(c) 2021-2024 Techmely <techmely.creation@gmail.com> * MIT Licensed */ import { add, clockwise, dist, dist2, div, dpr, getStrokeRadius, isEqual, isLeft, len, len2, lrp, med, mul, neg, per, rotAround, sub, toPointsArray, uni, vec } from "./chunk-7BDDGTPK.mjs"; import { singleton } from "./chunk-DF3BMFR2.mjs"; import { sleep } from "./chunk-5E7YTXU6.mjs"; import { streamAsyncIterable } from "./chunk-7L2U7XD2.mjs"; import { timeSpan } from "./chunk-LSDVQDOR.mjs"; import { timeSpanBr } from "./chunk-2OZQUKWA.mjs"; import { CheckBoundary, DigitLength, Divide, EnableBoundaryChecking, Float2Fixed, Minus, Plus, Round, Strip, Times, formatLot10Volume, formatNumber } from "./chunk-YDZST6L4.mjs"; import { deepMerge, isKeyOf, objectCamel2Snake, objectEntries, objectKeys, objectMap, pick, removeEmptyObj, removeUndefObj } from "./chunk-Q3FLSXBL.mjs"; import { camel2snake, camelize, capitalizeFirst, cutString, getRandomString, hyphenate, slugify, snake2camel } from "./chunk-R2WJ4MZS.mjs"; import { PCancelable } from "./chunk-B7TSSNOV.mjs"; import { PDefer } from "./chunk-SNLJUQXC.mjs"; import { clearDelay, createDelay, delay, rangeDelay } from "./chunk-D7LWYMMH.mjs"; import { PQueue } from "./chunk-L6C6CSGY.mjs"; import { PTimeOut } from "./chunk-UH6ILUD3.mjs"; import { getRandomInt, getRandomIntInclusive } from "./chunk-5CAVT2XP.mjs"; import { HTTP_ACCEPTED, HTTP_ALREADY_REPORTED, HTTP_BAD_GATEWAY, HTTP_BAD_REQUEST, HTTP_CF_A_TIMEOUT_OCCURRED, HTTP_CF_CONNECTION_TIMED_OUT, HTTP_CF_INVALID_SSL_CERTIFICATE, HTTP_CF_ORIGIN_IS_UNREACHABLE, HTTP_CF_RAILGUN_ERROR, HTTP_CF_SSL_HANDSHAKE_FAILED, HTTP_CF_UNKNOWN, HTTP_CF_WEB_SERVER_IS_DOWN, HTTP_CONFLICT, HTTP_CONTINUE, HTTP_CREATED, HTTP_EARLY_HINTS, HTTP_EXPECTATION_FAILED, HTTP_FAILED_DEPENDENCY, HTTP_FORBIDDEN, HTTP_FOUND, HTTP_GATEWAY_TIMEOUT, HTTP_GONE, HTTP_IM_USED, HTTP_INSUFFICIENT_STORAGE, HTTP_INTERNAL_SERVER_ERROR, HTTP_I_AM_A_TEAPOT, HTTP_LENGTH_REQUIRED, HTTP_LOCKED, HTTP_LOOP_DETECTED, HTTP_METHOD_NOT_ALLOWED, HTTP_MISDIRECTED_REQUEST, HTTP_MOVED_PERMANENTLY, HTTP_MULTIPLE_CHOICES, HTTP_MULTI_STATUS, HTTP_NETWORK_AUTHENTICATION_REQUIRED, HTTP_NON_AUTHORITATIVE_INFORMATION, HTTP_NOT_ACCEPTABLE, HTTP_NOT_EXTENDED, HTTP_NOT_FOUND, HTTP_NOT_IMPLEMENTED, HTTP_NOT_MODIFIED, HTTP_NO_CONTENT, HTTP_OK, HTTP_PARTIAL_CONTENT, HTTP_PAYMENT_REQUIRED, HTTP_PERMANENTLY_REDIRECT, HTTP_PRECONDITION_FAILED, HTTP_PRECONDITION_REQUIRED, HTTP_PROCESSING, HTTP_PROXY_AUTHENTICATION_REQUIRED, HTTP_REQUESTED_RANGE_NOT_SATISFIABLE, HTTP_REQUEST_ENTITY_TOO_LARGE, HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE, HTTP_REQUEST_TIMEOUT, HTTP_REQUEST_URI_TOO_LONG, HTTP_RESERVED, HTTP_RESERVED_FOR_WEBDAV_ADVANCED_COLLECTIONS_EXPIRED_PROPOSAL, HTTP_RESET_CONTENT, HTTP_SEE_OTHER, HTTP_SERVICE_UNAVAILABLE, HTTP_SWITCHING_PROTOCOLS, HTTP_TEMPORARY_REDIRECT, HTTP_TOO_MANY_REQUESTS, HTTP_UNAUTHORIZED, HTTP_UNAVAILABLE_FOR_LEGAL_REASONS, HTTP_UNPROCESSABLE_ENTITY, HTTP_UNSUPPORTED_MEDIA_TYPE, HTTP_UPGRADE_REQUIRED, HTTP_USE_PROXY, HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL, HTTP_VERSION_NOT_SUPPORTED } from "./chunk-6YXDMBVT.mjs"; import { invariant } from "./chunk-JBXZG2HJ.mjs"; import { CookieService, listenCookieChange, parseCookie, serializeCookie } from "./chunk-VO6RPGEG.mjs"; import { SortDirection, getQuarter, isSameMonth, isToday, sortByDate, sortData, suffixAmPm } from "./chunk-4A43FV2A.mjs"; import { downloadByData } from "./chunk-ZOGJYFGT.mjs"; import { emitter } from "./chunk-AFZ5ZVXP.mjs"; import { chunk, findLastIndex, groupBy, normalize, remove, sample, shuffle, take, unique, uniqueObj } from "./chunk-4UPMMVYW.mjs"; import { cancelIdleCallback, requestIdleCallback } from "./chunk-DZ322YIG.mjs"; import { isAndroid, isArray, isBase64, isBoolean, isBrowser, isCI, isCrawler, isDate, isDef, isEmpties, isEmpty, isFalsy, isFunction, isLinux, isMacOS, isMap, isMobile, isNodeDev, isNodeProd, isNodeTest, isNotEmpties, isNotEmpty, isNotNull, isNumber, isObject, isPngImage, isPrimitive, isPromise, isSet, isStream, isString, isSymbol, isUndef, isWindows } from "./chunk-BD32CMSL.mjs"; import { _process, platform, process } from "./chunk-5IEGYJY4.mjs"; import { convertHrTime, intToBuffer, intToHex, toBoolean } from "./chunk-5EZFB54B.mjs"; import { envs, nodeENV } from "./chunk-3RC6KXF4.mjs"; import { formatBytes, formatDecimals } from "./chunk-IBQXP7I5.mjs"; import { cacheStringFunction, createCachedImport } from "./chunk-JVHWN7V7.mjs"; import { clamp, lerp, sum } from "./chunk-DNS23JKA.mjs"; import { alphaHex, isHex, percentToHex } from "./chunk-OFLUZR5Z.mjs"; import { emailRegex, escapedSpaceCharactersRegex, hexColor, isValidEmail, isValidUrl, isValidVnPhone, multilineCommentsRegex, singlelineCommentsRegex, urlRegex, vietnamPhoneRegex } from "./chunk-B45TLRXM.mjs"; import "./chunk-NYLAFCGV.mjs"; // src/index.ts var noop = () => { }; export { CheckBoundary, CookieService, DigitLength, Divide, EnableBoundaryChecking, Float2Fixed, HTTP_ACCEPTED, HTTP_ALREADY_REPORTED, HTTP_BAD_GATEWAY, HTTP_BAD_REQUEST, HTTP_CF_A_TIMEOUT_OCCURRED, HTTP_CF_CONNECTION_TIMED_OUT, HTTP_CF_INVALID_SSL_CERTIFICATE, HTTP_CF_ORIGIN_IS_UNREACHABLE, HTTP_CF_RAILGUN_ERROR, HTTP_CF_SSL_HANDSHAKE_FAILED, HTTP_CF_UNKNOWN, HTTP_CF_WEB_SERVER_IS_DOWN, HTTP_CONFLICT, HTTP_CONTINUE, HTTP_CREATED, HTTP_EARLY_HINTS, HTTP_EXPECTATION_FAILED, HTTP_FAILED_DEPENDENCY, HTTP_FORBIDDEN, HTTP_FOUND, HTTP_GATEWAY_TIMEOUT, HTTP_GONE, HTTP_IM_USED, HTTP_INSUFFICIENT_STORAGE, HTTP_INTERNAL_SERVER_ERROR, HTTP_I_AM_A_TEAPOT, HTTP_LENGTH_REQUIRED, HTTP_LOCKED, HTTP_LOOP_DETECTED, HTTP_METHOD_NOT_ALLOWED, HTTP_MISDIRECTED_REQUEST, HTTP_MOVED_PERMANENTLY, HTTP_MULTIPLE_CHOICES, HTTP_MULTI_STATUS, HTTP_NETWORK_AUTHENTICATION_REQUIRED, HTTP_NON_AUTHORITATIVE_INFORMATION, HTTP_NOT_ACCEPTABLE, HTTP_NOT_EXTENDED, HTTP_NOT_FOUND, HTTP_NOT_IMPLEMENTED, HTTP_NOT_MODIFIED, HTTP_NO_CONTENT, HTTP_OK, HTTP_PARTIAL_CONTENT, HTTP_PAYMENT_REQUIRED, HTTP_PERMANENTLY_REDIRECT, HTTP_PRECONDITION_FAILED, HTTP_PRECONDITION_REQUIRED, HTTP_PROCESSING, HTTP_PROXY_AUTHENTICATION_REQUIRED, HTTP_REQUESTED_RANGE_NOT_SATISFIABLE, HTTP_REQUEST_ENTITY_TOO_LARGE, HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE, HTTP_REQUEST_TIMEOUT, HTTP_REQUEST_URI_TOO_LONG, HTTP_RESERVED, HTTP_RESERVED_FOR_WEBDAV_ADVANCED_COLLECTIONS_EXPIRED_PROPOSAL, HTTP_RESET_CONTENT, HTTP_SEE_OTHER, HTTP_SERVICE_UNAVAILABLE, HTTP_SWITCHING_PROTOCOLS, HTTP_TEMPORARY_REDIRECT, HTTP_TOO_MANY_REQUESTS, HTTP_UNAUTHORIZED, HTTP_UNAVAILABLE_FOR_LEGAL_REASONS, HTTP_UNPROCESSABLE_ENTITY, HTTP_UNSUPPORTED_MEDIA_TYPE, HTTP_UPGRADE_REQUIRED, HTTP_USE_PROXY, HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL, HTTP_VERSION_NOT_SUPPORTED, Minus, PCancelable, PDefer, PQueue, PTimeOut, Plus, Round, SortDirection, Strip, Times, _process, add, alphaHex, cacheStringFunction, camel2snake, camelize, cancelIdleCallback, capitalizeFirst, chunk, clamp, clearDelay, clockwise, convertHrTime, createCachedImport, createDelay, cutString, deepMerge, delay, dist, dist2, div, downloadByData, dpr, emailRegex, emitter, envs, escapedSpaceCharactersRegex, findLastIndex, formatBytes, formatDecimals, formatLot10Volume, formatNumber, getQuarter, getRandomInt, getRandomIntInclusive, getRandomString, getStrokeRadius, groupBy, hexColor, hyphenate, intToBuffer, intToHex, invariant, isAndroid, isArray, isBase64, isBoolean, isBrowser, isCI, isCrawler, isDate, isDef, isEmpties, isEmpty, isEqual, isFalsy, isFunction, isHex, isKeyOf, isLeft, isLinux, isMacOS, isMap, isMobile, isNodeDev, isNodeProd, isNodeTest, isNotEmpties, isNotEmpty, isNotNull, isNumber, isObject, isPngImage, isPrimitive, isPromise, isSameMonth, isSet, isStream, isString, isSymbol, isToday, isUndef, isValidEmail, isValidUrl, isValidVnPhone, isWindows, len, len2, lerp, listenCookieChange, lrp, med, mul, multilineCommentsRegex, neg, nodeENV, noop, normalize, objectCamel2Snake, objectEntries, objectKeys, objectMap, parseCookie, per, percentToHex, pick, platform, process, rangeDelay, remove, removeEmptyObj, removeUndefObj, requestIdleCallback, rotAround, sample, serializeCookie, shuffle, singlelineCommentsRegex, singleton, sleep, slugify, snake2camel, sortByDate, sortData, streamAsyncIterable, sub, suffixAmPm, sum, take, timeSpan, timeSpanBr, toBoolean, toPointsArray, uni, unique, uniqueObj, urlRegex, vec, vietnamPhoneRegex };