@koine/utils 2.0.0-beta.45 → 2.0.0-beta.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs.js CHANGED
@@ -14,7 +14,7 @@ let isPlainObject=e=>"Object"===getType(e)&&e.constructor===Object&&Object.getPr
14
14
 
15
15
  let isObject=e=>isPlainObject(e);
16
16
 
17
- let t$4=(r,e)=>{if(!e||r.length!==e.length)return !1;for(let t=0;t<r.length;t++)if(!areEqual(r[t],e[t]))return !1;return !0},n$1=(r,e)=>{if(!e)return !1;for(let t of Object.keys(r))if(!areEqual(r[t],e[t]))return !1;return !0};let areEqual=(u,f)=>{if(!u&&!f)return !0;if(!f&&u!==f)return !1;let l=isObject(u)&&isObject(f);if(l&&!n$1(u,f))return !1;let i=isArray(u)&&isArray(f);return !!(!i||t$4(u,f))&&(!!l||!!i||u===f)};
17
+ let t$5=(r,e)=>{if(!e||r.length!==e.length)return !1;for(let t=0;t<r.length;t++)if(!areEqual(r[t],e[t]))return !1;return !0},n$1=(r,e)=>{if(!e)return !1;for(let t of Object.keys(r))if(!areEqual(r[t],e[t]))return !1;return !0};let areEqual=(u,f)=>{if(!u&&!f)return !0;if(!f&&u!==f)return !1;let l=isObject(u)&&isObject(f);if(l&&!n$1(u,f))return !1;let i=isArray(u)&&isArray(f);return !!(!i||t$5(u,f))&&(!!l||!!i||u===f)};
18
18
 
19
19
  let arrayFilterFalsy=r=>r?r.filter(r=>!!r):[];
20
20
 
