Commit Graph
1521 Commits
Author SHA1 Message Date
Donkie 93f49449a0 client_v2: restore the remembered view by navigating, not by parsing
Folding the remembered grouping into parseLibraryState left the address
bar saying nothing while the list was grouped, and that gap broke the
group control: picking the default grouping serialises back to the very
same bare URL, and an unchanged URL means SvelteKit reuses its cached
load, so the choice never took effect. The load was also no longer a
pure function of the URL, which is what that per-URL cache assumes -
preloading the nav tab cached a redirect built from the old preference
and replayed it.

The page now navigates on arrival to the URL that spells the remembered
view out, replacing the history entry. The load goes back to reading the
URL alone, the view stays linkable, and every distinct view has a
distinct URL again. Only on arrival: a goto is a choice the user just
made and a popstate is Back, and overruling either would be wrong.
2026-08-08 10:01:10 +02:00
Donkie 538c78e7b3 client_v2: remember the library's grouping and sorting
Group and sort live in the URL, so they survive a reload of a library
link but not a trip to Settings and back: every other route links to a
bare `/`, which handed back the shipped view and made a deliberately
chosen grouping something the user re-picked several times a day.

A URL that mentions neither grouping nor sorting now means "however I
had it last", restored from localStorage; one that mentions either still
wins outright, so a shared link shows its recipient what its sender saw.
Only the layout is remembered - filters, search and archived-visibility
hide spools, and one silently restored days later reads as missing data.

