feat: connect settings web component (#1211)

Replaces the Connect Settings form at Settings > Management Access with a webcomponent containing a generated form.

CodeRabbit:

- **New Features**
- Enhanced connection settings with an updated UI, including a new
custom element `<unraid-connect-settings>`.
- Introduced several new form components (e.g., `NumberField`,
`StringArrayField`, `Select`, `Switch`, `PreconditionsLabel`,
`ControlLayout`, and `VerticalLayout`) for a more dynamic experience.
- Added a notification system with the `Toaster` component for user
feedback.
- New GraphQL operations for managing connection settings and API
updates.
- **Chores**
- Upgraded multiple backend and frontend dependencies and refined
configuration files.
- **Tests**
- Expanded test coverage for CSV conversion, form settings merging, and
the new `csvStringToArray` function.
- **Documentation**
- Added introductory documentation for form components and a readme for
the forms directory.
This commit is contained in:
Pujit Mehrotra
2025-03-17 10:26:07 -04:00
committed by GitHub
parent ce61fee41c
commit acbf46df3f
61 changed files with 2531 additions and 574 deletions

View File

@@ -68,7 +68,8 @@
"typescript": "^5.7.3",
"vite-plugin-remove-console": "^2.2.0",
"vitest": "^3.0.0",
"vue-tsc": "^2.1.10"
"vue-tsc": "^2.1.10",
"vuetify-nuxt-module": "0.18.3"
},
"dependencies": {
"@apollo/client": "^3.12.3",
@@ -77,6 +78,10 @@
"@floating-ui/vue": "^1.1.5",
"@headlessui/vue": "^1.7.23",
"@heroicons/vue": "^2.2.0",
"@jsonforms/core": "^3.5.1",
"@jsonforms/vue": "^3.5.1",
"@jsonforms/vue-vanilla": "^3.5.1",
"@jsonforms/vue-vuetify": "^3.5.1",
"@nuxtjs/color-mode": "^3.5.2",
"@pinia/nuxt": "^0.10.0",
"@unraid/ui": "link:../unraid-ui",
@@ -101,6 +106,7 @@
"semver": "^7.6.3",
"tailwind-merge": "^2.5.5",
"vue-i18n": "^10.0.5",
"vuetify": "^3.7.14",
"wretch": "^2.11.0"
},
"optionalDependencies": {