@@ -34,7 +34,7 @@ let buildUrlQueryString=t=>{let n="";if(!t)return n;for(let i in t){let l=t[i];i
34
34
 
35
35
  let capitalize=e=>(e||"").charAt(0).toUpperCase()+(e||"").slice(1);
36
36
 
37
- let e$3=/([\p{Ll}\d])(\p{Lu})/gu,t$3=/(\p{Lu})([\p{Lu}][\p{Ll}])/gu,r=/(\d)\p{Ll}|(\p{L})\d/u,l$1=/[^\p{L}\d]+/giu,p="$1\0$2";let split$1=r=>{let a=r.trim();a=(a=a.replace(e$3,p).replace(t$3,p)).replace(l$1,"\0");let s=0,i=a.length;for(;"\0"===a.charAt(s);)s++;if(s===i)return [];for(;"\0"===a.charAt(i-1);)i--;return a.slice(s,i).split(/\0/g)};let splitSeparateNumbers=e=>{let t=split$1(e);for(let e=0;e<t.length;e++){let l=t[e],p=r.exec(l);if(p){let r=p.index+(p[1]??p[2]).length;t.splice(e,1,l.slice(0,r),l.slice(r));}}return t};let lowerFactory=e=>!1===e?e=>e.toLowerCase():t=>t.toLocaleLowerCase(e);let upperFactory=e=>!1===e?e=>e.toUpperCase():t=>t.toLocaleUpperCase(e);let capitalCaseTransformFactory=(e,t)=>r=>`${t(r[0])}${e(r.slice(1))}`;let pascalCaseTransformFactory=(e,t)=>(r,l)=>{let p=r[0];return (l>0&&p>="0"&&p<="9"?"_"+p:t(p))+e(r.slice(1))};let splitPrefixSuffix=(e,t={})=>{let r=t.split??(t.separateNumbers?splitSeparateNumbers:split$1),l=t.prefixCharacters??"",p=t.suffixCharacters??"",a=0,s=e.length;for(;a<e.length;){let t=e.charAt(a);if(!l.includes(t))break;a++;}for(;s>a;){let t=s-1,r=e.charAt(t);if(!p.includes(r))break;s=t;}return [e.slice(0,a),r(e.slice(a,s)),e.slice(s)]};
37
+ let e$3=/([\p{Ll}\d])(\p{Lu})/gu,t$4=/(\p{Lu})([\p{Lu}][\p{Ll}])/gu,r=/(\d)\p{Ll}|(\p{L})\d/u,l$1=/[^\p{L}\d]+/giu,p="$1\0$2";let split$1=r=>{let a=r.trim();a=(a=a.replace(e$3,p).replace(t$4,p)).replace(l$1,"\0");let s=0,i=a.length;for(;"\0"===a.charAt(s);)s++;if(s===i)return [];for(;"\0"===a.charAt(i-1);)i--;return a.slice(s,i).split(/\0/g)};let splitSeparateNumbers=e=>{let t=split$1(e);for(let e=0;e<t.length;e++){let l=t[e],p=r.exec(l);if(p){let r=p.index+(p[1]??p[2]).length;t.splice(e,1,l.slice(0,r),l.slice(r));}}return t};let lowerFactory=e=>!1===e?e=>e.toLowerCase():t=>t.toLocaleLowerCase(e);let upperFactory=e=>!1===e?e=>e.toUpperCase():t=>t.toLocaleUpperCase(e);let capitalCaseTransformFactory=(e,t)=>r=>`${t(r[0])}${e(r.slice(1))}`;let pascalCaseTransformFactory=(e,t)=>(r,l)=>{let p=r[0];return (l>0&&p>="0"&&p<="9"?"_"+p:t(p))+e(r.slice(1))};let splitPrefixSuffix=(e,t={})=>{let r=t.split??(t.separateNumbers?splitSeparateNumbers:split$1),l=t.prefixCharacters??"",p=t.suffixCharacters??"",a=0,s=e.length;for(;a<e.length;){let t=e.charAt(a);if(!l.includes(t))break;a++;}for(;s>a;){let t=s-1,r=e.charAt(t);if(!p.includes(r))break;s=t;}return [e.slice(0,a),r(e.slice(a,s)),e.slice(s)]};
38
38
 
39
39
  let changeCaseCamel=(o,t)=>{let[c,i,s]=splitPrefixSuffix(o,t),g=lowerFactory(t?.locale),n=upperFactory(t?.locale),p=t?.mergeAmbiguousCharacters?capitalCaseTransformFactory(g,n):pascalCaseTransformFactory(g,n);return c+i.map((e,a)=>0===a?g(e):p(e,a)).join(t?.delimiter??"")+s};
40
40
 
@@ -144,6 +144,8 @@ let getUrlQueryParams=r=>{let t={},o=r?r.split("?")?.[1]:isBrowser?location.sear
144
144
 
145
145
  let imgEmptyPixel="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";
146
146
 
147
+ let t$3=/^(?:[a-z+]+:)?\/\//i;let isAbsoluteUrl=e=>t$3.test(e);
148
+
147
149
  let isAnyObject=t=>"Object"===getType(t);
148
150
 
149
151
  let isBlob=e=>"Blob"===getType(e);
@@ -384,6 +386,7 @@ exports.getUrlHashPathname = getUrlHashPathname;
384
386
  exports.getUrlPathnameParts = getUrlPathnameParts;
385
387
  exports.getUrlQueryParams = getUrlQueryParams;
386
388
  exports.imgEmptyPixel = imgEmptyPixel;
389
+ exports.isAbsoluteUrl = isAbsoluteUrl;
387
390
  exports.isAnyObject = isAnyObject;
388
391
  exports.isArray = isArray;
389
392
  exports.isBlob = isBlob;
package/index.d.ts CHANGED
@@ -50,6 +50,7 @@ export { getUrlHashPathname } from "./getUrlHashPathname";
50
50
  export { getUrlPathnameParts } from "./getUrlPathnameParts";
51
51
  export { getUrlQueryParams } from "./getUrlQueryParams";
52
52
  export { imgEmptyPixel } from "./imgEmptyPixel";
53
+ export { isAbsoluteUrl } from "./isAbsoluteUrl";
53
54
  export { isAnyObject } from "./isAnyObject";
54
55
  export { isArray } from "./isArray";
55
56
  export { isBlob } from "./isBlob";
package/index.esm.js CHANGED
@@ -10,7 +10,7 @@ let isPlainObject=e=>"Object"===getType(e)&&e.constructor===Object&&Object.getPr
10
10
 
11
11
  let isObject=e=>isPlainObject(e);
12
12
 
13
- let t$4=(r,e)=>{if(!e||r.length!==e.length)return !1;for(let t=0;t<r.length;t++)if(!areEqual(r[t],e[t]))return !1;return !0},n$1=(r,e)=>{if(!e)return !1;for(let t of Object.keys(r))if(!areEqual(r[t],e[t]))return !1;return !0};let areEqual=(u,f)=>{if(!u&&!f)return !0;if(!f&&u!==f)return !1;let l=isObject(u)&&isObject(f);if(l&&!n$1(u,f))return !1;let i=isArray(u)&&isArray(f);return !!(!i||t$4(u,f))&&(!!l||!!i||u===f)};
13
+ let t$5=(r,e)=>{if(!e||r.length!==e.length)return !1;for(let t=0;t<r.length;t++)if(!areEqual(r[t],e[t]))return !1;return !0},n$1=(r,e)=>{if(!e)return !1;for(let t of Object.keys(r))if(!areEqual(r[t],e[t]))return !1;return !0};let areEqual=(u,f)=>{if(!u&&!f)return !0;if(!f&&u!==f)return !1;let l=isObject(u)&&isObject(f);if(l&&!n$1(u,f))return !1;let i=isArray(u)&&isArray(f);return !!(!i||t$5(u,f))&&(!!l||!!i||u===f)};
14
14
 
15
15
  let arrayFilterFalsy=r=>r?r.filter(r=>!!r):[];
16
16
 
@@ -30,7 +30,7 @@ let buildUrlQueryString=t=>{let n="";if(!t)return n;for(let i in t){let l=t[i];i
30
30
 
31
31
  let capitalize=e=>(e||"").charAt(0).toUpperCase()+(e||"").slice(1);
32
32
 
33
- let e$3=/([\p{Ll}\d])(\p{Lu})/gu,t$3=/(\p{Lu})([\p{Lu}][\p{Ll}])/gu,r=/(\d)\p{Ll}|(\p{L})\d/u,l$1=/[^\p{L}\d]+/giu,p="$1\0$2";let split$1=r=>{let a=r.trim();a=(a=a.replace(e$3,p).replace(t$3,p)).replace(l$1,"\0");let s=0,i=a.length;for(;"\0"===a.charAt(s);)s++;if(s===i)return [];for(;"\0"===a.charAt(i-1);)i--;return a.slice(s,i).split(/\0/g)};let splitSeparateNumbers=e=>{let t=split$1(e);for(let e=0;e<t.length;e++){let l=t[e],p=r.exec(l);if(p){let r=p.index+(p[1]??p[2]).length;t.splice(e,1,l.slice(0,r),l.slice(r));}}return t};let lowerFactory=e=>!1===e?e=>e.toLowerCase():t=>t.toLocaleLowerCase(e);let upperFactory=e=>!1===e?e=>e.toUpperCase():t=>t.toLocaleUpperCase(e);let capitalCaseTransformFactory=(e,t)=>r=>`${t(r[0])}${e(r.slice(1))}`;let pascalCaseTransformFactory=(e,t)=>(r,l)=>{let p=r[0];return (l>0&&p>="0"&&p<="9"?"_"+p:t(p))+e(r.slice(1))};let splitPrefixSuffix=(e,t={})=>{let r=t.split??(t.separateNumbers?splitSeparateNumbers:split$1),l=t.prefixCharacters??"",p=t.suffixCharacters??"",a=0,s=e.length;for(;a<e.length;){let t=e.charAt(a);if(!l.includes(t))break;a++;}for(;s>a;){let t=s-1,r=e.charAt(t);if(!p.includes(r))break;s=t;}return [e.slice(0,a),r(e.slice(a,s)),e.slice(s)]};
33
+ let e$3=/([\p{Ll}\d])(\p{Lu})/gu,t$4=/(\p{Lu})([\p{Lu}][\p{Ll}])/gu,r=/(\d)\p{Ll}|(\p{L})\d/u,l$1=/[^\p{L}\d]+/giu,p="$1\0$2";let split$1=r=>{let a=r.trim();a=(a=a.replace(e$3,p).replace(t$4,p)).replace(l$1,"\0");let s=0,i=a.length;for(;"\0"===a.charAt(s);)s++;if(s===i)return [];for(;"\0"===a.charAt(i-1);)i--;return a.slice(s,i).split(/\0/g)};let splitSeparateNumbers=e=>{let t=split$1(e);for(let e=0;e<t.length;e++){let l=t[e],p=r.exec(l);if(p){let r=p.index+(p[1]??p[2]).length;t.splice(e,1,l.slice(0,r),l.slice(r));}}return t};let lowerFactory=e=>!1===e?e=>e.toLowerCase():t=>t.toLocaleLowerCase(e);let upperFactory=e=>!1===e?e=>e.toUpperCase():t=>t.toLocaleUpperCase(e);let capitalCaseTransformFactory=(e,t)=>r=>`${t(r[0])}${e(r.slice(1))}`;let pascalCaseTransformFactory=(e,t)=>(r,l)=>{let p=r[0];return (l>0&&p>="0"&&p<="9"?"_"+p:t(p))+e(r.slice(1))};let splitPrefixSuffix=(e,t={})=>{let r=t.split??(t.separateNumbers?splitSeparateNumbers:split$1),l=t.prefixCharacters??"",p=t.suffixCharacters??"",a=0,s=e.length;for(;a<e.length;){let t=e.charAt(a);if(!l.includes(t))break;a++;}for(;s>a;){let t=s-1,r=e.charAt(t);if(!p.includes(r))break;s=t;}return [e.slice(0,a),r(e.slice(a,s)),e.slice(s)]};
34
34
 
35
35
  let changeCaseCamel=(o,t)=>{let[c,i,s]=splitPrefixSuffix(o,t),g=lowerFactory(t?.locale),n=upperFactory(t?.locale),p=t?.mergeAmbiguousCharacters?capitalCaseTransformFactory(g,n):pascalCaseTransformFactory(g,n);return c+i.map((e,a)=>0===a?g(e):p(e,a)).join(t?.delimiter??"")+s};
36
36
 
@@ -140,6 +140,8 @@ let getUrlQueryParams=r=>{let t={},o=r?r.split("?")?.[1]:isBrowser?location.sear
140
140
 
141
141
  let imgEmptyPixel="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";
142
142
 
143
+ let t$3=/^(?:[a-z+]+:)?\/\//i;let isAbsoluteUrl=e=>t$3.test(e);
144
+
143
145
  let isAnyObject=t=>"Object"===getType(t);
144
146
 
145
147
  let isBlob=e=>"Blob"===getType(e);
@@ -329,4 +331,4 @@ let uuidNumeric=()=>new Date().valueOf();
329
331
 
330
332
  let wait=e=>new Promise(t=>setTimeout(t,e));
331
333
 
332
- export { Defer, Emitter, accentsSets, addOrReplaceAtIdx, areEqual, arrayFilterFalsy, arrayOfAll, arraySum, arrayToLookup, arrayUniqueByProperties, buildUrlQueryString, capitalize, changeCaseCamel, changeCaseConstant, changeCaseDot, changeCaseKebab, changeCasePascal, changeCasePath, changeCaseSentence, changeCaseSnake, changeCaseTrain, chunkByChunks, chunkBySize, clamp, clsx, convertRange, createPalette, debounce, debouncePromise, debounceRaf, decode, encode, ensureInt, errorToString, findDuplicatedIndexes, forin, gbToBytes, getEmptyArray, getKeys, getMediaQueryWidthResolvers, getMediaQueryWidthTailwindScreens, getNonce, getParamAmong, getParamAsInt, getParamAsString, getType, getUrlHashParams, getUrlHashPathname, getUrlPathnameParts, getUrlQueryParams, imgEmptyPixel, isAnyObject, isArray, isBlob, isBoolean, isBrowser, isBrowserNow, isDate, isEmptyArray, isEmptyObject, isEmptyString, isError, isExternalUrl, isFile, isFloat, isFormData, isFullArray, isFullObject, isFullString, isFunction, isInt, isMap, isNaNValue, isNegativeNumber, isNull, isNullOrUndefined, isNumber, isNumericLiteral, isObject, isObjectLike, isObjectStringKeyed, isOneOf, isPlainObject, isPositiveNumber, isPrimitive, isPromise, isRegExp, isServer, isServerNow, isSet, isString, isSymbol, isType, isUndefined, isWeakMap, isWeakSet, kbToBytes, lowercase, mapListBy, l as matchSorter, mbToBytes, mergeObjects, mergeUrlQueryParams, moveSortableArrayItemByKey, noop, normaliseUrl, normaliseUrlPathname, objectFlat, objectFlip, objectMergeWithDefaults, objectOmit, objectPick, objectSortByKeysMatching, objectToArray, parseCookie, parseURL, quaranteneProps, randomInt, randomKey, readCookie, removeAccents, removeCookie, removeDuplicatesByKey, removeDuplicatesComparing, removeIndexesFromArray, removeTralingSlash, removeUrlQueryParams, round, roundTo, serializeCookie, setCookie, shuffle, slugify, split, splitReverse, swapMap, throttle, titleCase, toNumber, toRgba, transformToUrlPathname, truncate, tryUntil, uid, updateLinkParams, updateUrlQueryParams, uppercase, uuid, uuidNumeric, wait };
334
+ export { Defer, Emitter, accentsSets, addOrReplaceAtIdx, areEqual, arrayFilterFalsy, arrayOfAll, arraySum, arrayToLookup, arrayUniqueByProperties, buildUrlQueryString, capitalize, changeCaseCamel, changeCaseConstant, changeCaseDot, changeCaseKebab, changeCasePascal, changeCasePath, changeCaseSentence, changeCaseSnake, changeCaseTrain, chunkByChunks, chunkBySize, clamp, clsx, convertRange, createPalette, debounce, debouncePromise, debounceRaf, decode, encode, ensureInt, errorToString, findDuplicatedIndexes, forin, gbToBytes, getEmptyArray, getKeys, getMediaQueryWidthResolvers, getMediaQueryWidthTailwindScreens, getNonce, getParamAmong, getParamAsInt, getParamAsString, getType, getUrlHashParams, getUrlHashPathname, getUrlPathnameParts, getUrlQueryParams, imgEmptyPixel, isAbsoluteUrl, isAnyObject, isArray, isBlob, isBoolean, isBrowser, isBrowserNow, isDate, isEmptyArray, isEmptyObject, isEmptyString, isError, isExternalUrl, isFile, isFloat, isFormData, isFullArray, isFullObject, isFullString, isFunction, isInt, isMap, isNaNValue, isNegativeNumber, isNull, isNullOrUndefined, isNumber, isNumericLiteral, isObject, isObjectLike, isObjectStringKeyed, isOneOf, isPlainObject, isPositiveNumber, isPrimitive, isPromise, isRegExp, isServer, isServerNow, isSet, isString, isSymbol, isType, isUndefined, isWeakMap, isWeakSet, kbToBytes, lowercase, mapListBy, l as matchSorter, mbToBytes, mergeObjects, mergeUrlQueryParams, moveSortableArrayItemByKey, noop, normaliseUrl, normaliseUrlPathname, objectFlat, objectFlip, objectMergeWithDefaults, objectOmit, objectPick, objectSortByKeysMatching, objectToArray, parseCookie, parseURL, quaranteneProps, randomInt, randomKey, readCookie, removeAccents, removeCookie, removeDuplicatesByKey, removeDuplicatesComparing, removeIndexesFromArray, removeTralingSlash, removeUrlQueryParams, round, roundTo, serializeCookie, setCookie, shuffle, slugify, split, splitReverse, swapMap, throttle, titleCase, toNumber, toRgba, transformToUrlPathname, truncate, tryUntil, uid, updateLinkParams, updateUrlQueryParams, uppercase, uuid, uuidNumeric, wait };
@@ -0,0 +1 @@
1
+ export declare let isAbsoluteUrl: (url: string) => boolean;