Aria Minaei
|
cfb324a6d5
|
Upgrade typescript
|
2023-08-08 08:43:24 +02:00 |
|
Aria Minaei
|
f562d225c6
|
WIP: Upgrade to react 18
At this point, the studio and core work with react 18, but r3f doesn't.
|
2023-08-03 20:42:40 +02:00 |
|
Aria Minaei
|
f7808a0ef7
|
Fix the bug where unsubscribed prism listeners might still fire one last time
|
2023-02-01 12:32:46 +01:00 |
|
Aria Minaei
|
ef279eddff
|
Add tests and docs to dataverse
|
2023-01-21 22:04:20 +01:00 |
|
Aria Minaei
|
bab95ddad9
|
More dataverse docs
|
2023-01-17 17:58:33 +01:00 |
|
Aria Minaei
|
1e1a5f5831
|
More tests/docs for dataverse
|
2023-01-16 18:31:13 +01:00 |
|
Aria Minaei
|
155c84523a
|
Rename IdentityPrismProvider => PointerToPrismProvider
|
2023-01-16 17:25:44 +01:00 |
|
Aria Minaei
|
a0c7255157
|
Add more tests to dataverse
|
2023-01-15 22:04:27 +01:00 |
|
Aria Minaei
|
e3a9d7665a
|
Add test to pointers
|
2023-01-15 18:17:34 +01:00 |
|
Aria Minaei
|
ab77e09462
|
Add tests to Atom
|
2023-01-15 17:58:16 +01:00 |
|
Aria Minaei
|
3c68ed26ad
|
Remove Atom.set|getState()
|
2023-01-15 12:42:28 +01:00 |
|
Aria
|
d649858529
|
Feature: Custom RAFDrivers (#374)
Co-authored-by: Pete Feltham <dev@felthy.com>
Co-authored-by: Andrew Prifer <andrew.prifer@gmail.com>
|
2023-01-14 15:01:09 +01:00 |
|
Aria Minaei
|
41ce858c2b
|
Fully retire Box
|
2023-01-04 20:51:03 +01:00 |
|
Aria Minaei
|
ac9d8b4481
|
Replace Atom.setIn() and Atom.reduceIn() with the type-safe Atom.setByPointer() and Atom.reduceByPointer()
|
2023-01-04 20:51:01 +01:00 |
|
Aria Minaei
|
5b6306bde9
|
Fix the lint warnings
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
c354a602a4
|
Remove Box in favor of Atom
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
2bd1dc85a9
|
Remove `EventEmitter
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
867cf51acb
|
Remove Tappable and Emitter
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
391958f5cf
|
Use EventEmitter instead of Emitter in Box
... so that we have one less dependency on `Tappable`
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
d2876a7c9a
|
Unify Derivation and Prism 13/13
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
b2116e9a5d
|
Unify Derivation and Prism 11/n
`useDerivation()` => `usePrismInstance()`
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
1236900ddf
|
Unify Derivation and Prism 10/n
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
3552f50613
|
Unify Derivation and Prism 9/n
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
acf34d393d
|
Unify Derivation and Prism 7/n
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
859cb40e0f
|
Unify Derivation and Prism 6/n
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
0a0c35a7b7
|
Unify Derivation and Prism 5/n
|
2023-01-04 20:49:44 +01:00 |
|
Aria Minaei
|
a38d96ec95
|
Unify Derivation and Prism 4/n
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
06808f99e9
|
Unify Derivation and Prism 3/n
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
bfba1d4879
|
Unify Derivation and Prism 2/n
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
12b3f477bc
|
Unify Derivation and Prism (1/n)
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
e9bbb0ef41
|
Remove PrismDerivation.map/flatMap()
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
a073984b2f
|
Mark add/removeDependent() as internal
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
194de8d833
|
Simplify Derivation.onChange()
It no longer uses `DerivationEmitter`.
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
a24a149a52
|
Remove Derivation.tapImmediate()
This is now just an extra flag on `Derivation.onChange()`
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
f2bb24ef99
|
Change the signature of Derivation.changes() to Derivation.onChange()
This way, we no longer expose the `Tappable` interface so we can remove it later.
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
f1cb8edc91
|
Simplify Derivation.onStale()
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
5c1aa1cd50
|
Remove Derivation.changesWithoutValues()
And replace it with `Derivation.onStale()`
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
9094e3041e
|
Remove AbstractDerivation
At this point, the only derivation that we have is `PrismDerivation`.
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
63228fd86a
|
Simplify prism.state()
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
ee68112867
|
Implement prism.source()
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
b117ee0aff
|
Retire DerivationFromSource (1/2)
This is supposed to break the build. In the next commit, I'll implement `HotScope.source()` to fix the build.
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
918dd754a7
|
Retire ConstantDerivation
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
ed322b66de
|
Separate the hot path from the cold path in prisms
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
c81fe11e52
|
Rename Prism.changesWithoutValues() to onStale()
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
a71fff0c73
|
Don't expose PrismDerivation as a class
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
e0a61981c9
|
Have PrismDerivation no longer extend AbstractDerivation
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
0655e5b1c4
|
Add performance note about prism scopes
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
83832ef85b
|
Note down that map/flatMap must be removed
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
6d7d461223
|
Remove all WeakMaps from prism's scope
... making it easier to debug prism scopes. Again, there is a perf regression here.
|
2023-01-04 20:49:43 +01:00 |
|
Aria Minaei
|
1c69cb7055
|
Save prism effects in the prism scope, rather than a WeakMap
... for easier debugging, but there is a perf regression which I
can't yet quantify as the benchmark suit doesn't support comparisons.
|
2023-01-04 20:49:43 +01:00 |
|