- itemImport: check response.ok in fetchAppDetails so a genuine 404
(from the appload return-type fix) is reported as 'Failed to find app
id' instead of being parsed as a successful import; applied to the
source and the committed compiled bundle.
- phpunit.xml: point the schema URL at 12.5 to match the installed
PHPUnit 12.5.x.
- ColorHelpersTest: exercise the get_brightness() non-hex stripping the
test name promised (interior separators), which the prior assertion
never covered.
In tags mode the dashboard always opened showing every link. This adds a
"Default tag" setting (Advanced) that pre-selects one tag group on load, so
the dashboard opens filtered to it - the built-in equivalent of the custom
JavaScript workaround people have been sharing.
The setting is a select populated from the user's own tags, following the
same dynamic-option pattern already used for the search provider. When a tag
is chosen its slug is exposed on the tag list and the matching tab is
activated on load; when the setting is empty, behaviour is unchanged and all
links are shown.
Resolves#1556
The export endpoint (api/item) now emits each item's assigned tag titles,
excluding the root/default dashboard tag. On import, those titles are
resolved back to local tags - reusing an existing tag or creating a missing
one - instead of dropping every imported item onto the default dashboard.
Tags round-trip by title so a config can be moved between instances without
having to reassign each item to its section by hand.
Resolves#1555