{"_id":"@dmytromykhailiuk/rx-react-redux-effect","_rev":"4-d2c43b31f94de555152d5f9e91c327d8","name":"@dmytromykhailiuk/rx-react-redux-effect","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.0":{"name":"@dmytromykhailiuk/rx-react-redux-effect","version":"1.0.0","author":{"name":"Dmytro Mykhailiuk"},"license":"ISC","_id":"@dmytromykhailiuk/rx-react-redux-effect@1.0.0","maintainers":[{"name":"dmytromykhailiuk","email":"dimamykhayluk@gmail.com"}],"homepage":"https://github.com/dmytromykhailiuk/rx-react-redux-effect#readme","bugs":{"url":"https://github.com/dmytromykhailiuk/rx-react-redux-effect/issues"},"dist":{"shasum":"3d123bd7be376f7c574601b12b8d7a7616efbca2","tarball":"https://registry.npmjs.org/@dmytromykhailiuk/rx-react-redux-effect/-/rx-react-redux-effect-1.0.0.tgz","fileCount":33,"integrity":"sha512-TXMYVE9ozwidW+XcjX5GLdF6g1fcyJ4TWT37NQj6crT1J5k6OvOJPISWzIarlLMrH1pvDYTrnV7vT6FqljLZhA==","signatures":[{"sig":"MEUCIQCstWpLaN43zwI4/ojbU0TtPoDVqhqdWFG+QzLq3c2nOwIgOguL32QJQYW6F0WNYsTzMdn44jfiIQ6Bx9wX+VUM+bY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20273,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCzBbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpBSA//TqMo9q65zLqMAA6k/xXO2k+Yjc8CoblN7l4GG9uLC05zTbny\r\neSqEZDvy96LHg+RE2NzaqB7dCWdCQfu8+m3kqCHxYC9klQUtiKIkjwgSm1Jt\r\n5Ew+qqNa1QQiAnODNup7MslmL3OB4nTg4E8uR36Ksmv6bBN9Q32YqHkBDDZh\r\nqItRBuJDxBdutEOa4QCDDMevRO9vJKaZcltS4gDKhAN7jZRdSmMHok1TiG9v\r\nNIfkHJrdUfp5YWTg1wFGStQ/Ev5pdNbJEKjmUAXU/Yboxwzf2okZFgb0qIN7\r\noHAbVrbGvY0zG99BIlvkhFx9Cc/u0QiOvWU1skLx9FGvvXTlvOawy8e6OpXy\r\n0KgMhnHGs2ruqvUmW4jfLkwCD4Mj7qXGW5zf8OknWRWb4s8pWCbnu9WS38fZ\r\naSvKUiaInlWI+7/H1Mubo8pZKcBs5L7xX/itvMBKctIPKH0YvMw+JxfPXww4\r\nyKV19iLrEm40JUy5KzRYhCNBxnmIESmRH4+01kqaWu9MQ63n4aRZqjbNhIdP\r\nQB/9fzZW9aCoLHe1Z2DLAswfOnuHyJj434yMuJDwGagrCjXN6rU/LDFu4P4/\r\n/atM4bDeQE+cB2Q7ZQvY+9BiddRTO5gV/8+L+VeDCGc4oxx5bFrFyXxSFfGy\r\n9RJ987Z69svlKHzL60WD2XgrPzLRh9U6Ai4=\r\n=mySu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/src/index.js","types":"dist/src/index.d.ts","gitHead":"82ffd3b201b2f25e824b9b78866455bac8720353","scripts":{"compile":"npx tsc"},"_npmUser":{"name":"dmytromykhailiuk","email":"dimamykhayluk@gmail.com"},"repository":{"url":"git+https://github.com/dmytromykhailiuk/rx-react-redux-effect.git","type":"git"},"_npmVersion":"8.19.2","description":"Reactive Library for React","directories":{},"_nodeVersion":"18.10.0","dependencies":{"rxjs":"^7.8.0","react":"^18.2.0"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^8.0.3","eslint":"^8.35.0","prettier":"^2.8.4","typescript":"^4.9.5","@types/node":"^18.15.0","@types/react":"^18.0.28","eslint-config-prettier":"^8.7.0","@typescript-eslint/parser":"^5.54.1","eslint-config-airbnb-typescript":"^17.0.0","@typescript-eslint/eslint-plugin":"^5.54.1"},"_npmOperationalInternal":{"tmp":"tmp/rx-react-redux-effect_1.0.0_1678454874959_0.1238354207353809","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.1":{"name":"@dmytromykhailiuk/rx-react-redux-effect","version":"1.0.1","author":{"name":"Dmytro Mykhailiuk"},"license":"ISC","_id":"@dmytromykhailiuk/rx-react-redux-effect@1.0.1","maintainers":[{"name":"dmytromykhailiuk","email":"dimamykhayluk@gmail.com"}],"homepage":"https://github.com/dmytromykhailiuk/rx-react-redux-effect#readme","bugs":{"url":"https://github.com/dmytromykhailiuk/rx-react-redux-effect/issues"},"dist":{"shasum":"091ea0b7059dccf162ad33a073db7784b0558e40","tarball":"https://registry.npmjs.org/@dmytromykhailiuk/rx-react-redux-effect/-/rx-react-redux-effect-1.0.1.tgz","fileCount":33,"integrity":"sha512-u8/D8JPrUliz6qXHNUsR6PdpuYoYCQdsjAHQ+tB8KmM7geZFb4EP1VRWQDIhvmxwnLJg7Kh1oQvaRl1K3GxsYQ==","signatures":[{"sig":"MEUCIQCVb3GjMF8MwStCyYxGKjhNccjJKaAPaIb0tJ8tBJy3jgIgBX6Sl6avTFkjdfdJaBTfVFCVu4bJeM80jSxiF8wokxc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20259,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCzEUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmofhA//UUh4Q8PEtnPXwlCCleK5FnCIAunBTBKXhHEXzOrjho13k9i2\r\nTHI7L9bqfiEMP50Q54/DFKSE41+v9SVS7CGFXUDPXTKEpfqjX+w0P8MlHi2O\r\nsn3PlAzrdGgGLo3JefpcXKDni34MxQyvYHt73zLH89N10RSeG4Um9ekbsaCj\r\nkYw4q8+p6XEg1EPLCCeyy8bZ9dELyimf5GUl50gK7xDk6keJDS+VzFRHlFcU\r\nVIy9ZEH2eZpQZ8qphJSCAxkUhiu9snJRJnuvk6QBLWetN8EwgKQJBxrqQ2t0\r\nveqPcRjYlY871Nc8v5KYa/UgDJhire49CePY5S+4BO4xWwuFOkvFNKSKkJ6s\r\nLeta2U/WSmUOYaOMvAAyAtsYt3Fbh6tST+0PgzwcILZtzywYGoL6N5tj083T\r\n6DTok+1qkWFIXE2vPIycClKu1DUa7k+vFxpFVK5+wOyxpc86FqHisEEVAU4p\r\nxZTYNnoCxBwpP5BwoGXoThpssD/9uMy/6tHe8d1XGq0hVX+tXx2sElcha/ps\r\nT70BMA6E4RXYEwCbe3AGJnKIIpcVGhjHfI6d9/ga5fJ4HXdfcSnE6Hws0cUc\r\nVESvgNb9JcHjW4J3RCVDbPW6kaTFEGWl46X2WAPvgL+AyS5z0gTulAnHDt0m\r\nJRREKu/q/6Ii7+uGeBm36fKvxWJTYUjfJ/E=\r\n=Ldkc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/src/index.js","types":"dist/src/index.d.ts","gitHead":"a4b9ada14a06642b49b6baea4687875797a180b2","scripts":{"compile":"npx tsc"},"_npmUser":{"name":"dmytromykhailiuk","email":"dimamykhayluk@gmail.com"},"repository":{"url":"git+https://github.com/dmytromykhailiuk/rx-react-redux-effect.git","type":"git"},"_npmVersion":"8.19.2","description":"Reactive Library for React","directories":{},"_nodeVersion":"18.10.0","dependencies":{"rxjs":"^7.8.0","react":"^18.2.0"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^8.0.3","eslint":"^8.35.0","prettier":"^2.8.4","typescript":"^4.9.5","@types/node":"^18.15.0","@types/react":"^18.0.28","eslint-config-prettier":"^8.7.0","@typescript-eslint/parser":"^5.54.1","eslint-config-airbnb-typescript":"^17.0.0","@typescript-eslint/eslint-plugin":"^5.54.1"},"_npmOperationalInternal":{"tmp":"tmp/rx-react-redux-effect_1.0.1_1678455060139_0.7207413643057239","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.2":{"name":"@dmytromykhailiuk/rx-react-redux-effect","version":"1.0.2","author":{"name":"Dmytro Mykhailiuk"},"license":"ISC","_id":"@dmytromykhailiuk/rx-react-redux-effect@1.0.2","maintainers":[{"name":"dmytromykhailiuk","email":"dimamykhayluk@gmail.com"}],"homepage":"https://github.com/dmytromykhailiuk/rx-react-redux-effect#readme","bugs":{"url":"https://github.com/dmytromykhailiuk/rx-react-redux-effect/issues"},"dist":{"shasum":"2dfb3a1b73cf316143a07ea39f03bf943e642588","tarball":"https://registry.npmjs.org/@dmytromykhailiuk/rx-react-redux-effect/-/rx-react-redux-effect-1.0.2.tgz","fileCount":33,"integrity":"sha512-+4RyEX7FDGUhIBGPDqFyCakprezYXJniBau/u5ekSr+Q7MzgpBzHfzs379W4+W5tJwl9LY4rNukspZH82Y5bQw==","signatures":[{"sig":"MEYCIQDuTcLL5sTD0wGlZHufAFwPm8Rinj07csux2FQuCJOMIAIhALYfgRBTSta4daBRrjBo3+J1M6sdxr8u5bTWbqlAPP2J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20701,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkC1zcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmockRAAoNG2nD2ZFoOGVniEuGIZb2iSVLkJN/4lyPI0E+UJJAZbIHVl\r\n0+w93wsQ/p6I91wuZiVjDvATErWLbs+O2UKQIMwn17ysNhYbBo7Dy7xVbnNr\r\nmwEkxx8Yo1A60jZVYngsoJCHsqvHwNgxUoUxPbOGtUd0KKiL2pnjY+V+tI10\r\nqyjWl3uPuaz7R8/c7Hu05xN/g/u5jCbgcO03G6rM1yl14ssqmYyBWrm9vFSM\r\n+MNpUH6dFR0rDUDVwLc1Hinqu/0vtmKGwgfBOaF3choHmPXwm6QkfK4NgLB+\r\nH429b+JE1lSa0HpezJRghDPIxXOyV8DIkPW5wnNj/7YOwwe6pOATuens7L5z\r\nCI/cPOifIYa2+Gtf1uk4zrcQoCbQv1ZcZmUtcRpSxFTZ6ft+zWXgoDLTGYAF\r\nutTCAJ2GPYkl3bUwyj57/hN4VYWpoGOjCDDL0u3SBhSK0rWgeY1aDhdgnz7u\r\nRibfuO6nAIVsfJ8EmMlsAEuO7R+kuFkHTQmmVLyYlnejYqBbHX6ULoRUtrNB\r\n7xCxyKL+ygw7oKF1STxpl9duyH83+vWMDXyYbbCBKe4cfauKkSIeRklGeYl/\r\nKRXz+jHYqpcbj2AQihWtHXEARY1Xgqw1eboKJJ7xQmmxld9Akyv8l1ixNLgC\r\nkIOyqNHaytvYwxK/QsRhm6lZLJvoLkRyh4Q=\r\n=J7PH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/src/index.js","types":"dist/src/index.d.ts","gitHead":"1546f789e0473813c2f57108b8a52b474df44668","scripts":{"compile":"npx tsc"},"_npmUser":{"name":"dmytromykhailiuk","email":"dimamykhayluk@gmail.com"},"repository":{"url":"git+https://github.com/dmytromykhailiuk/rx-react-redux-effect.git","type":"git"},"_npmVersion":"8.19.2","description":"Reactive Library for React","directories":{},"_nodeVersion":"18.10.0","dependencies":{"rxjs":"^7.8.0","react":"^18.2.0"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^8.0.3","eslint":"^8.35.0","prettier":"^2.8.4","typescript":"^4.9.5","@types/node":"^18.15.0","@types/react":"^18.0.28","eslint-config-prettier":"^8.7.0","@typescript-eslint/parser":"^5.54.1","eslint-config-airbnb-typescript":"^17.0.0","@typescript-eslint/eslint-plugin":"^5.54.1"},"_npmOperationalInternal":{"tmp":"tmp/rx-react-redux-effect_1.0.2_1678466268315_0.23442429393280162","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."}},"time":{"created":"2023-03-10T13:27:54.866Z","modified":"2026-08-12T16:09:32.574Z","1.0.0":"2023-03-10T13:27:55.107Z","1.0.1":"2023-03-10T13:31:00.310Z","1.0.2":"2023-03-10T16:37:48.472Z"},"bugs":{"url":"https://github.com/dmytromykhailiuk/rx-react-redux-effect/issues"},"author":{"name":"Dmytro Mykhailiuk"},"license":"ISC","homepage":"https://github.com/dmytromykhailiuk/rx-react-redux-effect#readme","repository":{"url":"git+https://github.com/dmytromykhailiuk/rx-react-redux-effect.git","type":"git"},"description":"Reactive Library for React","maintainers":[{"name":"dmytromykhailiuk","email":"dimamykhayluk@gmail.com"}],"readme":"# RXJS with React\n\n**Reactive Library for React**\n\n(Solution is built on top of RXJS library with NgRx architecture)\n\n## Installation\n\n```sh\nnpm i @dmytromykhailiuk/rx-react-redux-effect\n```\n\n**Interesting packages**\n\n- [Dependency Injection Container](https://www.npmjs.com/package/@dmytromykhailiuk/dependency-injection-container)\n- [React Dependency Injection Module](https://www.npmjs.com/package/@dmytromykhailiuk/react-di-module)\n- [RxJS React Redux Effects](https://www.npmjs.com/package/@dmytromykhailiuk/rx-react-redux-effect)\n- [Condition Flow Engine](https://www.npmjs.com/package/@dmytromykhailiuk/condition-flow-engine)\n\n## Purpose\n\n**Why you should use this library?**\n- You want to write side-effects code as the same way as in NgRx effects using Observables\n- You want to integrate side-effects to redux\n- You want to integrate Observagles in to React application \n\n**If you answered yes to one of the options, then this library is right choice.**\n\n## Actions & Effects & conecting to redux\n\n```typescript\n\nimport { ofType, Actions, SideEffects, createEffect, select, createObservableStore } from '@dmytromykhailiuk/rx-react-redux-effect';\n\nconst actions = new Actions();\n\nconst actions$ = actions.getObservableActions();\n\nconst sayHelloWorld$ = createEffect(\n  () =>\n    actions$.pipe(\n      ofType('Say Hello World'),\n      delay(2000),\n      tap(() => console.log('Hello World!')),\n    ),\n  { dispatch: false },\n);\n\nconst getData$ = createEffect(\n  () =>\n    actions$.pipe(\n      ofType('Get Data'),\n      switchMap(() =>\n        from(fetch(DATA_URL).then(res => res.json())).pipe(\n          map((data) => ({ type: 'Get Data Success', data })),\n          catchError((error) => of({ type: 'Get Data Failure', error })),\n        ),\n      ),\n    ),\n  { dispatch: true },\n);\n\nconst effects = new SideEffects();\n\neffects.add(sayHelloWorld$);\neffects.add(getData$);\n\nconst store$ = createObservableStore(createStore({\n  reducers,\n  middleware: (getDefaultMiddleware) => getDefaultMiddleware().concat(\n    effects.middleware,\n    actions.middleware\n  ),\n}));\n\nstore$.dispatch({ type: 'Action1' });\n\nconst data$ = store$.pipe(select(getSomethingSelector))\n\n```\n","readmeFilename":"README.md"}