@wyfex/iutils 0.20.0 → 0.25.0
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/README.md +3 -2
- package/dist/index.cjs +1 -1
- package/dist/index.iife.js +1 -1
- package/dist/index.js +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/modules/color/index.d.ts +2 -0
- package/dist/types/modules/color/randomRgb.d.ts +1 -0
- package/dist/types/modules/color/randomRgba.d.ts +1 -0
- package/dist/types/modules/function/debounce.d.ts +6 -0
- package/dist/types/modules/function/index.d.ts +1 -0
- package/dist/types/modules/object/index.d.ts +1 -0
- package/dist/types/modules/object/omitStartWithKeys.d.ts +1 -0
- package/dist/types/modules/type/index.d.ts +1 -0
- package/dist/types/modules/type/isEffectiveData.d.ts +1 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
万有前端 X 体系下基于 Vite8 + TypeScript6 构建的 iUtils 工具库
|
|
4
4
|
|
|
5
5
|
## 文档地址
|
|
6
|
-
> https://wyfe.top/
|
|
6
|
+
> https://wyfe.top/idocs/iutils
|
|
7
7
|
|
|
8
8
|
## npm下载(支持pnpm/yarn/cnpm/npm)
|
|
9
9
|
```shell
|
|
@@ -11,7 +11,8 @@ $ pnpm i @wyfex/iutils
|
|
|
11
11
|
```
|
|
12
12
|
|
|
13
13
|
## 版本号规则
|
|
14
|
-
+
|
|
14
|
+
+ 仅升级工具库依赖(vite版本满足如下要求),修改第1位。eg:1.x.x;
|
|
15
|
+
> @wyfex/iutils0.x.x对应于vite8.0.x,当vite升级到8.1.x时@wyfex/iutils升级为1.x.x,以此类推。
|
|
15
16
|
+ 仅新增工具函数,修改第2位。eg:x.6.x;
|
|
16
17
|
+ 仅修复、优化现有工具函数,修改第3位。eg:x.x.1;
|
|
17
18
|
+ 以上3项都有变更或部分有变更则按照对应变更修改对应版本号位置;
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=e=>Array.isArray(e),t=e=>e==null,n=e=>!t(e)&&typeof e==`object`&&typeof e.length==`number`&&typeof e!=`function`,r=e=>typeof e==`boolean`,i=e=>r(e)||e===`true`||e===`false`,a=e=>Object.prototype.toString.call(e)===`[object Number]`&&Number.isFinite(e),
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=e=>Array.isArray(e),t=e=>e==null,n=e=>!t(e)&&typeof e==`object`&&typeof e.length==`number`&&typeof e!=`function`,r=e=>typeof e==`boolean`,i=e=>r(e)||e===`true`||e===`false`,a=n=>t(n)?!1:s(n)?n.trim().length>0:o(n)?!0:e(n)?n.length>0:l(n)?Object.keys(n).length>0:!1,o=e=>Object.prototype.toString.call(e)===`[object Number]`&&Number.isFinite(e),s=e=>Object.prototype.toString.call(e)===`[object String]`,c=e=>o(e)||s(e)&&e.trim()!==``&&!Number.isNaN(Number(e)),l=e=>Object.prototype.toString.call(e)===`[object Object]`,u=t=>!e(t)||t.length===0?!1:t.every(e=>l(e)),d=(t,n,r=`children`)=>{if(!e(t))throw TypeError(`array 必须是一个数组`);let[i,a]=Object.entries(n)[0]??[];if(!i)return console.error(`target 必须传入有效键值对,格式示例:{ id: 1 }`),[...t];let o=(t,n)=>{for(let a of n){if(a[i]===t)return a;let n=a[r];if(e(n)){let e=o(t,n);if(e)return e}}};return e(a)?a.map(e=>o(e,t)).filter(Boolean):o(a,t)},f=(t,n)=>{if(!e(t))throw TypeError(`array 必须是一个数组`);let[r,i]=Object.entries(n)[0]??[];if(!r||i===void 0)return console.error(`target 必须传入有效键值对,格式示例:{ id: 1 }`),[...t];let a=e=>t.findIndex(t=>t[r]===e);return e(i)?i.map(a):a(i)},p=(t,n,r)=>{if(!e(t))throw TypeError(`array 必须是一个数组`);let[i,a]=Object.entries(n)[0]??[];if(!i||a===void 0)return console.error(`target 必须传入有效的键值对,格式示例:{ id: 1 }`),[...t];let o=t.findIndex(e=>e[i]===a);if(o===-1)return console.error(`在数组中未找到匹配的目标元素`),[...t];let s=[...t],c=e(r)?r:[r];return s.splice(o+1,0,...c),s},m=(t,n,r=1)=>{if(!e(t))throw TypeError(`array must be an array`);let[i,a]=Object.entries(n)[0]??[];if(!i||a===void 0)return console.error(`target 必须传入有效键值对,格式示例:{ id: 1 }`),[...t];let o=t.findIndex(e=>e[i]===a);if(o===-1)return console.error(`在数组中未找到匹配的目标元素`),[...t];let s=o+1;if(s>=t.length)return console.error(`目标元素已是数组最后一项,无后续数据可删除`),[...t];let c=[...t];return c.splice(s,r),c},h=()=>{let e=()=>Math.floor(Math.random()*255);return`rgb(${e()}, ${e()}, ${e()})`},g=(e=1)=>{let t=()=>Math.floor(Math.random()*255);return`rgba(${t()}, ${t()}, ${t()}, ${e})`},_=(e,t=300,n=!1)=>{let r=null,i,a=function(...a){return r&&clearTimeout(r),n&&!r&&(i=e.apply(this,a)),r=setTimeout(()=>{n||e.apply(this,a),r=null},t),i};return a.cancel=()=>{r&&=(clearTimeout(r),null)},a.flush=()=>(a.cancel(),i),a.isPending=()=>r!==null,a},v=e=>l(e)?Object.fromEntries(Object.entries(e).filter(([e,t])=>t!=null)):{},y=t=>{if(!l(t))return{};let n={...t};for(let t in n){let r=n[t];if(t.includes(`,`)&&e(r)){let e=t.split(`,`),i=r;e.forEach((e,t)=>{n[e]=i[t]}),delete n[t]}}return n},b=(t,n)=>{if(!l(t))return{};let r=e(n)?n:[n],i={...t};return r.forEach(e=>{delete i[e]}),i},x=(t,n=`_`)=>{if(t==null)return t;if(e(t))return t.map(e=>x(e,n)).filter(e=>typeof e==`string`?!e.startsWith(n):typeof e==`number`?!String(e).startsWith(n):!0);if(typeof t!=`object`||t instanceof Date||t instanceof RegExp)return t;let r={};for(let e in t)if(Object.prototype.hasOwnProperty.call(t,e)){let i=t[e];e.startsWith(n)||(r[e]=x(i,n))}return r},S=(e,t=[])=>{if(!l(e))return e;let n={...e};return t.forEach(e=>{if(!Object.prototype.hasOwnProperty.call(n,e))return;let t=n[e];if(typeof t==`string`){n[e]=t.split(`,`).map(e=>e.trim()).filter(Boolean);return}n[e]=t==null?[]:[t]}),n},C=(t,n=[])=>{if(!l(t))return t;let r={...t};return Object.keys(r).forEach(t=>{let i=r[t];n.includes(t)&&e(i)&&(r[t]=i.join(`,`))}),r},w=e=>e===`null`||e===`undefined`||e===``?null:e===`true`?!0:e===`false`?!1:typeof e==`string`&&/^-?(0|[1-9]\d*)(\.\d+)?$/.test(e)?Number(e):e;exports.cleanObjectEmptyValues=v,exports.debounce=_,exports.expandCommaKeyObject=y,exports.findBy=d,exports.findIndexBy=f,exports.insertAfter=p,exports.isArray=e,exports.isArrayLike=n,exports.isBoolean=r,exports.isBooleanLike=i,exports.isEffectiveData=a,exports.isNil=t,exports.isNumber=o,exports.isNumberLike=c,exports.isObject=l,exports.isObjectArray=u,exports.isString=s,exports.omitObjectProps=b,exports.omitStartWithKeys=x,exports.parseStringFieldsToArray=S,exports.parseValue=w,exports.randomRgb=h,exports.randomRgba=g,exports.removeAfter=m,exports.stringifyArrayFields=C;
|
package/dist/index.iife.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var WyfeX_IUtils=(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var t=e=>Array.isArray(e),n=e=>e==null,r=e=>!n(e)&&typeof e==`object`&&typeof e.length==`number`&&typeof e!=`function`,i=e=>typeof e==`boolean`,a=e=>i(e)||e===`true`||e===`false`,o=e=>n(e)?!1:c(e)?e.trim().length>0:s(e)?!0:t(e)?e.length>0:u(e)?Object.keys(e).length>0:!1,s=e=>Object.prototype.toString.call(e)===`[object Number]`&&Number.isFinite(e),c=e=>Object.prototype.toString.call(e)===`[object String]`,l=e=>s(e)||c(e)&&e.trim()!==``&&!Number.isNaN(Number(e)),u=e=>Object.prototype.toString.call(e)===`[object Object]`,d=e=>!t(e)||e.length===0?!1:e.every(e=>u(e)),f=(e,n,r=`children`)=>{if(!t(e))throw TypeError(`array 必须是一个数组`);let[i,a]=Object.entries(n)[0]??[];if(!i)return console.error(`target 必须传入有效键值对,格式示例:{ id: 1 }`),[...e];let o=(e,n)=>{for(let a of n){if(a[i]===e)return a;let n=a[r];if(t(n)){let t=o(e,n);if(t)return t}}};return t(a)?a.map(t=>o(t,e)).filter(Boolean):o(a,e)},p=(e,n)=>{if(!t(e))throw TypeError(`array 必须是一个数组`);let[r,i]=Object.entries(n)[0]??[];if(!r||i===void 0)return console.error(`target 必须传入有效键值对,格式示例:{ id: 1 }`),[...e];let a=t=>e.findIndex(e=>e[r]===t);return t(i)?i.map(a):a(i)},m=(e,n,r)=>{if(!t(e))throw TypeError(`array 必须是一个数组`);let[i,a]=Object.entries(n)[0]??[];if(!i||a===void 0)return console.error(`target 必须传入有效的键值对,格式示例:{ id: 1 }`),[...e];let o=e.findIndex(e=>e[i]===a);if(o===-1)return console.error(`在数组中未找到匹配的目标元素`),[...e];let s=[...e],c=t(r)?r:[r];return s.splice(o+1,0,...c),s},h=(e,n,r=1)=>{if(!t(e))throw TypeError(`array must be an array`);let[i,a]=Object.entries(n)[0]??[];if(!i||a===void 0)return console.error(`target 必须传入有效键值对,格式示例:{ id: 1 }`),[...e];let o=e.findIndex(e=>e[i]===a);if(o===-1)return console.error(`在数组中未找到匹配的目标元素`),[...e];let s=o+1;if(s>=e.length)return console.error(`目标元素已是数组最后一项,无后续数据可删除`),[...e];let c=[...e];return c.splice(s,r),c},g=()=>{let e=()=>Math.floor(Math.random()*255);return`rgb(${e()}, ${e()}, ${e()})`},_=(e=1)=>{let t=()=>Math.floor(Math.random()*255);return`rgba(${t()}, ${t()}, ${t()}, ${e})`},v=(e,t=300,n=!1)=>{let r=null,i,a=function(...a){return r&&clearTimeout(r),n&&!r&&(i=e.apply(this,a)),r=setTimeout(()=>{n||e.apply(this,a),r=null},t),i};return a.cancel=()=>{r&&=(clearTimeout(r),null)},a.flush=()=>(a.cancel(),i),a.isPending=()=>r!==null,a},y=e=>u(e)?Object.fromEntries(Object.entries(e).filter(([e,t])=>t!=null)):{},b=e=>{if(!u(e))return{};let n={...e};for(let e in n){let r=n[e];if(e.includes(`,`)&&t(r)){let t=e.split(`,`),i=r;t.forEach((e,t)=>{n[e]=i[t]}),delete n[e]}}return n},x=(e,n)=>{if(!u(e))return{};let r=t(n)?n:[n],i={...e};return r.forEach(e=>{delete i[e]}),i},S=(e,n=`_`)=>{if(e==null)return e;if(t(e))return e.map(e=>S(e,n)).filter(e=>typeof e==`string`?!e.startsWith(n):typeof e==`number`?!String(e).startsWith(n):!0);if(typeof e!=`object`||e instanceof Date||e instanceof RegExp)return e;let r={};for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)){let i=e[t];t.startsWith(n)||(r[t]=S(i,n))}return r};return e.cleanObjectEmptyValues=y,e.debounce=v,e.expandCommaKeyObject=b,e.findBy=f,e.findIndexBy=p,e.insertAfter=m,e.isArray=t,e.isArrayLike=r,e.isBoolean=i,e.isBooleanLike=a,e.isEffectiveData=o,e.isNil=n,e.isNumber=s,e.isNumberLike=l,e.isObject=u,e.isObjectArray=d,e.isString=c,e.omitObjectProps=x,e.omitStartWithKeys=S,e.parseStringFieldsToArray=(e,t=[])=>{if(!u(e))return e;let n={...e};return t.forEach(e=>{if(!Object.prototype.hasOwnProperty.call(n,e))return;let t=n[e];if(typeof t==`string`){n[e]=t.split(`,`).map(e=>e.trim()).filter(Boolean);return}n[e]=t==null?[]:[t]}),n},e.parseValue=e=>e===`null`||e===`undefined`||e===``?null:e===`true`?!0:e===`false`?!1:typeof e==`string`&&/^-?(0|[1-9]\d*)(\.\d+)?$/.test(e)?Number(e):e,e.randomRgb=g,e.randomRgba=_,e.removeAfter=h,e.stringifyArrayFields=(e,n=[])=>{if(!u(e))return e;let r={...e};return Object.keys(r).forEach(e=>{let i=r[e];n.includes(e)&&t(i)&&(r[e]=i.join(`,`))}),r},e})({});
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=e=>Array.isArray(e),t=e=>e==null,n=e=>!t(e)&&typeof e==`object`&&typeof e.length==`number`&&typeof e!=`function`,r=e=>typeof e==`boolean`,i=e=>r(e)||e===`true`||e===`false`,a=e=>Object.prototype.toString.call(e)===`[object Number]`&&Number.isFinite(e),
|
|
1
|
+
var e=e=>Array.isArray(e),t=e=>e==null,n=e=>!t(e)&&typeof e==`object`&&typeof e.length==`number`&&typeof e!=`function`,r=e=>typeof e==`boolean`,i=e=>r(e)||e===`true`||e===`false`,a=n=>t(n)?!1:s(n)?n.trim().length>0:o(n)?!0:e(n)?n.length>0:l(n)?Object.keys(n).length>0:!1,o=e=>Object.prototype.toString.call(e)===`[object Number]`&&Number.isFinite(e),s=e=>Object.prototype.toString.call(e)===`[object String]`,c=e=>o(e)||s(e)&&e.trim()!==``&&!Number.isNaN(Number(e)),l=e=>Object.prototype.toString.call(e)===`[object Object]`,u=t=>!e(t)||t.length===0?!1:t.every(e=>l(e)),d=(t,n,r=`children`)=>{if(!e(t))throw TypeError(`array 必须是一个数组`);let[i,a]=Object.entries(n)[0]??[];if(!i)return console.error(`target 必须传入有效键值对,格式示例:{ id: 1 }`),[...t];let o=(t,n)=>{for(let a of n){if(a[i]===t)return a;let n=a[r];if(e(n)){let e=o(t,n);if(e)return e}}};return e(a)?a.map(e=>o(e,t)).filter(Boolean):o(a,t)},f=(t,n)=>{if(!e(t))throw TypeError(`array 必须是一个数组`);let[r,i]=Object.entries(n)[0]??[];if(!r||i===void 0)return console.error(`target 必须传入有效键值对,格式示例:{ id: 1 }`),[...t];let a=e=>t.findIndex(t=>t[r]===e);return e(i)?i.map(a):a(i)},p=(t,n,r)=>{if(!e(t))throw TypeError(`array 必须是一个数组`);let[i,a]=Object.entries(n)[0]??[];if(!i||a===void 0)return console.error(`target 必须传入有效的键值对,格式示例:{ id: 1 }`),[...t];let o=t.findIndex(e=>e[i]===a);if(o===-1)return console.error(`在数组中未找到匹配的目标元素`),[...t];let s=[...t],c=e(r)?r:[r];return s.splice(o+1,0,...c),s},m=(t,n,r=1)=>{if(!e(t))throw TypeError(`array must be an array`);let[i,a]=Object.entries(n)[0]??[];if(!i||a===void 0)return console.error(`target 必须传入有效键值对,格式示例:{ id: 1 }`),[...t];let o=t.findIndex(e=>e[i]===a);if(o===-1)return console.error(`在数组中未找到匹配的目标元素`),[...t];let s=o+1;if(s>=t.length)return console.error(`目标元素已是数组最后一项,无后续数据可删除`),[...t];let c=[...t];return c.splice(s,r),c},h=()=>{let e=()=>Math.floor(Math.random()*255);return`rgb(${e()}, ${e()}, ${e()})`},g=(e=1)=>{let t=()=>Math.floor(Math.random()*255);return`rgba(${t()}, ${t()}, ${t()}, ${e})`},_=(e,t=300,n=!1)=>{let r=null,i,a=function(...a){return r&&clearTimeout(r),n&&!r&&(i=e.apply(this,a)),r=setTimeout(()=>{n||e.apply(this,a),r=null},t),i};return a.cancel=()=>{r&&=(clearTimeout(r),null)},a.flush=()=>(a.cancel(),i),a.isPending=()=>r!==null,a},v=e=>l(e)?Object.fromEntries(Object.entries(e).filter(([e,t])=>t!=null)):{},y=t=>{if(!l(t))return{};let n={...t};for(let t in n){let r=n[t];if(t.includes(`,`)&&e(r)){let e=t.split(`,`),i=r;e.forEach((e,t)=>{n[e]=i[t]}),delete n[t]}}return n},b=(t,n)=>{if(!l(t))return{};let r=e(n)?n:[n],i={...t};return r.forEach(e=>{delete i[e]}),i},x=(t,n=`_`)=>{if(t==null)return t;if(e(t))return t.map(e=>x(e,n)).filter(e=>typeof e==`string`?!e.startsWith(n):typeof e==`number`?!String(e).startsWith(n):!0);if(typeof t!=`object`||t instanceof Date||t instanceof RegExp)return t;let r={};for(let e in t)if(Object.prototype.hasOwnProperty.call(t,e)){let i=t[e];e.startsWith(n)||(r[e]=x(i,n))}return r},S=(e,t=[])=>{if(!l(e))return e;let n={...e};return t.forEach(e=>{if(!Object.prototype.hasOwnProperty.call(n,e))return;let t=n[e];if(typeof t==`string`){n[e]=t.split(`,`).map(e=>e.trim()).filter(Boolean);return}n[e]=t==null?[]:[t]}),n},C=(t,n=[])=>{if(!l(t))return t;let r={...t};return Object.keys(r).forEach(t=>{let i=r[t];n.includes(t)&&e(i)&&(r[t]=i.join(`,`))}),r},w=e=>e===`null`||e===`undefined`||e===``?null:e===`true`?!0:e===`false`?!1:typeof e==`string`&&/^-?(0|[1-9]\d*)(\.\d+)?$/.test(e)?Number(e):e;export{v as cleanObjectEmptyValues,_ as debounce,y as expandCommaKeyObject,d as findBy,f as findIndexBy,p as insertAfter,e as isArray,n as isArrayLike,r as isBoolean,i as isBooleanLike,a as isEffectiveData,t as isNil,o as isNumber,c as isNumberLike,l as isObject,u as isObjectArray,s as isString,b as omitObjectProps,x as omitStartWithKeys,S as parseStringFieldsToArray,w as parseValue,h as randomRgb,g as randomRgba,m as removeAfter,C as stringifyArrayFields};
|
package/dist/types/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const randomRgb: () => string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const randomRgba: (alpha?: number) => string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './debounce';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const omitStartWithKeys: <T = any>(data: T, prefix?: string) => T;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const isEffectiveData: (data: unknown) => data is string | number | object | any[];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wyfex/iutils",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.25.0",
|
|
4
4
|
"description": "万有前端 X 体系下基于 Vite8 + TypeScript6 构建的 iUtils 工具库",
|
|
5
5
|
"homepage": "https://wyfe.top/idocs/iutils",
|
|
6
6
|
"type": "module",
|
|
@@ -40,6 +40,6 @@
|
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"@types/node": "^25.9.1",
|
|
42
42
|
"typescript": "^6.0.3",
|
|
43
|
-
"vite": "^8.0.
|
|
43
|
+
"vite": "^8.0.16"
|
|
44
44
|
}
|
|
45
45
|
}
|