Files
api/web/package.json
Eli Bosley 345e83bfb0 feat: upgrade nuxt-custom-elements (#1461)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Added new modal dialogs and UI components, including activation steps,
OS update feedback, and expanded notification management.
* Introduced a plugin to configure internationalization, state
management, and Apollo client support in web components.
* Added a new Log Viewer page with a streamlined interface for viewing
logs.

* **Improvements**
* Centralized Pinia state management by consolidating all stores to use
a shared global Pinia instance.
* Simplified component templates by removing redundant
internationalization host wrappers.
* Enhanced ESLint configuration with stricter rules and global variable
declarations.
* Refined custom element build process to prevent jQuery conflicts and
optimize minification.
* Updated component imports and templates for consistent structure and
maintainability.
* Streamlined log viewer dropdowns using simplified select components
with improved formatting.
* Improved notification sidebar with filtering by importance and modular
components.
* Replaced legacy notification popups with new UI components and added
automatic root session creation for localhost requests.
* Updated OS version display and user profile UI with refined styling
and component usage.

* **Bug Fixes**
* Fixed component tag capitalization and improved type annotations
across components.

* **Chores**
* Updated development dependencies including ESLint plugins and build
tools.
* Removed deprecated log viewer patch class and cleaned up related test
fixtures.
  * Removed unused imports and simplified Apollo client setup.
* Cleaned up test mocks and removed obsolete i18n host component tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---
- To see the specific tasks where the Asana app for GitHub is being
used, see below:
  - https://app.asana.com/0/0/1210730229632804

---------

Co-authored-by: Pujit Mehrotra <pujit@lime-technology.com>
Co-authored-by: Zack Spear <zackspear@users.noreply.github.com>
2025-07-08 10:05:39 -04:00

137 lines
4.7 KiB
JSON

{
"name": "@unraid/web",
"version": "4.8.0",
"private": true,
"license": "GPL-2.0-or-later",
"scripts": {
"// Development": "",
"predev": "pnpm --filter=@unraid/ui build",
"dev": "nuxt dev --dotenv .env.example",
"preview": "nuxt preview",
"serve": "NODE_ENV=production PORT=${PORT:-4321} node .output/server/index.mjs",
"// Build": "",
"prebuild:dev": "pnpm predev",
"build:dev": "nuxi build --dotenv .env.staging && pnpm run manifest-ts && pnpm run deploy-to-unraid:dev",
"build:webgui": "pnpm run type-check && nuxi build --dotenv .env.production && pnpm run manifest-ts && pnpm run copy-to-webgui-repo",
"build": "NODE_ENV=production nuxi build --dotenv .env.production && pnpm run manifest-ts",
"prebuild:watch": "pnpm predev",
"build:watch": "nuxi build --dotenv .env.production --watch && pnpm run manifest-ts",
"generate": "nuxt generate",
"manifest-ts": "node ./scripts/add-timestamp-webcomponent-manifest.js",
"// Deployment": "",
"unraid:deploy": "pnpm build:dev",
"deploy-to-unraid:dev": "./scripts/deploy-dev.sh",
"copy-to-webgui-repo": "./scripts/copy-to-webgui-repo.sh",
"// Code Quality": "",
"lint": "eslint .",
"lint:fix": "eslint . --fix",
"type-check": "nuxi typecheck",
"clean": "rm -rf .nuxt .output dist",
"// GraphQL Codegen": "",
"codegen": "graphql-codegen --config codegen.ts -r dotenv/config",
"codegen:watch": "graphql-codegen --config codegen.ts --watch -r dotenv/config",
"// Testing": "",
"test": "vitest run",
"test:watch": "vitest",
"test:ci": "vitest run",
"// Nuxt": "",
"postinstall": "nuxt prepare"
},
"devDependencies": {
"@graphql-codegen/cli": "^5.0.3",
"@graphql-codegen/client-preset": "^4.5.1",
"@graphql-codegen/introspection": "^4.0.3",
"@graphql-typed-document-node/core": "^3.2.0",
"@ianvs/prettier-plugin-sort-imports": "^4.4.0",
"@nuxt/devtools": "^2.0.0",
"@nuxt/eslint": "^1.0.0",
"@nuxt/test-utils": "^3.17.2",
"@nuxtjs/tailwindcss": "^6.12.2",
"@pinia/testing": "^1.0.0",
"@rollup/plugin-strip": "^3.0.4",
"@tailwindcss/typography": "^0.5.15",
"@testing-library/vue": "^8.0.0",
"@types/crypto-js": "^4.2.2",
"@types/eslint-config-prettier": "^6.11.3",
"@types/node": "^22",
"@types/semver": "^7.5.8",
"@typescript-eslint/eslint-plugin": "^8.34.1",
"@unraid/tailwind-rem-to-rem": "^1.1.0",
"@vitejs/plugin-vue": "^5.0.0",
"@vitest/coverage-v8": "^3.1.1",
"@vue/apollo-util": "^4.0.0-beta.6",
"@vue/test-utils": "^2.4.6",
"@vueuse/core": "^13.0.0",
"@vueuse/nuxt": "^13.0.0",
"eslint": "^9.21.0",
"eslint-config-prettier": "^10.0.0",
"eslint-import-resolver-typescript": "^4.4.4",
"eslint-plugin-import": "^2.31.0",
"happy-dom": "^18.0.0",
"lodash-es": "^4.17.21",
"nuxt": "^3.14.1592",
"nuxt-custom-elements": "2.0.0-beta.32",
"prettier": "3.5.3",
"prettier-plugin-tailwindcss": "^0.6.9",
"shadcn-nuxt": "^2.0.0",
"tailwindcss": "^3.0.0",
"tailwindcss-animate": "^1.0.7",
"terser": "^5.37.0",
"typescript": "^5.7.3",
"vite": "^6.3.5",
"vite-plugin-remove-console": "^2.2.0",
"vite-plugin-vue-tracer": "^0.1.3",
"vitest": "^3.1.1",
"vue": "^3.3.0",
"vue-tsc": "^2.1.10",
"vuetify-nuxt-module": "0.18.7"
},
"dependencies": {
"@apollo/client": "^3.12.3",
"@floating-ui/dom": "^1.6.12",
"@floating-ui/utils": "^0.2.8",
"@floating-ui/vue": "^1.1.5",
"@headlessui/vue": "^1.7.23",
"@heroicons/vue": "^2.2.0",
"@jsonforms/core": "^3.6.0",
"@jsonforms/vue": "^3.6.0",
"@jsonforms/vue-vanilla": "^3.6.0",
"@jsonforms/vue-vuetify": "^3.6.0",
"@nuxtjs/color-mode": "^3.5.2",
"@pinia/nuxt": "^0.11.0",
"@unraid/shared-callbacks": "^1.1.1",
"@unraid/ui": "link:../unraid-ui",
"@vue/apollo-composable": "^4.2.1",
"@vueuse/components": "^13.0.0",
"@vueuse/integrations": "^13.0.0",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"crypto-js": "^4.2.0",
"dayjs": "^1.11.13",
"focus-trap": "^7.6.2",
"graphql": "^16.11.0",
"graphql-tag": "^2.12.6",
"graphql-ws": "^6.0.0",
"hex-to-rgba": "^2.0.1",
"highlight.js": "^11.11.1",
"isomorphic-dompurify": "^2.19.0",
"lucide-vue-next": "^0.519.0",
"marked": "^15.0.0",
"marked-base-url": "^1.1.6",
"pinia": "^3.0.1",
"semver": "^7.6.3",
"tailwind-merge": "^2.5.5",
"vue-i18n": "^11.0.0",
"vue-web-component-wrapper": "^1.7.7",
"vuetify": "^3.7.14",
"wretch": "^2.11.0"
},
"optionalDependencies": {
"@rollup/rollup-linux-x64-gnu": "^4.30.1"
},
"overrides": {
"vue": "latest"
},
"packageManager": "pnpm@10.12.1"
}