Commit Graph
607 Commits
Author SHA1 Message Date
jakob.scheid 58d5ea8f60 refactor(settings): remove unused parameter
Removed unused oldValue parameter in the selection component.
2026-07-28 13:10:17 +02:00
jakob.scheid 22e3f21c37 refactor(settings)!: pass path to getSettingsRecursively using an array instead of a string
Tests and all files the utility is used in are also updated.

Warning: This change is breaking!
2026-07-28 13:03:47 +02:00
jakob.scheid fa71969658 refactor(settings): use oneline if statement
Use a oneline if statement in the getSetting utility.
2026-07-28 12:56:07 +02:00
jakob.scheid 312734233b test(settings): refactor switch component test
Added and used getWrapper function to switch component test to mount the
component and avoid repeating code.
2026-07-28 12:53:41 +02:00
jakob.scheid c72c5dac46 test(settings): refactor selection component test
Use exampleOptions instead of an own options array, which was equal to
exampleOptions.
2026-07-28 12:43:41 +02:00
jakob.scheid a73cc925fd test(settings): refactor selection test getWrapper function
Updated the getWrapper function to use object destructuring.
2026-07-28 12:41:42 +02:00
jakob.scheid 9473a42037 style(settings): remove unnecessary commas
Removed unnecessary commas in settings input component and settings page
component.
2026-07-28 12:35:27 +02:00
jakob.scheid 702f6d4787 style(settings): remove unnecessary comma
Removed unnecessary trailing comma in the selection component.
2026-07-28 12:33:40 +02:00
jakob.scheid 98a07496f9 fix(settings): update settings input to use default value
The SettingsInput component now uses the default value if there is a
default value. Tests for this were added.
2026-07-28 12:28:06 +02:00
jakob.scheid 67981f6181 test(settings): refactor getWrapper function in settings input test
Updated the getWrapper function to use object destructuring.
2026-07-28 12:20:17 +02:00
jakob.scheid f33f00d7a8 docs(changelog): add settings renderer 2026-07-28 11:20:50 +02:00
jakob.scheid bce7f98cdb test(settings): add tests for settings page
Added tests for the SettingsPage component:
  - correct heading
  - correct settings
2026-07-28 11:01:39 +02:00
jakob.scheid 20a6245cb6 test(settings): add tests for settings page link 2026-07-27 19:22:58 +02:00
jakob.scheid b96bafa8bf test(settings): add tests for settings view
Added tests for the settings view (SettingsView.vue):
  - heading translation
  - sidebar top-level sections
  - correct main element
2026-07-27 19:05:07 +02:00
jakob.scheid 2d7d521e18 refactor(settings): move setttings path normalization utility to a separate file
Moved the normalizePagePath utility from the settings page composable to
a separate utility file and restructured tests accordingly.
2026-07-27 19:05:06 +02:00
jakob.scheid afa7b11534 refactor(settings): remove unused utility
Removed the utility getSectionHeadingLevel and its tests.
2026-07-27 19:05:06 +02:00
jakob.scheid 72c88838cb feat(settings): add page path normalization type check
Added a type check to the normalizePagePath function. The function now
returns an empty array if the path is not a string.
2026-07-27 19:05:05 +02:00
jakob.scheid e14ce45849 feat(settings): omit empty settings page segments
The composable useSettingsPage now omits empty segments in the path.
2026-07-27 19:05:04 +02:00
jakob.scheid 966a984eb0 feat(settings): filter characters that would cause a broken URL from settings page path 2026-07-27 19:05:04 +02:00
jakob.scheid d094ec1f0a test(settings): distinguish between unit tests and integration tests
Separated unit tests and integration tests in the test for
useSettingsPage more clearly.
2026-07-27 19:05:03 +02:00
jakob.scheid 0d38e02767 refactor(settings): push route object instead of raw string
Modified the useSettingsPage composable to use a route object instead
of a raw string in goToSettingsPage and moved settings route child
routes into the settings route itself using 'rest(.*)*'.
2026-07-27 19:05:02 +02:00
jakob.scheid 61a41ec813 feat(settings): make settings page composable more compatible
The composable now uses replace instead of replaceAll which is not
supported by some old browsers.
2026-07-27 19:05:01 +02:00
jakob.scheid a1da2eb2e6 fix(settings): omit leading/trailing and consecuting dots in noralizePagePath 2026-07-27 19:05:00 +02:00
jakob.scheid 89dbf8f0e7 fix(settings): return router.push promise
The settings page composable function to go to a settings page now
returns the promise router.push returns.
2026-07-26 18:45:04 +02:00
jakob.scheid f5af9b3675 test(settings): add tests for settings page composable 2026-07-26 16:04:23 +02:00
jakob.scheid cd6f2da17f test(settings): add tests for selection setting
Added tests for the selection setting component:
  - correct display of options
  - shows values correctly
  - store of values
  - correct translation
