{"_id":"@briebug/ngrx-smartish","_rev":"10-973c2dce9b0c25207380308484aee1d8","name":"@briebug/ngrx-smartish","dist-tags":{"latest":"0.0.1-alpha.2","alpha":"0.0.1-alpha.3","beta":"0.1.0-beta.1"},"versions":{"0.0.1-alpha.1":{"name":"@briebug/ngrx-smartish","version":"0.0.1-alpha.1","_id":"@briebug/ngrx-smartish@0.0.1-alpha.1","maintainers":[{"name":"jessesanders","email":"jesse.sanders@briebug.com"},{"name":"schuchard","email":"schuchard.kevin@gmail.com"},{"name":"inorganik","email":"jamie.perkins@gmail.com"},{"name":"blove","email":"brian@brianflove.com"},{"name":"jrista","email":"jon.rista@briebug.com"},{"name":"anthonyjones0519","email":"anthonyjones0519@gmail.com"}],"dist":{"shasum":"895a3bbdee51b73b952a33a29406de113395ffe9","tarball":"https://registry.npmjs.org/@briebug/ngrx-smartish/-/ngrx-smartish-0.0.1-alpha.1.tgz","fileCount":39,"integrity":"sha512-5paxt5XgHLW0iiP5PxCtgACjsg3iPRfEGL4RAjaQRXDdZ5vv3XlBmlwQ1AB6RaRDJ0TLaUXN+xjDdurszTPckA==","signatures":[{"sig":"MEUCIQD7W/M51jzuSjC57Nwta2AW2dxcfc4iNeUIefH8Os0sVgIgDpN+IrdhBos46MSe4+3pYs0dzPYr9OcsU0mxl1wFqYE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":60066,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJwyTCRA9TVsSAnZWagAAeQEP/05YAy5RqEHRhWE4yHc8\n2KsOdYAn8SRm2CZmEvmJUfYb32l6vyK4BUIzW6PeJy0OrZHcVHz1a7/BDo7c\nlLbutwRa/m7YnzFzZg4NojBwXIDvC+VYV2oWBL7QHu/r2QrgEDHYuOd4zBfQ\nF16NLrLOAGpAsOZ7RVzJUQyipdYUK+tbYBXieyI0VyX8AYjHlMJ5CBOYBlxk\nijuWV1pTpmyvLFi72yrp7jEv4JRbxtlBTRtfWvHFu4nzJcOB3egpga+iJz7y\nSYermhgJE2ZM19YaaqftVH8qytWaZYitEUzOIZB3yjkVPD05hIlH8OfWEu+T\n17iJU/PwhqYpxBQDtanRKQYDS1DPpNB+m1dMmtRPJ+gav6kD9VZzqip4Diyh\nbwERFss/0BSvvkif91+aHBl24YXEV/k37y3RLNDbu7C+3dAUtmp3JhryRLeB\n3zMSyczTo2zZCisPBI9gUIP1luHbAAsbikEukADWTrnmRBgt9oJP7di0tTOJ\nyeXKgMlqflGONdgmTjs0V4vNZfu21db7U+qH7nwTfZDMQJqrv8SPDPcgiNM5\np+2VJvU/VGtv/9YuF+omcBGMvH+zGDgDMLRY7z966WM+ZqkwqB97v/xXr3V8\n9dZZgInXYNVx+N4qUGvvpHUUVYOLu9IIiPTmDKGU3xWjhYd5ylY02vKhgvie\nfa8/\r\n=NG9j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"bundles/briebug-ngrx-smartish.umd.js","es2015":"fesm2015/briebug-ngrx-smartish.js","module":"fesm2015/briebug-ngrx-smartish.js","esm2015":"esm2015/briebug-ngrx-smartish.js","typings":"briebug-ngrx-smartish.d.ts","_npmUser":{"name":"jrista","email":"jon.rista@briebug.com"},"fesm2015":"fesm2015/briebug-ngrx-smartish.js","metadata":"briebug-ngrx-smartish.metadata.json","_npmVersion":"6.13.7","description":"This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 11.0.4.","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^2.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"@ngrx/store":"8.x,9.x,10.x","@angular/core":"8.x,9.x,10.x,11.x","@angular/common":"8.x,9.x,10.x,11.x"},"_npmOperationalInternal":{"tmp":"tmp/ngrx-smartish_0.0.1-alpha.1_1613171858695_0.5966079297320683","host":"s3://npm-registry-packages"}},"0.0.1-alpha.2":{"name":"@briebug/ngrx-smartish","version":"0.0.1-alpha.2","_id":"@briebug/ngrx-smartish@0.0.1-alpha.2","maintainers":[{"name":"jessesanders","email":"jesse.sanders@briebug.com"},{"name":"schuchard","email":"schuchard.kevin@gmail.com"},{"name":"inorganik","email":"jamie.perkins@gmail.com"},{"name":"blove","email":"brian@brianflove.com"},{"name":"jrista","email":"jon.rista@briebug.com"},{"name":"anthonyjones0519","email":"anthonyjones0519@gmail.com"}],"dist":{"shasum":"1f2c939bc5a13c3738ea75cb33fe36cec4887619","tarball":"https://registry.npmjs.org/@briebug/ngrx-smartish/-/ngrx-smartish-0.0.1-alpha.2.tgz","fileCount":39,"integrity":"sha512-7WeEbnp3+nu1rg3g03uVfBorQlM5nVAMeaf9n/YmXTyd3VjtQ19jRTkTlny0fxCS1emfMZxEEiubgnrWdfn9Mg==","signatures":[{"sig":"MEYCIQDbfrvwR2p95KMfEVBkQb2e1ETYhaYC4QFcF6lHFX0SBAIhAJ06HQFODHPcmM/bqtQjP++H1DZbYOmy+xJcLgEgW4fd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":62508,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgKxriCRA9TVsSAnZWagAAcaAP/jxpvMlnTRkpw3ZEvIIz\nBqZXYy+ITqRZe7UJnAtFww4tgsHWg/NDyfM3Li5av7u0BknNqHzWtagX1e62\nQh1hPL2HKDEwLjmdnnpLutLlUGT1grrXQUJ+W6O+ko3+qwn8jgbnfzhJdKvY\nfv5yzb1prXWvFg+lIRA0rkUbZXLtRj1pObpfPmGf8YRA8J4i/or4Ov8fT9eL\no6/x2cJEk1Xft5U54zO+hDdfPGQDPQ8Z7GM/x5uCtfzwBo/7ci6EH8oQ7Mbb\nbJnRWJiHnCkONk77OlUaL4/w/Zl0phaNpK/E1Z03iodnEw1Y8YQAp53HfcHF\n/f7+crzAruJnpfHOwB+ciXgra+wWDG/ozdYHfkHDD1w3m6X/wx3uPPmG5848\n3X5tP1gy5I73TNtNuQfdQodta3hNhjkycUnOyaHkVX9lwpAMqhofafBaEaLK\nnMmpnYp2QmGLt1jweqKNDhYkqo5H62MQvx6Av5UqNmYxtrTiBM/QvJWQpbGb\n+PrINyxXjUmTrySdQfw04eBlXwoAaRTdiM5vkpGQnhIZJ8ZlWaOHu9rfH8g0\nXImYt6LaSYuXe6tLGC8k6XdHTkINCmH9V17sy6OddraaIfCnFFXfPXMQZR5a\n649hf3il/z/4t4m/RtzKl0gSQ+RQUjCM2EBVkEJYGKiFK6WmIJ70+8Dx5etX\n4xfI\r\n=Q3yc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"bundles/briebug-ngrx-smartish.umd.js","es2015":"fesm2015/briebug-ngrx-smartish.js","module":"fesm2015/briebug-ngrx-smartish.js","esm2015":"esm2015/briebug-ngrx-smartish.js","typings":"briebug-ngrx-smartish.d.ts","_npmUser":{"name":"jrista","email":"jon.rista@briebug.com"},"fesm2015":"fesm2015/briebug-ngrx-smartish.js","metadata":"briebug-ngrx-smartish.metadata.json","_npmVersion":"6.13.7","description":"NgRx Smartish is a small utility library that makes creating \"smartish\" components in Angular a breeze. Smartish Components mixed with NgRx, provide a clean and declartive approach to building applications in Angular.","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^2.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"@ngrx/store":"8.x,9.x,10.x","@angular/core":"8.x,9.x,10.x,11.x","@angular/common":"8.x,9.x,10.x,11.x"},"_npmOperationalInternal":{"tmp":"tmp/ngrx-smartish_0.0.1-alpha.2_1613437665561_0.194951279571701","host":"s3://npm-registry-packages"}},"0.0.1-alpha.3":{"name":"@briebug/ngrx-smartish","version":"0.0.1-alpha.3","_id":"@briebug/ngrx-smartish@0.0.1-alpha.3","maintainers":[{"name":"jessesanders","email":"jesse.sanders@briebug.com"},{"name":"schuchard","email":"schuchard.kevin@gmail.com"},{"name":"inorganik","email":"jamie.perkins@gmail.com"},{"name":"blove","email":"brian@brianflove.com"},{"name":"jrista","email":"jon.rista@briebug.com"},{"name":"anthonyjones0519","email":"anthonyjones0519@gmail.com"}],"dist":{"shasum":"a60aa5d2a272f3b265e7118edbc608428a828049","tarball":"https://registry.npmjs.org/@briebug/ngrx-smartish/-/ngrx-smartish-0.0.1-alpha.3.tgz","fileCount":42,"integrity":"sha512-YO0lkiMX3gCiJjx+dSib/+aauKdPJ7KF5yGrhQEcDNaoeYvHVM9bFjuyi9lDt+74g3qUQPJPBfp/gL50O86VjA==","signatures":[{"sig":"MEUCIFE8vchSbASRjacQpnAJ1PMp+jsB+YEh9iq13dYavgDKAiEA+l8u6xrgPCZ/Yxf3qf8zgZXVCGlmrzselWlP7v9hou4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":59788,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTHvKCRA9TVsSAnZWagAARngQAILRI2YEGJeCLfgZJPAA\n9i+K/WZQxrPtEMWD1OVRnBx73b36a1xsZAXxJ7n0TFxmoacIzm6xmbOtH/T0\nypDxx8MqLsmt+nKE6oQXjJID7C9UeZAi/ivuTMRJ2jYN55JUkGOQ1p7p0/ca\n0mYqlM4o5m0gVGUX7f0SY6ZDx6SG52VGrf0LYTZzaH6ksoRszZlDxpUOl0c5\nEGHOk5Jq92NqCYSxs+CtHvixJJ68vPonLcU5Jila6W0ytWZQSivpWhuwmPKI\n8U8g01lLsBDtrG8dA2OJU87hbYtDBxbrtCPCLWJkk9lkAEuP+nM/8C83cOHc\nZZU3VJSShIr/nvqWaNjS+/liL1KsfGA4rKtb19O48ZBeVtIIFB+5+wTVf+Mh\n+yCxMgBiAvTyJGt8k1HxRU4yVmIlEMLrd05FVTvtnNFHvZbPHPYtgU/UhN2t\nyc5y+XnCJvylLiid3qXiTA9/PubaFGwEIQSubfbgDSwaANCAOC5i3glrEHrV\nQoLvOfqrLwKR/NlOZeHPE+rp7LOFi32Qc5x0TayrkEtPSfuLyMnGzSS9EJan\n3sbVo31/WYJWbbv6mS0RJbfb1d7Ogbbsv6R8uHQ9KHt9rJ0cfn8aFTmBCJ6N\nWd9Sa4noSkPOQw9Fi24PBpKk7oMvps1XYZb1zZsVYaMpt8nXv40xrcNzixP9\n1Bvy\r\n=jiAz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"bundles/briebug-ngrx-smartish.umd.js","es2015":"fesm2015/briebug-ngrx-smartish.js","module":"fesm2015/briebug-ngrx-smartish.js","readme":"# NgRx Smartish\n\nNgRx Smartish is a small utility library that makes creating \"smartish\" components in Angular a breeze. Smartish Components mixed with NgRx, provide a clean and declartive approach to building applications in Angular. \n\n\n## Getting Started\n\nYou can install the package using `npm install @briebug/ngrx-smartish`\n\nNext you will need to import `NgrxSmartishModule` in `app.module` as well as provide store using the `SMARTISH_STORE_TOKEN`.\n\n```\nimport { NgRxSmartishModule, SMARTISH_STORE_TOKEN } from '@briebug/ngrx-smartish';\nimoprt { StoreModule, Store } from '@ngrx/store';\n\n@NgModule({\n  imports: [\n      NgRxSmartishModule,\n      StoreModule.forRoot({...})\n  ],\n  providers: [{ provide: SMARTISH_STORE_TOKEN, useClass: Store }]\n})\nexport class AppModule {}\n```\n\n\n## SmartSelect\nWith NgRx Smartish you can reference NgRx Selectors directly in your Angular Component's template without the need to inject the `store`. You simple need to add the `MemoizedSelector` in your component class and reference that property with the `smartSelector` pipe in your template.\n\n```\nimport { selectError } from 'YOUR-STORE'\n\n@Component({\n    selector: 'app-error',\n    template: `<p>{{ selectors.selectError | smartSelect | async }}</p>`\n})\nexport class ErrorComponent {\n    selectors = { selectError };\n}\n```\n\n## SmartDispatch\n\nWith NgRx Smartish you can dispatch actions directly in your Angular Component's template without the need to dispatch an `@Output() EventEmitter` or injecting the `store`. You simply can use either the `smartDispatch` or `smartAction` methods.\n\n### smartAction\nWith NgRx Smartish `smartAction` you can call `dispatch` on your actions directly in your component templates. \n\n```\nimport { smartAction } from '@briebug/ngrx-smartish';\nimport { tacoAdded } from '...my-actions';\n\n@Component({\n    selector: 'app-component',\n    template: `<button (click)=\"addTaco.dispatch($event)\">Add Taco</button>\n})\nexport class MyComponent {\n    addTaco = smartAction(tacoAdded);\n}\n```\n\n### smartDispatch\nWith NgRx Smartish `smartDispatch` you can automatically dispatch actions in your component templates. (Note: This is similar to `smartAction` but it calls dispatch automatically for you)\n\n```\nimport { smartDispatch } from '@briebug/ngrx-smartish';\nimport { tacoAdded } from '...my-actions';\n\n@Component({\n    selector: 'app-component',\n    template: `<button (click)=\"addTaco($event)\">Add Taco</button>\n})\nexport class MyComponent {\n    addTaco = smartDispatch(tacoAdded);\n}\n```\n\n## NgRxSmartishComponent\n\nWith NgRx Smartish you can reference your NgRx store directly in your Components classes (or templates) without providing the store in the constructor. It's as easy as having your component extends `NgRxSmartishComponent`. \n\n```\n@Component({\n    selector: 'app-tacos',\n    template: `<app-taco *ngFor=\"let taco of (tacos$ | async)\" [taco]=\"taco></app-taco>`\n})\nexport class TacosComponent extends NgRxSmartishComponent {\n    tacos$ = store.select(selectTacos);\n}\n```\n\n## Testing\nTesting with NgRxSmartish is made simple with the `NgRxSmartishTestingModule`. Just import `NgRxSmartishTestingModule` into your `TestBed` with the `forRoot()` static method. You can also pass an optional `MockStoreConfig` inside of `forRoot()` to save you from having to provide `provideMockStore(...)` in your tests. \n\n```\nconst config = { };\ndescribe('YourSmartishComponent', () => {\n  beforeEach(async () => {\n    imports: [NgRxSmartishTestingModule.forRoot({ initialState: {...}})],\n    declarations: [YourSmartishComponent]\n  });\n});\n```","esm2015":"esm2015/briebug-ngrx-smartish.js","typings":"briebug-ngrx-smartish.d.ts","_npmUser":{"name":"jrista","email":"jon.rista@briebug.com"},"fesm2015":"fesm2015/briebug-ngrx-smartish.js","metadata":"briebug-ngrx-smartish.metadata.json","_npmVersion":"6.14.10","description":"NgRx Smartish is a small utility library that makes creating \"smartish\" components in Angular a breeze. Smartish Components mixed with NgRx, provide a clean and declartive approach to building applications in Angular.","directories":{},"sideEffects":false,"_nodeVersion":"14.15.4","dependencies":{"tslib":"^2.0.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"@ngrx/store":"8.x,9.x,10.x","@angular/core":"8.x,9.x,10.x,11.x","@angular/common":"8.x,9.x,10.x,11.x"},"_npmOperationalInternal":{"tmp":"tmp/ngrx-smartish_0.0.1-alpha.3_1615625162410_0.8128977169605043","host":"s3://npm-registry-packages"}},"0.1.0-beta.1":{"name":"@briebug/ngrx-smartish","version":"0.1.0-beta.1","_id":"@briebug/ngrx-smartish@0.1.0-beta.1","maintainers":[{"name":"jessesanders","email":"jesse.sanders@briebug.com"},{"name":"schuchard","email":"schuchard.kevin@gmail.com"},{"name":"inorganik","email":"jamie.perkins@gmail.com"},{"name":"blove","email":"brian@brianflove.com"},{"name":"jrista","email":"jon.rista@briebug.com"},{"name":"anthonyjones0519","email":"anthonyjones0519@gmail.com"}],"dist":{"shasum":"33c7592e78e83598fd0cf162a5da420a6442312f","tarball":"https://registry.npmjs.org/@briebug/ngrx-smartish/-/ngrx-smartish-0.1.0-beta.1.tgz","fileCount":42,"integrity":"sha512-O2Hho+0YKABrBYxcEBl3PFDpZR2b2g8xXMuQX3ZAJr6DjiJDFscZs8dwiEEJ4HdUZhD4bhmhlLDRmL1tmbhXbw==","signatures":[{"sig":"MEQCIAKbeRL4txVSDJ1QkThAZd4JD46yID3K+1QLdWeBsjzDAiAh4FG1zWQlf/tEAqxx2lpIuQ/Xnd5TZF0bhovnMr62Bw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":59787,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT+pmCRA9TVsSAnZWagAANLcP/AknUG0MF6Pps+plk0Z5\nsXBbZDmJOq69yhPPeDo4HFKIAKjHswpNfDlrsKGLMxx3VhLskCSyXaPxTP8V\n0kI9u/F6S3300S1/ztCirMfvBPHB7L5jtxLB9iM/5bp+ke0PhO05Lmd2FHFJ\nRkemFHfMdv9hL3SdEPLzQCs/3HcdhYt3Ig57cvt5eHuLPN/6+Ff+8EuCMC10\noL19lszM+h29hinnfdoqOCrsi4e2u+Mjfvy0ZF4e/FttMPwgq1vu3Yz57onc\nMwQbxUqeF9RD4aYdbAOCzf7NPQZEzM4N/XHK9h8nSxWRsTCan1xWkR0GhnNE\nSgu2GIHdNifaFYwR19fmV859Y0EgcplsPrE8tvY0HlbeyM7V/ZAoyjD/EGR7\nzkDBBkgyg4hqYCOdQR/VZeF4uLeX7UIZTfoIDo0GDzvUnp5MgxXOu/u9Nk4v\nZIO5HWOwS8L3W9+spOu3DE60aYJz285IU+/wt+ueS268zgc8sq/Yg43IQzk7\nP7XYXnfB87TFDT6fV9zT+0VMuZf+HHFqBfsZ9F2hy1H38htoINDQbNwPdyjh\nM6wJizL3Ecslzp1wDkIvokEwNk3nHOWt2Lg+U9ZKaOsmKtnrjKKzSYwIvi7l\nHiqX8bukKXEJNJ05yE1BRO/mNbDe3yVwx7zDydYdkgFGN32P4UYZhfVPwn6f\nXEBs\r\n=MXy4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"bundles/briebug-ngrx-smartish.umd.js","es2015":"fesm2015/briebug-ngrx-smartish.js","module":"fesm2015/briebug-ngrx-smartish.js","readme":"# NgRx Smartish\n\nNgRx Smartish is a small utility library that makes creating \"smartish\" components in Angular a breeze. Smartish Components mixed with NgRx, provide a clean and declartive approach to building applications in Angular. \n\n\n## Getting Started\n\nYou can install the package using `npm install @briebug/ngrx-smartish`\n\nNext you will need to import `NgrxSmartishModule` in `app.module` as well as provide store using the `SMARTISH_STORE_TOKEN`.\n\n```\nimport { NgRxSmartishModule, SMARTISH_STORE_TOKEN } from '@briebug/ngrx-smartish';\nimoprt { StoreModule, Store } from '@ngrx/store';\n\n@NgModule({\n  imports: [\n      NgRxSmartishModule,\n      StoreModule.forRoot({...})\n  ],\n  providers: [{ provide: SMARTISH_STORE_TOKEN, useClass: Store }]\n})\nexport class AppModule {}\n```\n\n\n## SmartSelect\nWith NgRx Smartish you can reference NgRx Selectors directly in your Angular Component's template without the need to inject the `store`. You simple need to add the `MemoizedSelector` in your component class and reference that property with the `smartSelector` pipe in your template.\n\n```\nimport { selectError } from 'YOUR-STORE'\n\n@Component({\n    selector: 'app-error',\n    template: `<p>{{ selectors.selectError | smartSelect | async }}</p>`\n})\nexport class ErrorComponent {\n    selectors = { selectError };\n}\n```\n\n## SmartDispatch\n\nWith NgRx Smartish you can dispatch actions directly in your Angular Component's template without the need to dispatch an `@Output() EventEmitter` or injecting the `store`. You simply can use either the `smartDispatch` or `smartAction` methods.\n\n### smartAction\nWith NgRx Smartish `smartAction` you can call `dispatch` on your actions directly in your component templates. \n\n```\nimport { smartAction } from '@briebug/ngrx-smartish';\nimport { tacoAdded } from '...my-actions';\n\n@Component({\n    selector: 'app-component',\n    template: `<button (click)=\"addTaco.dispatch($event)\">Add Taco</button>\n})\nexport class MyComponent {\n    addTaco = smartAction(tacoAdded);\n}\n```\n\n### smartDispatch\nWith NgRx Smartish `smartDispatch` you can automatically dispatch actions in your component templates. (Note: This is similar to `smartAction` but it calls dispatch automatically for you)\n\n```\nimport { smartDispatch } from '@briebug/ngrx-smartish';\nimport { tacoAdded } from '...my-actions';\n\n@Component({\n    selector: 'app-component',\n    template: `<button (click)=\"addTaco($event)\">Add Taco</button>\n})\nexport class MyComponent {\n    addTaco = smartDispatch(tacoAdded);\n}\n```\n\n## NgRxSmartishComponent\n\nWith NgRx Smartish you can reference your NgRx store directly in your Components classes (or templates) without providing the store in the constructor. It's as easy as having your component extends `NgRxSmartishComponent`. \n\n```\n@Component({\n    selector: 'app-tacos',\n    template: `<app-taco *ngFor=\"let taco of (tacos$ | async)\" [taco]=\"taco></app-taco>`\n})\nexport class TacosComponent extends NgRxSmartishComponent {\n    tacos$ = store.select(selectTacos);\n}\n```\n\n## Testing\nTesting with NgRxSmartish is made simple with the `NgRxSmartishTestingModule`. Just import `NgRxSmartishTestingModule` into your `TestBed` with the `forRoot()` static method. You can also pass an optional `MockStoreConfig` inside of `forRoot()` to save you from having to provide `provideMockStore(...)` in your tests. \n\n```\nconst config = { };\ndescribe('YourSmartishComponent', () => {\n  beforeEach(async () => {\n    imports: [NgRxSmartishTestingModule.forRoot({ initialState: {...}})],\n    declarations: [YourSmartishComponent]\n  });\n});\n```","esm2015":"esm2015/briebug-ngrx-smartish.js","typings":"briebug-ngrx-smartish.d.ts","_npmUser":{"name":"jrista","email":"jon.rista@briebug.com"},"fesm2015":"fesm2015/briebug-ngrx-smartish.js","metadata":"briebug-ngrx-smartish.metadata.json","_npmVersion":"6.14.10","description":"NgRx Smartish is a small utility library that makes creating \"smartish\" components in Angular a breeze. Smartish Components mixed with NgRx, provide a clean and declartive approach to building applications in Angular.","directories":{},"sideEffects":false,"_nodeVersion":"14.15.4","dependencies":{"tslib":"^2.0.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"@ngrx/store":"8.x,9.x,10.x","@angular/core":"8.x,9.x,10.x,11.x","@angular/common":"8.x,9.x,10.x,11.x"},"_npmOperationalInternal":{"tmp":"tmp/ngrx-smartish_0.1.0-beta.1_1615850086275_0.518573637271899","host":"s3://npm-registry-packages"}}},"time":{"created":"2021-02-12T23:17:38.625Z","modified":"2026-01-31T15:55:42.093Z","0.0.1-alpha.1":"2021-02-12T23:17:38.856Z","0.0.1-alpha.2":"2021-02-16T01:07:45.765Z","0.0.1-alpha.3":"2021-03-13T08:46:02.617Z","0.1.0-beta.1":"2021-03-15T23:14:46.503Z"},"description":"NgRx Smartish is a small utility library that makes creating \"smartish\" components in Angular a breeze. Smartish Components mixed with NgRx, provide a clean and declartive approach to building applications in Angular.","maintainers":[{"email":"schuchard.kevin@gmail.com","name":"schuchard"},{"email":"anthonyjones0519@gmail.com","name":"anthonyjones0519"},{"email":"jesse.sanders@briebug.com","name":"jessesanders"}],"readme":"","readmeFilename":""}