{"id":24592330,"url":"https://github.com/darmody/rxact-rxjs","last_synced_at":"2025-03-18T02:46:04.446Z","repository":{"id":65492122,"uuid":"107629562","full_name":"Darmody/rxact-rxjs","owner":"Darmody","description":"Rxact plugin for improving RxJS supporting to Rxact.","archived":false,"fork":false,"pushed_at":"2017-10-31T01:45:17.000Z","size":46,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-04-24T15:45:04.102Z","etag":null,"topics":["rxact","rxjs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Darmody.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-10-20T03:48:49.000Z","updated_at":"2020-03-23T06:26:32.000Z","dependencies_parsed_at":"2023-01-25T19:25:12.642Z","dependency_job_id":null,"html_url":"https://github.com/Darmody/rxact-rxjs","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Darmody%2Frxact-rxjs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Darmody%2Frxact-rxjs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Darmody%2Frxact-rxjs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Darmody%2Frxact-rxjs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Darmody","download_url":"https://codeload.github.com/Darmody/rxact-rxjs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244147374,"owners_count":20405940,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["rxact","rxjs"],"created_at":"2025-01-24T10:14:13.513Z","updated_at":"2025-03-18T02:46:04.428Z","avatar_url":"https://github.com/Darmody.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eRxact Rxjs\u003c/h1\u003e\n\n[![npm version](https://img.shields.io/npm/v/rxact-rxjs.svg?style=flat-square)](https://www.npmjs.com/package/rxact-rxjs)\n[![CircleCI master](https://img.shields.io/circleci/project/github/Darmody/rxact-rxjs/master.svg?style=flat-square)](https://circleci.com/gh/Darmody/rxact-rxjs/tree/master)\n[![Coveralls master](https://img.shields.io/coveralls/github/Darmody/rxact-rxjs/master.svg?style=flat-square)](https://coveralls.io/github/Darmody/rxact-rxjs)\n\nRxact Rxjs is a Rxact plugin for improving RxJS supporting to Rxact.\n\n**NOTE: Rxact support RxJS natively, this plugin is optional.**\n\nWhat does this plugin do:\n* Make calling state stream's operator just like RxJS operator.\n\n\n## Installation\n\n```\n  yarn add rxact rxact-rxjs\n```\n\n## Usage\n\nThere are two ways:\n\n#### 1. Install as a plugin\n\n```javascript\n  import Rx from 'rxjs'\n  import { setup, StateStream } from 'rxact'\n  import { plugin as rxactRxjs } from 'rxact-rxjs'\n\n  setup({\n    Observable: Rx.Observable,\n    plugins: [rxactRxjs()],\n  })\n\n  const stream = new StateStream('stream', { name: 'rxact' })\n\n  // define an operator\n  stream.operator = () =\u003e { console.log('I am an operator.') }\n\n  // you can access operator on Rx.Observable.prototype as 'stream$operator'\n  stream.state$\n    .map(value =\u003e value)\n    .stream$operator()\n    .subscribe()\n```\n\n#### 2. Enhance StateStream\n\n```javascript\n  import Rx from 'rxjs'\n  import { setup, StateStream } from 'rxact'\n  import { decorator as rxactRxjs } from 'rxact-rxjs'\n\n  const EnhancedStateStream = decorator()(StateStream)\n\n  setup({\n    Observable: Rx.Observable,\n    StateStream: EnhancedStateStream,\n  })\n\n  const stream = new EnhancedStateStream('stream', { name: 'rxact' })\n\n  stream.operator = () =\u003e { console.log('I am an operator.') }\n\n  stream.state$\n    .map(value =\u003e value)\n    .stream$operator()\n    .subscribe()\n```\n\nThis plugin help you map state stream's opertors to RxJS operators.\nThe name mapped in the form `[streamName]$[operatorName]`, such as:\n`user$login`, `note$add`.\n\n## API\n\n#### plugin()\n\nreturn a StateStream plugin.\n\n#### decorator()\n\nreturn a function for wrapping StateStream.\n\n## License\n\n[MIT](https://github.com/Darmody/rxact-rxjs/blob/master/LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdarmody%2Frxact-rxjs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdarmody%2Frxact-rxjs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdarmody%2Frxact-rxjs/lists"}