{"_id":"composite-class","_rev":"16-982642c85a2856d992459cad29aa268c","name":"composite-class","dist-tags":{"latest":"2.0.1","next":"3.0.0-1"},"versions":{"0.1.0":{"name":"composite-class","version":"0.1.0","keywords":["composite","design","pattern","es6"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@0.1.0","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"e9bac8e559fe7447e41f485910f6dff2c9197554","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-0.1.0.tgz","integrity":"sha512-6d+Wf/FzyJRQZ6+GIfb2rZ3nNqvjRRogECcQDecF8p6ZN+vcqtobz2PokiMm5UT13SMo6KSDgAdK6Z9ZYcx3Zw==","signatures":[{"sig":"MEUCIQCLHZYxkHs7DhjNLg0BwvowPBSoQ41JQh15RcBUQYL3YAIgCC+UvzewhUqWRLvk5YQPdDY9qdFK2MDNm5EpuBre0V0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/composite-class.js","_from":".","_shasum":"e9bac8e559fe7447e41f485910f6dff2c9197554","engines":{"node":">=0.10.0"},"gitHead":"bb7a50fc8f14ba6509df6f16b3d6b25ee192cd31","scripts":{"docs":"jsdoc2md -t jsdoc2md/README.hbs lib/*.js > README.md; echo","test":"tape test/*.js"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"3.7.0","description":"composite-class","directories":{},"_nodeVersion":"5.5.0","_npmOperationalInternal":{"tmp":"tmp/composite-class-0.1.0.tgz_1454958392651_0.7318088072352111","host":"packages-9-west.internal.npmjs.com"}},"0.1.1":{"name":"composite-class","version":"0.1.1","keywords":["composite","design","pattern","es6"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@0.1.1","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"f82fd0b034eb807899cdb367a71fb9bd5414788d","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-0.1.1.tgz","integrity":"sha512-JzatpKHk918C2RXMd3k46H9sVabxvF4ZivssdsxyRvGj9qotIzHuqbHRap9hRQSCEDCgqq4tLcAPc7p2S1Ysnw==","signatures":[{"sig":"MEUCIDqnhdphuFksmrfDMZR5h87em0VjB5SVBxYkT2T0UzxdAiEArl7N9G7G8oa/MLTqszl8SJBchBmzTat9J9IBGnzxULs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/composite-class.js","_from":".","_shasum":"f82fd0b034eb807899cdb367a71fb9bd5414788d","engines":{"node":">=0.10.0"},"gitHead":"de24297192e592199b3af188c0829b064b36bf26","scripts":{"docs":"jsdoc2md2 -t jsdoc2md/README.md lib/*.js > README.md; echo","test":"tape test/*.js"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"3.7.3","description":"composite-class","directories":{},"_nodeVersion":"5.6.0","devDependencies":{"tape":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/composite-class-0.1.1.tgz_1455723390283_0.6529268086887896","host":"packages-6-west.internal.npmjs.com"}},"0.1.2":{"name":"composite-class","version":"0.1.2","keywords":["composite","design","pattern","es6"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@0.1.2","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"8eb9bdcfc537f067f91b775c8563d6edbc956cde","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-0.1.2.tgz","integrity":"sha512-8da9oqwFrakAjlXllVRbob4b+Nil7/KthayLYadVzWuYZJS1kMvzcLdbYi2B6z4aWmS4eEQ9Ue7ONELwp6D6Lw==","signatures":[{"sig":"MEUCIDUCwHJ01i/k6uuZeuXba0SFOwxwV9oOtUdCPpA2smYQAiEAlXvtjPYq9Xctcr2CpyNoYVjGAu3YAJEH4gaWzxSU5HI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/composite-class.js","_from":".","_shasum":"8eb9bdcfc537f067f91b775c8563d6edbc956cde","engines":{"node":">=0.10.0"},"gitHead":"9b642d3e4dd0bc426c455558575bd1db4abbf136","scripts":{"docs":"jsdoc2md2 -t jsdoc2md/README.md lib/*.js > README.md; echo","test":"tape test/*.js"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"3.7.5","description":"composite-class","directories":{},"_nodeVersion":"5.7.0","devDependencies":{"tape":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/composite-class-0.1.2.tgz_1456423431314_0.5532066212035716","host":"packages-9-west.internal.npmjs.com"}},"0.2.0":{"name":"composite-class","version":"0.2.0","keywords":["composite","design","pattern","es6"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@0.2.0","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"3c6275a9b828f449744888123a441342b32f343f","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-0.2.0.tgz","integrity":"sha512-pQJSRbtuqdvXBt6neukjlhlG0XdPDmgSfD+8XTeQuTLgzpHTwZsfGRY6bhX/lq1Rs9JEsz2TEl3KkAKvkkfBJw==","signatures":[{"sig":"MEQCIE2alnCNbPuziO87lwBhvRWwv5XFguv+ftsWzRJyvhjQAiB6DOf0WuhXFAe/L9RJPzdsLDtfiX6eep5XN8T2KtuURg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/composite-class.js","_from":".","_shasum":"3c6275a9b828f449744888123a441342b32f343f","engines":{"node":">=0.10.0"},"gitHead":"c3a055355133f9a6d5f23b57a4abc7057c062dca","scripts":{"docs":"jsdoc2md2 -t jsdoc2md/README.md lib/*.js > README.md; echo","test":"tape test/*.js"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"3.7.3","description":"composite-class","directories":{},"_nodeVersion":"5.8.0","devDependencies":{"tape":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/composite-class-0.2.0.tgz_1458132099263_0.23079805774614215","host":"packages-13-west.internal.npmjs.com"}},"0.2.1":{"name":"composite-class","version":"0.2.1","keywords":["composite","design","pattern","es6"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@0.2.1","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"75d0b01d23fac110a2f31c3577726a67bd7b729a","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-0.2.1.tgz","integrity":"sha512-0TvwhVecHHO/Z+vHlbugmB4E682/aVtphoLzGNSGrHtMKHwe/CQgUSLE5huPBQyPlkScZigm815ZsKI888TD6A==","signatures":[{"sig":"MEYCIQCsWsc8HEdQveJl/WiwZbZmO5J0bc4nHCDqymQE4pgVsgIhALqaeTq6fgw/Zl3RMZCtamnZp/dUa5aCyX1aGfJq+74c","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"composite-class.js","engines":{"node":">=4"},"gitHead":"44904c32b3bc7c1c1af34a40833afb87c8bf1867","scripts":{"docs":"jsdoc2md -t README.hbs composite-class.js > README.md; echo","test":"test-runner test.js"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"5.0.2","description":"composite-class","directories":{},"_nodeVersion":"8.0.0","dependencies":{"array-back":"^1.0.4","find-replace":"^1.0.3"},"devDependencies":{"test-runner":"^0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/composite-class-0.2.1.tgz_1496530713477_0.7475566396024078","host":"s3://npm-registry-packages"}},"0.3.0":{"name":"composite-class","version":"0.3.0","keywords":["composite","design","pattern","es6"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@0.3.0","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"3c05d56aca1cfadec6a21ce0b9d663255e32e040","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-0.3.0.tgz","fileCount":10,"integrity":"sha512-DzKxnX8JoIxQrJTnaTjfcmpU3zdN1mExWguw/rF23ZDFpWBMInXGj04PP9TzwDXmKO0HHz+hMsYLsCD2RISc5g==","signatures":[{"sig":"MEQCIFXnr4GZTj3LcIMXkhKqk9AJBbKBw1m58PBfU32WRxhmAiBLOpLBiS7YIl/GBF0S8CBDn+azxoCQdg0zp9QXIx3otA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcISzRCRA9TVsSAnZWagAA3rMQAIkZIf5uAs7kq9ek6rI8\njg/BXw+5FVuRChDpatcIjMuGCuGjXNBrQSi7ApsfZi8SpkKSkspKQCfJhMbh\nIU6ck5Ii4uVILCs3E238NTuHyXXxMJ8OZ3NaWhx7O6cAciXVfr4T4KDwAsRQ\nIhDyrwAOL+zACcwu+HfoZiwqfbh7APbubISCtc4skAIh8NJBX4fwuglQyZe9\nMTgkDnDSjvDSOmBpANLIvIAtW4z9ifP38AEYJ0PlL2Jwua0KQSB6Qbo4aEuT\nTRz4ZYB+6KfobeZGaqg3aNGqTkG0aYWwFxiyUU5ZrB6I++gpamAW9LhoA3Mc\nXqJGUdQxAZbQp/VTetdj/cUJolyuC0En7HQuOTSGpbbDJK9ukOASKrJ+rCZn\n8+waqzFj9nFYbKpABVD9DqmvMO7bdC2XmZ9FYpvNFv+eJtXn/fXXjQUPXTaX\nYFs0CFfWcrfmi3lUaTOArGhZihrY6kve+hQDpx4GWwdt55a3KmHt7fXhScqC\n3jr6nje7gVw9AjMeedBGj3MNP6GMSrOOtIbJH5r0P3awJ8gOwQfhl+IyYe/0\n3qrQ9nqzaMCcKXGaurfSYuKe2ZpvWGs3o38lcsnCdXGQQXnbKkaJ9jAkyUkM\n0b/qilQw45zuc4sMxm8xINOgvoqrwiUgNc/x4vF081dttt8YluMj5ZnbmJz5\nIwvg\r\n=ppAX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","engines":{"node":">=6"},"gitHead":"99488add4534473ab2cdf3c52db0400497a077ec","scripts":{"dist":"rollup -c build/index.config.js","docs":"jsdoc2md -c build/jsdoc.conf -t README.hbs index.mjs > README.md","test":"npm run dist && test-runner test.js"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"6.5.0","description":"A general purpose composite class","directories":{},"_nodeVersion":"11.5.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"rollup":"^0.68.2","test-runner":"^0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/composite-class_0.3.0_1545678032436_0.6182518089208608","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"composite-class","version":"1.0.0","keywords":["composite","design","pattern","es6","isomorphic","load-anywhere","tree"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@1.0.0","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"6ae3e54fb6313e2ccd2edfc1d87ef31ace06a5bf","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-1.0.0.tgz","fileCount":6,"integrity":"sha512-WhFlThXtN1DkSWXaQBvZdnjblRWSnKYpI0rHObzQItuv1MleJ1FidaumUmTQoCtA8gaAArrU7YcJM7ncKgKdKg==","signatures":[{"sig":"MEYCIQCIZIFvPPv4q01+osIwQIjaNcBM+tzWVWecKMMFERgSfQIhAIappp+9/h4trotnvUBK8mhrs6xoRDJT2g+njZr3dzs0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21195,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdwBICCRA9TVsSAnZWagAA1EoP/3qro73qXveCXn4M8Nvr\nWI0f0r/aLDQ8g0DjXKktOr4pjn7yhU2MBJLEw9QVSSNpMJCNplGKOfu8LfbF\naIGiiAHRPZuGY2CRk/DHRNlRMWq5+/nq3HY7DXpr0J9wqHrcXlXljsAVRabg\nR31uZ7k+T+0HPaRJyL6xabpX1a5CrBKLMSis6F4mNF7DlYqcyG+1Tm+82mZE\nUu/bCjY82+sFyO6fea8uiXT/E+9lLYJygII+nN4tZMLw0elAzJa/WNYA92Bg\nfb2nZlthzdxBnr5+QkOWLepvM2D9r9lXgI7vGzoDgTXfW+4l8baX1f5S65T/\nnumT7huVNesPZh+JlCbFt2gkQY+U0ex7zlvDLCwZ6TVIlmS0LheVmppQ/7GJ\nPgbyOobvtGm5IxHK7n5POiX79GDArAJOLzFt2GoB2rnkKBRvojC7XHmG1N7m\npj1SYr+2DadXY5YU5S4J4QG3AOpRrgbOqRCmMSGYTq0CjHFFxtJQipCWrs1p\nMfa2ClYo8NgJc07cgcG0UelZIiFIKKCR8d+ETyuPv9EjVxWDOElHpQmCVoJy\nZcejZYbLE8JmPlYXPruFFUo3VvDR6Qm9SH+SwjMvaT5Dw6rhBA0enl0HUw4H\nMSKkI/1FVGs/PTGG7RrQav1JV0gUCTJrGNl7m4WgtobXpIROppK6nYfxXVSZ\nRwiS\r\n=qrK/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","engines":{"node":">=8"},"gitHead":"da78c522d9ef3074a25c87addbbd44a9905b59a1","scripts":{"dist":"rollup -f umd -n Composite -o dist/index.js index.mjs","docs":"jsdoc2md -c jsdoc.conf -t README.hbs index.mjs > README.md","test":"npm run dist && test-runner test.js"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"standard":{"ignore":["dist"]},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"6.12.1","description":"An isomorphic JavaScript class for building composite structures. Suitable for use as a super class or mixin.","directories":{},"_nodeVersion":"12.12.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"rollup":"^1.26.3","test-runner":"^0.6.2","jsdoc-to-markdown":"^5.0.2"},"_npmOperationalInternal":{"tmp":"tmp/composite-class_1.0.0_1572868610484_0.4842095572833063","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"composite-class","version":"2.0.0","keywords":["composite","design","pattern","es6","isomorphic","load-anywhere","tree"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@2.0.0","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"c67f44c00135747e9bc1a624ff52463c3b8ef26a","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-2.0.0.tgz","fileCount":6,"integrity":"sha512-w812SnapTRsQFlKUiD1ALXt8BiYO9N0+ZNJupnP0GECVMWFGrkpowLI96f7hQJ3VJ5yzJd5FLf5RdpM8HAUWAA==","signatures":[{"sig":"MEUCIEizwRUFcqR4J8cLXvigBWspYXq8CIkQ3UWFoh0mdFBlAiEAuNtLXThUtJ220ZvIb6/z6d+BdY+MlCwEVAwaF1ZLQfY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21376,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzwdlCRA9TVsSAnZWagAAktIQAJUdzop0AGTElXtgfEr5\nCix6yQpjwlY4+ETFqVFmTG9JqjL4A01YSFMqXVhoAY13KviaXYj8gHI0sZ9w\nmJcabbHauCE361+2i9nIYY04XwOXXWmu4CrtP4jXxaeEFdm5SbLsfMmIwxc4\nKc+9GLPddMmpExxuSIbBg5p16d4ZY8hQJ/k00a+iswiyQnW9yC9RtDvHoAk8\nH0ssn71spq1fyUjfmzt4yKinKh0dzpvyu7q/qCLKB4Syr56eWc/uSaKnxCfG\ny03iKzxAYS8AwElkcnxjNCjvhBXZbWB/VFO0xrkFHgTSfx5+CDT5vOZV7oXA\nyKthEQH3Qtcd/dmZpTQ48tsLMET/97VhsG5KjjeUcMqCN/BnIOZIQ306m/Lh\n7LAUTdS6dLX0us1e2FNcrwuk+pBVydq/FoZIs2QRmvr5+xeTa0391pUhMTCc\nXHWklSkA9fADe7zu4qRxDL1KPSXg9SfjurI1dlixVwYVf6BiMq4ajrwQFpbI\n3fjEgbeXFVW7HoiudbrhKcFdfMxxZlRk627iBX/APZFarYndQVYy5UsgiEkJ\nVVO+WZYbTeTfNN//yfHauwwBKRmBzFnMutxHnZyUPlVz7ELd4wZm3FEbc/3L\nihME9nYcPIvqkntNf+En7NeZnFjfXgWXAbBo5od0/g8iIQHXyBSTjU58bnq7\ncx6F\r\n=wz3e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","module":"index.mjs","engines":{"node":">=10"},"gitHead":"2912f5bc209a9dfb964e79af74ad2a475578cef2","scripts":{"dist":"rollup -f umd -n Composite -o dist/index.js index.mjs","docs":"jsdoc2md -c jsdoc.conf -t README.hbs index.mjs > README.md","test":"npm run dist && esm-runner test.mjs && web-runner test.mjs"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"standard":{"ignore":["dist"]},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"6.13.0","description":"An isomorphic JavaScript class for building composite structures. Suitable for use as a super class or mixin.","directories":{},"_nodeVersion":"12.12.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"rollup":"^1.27.0","esm-runner":"^0.2.1","@test-runner/web":"^0.2.2","isomorphic-assert":"^0.1.1","jsdoc-to-markdown":"^5.0.2"},"_npmOperationalInternal":{"tmp":"tmp/composite-class_2.0.0_1573848933394_0.912439794787808","host":"s3://npm-registry-packages"}},"2.0.1":{"name":"composite-class","version":"2.0.1","keywords":["composite","design","pattern","es6","isomorphic","load-anywhere","tree"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@2.0.1","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"3fa7ad17a120f202350eace1d5324694db48075a","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-2.0.1.tgz","fileCount":6,"integrity":"sha512-zEUaKe0wIkAMonjQPZPm4w7aylosaMjqGpHynYT2V05q02I93CWfBxp3kV2iB7anvc/aDvCJN36FzFco3c788A==","signatures":[{"sig":"MEQCIFa+svPrS1wOXXNiV2stAHnEx/GKi62FTSvFJ6mJAIFMAiAUS4fu+itLSLLsX8O8Q2BZtAFWsLL/PH32UdNVlg7wmQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21684,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5r1ICRA9TVsSAnZWagAAn3EP/jy0MZ2wOwfhtKJb6mUt\n+enhwK3oet44iaL2tKNZKM3xbbk9T45PouBT18W2x2WtraOwvliARPwMAGHJ\nw14kkdkoamzSbVr4tAqj6X5OyztkqIWRyQUOi2PCoeO0s+5oFAg1lyrzusbR\nY5GoA79ZcbWCw340HHrgX7hjRYxAx8JXiHzIcl/25psY1L/RCzI57sgw4c0V\n/B2NdA1wOL/3O0e80ZsslP5v5/Z8lXPwIDWi9Ixx7poHp3u7EhuK/ZlTV74J\nUkmHm0MoeeK3PFJwgBIxrOqqNSJte8RWAKsqdXqjCJohO0jh2qDIPFy30Mhj\namWb669TeDttGBsyhMYqXXw6/y6kLsgCRavWHDWnWSda6hYfMGqtBEm7ztSe\nkPO9M+FaNMay6U9Fn/nL9/uIAsqKkBwsPEZMZrkGxXwiLCaHT2oXHpNJuAU8\n7r7XrdPTwnXyYP+cXAZvLAUOSqQ0v3Okd9SuvVljGkjcMeobx8QEKwCnmZDn\nkVW49B+jN64zUqiOLRS+KGg8RDR5pcoMXxyFyDoWr097VBBWg/TSpSiV/Hdy\nJ+9MLaD8L/VM7MvPIf3m2tilgVdP2IkFoM+LVYlpJyGR8vknTecafjCbGiy1\ng8aWBDA5uu6JBfAwy0YB0hnXUxY7IGB1IzeN1oV5LY6g6+8050x3bacS86np\nu3wD\r\n=PJxU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","module":"index.mjs","engines":{"node":">=10"},"gitHead":"cf1913fbfb17fad44fc69f7edd7f4f42d2fbfcc6","scripts":{"dist":"rollup -f umd -n Composite -o dist/index.js index.mjs","docs":"jsdoc2md -c jsdoc.conf -t README.hbs index.mjs > README.md","test":"npm run dist && esm-runner test.mjs && web-runner test.mjs"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"standard":{"ignore":["dist"]},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"6.13.1","description":"An isomorphic JavaScript class for building composite structures. Suitable for use as a super class or mixin.","directories":{},"_nodeVersion":"13.2.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"rollup":"^1.27.8","esm-runner":"^0.3.3","@test-runner/web":"^0.3.2","isomorphic-assert":"^0.1.1","jsdoc-to-markdown":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/composite-class_2.0.1_1575402824204_0.4101537090700327","host":"s3://npm-registry-packages"}},"3.0.0-0":{"name":"composite-class","version":"3.0.0-0","keywords":["composite","design","pattern","es6","isomorphic","load-anywhere","tree"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@3.0.0-0","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"fc0f278f2a714205d754f80a63375564db8e2ec4","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-3.0.0-0.tgz","fileCount":5,"integrity":"sha512-MAzA4AGQ/SyptD2hF/77yqhmC4h+G9Us8sb1ufrr7Ik4WAf9eYxkXEWowf6p7dSOEzEdfIUw6CnfUOOz1fonUQ==","signatures":[{"sig":"MEUCIBJ9MdRGmAaMUGj0HxXUcAkEu4xiltexzcNusU932k8VAiEAhbTsPRvBaRVzC+arzRP/DXU5pgT3JtP++ulhpT5PNB0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":19332},"type":"module","engines":{"node":">=12.20"},"exports":{"import":"./index.js","require":"./dist/index.cjs"},"gitHead":"e4dbbd2d32bee53a32506f9eb2ac7dee168e29f8","scripts":{"dist":"rollup -c","docs":"jsdoc2md -t README.hbs index.js > README.md","test":"npm run dist && npm run test:ci","test:ci":"test-runner test.js"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"standard":{"ignore":["dist"]},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"10.8.1","description":"An isomorphic JavaScript class for building composite structures. Suitable for use as a super class or mixin.","directories":{},"_nodeVersion":"22.4.1","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.18.1","test-runner":"^0.10.1","jsdoc-to-markdown":"^8.0.1"},"_npmOperationalInternal":{"tmp":"tmp/composite-class_3.0.0-0_1721386948065_0.6912157249859707","host":"s3://npm-registry-packages"}},"3.0.0-1":{"name":"composite-class","version":"3.0.0-1","keywords":["composite","design","pattern","es6","isomorphic","load-anywhere","tree"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","_id":"composite-class@3.0.0-1","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"homepage":"https://github.com/75lb/composite-class#readme","bugs":{"url":"https://github.com/75lb/composite-class/issues"},"dist":{"shasum":"a1793c8e39ead42be57d6608f8badbf19ad4e2a9","tarball":"https://registry.npmjs.org/composite-class/-/composite-class-3.0.0-1.tgz","fileCount":5,"integrity":"sha512-ohG0tUjdPPjQHP0HvU1tMTgo1sejCoHMfb2RodxwEUxnMLIM4N7g8vwqsZx4Vk3C7wxLHmAenBhuO6hOloHteA==","signatures":[{"sig":"MEYCIQCnzok5aQH4qOB8kCuudLHLEdYhHrPYotyyj0FP8ynu4AIhAPxR53mO4pgpQR92ZJlLUEiRuXZ9sOAHy3eLSMeWxIcE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":19138},"type":"module","engines":{"node":">=12.20"},"exports":"./index.js","gitHead":"fc766bc74d608b558d207ddb17a91a90ae037f18","scripts":{"docs":"jsdoc2md -t README.hbs index.js > README.md","test":"test-runner test.js"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"standard":{"ignore":[]},"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"_npmVersion":"10.8.2","description":"An isomorphic JavaScript class for building composite structures. Suitable for use as a super class or mixin.","directories":{},"_nodeVersion":"22.6.0","_hasShrinkwrap":false,"devDependencies":{"test-runner":"^0.11.0","jsdoc-to-markdown":"^8.0.3"},"_npmOperationalInternal":{"tmp":"tmp/composite-class_3.0.0-1_1724351041683_0.5896715420932022","host":"s3://npm-registry-packages"}}},"time":{"created":"2016-02-08T19:06:35.586Z","modified":"2024-12-06T00:07:38.715Z","0.1.0":"2016-02-08T19:06:35.586Z","0.1.1":"2016-02-17T15:36:34.309Z","0.1.2":"2016-02-25T18:03:54.082Z","0.2.0":"2016-03-16T12:41:41.477Z","0.2.1":"2017-06-03T22:58:34.441Z","0.3.0":"2018-12-24T19:00:32.605Z","1.0.0":"2019-11-04T11:56:50.611Z","2.0.0":"2019-11-15T20:15:33.497Z","2.0.1":"2019-12-03T19:53:44.558Z","3.0.0-0":"2024-07-19T11:02:28.205Z","3.0.0-1":"2024-08-22T18:24:01.846Z"},"bugs":{"url":"https://github.com/75lb/composite-class/issues"},"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","homepage":"https://github.com/75lb/composite-class#readme","keywords":["composite","design","pattern","es6","isomorphic","load-anywhere","tree"],"repository":{"url":"git+https://github.com/75lb/composite-class.git","type":"git"},"description":"An isomorphic JavaScript class for building composite structures. Suitable for use as a super class or mixin.","maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"readme":"[![view on npm](https://badgen.net/npm/v/composite-class)](https://www.npmjs.org/package/composite-class)\n[![npm module downloads](https://badgen.net/npm/dt/composite-class)](https://www.npmjs.org/package/composite-class)\n[![Gihub repo dependents](https://badgen.net/github/dependents-repo/75lb/composite-class)](https://github.com/75lb/composite-class/network/dependents?dependent_type=REPOSITORY)\n[![Gihub package dependents](https://badgen.net/github/dependents-pkg/75lb/composite-class)](https://github.com/75lb/composite-class/network/dependents?dependent_type=PACKAGE)\n[![Node.js CI](https://github.com/75lb/composite-class/actions/workflows/node.js.yml/badge.svg)](https://github.com/75lb/composite-class/actions/workflows/node.js.yml)\n[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](https://github.com/feross/standard)\n\n# composite-class\n\nAn isomorphic, load-anywhere JavaScript class for building [composite structures](https://en.wikipedia.org/wiki/Composite_pattern). Suitable for use as a super class or mixin.\n\n## Synopsis\n\nThe `Composite` class implements the [composite design pattern](https://en.wikipedia.org/wiki/Composite_pattern), useful for building and traversing tree structures. For example, build a composite structure representing the French government:\n\n```js\nconst Composite = require('composite-class')\n\nclass Person extends Composite {\n  constructor (name, role) {\n    super()\n    this.name = name\n    this.role = role\n  }\n\n  toString () {\n    return `${this.name} [${this.role}]`\n  }\n}\n\nconst government = new Person('Gouvernement de la République française', 'Government')\nconst headOfState = new Person('Emmanuel Macron', 'Head of State')\nconst primeMinister = new Person('Édouard Philippe', 'Prime Minister')\nconst ministerArmedForces = new Person('Florence Parly', 'Minister of the Armed Forces')\nconst ministerEconomy = new Person('Bruno Le Maire', 'Minister of Finance and the Economy')\n\ngovernment.add(headOfState)\nheadOfState.add(primeMinister)\nprimeMinister.add(ministerArmedForces)\nprimeMinister.add(ministerEconomy)\n\nconsole.log(government.tree())\n```\n\nOutput.\n\n```\n- Gouvernement de la République française [Government]\n  - Emmanuel Macron [Head of State]\n    - Édouard Philippe [Prime Minister]\n      - Florence Parly [Minister of the Armed Forces]\n      - Bruno Le Maire [Minister of Finance and the Economy]\n```\n\nThe `Composite` class implements an [iterable](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols#The_iterator_protocol) interface, therefore can be iterated using standard JavaScript methods.\n\n```js\nfor (const person of government) {\n  console.log('Processing:', person.name)\n}\n```\n\nOutput.\n\n```\nProcessing: Gouvernement de la République française\nProcessing: Emmanuel Macron\nProcessing: Édouard Philippe\nProcessing: Florence Parly\nProcessing: Bruno Le Maire\n```\n\n<a name=\"module_composite-class\"></a>\n\n## composite-class\nAn isomorphic, load-anywhere JavaScript class for building [composite structures](https://en.wikipedia.org/wiki/Composite_pattern). Suitable for use as a super class or mixin.\n\n**Example**  \n```js\nconst Composite = require('composite-class')\n```\n\n* [composite-class](#module_composite-class)\n    * [Composite](#exp_module_composite-class--Composite) ⏏\n        * _instance_\n            * [.children](#module_composite-class--Composite+children) : <code>Array</code>\n            * [.parent](#module_composite-class--Composite+parent) : <code>Composite</code>\n            * [.add(child)](#module_composite-class--Composite+add) ⇒ <code>Composite</code>\n            * [.append(child)](#module_composite-class--Composite+append) ⇒ <code>Composite</code>\n            * [.prepend(child)](#module_composite-class--Composite+prepend) ⇒ <code>Composite</code>\n            * [.remove(child)](#module_composite-class--Composite+remove) ⇒ <code>Composite</code>\n            * [.level()](#module_composite-class--Composite+level) ⇒ <code>number</code>\n            * [.getDescendentCount()](#module_composite-class--Composite+getDescendentCount) ⇒ <code>number</code>\n            * [.tree()](#module_composite-class--Composite+tree) ⇒ <code>string</code>\n            * [.root()](#module_composite-class--Composite+root) ⇒ <code>Composite</code>\n            * [.Symbol.iterator()](#module_composite-class--Composite+Symbol.iterator)\n            * [.inspect()](#module_composite-class--Composite+inspect)\n            * [.parents()](#module_composite-class--Composite+parents) ⇒ <code>Array.&lt;Composite&gt;</code>\n        * _static_\n            * [.mixInto(target)](#module_composite-class--Composite.mixInto)\n\n<a name=\"exp_module_composite-class--Composite\"></a>\n\n### Composite ⏏\n**Kind**: Exported class  \n<a name=\"module_composite-class--Composite+children\"></a>\n\n#### composite.children : <code>Array</code>\nChildren\n\n**Kind**: instance property of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n<a name=\"module_composite-class--Composite+parent\"></a>\n\n#### composite.parent : <code>Composite</code>\nParent\n\n**Kind**: instance property of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n<a name=\"module_composite-class--Composite+add\"></a>\n\n#### composite.add(child) ⇒ <code>Composite</code>\nAdd a child\n\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| child | <code>Composite</code> | the child node to add |\n\n<a name=\"module_composite-class--Composite+append\"></a>\n\n#### composite.append(child) ⇒ <code>Composite</code>\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| child | <code>Composite</code> | the child node to append |\n\n<a name=\"module_composite-class--Composite+prepend\"></a>\n\n#### composite.prepend(child) ⇒ <code>Composite</code>\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| child | <code>Composite</code> | the child node to prepend |\n\n<a name=\"module_composite-class--Composite+remove\"></a>\n\n#### composite.remove(child) ⇒ <code>Composite</code>\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| child | <code>Composite</code> | the child node to remove |\n\n<a name=\"module_composite-class--Composite+level\"></a>\n\n#### composite.level() ⇒ <code>number</code>\ndepth level in the tree, 0 being root.\n\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n<a name=\"module_composite-class--Composite+getDescendentCount\"></a>\n\n#### composite.getDescendentCount() ⇒ <code>number</code>\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n<a name=\"module_composite-class--Composite+tree\"></a>\n\n#### composite.tree() ⇒ <code>string</code>\nprints a tree using the .toString() representation of each node in the tree\n\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n<a name=\"module_composite-class--Composite+root\"></a>\n\n#### composite.root() ⇒ <code>Composite</code>\nReturns the root instance of this tree.\n\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n<a name=\"module_composite-class--Composite+Symbol.iterator\"></a>\n\n#### composite.Symbol.iterator()\ndefault iteration strategy\n\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n<a name=\"module_composite-class--Composite+inspect\"></a>\n\n#### composite.inspect()\nUsed by node's `util.inspect`.\n\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n<a name=\"module_composite-class--Composite+parents\"></a>\n\n#### composite.parents() ⇒ <code>Array.&lt;Composite&gt;</code>\nReturns an array of ancestors\n\n**Kind**: instance method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n<a name=\"module_composite-class--Composite.mixInto\"></a>\n\n#### Composite.mixInto(target)\n**Kind**: static method of [<code>Composite</code>](#exp_module_composite-class--Composite)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| target | <code>object</code> | The target class (or constructor function) to receive the state machine behaviour. |\n\n\n## Load anywhere\n\nThis library is compatible with Node.js, the Web and any style of module loader. It can be loaded anywhere, natively without transpilation.\n\nNode.js:\n\n```js\nconst Composite = require('composite-class')\n```\n\nWithin Node.js with ECMAScript Module support enabled:\n\n```js\nimport Composite from 'composite-class'\n```\n\nWithin an modern browser ECMAScript Module:\n\n```js\nimport Composite from './node_modules/composite-class/index.mjs'\n```\n\nOld browser (adds `window.Composite`):\n\n```html\n<script nomodule src=\"./node_modules/composite-class/dist/index.js\"></script>\n```\n\n* * *\n\n&copy; 2016-24 Lloyd Brookes \\<75pound@gmail.com\\>.\n\nTest suite by [test-runner](https://github.com/test-runner-js/test-runner). Documented by [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown).\n\n","readmeFilename":"README.md"}