mirror of
https://github.com/unraid/api.git
synced 2026-01-01 22:20:05 -06:00
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [graphql-ws](https://the-guild.dev/graphql/ws) ([source](https://redirect.github.com/enisdenjo/graphql-ws)) | [`^5.16.0` -> `^6.0.0`](https://renovatebot.com/diffs/npm/graphql-ws/5.16.2/6.0.4) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>enisdenjo/graphql-ws (graphql-ws)</summary> ### [`v6.0.4`](https://redirect.github.com/enisdenjo/graphql-ws/blob/HEAD/CHANGELOG.md#604) [Compare Source](https://redirect.github.com/enisdenjo/graphql-ws/compare/v6.0.3...v6.0.4) ##### Patch Changes - [#​625](https://redirect.github.com/enisdenjo/graphql-ws/pull/625) [`b4a656d`](b4a656d585) Thanks [@​HermanBilous](https://redirect.github.com/HermanBilous)! - Use Math.pow for retry delay calculation ### [`v6.0.3`](https://redirect.github.com/enisdenjo/graphql-ws/blob/HEAD/CHANGELOG.md#603) [Compare Source](https://redirect.github.com/enisdenjo/graphql-ws/compare/v6.0.2...v6.0.3) ##### Patch Changes - [`747c01c`](747c01c73e) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Drop `ExecutionPatchResult` and `FormattedExecutionPatchResult` types Neither of the types are officially supported (yet) and the future versions of graphql-js adding support for stream/defer will a different signature for the incremental execution result. ### [`v6.0.2`](https://redirect.github.com/enisdenjo/graphql-ws/blob/HEAD/CHANGELOG.md#602) [Compare Source](https://redirect.github.com/enisdenjo/graphql-ws/compare/v6.0.1...v6.0.2) ##### Patch Changes - [#​621](https://redirect.github.com/enisdenjo/graphql-ws/pull/621) [`6b180e8`](6b180e8fc2) Thanks [@​pleunv](https://redirect.github.com/pleunv)! - FormattedExecutionResult errors field returns GraphQLFormattedError ### [`v6.0.1`](https://redirect.github.com/enisdenjo/graphql-ws/blob/HEAD/CHANGELOG.md#601) [Compare Source](https://redirect.github.com/enisdenjo/graphql-ws/compare/v6.0.0...v6.0.1) ##### Patch Changes - [#​618](https://redirect.github.com/enisdenjo/graphql-ws/pull/618) [`6be34c7`](6be34c7969) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Remove exports for CommonJS for Deno exports in package.json [Deno supports ECMAScript modules exclusively.](https://docs.deno.com/runtime/fundamentals/modules/) - [#​618](https://redirect.github.com/enisdenjo/graphql-ws/pull/618) [`6be34c7`](6be34c7969) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Define exports for CommonJS TypeScript definitions in package.json ### [`v6.0.0`](https://redirect.github.com/enisdenjo/graphql-ws/blob/HEAD/CHANGELOG.md#600) [Compare Source](https://redirect.github.com/enisdenjo/graphql-ws/compare/v5.16.2...v6.0.0) ##### Major Changes - [`b668b30`](b668b304a8) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - [@​fastify/websocket](https://redirect.github.com/fastify/websocket) WebSocket in the context extra has been renamed from `connection` to `socket` ##### Migrating from v5 to v6 ```diff import { makeHandler } from 'graphql-ws/use/@​fastify/websocket'; makeHandler({ schema(ctx) { - const websocket = ctx.connection; + const websocket = ctx.socket; }, context(ctx) { - const websocket = ctx.connection; + const websocket = ctx.socket; }, onConnect(ctx) { - const websocket = ctx.connection; + const websocket = ctx.socket; }, onDisconnect(ctx) { - const websocket = ctx.connection; + const websocket = ctx.socket; }, onClose(ctx) { - const websocket = ctx.connection; + const websocket = ctx.socket; }, onSubscribe(ctx) { - const websocket = ctx.connection; + const websocket = ctx.socket; }, onOperation(ctx) { - const websocket = ctx.connection; + const websocket = ctx.socket; }, onError(ctx) { - const websocket = ctx.connection; + const websocket = ctx.socket; }, onNext(ctx) { - const websocket = ctx.connection; + const websocket = ctx.socket; }, onComplete(ctx) { - const websocket = ctx.connection; + const websocket = ctx.socket; }, }); ``` - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Drop support for `ws` v7 `ws` v7 has been deprecated. Please upgrade and use v8. - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Drop support for deprecated `fastify-websocket` [`fastify-websocket` has been deprecated since v4.3.0.](https://www.npmjs.com/package/fastify-websocket). Please upgrade and use [`@fastify/websocket`](https://redirect.github.com/fastify/fastify-websocket). - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - The `/lib/` part from imports has been removed, for example `graphql-ws/lib/use/ws` becomes `graphql-ws/use/ws` ##### Migrating from v5 to v6 Simply remove the `/lib/` part from your graphql-ws imports that use a handler. ##### ws ```diff - import { useServer } from 'graphql-ws/lib/use/ws'; + import { useServer } from 'graphql-ws/use/ws'; ``` ##### uWebSockets.js ```diff - import { makeBehavior } from 'graphql-ws/lib/use/uWebSockets'; + import { makeBehavior } from 'graphql-ws/use/uWebSockets'; ``` ##### [@​fastify/websocket](https://redirect.github.com/fastify/websocket) ```diff - import { makeHandler } from 'graphql-ws/lib/use/@​fastify/websocket'; + import { makeHandler } from 'graphql-ws/use/@​fastify/websocket'; ``` ##### Bun ```diff - import { handleProtocols, makeHandler } from 'graphql-ws/lib/use/bun'; + import { handleProtocols, makeHandler } from 'graphql-ws/use/bun'; ``` ##### Deno ```diff - import { makeHandler } from 'https://esm.sh/graphql-ws/lib/use/deno'; + import { makeHandler } from 'https://esm.sh/graphql-ws/use/deno'; ``` - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - `ErrorMessage` uses and `onError` returns `GraphQLFormattedError` (instead of `GraphQLError`) Thanks [@​benjie](https://redirect.github.com/benjie) for working on this in [#​599](https://redirect.github.com/enisdenjo/graphql-ws/issues/599) - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Least supported Node version is v20 Node v10 has been deprecated for years now. There is no reason to support it. Bumping the engine to the current LTS (v20) also allows the code to be leaner and use less polyfills. - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Least supported `graphql` peer dependency is ^15.10.1 and ^16 Users are advised to use the latest of `graphql` because of various improvements in performance and security. - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - `NextMessage` uses and `onNext` returns `FormattedExecutionResult` (instead of `ExecutionResult`) - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - `schema`, `context`, `onSubscribe`, `onOperation`, `onError`, `onNext` and `onComplete` hooks don't have the full accompanying message anymore, only the ID and the relevant part from the message There is really no need to pass the full `SubscribeMessage` to the `onSubscribe` hook. The only relevant parts from the message are the `id` and the `payload`, the `type` is useless since the hook inherently has it (`onNext` is `next` type, `onError` is `error` type, etc). The actual techincal reason for not having the full message is to avoid serialising results and errors twice. Both `onNext` and `onError` allow the user to augment the result and return it to be used instead. `onNext` originally had the `NextMessage` argument which already has the `FormattedExecutionResult`, and `onError` originally had the `ErrorMessage` argument which already has the `GraphQLFormattedError`, and they both also returned `FormattedExecutionResult` and `GraphQLFormattedError` respectivelly - meaning, if the user serialised the results - the serialisation would happen **twice**. Additionally, the `onOperation`, `onError`, `onNext` and `onComplete` now have the `payload` which is the `SubscribeMessage.payload` (`SubscribePayload`) for easier access to the original query as well as execution params extensions. ##### Migrating from v5 to v6 ##### `schema` ```diff import { ExecutionArgs } from 'graphql'; import { ServerOptions, SubscribePayload } from 'graphql-ws'; const opts: ServerOptions = { - schema(ctx, message, argsWithoutSchema: Omit<ExecutionArgs, 'schema'>) { - const messageId = message.id; - const messagePayload: SubscribePayload = message.payload; - }, + schema(ctx, id, payload) { + const messageId = id; + const messagePayload: SubscribePayload = payload; + }, }; ``` ##### `context` ```diff import { ExecutionArgs } from 'graphql'; import { ServerOptions, SubscribePayload } from 'graphql-ws'; const opts: ServerOptions = { - context(ctx, message, args: ExecutionArgs) { - const messageId = message.id; - const messagePayload: SubscribePayload = message.payload; - }, + context(ctx, id, payload, args: ExecutionArgs) { + const messageId = id; + const messagePayload: SubscribePayload = payload; + }, }; ``` ##### `onSubscribe` ```diff import { ServerOptions, SubscribePayload } from 'graphql-ws'; const opts: ServerOptions = { - onSubscribe(ctx, message) { - const messageId = message.id; - const messagePayload: SubscribePayload = message.payload; - }, + onSubscribe(ctx, id, payload) { + const messageId = id; + const messagePayload: SubscribePayload = payload; + }, }; ``` ##### `onOperation` The `SubscribeMessage.payload` is not useful here at all, the `payload` has been parsed to ready-to-use graphql execution args and should be used instead. ```diff import { ExecutionArgs } from 'graphql'; import { ServerOptions, SubscribePayload, OperationResult } from 'graphql-ws'; const opts: ServerOptions = { - onOperation(ctx, message, args: ExecutionArgs, result: OperationResult) { - const messageId = message.id; - const messagePayload: SubscribePayload = message.payload; - }, + onOperation(ctx, id, payload, args: ExecutionArgs, result: OperationResult) { + const messageId = id; + const messagePayload: SubscribePayload = payload; + }, }; ``` ##### `onError` The `ErrorMessage.payload` (`GraphQLFormattedError[]`) is not useful here at all, the user has access to `GraphQLError[]` that are true instances of the error containing object references to `originalError`s and other properties. The user can always convert and return `GraphQLFormattedError[]` by using the `.toJSON()` method. ```diff import { GraphQLError, GraphQLFormattedError } from 'graphql'; import { ServerOptions, SubscribePayload } from 'graphql-ws'; const opts: ServerOptions = { - onError(ctx, message, errors) { - const messageId = message.id; - const graphqlErrors: readonly GraphQLError[] = errors; - const errorMessagePayload: readonly GraphQLFormattedError[] = message.payload; - }, + onError(ctx, id, payload, errors) { + const messageId = id; + const graphqlErrors: readonly GraphQLError[] = errors; + const subscribeMessagePayload: SubscribePayload = payload; + const errorMessagePayload: readonly GraphQLFormattedError[] = errors.map((e) => e.toJSON()); + }, }; ``` ##### `onNext` The `NextMessage.payload` (`FormattedExecutionResult`) is not useful here at all, the user has access to `ExecutionResult` that contains actual object references to error instances. The user can always convert and return `FormattedExecutionResult` by serialising the errors with `GraphQLError.toJSON()` method. ```diff import { ExecutionArgs, ExecutionResult, FormattedExecutionResult } from 'graphql'; import { ServerOptions, SubscribePayload } from 'graphql-ws'; const opts: ServerOptions = { - onNext(ctx, message, args: ExecutionArgs, result: ExecutionResult) { - const messageId = message.id; - const nextMessagePayload: FormattedExecutionResult = message.payload; - }, + onNext(ctx, id, payload, args: ExecutionArgs, result: ExecutionResult) { + const messageId = id; + const subscribeMessagePayload: SubscribePayload = payload; + const nextMessagePayload: FormattedExecutionResult = { ...result, errors: result.errors?.map((e) => e.toJSON()) }; + }, }; ``` ##### `onComplete` ```diff import { ServerOptions, SubscribePayload } from 'graphql-ws'; const opts: ServerOptions = { - onComplete(ctx, message) { - const messageId = message.id; - }, + onComplete(ctx, id, payload) { + const messageId = id; + const subscribeMessagePayload: SubscribePayload = payload; + }, }; ``` - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Errors thrown from subscription iterables will be caught and reported through the `ErrorMessage` Compared to the behaviour before, which terminated the whole WebSocket connection - those errors are now gracefully reported and terminate only the specific subscription that threw the error. There's been [an editorial change in the GraphQL Spec suggesting this being the correct approach](https://redirect.github.com/graphql/graphql-spec/pull/1099). Also, if you'd like to get involved and ideally drop your opinion about whether iterable errors should be reported as errors or `ExecutionResult`s with `errors` field set, [please read more here](https://redirect.github.com/graphql/graphql-spec/pull/1127). ##### Migrating from v5 to v6 If you had used the suggested "ws server usage with custom subscribe method that gracefully handles thrown errors" recipe, you can simply remove it since this behaviour is now baked in. ```diff import { subscribe } from 'graphql'; import { useServer } from 'graphql-ws/use/ws'; import { WebSocketServer } from 'ws'; // yarn add ws const wsServer = new WebSocketServer({ port: 4000, path: '/graphql', }); useServer( { schema, - async subscribe(...args) { - const result = await subscribe(...args); - if ('next' in result) { - // is an async iterable, augment the next method to handle thrown errors - const originalNext = result.next; - result.next = async () => { - try { - return await originalNext(); - } catch (err) { - // gracefully handle the error thrown from the next method - return { value: { errors: [err] } }; - } - }; - } - return result; - }, }, wsServer, ); ``` - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Remove deprecated `isMessage`, use `validateMessage` instead ##### Migrating from v5 to v6 Replace all ocurrances of `isMessage` with `validateMessage`. Note that `validateMessage` throws if the message is not valid, compared with `isMessage` that simply returned true/false. ```diff - import { isMessage } from 'graphql-ws'; + import { validateMessage } from 'graphql-ws'; function isGraphQLWSMessage(val) { - return isMessage(val); + try { + validateMessage(val); + return true; + } catch { + return false; + } } ``` - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Removed deprecated `isFatalConnectionProblem`, use `shouldRetry` instead ##### Migrating from v5 to v6 Replace all ocurrances of `isFatalConnectionProblem` with `shouldRetry`. Note that the result is inverted, where you returned `false` in `isFatalConnectionProblem` you should return `true` in `shouldRetry`. ```diff import { createClient } from 'graphql-ws'; const client = createClient({ url: 'ws://localhost:4000/graphql', - isFatalConnectionProblem: () => false, + shouldRetry: () => true, }); ``` ##### Minor Changes - [#​613](https://redirect.github.com/enisdenjo/graphql-ws/pull/613) [`3f11aba`](3f11aba495) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Client is truly zero-dependency, not even a peer dependency on `graphql` In non-browser environments, you can use only the client and not even depend on `graphql` by importing from `graphql-ws/client`. ```ts import { createClient } from 'graphql-ws/client'; const client = createClient({ url: 'ws://localhost:4000/graphql', }); ``` Note that, in browser envirments (and of course having your bundler use the [`browser` package.json field](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#browser)), you don't have to import from `graphql-ws/client` - simply importing from `graphql-ws` will only have the `createClient` available. - [#​615](https://redirect.github.com/enisdenjo/graphql-ws/pull/615) [`29dd26a`](29dd26a509) Thanks [@​enisdenjo](https://redirect.github.com/enisdenjo)! - Define optional peer dependencies and least supported versions Using the [`peerDependencies`](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#peerdependencies) in combination with [`peerDependenciesMeta`](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#peerdependenciesmeta) configuration in `package.json`. </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 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNzYuMiIsInVwZGF0ZWRJblZlciI6IjM5LjE3Ni4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
124 lines
4.2 KiB
JSON
124 lines
4.2 KiB
JSON
{
|
|
"name": "@unraid/web",
|
|
"version": "4.3.1",
|
|
"private": true,
|
|
"license": "GPL-2.0-only",
|
|
"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",
|
|
"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",
|
|
"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",
|
|
"@nuxtjs/tailwindcss": "^6.12.2",
|
|
"@rollup/plugin-strip": "^3.0.4",
|
|
"@tailwindcss/typography": "^0.5.15",
|
|
"@types/crypto-js": "^4.2.2",
|
|
"@types/eslint-config-prettier": "^6.11.3",
|
|
"@types/node": "^22",
|
|
"@types/semver": "^7.5.8",
|
|
"@unraid/tailwind-rem-to-rem": "^1.1.0",
|
|
"@vue/apollo-util": "^4.0.0-beta.6",
|
|
"@vueuse/core": "^13.0.0",
|
|
"@vueuse/nuxt": "^13.0.0",
|
|
"eslint": "^9.21.0",
|
|
"eslint-config-prettier": "^10.0.0",
|
|
"lodash-es": "^4.17.21",
|
|
"nuxt": "^3.14.1592",
|
|
"nuxt-custom-elements": "2.0.0-beta.18",
|
|
"prettier": "3.5.3",
|
|
"prettier-plugin-tailwindcss": "^0.6.9",
|
|
"shadcn-nuxt": "^1.0.0",
|
|
"tailwindcss": "^3.0.0",
|
|
"tailwindcss-animate": "^1.0.7",
|
|
"terser": "^5.37.0",
|
|
"typescript": "^5.7.3",
|
|
"vite-plugin-remove-console": "^2.2.0",
|
|
"vitest": "^3.0.0",
|
|
"vue-tsc": "^2.1.10",
|
|
"vuetify-nuxt-module": "0.18.4"
|
|
},
|
|
"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.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",
|
|
"@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.9.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.483.0",
|
|
"marked": "^12.0.2",
|
|
"marked-base-url": "^1.1.6",
|
|
"pinia": "^3.0.1",
|
|
"radix-vue": "^1.9.13",
|
|
"semver": "^7.6.3",
|
|
"tailwind-merge": "^2.5.5",
|
|
"vue-i18n": "^11.0.0",
|
|
"vuetify": "^3.7.14",
|
|
"wretch": "^2.11.0"
|
|
},
|
|
"optionalDependencies": {
|
|
"@rollup/rollup-linux-x64-gnu": "^4.30.1"
|
|
},
|
|
"overrides": {
|
|
"vue": "latest",
|
|
"radix-vue": {
|
|
"@floating-ui/vue": "^1.1.5"
|
|
}
|
|
},
|
|
"packageManager": "pnpm@10.6.5"
|
|
}
|