-
-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: modern implementation #107
base: master
Are you sure you want to change the base?
Conversation
LGTM |
better long term support without breaking current build
I changed the node engine compatibility from version 6 to 14. I believe this is why the CI was failing, as it was running node version 10. Most newer packages support node v14+ only nowadays. Also I have marked this pull request as a draft. I still need to add Cubit/Bloc and their respective tests. |
These are some big changes. I've tried to keep the implementation as close as possible to the original with 100% code coverage. Some things to note related to Typescript, JavaScript, and limitations:
|
Thanks so much for the huge contribution! Iβll make sure to review this within the next few days ππ― |
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## master #107 +/- ##
==========================================
Coverage 100.00% 100.00%
==========================================
Files 1 9 +8
Lines 33 196 +163
Branches 5 12 +7
==========================================
+ Hits 33 196 +163
β View full report in Codecov by Sentry. |
BREAKING CHANGE: sync with felangel/bloc.js#107
# [1.0.0-beta.3](bloc-v1.0.0-beta.2...bloc-v1.0.0-beta.3) (2023-02-19) ### Features * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
# [1.0.0-beta.2](react-bloc-v1.0.0-beta.1...react-bloc-v1.0.0-beta.2) (2023-02-19) ### Features * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
# [1.0.0-beta.2](bloc-concurrency-v1.0.0-beta.1...bloc-concurrency-v1.0.0-beta.2) (2023-02-19) ### Features * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
# [1.0.0-beta.2](bloc-todos-v1.0.0-beta.1...bloc-todos-v1.0.0-beta.2) (2023-02-19) ### Features * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
# [1.0.0-beta.2](hacker-news-v1.0.0-beta.1...hacker-news-v1.0.0-beta.2) (2023-02-19) ### Features * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
# 1.0.0-fix-release.1 (2023-03-10) ### Bug Fixes * **bloc:** π added State to BlocBaseConfig generic argument ([e0cda85](e0cda85)) * **bloc:** π change historyLimit to 1 ([359085f](359085f)) * **bloc:** π rethrow errors caught inside emit ([8d20c83](8d20c83)) * **bloc:** π rethrow unhandled error from eventHandler ([19cef9f](19cef9f)) * **bloc:** π switched to vite for bundling ([a9780d5](a9780d5)) * **build:** π π¦οΈ set sideEffects flag to false ([8ee593a](8ee593a)) * **state:** π change property stateName to name ([a360c93](a360c93)) * **state:** π make immer peer dependency ([4382844](4382844)) * **state:** π switched to vite for bundling ([a1c7847](a1c7847)) ### Features * **bloc:** β¨ added BlocHistory class for time travel ([14334b1](14334b1)) * **bloc:** β¨ added customizable subject option ([5818057](5818057)) * **bloc:** β¨ added history ([0777c1e](0777c1e)) * **bloc:** β¨ use Subject instead of BehaviourSubject ([ffc0df8](ffc0df8)) * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) * **ci:** β¨ π· ci trigger ([0720886](0720886)) * **ci:** β¨ π· ci trigger for @jacobtipp/react-bloc ([f7130a1](f7130a1)) * **ci:** β¨ π· ci trigger for @jacobtipp/state ([d19970f](d19970f)) * initial commit [skip-ci] ([904a867](904a867)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
# 1.0.0-fix-release.1 (2023-03-10) ### Bug Fixes * **bloc-provider:** π explicitily accept BlocBase<any> for bloc prop array ([0d75ee2](0d75ee2)) * **bloc:** π added State to BlocBaseConfig generic argument ([e0cda85](e0cda85)) * **bloc:** π rethrow errors caught inside emit ([8d20c83](8d20c83)) * **bloc:** π rethrow unhandled error from eventHandler ([19cef9f](19cef9f)) * **bloc:** π switched to vite for bundling ([a9780d5](a9780d5)) * **build:** π π¦οΈ set sideEffects flag to false ([8ee593a](8ee593a)) * **react-bloc:** π added memoization to hooks where needed ([a1cfeeb](a1cfeeb)) * **react-bloc:** π fix path for types in package.json ([8aa5c35](8aa5c35)) * **react-bloc:** π populate BlocListener with initial state ([bd84382](bd84382)) * **react-bloc:** π satisfy react-hooks/rules-of-hooks ([08d029a](08d029a)) * **react-bloc:** π set private to false in package.json ([18fb19c](18fb19c)) * **state:** π change property stateName to name ([a360c93](a360c93)) * **state:** π make immer peer dependency ([4382844](4382844)) * **state:** π switched to vite for bundling ([a1c7847](a1c7847)) ### Features * **bloc:** β¨ added customizable subject option ([5818057](5818057)) * **bloc:** β¨ added history ([0777c1e](0777c1e)) * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) * **ci:** β¨ π· ci trigger ([0720886](0720886)) * **ci:** β¨ π· ci trigger for @jacobtipp/react-bloc ([f7130a1](f7130a1)) * **ci:** β¨ π· ci trigger for @jacobtipp/state ([d19970f](d19970f)) * initial commit [skip-ci] ([904a867](904a867)) * **react-bloc:** β¨ add useDebugValue ([526fc9b](526fc9b)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
# 1.0.0-fix-release.1 (2023-03-10) ### Bug Fixes * **bloc-concurrency:** π update type definitions path ([2e37905](2e37905)) * **bloc:** π added State to BlocBaseConfig generic argument ([e0cda85](e0cda85)) * **bloc:** π rethrow errors caught inside emit ([8d20c83](8d20c83)) * **bloc:** π rethrow unhandled error from eventHandler ([19cef9f](19cef9f)) * **bloc:** π switched to vite for bundling ([a9780d5](a9780d5)) * **build:** π π¦οΈ set sideEffects flag to false ([8ee593a](8ee593a)) * **state:** π change property stateName to name ([a360c93](a360c93)) * **state:** π make immer peer dependency ([4382844](4382844)) * **state:** π switched to vite for bundling ([a1c7847](a1c7847)) ### Features * **bloc:** β¨ added customizable subject option ([5818057](5818057)) * **bloc:** β¨ added history ([0777c1e](0777c1e)) * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) * **ci:** β¨ π· ci trigger ([0720886](0720886)) * **ci:** β¨ π· ci trigger for @jacobtipp/bloc-concurrency ([6d1de94](6d1de94)) * **ci:** β¨ π· ci trigger for @jacobtipp/react-bloc ([f7130a1](f7130a1)) * **ci:** β¨ π· ci trigger for @jacobtipp/state ([d19970f](d19970f)) * initial commit [skip-ci] ([904a867](904a867)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
# 1.0.0-fix-publish.1 (2023-03-11) ### Bug Fixes * **bloc:** π added State to BlocBaseConfig generic argument ([e0cda85](e0cda85)) * **bloc:** π change historyLimit to 1 ([359085f](359085f)) * **bloc:** π rethrow errors caught inside emit ([8d20c83](8d20c83)) * **bloc:** π rethrow unhandled error from eventHandler ([4c7b3b6](4c7b3b6)) * **bloc:** π switched to vite for bundling ([a9780d5](a9780d5)) * **bloc:** π trigger release ([d33d70b](d33d70b)) * **build:** π π¦οΈ set sideEffects flag to false ([8ee593a](8ee593a)) * **state:** π change property stateName to name ([a360c93](a360c93)) * **state:** π make immer peer dependency ([4382844](4382844)) * **state:** π switched to vite for bundling ([a1c7847](a1c7847)) ### Features * **bloc:** β¨ added BlocHistory class for time travel ([14334b1](14334b1)) * **bloc:** β¨ added customizable subject option ([5818057](5818057)) * **bloc:** β¨ added history ([0777c1e](0777c1e)) * **bloc:** β¨ use Subject instead of BehaviourSubject ([ffc0df8](ffc0df8)) * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) * **ci:** β¨ π· ci trigger ([0720886](0720886)) * **ci:** β¨ π· ci trigger for @jacobtipp/react-bloc ([f7130a1](f7130a1)) * **ci:** β¨ π· ci trigger for @jacobtipp/state ([d19970f](d19970f)) * initial commit [skip-ci] ([904a867](904a867)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
# 1.0.0-fix-publish.1 (2023-03-11) ### Bug Fixes * **bloc-provider:** π explicitily accept BlocBase<any> for bloc prop array ([0d75ee2](0d75ee2)) * **bloc:** π added State to BlocBaseConfig generic argument ([e0cda85](e0cda85)) * **bloc:** π rethrow errors caught inside emit ([8d20c83](8d20c83)) * **bloc:** π rethrow unhandled error from eventHandler ([4c7b3b6](4c7b3b6)) * **bloc:** π switched to vite for bundling ([a9780d5](a9780d5)) * **bloc:** π trigger release ([d33d70b](d33d70b)) * **build:** π π¦οΈ set sideEffects flag to false ([8ee593a](8ee593a)) * **react-bloc:** π added memoization to hooks where needed ([a1cfeeb](a1cfeeb)) * **react-bloc:** π fix path for types in package.json ([8aa5c35](8aa5c35)) * **react-bloc:** π populate BlocListener with initial state ([bd84382](bd84382)) * **react-bloc:** π satisfy react-hooks/rules-of-hooks ([08d029a](08d029a)) * **react-bloc:** π set private to false in package.json ([18fb19c](18fb19c)) * **state:** π change property stateName to name ([a360c93](a360c93)) * **state:** π make immer peer dependency ([4382844](4382844)) * **state:** π switched to vite for bundling ([a1c7847](a1c7847)) ### Features * **bloc:** β¨ added customizable subject option ([5818057](5818057)) * **bloc:** β¨ added history ([0777c1e](0777c1e)) * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) * **ci:** β¨ π· ci trigger ([0720886](0720886)) * **ci:** β¨ π· ci trigger for @jacobtipp/react-bloc ([f7130a1](f7130a1)) * **ci:** β¨ π· ci trigger for @jacobtipp/state ([d19970f](d19970f)) * initial commit [skip-ci] ([904a867](904a867)) * **react-bloc:** β¨ add useDebugValue ([526fc9b](526fc9b)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
# 1.0.0-fix-publish.1 (2023-03-11) ### Bug Fixes * **bloc-concurrency:** π update type definitions path ([2e37905](2e37905)) * **bloc:** π added State to BlocBaseConfig generic argument ([e0cda85](e0cda85)) * **bloc:** π rethrow errors caught inside emit ([8d20c83](8d20c83)) * **bloc:** π rethrow unhandled error from eventHandler ([4c7b3b6](4c7b3b6)) * **bloc:** π switched to vite for bundling ([a9780d5](a9780d5)) * **bloc:** π trigger release ([d33d70b](d33d70b)) * **build:** π π¦οΈ set sideEffects flag to false ([8ee593a](8ee593a)) * **state:** π change property stateName to name ([a360c93](a360c93)) * **state:** π make immer peer dependency ([4382844](4382844)) * **state:** π switched to vite for bundling ([a1c7847](a1c7847)) ### Features * **bloc:** β¨ added customizable subject option ([5818057](5818057)) * **bloc:** β¨ added history ([0777c1e](0777c1e)) * **bloc:** π₯ β¨ sync with bloc.js fork ([3912488](3912488)) * **ci:** β¨ π· ci trigger ([0720886](0720886)) * **ci:** β¨ π· ci trigger for @jacobtipp/bloc-concurrency ([6d1de94](6d1de94)) * **ci:** β¨ π· ci trigger for @jacobtipp/react-bloc ([f7130a1](f7130a1)) * **ci:** β¨ π· ci trigger for @jacobtipp/state ([d19970f](d19970f)) * initial commit [skip-ci] ([904a867](904a867)) ### BREAKING CHANGES * **bloc:** sync with felangel/bloc.js#107
Status
IN DEVELOPMENT
Breaking Changes
YES
Description
Update API to reflect modern v8.x Dart implementation
Type of Change