Skip to content

feat: address issuehunt #230#282

Open
ncthuc2004 wants to merge 11 commits into
piotrwitek:masterfrom
ncthuc2004:issuehunt-230-rtk-compat-v2
Open

feat: address issuehunt #230#282
ncthuc2004 wants to merge 11 commits into
piotrwitek:masterfrom
ncthuc2004:issuehunt-230-rtk-compat-v2

Conversation

@ncthuc2004

@ncthuc2004 ncthuc2004 commented May 18, 2026

Copy link
Copy Markdown

Automated PR from issuehunt-230-rtk-compat-v2 for IssueHunt issue #230.


IssueHunt Summary

Referenced issues

This pull request has been submitted to:


@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces createAsyncReducer and createAsyncEpic to the library, along with documentation updates and comprehensive test suites. Feedback identifies that createAsyncReducer is missing from the public API exports in src/index.ts and points out an inconsistency regarding the export source of AsyncActionCreatorMap. Additionally, the documentation needs to be updated to reflect the new rxjs peer dependency, as it currently claims the library has no third-party dependencies.

Comment thread src/index.ts
Comment on lines +15 to +20
export {
createAsyncEpic,
AsyncActionCreatorMap,
AsyncEpicOutputAction,
CreateAsyncEpicOptions,
} from './create-async-epic';

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The createAsyncReducer function is missing from the public API exports, which contradicts the documentation and examples provided in the README. Additionally, there is a discrepancy regarding AsyncActionCreatorMap: it is exported from ./create-async-epic here, but the tests in src/create-async-reducer.spec.ts import it from ./create-async-reducer. It should be exported from its primary definition file to ensure consistency.

Suggested change
export {
createAsyncEpic,
AsyncActionCreatorMap,
AsyncEpicOutputAction,
CreateAsyncEpicOptions,
} from './create-async-epic';
export {
createAsyncEpic,
AsyncEpicOutputAction,
CreateAsyncEpicOptions,
} from './create-async-epic';
export {
createAsyncReducer,
AsyncActionCreatorMap,
} from './create-async-reducer';

Comment thread package.json
"typescript": "3.7.2"
},
"peerDependencies": {
"rxjs": "^6.0.0"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Adding rxjs as a peer dependency contradicts the "no third-party dependencies" claim in the README (line 61). While this is an appropriate peer dependency for the new Epic API, the documentation should be updated to reflect that the library now has optional dependencies for specific features to maintain transparency about its footprint.

@ncthuc2004

Copy link
Copy Markdown
Author

Addressed the review points in this branch: src/index.ts now exports createAsyncReducer/AsyncActionCreatorMap from ./create-async-reducer, and README Goal text now clarifies rxjs as optional peer dependency for async helpers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant