UNPKG

@amaui/utils

Version:
413 lines (412 loc) 26.9 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.browserPolyfills = exports.arrayBufferPolyfill = exports.functionPolyfills = exports.blobPolyfills = exports.filePolyfills = exports.objectPolyfills = exports.arrayPolyfills = exports.booleanPolyfills = exports.numberPolyfills = exports.stringPolyfills = void 0; const is_1 = __importDefault(require("./is")); const isEnvironment_1 = __importDefault(require("./isEnvironment")); const alpha_1 = __importDefault(require("./alpha")); const equalDeep_1 = __importDefault(require("./equalDeep")); const order_1 = __importDefault(require("./order")); const encrypt_1 = __importDefault(require("./encrypt")); const decrypt_1 = __importDefault(require("./decrypt")); const encode_1 = __importDefault(require("./encode")); const lighten_1 = __importDefault(require("./lighten")); const darken_1 = __importDefault(require("./darken")); const emphasize_1 = __importDefault(require("./emphasize")); const getLuminance_1 = __importDefault(require("./getLuminance")); const getContrastRatio_1 = __importDefault(require("./getContrastRatio")); const decode_1 = __importDefault(require("./decode")); const serialize_1 = __importDefault(require("./serialize")); const deserialize_1 = __importDefault(require("./deserialize")); const colorToRgb_1 = __importDefault(require("./colorToRgb")); const rgbToHex_1 = __importDefault(require("./rgbToHex")); const rgbToHsl_1 = __importDefault(require("./rgbToHsl")); const rgbToRgba_1 = __importDefault(require("./rgbToRgba")); const hslToRgb_1 = __importDefault(require("./hslToRgb")); const hexToRgb_1 = __importDefault(require("./hexToRgb")); const stringify_1 = __importDefault(require("./stringify")); const binaryStringToHexadecimal_1 = __importDefault(require("./binaryStringToHexadecimal")); const hexadecimalStringToBinary_1 = __importDefault(require("./hexadecimalStringToBinary")); const parse_1 = __importDefault(require("./parse")); const merge_1 = __importDefault(require("./merge")); const hash_1 = __importDefault(require("./hash")); const hashFile_1 = __importDefault(require("./hashFile")); const getURL_1 = __importDefault(require("./getURL")); const getOrdinalNumber_1 = __importDefault(require("./getOrdinalNumber")); const getStringVariables_1 = __importDefault(require("./getStringVariables")); const setStringVariables_1 = __importDefault(require("./setStringVariables")); const flattenObject_1 = __importDefault(require("./flattenObject")); const unflattenObject_1 = __importDefault(require("./unflattenObject")); const hasObjectProperty_1 = __importDefault(require("./hasObjectProperty")); const hasObjectPropertyValue_1 = __importDefault(require("./hasObjectPropertyValue")); const getObjectValue_1 = __importDefault(require("./getObjectValue")); const getObjectPropertyValue_1 = __importDefault(require("./getObjectPropertyValue")); const setObjectValue_1 = __importDefault(require("./setObjectValue")); const removeObjectValue_1 = __importDefault(require("./removeObjectValue")); const unique_1 = __importDefault(require("./unique")); const simpleNormalize_1 = __importDefault(require("./simpleNormalize")); const getLeadingZerosNumber_1 = __importDefault(require("./getLeadingZerosNumber")); const getFileName_1 = __importDefault(require("./getFileName")); const fileToValue_1 = __importDefault(require("./fileToValue")); const copy_1 = __importDefault(require("./copy")); const clamp_1 = __importDefault(require("./clamp")); const copyToClipboard_1 = __importDefault(require("./copyToClipboard")); const capitalize_1 = __importDefault(require("./capitalize")); const castParam_1 = __importDefault(require("./castParam")); const cleanValue_1 = __importDefault(require("./cleanValue")); const to_1 = __importDefault(require("./to")); const pick_1 = __importDefault(require("./pick")); const arrayToParts_1 = __importDefault(require("./arrayToParts")); const slugify_1 = __importDefault(require("./slugify")); const shuffle_1 = __importDefault(require("./shuffle")); const updateQueryParams_1 = __importDefault(require("./updateQueryParams")); const checkObjectFilters_1 = __importDefault(require("./checkObjectFilters")); const numberWithCommas_1 = __importDefault(require("./numberWithCommas")); const arrayMoveItem_1 = __importDefault(require("./arrayMoveItem")); const factorial_1 = __importDefault(require("./factorial")); const permutation_1 = __importDefault(require("./permutation")); const permutationWithRepetition_1 = __importDefault(require("./permutationWithRepetition")); const variation_1 = __importDefault(require("./variation")); const variationWithRepetition_1 = __importDefault(require("./variationWithRepetition")); const combination_1 = __importDefault(require("./combination")); const combinationWithRepetition_1 = __importDefault(require("./combinationWithRepetition")); const promisify_1 = __importDefault(require("./promisify")); const stringPolyfills = (additions = true) => { if (additions) { // eslint-disable-next-line String.prototype.alpha = function (opacity) { return (0, alpha_1.default)(this, opacity); }; // eslint-disable-next-line String.prototype.encode = function () { return (0, encode_1.default)(this); }; // eslint-disable-next-line String.prototype.encrypt = function (privateValue) { return (0, encrypt_1.default)(this, privateValue); }; // eslint-disable-next-line String.prototype.simpleNormalize = function (options = undefined) { return (0, simpleNormalize_1.default)(this, options); }; // eslint-disable-next-line String.prototype.getVariables = function (options = undefined) { return (0, getStringVariables_1.default)(this, options); }; // eslint-disable-next-line String.prototype.setVariables = function (variablesToValue = [], options = undefined) { return (0, setStringVariables_1.default)(this, variablesToValue, options); }; // eslint-disable-next-line String.prototype.getOrdinalNumber = function (options = undefined) { return (0, getOrdinalNumber_1.default)(this, options); }; // eslint-disable-next-line String.prototype.getURL = function (options = undefined) { return (0, getURL_1.default)(this, options); }; // eslint-disable-next-line String.prototype.stringify = function (spaces) { return (0, stringify_1.default)(this, spaces); }; // eslint-disable-next-line String.prototype.parse = function (type = 'JSON', options = undefined) { return (0, parse_1.default)(this, type, options); }; // eslint-disable-next-line String.prototype.colorToRgb = function (opacity = undefined, array = false) { return (0, colorToRgb_1.default)(this, opacity, array); }; // eslint-disable-next-line String.prototype.rgbToHex = function (opacity = undefined, array = false) { return (0, rgbToHex_1.default)(this, opacity, array); }; // eslint-disable-next-line String.prototype.rgbToHsl = function (opacity = undefined, array = false) { return (0, rgbToHsl_1.default)(this, opacity, array); }; // eslint-disable-next-line String.prototype.rgbToRgba = function (opacity = undefined, array = false) { return (0, rgbToRgba_1.default)(this, opacity, array); }; // eslint-disable-next-line String.prototype.hslToRgb = function (opacity = undefined, array = false) { return (0, hslToRgb_1.default)(this, opacity, array); }; // eslint-disable-next-line String.prototype.hexToRgb = function (opacity = undefined, array = false) { return (0, hexToRgb_1.default)(this, opacity, array); }; // eslint-disable-next-line String.prototype.serialize = function () { return (0, serialize_1.default)(this); }; // eslint-disable-next-line String.prototype.decode = function () { return (0, decode_1.default)(this); }; // eslint-disable-next-line String.prototype.deserialize = function () { return (0, deserialize_1.default)(this); }; // eslint-disable-next-line String.prototype.decrypt = function (privateValue, options = undefined) { return (0, decrypt_1.default)(this, privateValue); }; // eslint-disable-next-line String.prototype.equalDeep = function (valueB) { return (0, equalDeep_1.default)(this, valueB); }; // eslint-disable-next-line String.prototype.lighten = function (coefficient) { return (0, lighten_1.default)(this, coefficient); }; // eslint-disable-next-line String.prototype.darken = function (coefficient) { return (0, darken_1.default)(this, coefficient); }; // eslint-disable-next-line String.prototype.emphasize = function (coefficient = 0.14) { return (0, emphasize_1.default)(this, coefficient); }; // eslint-disable-next-line String.prototype.binaryStringToHexadecimal = function () { return (0, binaryStringToHexadecimal_1.default)(this); }; // eslint-disable-next-line String.prototype.hexadecimalStringToBinary = function () { return (0, hexadecimalStringToBinary_1.default)(this); }; // eslint-disable-next-line String.prototype.getLeadingZerosNumber = function (options = undefined) { return (0, getLeadingZerosNumber_1.default)(this, options); }; // eslint-disable-next-line String.prototype.getLuminance = function () { return (0, getLuminance_1.default)(this); }; // eslint-disable-next-line String.prototype.getContrastRatio = function (valueB) { return (0, getContrastRatio_1.default)(this, valueB); }; // eslint-disable-next-line String.prototype.hash = function (options = undefined) { return (0, hash_1.default)(this, options); }; // eslint-disable-next-line String.prototype.is = function (type, options = undefined) { return (0, is_1.default)(type, this, options); }; // eslint-disable-next-line String.prototype.copyToClipboard = function () { return (0, copyToClipboard_1.default)(this); }; // eslint-disable-next-line String.prototype.numberWithCommas = function (delimiter = ',') { return (0, numberWithCommas_1.default)(this, delimiter); }; // eslint-disable-next-line String.prototype.capitalize = function () { return (0, capitalize_1.default)(this); }; // eslint-disable-next-line String.prototype.castParam = function (options) { return (0, castParam_1.default)(this, options); }; // eslint-disable-next-line String.prototype.clean = function (options) { return (0, cleanValue_1.default)(this, options); }; // eslint-disable-next-line String.prototype.pick = function (min = 1, max) { return (0, pick_1.default)(this, min, max); }; // eslint-disable-next-line String.prototype.slugify = function (options = undefined) { return (0, slugify_1.default)(this, options); }; // eslint-disable-next-line String.prototype.shuffle = function (toShuffle = 14) { return (0, shuffle_1.default)(this, toShuffle); }; // eslint-disable-next-line String.prototype.to = function (type = 'arraybuffer', options = undefined) { return (0, to_1.default)(this, type, options); }; } }; exports.stringPolyfills = stringPolyfills; const numberPolyfills = (additions = true) => { if (additions) { // eslint-disable-next-line Number.prototype.encode = function () { return (0, encode_1.default)(this); }; // eslint-disable-next-line Number.prototype.factorial = function () { return (0, factorial_1.default)(this); }; // eslint-disable-next-line Number.prototype.hash = function (options = undefined) { return (0, hash_1.default)(this, options); }; // eslint-disable-next-line Number.prototype.encrypt = function (privateValue) { return (0, encrypt_1.default)(this, privateValue); }; // eslint-disable-next-line Number.prototype.stringify = function (spaces) { return (0, stringify_1.default)(this, spaces); }; // eslint-disable-next-line Number.prototype.simpleNormalize = function (options = undefined) { return (0, simpleNormalize_1.default)(this, options); }; // eslint-disable-next-line Number.prototype.parse = function (type = 'JSON', options = undefined) { return (0, parse_1.default)(this, type, options); }; // eslint-disable-next-line Number.prototype.serialize = function () { return (0, serialize_1.default)(this); }; // eslint-disable-next-line Number.prototype.equalDeep = function (valueB) { return (0, equalDeep_1.default)(this, valueB); }; // eslint-disable-next-line Number.prototype.is = function (type, options = undefined) { return (0, is_1.default)(type, this, options); }; // eslint-disable-next-line Number.prototype.getLeadingZeros = function (options = undefined) { return (0, getLeadingZerosNumber_1.default)(this, options); }; // eslint-disable-next-line Number.prototype.getOrdinal = function (options = undefined) { return (0, getOrdinalNumber_1.default)(this, options); }; // eslint-disable-next-line Number.prototype.copyToClipboard = function () { return (0, copyToClipboard_1.default)(this); }; // eslint-disable-next-line Number.prototype.clamp = function (min, max) { return (0, clamp_1.default)(this, min, max); }; // eslint-disable-next-line Number.prototype.castParam = function (options) { return (0, castParam_1.default)(this, options); }; // eslint-disable-next-line Number.prototype.withCommas = function (delimiter = ',') { return (0, numberWithCommas_1.default)(this, delimiter); }; // eslint-disable-next-line Number.prototype.to = function (type = 'arraybuffer', options = undefined) { return (0, to_1.default)(this, type, options); }; } }; exports.numberPolyfills = numberPolyfills; const booleanPolyfills = (additions = true) => { if (additions) { // eslint-disable-next-line Boolean.prototype.encode = function () { return (0, encode_1.default)(this); }; // eslint-disable-next-line Boolean.prototype.hash = function (options = undefined) { return (0, hash_1.default)(this, options); }; // eslint-disable-next-line Boolean.prototype.encrypt = function (privateValue) { return (0, encrypt_1.default)(this, privateValue); }; // eslint-disable-next-line Boolean.prototype.stringify = function (spaces) { return (0, stringify_1.default)(this, spaces); }; // eslint-disable-next-line Boolean.prototype.simpleNormalize = function (options = undefined) { return (0, simpleNormalize_1.default)(this, options); }; // eslint-disable-next-line Boolean.prototype.parse = function (type = 'JSON', options = undefined) { return (0, parse_1.default)(this, type, options); }; // eslint-disable-next-line Boolean.prototype.serialize = function () { return (0, serialize_1.default)(this); }; // eslint-disable-next-line Boolean.prototype.equalDeep = function (valueB) { return (0, equalDeep_1.default)(this, valueB); }; // eslint-disable-next-line Boolean.prototype.is = function (type, options = undefined) { return (0, is_1.default)(type, this, options); }; // eslint-disable-next-line Boolean.prototype.copyToClipboard = function () { return (0, copyToClipboard_1.default)(this); }; // eslint-disable-next-line Boolean.prototype.castParam = function (options) { return (0, castParam_1.default)(this, options); }; // eslint-disable-next-line Boolean.prototype.to = function (type = 'arraybuffer', options = undefined) { return (0, to_1.default)(this, type, options); }; } }; exports.booleanPolyfills = booleanPolyfills; const arrayPolyfills = (additions = true) => { if (additions) { // eslint-disable-next-line Array.prototype.order = function () { return (0, order_1.default)(this); }; // eslint-disable-next-line Array.prototype.permutation = function (options) { return (0, permutation_1.default)(this, options); }; // eslint-disable-next-line Array.prototype.permutationWithRepetition = function (options) { return (0, permutationWithRepetition_1.default)(this, options); }; // eslint-disable-next-line Array.prototype.variation = function (items, options) { return (0, variation_1.default)(this, items, options); }; // eslint-disable-next-line Array.prototype.variationWithRepetition = function (items, options) { return (0, variationWithRepetition_1.default)(this, items, options); }; // eslint-disable-next-line Array.prototype.combination = function (items, options) { return (0, combination_1.default)(this, items, options); }; // eslint-disable-next-line Array.prototype.combinationWithRepetition = function (items, options) { return (0, combinationWithRepetition_1.default)(this, items, options); }; // eslint-disable-next-line Array.prototype.unique = function (...args) { return (0, unique_1.default)(this, ...args); }; // eslint-disable-next-line Array.prototype.encode = function () { return (0, encode_1.default)(this); }; // eslint-disable-next-line Array.prototype.stringify = function (spaces) { return (0, stringify_1.default)(this, spaces); }; // eslint-disable-next-line Array.prototype.getValue = function (...args) { return (0, getObjectValue_1.default)(this, ...args); }; // eslint-disable-next-line Array.prototype.setValue = function (keys, value = undefined, options) { return (0, setObjectValue_1.default)(this, keys, value, options); }; // eslint-disable-next-line Array.prototype.removeValue = function (keys) { return (0, removeObjectValue_1.default)(this, keys); }; // eslint-disable-next-line Array.prototype.getPropertyValue = function (keys) { return (0, getObjectPropertyValue_1.default)(this, keys); }; // eslint-disable-next-line Array.prototype.hasProperty = function (...args) { return (0, hasObjectProperty_1.default)(this, ...args); }; // eslint-disable-next-line Array.prototype.hasPropertyValue = function (keys) { return (0, hasObjectPropertyValue_1.default)(this, keys); }; // eslint-disable-next-line Array.prototype.hash = function (options = undefined) { return (0, hash_1.default)(this, options); }; // eslint-disable-next-line Array.prototype.encrypt = function (privateValue) { return (0, encrypt_1.default)(this, privateValue); }; // eslint-disable-next-line Array.prototype.merge = function (source, options = undefined) { return (0, merge_1.default)(this, source, options); }; // eslint-disable-next-line Array.prototype.parse = function (type = 'JSON', options = undefined) { return (0, parse_1.default)(this, type, options); }; // eslint-disable-next-line Array.prototype.serialize = function () { return (0, serialize_1.default)(this); }; // eslint-disable-next-line Array.prototype.equalDeep = function (valueB) { return (0, equalDeep_1.default)(this, valueB); }; // eslint-disable-next-line Array.prototype.is = function (type, options = undefined) { return (0, is_1.default)(type, this, options); }; // eslint-disable-next-line Array.prototype.copyToClipboard = function () { return (0, copyToClipboard_1.default)(this); }; // eslint-disable-next-line Array.prototype.copy = function () { return (0, copy_1.default)(this); }; // eslint-disable-next-line Array.prototype.moveItem = function (oldIndex, newIndex) { return (0, arrayMoveItem_1.default)(this, oldIndex, newIndex); }; // eslint-disable-next-line Array.prototype.toParts = function (parts) { return (0, arrayToParts_1.default)(this, parts); }; } }; exports.arrayPolyfills = arrayPolyfills; const objectPolyfills = (additions = true) => { if (additions) { // eslint-disable-next-line Object.prototype.order = function () { return (0, order_1.default)(this); }; // eslint-disable-next-line Object.prototype.encode = function () { return (0, encode_1.default)(this); }; // eslint-disable-next-line Object.prototype.hash = function (options = undefined) { return (0, hash_1.default)(this, options); }; // eslint-disable-next-line Object.prototype.encrypt = function (privateValue) { return (0, encrypt_1.default)(this, privateValue); }; // eslint-disable-next-line Object.prototype.stringify = function (spaces) { return (0, stringify_1.default)(this, spaces); }; // eslint-disable-next-line Object.prototype.getValue = function (...args) { return (0, getObjectValue_1.default)(this, ...args); }; // eslint-disable-next-line Object.prototype.setValue = function (keys, value = undefined, options) { return (0, setObjectValue_1.default)(this, keys, value, options); }; // eslint-disable-next-line Object.prototype.removeValue = function (keys) { return (0, removeObjectValue_1.default)(this, keys); }; // eslint-disable-next-line Object.prototype.hasProperty = function (...args) { return (0, hasObjectProperty_1.default)(this, ...args); }; // eslint-disable-next-line Object.prototype.hasPropertyValue = function (keys) { return (0, hasObjectPropertyValue_1.default)(this, keys); }; // eslint-disable-next-line Object.prototype.getPropertyValue = function (keys) { return (0, getObjectPropertyValue_1.default)(this, keys); }; // eslint-disable-next-line Object.prototype.flatten = function () { return (0, flattenObject_1.default)(this); }; // eslint-disable-next-line Object.prototype.unflatten = function () { return (0, unflattenObject_1.default)(this); }; // eslint-disable-next-line Object.prototype.merge = function (source, options = undefined) { return (0, merge_1.default)(this, source, options); }; // eslint-disable-next-line Object.prototype.parse = function (type = 'JSON', options = undefined) { return (0, parse_1.default)(this, type, options); }; // eslint-disable-next-line Object.prototype.serialize = function () { return (0, serialize_1.default)(this); }; // eslint-disable-next-line Object.prototype.equalDeep = function (valueB) { return (0, equalDeep_1.default)(this, valueB); }; // eslint-disable-next-line Object.prototype.is = function (type, options = undefined) { return (0, is_1.default)(type, this, options); }; // eslint-disable-next-line Object.prototype.copyToClipboard = function () { return (0, copyToClipboard_1.default)(this); }; // eslint-disable-next-line Object.prototype.copy = function () { return (0, copy_1.default)(this); }; // eslint-disable-next-line Object.prototype.updateQueryParams = function (override = true) { return (0, updateQueryParams_1.default)(this, override); }; // eslint-disable-next-line Object.prototype.checkFilters = function (filters, operator) { return (0, checkObjectFilters_1.default)(this, filters, operator); }; } }; exports.objectPolyfills = objectPolyfills; const filePolyfills = (additions = true) => { if ((0, isEnvironment_1.default)('browser') && additions) { // eslint-disable-next-line File.prototype.hash = function (options = undefined) { return (0, hashFile_1.default)(this, options); }; // eslint-disable-next-line File.prototype.equalDeep = function (valueB) { return (0, equalDeep_1.default)(this, valueB); }; // eslint-disable-next-line File.prototype.getName = function (options) { return (0, getFileName_1.default)(this, options); }; // eslint-disable-next-line File.prototype.toValue = function (type) { return (0, fileToValue_1.default)(this, type); }; } }; exports.filePolyfills = filePolyfills; const blobPolyfills = (additions = true) => { if ((0, isEnvironment_1.default)('browser') && additions) { // eslint-disable-next-line Blob.prototype.equalDeep = function (valueB) { return (0, equalDeep_1.default)(this, valueB); }; } }; exports.blobPolyfills = blobPolyfills; const functionPolyfills = (additions = true) => { if (additions) { // eslint-disable-next-line Function.prototype.promisify = function () { return (0, promisify_1.default)(this); }; // eslint-disable-next-line Function.prototype.equalDeep = function (valueB) { return (0, equalDeep_1.default)(this, valueB); }; // eslint-disable-next-line Function.prototype.is = function (type, options = undefined) { return (0, is_1.default)(type, this, options); }; } }; exports.functionPolyfills = functionPolyfills; function arrayBufferFunction() { // this: File or Blob return new Promise(resolve => { const fileReader = new FileReader(); fileReader.onload = () => resolve(fileReader.result); fileReader.readAsArrayBuffer(this); }); } const arrayBufferPolyfill = () => { var _a; const AMAUI_TEST = ((_a = window.AMAUI) === null || _a === void 0 ? void 0 : _a.env) === 'test'; if ('File' in window) File.prototype.arrayBuffer = AMAUI_TEST ? arrayBufferFunction || File.prototype.arrayBuffer : File.prototype.arrayBuffer || arrayBufferFunction; if ('Blob' in window) Blob.prototype.arrayBuffer = AMAUI_TEST ? arrayBufferFunction || Blob.prototype.arrayBuffer : Blob.prototype.arrayBuffer || arrayBufferFunction; }; exports.arrayBufferPolyfill = arrayBufferPolyfill; const browserPolyfills = (additions = true) => { if ((0, isEnvironment_1.default)('browser')) { // ArrayBuffer (0, exports.arrayBufferPolyfill)(); } }; exports.browserPolyfills = browserPolyfills; const polyfills = (additions = true) => { // String (0, exports.stringPolyfills)(additions); // // Number (0, exports.numberPolyfills)(additions); // Boolean (0, exports.booleanPolyfills)(additions); // Array (0, exports.arrayPolyfills)(additions); // Object (0, exports.objectPolyfills)(additions); // File (0, exports.filePolyfills)(additions); // Blob (0, exports.blobPolyfills)(additions); // Function (0, exports.functionPolyfills)(additions); // Browser (0, exports.browserPolyfills)(additions); }; exports.default = polyfills;