diff --git a/package-lock.json b/package-lock.json index 2546858..6b56f46 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2031,16 +2031,48 @@ } }, "@pushrocks/tapbundle": { - "version": "3.2.9", - "resolved": "https://verdaccio.lossless.one/@pushrocks%2ftapbundle/-/tapbundle-3.2.9.tgz", - "integrity": "sha512-vtmYL/l7BZvAzySh7cYnnTG6CFMp5zYtowJuMAmqUjhIaQaWW1Tvbrpjp7lVwRXj2JlL/i69KcJ6RVdLItK+rA==", + "version": "3.2.10", + "resolved": "https://verdaccio.lossless.one/@pushrocks%2ftapbundle/-/tapbundle-3.2.10.tgz", + "integrity": "sha512-EPFSiFMx6uxWcZgANT1yDigTknVl1FCRIaiuf2AEkpg4vR5ZIZQKDIWkrFZY0ajUWJ6vCM631TmIcJvUnyWJXw==", "dev": true, "requires": { - "@pushrocks/smartdelay": "^2.0.9", - "@pushrocks/smartenv": "^4.0.10", - "@pushrocks/smartpromise": "^3.0.2", - "@pushrocks/smarttime": "^3.0.19", + "@pushrocks/smartdelay": "^2.0.10", + "@pushrocks/smartenv": "^4.0.16", + "@pushrocks/smartpromise": "^3.1.3", + "@pushrocks/smarttime": "^3.0.38", "smartchai": "^2.0.1" + }, + "dependencies": { + "@pushrocks/smartenv": { + "version": "4.0.16", + "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartenv/-/smartenv-4.0.16.tgz", + "integrity": "sha512-NwYMONDc/NjY6BGvzZzLMteF83kPQTF9BCGfqWbktUUruEtdqL+nGw6ecoLFi2b5u7XPb8jK1TKIcSvpNJ7SyA==", + "dev": true, + "requires": { + "@pushrocks/smartpromise": "^3.0.6", + "@types/node": "^14.11.2" + } + }, + "@pushrocks/smartpromise": { + "version": "3.1.3", + "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartpromise/-/smartpromise-3.1.3.tgz", + "integrity": "sha512-KENdm++8uuzxDz1cbUbXtz6InfReP28TYC5zxRgRtwsXh7ZWUkSA+/82IbO97PcSCAfIpg7dwj77G6KGSsTKEQ==", + "dev": true + }, + "@pushrocks/smarttime": { + "version": "3.0.38", + "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmarttime/-/smarttime-3.0.38.tgz", + "integrity": "sha512-oVT48eZE66OTmDALAsWkk3GXUQiqzkei7mo526UbuMN2iLY8I9WgsxmLfa8Fp4llQmocncW3WTqGyhnEOAuDgA==", + "dev": true, + "requires": { + "@pushrocks/lik": "^4.0.17", + "@pushrocks/smartdelay": "^2.0.10", + "@pushrocks/smartpromise": "^3.0.2", + "croner": "^1.1.23", + "dayjs": "^1.9.1", + "is-nan": "^1.3.0" + } + } } }, "@pushrocks/webrequest": { @@ -2156,9 +2188,9 @@ "integrity": "sha512-nFKOrY93Tvv5Tobws+YbkGlPOJsn1nVpZah3BlSyQ4EniFm97KLvSr54tZ5xQp8mlf/XxbYwskNCYQB9EdrPlQ==" }, "@types/chai": { - "version": "4.2.12", - "resolved": "https://verdaccio.lossless.one/@types%2fchai/-/chai-4.2.12.tgz", - "integrity": "sha512-aN5IAC8QNtSUdQzxu7lGBgYAOuU1tmRU4c9dIq5OKGf/SBVjXo+ffM2wEjudAWbgpOhy60nLoAGH1xm8fpCKFQ==", + "version": "4.2.14", + "resolved": "https://verdaccio.lossless.one/@types%2fchai/-/chai-4.2.14.tgz", + "integrity": "sha512-G+ITQPXkwTrslfG5L/BksmbLUA0M1iybEsmCWPqzSxsRRhJZimBKJkoMi8fr/CPygPTj4zO5pJH7I2/cm9M7SQ==", "dev": true }, "@types/chai-as-promised": { @@ -2328,9 +2360,9 @@ "dev": true }, "@types/node": { - "version": "14.11.2", - "resolved": "https://verdaccio.lossless.one/@types%2fnode/-/node-14.11.2.tgz", - "integrity": "sha512-jiE3QIxJ8JLNcb1Ps6rDbysDhN4xa8DJJvuC9prr6w+1tIh+QAbYyNF3tyiZNLDBIuBCf4KEcV2UvQm/V60xfA==", + "version": "14.14.22", + "resolved": "https://verdaccio.lossless.one/@types%2fnode/-/node-14.14.22.tgz", + "integrity": "sha512-g+f/qj/cNcqKkc3tFqlXOYjrmZA+jNBiDzbP3kH+B+otKFqAdPgVTGP1IeKRdMml/aE69as5S4FqtxAbl+LaMw==", "dev": true }, "@types/parcel-bundler": { @@ -8209,9 +8241,9 @@ "dev": true }, "pathval": { - "version": "1.1.0", - "resolved": "https://verdaccio.lossless.one/pathval/-/pathval-1.1.0.tgz", - "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", + "version": "1.1.1", + "resolved": "https://verdaccio.lossless.one/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", "dev": true }, "pbkdf2": { diff --git a/package.json b/package.json index 34949d0..8f16c15 100644 --- a/package.json +++ b/package.json @@ -23,8 +23,8 @@ "@gitzone/tsbuild": "^2.1.25", "@gitzone/tsrun": "^1.2.12", "@gitzone/tstest": "^1.0.52", - "@pushrocks/tapbundle": "^3.2.9", - "@types/node": "^14.11.2", + "@pushrocks/tapbundle": "^3.2.10", + "@types/node": "^14.14.22", "tslint": "^6.1.3", "tslint-config-prettier": "^1.18.0" }, diff --git a/ts/index.ts b/ts/index.ts index 0c014c3..a828f60 100644 --- a/ts/index.ts +++ b/ts/index.ts @@ -76,7 +76,7 @@ export class Smartjson { /** * Decorator that marks a property as foldable */ -export let foldDec = () => { +export const foldDec = () => { return (target: any, key: string) => { if (!target.saveableProperties) { target.saveableProperties = []; @@ -84,3 +84,9 @@ export let foldDec = () => { target.saveableProperties.push(key); }; }; + +export const deepEqualObjects = (object1: any, object2: any): boolean => { + const object1String = stringify(object1); + const object2String = stringify(object2); + return object1String === object2String; +}