Fixes #1036
2026-08-08 10:00:33 +02:00
github-actions[bot] 633e1fa2b0 Merge pull request #1040 from Donkie/weblatev2
Translations update from Hosted Weblate
2026-08-08 06:47:39 +00:00
Miloslav Kos 4c1c905a83 Translated using Weblate (Czech)
Currently translated at 82.8% (425 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/cs/
2026-08-08 06:43:28 +00:00
Donkie 71c607122f Merge pull request #1039 from Donkie/client-v2-resizable-list
client_v2: make the library list column resizable
2026-08-08 08:43:14 +02:00
Donkie 16e34da538 client_v2: make the library list column resizable
The list was a fixed 470px, which truncated longer filament names with no
way to see the rest. The divider between the list and the inspector is now
a draggable, focusable separator, and the width is remembered per browser.

Fixes #1034
2026-08-08 08:33:43 +02:00
github-actions[bot] 3e0a143966 Merge pull request #1032 from Donkie/weblatev2
Translations update from Hosted Weblate
2026-08-07 08:09:13 +00:00
github-actions[bot] b315b63ddc Merge pull request #1031 from Donkie/weblate
Translations update
2026-08-07 08:08:13 +00:00
변성운 590b510f20 Translated using Weblate (Korean)
Currently translated at 100.0% (293 of 293 strings)

Co-authored-by: 변성운 <kamyu1537@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/spoolman/web-client/ko/
Translation: Spoolman/Web Client LEGACY
2026-08-07 09:58:03 +02:00
Miloslav Kos 216eba5d26 Translated using Weblate (Czech)
Currently translated at 76.2% (391 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/cs/
2026-08-07 07:57:27 +00:00
Donkie f38720314b Bump version to 0.26.1 v0.26.1 2026-08-06 18:44:00 +00:00
github-actions[bot] 910f0b079b Merge pull request #1029 from Donkie/weblatev2
Translations update from Hosted Weblate
2026-08-06 07:32:00 +00:00
변성운 29113812f3 Translated using Weblate (Korean)
Currently translated at 29.8% (153 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/ko/
2026-08-06 09:27:17 +02:00
Miloslav Kos a03229be6f Translated using Weblate (Czech)
Currently translated at 75.8% (389 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/cs/
2026-08-06 09:27:16 +02:00
github-actions[bot] 007a0e0ff5 Merge pull request #1028 from Donkie/weblate
Translations update
2026-08-06 06:31:12 +00:00
Miloslav Kos 2d6945f5f6 Translated using Weblate (Czech)
Currently translated at 99.3% (291 of 293 strings)

Co-authored-by: Miloslav Kos <kos.m@post.cz>
Translate-URL: https://hosted.weblate.org/projects/spoolman/web-client/cs/
Translation: Spoolman/Web Client LEGACY
2026-08-06 06:25:40 +00:00
github-actions[bot] e3800433e7 Merge pull request #1027 from Donkie/weblatev2
Translations update from Hosted Weblate
2026-08-06 06:25:17 +00:00
Sungjun Park 3583c5d011 Translated using Weblate (Korean)
Currently translated at 29.8% (153 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/ko/
2026-08-06 08:20:30 +02:00
Sungjun Park e4813ce86c Translated using Weblate (Korean)
Currently translated at 28.8% (148 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/ko/
2026-08-06 08:15:47 +02:00
Daniel Hultgren c1a0882ee9 Translated using Weblate (Swedish)
Currently translated at 56.7% (291 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/sv/
2026-08-06 08:13:40 +02:00
Sungjun Park 52deaf7c8c Translated using Weblate (Korean)
Currently translated at 28.2% (145 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/ko/
2026-08-06 08:13:38 +02:00
Miloslav Kos b0c9f572f7 Translated using Weblate (Czech)
Currently translated at 70.7% (363 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/cs/
2026-08-06 08:13:37 +02:00
Donkie 5cfdde4cc6 Merge pull request #1025 from Donkie/worktree-issue-1019-unassigned-extra-group
Show every unassigned spool when grouping by an extra field
2026-08-05 19:49:29 +02:00
Donkie dd39a11c7e Show every unassigned spool when grouping by an extra field
Fixes #1019. A dashboard card grouped by a custom spool field counted more
spools than it listed: the group aggregate summed them, the card's own query
returned a subset.

Grouping and filtering disagreed about what "no value" means. group_by keys on
the decoded value, so a spool holding the JSON empty string a cleared text box
writes became its own group, separate from the null one; the client renders
both as "unassigned" and adds the counts. The card then fetches its spools with
`extra.<key>=`, whose empty branch matched only NULL and JSON null - never the
empty string. Built-in string columns have matched both NULL and '' since
forever (add_where_clause_str_opt), which is why grouping by location was fine.

- The empty extra-field filter matches a stored empty string too.
- Value-keyed group axes (extra fields, location, material) fold a blank into
  NULL, so "unassigned" is one group rather than two the client can only draw
  as one.
- Emptying a text extra field clears it instead of storing "", so no new spool
  lands in the state above.
- The dashboard clears an extra field with a real JSON null. It sent the string
  'null', which the API rejects as not-a-string, so dragging a spool onto the
  unassigned card 400'd on every extra-field board.
2026-08-05 19:42:59 +02:00
github-actions[bot] 3e1c4ffcd7 Merge pull request #1024 from Donkie/weblatev2
Translations update from Hosted Weblate
2026-08-05 17:03:58 +00:00
Anonymous 5208b47007 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/zh_Hans/
2026-08-05 18:59:23 +02:00
Anonymous 0d73e0d34e Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/zh_Hant/
2026-08-05 18:59:17 +02:00
Anonymous 5e2c4b0c0c Translated using Weblate (Ukrainian)
Currently translated at 25.3% (130 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/uk/
2026-08-05 18:59:12 +02:00
Anonymous 63eee038d7 Translated using Weblate (Turkish)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/tr/
2026-08-05 18:59:07 +02:00
Anonymous f38743b179 Translated using Weblate (Thai)
Currently translated at 26.3% (135 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/th/
2026-08-05 18:59:02 +02:00
Anonymous 9bf4022776 Translated using Weblate (Tamil)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/ta/
2026-08-05 18:58:56 +02:00
Anonymous de8c6de460 Translated using Weblate (Swedish)
Currently translated at 32.1% (165 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/sv/
2026-08-05 18:58:50 +02:00
Anonymous 0d75364b07 Translated using Weblate (Slovenian)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/sl/
2026-08-05 18:58:45 +02:00
Anonymous 7d07905091 Translated using Weblate (Slovak)
Currently translated at 1.7% (9 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/sk/
2026-08-05 18:58:39 +02:00
Anonymous 08bbd6480b Translated using Weblate (Russian)
Currently translated at 68.6% (352 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/ru/
2026-08-05 18:58:33 +02:00
Anonymous 86204ffddb Translated using Weblate (Romanian)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/ro/
2026-08-05 18:58:28 +02:00
Anonymous 4be91b365a Translated using Weblate (Portuguese)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/pt/
2026-08-05 18:58:23 +02:00
Anonymous 5af5ca17d1 Translated using Weblate (Portuguese (Brazil))
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/pt_BR/
2026-08-05 18:58:18 +02:00
Anonymous 8013dd1ce2 Translated using Weblate (Polish)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/pl/
2026-08-05 18:58:13 +02:00
Anonymous ee9cf0d830 Translated using Weblate (Dutch)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/nl/
2026-08-05 18:58:08 +02:00
Anonymous 3e8eaf6aaf Translated using Weblate (Norwegian Bokmål)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/nb_NO/
2026-08-05 18:58:03 +02:00
Anonymous 2af3b95d4f Translated using Weblate (Latvian)
Currently translated at 0.9% (5 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/lv/
2026-08-05 18:57:58 +02:00
Anonymous 7707dad1a4 Translated using Weblate (Lithuanian)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/lt/
2026-08-05 18:57:53 +02:00
Anonymous 8382a9037d Translated using Weblate (Korean)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/ko/
2026-08-05 18:57:48 +02:00
Anonymous fc4cf78451 Translated using Weblate (Japanese)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/ja/
2026-08-05 18:57:43 +02:00
Anonymous 13b1ab7f94 Translated using Weblate (Italian)
Currently translated at 26.7% (137 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/it/
2026-08-05 18:57:38 +02:00
Anonymous 7262563e4d Translated using Weblate (Hungarian)
Currently translated at 25.3% (130 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/hu/
2026-08-05 18:57:29 +02:00
Anonymous 7cf8f6f0eb Translated using Weblate (Hindi (Latin script))
Currently translated at 0.3% (2 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/hi_Latn/
2026-08-05 18:57:24 +02:00
Anonymous 01462d3df3 Translated using Weblate (French)
Currently translated at 26.3% (135 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/fr/
2026-08-05 18:57:19 +02:00
Anonymous faa4659b6d Translated using Weblate (Persian)
Currently translated at 26.3% (135 of 513 strings)

Translation: Spoolman/Spoolman Web UI v2
Translate-URL: https://hosted.weblate.org/projects/spoolman/spoolman-web-ui-v2/fa/
2026-08-05 18:57:14 +02:00