@useweb/array-db
Advanced tools
Comparing version 0.6.0 to 1.0.0
@@ -1,1 +0,1 @@ | ||
var n=(r,e={validate:"item"})=>{if(!r)throw new Error(`${e.validate} prop required`)},o={add:(r=[],{data:e,insertMethod:d="push",ifExists:i="replace"})=>{n(e);let t=r.slice();return t.some(s=>s.id===e.id)?(i==="replace"&&(t=t.map(s=>s.id===e.id?e:s)),i==="remove"&&(t=t.filter(s=>s.id!==e.id)),i==="add"&&t[d](e)):t[d](e),t},update:(r=[],{data:e,id:d,idKey:i="id"})=>{n(e),n(d,{validate:"id"});let t=r.slice(),p=r.findIndex(s=>s[i]===d);return t[p]={id:d,...e},t},remove:(r=[],{id:e,idKey:d="id"})=>{n(e,{validate:"id"});let i=r.slice();return i=i.filter(t=>t[d]!==e),i},reset:()=>[]};export{o as default}; | ||
var p=(t,e={validate:"item"})=>{if(!t)throw new Error(`${e.validate} prop required`)},c={add:(t=[],{data:e,idKey:a="id",insertMethod:n="push",ifExists:s="replace"})=>{p(e);let r=t.slice();return r.some(i=>i[a]===e[a])?(s==="replace"&&(r=r.map(i=>i[a]===e[a]?e:i)),s==="remove"&&(r=r.filter(i=>i[a]!==e[a])),s==="add"&&r[n](e)):r[n](e),r},update:(t=[],{data:e,id:a,idKey:n="id"})=>{p(e),p(a,{validate:"id"});let s=t.slice(),r=t.findIndex(d=>d[n]===a);return s[r]={id:a,...e},s},remove:(t=[],{id:e,idKey:a="id"})=>{p(e,{validate:"id"});let n=t.slice();return n=n.filter(s=>s[a]!==e),n},reset:()=>[]};export{c as default}; |
export declare type AddTypes = { | ||
data: any; | ||
idKey?: string; | ||
insertMethod?: 'push' | 'unshift'; | ||
ifExists?: 'add' | 'replace' | 'remove'; | ||
}; | ||
export declare type UpdateTypes = { | ||
data: object; | ||
export declare type UpdateTypes<ArrayDataSchema> = { | ||
data: ArrayDataSchema; | ||
id: string | number; | ||
@@ -16,7 +17,7 @@ idKey?: string; | ||
declare const _default: { | ||
add: (array: object[], { data, insertMethod, ifExists }: AddTypes) => any; | ||
update: (array: object[], { data, id, idKey }: UpdateTypes) => object[]; | ||
remove: (array: object[], { id, idKey }: RemoveTypes) => object[]; | ||
add: <ArrayDataSchema>(array: ArrayDataSchema[], { data, idKey, insertMethod, ifExists }: AddTypes) => any; | ||
update: <ArrayDataSchema_1>(array: ArrayDataSchema_1[], { data, id, idKey }: UpdateTypes<ArrayDataSchema_1>) => ArrayDataSchema_1[]; | ||
remove: <ArrayDataSchema_2>(array: ArrayDataSchema_2[], { id, idKey }: RemoveTypes) => ArrayDataSchema_2[]; | ||
reset: () => any[]; | ||
}; | ||
export default _default; |
{ | ||
"name": "@useweb/array-db", | ||
"version": "0.6.0", | ||
"version": "1.0.0", | ||
"main": "./build/index.js", | ||
@@ -16,4 +16,4 @@ "author": "Jeremy Tenjo", | ||
"devDependencies": { | ||
"@useweb/compiler": "2.0.0" | ||
"@useweb/compiler": "2.7.0" | ||
} | ||
} |
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
1881
25
1