Commit graph

43 commits

Author SHA1 Message Date
Richard
0b4dd2f53b fix(sync): fill sparse arrays with null 2024-09-25 22:10:52 -07:00
Richard
e5f655482f refactor: separate code for preserving history 2024-09-25 22:10:19 -07:00
Richard
8aef95e2ae build: update dev config 2024-09-25 22:10:04 -07:00
richard
9ba552cb6c
fix(sync): block patches before initial hydration (#21) 2024-09-20 15:32:20 -07:00
Richard
9329e68a08 fix: allow userdata values for sync 2024-09-15 18:16:59 -07:00
PepeElToro41
0c6241c542
feat: allow molecules in server sync (#20) 2024-09-05 19:23:07 -07:00
Richard
5392fcd69b feat: add overload for nullable atoms 2024-08-26 19:34:18 -07:00
Richard
81f13eabc7 feat: batch sync operations 2024-08-18 14:43:29 -07:00
Kevin
72211a674e
fix: remove observe type union (#15) 2024-08-09 23:17:15 -07:00
richard
c6762a6525
fix: avoid reconnecting to dependencies after cleanup (#14)
* fix: cancel reconnection when unsubscribing

* test: remove print

* feat: allow factory to return nil

* perf: use `next` iteration
2024-07-10 15:13:36 -07:00
richard
9df9ea13cb
fix(types): do not make roblox datatypes partial (#13) 2024-07-09 16:32:23 -07:00
richard
b68879cafd
feat(sync): add preserveHistory option (#12)
* feat(sync): add `preserveHistory` option

* build: omit project json from npm
2024-07-08 13:47:50 -07:00
Richard
acab2d3cce fix(types): use maps for set patches 2024-07-07 02:04:56 -07:00
Richard
7e4d3cbf42 fix(types): add sets to SyncPatch 2024-07-07 02:04:06 -07:00
Richard
cf44dd02ca fix(types): cover more SyncPatch cases 2024-07-07 01:50:12 -07:00
richard
333a86b43f
feat: add sync.isNone, fix sync payload type (#11)
* feat: add `sync.isNone`, fix sync payload type

* docs: add `isNone`
2024-07-07 01:09:57 -07:00
richard
a5a183c3a6
fix: handle sparse array patches (#10) 2024-07-05 13:14:07 -07:00
nonamie
a3b9d562b9
fix: use shallow copy for state snapshots (#9) 2024-06-13 19:31:47 -07:00
duck.__index
8a35fce65d
fix: change <unknown> generic to using <State> (#7) 2024-06-13 03:49:45 -07:00
richard
a90d131fed
feat: allow conditional dependencies (#4)
* feat: allow conditional dependencies

* docs: remove conditional deps warnings

* fix: allow nested captures

* docs: add dev flag

* fix: `try()` uses pcall if passed `finally()`

* docs: interval is optional

* docs: update readme

* docs: add client/server tags
2024-06-11 17:13:43 -07:00
richard
6a9c580bd7
feat: add effect cleanups, add docs (#2)
* docs: update readme

* feat: add cleanup function to effects

* refactor: move peek function to store module

* test: add nested atom check

* docs: add doc comments

* fix: `effect()` type

* refactor: remove divider comment
2024-06-02 01:25:00 -07:00
richard
1a65a4a0de
fix: remove atom.debugLabel reference 2024-06-01 14:56:44 -07:00
Richard
b715b81fec refactor!: rename derive, map 2024-05-26 21:31:28 -07:00
Richard
f2f7a16599 refactor!: minimal react api 2024-05-03 01:02:42 -07:00
Richard
047be71eaa refactor: rename unwrap to peek 2024-04-23 20:35:42 -07:00
Richard
1e7e20902a refactor: remove unused imports 2024-04-20 20:48:12 -07:00
Richard
0c68ff760f test: simplify gc testing 2024-04-20 20:47:25 -07:00
Richard
8ca299f671 refactor: code quality 2024-04-20 18:48:09 -07:00
Richard
f0a7938703 feat: add batch() 2024-04-19 01:01:57 -07:00
Richard
8a0d0977ca fix: call selector with atom state 2024-03-30 02:00:07 -07:00
Richard
0046af5598 refactor: rename Source to Molecule 2024-03-29 11:47:46 -07:00
Richard
f2ec300204 fix: apply patches to non-table values 2024-03-27 23:49:50 -07:00
Richard
382bc3a904 refactor: refine types and code 2024-03-27 23:49:33 -07:00
richard
33ecae2f50
refactor!: design overhaul (#1)
* refactor!: use atom functions

* docs: reformat api reference

* docs: showcase atom functions

* docs: remove unused import

* refactor: finalize updates

* chore: misc edits
2024-03-25 19:53:28 -07:00
Richard
4d4979daa9 feat!: replace split with mapAtom 2024-03-03 22:50:59 -08:00
Richard
fc3cd6d9ad fix: add unmount behavior to split atoms 2024-03-03 10:24:54 -08:00
Richard
4586882d3c test: add benchmarks, dev mode 2024-03-02 02:41:30 -08:00
Richard
dda00f7a4e feat: add sync typescript types 2024-02-29 22:26:39 -08:00
Richard
a30293ee3b refactor: catch validation error with pcall 2024-02-29 21:58:04 -08:00
Richard
d8d0c2a1f8 feat: add sync validation 2024-02-28 21:24:24 -08:00
Richard
17a8c48e54 feat: add state sync 2024-02-27 22:20:18 -08:00
Richard
e7a1f5d235 refactor: polish code, logo 2024-02-25 12:05:59 -08:00
Richard
18723c1377 feat: initial commit 2024-02-25 03:41:09 -08:00