mirror of
https://github.com/unraid/api.git
synced 2026-01-06 08:39:54 -06:00
separates Unraid Connect from the API ## Summary by CodeRabbit - **New Features** - Introduced a unified, JSON-schema-based settings system for API configuration and plugin settings, accessible via new GraphQL queries and mutations. - Added modular NestJS plugin architecture for Unraid Connect, including new modules for cloud, remote access, and system/network management. - Added granular connection and remote access state tracking, with new GraphQL types and resolvers for cloud and connection status. - Implemented event-driven and service-based management for SSO users, API keys, and dynamic remote access. - Enhanced UI components and queries to support unified settings and restart detection. - **Improvements** - Refactored configuration and state management to use service-based patterns, replacing direct store access and Redux logic. - Migrated legacy config files to new JSON formats with validation and persistence helpers. - Centralized global dependencies and shared services for plugins and CLI modules. - Improved logging, error handling, and lifecycle management for connections and background jobs. - Updated and expanded documentation for plugin development and settings management. - **Bug Fixes** - Improved handling of missing config files and ensured safe persistence. - Enhanced error reporting and validation in remote access and connection services. - **Removals** - Removed deprecated Redux slices, listeners, and legacy cloud/remote access logic. - Deleted obsolete test files, scripts, and unused code related to the old state/store approach. - **Tests** - Added new unit tests for settings merging, URL resolution, and cloud connectivity checks. - **Style** - Applied consistent formatting, import reorganization, and code style improvements across modules. - **Chores** - Updated build scripts, Dockerfiles, and development environment setup to support new dependencies and workflows. - Expanded .gitignore and configuration files for improved build artifact management.
39 lines
1.2 KiB
JavaScript
39 lines
1.2 KiB
JavaScript
/**
|
|
* @see https://prettier.io/docs/en/configuration.html
|
|
* @type {import("prettier").Config}
|
|
*/
|
|
module.exports = {
|
|
trailingComma: 'es5',
|
|
tabWidth: 4,
|
|
semi: true,
|
|
singleQuote: true,
|
|
printWidth: 105,
|
|
plugins: ['@ianvs/prettier-plugin-sort-imports'],
|
|
// decorators-legacy lets the import sorter transform files with decorators
|
|
importOrderParserPlugins: ['typescript', 'decorators-legacy'],
|
|
importOrder: [
|
|
/**----------------------
|
|
* Nest.js & node.js imports
|
|
*------------------------**/
|
|
'<TYPES>^@nestjs(/.*)?$',
|
|
'^@nestjs(/.*)?$', // matches imports starting with @nestjs
|
|
'<TYPES>^(node:)',
|
|
'<BUILTIN_MODULES>', // Node.js built-in modules
|
|
'',
|
|
/**----------------------
|
|
* Third party packages
|
|
*------------------------**/
|
|
'<TYPES>',
|
|
'<THIRD_PARTY_MODULES>', // Imports not matched by other special words or groups.
|
|
'',
|
|
/**----------------------
|
|
* Application Code
|
|
*------------------------**/
|
|
'<TYPES>^@app(/.*)?$', // matches type imports starting with @app
|
|
'^@app(/.*)?$',
|
|
'',
|
|
'<TYPES>^[.]',
|
|
'^[.]', // relative imports
|
|
],
|
|
};
|