{"_id":"@agile-ts/proxytree","_rev":"10-a7d7ff66f3109cd3412b8752bda12108","name":"@agile-ts/proxytree","dist-tags":{"latest":"0.0.10"},"versions":{"0.0.2":{"name":"@agile-ts/proxytree","version":"0.0.2","author":{"name":"BennoDev"},"license":"MIT","homepage":"https://agile-ts.org/","description":"Create Proxy Tree based on the accessed properties","keywords":["proxy","proxy-tree","agile","agile-ts"],"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"tsc && tsc -p ./tsconfig.production.json","dev:publish":"yalc publish","dev:push":"yalc push","watch:push":"tsc-watch --onSuccess \"yarn run dev:push\"","watch":"tsc -w","release":"yarn run prepare","preview":"npm pack","test":"jest","test:coverage":"jest --coverage","lint":"eslint src/**/*"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/agile-ts/agile.git"},"bugs":{"url":"https://github.com/agile-ts/agile/issues"},"_id":"@agile-ts/proxytree@0.0.2","_nodeVersion":"12.22.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-PbSiChF0GcUoWnrbnHauzBxZ5r/+4pZSZWpYjkBcIFa48DgTtFzg5DfQzsW3Rc1Y0QSFGYqcZOvCK1xAjLIQ2g==","shasum":"516ed19ee8d58aeecb291788a1e47be3dc23df8c","tarball":"https://registry.npmjs.org/@agile-ts/proxytree/-/proxytree-0.0.2.tgz","fileCount":12,"unpackedSize":19197,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglnxOCRA9TVsSAnZWagAAplAP/1f1+qn0aXApaOP1D0/X\nWRfKaSlf/7+vABeYItZzXB6p3QTmn+FSJ0vW0XjgIFTAW8E/iz5nNFpgVnnw\nrvyMqOnrcUTTdsGxF7gqJGdt9J6guSUCKKMthhMZquqSeJ0pMioyMrjqqEO/\n0RKEesa1t7qUzFA5DKdCS/IzWb5+Y9A4mhnGt5l73D8ZFT22Bal2SbD2WHid\nz3EzINDUAN6ouJdUcsW/GqAkP4RnQjMiUDFZ61FRh8bm4k11ed2AfuJNzqZA\n+S82JSILCPNU3l2tVhgl1vvsh0XbHX/i9bbv39P4dyo+z46Uy57HWimKXaT4\nrZ2I749lKGWfPB3eZGdN+RKlXZ2W6iK/JYvqkpJ6GpTOWl5+betwx6qoDIWb\nKQjp4Iq1we8+NfhAUcYCC41Cp6pARieI5uWa5eTXAIisr4UbGdbI8UM0896w\ngwcxP4tjH6s3dVWE4FcUiSnslcEGKWja6BaWx14qjE2tgTVNzlAKy4NZhdLn\n1tAej8UNGphrcrqmaXB1iI/jZwOK+4LiPs19b79WoqDv51xVcv3396Wpy2Uf\nQ/rGz/VlQ+xqAG8VKavVQdhVbhkJxamqcwWaVwhji9dx2OgSVGgpffjl2LwW\njk53UqD4R5tCzWW8t6gwNbCGIPrmz3qszK7WCstbX5J6aJLZPejNJcBGghnd\ndJ55\r\n=MMpy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICoH2BvbkHXACTfpGikFYOU9M74wKesGHiR4vba1woVCAiAfjfIZ+Kl3z5BiLUdIX43Vmazrx+xJmTeXQuJJbyfUTg=="}]},"_npmUser":{"name":"bennodev","email":"bennodev19@gmail.com"},"directories":{},"maintainers":[{"name":"bennodev","email":"bennodev19@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proxytree_0.0.2_1620474957944_0.9718517614960251"},"_hasShrinkwrap":false},"0.0.3":{"name":"@agile-ts/proxytree","version":"0.0.3","author":{"name":"BennoDev"},"license":"MIT","homepage":"https://agile-ts.org/","description":"Create Proxy Tree based on the accessed properties","keywords":["proxy","proxy-tree","agile","agile-ts"],"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"tsc && tsc -p ./tsconfig.production.json","dev:publish":"yalc publish","dev:push":"yalc push","watch:push":"tsc-watch --onSuccess \"yarn run dev:push\"","watch":"tsc -w","release":"yarn run prepare","preview":"npm pack","test":"jest","test:coverage":"jest --coverage","lint":"eslint src/**/*"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/agile-ts/agile.git"},"bugs":{"url":"https://github.com/agile-ts/agile/issues"},"_id":"@agile-ts/proxytree@0.0.3","_nodeVersion":"12.22.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-auO6trCo7ivLJYuLjxrnK4xuUTangVPTq8UuOMTlGbJFjmb8PLEkaXuRoVGSzv9jsT2FeS7KsP7Fs+yvv0WPdg==","shasum":"e3dacab123a311f2f0d4a0369793fe90fdab7569","tarball":"https://registry.npmjs.org/@agile-ts/proxytree/-/proxytree-0.0.3.tgz","fileCount":12,"unpackedSize":19801,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgn86rCRA9TVsSAnZWagAAGvwQAJt9TBeLDbt++Y27LWYx\nF23aBcVJ5Eiy8hmiTWu9enqERt2vUvu9jhbbqFBRqE9mNH3b3+wgEyqbgTZA\nK6QDgmexl2gkR1XX9+mirA7pNo8rOMsdjOFRekwXa9iOCQZfMQgescqyySlG\n8o4IIX6nd75Z3FcR+SyNQ6MA9jkTDL3f6zojbTezsV5r+QK/LvB8GyThfXOc\nMtUC1r802i/xTKwhOpvEqQxPVHVTMDgwSXvsVkjfF6jB8aYkGmaMblTtjhzW\nddvKNIs0wTVBrAy37XMhBWQHoNsjA9stzaFjClWxnThmy1MxWpNS+rKRCdBi\nzy14TTt8xTRs4WmPEwCh0nAwXpvx2rknkyYEBPrOOZu6rcvyxT3yuCY3Ci1f\nOqVyYW+Cm/gXmf80Krz862ObaCa/DEYoVfIm1cROF5QNUEYjCu/udfh6YEUO\ndNJKm1fYa9c0fHHkCQ7F+SgeZtdVS/I1lbt0LM2HgGmWB+0AQkwvOVHbtEbl\n3/b5d/JkiJIv8/5Zap0E0QMHwuTpcHV05DemVI+E3ivau4hMTgc43GBHhzLb\nWr8FUV0nOj5JsB+n4NNcyQ9AafQPJ3uL/IVymJ/ca3S1n2gkNbKSDLLuM6uc\nJ5goYHd/Pbu0cQJh6dot2PA/3zREZnp6BX7FXC5FhelIR4I/jGAWXNXD3aGh\n3VoA\r\n=h67j\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGH9K/e7ItKi9Ko78+A5kfZdldWjCPekFtZ6nbGFh38CAiEA+Lj2m9VjDZlHd4A4mc/vk6/9+ok4HskB8CiKF56sTZk="}]},"_npmUser":{"name":"bennodev","email":"bennodev19@gmail.com"},"directories":{},"maintainers":[{"name":"bennodev","email":"bennodev19@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proxytree_0.0.3_1621085867239_0.689351671311139"},"_hasShrinkwrap":false},"0.0.4":{"name":"@agile-ts/proxytree","version":"0.0.4","author":{"name":"BennoDev"},"license":"MIT","homepage":"https://agile-ts.org/","description":"Create Proxy Tree based on the accessed properties","keywords":["proxy","proxy-tree","agile","agile-ts"],"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"tsc && tsc -p ./tsconfig.production.json","dev:publish":"yalc publish","dev:push":"yalc push","watch:push":"tsc-watch --onSuccess \"yarn run dev:push\"","watch":"tsc -w","release":"yarn run prepare","preview":"npm pack","test":"jest","test:coverage":"jest --coverage","lint":"eslint src/**/*"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/agile-ts/agile.git"},"bugs":{"url":"https://github.com/agile-ts/agile/issues"},"_id":"@agile-ts/proxytree@0.0.4","_nodeVersion":"12.22.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-sMkjgn6G1DcD9KkDitaXewSYcuW5U2tU2sBTX2WRkVsVYmP4MOzrooeRRB06eFufYvzDpI1kVPwCSzDPKji8DA==","shasum":"d452c474340c2633d70f4841984e20ff1b88b7a5","tarball":"https://registry.npmjs.org/@agile-ts/proxytree/-/proxytree-0.0.4.tgz","fileCount":12,"unpackedSize":21374,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2BaVCRA9TVsSAnZWagAAJd4P/Rw+zqQPKNVF4ZG2/fAn\n632cFySJOT8+DCoGGzQBkJGP43MGrPVerKBzVyMX9pFbCce2FysutEx+PGHJ\nlBZ8qgCowgc5KAWqvUovOYUDrmYSuH0sZqwYCEGLNPBK0PhxpNbsl/YTaSyN\nZENNfGaQS6hL+rt74ZuyAarj2u721d3N2LUwxN5VZ4tK8YGi1CRev/aKYi8o\neyMzZ75VpCL3cI22MJeWOgK2foaiUCCsP0maqsQX/qPNSx/7CahDTJ2W5rOA\nQJq4e3BTJ+rvaHXa0ogYs+lZ7mL3C45XL7L60Qakb334ZvD2VbvJ8Bz2jJBz\nbBUn9B133Na/cwQKKIA798SYvZSYII+N1G6fXPqFg80172srAGsXM9s8n2Zm\nM1X1JywL5TGa/WKSr81e8uChXpAb/EfGaf9eGyakSL1GDV7FWPhHpx+eg4fQ\nLzfFqZYeaqh5Mvv5Pmv0odoqY1pvJrYYDDkjxELLT9H5TZ6I1S5t0uthlEWy\n5b57k7NIQjGbq5wVubR77xqbidLT9Vf1rVuYTozzIWqdSUQbDeVW84tt1p2L\nJARkolCtSulktH9J87vPlzrMB9bgKrbzl26TSbeRL7zSg69FtDJrtJxEHUud\n1a6qeZwtmcJ/7MJNoDcl7NQlDtRzVHZ6vIh5FS/WaYBETI4T0tEah9R28Joz\nR6CG\r\n=Of+U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHDXNcr2QZVxynFbEckhTvfe5T6KxKS9VwQ+bPd8VOjZAiALlE+Ql08colzcoCPrJVmjxEid2Ko84xPVSWwUm+WLtw=="}]},"_npmUser":{"name":"bennodev","email":"bennodev19@gmail.com"},"directories":{},"maintainers":[{"name":"bennodev","email":"bennodev19@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proxytree_0.0.4_1624774293323_0.5988806415739305"},"_hasShrinkwrap":false},"0.0.5":{"name":"@agile-ts/proxytree","version":"0.0.5","author":{"name":"BennoDev"},"license":"MIT","homepage":"https://agile-ts.org/","description":"Create Proxy Tree based on the accessed properties","keywords":["proxy","proxy-tree","agile","agile-ts"],"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"tsc && tsc -p ./tsconfig.production.json","dev:publish":"yalc publish","dev:push":"yalc push","watch:push":"tsc-watch --onSuccess \"yarn run dev:push\"","watch":"tsc -w","release":"yarn run prepare","preview":"npm pack","test":"jest","test:coverage":"jest --coverage","lint":"eslint src/**/*"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/agile-ts/agile.git"},"bugs":{"url":"https://github.com/agile-ts/agile/issues"},"_id":"@agile-ts/proxytree@0.0.5","_nodeVersion":"12.22.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-KODknVD30ld9xPCyt0UCf0yGcroy/0CHEncAdmTFwEvDSMipMaqFQRsAYZ0tgB4bMfFzab40aUmYTK8XDkwdHw==","shasum":"81c40970707271822a176ee59f93b9230df6311d","tarball":"https://registry.npmjs.org/@agile-ts/proxytree/-/proxytree-0.0.5.tgz","fileCount":12,"unpackedSize":22226,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6ekQCRA9TVsSAnZWagAAq6wQAIn2H4VUE/QCK0lfl6/f\nZSjoooFT5B6HwoTv5D0GipRCV+yoAIHtvG0bl/w61qLVfqjjeYrII1DE4ZJY\n6Sb4+T1ZW/rUDZklAddSVlcdO0GPHQs2lEDaETQcF8PQAV9J28l2aXzlg3AF\nAdM0pYbHTLzAbG/+aLlcEtkxx9CrUBsO45z7LpO4a8WA3BNmhwowm847YeEK\nYZBJtoMqYGo3Apf93cNhhLU7t3+JUM0Yo14f9wmvFsIhsdKC1b8pSzH58AvE\n08kCl73iq+YyydEq9xML6lpucAulJ9JvK7PZamTqCZP74+8E8Avaewwu+idN\n0WBsK1LJGjvyJSZ9IIUjqmAYf0bWZHKau+jwQ661eVoPK98oLQ7gVfQkMPno\n3b1CzzPiJxUQUnn93LRH3dfVDnmcXumcHe0jXieXQxIjbnSckOttS9nu0xqX\nyIIAPdADMWQvi1Fy/0FR8HoWr/Sk5/8BzYoZAI4B5K97akEBP4DhOLfP+2H2\nYT7+KXrn+u5nDsjFp4VDpNxSw3lYFKO46BPsPSE5/UdxQs9322ceNE2wW0eO\n9C1o1Ih5emcjAunCa1wWD8qKnsVT+i0bpN/czS1Umq/nJxnkdiWGZB66r3Rk\nWpCYQYIsWycVj6buYmZEADBgFvw1e7zCRBiqTm2VF64Mw/fXiOeZZ4dUyk+s\ng+dV\r\n=FAl+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDS2vnKFiHvjdK6NPoiYDlHCICdHZ4MjPDBgdPU04TfpgIhAPgp3qVVZ4SvBdkf7LUShlaKjr0bJJySCeifp1tGHVds"}]},"_npmUser":{"name":"bennodev","email":"bennodev19@gmail.com"},"directories":{},"maintainers":[{"name":"bennodev","email":"bennodev19@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proxytree_0.0.5_1625942288101_0.2624537257366888"},"_hasShrinkwrap":false},"0.0.6":{"name":"@agile-ts/proxytree","version":"0.0.6","author":{"name":"BennoDev"},"license":"MIT","homepage":"https://agile-ts.org/","description":"Create Proxy Tree based on the accessed properties","keywords":["proxy","proxy-tree","agile","agile-ts"],"main":"dist/index.js","module":"dist/esm/index.js","types":"dist/index.d.ts","scripts":{"build":"yarn run build:esm && yarn run build:cjs","prepare":"yarn run build","build:esm":"tsc -p ./tsconfig.esm.json","build:cjs":"tsc -p ./tsconfig.json && tsc -p ./tsconfig.production.json","dev:publish":"yalc publish","dev:push":"yalc push","watch:push":"tsc-watch --onSuccess \"yarn run dev:push\"","watch":"tsc -w","release":"yarn run prepare","release:manual":"yarn run prepare && yarn run release && npm publish","pack":"npm pack","test":"jest","test:coverage":"jest --coverage","lint":"eslint src/**/*"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/agile-ts/agile.git"},"bugs":{"url":"https://github.com/agile-ts/agile/issues"},"sideEffects":false,"_id":"@agile-ts/proxytree@0.0.6","_nodeVersion":"12.22.6","_npmVersion":"6.14.15","dist":{"integrity":"sha512-anv1ib0Jd+FlWAt/fxpbmnpSQ2mFSqsg9tEudmWzFmIDdk5lbuLwgjDCVwz90c740QeXW4dKB2JaS2H40zPHsw==","shasum":"dd52d7dfe02c3a4cbea48bbf297159b18bc793bf","tarball":"https://registry.npmjs.org/@agile-ts/proxytree/-/proxytree-0.0.6.tgz","fileCount":16,"unpackedSize":28507,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPuWGCRA9TVsSAnZWagAAKEgP/RgGe7bFDS66nsSS9slu\n/9bkD3cBU5OGOfBe9JDqV4ZuDnnOhKoJ5fvGWsmphc/KyKWifG2Bfnp1qLWs\nZVW3jXTGx3l4K5Ca7wdr5xvHfQ5SO+ffSdRdsE2uJyH5CD29+w7POZfUcW+O\n4s2alM6EqBJ4ahnehrEcXl9FZ1m3rLDoKrZX6qjfPWTcDYx2MKLYUx9DpKsN\nDDMmyOJRyuQqBvF6rT5tOVpzsHf/UrlTs3tjZVXzshbxd4dA3/Hmn2iSBiq6\ndAW0VtBUPW/MdM89Bkw70QUBDj63cZqKTIsrSBZ4jI5ezI88x0imAHeS60vm\nHbYmseZDfo0+mmLjb1EEs3xzF1keV4SH90vmRGZgny4g3jew9tFXQqDMMW6P\n/TGh0IicCVzPI9oxcBRAzcavqXIAVjBhb9XjsBY8y13ubUnAKsxaRQbUlPUu\nUh+lDZ2dCke2P/JHugtna9xW/KbIEbm2fOsq9JtxRR29UOPHRjfV+zTpTLL/\nkWotk6BwTYluJ2V67mhXkUqf3V2oQ/O8DszXvweyDmbMV/hAZ659BU4g6ub/\nBwjreHBCbRL+5u8B4rE5QmebZj2PkGgzgxw8ezOx5GtD5CCaqIYgs2WwUlME\nymdPfBoWTeQwA5j5MPrI1ldij0t2DpV0TEwO8UGQ+rN7qqTZHJXWjiDtDi7i\n/Q+I\r\n=lLl3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDb3MTySRDerSfbkhdD0ECymYjCDHOgBiVegHhOml4VlgIgBK9D0EYKX/sNpFKa1N70HgVCGYsHnNEOdIqtTBYVmog="}]},"_npmUser":{"name":"bennodev","email":"bennodev19@gmail.com"},"directories":{},"maintainers":[{"name":"bennodev","email":"bennodev19@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proxytree_0.0.6_1631511942748_0.7338874878723944"},"_hasShrinkwrap":false},"0.0.7":{"name":"@agile-ts/proxytree","version":"0.0.7","author":{"name":"BennoDev"},"license":"MIT","homepage":"https://agile-ts.org/","description":"Create Proxy Tree based on the accessed properties","keywords":["proxy","proxy-tree","agile","agile-ts"],"main":"dist/index.js","module":"dist/esm/index.js","types":"dist/index.d.ts","exports":{"./package.json":"./package.json",".":{"types":"./dist/index.d.ts","module":"./dist/esm/index.js","import":"./dist/esm/index.js","default":"./dist/index.js"}},"scripts":{"build":"shx rm -rf dist && rollup --c rollup.config.js","prepare":"yarn run build","dev:publish":"yalc publish","dev:push":"yalc push","watch:push":"tsc-watch --onSuccess \"yarn run dev:push\"","watch":"shx rm -rf dist && tsc -w","release":"yarn run prepare","release:manual":"yarn run prepare && yarn run release && npm publish","pack":"npm pack","test":"jest","test:coverage":"jest --coverage","lint":"eslint src/**/*"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/agile-ts/agile.git"},"bugs":{"url":"https://github.com/agile-ts/agile/issues"},"sideEffects":false,"_id":"@agile-ts/proxytree@0.0.7","_nodeVersion":"12.22.6","_npmVersion":"6.14.15","dist":{"integrity":"sha512-xZtZOS/iD6jSM60Vag/r+25VALP3sOimZPOuVCrKcUTxx/dYd9+Kc/HkL8LURyiU0SSErKX9MTXGddykiPGZHg==","shasum":"1de71db7252fb2d2f10dddffb2913322e018b65c","tarball":"https://registry.npmjs.org/@agile-ts/proxytree/-/proxytree-0.0.7.tgz","fileCount":17,"unpackedSize":36471,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIANxRubXtQxx9ifvHYYVYIjotmALC/mChoPqCFp7eQrAAiAcaU4gAMYiYSgu4Lp0/nzUcMxfXIZD5PjMCdCWFn3Biw=="}]},"_npmUser":{"name":"bennodev","email":"bennodev19@gmail.com"},"directories":{},"maintainers":[{"name":"bennodev","email":"bennodev19@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proxytree_0.0.7_1632060250743_0.5270031125546895"},"_hasShrinkwrap":false},"0.0.8":{"name":"@agile-ts/proxytree","version":"0.0.8","author":{"name":"BennoDev"},"license":"MIT","homepage":"https://agile-ts.org/","description":"Create Proxy Tree based on the accessed properties","keywords":["proxy","proxy-tree","agile","agile-ts"],"main":"dist/index.js","module":"dist/esm/index.js","types":"dist/index.d.ts","exports":{"./package.json":"./package.json",".":{"types":"./dist/index.d.ts","module":"./dist/esm/index.js","import":"./dist/esm/index.js","default":"./dist/index.js"}},"scripts":{"build":"shx rm -rf dist && rollup --c rollup.config.js","prepare":"yarn run build","dev:publish":"yalc publish","dev:push":"yalc push","watch:push":"tsc-watch --onSuccess \"yarn run dev:push\"","watch":"shx rm -rf dist && tsc -w","release":"yarn run prepare","release:manual":"yarn run prepare && yarn run release && npm publish","pack":"npm pack","test":"jest","test:coverage":"jest --coverage","lint":"eslint src/**/*"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/agile-ts/agile.git"},"bugs":{"url":"https://github.com/agile-ts/agile/issues"},"sideEffects":false,"_id":"@agile-ts/proxytree@0.0.8","_nodeVersion":"12.22.6","_npmVersion":"6.14.15","dist":{"integrity":"sha512-3Bb5Wjtpe8nT/XLxU5c4wArhImlHCJpn7jTYnJUGrRR0EIjq5ncRvJlC6geM2OWn1msbUtlegnZ/BHO+RX26XA==","shasum":"0ad726fa087a214b93d55689b34373bb7e121add","tarball":"https://registry.npmjs.org/@agile-ts/proxytree/-/proxytree-0.0.8.tgz","fileCount":14,"unpackedSize":43868,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEQMlWKfdqKRGkoJdKbpFcQTuTuF9H7zdMkfofbSpOM4AiEAoG+W+viMC/iACuYHqtLxUdnQWBTu9T2De+mEwwTtSWQ="}]},"_npmUser":{"name":"bennodev","email":"bennodev19@gmail.com"},"directories":{},"maintainers":[{"name":"bennodev","email":"bennodev19@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proxytree_0.0.8_1632422183622_0.09348378058178386"},"_hasShrinkwrap":false},"0.0.9":{"name":"@agile-ts/proxytree","version":"0.0.9","author":{"name":"BennoDev"},"license":"MIT","homepage":"https://agile-ts.org/","description":"Create Proxy Tree based on the accessed properties","keywords":["proxy","proxy-tree","agile","agile-ts"],"main":"dist/index.js","module":"dist/esm/index.js","types":"dist/index.d.ts","exports":{"./package.json":"./package.json",".":{"types":"./dist/index.d.ts","module":"./dist/esm/index.js","import":"./dist/esm/index.js","default":"./dist/index.js"}},"scripts":{"build":"shx rm -rf dist && rollup --c rollup.config.js","prepare":"yarn run build","dev:publish":"yalc publish","dev:push":"yalc push","watch:push":"tsc-watch --onSuccess \"yarn run dev:push\"","watch":"shx rm -rf dist && tsc -w","release":"yarn run prepare","release:manual":"yarn run release && npm publish","pack":"npm pack","test":"jest","test:coverage":"jest --coverage","lint":"eslint src/**/*","install:clean":"shx rm -rf dist && shx rm -rf node_modules && yarn install"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/agile-ts/agile.git"},"bugs":{"url":"https://github.com/agile-ts/agile/issues"},"sideEffects":false,"_id":"@agile-ts/proxytree@0.0.9","_nodeVersion":"12.22.6","_npmVersion":"6.14.15","dist":{"integrity":"sha512-E5wcL0TNPiLGdORvsUvC0DPr6LLdVZ3jupnQxDISLA126gpx7tyWpxyyIYZ299DKbM/ysqSaRTldK26Oq1Njhg==","shasum":"b717b080d07852603371d87db0a817fd6f918092","tarball":"https://registry.npmjs.org/@agile-ts/proxytree/-/proxytree-0.0.9.tgz","fileCount":14,"unpackedSize":44838,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxIR4CRA9TVsSAnZWagAAjywP/2tn9IGdLETObWw6w82O\nUpQBDaWpN8UP77IWZWHVKWfpE6h2GnkPcF+y33eCFN4djfL8ZQClr+5S9Ycs\nnWI2rhe8nC2DnYZG6FtOy7DchiwgmquMkh+WIpXZoMSnfhcdJkdhKd8oYPqA\nzDh0SQtBmj0kkR9Cc2tJVhNp29ZgpI/L9io2GoJKKVS1qGVI1UAj4rXoCNU3\nZh2tjrOey8gdhJEZbZovK8QdbE5Xm+3LWHm2462Ev/F6AY0cfMuYsg6Hmw+J\nb+frbUzOQIuWIdSw7vlqCiI5kN0WTEaH3YpmBPjpxn/bSgd59REhsw/6ENtl\nRhUqxCMYxOqxSfNEwkeBttQucqXov7jMEr4BdcUUxvG6NFkbx9um9mP+TDux\nFY6QDj+2xI12puxXcKxo5O7y1b2QZ0TDLB4TdTvyAkvQqoxxW2QCopNc+h2+\nSv8OFV0XTMem3B7bf4H7M0Vocj17bW7H2sRTtJbUI7b58Fhq2FNWUNk07uzU\nXbBjK3mTyBRiXv9kvsM+1a/n6Y0WGz5/w8LEoF+Hhv7iandUXeyRZoVYxRZm\nbvQKVnX/1lq5vqFJPQ+pgt9EXQQXnnS/FkojVoQZuP98NpN2udKJJOcKB9eo\nzUobQ202CV+njMrnhbFFHWbpR88xtbmZP+Esibxe3vNjeWGhkaKyelZAxa0u\nKL/6\r\n=HkpA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCjRPoZ9ud8pfOkM46CZ6UlNtMHQfxH2iSRhjMyusHrAAIgBqBfM/LjkpXams4gq7xxUXkKiSirHcoV7ZxWWtS+tQ4="}]},"_npmUser":{"name":"bennodev","email":"bennodev19@gmail.com"},"directories":{},"maintainers":[{"name":"bennodev","email":"bennodev19@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proxytree_0.0.9_1634495814167_0.5190568029296492"},"_hasShrinkwrap":false},"0.0.10":{"name":"@agile-ts/proxytree","version":"0.0.10","author":{"name":"BennoDev"},"license":"MIT","homepage":"https://agile-ts.org/","description":"Create Proxy Tree based on the accessed properties","keywords":["proxy","proxy-tree","agile","agile-ts"],"main":"dist/index.js","module":"dist/esm/index.js","types":"dist/index.d.ts","exports":{"./package.json":"./package.json",".":{"types":"./dist/index.d.ts","module":"./dist/esm/index.js","import":"./dist/esm/index.js","default":"./dist/index.js"}},"scripts":{"build":"shx rm -rf dist && rollup --c rollup.config.js","dev:publish":"yalc publish","dev:push":"yalc push","watch:push":"tsc-watch --onSuccess \"yarn run dev:push\"","watch":"shx rm -rf dist && tsc -w","release:prepare":"yarn run build","release:manual":"yarn run release && npm publish","pack":"npm pack","test":"jest","test:coverage":"jest --coverage","lint":"eslint src/**/*","install:clean":"shx rm -rf dist && shx rm -rf node_modules && yarn install"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/agile-ts/agile.git"},"bugs":{"url":"https://github.com/agile-ts/agile/issues"},"sideEffects":false,"_id":"@agile-ts/proxytree@0.0.10","_nodeVersion":"12.22.12","_npmVersion":"6.14.16","dist":{"integrity":"sha512-i6NITBlKqIFYZ85LCVbtWA94n49yGKimYweeoxfvGiucBnjJaa9GavyhX/PWqalN2mowiOMCOWJ0TB77HGffiA==","shasum":"4891f7f9731f0cbdf5aa05d660ad19c7e82d9b95","tarball":"https://registry.npmjs.org/@agile-ts/proxytree/-/proxytree-0.0.10.tgz","fileCount":14,"unpackedSize":46514,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGozp13uDMyhQsW8nQ/A1FzJlrX6/MeBtPl0mjNLpfsSAiA3MM9OJ4KSv8tYb3QVDjjVXUv9EXIA/8mcybZrJBQfgg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjFEH2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmphCA//dVwx3njbFU4oltgZ9JD4I8EQizVhnAQHN8qjHzelHR9uABAM\r\nx67nq7OtqVFjvBjYjUefHUfCbsecFlFbaAuQyQ34Ihtw/DyXkR1wj8/J0bPO\r\n0+Haua+/ec5r72kv5VKhM10DBl867QX1CORsi6PTEh9dzmz4DvkiRoHfoJ/F\r\ncSu6AkYl8uO5SmwyXpM+R7R25UrwCuUJyh1sIE2EiAhBOgcZE0YAQMwQwotv\r\n2mr6PLCHMATftyVmmdkWMx2q103YfrU5cQXxapzlfkrRtqiAYUAYYRO8SB/r\r\nliOAQ9G+v83oWhYjiBp5uv+IApa/VhYFUzfTOqiO+Zfp491KLfoU6y9evZ7H\r\nwYz73X1PL2pptscHAa8htlrWHXnXA31Blw6AjrV+lyJfzzeokIDhP3mxOXK/\r\nHGkf+gA/o3voA5qqcpFBfrpZRmQTD482mXCBb2cnYwr4E6nwk1fdOGWC4u5T\r\n7k/UScoBnExf30ZHdTD0bS4PNUTjh141fFgREInC1awKbii/TzdtBzjTC6XG\r\nKRXUmKINE1c2GEwkYojZKDmqmp/LNQgxUrnfYJAGn4WIQphJpQHz7Rf7p4Mc\r\nQCeTj00TMTDJ/VBEZ+6CJyJ5IyyKKrYCA5OBpGo/WEXXWY+Yq9NJL79S1mNz\r\nesLtaesyNN04acT8jZHAH+YIwQqL+zmhGMQ=\r\n=yn3p\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bennodev","email":"bennodev19@gmail.com"},"directories":{},"maintainers":[{"name":"bennodev","email":"bennodev19@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proxytree_0.0.10_1662271990702_0.15791290105581024"},"_hasShrinkwrap":false}},"time":{"created":"2021-05-08T11:55:57.633Z","0.0.2":"2021-05-08T11:55:58.089Z","modified":"2022-09-04T06:13:10.931Z","0.0.3":"2021-05-15T13:37:47.354Z","0.0.4":"2021-06-27T06:11:33.480Z","0.0.5":"2021-07-10T18:38:08.249Z","0.0.6":"2021-09-13T05:45:42.915Z","0.0.7":"2021-09-19T14:04:10.906Z","0.0.8":"2021-09-23T18:36:23.962Z","0.0.9":"2021-10-17T18:36:54.320Z","0.0.10":"2022-09-04T06:13:10.854Z"},"maintainers":[{"name":"bennodev","email":"bennodev19@gmail.com"}],"description":"Create Proxy Tree based on the accessed properties","homepage":"https://agile-ts.org/","keywords":["proxy","proxy-tree","agile","agile-ts"],"repository":{"type":"git","url":"git+https://github.com/agile-ts/agile.git"},"author":{"name":"BennoDev"},"bugs":{"url":"https://github.com/agile-ts/agile/issues"},"license":"MIT","readme":"# [INTERNAL] ProxyTree\n\n> Create Proxy Tree based on the accessed properties\n\n <br />\n\n <a href=\"https://agile-ts.org\">\n   <img src=\"https://img.shields.io/badge/Status-Beta-green.svg\" alt=\"Status\"/>\n </a>\n<a href=\"https://github.com/agile-ts/agile\">\n  <img src=\"https://img.shields.io/github/license/agile-ts/agile.svg?label=license&style=flat&colorA=293140&colorB=4a4872\" alt=\"GitHub License\"/></a>\n<a href=\"https://npm.im/@agile-ts/proxytree\">\n  <img src=\"https://img.shields.io/npm/v/@agile-ts/proxytree.svg?label=npm&style=flat&colorA=293140&colorB=4a4872\" alt=\"npm version\"/></a>\n<a href=\"https://npm.im/@agile-ts/proxytree\">\n  <img src=\"https://img.shields.io/bundlephobia/min/@agile-ts/proxytree.svg?label=minified%20size&style=flat&colorA=293140&colorB=4a4872\" alt=\"npm minified size\"/></a>\n<a href=\"https://npm.im/@agile-ts/proxytree\">\n  <img src=\"https://img.shields.io/npm/dt/@agile-ts/proxytree.svg?label=downloads&style=flat&colorA=293140&colorB=4a4872\" alt=\"npm total downloads\"/></a>\n\n<br />\n\n## ❓ What is it for?\n\nThe Proxy Tree is an internal library of [AgileTs](https://agile-ts.org).\nIt is used to wrap a proxy around a target object, and its nested objects as you access them\nin order to keep track of which properties were accessed via get/has proxy handlers.\nThis allows AgileTs to restrict paths to these accessed properties.\nWith these paths, AgileTs can optimize the rerender count of Components\nby only rendering them when an (in the Component) accessed property mutates.\n\n### ▶️ Use case in `AgileTs`\n\nFor example, this functionality is used in the `useProxy()` hook,\nwhich is used to subscribe a State to a React Component.\n```ts\n// MyComponent.whatever\nconst myObject = useProxy(MY_OBJECT);\n\nreturn <p>{myObject.data.adressData.street}</p>;\n```\nThe Component (represented in the above example) is only rerendered by AgileTs if `myObject.data.adressData.street` mutates\nand no longer when anything in the object changes. (like it is in `useAgile()`)\nFor instance, if we change `myObject.data.name` the Component won't be rerendered,\nsince this property isn't accessed in it.\n\n### 🌳 Construction of `Proxy Tree`\n\nFirst, the main target object is converted into the root Branch (`.rootBranch`).\nEach Branch represents a particular object wrapped in a [`Proxy()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy)\nand keeps track of its child Branches.\nThese child Branches are created as soon as a certain property in the parent Branch has been accessed.\nThen the accessed property will be transformed into a sub Branch of the parent Branch and gets part of the Proxy Tree.\nThis way, only accessed properties are added to the Proxy Tree.\nThe Proxy Tree isn't aware of the other (not accessed) properties, as they aren't yet relevant.\nAs soon as an unrecognized property is accessed, it is added to the Proxy Tree.\n```ts\n// Orginal Object with sub Objects\nconst original = {\n  a: [{ b: 1 }, { 1000: { a: { b: 1 } } }, '3rd'],\n  b: { c: { d: 'hi' } },\n  c: { a: 'hi' },\n};\n\n// Create Proxy Tree\nconst proxyTree = new ProxyTree(original);\nconst proxyfiedOrginal = proxyTree.proxy;  \n\n// Access Properties\nproxyfiedOrginal.a;\nproxyfiedOrginal.a[0];\nproxyfiedOrginal.c.a;\n\n// Proxy Tree looks like that:\nBranch({\n  a: Branch([Branch({ b: 1 }), { 1000: { a: { b: 1 } } }, '3rd']),\n  b: { c: { d: 'hi' } },\n  c: Branch({ a: Branch('hi') }),\n});\n\n// Access more Properties\nproxyfiedOrginal.b;\nproxyfiedOrginal.a[2];\n\n// Proxy Tree now looks like that:\nBranch({\n  a: Branch([Branch({ b: 1 }), { 1000: { a: { b: 1 } } }, Branch('3rd')]),\n  b: Branch({ c: { d: 'hi' } }),\n  c: Branch({ a: Branch('hi') }),\n});\n```\n\n## ⚡️ API\n\n### `getUsedRoutes()`\n\nReturns the Paths to the accessed properties in array shape.\n```ts\n// Orginal Object with sub Objects\nconst original = {\n  a: [{ b: 1 }, { 1000: { a: { b: 1 } } }, '3rd'],\n  b: { c: { d: 'hi' } },\n  c: { a: 'hi' },\n};\n\n// Create Proxy Tree\nconst proxyTree = new ProxyTree(original);\nconst proxyfiedOrginal = proxyTree.proxy;\n\n// Access Properties\nproxyfiedOrginal.a;\nproxyfiedOrginal.a[0]['b'];\nproxyfiedOrginal.a[1][1000]['a']['b'];\nproxyfiedOrginal.c.a;\nproxyfiedOrginal.b;\nproxyfiedOrginal.a;\n\n// Get route to accessed Properties\nconsole.log(proxyTree.getUsedRoutes()); // Returns (see below)\n// [\n//   ['a', '0', 'b'],\n//   ['a', '1', '1000', 'a', 'b'],\n//   ['c', 'a'],\n//   ['b'],\n//   ['a'],\n// ]\n```\nThe algorithm behind reconstructing the used routes/paths is pretty straightforward and simple.\nIt may not be very efficient, but it works, and that is what counts for now.\n\n<img src=\"https://raw.githubusercontent.com/agile-ts/agile/master/packages/proxytree/static/pathTrackingImage.jpg\" alt=\"pathTrackingImage\" width=\"200\"/>\n\nIn the above image, each blue-circled property is an end accessed property (so b and x).\nEach time a property was accessed, \nthe Proxy Tree counted the `used` property of this Route/Node. \nAlso, between Routes like 'a' or 'c' were accessed and thus incremented.\nThis is due the fact that, by accessing the property `c` via `a.b.c`, you access `a` and `b` before accessing `c`.\nThis way, we are able to reconstruct the paths to the accessed properties \nwith the simple algorithm you can find in the above image.\n\n\n### `transformTreeToBranchObject()`\n\nTransforms Proxy Tree into an easily processable object.\nTherefore, it goes through each Branch (starting at the root Branch) and transforms them into `BranchObjects`.\n```ts\n// Orginal Object with sub Objects\nconst original = {\n  a: [{ b: 1 }, { 1000: { a: { b: 1 } } }, '3rd'],\n  b: { c: { d: 'hi' } },\n  c: { a: 'hi' },\n};\n\n// Create Proxy Tree\nconst proxyTree = new ProxyTree(original);\nconst proxyfiedOrginal = proxyTree.proxy;\n\n// Access Properties\nproxyfiedOrginal.a;\nproxyfiedOrginal.a[0];\nproxyfiedOrginal.c.a;\n\nconsole.log(proxyTree.transformTreeToBranchObject()); // Returns (see below)\n// {\n//   key: 'root',\n//   timesAccessed: 3,\n//   branches: [\n//     {\n//       key: 'a',\n//       timesAccessed: 2,\n//       branches: [{ key: '0', timesAccessed: 1, branches: [] }],\n//     },\n//     {\n//       key: 'c',\n//       timesAccessed: 1,\n//       branches: [{ key: 'a', timesAccessed: 1, branches: [] }],\n//     },\n//   ],\n// }\n```\n\n## 📄 Documentation\n\nSounds AgileTs interesting to you?\nCheckout our **[documentation](https://agile-ts.org/docs/introduction)**, to learn more.\nAnd I promise you, you will be able to use AgileTs in no time.\nIf you have any further questions, don't hesitate to join our [Community Discord](https://discord.gg/T9GzreAwPH).\n\n## ⭐️ Contribute\n\nGet a part of AgileTs and start contributing. We welcome any meaningful contribution. 😀\nTo find out more about contributing, check out the [CONTRIBUTING.md](https://github.com/agile-ts/agile/blob/master/CONTRIBUTING.md).\n\n<a href=\"https://codeclimate.com/github/agile-ts/agile/coverage.svg\">\n   <img src=\"https://codeclimate.com/github/agile-ts/agile/badges/gpa.svg\" alt=\"Maintainability\"/>\n</a>\n","readmeFilename":"README.md"}