mirror of
https://github.com/unraid/api.git
synced 2026-04-28 11:09:21 -05:00
6b7dc5db46cc0041ba82c0f11795a51c147eda68
453 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
832e9d04f2 |
fix: PHP Warnings in Management Settings (#1805)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Bug Fixes**
* Enhanced remote access configuration handling to gracefully manage
missing or undefined parameter values.
* Improved overall system stability through safer default handling of
optional settings that may not be present.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
375dcd0598 |
chore(main): release 4.27.2 (#1802)
🤖 I have created a release *beep* *boop*
---
## [4.27.2](https://github.com/unraid/api/compare/v4.27.1...v4.27.2)
(2025-11-21)
### Bug Fixes
* issue with header flashing + issue with trial date
([
|
||
|
|
330e81a484 |
chore(main): release 4.27.1 (#1797)
🤖 I have created a release *beep* *boop* --- ## [4.27.1](https://github.com/unraid/api/compare/v4.27.0...v4.27.1) (2025-11-21) ### Bug Fixes * missing translations for expiring trials ([#1800](https://github.com/unraid/api/issues/1800)) ([ |
||
|
|
36c104915e |
fix: missing translations for expiring trials (#1800)
- Removed translation function calls from the UI components for reboot
type text, replacing them with direct references to the computed
properties.
- Enhanced ineligible update messages by integrating localization for
various conditions, ensuring clearer user feedback regarding update
eligibility.
- Added new localization strings for ineligible update scenarios in the
English locale file.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added new localization keys for OS update eligibility, reboot labels,
changelog link, and expanded uptime/trial expiry messages.
* **Bug Fixes**
* Restored translated strings and added locale-aware release date
formatting for update/ineligible messaging and badges.
* **Theme & UI**
* Streamlined theme initialization and server-driven theme application;
removed legacy CSS-variable persistence and adjusted dark/banner
behavior.
* **Tests**
* Added i18n and date/locale formatting tests and improved
local-storage-like test mocks.
* **Chores**
* Removed an auto-registered global component and strengthened
script/theme initialization and CSS-variable validation.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
c71b0487ad |
chore(main): release 4.27.0 (#1795)
🤖 I have created a release *beep* *boop* --- ## [4.27.0](https://github.com/unraid/api/compare/v4.26.2...v4.27.0) (2025-11-19) ### Features * remove Unraid API log download functionality ([#1793](https://github.com/unraid/api/issues/1793)) ([ |
||
|
|
6b6b78fa2e | chore(main): release 4.26.2 (#1794) | ||
|
|
3d4f193fa4 |
chore(main): release 4.26.1 (#1790)
🤖 I have created a release *beep* *boop*
---
## [4.26.1](https://github.com/unraid/api/compare/v4.26.0...v4.26.1)
(2025-11-18)
### Bug Fixes
* **theme:** update theme class naming and scoping logic
([
|
||
|
|
ee0f240233 |
chore(main): release 4.26.0 (#1744)
🤖 I have created a release *beep* *boop* --- ## [4.26.0](https://github.com/unraid/api/compare/v4.25.3...v4.26.0) (2025-11-17) ### Features * add cpu power query & subscription ([#1745](https://github.com/unraid/api/issues/1745)) ([ |
||
|
|
d18eaf2364 |
fix: detection of flash backup activation state (#1769)
Resolves #1767
plugin/source/dynamix.unraid.net/usr/local/emhttp/plugins/dynamix.my.servers/include/UpdateFlashBackup.php:415
still reads the API version from _var($mystatus,'version'), but commit
|
||
|
|
34075e44c5 |
fix: flaky watch on boot drive's dynamix config (#1753)
On FAT32, `fs.stat()` updates accesstime, which means file reads are also writes, which means we can't use `usePoll` without degrading users' flash drives. To keep file reads lazy without a larger refactor, I override `getters.dynamix()` as the entrypoint to re-read the boot drive's dynamix config. Consecutive calls to `getters.dynamix()` are a common access pattern, which means we have to memoize to avoid many redundant file reads, so I used a TTL cache with a 250ms lifetime, hoping to scope config files to each request. `getters.dynamix()` is also used synchonously, so bit the bullet and switched away from async reads for simplicity, considering that most reads will be occurring from memory, even during cache misses. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Added a TTL memoized loader utility with exported types. * Added a public function to load Dynamix configuration at startup. * **Refactor** * Startup now uses the deterministic, cached config loader; runtime file-watch for Dynamix config removed. * Simplified config state handling and load-status reporting for more predictable startup behavior. * **Tests** * Added tests for TTL caching, eviction, keying, and conditional caching. * **Chores** * Bumped package versions and updated changelog. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> |
||
|
|
8cd2a4c124 | chore: add translations.php to backup and restore lists | ||
|
|
10f048ee1f | chore: re-add translations.php to prevent breaking uninstalls | ||
|
|
31c41027fc |
feat: translations now use crowdin (translate.unraid.net) (#1739)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - App-wide internationalization: dynamic locale detection/loading, many new locale bundles, and CLI helpers to extract/sort translation keys. - **Accessibility** - Brand button supports keyboard activation (Enter/Space). - **Documentation** - Internationalization guidance added to API and Web READMEs. - **Refactor** - UI updated to use centralized i18n keys and a unified locale loading approach. - **Tests** - Test utilities updated to support i18n and localized assertions. - **Chores** - Crowdin config and i18n scripts added; runtime locale exposed for selection. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
50d83313a1 |
chore(main): release 4.25.2 (#1734)
🤖 I have created a release *beep* *boop*
---
## [4.25.2](https://github.com/unraid/api/compare/v4.25.1...v4.25.2)
(2025-09-30)
### Bug Fixes
* enhance activation code modal visibility logic
([#1733](https://github.com/unraid/api/issues/1733))
([
|
||
|
|
84f4a7221d |
chore(main): release 4.25.1 (#1732)
🤖 I have created a release *beep* *boop* --- ## [4.25.1](https://github.com/unraid/api/compare/v4.25.0...v4.25.1) (2025-09-30) ### Bug Fixes * add cache busting to web component extractor ([#1731](https://github.com/unraid/api/issues/1731)) ([ |
||
|
|
d73953f8ff |
fix: Connect won't appear within Apps - Previous Apps (#1727)
Manual removal of the .plg is never necessary. plugin script will automatically move the .plg to /config/plugins-removed Manual removal results in PHP errors and possible indeterminate state <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - Bug Fixes - Updated plugin removal on Unraid 7.2+ to no longer delete the plugin file during boot. You’ll now be clearly prompted to reboot to complete uninstallation, reducing unexpected removals and improving guidance. Behavior on earlier Unraid versions remains unchanged. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
0d165a6087 |
fix: add cache busting to web component extractor (#1731)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - Bug Fixes - Ensures UI assets use content-hashed filenames so browsers load the latest scripts and styles after updates, reducing stale-cache issues. - Keeps scripts and their related styles in sync for consistent rendering and fewer cache-related glitches. - Ignores non-asset manifest entries to prevent accidental inclusion of invalid items and ensure correct asset loading. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
f4f3e3c44b |
chore(main): release 4.25.0 (#1725)
🤖 I have created a release *beep* *boop* --- ## [4.25.0](https://github.com/unraid/api/compare/v4.24.1...v4.25.0) (2025-09-26) ### Features * add Tailwind scoping plugin and integrate into Vite config ([#1722](https://github.com/unraid/api/issues/1722)) ([ |
||
|
|
b7afaf4632 |
feat: add Tailwind scoping plugin and integrate into Vite config (#1722)
- Introduced a new PostCSS plugin, `scopeTailwindToUnapi`, to scope Tailwind CSS classes to specific elements. - Updated Vite configuration to include the new PostCSS plugin for CSS processing. - Enhanced theme management in the theme store to apply scoped classes and dynamic CSS variables to multiple targets, including the document root and elements with the `.unapi` class. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Scoped styling for embedded (.unapi) contexts and a PostCSS plugin to automate it. * Theme refresh after mount to propagate CSS variables to embedded roots. * Exposed idempotent restart action for the Unraid API when offline. * **Bug Fixes** * Consistent dark mode and theme variable application across main and embedded views. * Interactive element and SSO styles now apply in embedded contexts. * Simplified changelog iframe with a reliable fallback renderer; improved logs styling scope. * **Tests** * New unit tests for the scoping plugin, changelog iframe, and related components. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
b3ca40c639 |
chore(main): release 4.24.1 (#1721)
🤖 I have created a release *beep* *boop* --- ## [4.24.1](https://github.com/unraid/api/compare/v4.24.0...v4.24.1) (2025-09-23) ### Bug Fixes * cleanup leftover removed packages on upgrade ([#1719](https://github.com/unraid/api/issues/1719)) ([ |
||
|
|
d9c561bfeb |
fix: enhance version comparison logic in installation script
- Added normalization for version strings to improve semantic versioning comparisons. - Updated the version comparison function to handle leading 'v' and ignore build metadata, ensuring accurate version checks during installation. |
||
|
|
9972a5f178 |
fix: cleanup leftover removed packages on upgrade (#1719)
--- - To see the specific tasks where the Asana app for GitHub is being used, see below: - https://app.asana.com/0/0/1211428391025524 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Adds API version awareness for Unraid Connect: detects server vs. connector API versions, notifies users, and skips installation to avoid downgrades. * **Bug Fixes** * Enhanced pre-install cleanup removing stale files and leftovers to improve install/upgrade reliability and clearer status reporting. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
a44473c1d1 |
chore(api): update API version and enhance installation script (#1685)
- Enhanced the installation script in `dynamix.unraid.net.plg` to include version comparison logic, preventing downgrades if a newer API version is already installed. - Added functionality to notify users of version conflicts during installation. This update improves the robustness of the installation process and ensures compatibility with existing API versions. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Version-aware installation for the Connect API to prevent downgrades when the server API is newer. * Web GUI notification when a version conflict is detected. * **Improvements** * Clearer install messaging when API installation is skipped or proceeds. * Safer, guarded install flow that only performs cleanup and installation when appropriate. * Preserves existing behavior for README updates when applicable. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
ed9a5c5ff9 |
chore(main): release 4.24.0 (#1717)
🤖 I have created a release *beep* *boop*
---
## [4.24.0](https://github.com/unraid/api/compare/v4.23.1...v4.24.0)
(2025-09-18)
### Features
* improve dom content loading by being more efficient about component
mounting ([#1716](https://github.com/unraid/api/issues/1716))
([
|
||
|
|
8b862ecef5 |
chore(main): release 4.23.1 (#1715)
🤖 I have created a release *beep* *boop*
---
## [4.23.1](https://github.com/unraid/api/compare/v4.23.0...v4.23.1)
(2025-09-17)
### Bug Fixes
* cleanup ini parser logic with better fallbacks
([#1713](https://github.com/unraid/api/issues/1713))
([
|
||
|
|
810be7a679 |
chore(main): release 4.23.0 (#1707)
🤖 I have created a release *beep* *boop* --- ## [4.23.0](https://github.com/unraid/api/compare/v4.22.2...v4.23.0) (2025-09-16) ### Features * add unraid api status manager ([#1708](https://github.com/unraid/api/issues/1708)) ([ |
||
|
|
1d9ce0aa3d |
feat: add unraid api status manager (#1708)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - New Features - Added “Unraid API Status” page under Management Access to view current API status, refresh it, and restart the API with confirmation. - Status view shows running state, detailed output, and in-app success/error messages after actions. - Style - Minor theme adjustments to border colors; no layout changes expected. - Chores - Updated UI text: “Unraid API” → “Unraid API Settings” in settings. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
45d9d65c13 |
chore(main): release 4.22.2 (#1699)
🤖 I have created a release *beep* *boop* --- ## [4.22.2](https://github.com/unraid/api/compare/v4.22.1...v4.22.2) (2025-09-15) ### Bug Fixes * **deps:** pin dependency conventional-changelog-conventionalcommits to 9.1.0 ([#1697](https://github.com/unraid/api/issues/1697)) ([ |
||
|
|
31a255c928 |
fix: false positive on verify_install script being external shell (#1704)
- Introduced a new test script for shell detection logic in `verify_install.sh`. - Updated the `package.json` to include a new test command for shell detection. - Enhanced the `verify_install.sh` script to accurately check the current shell interpreter using `/proc` and fallback methods. This improves the testing framework and ensures better validation of shell detection functionality. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - Bug Fixes - Installer now detects the actual interpreter more robustly and strictly requires Bash; non-Bash environments produce clear error messages and abort installation. - Tests - Added automated shell-detection tests to validate behavior across environments. - Test suite expanded to run the new shell-detection checks as part of the standard test command. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> |
||
|
|
9a86c615da |
fix(deps): pin dependency conventional-changelog-conventionalcommits to 9.1.0 (#1697)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [conventional-changelog-conventionalcommits](https://redirect.github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-conventionalcommits#readme) ([source](https://redirect.github.com/conventional-changelog/conventional-changelog/tree/HEAD/packages/conventional-changelog-conventionalcommits)) | dependencies | pin | [`^9.1.0` -> `9.1.0`](https://renovatebot.com/diffs/npm/conventional-changelog-conventionalcommits/9.1.0/9.1.0) | Add the preset `:preserveSemverRanges` to your config if you don't want to pin your dependencies. --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/unraid/api). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjk3LjEwIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> |
||
|
|
c4ca761dfc |
chore(main): release 4.22.1 (#1698)
🤖 I have created a release *beep* *boop*
---
## [4.22.1](https://github.com/unraid/api/compare/v4.22.0...v4.22.1)
(2025-09-12)
### Bug Fixes
* set input color in SSO field rather than inside of the main.css
([
|
||
|
|
0b20e3ea9f |
chore(main): release 4.22.0 (#1692)
🤖 I have created a release *beep* *boop* --- ## [4.22.0](https://github.com/unraid/api/compare/v4.21.0...v4.22.0) (2025-09-12) ### Features * improved update ui ([#1691](https://github.com/unraid/api/issues/1691)) ([ |
||
|
|
3f4af09db5 |
chore(deps): update conventional commit (#1693)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Updated changelog tooling dependencies and CI to fetch full Git history; added conventional-changelog-conventionalcommits. * **Tests** * Added comprehensive tests for changelog output, header/tag handling, fallback behavior, and compatibility with the updated changelog API. * **Refactor** * Reworked changelog generation to use the newer changelog API, improve tag-aware headers, and support deriving PR-style changelogs with graceful fallbacks. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
88a924c84f |
chore(main): release 4.21.0 (#1684)
🤖 I have created a release *beep* *boop* --- ## [4.21.0](https://github.com/unraid/api/compare/v4.20.4...v4.21.0) (2025-09-10) ### Features * add zsh shell detection to install script ([#1539](https://github.com/unraid/api/issues/1539)) ([ |
||
|
|
50ea2a3ffb |
feat: add zsh shell detection to install script (#1539)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Installer now detects when the environment is using Zsh and halts with clear error messages and guidance so users can move Zsh configuration to interactive-only files. * **Bug Fixes** * Prevents running the installer under unsupported shell setups, improving installation reliability and avoiding misconfigured runs. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> |
||
|
|
abc22bdb87 |
chore(main): release 4.20.4 (#1681)
🤖 I have created a release *beep* *boop*
---
## [4.20.4](https://github.com/unraid/api/compare/v4.20.3...v4.20.4)
(2025-09-09)
### Bug Fixes
* staging PR plugin fixes + UI issues on 7.2 beta
([
|
||
|
|
838be2c52e |
chore(main): release 4.20.3 (#1677)
🤖 I have created a release *beep* *boop*
---
## [4.20.3](https://github.com/unraid/api/compare/v4.20.2...v4.20.3)
(2025-09-09)
### Bug Fixes
* header background color issues fixed on 7.2 - thanks Nick!
([
|
||
|
|
434e331384 |
chore(main): release 4.20.2 (#1676)
🤖 I have created a release *beep* *boop*
---
## [4.20.2](https://github.com/unraid/api/compare/v4.20.1...v4.20.2)
(2025-09-09)
### Bug Fixes
* trigger deployment
([
|
||
|
|
6c2c51ae1d |
chore(main): release 4.20.1 (#1674)
🤖 I have created a release *beep* *boop*
---
## [4.20.1](https://github.com/unraid/api/compare/v4.20.0...v4.20.1)
(2025-09-09)
### Bug Fixes
* adjust header styles to fix flashing and width issues - thanks ZarZ
([
|
||
|
|
d10c12035e |
chore: Revert "fix(deps): update all non-major dependencies" (#1675)
Reverts unraid/api#1633 |
||
|
|
5dd6f42550 |
fix(deps): update all non-major dependencies (#1633)
This PR contains the following updates: | Package | Change | Age | Confidence | Type | Update | |---|---|---|---|---|---| | [@eslint/js](https://eslint.org) ([source](https://redirect.github.com/eslint/eslint/tree/HEAD/packages/js)) | [`9.34.0` -> `9.35.0`](https://renovatebot.com/diffs/npm/@eslint%2fjs/9.34.0/9.35.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@graphql-codegen/typescript-resolvers](https://redirect.github.com/dotansimha/graphql-code-generator) ([source](https://redirect.github.com/dotansimha/graphql-code-generator/tree/HEAD/packages/plugins/typescript/resolvers)) | [`4.5.1` -> `4.5.2`](https://renovatebot.com/diffs/npm/@graphql-codegen%2ftypescript-resolvers/4.5.1/4.5.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@ianvs/prettier-plugin-sort-imports](https://redirect.github.com/ianvs/prettier-plugin-sort-imports) | [`4.6.3` -> `4.7.0`](https://renovatebot.com/diffs/npm/@ianvs%2fprettier-plugin-sort-imports/4.6.3/4.7.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@manypkg/cli](https://redirect.github.com/Thinkmill/manypkg) ([source](https://redirect.github.com/Thinkmill/manypkg/tree/HEAD/packages/cli)) | [`0.25.0` -> `0.25.1`](https://renovatebot.com/diffs/npm/@manypkg%2fcli/0.25.0/0.25.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [@nuxt/ui](https://ui.nuxt.com) ([source](https://redirect.github.com/nuxt/ui)) | [`4.0.0-alpha.0` -> `4.0.0-alpha.1`](https://renovatebot.com/diffs/npm/@nuxt%2fui/4.0.0-alpha.0/4.0.0-alpha.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [@reduxjs/toolkit](https://redux-toolkit.js.org) ([source](https://redirect.github.com/reduxjs/redux-toolkit)) | [`2.8.2` -> `2.9.0`](https://renovatebot.com/diffs/npm/@reduxjs%2ftoolkit/2.8.2/2.9.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [@rollup/rollup-linux-x64-gnu](https://rollupjs.org/) ([source](https://redirect.github.com/rollup/rollup)) | [`4.49.0` -> `4.50.1`](https://renovatebot.com/diffs/npm/@rollup%2frollup-linux-x64-gnu/4.49.0/4.50.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | optionalDependencies | minor | | [@storybook/addon-docs](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/docs) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/docs)) | [`9.1.3` -> `9.1.5`](https://renovatebot.com/diffs/npm/@storybook%2faddon-docs/9.1.3/9.1.5) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@storybook/addon-links](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/links) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/links)) | [`9.1.3` -> `9.1.5`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/9.1.3/9.1.5) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@storybook/builder-vite](https://redirect.github.com/storybookjs/storybook/tree/next/code/builders/builder-vite/#readme) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/builders/builder-vite)) | [`9.1.3` -> `9.1.5`](https://renovatebot.com/diffs/npm/@storybook%2fbuilder-vite/9.1.3/9.1.5) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@storybook/vue3-vite](https://redirect.github.com/storybookjs/storybook/tree/next/code/frameworks/vue3-vite) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/frameworks/vue3-vite)) | [`9.1.3` -> `9.1.5`](https://renovatebot.com/diffs/npm/@storybook%2fvue3-vite/9.1.3/9.1.5) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@tailwindcss/cli](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-cli)) | [`4.1.12` -> `4.1.13`](https://renovatebot.com/diffs/npm/@tailwindcss%2fcli/4.1.12/4.1.13) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [@tailwindcss/vite](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite)) | [`4.1.12` -> `4.1.13`](https://renovatebot.com/diffs/npm/@tailwindcss%2fvite/4.1.12/4.1.13) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`22.18.0` -> `22.18.1`](https://renovatebot.com/diffs/npm/@types%2fnode/22.18.0/22.18.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@types/semver](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/semver) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/semver)) | [`7.7.0` -> `7.7.1`](https://renovatebot.com/diffs/npm/@types%2fsemver/7.7.0/7.7.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@typescript-eslint/eslint-plugin](https://typescript-eslint.io/packages/eslint-plugin) ([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)) | [`8.41.0` -> `8.43.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/8.41.0/8.43.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@vueuse/components](https://redirect.github.com/vueuse/vueuse/tree/main/packages/components#readme) ([source](https://redirect.github.com/vueuse/vueuse/tree/HEAD/packages/components)) | [`13.8.0` -> `13.9.0`](https://renovatebot.com/diffs/npm/@vueuse%2fcomponents/13.8.0/13.9.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [@vueuse/core](https://redirect.github.com/vueuse/vueuse) ([source](https://redirect.github.com/vueuse/vueuse/tree/HEAD/packages/core)) | [`13.8.0` -> `13.9.0`](https://renovatebot.com/diffs/npm/@vueuse%2fcore/13.8.0/13.9.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@vueuse/core](https://redirect.github.com/vueuse/vueuse) ([source](https://redirect.github.com/vueuse/vueuse/tree/HEAD/packages/core)) | [`13.8.0` -> `13.9.0`](https://renovatebot.com/diffs/npm/@vueuse%2fcore/13.8.0/13.9.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [@vueuse/integrations](https://redirect.github.com/vueuse/vueuse/tree/main/packages/integrations#readme) ([source](https://redirect.github.com/vueuse/vueuse/tree/HEAD/packages/integrations)) | [`13.8.0` -> `13.9.0`](https://renovatebot.com/diffs/npm/@vueuse%2fintegrations/13.8.0/13.9.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [chalk](https://redirect.github.com/chalk/chalk) | [`5.6.0` -> `5.6.2`](https://renovatebot.com/diffs/npm/chalk/5.6.0/5.6.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [dayjs](https://day.js.org) ([source](https://redirect.github.com/iamkun/dayjs)) | [`1.11.14` -> `1.11.18`](https://renovatebot.com/diffs/npm/dayjs/1.11.14/1.11.18) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [dockerode](https://redirect.github.com/apocas/dockerode) | [`4.0.7` -> `4.0.8`](https://renovatebot.com/diffs/npm/dockerode/4.0.7/4.0.8) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [dotenv](https://redirect.github.com/motdotla/dotenv) | [`17.2.1` -> `17.2.2`](https://renovatebot.com/diffs/npm/dotenv/17.2.1/17.2.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [eslint](https://eslint.org) ([source](https://redirect.github.com/eslint/eslint)) | [`9.34.0` -> `9.35.0`](https://renovatebot.com/diffs/npm/eslint/9.34.0/9.35.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [eslint-plugin-storybook](https://redirect.github.com/storybookjs/storybook/code/lib/eslint-plugin#readme) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/lib/eslint-plugin)) | [`9.1.3` -> `9.1.5`](https://renovatebot.com/diffs/npm/eslint-plugin-storybook/9.1.3/9.1.5) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [fast-check](https://fast-check.dev/) ([source](https://redirect.github.com/dubzzz/fast-check/tree/HEAD/packages/fast-check)) | [`4.2.0` -> `4.3.0`](https://renovatebot.com/diffs/npm/fast-check/4.2.0/4.3.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [fastify](https://fastify.dev/) ([source](https://redirect.github.com/fastify/fastify)) | [`5.5.0` -> `5.6.0`](https://renovatebot.com/diffs/npm/fastify/5.5.0/5.6.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [got](https://redirect.github.com/sindresorhus/got) | [`14.4.7` -> `14.4.8`](https://renovatebot.com/diffs/npm/got/14.4.7/14.4.8) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | peerDependencies | patch | | [got](https://redirect.github.com/sindresorhus/got) | [`14.4.7` -> `14.4.8`](https://renovatebot.com/diffs/npm/got/14.4.7/14.4.8) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [got](https://redirect.github.com/sindresorhus/got) | [`14.4.7` -> `14.4.8`](https://renovatebot.com/diffs/npm/got/14.4.7/14.4.8) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [jose](https://redirect.github.com/panva/jose) | [`6.0.13` -> `6.1.0`](https://renovatebot.com/diffs/npm/jose/6.0.13/6.1.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | peerDependencies | minor | | [jose](https://redirect.github.com/panva/jose) | [`6.0.13` -> `6.1.0`](https://renovatebot.com/diffs/npm/jose/6.0.13/6.1.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [jose](https://redirect.github.com/panva/jose) | [`6.0.13` -> `6.1.0`](https://renovatebot.com/diffs/npm/jose/6.0.13/6.1.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [lint-staged](https://redirect.github.com/lint-staged/lint-staged) | [`16.1.5` -> `16.1.6`](https://renovatebot.com/diffs/npm/lint-staged/16.1.5/16.1.6) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [lucide-vue-next](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-vue-next)) | [`0.542.0` -> `0.543.0`](https://renovatebot.com/diffs/npm/lucide-vue-next/0.542.0/0.543.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [nest-commander](https://nest-commander.jaymcdoniel.dev) ([source](https://redirect.github.com/jmcdo29/nest-commander/tree/HEAD/pacakges/nest-commander)) | [`3.19.0` -> `3.19.1`](https://renovatebot.com/diffs/npm/nest-commander/3.19.0/3.19.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [node](https://nodejs.org) ([source](https://redirect.github.com/nodejs/node)) | `22.18.0` -> `22.19.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | minor | | [node](https://redirect.github.com/actions/node-versions) | `22.18.0` -> `22.19.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | uses-with | minor | | [node](https://redirect.github.com/nodejs/node) | `22.18.0-bookworm-slim` -> `22.19.0-bookworm-slim` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | final | minor | | [openid-client](https://redirect.github.com/panva/openid-client) | [`6.6.4` -> `6.7.1`](https://renovatebot.com/diffs/npm/openid-client/6.6.4/6.7.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [pino](https://getpino.io) ([source](https://redirect.github.com/pinojs/pino)) | [`9.9.0` -> `9.9.4`](https://renovatebot.com/diffs/npm/pino/9.9.0/9.9.4) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [pm2](http://pm2.keymetrics.io/) ([source](https://redirect.github.com/Unitech/pm2)) | [`6.0.8` -> `6.0.10`](https://renovatebot.com/diffs/npm/pm2/6.0.8/6.0.10) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [pnpm](https://pnpm.io) ([source](https://redirect.github.com/pnpm/pnpm/tree/HEAD/pnpm)) | [`10.15.0` -> `10.15.1`](https://renovatebot.com/diffs/npm/pnpm/10.15.0/10.15.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | packageManager | patch | | [pnpm](https://pnpm.io) ([source](https://redirect.github.com/pnpm/pnpm/tree/HEAD/pnpm)) | [`10.15.0` -> `10.15.1`](https://renovatebot.com/diffs/npm/pnpm/10.15.0/10.15.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | engines | patch | | [pnpm](https://pnpm.io) ([source](https://redirect.github.com/pnpm/pnpm/tree/HEAD/pnpm)) | `10.15.0` -> `10.15.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | uses-with | patch | | [rollup-plugin-node-externals](https://redirect.github.com/Septh/rollup-plugin-node-externals) | [`8.1.0` -> `8.1.1`](https://renovatebot.com/diffs/npm/rollup-plugin-node-externals/8.1.0/8.1.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [storybook](https://storybook.js.org) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/core)) | [`9.1.3` -> `9.1.5`](https://renovatebot.com/diffs/npm/storybook/9.1.3/9.1.5) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)) | [`4.1.12` -> `4.1.13`](https://renovatebot.com/diffs/npm/tailwindcss/4.1.12/4.1.13) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)) | [`4.1.12` -> `4.1.13`](https://renovatebot.com/diffs/npm/tailwindcss/4.1.12/4.1.13) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | peerDependencies | patch | | [terser](https://terser.org) ([source](https://redirect.github.com/terser/terser)) | [`5.43.1` -> `5.44.0`](https://renovatebot.com/diffs/npm/terser/5.43.1/5.44.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [tw-animate-css](https://redirect.github.com/Wombosvideo/tw-animate-css) | [`1.3.7` -> `1.3.8`](https://renovatebot.com/diffs/npm/tw-animate-css/1.3.7/1.3.8) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [tw-animate-css](https://redirect.github.com/Wombosvideo/tw-animate-css) | [`1.3.7` -> `1.3.8`](https://renovatebot.com/diffs/npm/tw-animate-css/1.3.7/1.3.8) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [typescript-eslint](https://typescript-eslint.io/packages/typescript-eslint) ([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)) | [`8.41.0` -> `8.43.0`](https://renovatebot.com/diffs/npm/typescript-eslint/8.41.0/8.43.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`7.1.3` -> `7.1.5`](https://renovatebot.com/diffs/npm/vite/7.1.3/7.1.5) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [vue](https://redirect.github.com/vuejs/core/tree/main/packages/vue#readme) ([source](https://redirect.github.com/vuejs/core)) | [`3.5.20` -> `3.5.21`](https://renovatebot.com/diffs/npm/vue/3.5.20/3.5.21) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [vue](https://redirect.github.com/vuejs/core/tree/main/packages/vue#readme) ([source](https://redirect.github.com/vuejs/core)) | [`3.5.20` -> `3.5.21`](https://renovatebot.com/diffs/npm/vue/3.5.20/3.5.21) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | peerDependencies | patch | | [vue-i18n](https://redirect.github.com/intlify/vue-i18n/tree/master/packages/vue-i18n#readme) ([source](https://redirect.github.com/intlify/vue-i18n/tree/HEAD/packages/vue-i18n)) | [`11.1.11` -> `11.1.12`](https://renovatebot.com/diffs/npm/vue-i18n/11.1.11/11.1.12) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [vuetify](https://vuetifyjs.com) ([source](https://redirect.github.com/vuetifyjs/vuetify/tree/HEAD/packages/vuetify)) | [`3.9.6` -> `3.9.7`](https://renovatebot.com/diffs/npm/vuetify/3.9.6/3.9.7) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [wrangler](https://redirect.github.com/cloudflare/workers-sdk) ([source](https://redirect.github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler)) | [`4.33.0` -> `4.34.0`](https://renovatebot.com/diffs/npm/wrangler/4.33.0/4.34.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | --- ### Release Notes <details> <summary>eslint/eslint (@​eslint/js)</summary> ### [`v9.35.0`](https://redirect.github.com/eslint/eslint/compare/v9.34.0...af2a0870fdc646091d027516601888923e5bc202) [Compare Source](https://redirect.github.com/eslint/eslint/compare/v9.34.0...v9.35.0) </details> <details> <summary>dotansimha/graphql-code-generator (@​graphql-codegen/typescript-resolvers)</summary> ### [`v4.5.2`](https://redirect.github.com/dotansimha/graphql-code-generator/blob/HEAD/packages/plugins/typescript/resolvers/CHANGELOG.md#452) [Compare Source](https://redirect.github.com/dotansimha/graphql-code-generator/compare/@graphql-codegen/typescript-resolvers@4.5.1...@graphql-codegen/typescript-resolvers@4.5.2) ##### Patch Changes - [#​10419](https://redirect.github.com/dotansimha/graphql-code-generator/pull/10419) [`2fc3869`](https://redirect.github.com/dotansimha/graphql-code-generator/commit/2fc3869de216554fa896359a082066eaa18e8634) Thanks [@​chdanielmueller](https://redirect.github.com/chdanielmueller)! - Fix enum resolver for partially mapped enumValues </details> <details> <summary>ianvs/prettier-plugin-sort-imports (@​ianvs/prettier-plugin-sort-imports)</summary> ### [`v4.7.0`](https://redirect.github.com/IanVS/prettier-plugin-sort-imports/releases/tag/v4.7.0) [Compare Source](https://redirect.github.com/ianvs/prettier-plugin-sort-imports/compare/v4.6.3...v4.7.0) #### What's Changed This project began as a fork because I wanted a plugin that would not move side-effect imports around and mess with my CSS cascade. So its first and most distinguishing feature is that side-effect imports do not move, and other imports are not sorted across them. This works fine in most cases, but some people have side-effect imports that they know *can* be sorted safely. For those, there is now an "escape hatch" option named `importOrderSafeSideEffects`. It is an array of glob pattern strings (similar to `importOrder`) which, when they match against a side-effect import, allow that import to be sorted as if it were a standard import. Suggestions for safe use: - Use `^` at the start of your pattern and `$` at the end, to avoid accidentally matching part of an import name. For example, `"^server-only$"`, to avoid matching against `import "not-server-only"`. - Use extreme caution if matching against relative files or CSS files. If you decide to sort CSS imports and a file ever imports more than one CSS file, your cascade may change. - You can still use `// prettier-ignore` to stop sorting a particular import that would otherwise be sorted. Feedback on this feature is welcome. ##### Features - Add `importOrderSafeSideEffects` option by [@​IanVS](https://redirect.github.com/IanVS) in [IanVS#240](https://redirect.github.com/IanVS/prettier-plugin-sort-imports/pull/240) ##### Internal - Clean up options & remove explicit function types by [@​IanVS](https://redirect.github.com/IanVS) in [IanVS#239](https://redirect.github.com/IanVS/prettier-plugin-sort-imports/pull/239) **Full Changelog**: <https://github.com/IanVS/prettier-plugin-sort-imports/compare/v4.6.3...v4.7.0> </details> <details> <summary>Thinkmill/manypkg (@​manypkg/cli)</summary> ### [`v0.25.1`](https://redirect.github.com/Thinkmill/manypkg/blob/HEAD/packages/cli/CHANGELOG.md#0251) [Compare Source](https://redirect.github.com/Thinkmill/manypkg/compare/@manypkg/cli@0.25.0...@manypkg/cli@0.25.1) ##### Patch Changes - [#​260](https://redirect.github.com/Thinkmill/manypkg/pull/260) [`5854938`](https://redirect.github.com/Thinkmill/manypkg/commit/585493847a530bd87540eb0207b337d8ea5d05c6) Thanks [@​jasekiw](https://redirect.github.com/jasekiw)! - Keep detected line endings flavor of `package.json` files on Windows when updating those files </details> <details> <summary>nuxt/ui (@​nuxt/ui)</summary> ### [`v4.0.0-alpha.1`](https://redirect.github.com/nuxt/ui/blob/HEAD/CHANGELOG.md#400-alpha1-2025-09-01) [Compare Source](https://redirect.github.com/nuxt/ui/compare/v4.0.0-alpha.0...v4.0.0-alpha.1) ##### ⚠ BREAKING CHANGES - **components:** rename `nullify` modifier to `nullable` and add `optional` ([#​4838](https://redirect.github.com/nuxt/ui/issues/4838)) - **module:** update compatibility to nuxt 4 - **PageAccordion:** remove in favor of `Accordion` ([#​4734](https://redirect.github.com/nuxt/ui/issues/4734)) - **Marquee:** rename from `PageMarquee` ([#​4741](https://redirect.github.com/nuxt/ui/issues/4741)) - **FieldGroup:** rename from `ButtonGroup` ([#​4596](https://redirect.github.com/nuxt/ui/issues/4596)) - **components:** upgrade `ai-sdk` to v5 ([#​4698](https://redirect.github.com/nuxt/ui/issues/4698)) ##### Features - **components:** rename `nullify` modifier to `nullable` and add `optional` ([#​4838](https://redirect.github.com/nuxt/ui/issues/4838)) ([83b0306](https://redirect.github.com/nuxt/ui/commit/83b0306a30835a385049200c5de804c51577c64c)) - **components:** upgrade `ai-sdk` to v5 ([#​4698](https://redirect.github.com/nuxt/ui/issues/4698)) ([de7822f](https://redirect.github.com/nuxt/ui/commit/de7822f6a11f6d1830421db337237c6e16f530b1)) - **FieldGroup:** rename from `ButtonGroup` ([#​4596](https://redirect.github.com/nuxt/ui/issues/4596)) ([a0963eb](https://redirect.github.com/nuxt/ui/commit/a0963eba8254d2ecf02cd1ee87cee7f73c4b2bc4)) - **Icon:** allow passing a component instead of a name ([#​4766](https://redirect.github.com/nuxt/ui/issues/4766)) ([61b603f](https://redirect.github.com/nuxt/ui/commit/61b603fff476aeac065268bd8dd493ff45577de4)) - import `@nuxt/ui-pro` components ([#​4675](https://redirect.github.com/nuxt/ui/issues/4675)) ([5cb65cf](https://redirect.github.com/nuxt/ui/commit/5cb65cfbd0d176393e841796bbbcd825be7cd376)) - **Marquee:** rename from `PageMarquee` ([#​4741](https://redirect.github.com/nuxt/ui/issues/4741)) ([b6edce2](https://redirect.github.com/nuxt/ui/commit/b6edce266281ef8448588f303e4d8e28c7adf6ea)) - **module:** update compatibility to nuxt 4 ([2aca598](https://redirect.github.com/nuxt/ui/commit/2aca598792cf2075db9b763bb41c4044ee9ad258)) - **PageAccordion:** remove in favor of `Accordion` ([#​4734](https://redirect.github.com/nuxt/ui/issues/4734)) ([f70a3ff](https://redirect.github.com/nuxt/ui/commit/f70a3ff13f3e9baa0e9ef2070596512f67189c1a)) ##### Bug Fixes - **AuthForm:** use `error` from form field ([#​4738](https://redirect.github.com/nuxt/ui/issues/4738)) ([00dfb6b](https://redirect.github.com/nuxt/ui/commit/00dfb6b5866760e0669e9dbbaa247919f5400f55)) - **BlogPost:** ensure date slot renders ([#​4743](https://redirect.github.com/nuxt/ui/issues/4743)) ([4514880](https://redirect.github.com/nuxt/ui/commit/4514880902ba6ec75b5bf69099f4b6bef0f58efa)) - **ChangelogVersion/ChangelogVersions:** handle RTL mode ([#​4777](https://redirect.github.com/nuxt/ui/issues/4777)) ([f91c408](https://redirect.github.com/nuxt/ui/commit/f91c4081e5d6b884fc7dd8c5669fd262ddb98649)) - **ContentSearch/DashboardSearch:** make `ui.modal` work ([946c2ec](https://redirect.github.com/nuxt/ui/commit/946c2ec8875af2c3fc74862b2c29d08dfb4cf6e2)) - **module:** add `[@source](https://redirect.github.com/source)` on components ([a16465f](https://redirect.github.com/nuxt/ui/commit/a16465f3da051d1a4dbef6dadfe7a5f66da1216e)), closes [#​4773](https://redirect.github.com/nuxt/ui/issues/4773) - **PageCard:** improve keyboard accessibility ([#​4733](https://redirect.github.com/nuxt/ui/issues/4733)) ([3029568](https://redirect.github.com/nuxt/ui/commit/30295684653f89b811e75e7a79a9684814c68ec1)) - **ProseImg:** ensure unique motion layout id for images ([#​4720](https://redirect.github.com/nuxt/ui/issues/4720)) ([9480a0b](https://redirect.github.com/nuxt/ui/commit/9480a0baa46a2391d43d2f868fa8efdba12011f6)) - **unplugin:** handle components overrides in subdirectories ([#​4781](https://redirect.github.com/nuxt/ui/issues/4781)) ([69ee75e](https://redirect.github.com/nuxt/ui/commit/69ee75e5b291873e3b9466bfdb9187ac05e82d6f)) </details> <details> <summary>reduxjs/redux-toolkit (@​reduxjs/toolkit)</summary> ### [`v2.9.0`](https://redirect.github.com/reduxjs/redux-toolkit/releases/tag/v2.9.0) [Compare Source](https://redirect.github.com/reduxjs/redux-toolkit/compare/v2.8.2...v2.9.0) This **feature release** rewrites RTK Query's internal subscription and polling systems and the `useStableQueryArgs` hook for better perf, adds automatic `AbortSignal` handling to requests still in progress when a cache entry is removed, fixes a bug with the `transformResponse` option for queries, adds a new `builder.addAsyncThunk` method, and fixes assorted other issues. #### Changelog ##### RTK Query Performance Improvements We had reports that [RTK Query could get very slow when there were thousands of subscriptions to the same cache entry](https://redirect.github.com/reduxjs/redux-toolkit/issues/5052). After investigation, we found that the internal polling logic was attempting to recalculate the minimum polling time after every new subscription was added. This was highly inefficient, as most subscriptions don't change polling settings, and it required repeated O(n) iteration over the growing list of subscriptions. We've rewritten that logic to debounce the update check and ensure a max of one polling value update per tick for the entire API instance. Related, while working on the request abort changes, testing showed that use of plain `Record`s to hold subscription data was inefficient because we have to iterate keys to check size. We've rewritten the subscription handling internals to use `Map`s instead, as well as restructuring some additional checks around in-flight requests. These two improvements drastically improved runtime perf for the thousands-of-subscriptions-one-cache-entry repro, eliminating RTK methods as visible hotspots in the perf profiles. It likely also improves perf for general usage as well. We've also changed the implementation of our internal `useStableQueryArgs` hook to avoid calling `serializeQueryArgs` on its value, which can avoid potential perf issues when a query takes a very large object as its cache key. > \[!NOTE] > The internal logic switched from serializing the query arg to doing reference checks on nested values. This means that if you are passing a non-POJO value in a query arg, such as `useSomeQuery({a: new Set()})`, *and* you have `refetchOnMountOrArgChange` enabled, this will now trigger refeteches each time as the `Set` references are now considered different based on equality instead of serialization. ##### Abort Signal Handling on Cleanup We've had numerous requests over time for various forms of "abort in-progress requests when the data is no longer needed / params change / component unmounts / some expensive request is taking too long". This is a complex topic with multiple potential use cases, and our standard answer has been that we *don't* want to abort those requests - after all, cache entries default to staying in memory for 1 minute after the last subscription is removed, so RTKQ's cache can still be updated when the request completes. That also means that it doesn't make sense to abort a request "on unmount". However, it does then make sense to abort an in-progress request if the cache entry itself is removed. Given that, we've updated our cache handling to automatically call the existing `resPromise.abort()` method in that case, triggering the `AbortSignal` attached to the `baseQuery`. The handling at that point depends on your app - `fetchBaseQuery` should handle that, a custom `baseQuery` or `queryFn` would need to listen to the `AbortSignal`. We do have [an open issue asking for further discussions of potential abort / cancelation use cases](https://redirect.github.com/reduxjs/redux-toolkit/issues/2444) and would appreciate further feedback. ##### New Options The builder callback used in `createReducer` and `createSlice.extraReducers` now has `builder.addAsyncThunk` available, which allows handling specific actions from a thunk in the same way that you could define a thunk inside `createSlice.reducers`: ```ts const slice = createSlice({ name: 'counter', initialState: { loading: false, errored: false, value: 0, }, reducers: {}, extraReducers: (builder) => builder.addAsyncThunk(asyncThunk, { pending(state) { state.loading = true }, fulfilled(state, action) { state.value = action.payload }, rejected(state) { state.errored = true }, settled(state) { state.loading = false }, }), }) ``` `createApi` and individual endpoint definitions now accept a `skipSchemaValidation` option with an array of schema types to skip, or `true` to skip validation entirely (in case you want to use a schema for its types, but the actual validation is expensive). ##### Bug Fixes The infinite query implementation accidentally changed the query internals to *always* run `transformResponse` if provided, including if you were using `upsertQueryData()`, which then broke. It's been fixed to only run on an actual query request. The internal changes to the structure of the `state.api.provided` structure broke our handling of `extractRehydrationInfo` - we've updated that to handle the changed structure. The infinite query status fields like `hasNextPage` are now a looser type of `boolean` initially, rather than strictly `false`. ##### TS Types We now export Immer's `WritableDraft` type to fix another non-portable types issue. We've added an `api.endpoints.myEndpoint.types.RawResultType` types-only field to match the other available fields. #### What's Changed - Add RawResultType as a type-only property on endpoints by [@​EskiMojo14](https://redirect.github.com/EskiMojo14) in [#​5037](https://redirect.github.com/reduxjs/redux-toolkit/pull/5037) - allow passing an array of specific schemas to skip by [@​EskiMojo14](https://redirect.github.com/EskiMojo14) in [#​5042](https://redirect.github.com/reduxjs/redux-toolkit/pull/5042) - fix(types): re-exporting WritableDraft from immer by [@​marinsokol5](https://redirect.github.com/marinsokol5) in [#​5015](https://redirect.github.com/reduxjs/redux-toolkit/pull/5015) - Remove Serialisation from useStableQueryArgs by [@​riqts](https://redirect.github.com/riqts) in [#​4996](https://redirect.github.com/reduxjs/redux-toolkit/pull/4996) - add addAsyncThunk method to reducer map builder by [@​EskiMojo14](https://redirect.github.com/EskiMojo14) in [#​5007](https://redirect.github.com/reduxjs/redux-toolkit/pull/5007) - Only run `transformResponse` when a `query` is used by [@​markerikson](https://redirect.github.com/markerikson) in [#​5049](https://redirect.github.com/reduxjs/redux-toolkit/pull/5049) - Assorted bugfixes for 2.8.3 by [@​markerikson](https://redirect.github.com/markerikson) in [#​5060](https://redirect.github.com/reduxjs/redux-toolkit/pull/5060) - Abort pending requests if the cache entry is removed by [@​markerikson](https://redirect.github.com/markerikson) in [#​5061](https://redirect.github.com/reduxjs/redux-toolkit/pull/5061) - Update TS CI config by [@​markerikson](https://redirect.github.com/markerikson) in [#​5065](https://redirect.github.com/reduxjs/redux-toolkit/pull/5065) - Rewrite subscription handling and polling calculations for better perf by [@​markerikson](https://redirect.github.com/markerikson) in [#​5064](https://redirect.github.com/reduxjs/redux-toolkit/pull/5064) **Full Changelog**: <https://github.com/reduxjs/redux-toolkit/compare/v2.8.2...v2.9.0> </details> <details> <summary>rollup/rollup (@​rollup/rollup-linux-x64-gnu)</summary> ### [`v4.50.1`](https://redirect.github.com/rollup/rollup/blob/HEAD/CHANGELOG.md#4501) [Compare Source](https://redirect.github.com/rollup/rollup/compare/v4.50.0...v4.50.1) *2025-09-07* ##### Bug Fixes - Resolve a situation where a destructuring default value was removed ([#​6090](https://redirect.github.com/rollup/rollup/issues/6090)) ##### Pull Requests - [#​6088](https://redirect.github.com/rollup/rollup/pull/6088): feat(www): shorter repl shareables ([@​cyyynthia](https://redirect.github.com/cyyynthia), [@​lukastaegert](https://redirect.github.com/lukastaegert)) - [#​6090](https://redirect.github.com/rollup/rollup/pull/6090): Call includeNode for self or children nodes in includeDestructuredIfNecessary ([@​TrickyPi](https://redirect.github.com/TrickyPi)) - [#​6091](https://redirect.github.com/rollup/rollup/pull/6091): fix(deps): update rust crate swc\_compiler\_base to v33 ([@​renovate](https://redirect.github.com/renovate)\[bot]) - [#​6092](https://redirect.github.com/rollup/rollup/pull/6092): chore(deps): lock file maintenance minor/patch updates ([@​renovate](https://redirect.github.com/renovate)\[bot]) - [#​6094](https://redirect.github.com/rollup/rollup/pull/6094): perf: replace startsWith with strict equality ([@​btea](https://redirect.github.com/btea)) ### [`v4.50.0`](https://redirect.github.com/rollup/rollup/blob/HEAD/CHANGELOG.md#4500) [Compare Source](https://redirect.github.com/rollup/rollup/compare/v4.49.0...v4.50.0) *2025-08-31* ##### Features - Support openharmony-arm64 platform ([#​6081](https://redirect.github.com/rollup/rollup/issues/6081)) ##### Bug Fixes - Fix loading of extensionless imports in config files ([#​6084](https://redirect.github.com/rollup/rollup/issues/6084)) ##### Pull Requests - [#​6081](https://redirect.github.com/rollup/rollup/pull/6081): Add support for openharmony-arm64 platform ([@​hqzing](https://redirect.github.com/hqzing), [@​lukastaegert](https://redirect.github.com/lukastaegert)) - [#​6084](https://redirect.github.com/rollup/rollup/pull/6084): Return null to defer to the default resolution behavior ([@​TrickyPi](https://redirect.github.com/TrickyPi)) </details> <details> <summary>storybookjs/storybook (@​storybook/addon-docs)</summary> ### [`v9.1.5`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#915) [Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v9.1.4...v9.1.5) - CSF: Support `satisfies x as y` syntax - [#​32169](https://redirect.github.com/storybookjs/storybook/pull/32169), thanks [@​diagramatics](https://redirect.github.com/diagramatics)! - Vitest addon: Handle Playwright installation errors gracefully - [#​32329](https://redirect.github.com/storybookjs/storybook/pull/32329), thanks [@​ndelangen](https://redirect.github.com/ndelangen)! ### [`v9.1.4`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#914) [Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v9.1.3...v9.1.4) - Angular: Properly merge builder options and browserTarget options - [#​32272](https://redirect.github.com/storybookjs/storybook/pull/32272), thanks [@​kroeder](https://redirect.github.com/kroeder)! - Core: Optimize bundlesize, by reusing internal/babel in mocking-utils - [#​32350](https://redirect.github.com/storybookjs/storybook/pull/32350), thanks [@​ndelangen](https://redirect.github.com/ndelangen)! - Svelte & Vue: Add framework-specific `docgen` option to disable docgen processing - [#​32319](https://redirect.github.com/storybookjs/storybook/pull/32319), thanks [@​copilot-swe-agent](https://redirect.github.com/copilot-swe-agent)! - Svelte: Support `@sveltejs/vite-plugin-svelte` v6 - [#​32320](https://redirect.github.com/storybookjs/storybook/pull/32320), thanks [@​JReinhold](https://redirect.github.com/JReinhold)! </details> <details> <summary>tailwindlabs/tailwindcss (@​tailwindcss/cli)</summary> ### [`v4.1.13`](https://redirect.github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#4113---2025-09-03) [Compare Source](https://redirect.github.com/tailwindlabs/tailwindcss/compare/v4.1.12...v4.1.13) ##### Changed - Drop warning from browser build ([#​18731](https://redirect.github.com/tailwindlabs/tailwindcss/issues/18731)) - Drop exact duplicate declarations when emitting CSS ([#​18809](https://redirect.github.com/tailwindlabs/tailwindcss/issues/18809)) ##### Fixed - Don't transition `visibility` when using `transition` ([#​18795](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18795)) - Discard matched variants with unknown named values ([#​18799](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18799)) - Discard matched variants with non-string values ([#​18799](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18799)) - Show suggestions for known `matchVariant` values ([#​18798](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18798)) - Replace deprecated `clip` with `clip-path` in `sr-only` ([#​18769](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18769)) - Hide internal fields from completions in `matchUtilities` ([#​18820](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18820)) - Ignore `.vercel` folders by default (can be overridden by `@source …` rules) ([#​18855](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18855)) - Consider variants starting with `@-` to be invalid (e.g. `@-2xl:flex`) ([#​18869](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18869)) - Do not allow custom variants to start or end with a `-` or `_` ([#​18867](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18867), [#​18872](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18872)) - Upgrade: Migrate `aria` theme keys to `@custom-variant` ([#​18815](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18815)) - Upgrade: Migrate `data` theme keys to `@custom-variant` ([#​18816](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18816)) - Upgrade: Migrate `supports` theme keys to `@custom-variant` ([#​18817](https://redirect.github.com/tailwindlabs/tailwindcss/pull/18817)) </details> <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/eslint-plugin)</summary> ### [`v8.43.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8430-2025-09-08) [Compare Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.42.0...v8.43.0) ##### 🚀 Features - **typescript-estree:** disallow empty type parameter/argument lists ([#​11563](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11563)) ##### 🩹 Fixes - **eslint-plugin:** \[prefer-return-this-type] don't report an error when returning a union type that includes a classType ([#​11432](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11432)) - **eslint-plugin:** \[no-deprecated] should report deprecated exports and reexports ([#​11359](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11359)) - **eslint-plugin:** \[no-floating-promises] allowForKnownSafeCalls now supports function names ([#​11423](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11423), [#​11430](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11430)) - **eslint-plugin:** \[consistent-type-exports] fix declaration shadowing ([#​11457](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11457)) - **eslint-plugin:** \[no-unnecessary-type-conversion] only report \~\~ on integer literal types ([#​11517](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11517)) - **scope-manager:** exclude Program from DefinitionBase node types ([#​11469](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11469)) - **eslint-plugin:** \[no-non-null-assertion] do not suggest optional chain on LHS of assignment ([#​11489](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11489)) - **type-utils:** add union type support to TypeOrValueSpecifier ([#​11526](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11526)) ##### ❤️ Thank You - Dima [@​dbarabashh](https://redirect.github.com/dbarabashh) - Kirk Waiblinger [@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger) - mdm317 - tao - Victor Genaev [@​mainframev](https://redirect.github.com/mainframev) - Yukihiro Hasegawa [@​y-hsgw](https://redirect.github.com/y-hsgw) - 민감자(Minji Kim) [@​mouse0429](https://redirect.github.com/mouse0429) - 송재욱 You can read about our [versioning strategy](https://typescript-eslint.io/users/versioning) and [releases](https://typescript-eslint.io/users/releases) on our website. ### [`v8.42.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plug </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/unraid/api). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS44Mi43IiwidXBkYXRlZEluVmVyIjoiNDEuOTcuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> |
||
|
|
daeeba8c1f | chore: add public notice to unraid-components directory | ||
|
|
196bd52628 |
chore(main): release 4.20.0 (#1666)
🤖 I have created a release *beep* *boop* --- ## [4.20.0](https://github.com/unraid/api/compare/v4.19.1...v4.20.0) (2025-09-08) ### Features * **disks:** add isSpinning field to Disk type ([#1527](https://github.com/unraid/api/issues/1527)) ([ |
||
|
|
797bf50ec7 | fix(plugin): add fallback for unraid-api stop in deprecation cleanup (#1668) | ||
|
|
af5ca11860 |
Feat/vue (#1655)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - New Features - Introduced Docker management UI components: Overview, Logs, Console, Preview, and Edit. - Added responsive Card/Detail layouts with grouping, bulk actions, and tabs. - New UnraidToaster component and global toaster configuration. - Component auto-mounting improved with async loading and multi-selector support. - UI/UX - Overhauled theme system (light/dark tokens, primary/orange accents) and added theme variants. - Header OS version now includes integrated changelog modal. - Registration displays warning states; multiple visual polish updates. - API - CPU load now includes percentGuest and percentSteal metrics. - Chores - Migrated web app to Vite; updated artifacts and manifests. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: mdatelle <mike@datelle.net> Co-authored-by: Michael Datelle <mdatelle@icloud.com> |
||
|
|
16905dd3a6 |
chore(main): release 4.19.1 (#1665)
🤖 I have created a release *beep* *boop*
---
## [4.19.1](https://github.com/unraid/api/compare/v4.19.0...v4.19.1)
(2025-09-05)
### Bug Fixes
* custom path detection to fix setup issues
([#1664](https://github.com/unraid/api/issues/1664))
([
|
||
|
|
d3459ecbc6 |
chore(main): release 4.19.0 (#1650)
🤖 I have created a release *beep* *boop* --- ## [4.19.0](https://github.com/unraid/api/compare/v4.18.2...v4.19.0) (2025-09-04) ### Features * mount vue apps, not web components ([#1639](https://github.com/unraid/api/issues/1639)) ([ |
||
|
|
534a07788b |
fix(plugin): restore cleanup behavior for unsupported unraid versions (#1658)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Adds guided warnings and an explicit cleanup/uninstall workflow for unsupported Unraid versions, with safer removal paths by OS release. * **Bug Fixes** * Detects and removes both new and legacy Connect configurations, ensuring proper sign-out and web-server reload. * Strengthens version gating to avoid problematic pre-release builds and advises uninstall/upgrade when needed. * **Chores** * Lowers declared minimum Unraid version to broaden compatibility. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
6cf7c88242 |
fix: enhance DOM validation and cleanup in vue-mount-app
- Improved validation logic for mounted elements to ensure stable DOM connections and prevent manipulation issues. - Added cleanup step to clear existing unraid-components directory before installation, ensuring a clean setup. This update aims to enhance the reliability of component mounting and reduce potential UI issues. |
||
|
|
88087d5201 |
feat: mount vue apps, not web components (#1639)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Standalone web bundle with auto-mount utilities and a self-contained test page. * New responsive modal components for consistent mobile/desktop dialogs. * Header actions to copy OS/API versions. * **Improvements** * Refreshed UI styles (muted borders), accessibility and animation refinements. * Theming updates and Tailwind v4–aligned, component-scoped styles. * Runtime GraphQL endpoint override and CSRF header support. * **Bug Fixes** * Safer network fetching and improved manifest/asset loading with duplicate protection. * **Tests/Chores** * Parallel plugin tests, new extractor test suite, and updated build/test scripts. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |