{
  "name": "@zitadel/login",
  "private": true,
  "type": "module",
  "scripts": {
    "dev": "next dev --turbopack",
    "test": "concurrently --timings --kill-others-on-fail 'npm:test:unit' 'npm:test:integration'",
    "test:watch": "concurrently --kill-others 'npm:test:unit:watch' 'npm:test:integration:watch'",
    "test:unit": "vitest",
    "test:unit:watch": "pnpm test:unit --watch",
    "test:integration": "pnpm mock:build && concurrently --names 'mock,test' --success command-test --kill-others 'pnpm:mock' 'env-cmd -f ./.env.integration start-server-and-test start http://localhost:3000 \"test:integration:run\"'",
    "test:integration:watch": "concurrently --names 'mock,test' --kill-others 'pnpm:mock' 'env-cmd -f ./.env.integration start-server-and-test dev http://localhost:3000 \"pnpm nodemon -e js,jsx,ts,tsx,css,scss --ignore \\\"__test__/**\\\" --exec \\\"pnpm test:integration:run\\\"\"'",
    "test:integration:run": "cypress run --config-file ./cypress/cypress.config.ts --quiet",
    "test:integration:open": "cypress open --config-file ./cypress/cypress.config.ts",
    "mock": "pnpm mock:build && pnpm mock:run",
    "mock:run": "pnpm mock:stop && docker run --rm --name zitadel-mock-grpc-server --publish 22220:22220 --publish 22222:22222 zitadel-mock-grpc-server",
    "mock:build": "DOCKER_BUILDKIT=1 docker build --tag zitadel-mock-grpc-server ./mock",
    "mock:build:nocache": "pnpm mock:build --no-cache",
    "mock:stop": "docker rm --force zitadel-mock-grpc-server 2>/dev/null || true",
    "mock:destroy": "docker rmi --force zitadel-mock-grpc-server 2>/dev/null || true",
    "lint": "next lint && prettier --check .",
    "lint:fix": "prettier --write .",
    "lint-staged": "lint-staged",
    "build": "next build",
    "prestart": "pnpm build",
    "start": "next start",
    "start:built": "next start",
    "clean": "pnpm mock:destroy && rm -rf .turbo && rm -rf node_modules && rm -rf .next"
  },
  "git": {
    "pre-commit": "lint-staged"
  },
  "lint-staged": {
    "*": "prettier --write --ignore-unknown"
  },
  "dependencies": {
    "@headlessui/react": "^2.1.9",
    "@heroicons/react": "2.1.3",
    "@tailwindcss/forms": "0.5.7",
    "@vercel/analytics": "^1.2.2",
    "@zitadel/client": "workspace:*",
    "@zitadel/node": "workspace:*",
    "@zitadel/proto": "workspace:*",
    "clsx": "1.2.1",
    "copy-to-clipboard": "^3.3.3",
    "deepmerge": "^4.3.1",
    "moment": "^2.29.4",
    "next": "15.0.4-canary.23",
    "next-intl": "^3.25.1",
    "next-themes": "^0.2.1",
    "nice-grpc": "2.0.1",
    "qrcode.react": "^3.1.0",
    "react": "19.0.0-rc-66855b96-20241106",
    "react-dom": "19.0.0-rc-66855b96-20241106",
    "react-hook-form": "7.39.5",
    "swr": "^2.2.0",
    "tinycolor2": "1.4.2"
  },
  "devDependencies": {
    "@bufbuild/buf": "^1.46.0",
    "@testing-library/jest-dom": "^6.6.3",
    "@testing-library/react": "^16.0.1",
    "@types/ms": "0.7.34",
    "@types/node": "22.9.0",
    "@types/react": "npm:types-react@19.0.0-rc.1",
    "@types/react-dom": "npm:types-react-dom@19.0.0-rc.1",
    "@types/tinycolor2": "1.4.3",
    "@types/uuid": "^10.0.0",
    "@vercel/git-hooks": "1.0.0",
    "@zitadel/prettier-config": "workspace:*",
    "@zitadel/tsconfig": "workspace:*",
    "autoprefixer": "10.4.20",
    "concurrently": "^9.1.0",
    "cypress": "^13.15.2",
    "del-cli": "6.0.0",
    "env-cmd": "^10.1.0",
    "eslint-config-zitadel": "workspace:*",
    "grpc-tools": "1.12.4",
    "jsdom": "^25.0.1",
    "lint-staged": "15.2.10",
    "make-dir-cli": "4.0.0",
    "nodemon": "^3.1.7",
    "postcss": "8.4.49",
    "prettier-plugin-tailwindcss": "0.6.8",
    "sass": "^1.80.7",
    "start-server-and-test": "^2.0.8",
    "tailwindcss": "3.4.14",
    "ts-proto": "^2.2.7",
    "typescript": "^5.6.3",
    "zitadel-tailwind-config": "workspace:*"
  }
}
