diff options
| author | Owen Jacobson <owen@grimoire.ca> | 2025-07-08 01:49:07 -0400 |
|---|---|---|
| committer | Owen Jacobson <owen@grimoire.ca> | 2025-07-08 01:55:36 -0400 |
| commit | aeb159c401ef446e6564e5a3643027560a3e22f4 (patch) | |
| tree | 76d01d1804292906105c21372904d93362b3f61b /tools/run-unified | |
| parent | 64d16441a390e889231f2f67333d5f305b7ab878 (diff) | |
Create "derivers," as an exception-free option for working with structured data in swatches.
This is meant to be used alongside `$derive`, for inputs with complex structure. For example:
```js
let jsonInput = $state('{}');
let json = $derived(deriver.json(jsonInput));
// …
<textarea bind:value={jsonInput}></textarea>
```
This allows textual editing of the data, while preventing exceptions due to syntax or logical errors in partially-edited data from breaking Svelte's derive process (see comments). Note that these exceptions are not considered [unexpected errors] by SvelteKit, because they do not arise "while handling a request;" they are considered errors by Svelte, but Svelte doesn't appear to provide any affordances for handling errors in this context, so we have to bring our own.
[unexpected errors]: https://svelte.dev/docs/kit/errors#Unexpected-errors
Diffstat (limited to 'tools/run-unified')
0 files changed, 0 insertions, 0 deletions
