{"_id":"@berglund/mixins","_rev":"14-c32f429cd655cc6da542b267d550ff0b","name":"@berglund/mixins","dist-tags":{"latest":"0.0.14"},"versions":{"0.0.1":{"name":"@berglund/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.1","peerDependencies":{"@angular/common":"^12.1.2","@angular/core":"^12.1.2","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"main":"bundles/berglund-mixins.umd.js","module":"fesm2015/berglund-mixins.js","es2015":"fesm2015/berglund-mixins.js","esm2015":"esm2015/berglund-mixins.js","fesm2015":"fesm2015/berglund-mixins.js","typings":"berglund-mixins.d.ts","sideEffects":false,"_id":"@berglund/mixins@0.0.1","_nodeVersion":"14.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-dKWj4lUHWChgecH0HDMquOblgPkA99E0u8ghVQPYXoxIhV29HuFfmbSWcPyj2+mzNWao4Gx6TuP2JZTdI1kbpQ==","shasum":"129e054449f8e8fa886442c2a9bb1b284ba2912c","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.1.tgz","fileCount":226,"unpackedSize":767571,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnUlhCRA9TVsSAnZWagAADp8QAI4EsmC9CRmtVHn/xmsv\nmFUEeDB1h+zK6WjcBUxQoKhkCH56MJSZ8Dk7sL0mcY7H2lQ0XeF+j11fLUx4\nWq+JnQw9iqscc3kmH8MJ6zlrzhZqxbjDgQNp2vYFF8mNBnMAWx0ZjZrqyqIs\nNysbzp8c3u0jaPuPJFm6JZX8mZ7Mbeop6tDapABG5dwAGmeHSjI9b1JoBGEp\n98ivTBhujsxFCoZXSbVnYblgzLiHakkhhuiqe1Up1JFWYOCFuCxb2VjZ7Ady\neDcll/J7k9nL/G/SgHEUIlo7HRuUl1mwB4do4OTABhkJ5MxkZF3stFlKCTUp\n36zdJWMGpjuozv6k7opvLa9DvFzbwz8PR1/BtWSknYoiMKwpqBwKK8M4fqZS\nMVbBmKA9K2mC4v6vh1ftmcMtcK+Qe8uD7fU6CgldP+Qy/LrsGxsVCAQLLNOZ\noelunOZzcLQm9KK3/hOQUkMBIbAUaiE0G3chHZhZalkM/fSkZEF7ARAqXHAm\nEJhkDao4NYsRbn4f8ve5l/HfDALacllbPDwbvJQBW9fQhLUORcAbiboQKVLG\nU5yuocuhZqNjoPK5y71YR1Y9nkKBt+r+avbWLujdT0G7FHyl6xdEvfTW84gx\n2XlVsIOaZYkL4CjP3wGR5cstVIAPPofCf/AlcOUKtAHuVI3S+sHdtL3i9+hW\nfE3c\r\n=+aT6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDfP2GBhvL3TQG8aWbC4OkHak8RtOUM/BJ7Q1+p+AL0iwIhAOXEMCrHmPrICQkPFmnCV0my+2rxXMBT7cr3FX2VjIJi"}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.1_1637697889735_0.5019909156740308"},"_hasShrinkwrap":false},"0.0.2":{"name":"@berglund/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.2","peerDependencies":{"@angular/common":"^12.1.2","@angular/core":"^12.1.2","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"main":"bundles/berglund-mixins.umd.js","module":"fesm2015/berglund-mixins.js","es2015":"fesm2015/berglund-mixins.js","esm2015":"esm2015/berglund-mixins.js","fesm2015":"fesm2015/berglund-mixins.js","typings":"berglund-mixins.d.ts","sideEffects":false,"_id":"@berglund/mixins@0.0.2","_nodeVersion":"14.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-E5qDr8xpI6bsHfk+ikU9WQT1L05b7+ch1daPBo+sy+671Bbw7EIGlDUu4YNdzMiLVOR8cR13YlVCfcV3lQyPOw==","shasum":"83a0cf5fb7dfc2a4f8c85cfee6862a04482ccb05","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.2.tgz","fileCount":226,"unpackedSize":768112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoNj/CRA9TVsSAnZWagAAxyoP/1YIYrH1hw0y5l5Ze2rR\nJtHzaPiA5Iuj9x+YwPbXW2+B+5MENdtIuyXGIReQU2vNpTmjDV92zWYcBHJ7\nx5Ufmk/dyWQLNphA/iv4BbK5Lqw+t2YyWNPm1ZqTvcfiJ8iUzsUVpmmW6XDS\nPWm2zd/GWslidhOwDW9qScIwM3PswExNF4bgJyVwZ55LENqap+fE7YhcYdYu\n5hWh1IU1ylLq0u9RUnVkFINhvA+IU8TiCL70jVfs1V9a/c5Lnm29X0jhxoyS\naCrqHnZgRk4xVq09qx977AYrP9/cBbxNkrOdn2/XCKPQu3P6dT3Rx/WHCKoT\nHHExUE5CmXXsyUbRgNRSSQC8LtylOB047CE0/Y1mQSfk0IHnobjt3TA4IAVa\nchE1MY2TqGHdqyLfYOwNrnQ+ckJjVxLe6qaVTcdv6nAAVSZFa42oBRdF++n5\nQA9fu09Y5u3r4DueBzJRfwOdOYZq6GKHpyO4r/yAlHBRmxC47CgGExGhF7j7\nsqDeDhS+8d5r+guIRBEHFVqGMpFAy+U/fSRWjvvmBdP9Anqx+Yl4oB+9eG4J\nF0rr2hoXYvm5U1B1TL2O+1xYhMka0aNaAuOKfrAxJErhdNH/Kgt2RY/dbeiS\nbvoA+CEfIMLQh9ZkUhugR3cSOghgSiHLpfuS2HLT7jQN5M4FGIpL2KI/MPu9\nPf6/\r\n=IzRj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCYk+KuvvMICuCbsKCTpDEdruytHfE6/R03idMhPmt3KgIhANYP3P3fRm8u3vXOJHALPrwanqIOu7JNkBQYMT4vjJe+"}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.2_1637931263709_0.843472656854616"},"_hasShrinkwrap":false},"0.0.3":{"name":"@berglund/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.3","peerDependencies":{"@angular/common":"^12.1.2","@angular/core":"^12.1.2","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"main":"bundles/berglund-mixins.umd.js","module":"fesm2015/berglund-mixins.js","es2015":"fesm2015/berglund-mixins.js","esm2015":"esm2015/berglund-mixins.js","fesm2015":"fesm2015/berglund-mixins.js","typings":"berglund-mixins.d.ts","sideEffects":false,"_id":"@berglund/mixins@0.0.3","_nodeVersion":"14.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-pr0+ZYmVah7L8Wtot3oxuV0WXvGoKrgQBq+WqiBij/rQzeLN7vNhLs+lM50k3gmg7WN+p+wDKp/I53dLklFiJQ==","shasum":"aed7d27269386f9b2764a5d74e8043358e107d67","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.3.tgz","fileCount":226,"unpackedSize":767897,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpo4eCRA9TVsSAnZWagAAARcP/RW0ZbS0hEvNoI2Is4mB\npbVo/2d6ibbfPQWq9AGN9yqAka30CrS8Aw213DBvbOQQtdYPTl62gCdagd6t\nHlhXNYH42dyFouU4trQG1GP65KLMy1hbvPBLOnUPNaMAfYDm0KH+S2rSiBnD\nRu4fQcjFiiLHwepoqf1klf/joGSnaNH0sh/YisR0sz2drF5sGw9cFU+MLHxr\nMTCy6ofsEkQLoCTxTx4wK3RqKCQ39zku9+NaO1lDdWlpMr+f0ovbUVeY6EIG\nNRrf8IwjJ9SdamkSPQOVWGdoLC3kJz9mFGjWeTw/bIL8qvCUpZCUh2DhCZF5\nXtADsHQw7qknEaJTv+2hvGMJHewelcu9HvUgs9AJpqzFkXj4dA1MbHQECRlE\nTu2auetS0gwN9+2kU5gfA5Mg9n77IsfD9l9Alc1UUcGS5SrAkcwi4S6TcDpR\nGuBUPSryduZjDegLCb25oqvpqTdhe1EG7U5m0QmiJJE+dgVBvuJlGkuCG3go\nEtJIdOkYN4CC+ZKP5swNL8ySyp59Km2QGGigcTISg7vUEqAquwaAUqWUX/2K\nrjo5ou8gXub4NJpsFPQm6U7JwRmJLzn7nWdZNDRV6T4KrsdIcix6BpHelri3\nNgAzNXir80JJ9KIdJXHydjhzrd8Ll8TH7BqDfQrj/TDi+EQ73n6/e7zROKAR\nkmHF\r\n=xPyb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDlXNaoqVwNBy/2nR6u8begNvbG2qAHD3lwXK7hVQBDSAiBMidlKvjNqKYYyln9ilwXM9dy1PRJhb4VIfod3MI14jg=="}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.3_1638305310094_0.2530895608792636"},"_hasShrinkwrap":false},"0.0.4":{"name":"@berglund/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.4","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"module":"fesm2015/berglund-mixins.mjs","es2020":"fesm2020/berglund-mixins.mjs","esm2020":"esm2020/berglund-mixins.mjs","fesm2020":"fesm2020/berglund-mixins.mjs","fesm2015":"fesm2015/berglund-mixins.mjs","typings":"berglund-mixins.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./berglund-mixins.d.ts","esm2020":"./esm2020/berglund-mixins.mjs","es2020":"./fesm2020/berglund-mixins.mjs","es2015":"./fesm2015/berglund-mixins.mjs","node":"./fesm2015/berglund-mixins.mjs","default":"./fesm2020/berglund-mixins.mjs"},"./generators":{"types":"./generators/berglund-mixins-generators.d.ts","esm2020":"./esm2020/generators/berglund-mixins-generators.mjs","es2020":"./fesm2020/berglund-mixins-generators.mjs","es2015":"./fesm2015/berglund-mixins-generators.mjs","node":"./fesm2015/berglund-mixins-generators.mjs","default":"./fesm2020/berglund-mixins-generators.mjs"},"./testing":{"types":"./testing/berglund-mixins-testing.d.ts","esm2020":"./esm2020/testing/berglund-mixins-testing.mjs","es2020":"./fesm2020/berglund-mixins-testing.mjs","es2015":"./fesm2015/berglund-mixins-testing.mjs","node":"./fesm2015/berglund-mixins-testing.mjs","default":"./fesm2020/berglund-mixins-testing.mjs"}},"sideEffects":false,"_id":"@berglund/mixins@0.0.4","_nodeVersion":"14.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-P/c2cGntqAsc2cL3RPCntrJ07TxX4uYOGuk2bPSmHRzcYfT7gbUZlHeQ32XlvJ4/Tnt8rQMatJnp6SP6rRJKAA==","shasum":"f7b6daac789f57792d4374146a802d009c08f79f","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.4.tgz","fileCount":231,"unpackedSize":616878,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr7VgCRA9TVsSAnZWagAAp6UQAJrVsuHEv7PPThQI7iR9\nvbouaXUq0p6fKApOfqtzBjriDU7HpM/wDMzaXeFxf63jpUBhG/vYpRLK8qZ7\nWei8qAOUJLIDdESPDJ1vOUtisR/bvRTNSKHwMyvISKEZqamGA/zgCgzP62CJ\nIbs1fjivhPE2M42qKWP8J9rDvqCOkqauF8RM2LRxuD+BntfjWAN2akGGV8jJ\nvASgClJdMtoPoPLdlNPU1iMQ8SLBFRbtFi/z5bpKynIieJK+5Jeuls5xdP8a\nOFKRoNAVQHIgtIrZg/KqxcvolaZBlODK2B3oKUWczUAdHFkoGXNTYdxaQzbA\nc5nKqPIUOsL2VkAIu7osN7LgM3NJ3FuKmg8s5RP9c8/HxRLHip8ZNaFbzPj0\nwMpRRoT5pp6UHIP/si7ID9BEjwaMJE6mscg4vz1Zsb5uZPP2RxGkX01+fBNw\nzh6XZ/Xr18/Q2/Va9swX24CW0/GqgSIV/UPwEUFCJ/tJtFgi/UD00Y33jLmQ\n2OFFiihWPt4QcWGyy2cYf37tjy9Z5rz9Y9RPczChh1TBzi3cZgXSCmJzwcYC\n7rSFy+az5PY3um+We1aCy5zt/c1g+eJTsGCvaAvEW8VWFw/IGcuxBAE1ToVi\nzuZOeQFq5FcL1pmgiOoQCdMnzsOXNdkm6GCSTnJFMRE04B9UNrsLgh/KiisS\ntbYT\r\n=EjDs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDzEIofSn/WRuPL0pHdXeWw8jWhx1QunXepyr0f494o4wIhANGGK2h4i52O+u8C6dwMwAA6kKc8vVY9sybcOKgvI5xo"}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.4_1638905184260_0.15989163821758434"},"_hasShrinkwrap":false},"0.0.5":{"name":"@berglund/mixins","repositoryUrl":"https://github.com/blidblid/berg/tree/main/projects/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.5","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"module":"fesm2015/berglund-mixins.mjs","es2020":"fesm2020/berglund-mixins.mjs","esm2020":"esm2020/berglund-mixins.mjs","fesm2020":"fesm2020/berglund-mixins.mjs","fesm2015":"fesm2015/berglund-mixins.mjs","typings":"berglund-mixins.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./berglund-mixins.d.ts","esm2020":"./esm2020/berglund-mixins.mjs","es2020":"./fesm2020/berglund-mixins.mjs","es2015":"./fesm2015/berglund-mixins.mjs","node":"./fesm2015/berglund-mixins.mjs","default":"./fesm2020/berglund-mixins.mjs"},"./generators":{"types":"./generators/berglund-mixins-generators.d.ts","esm2020":"./esm2020/generators/berglund-mixins-generators.mjs","es2020":"./fesm2020/berglund-mixins-generators.mjs","es2015":"./fesm2015/berglund-mixins-generators.mjs","node":"./fesm2015/berglund-mixins-generators.mjs","default":"./fesm2020/berglund-mixins-generators.mjs"},"./testing":{"types":"./testing/berglund-mixins-testing.d.ts","esm2020":"./esm2020/testing/berglund-mixins-testing.mjs","es2020":"./fesm2020/berglund-mixins-testing.mjs","es2015":"./fesm2015/berglund-mixins-testing.mjs","node":"./fesm2015/berglund-mixins-testing.mjs","default":"./fesm2020/berglund-mixins-testing.mjs"}},"sideEffects":false,"_id":"@berglund/mixins@0.0.5","_nodeVersion":"16.13.1","_npmVersion":"7.18.1","dist":{"integrity":"sha512-X7Gy2l4aX8ZE+8U4+qQ7GjB6T8ErBTJAN21FjuOwg/qskydNfoUfylam80TH/6Dqn1lvIyanLUJE7CdAewdfoQ==","shasum":"b4b8ba39229544bd66203a88a3d577ee064c42f4","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.5.tgz","fileCount":233,"unpackedSize":635825,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3XtHCRA9TVsSAnZWagAA4eUQAJW7dsL500wTF7Kr0zVa\nIDBNGXLo+gmOuAZWaNKRa6QoCOXL5UC2rSmtTi2uuNmbOTDyj6caJ686dTFo\nOtKhGAXBMCxo5fxIfJoJ9zCvHKfg+M5jPsHMfK+kEd/VIAszsq7sJLYygSiw\nyinm/GPhsNm0erDrdiPKF2K213awEg6JZhKtpCnL8157mvAG02tflAyKZiry\nOUUl8jQDfnlZipkpP+iG/7jX7lJKwp03LPHVjVSfINvi/CQB/2jcVXk4s7V9\nkYTOzsKLCKNsMp17g2tLm++K8CbboLvSv6QHlBhYZrnBGlQ3iCdD0YtKJXTJ\nmfesYqOlmg2WJby18Qjz6SvdEpcDs6h5IBhNnAhN5sS3437Oc+7Fbpw4Roxa\nb0eHM05QAmi/WAM2whWWJbe8YsMgtkFhaQXS2+7Ht0yPP4h27+DZIMO/YgaT\nYT6+km/4WfPtgkcQSfislU5SNEK9T5F6R7XP+u2kwKxbyrTbp2ZJD8ZHsMSH\nygcfsgL58Be6iylqVkQj1858MdBUl7CE+qANw89w5tc8uullgAo35MEkeeVI\nuEkrejFnTNa1CVftFgGnu4o2c5uxTVYooHpvLPEI2OKR6Iryoc/G3xhqkKxS\ny+9zPRmmMoVx3+0CXGjqqv+LGGeRaeWuZWMuuyCgqEa2z6p4li2g8sPb/Jhh\nWopE\r\n=gbWU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDp8jRCBYs6zwjLqRwZB7dkICJYBXgg2lUiOpEs+jAPrwIhAOh1HamwxZjRJbrttbTzmoKQbepYFrQZSL4RFITfTLk6"}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.5_1641904967018_0.23681094487487342"},"_hasShrinkwrap":false},"0.0.6":{"name":"@berglund/mixins","repositoryUrl":"https://github.com/blidblid/berg/tree/main/projects/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.6","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"module":"fesm2015/berglund-mixins.mjs","es2020":"fesm2020/berglund-mixins.mjs","esm2020":"esm2020/berglund-mixins.mjs","fesm2020":"fesm2020/berglund-mixins.mjs","fesm2015":"fesm2015/berglund-mixins.mjs","typings":"berglund-mixins.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./berglund-mixins.d.ts","esm2020":"./esm2020/berglund-mixins.mjs","es2020":"./fesm2020/berglund-mixins.mjs","es2015":"./fesm2015/berglund-mixins.mjs","node":"./fesm2015/berglund-mixins.mjs","default":"./fesm2020/berglund-mixins.mjs"},"./generators":{"types":"./generators/berglund-mixins-generators.d.ts","esm2020":"./esm2020/generators/berglund-mixins-generators.mjs","es2020":"./fesm2020/berglund-mixins-generators.mjs","es2015":"./fesm2015/berglund-mixins-generators.mjs","node":"./fesm2015/berglund-mixins-generators.mjs","default":"./fesm2020/berglund-mixins-generators.mjs"},"./testing":{"types":"./testing/berglund-mixins-testing.d.ts","esm2020":"./esm2020/testing/berglund-mixins-testing.mjs","es2020":"./fesm2020/berglund-mixins-testing.mjs","es2015":"./fesm2015/berglund-mixins-testing.mjs","node":"./fesm2015/berglund-mixins-testing.mjs","default":"./fesm2020/berglund-mixins-testing.mjs"}},"sideEffects":false,"_id":"@berglund/mixins@0.0.6","_nodeVersion":"16.13.1","_npmVersion":"7.18.1","dist":{"integrity":"sha512-KRO1bqEF6orja2MysmfupFoVju9SlAB8o+anYi6DAOe0CJrPxrQGz2PiOZTwzn5jVME/hnEjI2vA/20BHCTysg==","shasum":"6e149c0e021cc1fd34c43d54b8398e35ab96cc9b","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.6.tgz","fileCount":225,"unpackedSize":601419,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6xwyCRA9TVsSAnZWagAABPoP/3/b5LnARFD/iWBets/D\nLdzJc0638HXIpYk/gErV8WnCo5Pk1u17FU1GbkassiDd8Q1r0FRgbOOdlOoh\nLnoyXoZDLoFzVrZz83chlPwmx3depLnOhhqNrFJ8z/qj+Peg+A4JmzV66xTW\nGIhz3Z2eskeXuSmmAuWuY/jyHXgVlBmK8HaKlIIS6W0V0NBvPhwXRtpxkdQV\nvklZTEueFdkSnNcpzqA7MSq/fS+sWJwg7AKdbXrqUGu9oeRTN/DDpmCdzQpq\nKGwtxD7kyyCW0L1pYi6Pks+sw/T4IzcGvHYifzNRrgrkjDW+5gtbdfTnR/De\nxwMILC1hFztsrWWXKPpDREYdU4LjwJGy64hw4LhMkkJrhbLTSRxaVDtQ5d6J\nvvChb1b6JivbfhMSgWEbuoy4Tq7KRqMsgOoHvjWoB6KxSi4QgY2JRVwyJQ+p\nYwkInw95YJIRISv9NASPqxxwuM28+IWuCMXLDtIW2eFfA/J2bQZiNbJaKXd5\nOHJfhlo5ww/o1gh+PB6Nv0P3xVBlUI4pFd9A66BVrjB9qtNlNIUGwFuUZ0yW\n8d85+VqB5BmLBC3HX6COQRTY9VXHzcx++9muvUqxiNIljF2kpYnDtbBqRMIU\ncY1rrtmH9qtW5sNoetLf+ljnBZvMyTtcJXsoUqjTe/hpn7dJ8X+RyRPWUrNE\nz/vS\r\n=h5wb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/K2fRdZLbMpLN/TPkv8toUki6S6HX1ZYOF8l3J+MlNwIhAPmhzJqAU4d4KJZDBL8Kg1XTLBewRHXFCwgnbx0mdw2t"}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.6_1642798130559_0.8480837420883698"},"_hasShrinkwrap":false},"0.0.7":{"name":"@berglund/mixins","repositoryUrl":"https://github.com/blidblid/berg/tree/main/projects/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.7","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"module":"fesm2015/berglund-mixins.mjs","es2020":"fesm2020/berglund-mixins.mjs","esm2020":"esm2020/berglund-mixins.mjs","fesm2020":"fesm2020/berglund-mixins.mjs","fesm2015":"fesm2015/berglund-mixins.mjs","typings":"berglund-mixins.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./berglund-mixins.d.ts","esm2020":"./esm2020/berglund-mixins.mjs","es2020":"./fesm2020/berglund-mixins.mjs","es2015":"./fesm2015/berglund-mixins.mjs","node":"./fesm2015/berglund-mixins.mjs","default":"./fesm2020/berglund-mixins.mjs"},"./generators":{"types":"./generators/berglund-mixins-generators.d.ts","esm2020":"./esm2020/generators/berglund-mixins-generators.mjs","es2020":"./fesm2020/berglund-mixins-generators.mjs","es2015":"./fesm2015/berglund-mixins-generators.mjs","node":"./fesm2015/berglund-mixins-generators.mjs","default":"./fesm2020/berglund-mixins-generators.mjs"},"./testing":{"types":"./testing/berglund-mixins-testing.d.ts","esm2020":"./esm2020/testing/berglund-mixins-testing.mjs","es2020":"./fesm2020/berglund-mixins-testing.mjs","es2015":"./fesm2015/berglund-mixins-testing.mjs","node":"./fesm2015/berglund-mixins-testing.mjs","default":"./fesm2020/berglund-mixins-testing.mjs"}},"sideEffects":false,"_id":"@berglund/mixins@0.0.7","_nodeVersion":"16.13.1","_npmVersion":"7.18.1","dist":{"integrity":"sha512-e/rrrQHpjPTfz8ajpT6xayO5XY9lxyKVqpRyNU9ZO+JScr978hSPKqzYEjWP4O7pkCEDiKEujmin9qh0tAqNCQ==","shasum":"5703474fa53d8a8fb7e6c188ebe8031823d7d8b5","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.7.tgz","fileCount":225,"unpackedSize":601737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6x8WCRA9TVsSAnZWagAAbXMP/RZ7HLH/eqLy3vPdOOcQ\nMSr0Sm+erjYBUflE+/449sQS/3PnUNLl07wc0oYU5/h35MnZ/MiqyeGoHOL9\nAkYaA3G33HcHm2/v/ZGMGcc1fbFbVMkcO9b1Zux5iIf1W0hGP6ZSqkwLhSJ2\nVsAacP/u2MCODuC7sDOqgT2DIXqaG/uhM4EQmEOZwDPIY8BdHLopIwOgZHAc\nz1Z4bxoNKiXqEC6W7qNGC5dOnCsBSZtb/qZHllNt92ESh7FwQ3xGkv5Zwzkx\n021nZ4Ri7I5/4SWDoPehvAHw18on4sI5tragMjeH2eiVj/oXGjPo4ZsiQ6qs\n1WTp6s67We7Ga4YLkP4oomS3Ni4KbQlAdBs9YO6D79VDNvcOntiEnHLYrUA7\n6uHWssdqtSQuKyjx/ba8RrKZkTEh5xcaqSL2FUwmPh1dHI5m9csaButNJqB0\n1zu+Y0cDriI1coPl6Al7OHB2ReS/OTYYNkFl0oDtHvP98626m+r1tNozeirN\nMfFaEh5U/mSs8L7jVrR3Mbimth4/JwzADjh2L8T0XXKW/PzfFcjamtwzUBer\ncJ6M5R5sUmdapkAyWzikYYFyZzxcFrwuxdZFlyCkCWhybDjIQHp5fGPcwi4u\nhsxURuwIle7UGlUyhTxtoDFUU6F3TZ6qXtePyeEISL7kxvtkpa75h4kolQh5\nc6Yr\r\n=kMNg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCl9g5P0MRJU2rGAvVQ5O6kZ8gLDCNQA8o/fG+K2KK+eQIgX+U5vCdqPgAx+SW18H19PuIRt3Ps3wvoMkLxiXNa/aw="}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.7_1642798869830_0.8090959674258862"},"_hasShrinkwrap":false},"0.0.8":{"name":"@berglund/mixins","repositoryUrl":"https://github.com/blidblid/berg/tree/main/projects/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.8","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"devDependencies":{"@types/json-schema":"^7.0.9"},"_id":"@berglund/mixins@0.0.8","_nodeVersion":"16.13.1","_npmVersion":"7.18.1","dist":{"integrity":"sha512-ac4zstUGf+7QtbdXMS4RibZiJP1kJu4i4AeOny8IkRldfcmL6X28Ri076zuGm/fy0Zm5uZeFGkAcfMXeUJemIg==","shasum":"5476c21a8401d9816fde56f099d624ce6a4fb41f","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.8.tgz","fileCount":144,"unpackedSize":92599,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6/nLCRA9TVsSAnZWagAAHvUP/21Wc/CfI6UKUizPQO2e\nlNnOlcAEqWiRUrPvcDltuXRN2MbAZiq/LuEPSDzx9nN+UWXYo6TafTvukvn1\nnB/GVr8iI0W3rMaJvZXZuUNDSHj6yFhQPF1dozVd5FYr5GeoLNxoNVFyEnTM\nUyBsRPJM8mktmLhYL3fS1BU1C5Y1NHmvt+AQgN4Y+9OoGocnFRYGpn9pfjST\n6/kmTgIT9zs/88UwFxpo1V6HnyOY15hpQoC8sXQTuqdxY9RHvAxI6ntHpxpQ\nbKye8NYTDT5J4TKD0iHMf2LqQcR6a3SWyspy2+4CLBoev16wKG8gidP3Mu4K\nqVyOOtg5CcMCEa2Uk9jP+I67oiKz8x2dtzCoFJ9KZPCUMhO1M2mbNuwA+Wry\nIThlp6/Yw8iQBR0+LVrA7QC+K7iIiLeY6Y8rfch4WbMs70UX0N2osJ7Azxzc\nvG9n4iRm3xREDYLZVnY5jL/xLGzWYIaqnM+T0HU+LW2Bca7XuaKDdgtypivR\nS+W4WuNzkIfHwB+QiVnE2Mc+6j4HQn80YqLh8Cy4sYTltcZIh1RaQTOfP0Pq\nM9xDLsyKdN8aIOh4sWAZPQ87oRxcKWen6jhHLI1XH8TSHTr/j1xXGgjH06vM\n6W/29sKESedg0MhYNDtSMCoyOJ1qnNlxVf686Wl4gKCQgGYxN7AZzGdCgUcc\nPTvW\r\n=V8JJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDd60R1aFIPzNuxyqHlQRuvddMtXlGYDNXjR0KdtcfZSQIgaxNJDJHKe3XPA7ruqgJdmRHxR/3ZDzEtAQTC2rCWEFo="}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.8_1642854859123_0.3827560083288084"},"_hasShrinkwrap":false},"0.0.9":{"name":"@berglund/mixins","repositoryUrl":"https://github.com/blidblid/berg/tree/main/projects/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.9","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"module":"fesm2015/berglund-mixins.mjs","es2020":"fesm2020/berglund-mixins.mjs","esm2020":"esm2020/berglund-mixins.mjs","fesm2020":"fesm2020/berglund-mixins.mjs","fesm2015":"fesm2015/berglund-mixins.mjs","typings":"berglund-mixins.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./berglund-mixins.d.ts","esm2020":"./esm2020/berglund-mixins.mjs","es2020":"./fesm2020/berglund-mixins.mjs","es2015":"./fesm2015/berglund-mixins.mjs","node":"./fesm2015/berglund-mixins.mjs","default":"./fesm2020/berglund-mixins.mjs"},"./generators":{"types":"./generators/berglund-mixins-generators.d.ts","esm2020":"./esm2020/generators/berglund-mixins-generators.mjs","es2020":"./fesm2020/berglund-mixins-generators.mjs","es2015":"./fesm2015/berglund-mixins-generators.mjs","node":"./fesm2015/berglund-mixins-generators.mjs","default":"./fesm2020/berglund-mixins-generators.mjs"},"./testing":{"types":"./testing/berglund-mixins-testing.d.ts","esm2020":"./esm2020/testing/berglund-mixins-testing.mjs","es2020":"./fesm2020/berglund-mixins-testing.mjs","es2015":"./fesm2015/berglund-mixins-testing.mjs","node":"./fesm2015/berglund-mixins-testing.mjs","default":"./fesm2020/berglund-mixins-testing.mjs"}},"sideEffects":false,"_id":"@berglund/mixins@0.0.9","_nodeVersion":"16.13.1","_npmVersion":"7.18.1","dist":{"integrity":"sha512-dcm8poKCOtyREZoKBQX2uj3thPsqVkrIgYCKjiOc+nWpp1F5Uf7qcFVz+b8YxDaU6co/UgbJPyv2CROvpTt84w==","shasum":"4063f977049a991980ed495a8aea2cba4ddb7cdb","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.9.tgz","fileCount":223,"unpackedSize":616510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6/voCRA9TVsSAnZWagAApOUP/3YIHLY6B4Ja2+fupWYb\nc71ty2NQbwnvymznCRzgcEhDYxyeyzpVknz7zE+lrPAk9VOiCgop+BWMM2BV\ngx6QSCxqxMnpsrp8RR7pM7+ovti/bKjwqfZI1AZTpCzh0EgIfeSuM23e6IKq\nKHlNoUzdbxsay6Sk4JWMxXrqE/TUP7X1M4tdvyvVkmi6KYS1+hsX5S4rsgrB\nxWCvIaOImkd1Ql4vRrYFRluwlfTMHNkEEfcAkj8kdUMgL0pAYOseMIHYE8J4\nrsL29oiJvAkxKKtvTCaNqrJdllhFFUVD2UMAotCst2L+O0xc9wkqBmqBTKos\nAIuadqRCJOHQhkB7y2F0ZhIQwEmh1PHLhVKbGKL5zyJTiN7VBlc+tmFuZpr6\nMGLeMGrxISnGC9NTBNnnmswxUu+2dC0sVZHWcuYZ8wcUk0GmpuWFPhW3ofOg\nGmW0DR7amceJbw+0Ch2wMuTPAmQEg4axLgqEp/8mzouciMBq7hzmyMuS0KxN\n1E9kc1GBaIBxNRqyb0pHEWM6wF7eKd5lummscziHUnPtGustevUadClSeIed\naMBK91yPU2RhlLH0b2aNhiKoEq2eKtMFDQW4T0rFOj5zYMfiMKRRf+Ot4zQF\np+G1mnpiCA12XBarA4j0TrVPM3N/Go42AOuQslRaIbhAywVGTKr5VH/c1sJi\neIL7\r\n=2Qnf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF1IRfX9U+vYHlb99+txwjLV6hyseDf9Uwg9SbQQ1abWAiBm/uywHApHZSqkw55K9Cf5Q3ieMTo0Qr8H0jJS1+HfzQ=="}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.9_1642855400569_0.7350104111326816"},"_hasShrinkwrap":false},"0.0.10":{"name":"@berglund/mixins","repositoryUrl":"https://github.com/blidblid/berg/tree/main/projects/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.10","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"module":"fesm2015/berglund-mixins.mjs","es2020":"fesm2020/berglund-mixins.mjs","esm2020":"esm2020/berglund-mixins.mjs","fesm2020":"fesm2020/berglund-mixins.mjs","fesm2015":"fesm2015/berglund-mixins.mjs","typings":"berglund-mixins.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./berglund-mixins.d.ts","esm2020":"./esm2020/berglund-mixins.mjs","es2020":"./fesm2020/berglund-mixins.mjs","es2015":"./fesm2015/berglund-mixins.mjs","node":"./fesm2015/berglund-mixins.mjs","default":"./fesm2020/berglund-mixins.mjs"},"./generators":{"types":"./generators/berglund-mixins-generators.d.ts","esm2020":"./esm2020/generators/berglund-mixins-generators.mjs","es2020":"./fesm2020/berglund-mixins-generators.mjs","es2015":"./fesm2015/berglund-mixins-generators.mjs","node":"./fesm2015/berglund-mixins-generators.mjs","default":"./fesm2020/berglund-mixins-generators.mjs"},"./testing":{"types":"./testing/berglund-mixins-testing.d.ts","esm2020":"./esm2020/testing/berglund-mixins-testing.mjs","es2020":"./fesm2020/berglund-mixins-testing.mjs","es2015":"./fesm2015/berglund-mixins-testing.mjs","node":"./fesm2015/berglund-mixins-testing.mjs","default":"./fesm2020/berglund-mixins-testing.mjs"}},"sideEffects":false,"_id":"@berglund/mixins@0.0.10","_nodeVersion":"16.13.1","_npmVersion":"7.18.1","dist":{"integrity":"sha512-8MoqgeGTU3kgfGe4h1CoVV+0gocUGCs7+nGvIT7HqPgrzqcNVhsgs4PX6JuNt1AC+crwQ83YITaXsOLBkOfaGA==","shasum":"71a0b1488847d541081a601bf3afbf98a81d534c","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.10.tgz","fileCount":223,"unpackedSize":616307,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6/y+CRA9TVsSAnZWagAAYVkP/R2mWABT35177b9NV0PZ\nN++GZyFrtA0Wwf+V/MI+LooF927d3FT6do+biM4+nXnxUJT/WrT5kqguF8c9\n8xJ2s4FbjoO4GT8njlX6c17O5Cqf7fEFCUahTr+iVnspEhcln8JvchHDBym7\nZ/kukoQ4uKOflgmbp8jGEajmzCm0gmFFXcjTp8kuEC50YQonF2MZO8YcKO9e\n23EXmVgTICiAUTwJxd5sMsjakRh4kJAGS73HXeyD/wrKQpVWGpVMDZ+fy4y0\nPh7vNH6/7RbD1H4edG5KPU4HcePQGXHJRpN5qfoKCiS0WiDAZiJdcEkzeqUi\nfV1JJsdx07dcslK4XJAp9rGtTncKQ75hRKSBK+2E2L1QeHF7EscAu3ZFHtX+\nnfXEx9T6tzY2fLN3t/N7uNJo/DmrEcRJLeQ7o9kHb209pJK4lORPTCcJH5m3\nmU9H11NoJJXysOTWLa8luika7zxx5mqlu+g1RZiy3qv4G0SRcRd1EUYwRHRq\nsakhKNA7nBx8cqb0wz4ZE7IQtdXLpRYgQ/dcRy4nzQcwxr0KBpDfxw3QXz2O\ntWOiy68Z9YDAaNQsIiwAzA56OXp5tiZvSl7GiX38I/86xvQ7IoJ2lkPIwk8u\najZaf6FIZ58nzTTjXOddyQ8hETYsub7Ya+obU6h3t7LbN8RW58Cha4xF4IFx\nOZLy\r\n=1ITo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/3/V4f0zaGlFEuxwUvK9wgWEb3GqT7M8GY8PSo/88owIgf7uiXOsNrhk7Q4uhYFnkTfWvhHdOMvonp37OK3Neagw="}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.10_1642855614742_0.45785772934866764"},"_hasShrinkwrap":false},"0.0.11":{"name":"@berglund/mixins","repositoryUrl":"https://github.com/blidblid/berg/tree/main/projects/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.11","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"module":"fesm2015/berglund-mixins.mjs","es2020":"fesm2020/berglund-mixins.mjs","esm2020":"esm2020/berglund-mixins.mjs","fesm2020":"fesm2020/berglund-mixins.mjs","fesm2015":"fesm2015/berglund-mixins.mjs","typings":"berglund-mixins.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./berglund-mixins.d.ts","esm2020":"./esm2020/berglund-mixins.mjs","es2020":"./fesm2020/berglund-mixins.mjs","es2015":"./fesm2015/berglund-mixins.mjs","node":"./fesm2015/berglund-mixins.mjs","default":"./fesm2020/berglund-mixins.mjs"},"./generators":{"types":"./generators/berglund-mixins-generators.d.ts","esm2020":"./esm2020/generators/berglund-mixins-generators.mjs","es2020":"./fesm2020/berglund-mixins-generators.mjs","es2015":"./fesm2015/berglund-mixins-generators.mjs","node":"./fesm2015/berglund-mixins-generators.mjs","default":"./fesm2020/berglund-mixins-generators.mjs"},"./testing":{"types":"./testing/berglund-mixins-testing.d.ts","esm2020":"./esm2020/testing/berglund-mixins-testing.mjs","es2020":"./fesm2020/berglund-mixins-testing.mjs","es2015":"./fesm2015/berglund-mixins-testing.mjs","node":"./fesm2015/berglund-mixins-testing.mjs","default":"./fesm2020/berglund-mixins-testing.mjs"}},"sideEffects":false,"_id":"@berglund/mixins@0.0.11","_nodeVersion":"16.13.1","_npmVersion":"7.18.1","dist":{"integrity":"sha512-TPmpOPr7zK52htv3Lqwe9EwnEDBW7V72hr41/nYGon2SXvK29JA9Dps/dZYDpONhlnDhc7pLjHw+g3zWI9JKdA==","shasum":"c6dd2301936d81df076f5bedef28a409bcb041f4","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.11.tgz","fileCount":223,"unpackedSize":618135,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh7AT5CRA9TVsSAnZWagAAJFwP/2z9/W1sOcAblFIWBhoF\nEVSA3SWWQaXDMlNQBJdn78VhqjLSlC9lAfqSd3nljXjb7M7Vv/e1gCWThnCQ\nxgkwylVfvSrjSYrXyer6fiQ9SP4tjyH7E6S3A+W9qStios2tXApMrvnsPcfA\nUaFuJ4jj8wJ21EiGaSvxDgQF5ljahQyv3b+NDNd6AWbRR8hRNiRH8Ni8Mcrp\nzf+Kyg2yvZH3Vo8UzNm5RTwbGT3L88DKUdVogLwMxOYXIUm4WJFw30B++DqA\n8wX02EzRqVVOQGhhvEiOp0D54dyZe1xjvTsxlepdorbe4iId/jvosuBkiKie\nc0YrgTXkQBI58PClvfxwdEnLP5zit5aX5m+haUgaYh/56F/u64vQkJM4G5U8\n98l2DYR9b/1/IKrNMOxfJWOXrLEjfNG1EeXRn9hblaHPJf2vZWoZUqX4emvb\n/pkQgVy2DhfFdyi9VCsoPF9m3dGWzvGFCjv89a9h7chRAkDah1smRlivaIf8\nzZdeXfj/1ldrklk6eOVANzpzZSkD84p1onNb3M684lFUqnxwV+Uso6xYBhDZ\nJ4z4qUR02eh4KuSPjJrm8Lq330fovbWNUeiPU9gU3C3UlNUUPFmoysUcRW//\nZ7txs0o8EKtGtfp0y5zF03bpP4np7VGmTgCk+87rZhk8HhSLvWSCXLmwJJI5\nsJys\r\n=B+tS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAcfB8krQK/by2pEsgIDo0ullMiZsIUNIzssfdNMxKmPAiEAj70mzu0GLm2cKV7I94p49cYxdRhRjYA4RCvPgqPatr8="}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.11_1642857720881_0.8529494570901033"},"_hasShrinkwrap":false},"0.0.12":{"name":"@berglund/mixins","repositoryUrl":"https://github.com/blidblid/berg/tree/main/projects/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.12","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"module":"fesm2015/berglund-mixins.mjs","es2020":"fesm2020/berglund-mixins.mjs","esm2020":"esm2020/berglund-mixins.mjs","fesm2020":"fesm2020/berglund-mixins.mjs","fesm2015":"fesm2015/berglund-mixins.mjs","typings":"berglund-mixins.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./berglund-mixins.d.ts","esm2020":"./esm2020/berglund-mixins.mjs","es2020":"./fesm2020/berglund-mixins.mjs","es2015":"./fesm2015/berglund-mixins.mjs","node":"./fesm2015/berglund-mixins.mjs","default":"./fesm2020/berglund-mixins.mjs"},"./generators":{"types":"./generators/berglund-mixins-generators.d.ts","esm2020":"./esm2020/generators/berglund-mixins-generators.mjs","es2020":"./fesm2020/berglund-mixins-generators.mjs","es2015":"./fesm2015/berglund-mixins-generators.mjs","node":"./fesm2015/berglund-mixins-generators.mjs","default":"./fesm2020/berglund-mixins-generators.mjs"},"./testing":{"types":"./testing/berglund-mixins-testing.d.ts","esm2020":"./esm2020/testing/berglund-mixins-testing.mjs","es2020":"./fesm2020/berglund-mixins-testing.mjs","es2015":"./fesm2015/berglund-mixins-testing.mjs","node":"./fesm2015/berglund-mixins-testing.mjs","default":"./fesm2020/berglund-mixins-testing.mjs"}},"sideEffects":false,"_id":"@berglund/mixins@0.0.12","_nodeVersion":"16.13.1","_npmVersion":"7.18.1","dist":{"integrity":"sha512-f3Y4f12Y2jOkPGK/rm5430PVX4jhDrgg0ArXdmPB9WZ4HIDu0QcIPF3l0Kzv7Kn2mWKl2BaNe+NB3iT/Bl1r4Q==","shasum":"4fdcec79f44634e67faf32f1cbe9027fc0953682","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.12.tgz","fileCount":223,"unpackedSize":618135,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh7UWcCRA9TVsSAnZWagAA/V4QAJzS1YaikPe3gF7T1Kdz\nE4R2LVehz8Q2OsNmLZN5zfPIy80NnZhVa810v2s7VU7Ti/75SKbZD3rfaYPI\nCOmg+NJg0+epjOite4jGGhy2H/Nu6h4liUYvuCfEndD4g6c8oPz2RogzPZ75\nwBGs87iAJ+RNLwpmNPMFhDftOipn9wq9J7sMlCSsxkiRO28d3msscA1NDx2v\nmcEblJYYr3fkdKPX9IPdyv+cZiHiFEK5U9Di1ihDzYvz9WbyXqzohtLjHu7f\n/OQNtCwcu+uJ26oF41f63UrnkVrqExZDtwZDbfODUvIIlOo3y+NDz7pRsr3u\nVRaYaZ2mF0XDxFj9KtpbSRfYZKRixQz2cI5RdRL+Eefej86ctX7DErcx3J1t\n5EOMHqd8eAr0RjM0c6uNgIsHLn3rE7U9EgXbC1eD/Rw/cYFRM0xT42h7p6hb\n0MhMIlOzWxJ6D6t62n+kfofiYgGF0x8pkEbVXAiNW6Z/gREPXesVTI7LbE2S\nFK65N3dQL97VASfQh9+KGfWNQkpEHsNMcqKjNk05OtoSpoewCJ2qfQBu7WU3\nkWFKmnnmAhpI6zzFQo3KX8Q137He7cAHlUzIDQSQtB4lKiWXKTn+BhyySZRL\nsTqESoQXysPSC9vtdXU2/XUjunlPs++jhTXiJNaf1WMrX8mT/YfjXy9ynw42\n5AJ5\r\n=QtQ2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCWQ9LVXccWS7Jjx/tL+E4YoZUQhbAO8mbjmHr322lcRAIgZeiwaFMmyybf7fyYwmNVgyPoKgjW0MqdGfUgeAcXQY4="}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.12_1642939804224_0.6726707617138399"},"_hasShrinkwrap":false},"0.0.13":{"name":"@berglund/mixins","repositoryUrl":"https://github.com/blidblid/berg/tree/main/projects/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.13","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"module":"fesm2015/berglund-mixins.mjs","es2020":"fesm2020/berglund-mixins.mjs","esm2020":"esm2020/berglund-mixins.mjs","fesm2020":"fesm2020/berglund-mixins.mjs","fesm2015":"fesm2015/berglund-mixins.mjs","typings":"berglund-mixins.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./berglund-mixins.d.ts","esm2020":"./esm2020/berglund-mixins.mjs","es2020":"./fesm2020/berglund-mixins.mjs","es2015":"./fesm2015/berglund-mixins.mjs","node":"./fesm2015/berglund-mixins.mjs","default":"./fesm2020/berglund-mixins.mjs"},"./generators":{"types":"./generators/berglund-mixins-generators.d.ts","esm2020":"./esm2020/generators/berglund-mixins-generators.mjs","es2020":"./fesm2020/berglund-mixins-generators.mjs","es2015":"./fesm2015/berglund-mixins-generators.mjs","node":"./fesm2015/berglund-mixins-generators.mjs","default":"./fesm2020/berglund-mixins-generators.mjs"},"./testing":{"types":"./testing/berglund-mixins-testing.d.ts","esm2020":"./esm2020/testing/berglund-mixins-testing.mjs","es2020":"./fesm2020/berglund-mixins-testing.mjs","es2015":"./fesm2015/berglund-mixins-testing.mjs","node":"./fesm2015/berglund-mixins-testing.mjs","default":"./fesm2020/berglund-mixins-testing.mjs"}},"sideEffects":false,"_id":"@berglund/mixins@0.0.13","_nodeVersion":"16.13.1","_npmVersion":"7.18.1","dist":{"integrity":"sha512-u8tDAyDoJO1C7N3jHSQKspjbdxOVTkSQJHVkbNIriTTx8e/MYcvkvdVDPFa71KLAnzSPc7fH8ce8x+Oui1ilrw==","shasum":"517cbd08fbeaee8f577f2cd472eb45d3e8a4c6b0","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.13.tgz","fileCount":223,"unpackedSize":618333,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh/88ICRA9TVsSAnZWagAASVIP/R+stTRCXxauzlbCZ7ga\nje7lo2TqC2aQPFNzRs/2qe+wmf1cLacE3qPrOBRDJLZmqgja5Nn6Kh8/aolx\nN9BfLGOTTQDpZQRRRjsmq8Z89y0X9zBg4eZ5NzXtSOyBIY1TXHBEIkthq64K\n7XFHYx9fS/LWNzG02WIm148yUEJXvPofKU9mFR6H4QTC4ATBLmAsew5AQKnC\nGN/IXO40GjFwmo6Yu1M4eFDSfy/JIDw/mb84V0eEWv3Gx03vDWwGRpyhArML\nsIlmbWSI4Fi87QeVz8m4RdIQrrr2INtY3CPVgm18czy7Q+Wl0XOYbXuZet2z\nyceao1Y3Esq3j8Cwc5ZKtc/KLiWKdQb0jDG1vTtbClWT7kJCmdjvuVkArB2K\n6mrjtFxFwt76wQhBdil56zpO/BMw5iHBJkiyn5q5lmaRmX5spASYyqdT/ADq\n95jRe2k07iJMbYS6BMd3DzKX7mc4SLLC3Pk/iO/2VVh56iM4F8pF2YkRrBpZ\nqwQw872o+7qgQYRz3c8XZDmm5yO2OaAfsUxmaODzYgw7YbvG/WKcicfXfh44\nZM+CWsBJ0Hu6aENoS9Ou3DHEfhMw5yzHoyN8KR0cQWEF1AzREUAzHSvH4pir\nmUMABPyOfEo4QIec5aPijJa/YJWT0Rm0SwG+2rSn5uhq4aeaoGGRzWZZ9HA5\nGQDn\r\n=GWJA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCh/NTSp7k5Z/qXTgJrUihU7Ov41nWDWI8ncplNGRPiVgIhAKlnREceXBbKu7Yt+6NB+HqtqalFmAzSI2HLR6LKJE40"}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.13_1644154632324_0.998226183700041"},"_hasShrinkwrap":false},"0.0.14":{"name":"@berglund/mixins","repositoryUrl":"https://github.com/blidblid/berg/tree/main/projects/mixins","description":"TypeScript mixins for Angular components.","version":"0.0.14","peerDependencies":{"@angular/common":"^13.0.0","@angular/core":"^13.0.0","@berglund/rx":"^0.0.1"},"dependencies":{"tslib":"^2.2.0"},"module":"fesm2015/berglund-mixins.mjs","es2020":"fesm2020/berglund-mixins.mjs","esm2020":"esm2020/berglund-mixins.mjs","fesm2020":"fesm2020/berglund-mixins.mjs","fesm2015":"fesm2015/berglund-mixins.mjs","typings":"berglund-mixins.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./berglund-mixins.d.ts","esm2020":"./esm2020/berglund-mixins.mjs","es2020":"./fesm2020/berglund-mixins.mjs","es2015":"./fesm2015/berglund-mixins.mjs","node":"./fesm2015/berglund-mixins.mjs","default":"./fesm2020/berglund-mixins.mjs"},"./generators":{"types":"./generators/berglund-mixins-generators.d.ts","esm2020":"./esm2020/generators/berglund-mixins-generators.mjs","es2020":"./fesm2020/berglund-mixins-generators.mjs","es2015":"./fesm2015/berglund-mixins-generators.mjs","node":"./fesm2015/berglund-mixins-generators.mjs","default":"./fesm2020/berglund-mixins-generators.mjs"},"./testing":{"types":"./testing/berglund-mixins-testing.d.ts","esm2020":"./esm2020/testing/berglund-mixins-testing.mjs","es2020":"./fesm2020/berglund-mixins-testing.mjs","es2015":"./fesm2015/berglund-mixins-testing.mjs","node":"./fesm2015/berglund-mixins-testing.mjs","default":"./fesm2020/berglund-mixins-testing.mjs"}},"sideEffects":false,"_id":"@berglund/mixins@0.0.14","_nodeVersion":"16.13.1","_npmVersion":"7.18.1","dist":{"integrity":"sha512-p38E7cSxQvz55lxK9Wx457CZsI8JwIv5sD43GEQImAxRSQl5e3SM+RYUcDhNdVddyg10h8zlA2XxCuvif4JdFA==","shasum":"c099c73a9033aac8de8fd21210e5d4c281add43f","tarball":"https://registry.npmjs.org/@berglund/mixins/-/mixins-0.0.14.tgz","fileCount":223,"unpackedSize":615399,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh/9HICRA9TVsSAnZWagAAW0sP/jMVLYcboaFa97HEBKnQ\ndR3crTWXOYPs+STIZt8+TBa47lLkvSuHeokVjDJRNNS6Gk4HXa6YRaFX4J/Y\nfbhiA+W21f0NCLgjGUgZ7fuq8U8m9txIjbgGeCdfy/Rgx1Rsj4pKan7pB6Qv\nOsI7Fm9/zWslPbDA8F98A7NCAx2r+Qw/bRmpVzvZVDH1pyjnMXPBxkskHeJT\nd4dHBHI/NFuzghfUosnLk874DFY33VQQ9oo6SX+VVDy70D3q6bmrLhuMzrWz\nWGtspHu27EKeLhbXxbLMRBX4xWMs6PCc8zxdv1h9T6FwIwUOt5MhFekO/YV/\nvam7aJgIFdS5OAksMq3lG5SGbbd9zNthuwBTS/rp68fq0oaoCVEU3jZy4l7B\nZP87kKEt/JcZFjATaROUpyKUGmLZ8Nze8M6TDcld2C4NGnmYu/r/PqQncmTt\n4DVTHHfTbV3AV5iZ37+z9MuUK8GlmSFgFAiUDZXeHirT1UZDCBLohLboKJSV\nhgR89Skt/ttKBLFqh1upQOUaPzM3bxlOWcABazGM+v6ZVMz8rcvPmvKTtESf\nRblFOU9ACuG3AkIcIN6MDKashdTUBkZ9ZUEpbXlgL6AQ1Osfncw7G7GR8+mm\n5TsdT+ZV4SwtjYt4tSVUlVvnk+zKtBsiJDd8rryOq8xCRBluPUiIptJTImMC\nkCF4\r\n=XZjm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFB4ljGL0ePxKhUuyL5O3a8hwUH6Qui1JgNJrmnXZJM2AiEA/0IP5nPHGFRyQ7qOL/BJPLLxSPB4i7M7QkOx/Tv/lHM="}]},"_npmUser":{"name":"blidblid","email":"e.a.e.berglund@gmail.com"},"directories":{},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mixins_0.0.14_1644155336475_0.7557786038568699"},"_hasShrinkwrap":false}},"time":{"created":"2021-11-23T20:04:49.691Z","0.0.1":"2021-11-23T20:04:49.890Z","modified":"2022-04-04T18:28:53.870Z","0.0.2":"2021-11-26T12:54:23.942Z","0.0.3":"2021-11-30T20:48:30.267Z","0.0.4":"2021-12-07T19:26:24.413Z","0.0.5":"2022-01-11T12:42:47.192Z","0.0.6":"2022-01-21T20:48:50.796Z","0.0.7":"2022-01-21T21:01:10.037Z","0.0.8":"2022-01-22T12:34:19.340Z","0.0.9":"2022-01-22T12:43:20.750Z","0.0.10":"2022-01-22T12:46:54.918Z","0.0.11":"2022-01-22T13:22:01.415Z","0.0.12":"2022-01-23T12:10:04.435Z","0.0.13":"2022-02-06T13:37:12.486Z","0.0.14":"2022-02-06T13:48:56.705Z"},"maintainers":[{"name":"blidblid","email":"e.a.e.berglund@gmail.com"}],"description":"TypeScript mixins for Angular components.","readme":"# Mixins\n\n`@berglund/mixins` is a collection of [TypeScript mixins](https://www.typescriptlang.org/docs/handbook/mixins.html). The mixins form a layer between apps and component libraries that aims to\n\n- increase productivity\n- reduce code duplication\n- reduce developer freedom\n\nBefore getting into how, let's get into the upsides and downsides of traditional Angular component libraries.\n\n## Traditional component libraries\n\n### The upsides\n\nA well-written Angular component library usually has:\n\n- lots of content projection\n- lots of directives\n\nAnd you can see why, it is a very strong combination. The content projection maximizes component surface area, which the directives can attach to.\n\nTake `mat-select` for example:\n\n```html\n<mat-form-field>\n  <mat-label></mat-label>\n  <mat-select>\n    <mat-option></mat-option>\n  </mat-select>\n</mat-form-field>\n```\n\nSince the component has a large surface area, a `cdkDrag` directive could make the options rearrangeable. And an `*ngFor` directive could repeat `<mat-option>` over some data source. It is a powerful design, but the power comes at a cost.\n\n### The downsides\n\nLet's look at another material component, a [basic `mat-table`](https://material.angular.io/components/table/overview). At this point, its implementation is pretty simple, with some 50 odd lines of code. But tables usually have many requirements, such as\n\n- sortable rows\n- virtualized rows\n- rearrangeable columns\n\nLet's add these features to `mat-table` using directives from `@angular/material` and `@angular/cdk`\n\n| Feature               |                   Directives                    |\n| --------------------- | :---------------------------------------------: |\n| Sortable rows         |           `matSort`, `matSortHeader`            |\n| Virtualized rows      | `cdk-virtual-scroll-viewport`, `*cdkVirtualFor` |\n| Rearrangeable columns |            `cdkDrag`, `cdkDropList`             |\n\nPretty smooth, but now the table is now hundreds of lines of code. And here lies the issue of traditional component libraries: large complicated templates. The problem with these templates is that they lead to\n\n- code duplication\n  - you either have to duplicate the template code in future tables...\n  - ...or you have to create a table-wrapper component that propagates inputs\n- few constraints\n  - a developer _can_ attach directives, but _should_ they? In enterprise, large freedom can make UX diverge across apps\n- technical bias\n  - the code is overly focused on _how_ to solve a problem, not _what_ it's trying to solve. Let's say `mat-table` suddenly needs nested drag drop. Since `@angular/cdk/drag-drop` does not support that, the code needs massive refactoring\n- poor dynamic support\n  - neither Angular directives or `@ContentChildren` can attach dynamically\n- poor serialization\n  - since the API is partly described by templates, components cannot be serialized. This makes mapping models, such as `JsonSchema`, to components very difficult.\n\n## The solution\n\nLet's add another layer between apps and libraries. The goal is a programmatic API that and fully described by its inputs, and not at all by the template.\n\nTo achieve that, all content projection has to go. But without content projection, the layer loses a lot of reusability. It can no longer can delegate functionality to directives. Instead, it has to to describe all functionality in its API.\n\n### Mixins\n\nTo find another source of reusability, let's look at four components\n\n- `mat-checkbox`\n- `mat-select`\n- `matInput`\n- `mat-table`\n\nand find their commonalities\n\n| Feature              |                Component                 |\n| -------------------- | :--------------------------------------: |\n| Can have a label     | `mat-checkbox`, `mat-select`, `matInput` |\n| Can show data        |        `mat-select`, `mat-table`         |\n| Can select           |               `mat-select`               |\n| Can have state       | `mat-checkbox`, `mat-select`, `matInput` |\n| Can render templates |                `matTable`                |\n| Can be disabled      | `mat-checkbox`, `mat-select`, `matInput` |\n\nand implement classes for each of the listed features. Then, use TypeScript mixins to compose a base. There are existing bases for components in `@berglund/mixins`, but let's create a couple of new ones.\n\n```typescript\nconst TableBase = mixinComponentOutlet(mixinCollection(_TableBase));\nconst SelectBase = mixinConnectable(\n  mixinAccessible(mixinLabel(mixinSelection(mixinCollection(_SelectBase))))\n);\n```\n\nThe base is then ready to be used in a component.\n\n```typescript\n@Component({\n  templateUrl: './select.component.html',\n  styleUrls: ['./select.component.scss'],\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SelectComponent extends SelectBase {}\n```\n\nHere, the template in `select.component.html` implements the mixin API using a design system. The app will now uses the mixin API over the previous API.\n\nThis is how a select would look like using `@berglund/material`\n\n```typescript\n// select-mixin.component.ts\nimport {\n  ChangeDetectionStrategy,\n  Component,\n  ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n  templateUrl: './select-mixin.component.html',\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SelectMixinExampleComponent {}\n```\n\n```html\n<!-- select-mixin.component.html -->\n<berg-select label=\"Drinks\" [data]=\"['Coffee', 'Tea']\"></berg-select>\n```\n\n```typescript\n// select-mixin.module.ts\nimport { NgModule } from '@angular/core';\nimport { BergSelectModule } from '@berglund/material';\nimport { SelectMixinExampleComponent } from './select-mixin.component';\n\n@NgModule({\n  declarations: [SelectMixinExampleComponent],\n  exports: [SelectMixinExampleComponent],\n  imports: [BergSelectModule],\n})\nexport class SelectMixinExampleModule {}\n```\n\nOr if you wanted to increase reusability and declare the inputs programmatically\n\n```typescript\n// select-mixin-programmatic.component.ts\nimport {\n  ChangeDetectionStrategy,\n  Component,\n  ViewEncapsulation,\n} from '@angular/core';\nimport { BergSelectComponent } from '@berglund/material';\nimport { component } from '@berglund/mixins';\nimport { of } from 'rxjs';\n\n@Component({\n  templateUrl: './select-mixin-programmatic.component.html',\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SelectMixinProgrammaticExampleComponent {\n  drinks = component({\n    component: BergSelectComponent,\n    inputs: {\n      label: 'Drinks',\n      data: ['Coffee', 'Tea'],\n    },\n  });\n\n  eveningDrinks = component(this.drinks, { data: of(['Beer', 'Wine']) });\n}\n```\n\n```html\n<!-- select-mixin-programmatic.component.html -->\n<berg-outlet [component]=\"drinks\"></berg-outlet>\n<berg-outlet [component]=\"eveningDrinks\"></berg-outlet>\n```\n\n```typescript\n// select-mixin-programmatic.module.ts\nimport { NgModule } from '@angular/core';\nimport { BergOutletModule } from '@berglund/mixins';\nimport { BergSelectModule } from '@berglund/material';\nimport { SelectMixinProgrammaticExampleComponent } from './select-mixin-programmatic.component';\n\n@NgModule({\n  declarations: [SelectMixinProgrammaticExampleComponent],\n  exports: [SelectMixinProgrammaticExampleComponent],\n  imports: [BergOutletModule, BergSelectModule],\n})\nexport class SelectMixinProgrammaticExampleModule {}\n```\n\nAs you can see, the API is\n\n- \\+ intent-focused\n- \\+ reusable, components are easily reused since they are described as objects\n- \\- stiff. You cannot even add a `(click)`-binding. Everything has to be described in the mixin-API\n\n### So when is this useful?\n\nIs a layer between apps and component libraries is a good idea for your code? It depends on the context. If you're working on a hobby-project, the constraints would probably be too frustrating. But if you're working in a company with multiple apps, then a layer using mixins would do a lot for productivity and unified UX. Not to mention that serializable components is a game changer for apps with forms that need customization.\n","readmeFilename":"README.md"}