{ "name": "dify-web", "type": "module", "version": "1.13.3", "private": true, "imports": { "#i18n": { "react-server": "./i18n-config/lib.server.ts", "default": "./i18n-config/lib.client.ts" } }, "browserslist": [ "last 1 Chrome version", "last 1 Firefox version", "last 1 Edge version", "last 1 Safari version", "iOS >=15", "Android >= 10", "and_chr >= 126", "and_ff >= 137", "and_uc >= 15.5", "and_qq >= 14.9" ], "scripts": { "analyze": "next experimental-analyze", "analyze-component": "node ./scripts/analyze-component.js", "build": "next build", "build:vinext": "vinext build", "dev": "next dev", "dev:inspect": "next dev --inspect", "dev:proxy": "tsx ./scripts/dev-hono-proxy.ts", "dev:vinext": "vinext dev", "gen-doc-paths": "tsx ./scripts/gen-doc-paths.ts", "gen-icons": "pnpm --filter @dify/iconify-collections generate && node ./scripts/gen-icons.mjs && eslint --fix app/components/base/icons/src/", "i18n:check": "tsx ./scripts/check-i18n.js", "knip": "knip", "lint": "eslint --cache --concurrency=auto", "lint:ci": "eslint --cache --cache-strategy content --concurrency 2", "lint:fix": "vp run lint --fix", "lint:quiet": "vp run lint --quiet", "lint:tss": "tsslint --project tsconfig.json", "preinstall": "npx only-allow pnpm", "refactor-component": "node ./scripts/refactor-component.js", "start": "node ./scripts/copy-and-start.mjs", "start:vinext": "vinext start", "storybook": "storybook dev -p 6006", "storybook:build": "storybook build", "test": "vp test", "test:coverage": "vp test --coverage", "test:watch": "vp test --watch", "type-check": "tsc --noEmit", "type-check:tsgo": "tsgo --noEmit", "uglify-embed": "node ./bin/uglify-embed" }, "dependencies": { "@amplitude/analytics-browser": "catalog:", "@amplitude/plugin-session-replay-browser": "catalog:", "@base-ui/react": "catalog:", "@emoji-mart/data": "catalog:", "@floating-ui/react": "catalog:", "@formatjs/intl-localematcher": "catalog:", "@headlessui/react": "catalog:", "@heroicons/react": "catalog:", "@lexical/code": "catalog:", "@lexical/link": "catalog:", "@lexical/list": "catalog:", "@lexical/react": "catalog:", "@lexical/selection": "catalog:", "@lexical/text": "catalog:", "@lexical/utils": "catalog:", "@monaco-editor/react": "catalog:", "@orpc/client": "catalog:", "@orpc/contract": "catalog:", "@orpc/openapi-client": "catalog:", "@orpc/tanstack-query": "catalog:", "@remixicon/react": "catalog:", "@sentry/react": "catalog:", "@streamdown/math": "catalog:", "@svgdotjs/svg.js": "catalog:", "@t3-oss/env-nextjs": "catalog:", "@tailwindcss/typography": "catalog:", "@tanstack/react-form": "catalog:", "@tanstack/react-query": "catalog:", "@tanstack/react-virtual": "catalog:", "abcjs": "catalog:", "ahooks": "catalog:", "class-variance-authority": "catalog:", "clsx": "catalog:", "cmdk": "catalog:", "copy-to-clipboard": "catalog:", "cron-parser": "catalog:", "dayjs": "catalog:", "decimal.js": "catalog:", "dompurify": "catalog:", "echarts": "catalog:", "echarts-for-react": "catalog:", "elkjs": "catalog:", "embla-carousel-autoplay": "catalog:", "embla-carousel-react": "catalog:", "emoji-mart": "catalog:", "es-toolkit": "catalog:", "fast-deep-equal": "catalog:", "foxact": "catalog:", "hast-util-to-jsx-runtime": "catalog:", "html-entities": "catalog:", "html-to-image": "catalog:", "i18next": "catalog:", "i18next-resources-to-backend": "catalog:", "immer": "catalog:", "jotai": "catalog:", "js-audio-recorder": "catalog:", "js-cookie": "catalog:", "js-yaml": "catalog:", "jsonschema": "catalog:", "katex": "catalog:", "ky": "catalog:", "lamejs": "catalog:", "lexical": "catalog:", "mermaid": "catalog:", "mime": "catalog:", "mitt": "catalog:", "negotiator": "catalog:", "next": "catalog:", "next-themes": "catalog:", "nuqs": "catalog:", "pinyin-pro": "catalog:", "qrcode.react": "catalog:", "qs": "catalog:", "react": "catalog:", "react-18-input-autosize": "catalog:", "react-dom": "catalog:", "react-easy-crop": "catalog:", "react-hotkeys-hook": "catalog:", "react-i18next": "catalog:", "react-multi-email": "catalog:", "react-papaparse": "catalog:", "react-pdf-highlighter": "catalog:", "react-sortablejs": "catalog:", "react-textarea-autosize": "catalog:", "reactflow": "catalog:", "remark-breaks": "catalog:", "remark-directive": "catalog:", "scheduler": "catalog:", "sharp": "catalog:", "shiki": "catalog:", "sortablejs": "catalog:", "std-semver": "catalog:", "streamdown": "catalog:", "string-ts": "catalog:", "tailwind-merge": "catalog:", "tldts": "catalog:", "unist-util-visit": "catalog:", "use-context-selector": "catalog:", "uuid": "catalog:", "zod": "catalog:", "zundo": "catalog:", "zustand": "catalog:" }, "devDependencies": { "@antfu/eslint-config": "catalog:", "@chromatic-com/storybook": "catalog:", "@dify/iconify-collections": "workspace:*", "@egoist/tailwindcss-icons": "catalog:", "@eslint-react/eslint-plugin": "catalog:", "@hono/node-server": "catalog:", "@iconify-json/heroicons": "catalog:", "@iconify-json/ri": "catalog:", "@mdx-js/loader": "catalog:", "@mdx-js/react": "catalog:", "@mdx-js/rollup": "catalog:", "@next/eslint-plugin-next": "catalog:", "@next/mdx": "catalog:", "@rgrove/parse-xml": "catalog:", "@storybook/addon-docs": "catalog:", "@storybook/addon-links": "catalog:", "@storybook/addon-onboarding": "catalog:", "@storybook/addon-themes": "catalog:", "@storybook/nextjs-vite": "catalog:", "@storybook/react": "catalog:", "@tailwindcss/postcss": "catalog:", "@tailwindcss/vite": "catalog:", "@tanstack/eslint-plugin-query": "catalog:", "@tanstack/react-devtools": "catalog:", "@tanstack/react-form-devtools": "catalog:", "@tanstack/react-query-devtools": "catalog:", "@testing-library/dom": "catalog:", "@testing-library/jest-dom": "catalog:", "@testing-library/react": "catalog:", "@testing-library/user-event": "catalog:", "@tsslint/cli": "catalog:", "@tsslint/compat-eslint": "catalog:", "@tsslint/config": "catalog:", "@types/js-cookie": "catalog:", "@types/js-yaml": "catalog:", "@types/negotiator": "catalog:", "@types/node": "catalog:", "@types/qs": "catalog:", "@types/react": "catalog:", "@types/react-dom": "catalog:", "@types/sortablejs": "catalog:", "@typescript-eslint/parser": "catalog:", "@typescript/native-preview": "catalog:", "@vitejs/plugin-react": "catalog:", "@vitejs/plugin-rsc": "catalog:", "@vitest/coverage-v8": "catalog:", "agentation": "catalog:", "code-inspector-plugin": "catalog:", "eslint": "catalog:", "eslint-markdown": "catalog:", "eslint-plugin-better-tailwindcss": "catalog:", "eslint-plugin-hyoban": "catalog:", "eslint-plugin-markdown-preferences": "catalog:", "eslint-plugin-no-barrel-files": "catalog:", "eslint-plugin-react-refresh": "catalog:", "eslint-plugin-sonarjs": "catalog:", "eslint-plugin-storybook": "catalog:", "happy-dom": "catalog:", "hono": "catalog:", "knip": "catalog:", "postcss": "catalog:", "react-server-dom-webpack": "catalog:", "storybook": "catalog:", "tailwindcss": "catalog:", "tsx": "catalog:", "typescript": "catalog:", "uglify-js": "catalog:", "vinext": "catalog:", "vite": "catalog:", "vite-plugin-inspect": "catalog:", "vite-plus": "catalog:", "vitest": "catalog:", "vitest-canvas-mock": "catalog:" } }