I am currently in the process of rewriting how the Titan system handles some things, and I was wondering about whether I should start using the dynamic reducers.
Way back when I first made the system, the TJS dynamic reducers didn't exist yet, so went through the process of setting up my own item list component for character sheets.
Essentially, the component is a reactive list that looks through an actor's item using a filter function (such as type === 'spell', etc).
Then it creates a svelte component for each item that matches the filter (such as a Character Sheet Spell Component) and inputs the item's ID. The filter can be changed at runtime in response to user input.
The item component then looks up its item like so:
$: item = $document.items.get(id);
$: item = $document.items.get(id);
This way, whenever the item gets updated, the actor sheet of the owning actor also gets updated.
Similarly, I am able to modify the item with controls from the actor sheet like so:
So what I am wondering is, is it worth it to convert to using the dynamic reducers when I already have components that do the heavy lifting of sorting / filtering items, as well as updating the actor sheet in response to item changes? Are there any additional benefits I would gain from doing so?