Commit graph

122 commits

Author SHA1 Message Date
12daec85e6 Extract Ref class into separate module 2024-02-29 15:33:26 +01:00
6d4e398336 Add Ref class to follow reactive elements 2024-02-29 15:29:36 +01:00
d53e6c7fd5 Add replace and replaced events to reactive elements 2024-02-29 15:29:20 +01:00
3ff99bee9b Add jsdoc class annotations to skooma module 2024-02-12 13:38:57 +01:00
8876dcfa68
Add meta-tag domProxy 2024-02-06 22:56:08 +01:00
0a80d860df
Rename domLens to domProxy / domArray 2024-02-06 22:02:29 +01:00
39012902e0
Full refactor of State (now Observable)
* Renamed to Observable
* Updated skooma.js to match the API
2024-02-06 22:00:48 +01:00
0a14283892
Remvoe stored state class
* The idea was good but the specifics were dumb
* Re-implement later with a better interface
2024-02-06 17:43:23 +01:00
5115de451f
Correct spelling of domLens 2024-02-06 17:43:23 +01:00
9b738bd589
Remove vestigial ChildObserver class from DOM lens 2024-02-06 17:43:23 +01:00
71d7c0ff4f
Rename "reactive" object to observable in code 2024-02-06 17:43:23 +01:00
784eb78f0a Refactor 2024-01-24 16:43:50 +01:00
6248593570 Fix and refactor skooma.js 2024-01-24 16:13:01 +01:00
5488f2a49a Fix bug in composed state 2024-01-24 16:12:22 +01:00
30f52a05e5 Refactor state module 2024-01-24 16:12:15 +01:00
1c03da8815 Make domLense error on non-element targets 2024-01-24 15:06:12 +01:00
44b6343de6 Remove event name cleanup in skooma.js 2024-01-24 14:51:45 +01:00
2445617e8b Switch to svelte store contract 2024-01-24 14:50:51 +01:00
688cbae9ba Refactor skooma.js 2024-01-24 13:14:06 +01:00
74e364e714 Add methods param to component generator 2024-01-24 10:21:59 +01:00
2f95afbcb7 Fix error handling arrays in skooma.js 2024-01-24 10:21:59 +01:00
24ea67bf81 Add get/set filters to forward state 2024-01-24 10:21:59 +01:00
dc29b10b1a [WIP] Tweak skooma state contract 2024-01-22 11:22:11 +01:00
dda6673f15 [WIP] Add child generators and refactor 2024-01-22 10:35:42 +01:00
f6e7c00944 [WIP] Refactor get/set with arguments 2024-01-22 10:32:35 +01:00
2b8ba6e7d6
Change domLense method semantics 2024-01-20 15:06:23 +01:00
7a789d407e [WIP] Major refactor and API change for version 2.0 2024-01-17 15:16:46 +01:00
c5c4e973a5 Remove valueKey from StoredState 2024-01-17 14:09:50 +01:00
47994975f9 Replace state "deep" option with "shallow" option 2024-01-17 11:52:41 +01:00
035eeb8fc0 Add subscribe method to state class
This makes the State class fully compatible with svelte stores
2024-01-17 11:39:16 +01:00
69a2aa1ca3 Allow calling get and set without property name 2024-01-17 11:31:38 +01:00
5726b8c2b9 Rename proxy to values in State class 2024-01-17 11:07:57 +01:00
5a29b0e662 Make handle return a value just in case it is desired 2024-01-15 11:50:27 +01:00
0e6eee28fd Make DOMState API more generic
The old interface was too specific to the way domLense works, by
assuming the value to be an array that gets mutated elsewhere (or a
proxy that behaves like one)
2024-01-15 11:48:52 +01:00
eb75dc531a Remove exports from state.js 2024-01-15 11:03:11 +01:00
3b3e6467c8 Refactor exports
Export rules:
* All default exports as named exports
* Default export wherever it makes sense
2024-01-11 15:44:11 +01:00
7be7cf0210
Change DOMState value to last static value 2024-01-10 22:47:30 +01:00
61be174b6e
Add domState class 2024-01-10 20:42:47 +01:00
f199f64932 Add kebab<->camel case conversion to component state 2024-01-10 15:23:10 +01:00
451718cb74 Add event method/setting to domLense 2024-01-10 15:01:46 +01:00
fb000ba7a3 Replace state from component constructor entirely 2024-01-10 13:31:42 +01:00
b51732636d Add component as argument to state component constructor 2024-01-10 13:28:56 +01:00
f6b82e22ef Enable lense growing with empty values 2024-01-08 14:27:14 +01:00
be79784b2d Add domLense helper 2024-01-08 13:37:36 +01:00
f79e7a9c14
Fix error when passing undefined into tag generator 2023-12-30 13:17:36 +01:00
b476b8651e
Bump minor version number 2023-12-30 13:09:35 +01:00
cdc56f5848
Add nested state change forwarding 2023-12-27 19:58:49 +01:00
37948987b0
Add composed states 2023-12-27 18:52:42 +01:00
b7bb093a0c
Compare strings in component attributes 2023-12-27 18:50:11 +01:00
7febebce65
Map names of forward states to "value" 2023-12-27 18:50:11 +01:00