2026-07-26 15:44:41 +02:00
jakob.scheid 32b9b860f6 feat(settings): wrap selection option label
Added a wrapper for the settings selection option label to make it
easier to identify (internal).
2026-07-25 16:47:43 +02:00
jakob.scheid eb50936a06 fix(settings): use wrapper only if settings shown
The .settings-main-content wrapper in the settings view is now only
used if there are settings shown. It is not used if the settings are
still loading or no section is selected.
2026-07-25 16:13:47 +02:00
jakob.scheid 5e37cdd778 feat(settings): wrap selection setting label
Added a wrapper for the selection setting label to make it easier to
find (internal).
2026-07-25 15:07:08 +02:00
jakob.scheid bce61bcafb fix(settings): add section fallback
Added a simple message as a fallback that is used if no section is
selected.
2026-07-25 15:06:41 +02:00
jakob.scheid 9ff74157e8 fix(settings): fix handling of non-existent paths
Previously, the settings view now does not check whether the settings
content is falsy. But, if the setting does not exist, the setting itself
is undefined. So, if the specified settings path did not exist, an
error was thrown.
Now, the setting is checked for being falsy, not the setting content.
2026-07-25 13:45:43 +02:00
jakob.scheid 443967d314 chore: resolve merge conflicts 2026-07-25 13:42:04 +02:00
jakob.scheid 35f9a7363d Merge branch 'main' into feature/settings-renderer 2026-07-25 13:33:41 +02:00
jakob.scheid 61cb9d1790 Merge remote-tracking branch 'refs/remotes/origin/feature/settings-renderer' into feature/settings-renderer 2026-07-24 12:53:23 +02:00
jakob.scheid 06fa759df3 test(settings): add settings input tests 2026-07-24 12:52:54 +02:00
jakob.scheid 68e8ff3e7d feat(test-utils): add store setup functionality to mountComponent utility 2026-07-24 12:52:54 +02:00
jakob.scheid 62fa9e8799 fix(settings): prevent setting input done button from animating initially when mounting 2026-07-24 12:52:53 +02:00
jakob.scheid 53326b7e2f feat(settings): make setting input reactive to stored setting 2026-07-24 12:52:53 +02:00
jakob.scheid bcc4afe7fa feat(test-utils): add pinia options to mountComponent test utility 2026-07-24 12:52:37 +02:00
jakob.scheid 99393c08f7 test(settings): add settings input tests 2026-07-24 12:49:17 +02:00
jakob.scheid f2d228c24e feat(test-utils): add store setup functionality to mountComponent utility 2026-07-24 12:19:17 +02:00
jakob.scheid 9ce4cec0bf fix(settings): prevent setting input done button from animating initially when mounting 2026-07-24 12:17:48 +02:00
jakob.scheid f81ce63062 feat(settings): make setting input reactive to stored setting 2026-07-24 12:04:42 +02:00
jakob.scheid 7abf25aa19 feat(tests): add pinia options to mountComponent test utility 2026-07-24 11:36:50 +02:00
jakob.scheid bbae64771a test(settings): add switch component tests 2026-07-23 14:54:19 +02:00
jakob.scheid e6f5f5083f chore(dependencies): add @pinia/testing dependency 2026-07-23 13:18:34 +02:00
jakob.scheid a9e9bffd50 feat(settings): add settings page link 2026-07-23 12:42:10 +02:00
jakob.scheid fe7453ef10 fix(settings): add key prop to settings in settings page 2026-07-23 12:40:33 +02:00
jakob.scheid d0f86bfcec feat(settings): implement settings pages navigation 2026-07-23 12:32:31 +02:00
jakob.scheid 5c46f1bba4 feat(settigns): add settings page composable 2026-07-23 12:23:49 +02:00