{
  "name": "coder-v2",
  "description": "Coder V2 (Workspaces V2)",
  "repository": "https://github.com/coder/coder",
  "private": true,
  "license": "AGPL-3.0",
  "scripts": {
    "build": "NODE_ENV=production pnpm vite build",
    "check:all": "pnpm format:check && pnpm lint && pnpm test",
    "chromatic": "chromatic",
    "dev": "vite",
    "format": "prettier --cache --write '../**/*.{css,html,js,json,jsx,md,ts,tsx,yaml,yml}'",
    "format:check": "prettier --cache --check '../**/*.{css,html,js,json,jsx,md,ts,tsx,yaml,yml}'",
    "lint": "pnpm run lint:types && jest --selectProjects lint",
    "lint:fix": "eslint --fix e2e/ src/",
    "lint:types": "tsc -p .",
    "playwright:install": "playwright install --with-deps chromium",
    "playwright:test": "playwright test --config=e2e/playwright.config.ts",
    "gen:provisioner": "protoc --plugin=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./e2e/ --ts_proto_opt=outputJsonMethods=false,outputEncodeMethods=encode-no-creation,outputClientImpl=false,nestJs=false,outputPartialMethods=false,fileSuffix=Generated,suffix=hey -I ../provisionersdk/proto ../provisionersdk/proto/provisioner.proto && pnpm exec prettier --ignore-path '/dev/null' --cache --write './e2e/provisionerGenerated.ts'",
    "storybook": "STORYBOOK=true storybook dev -p 6006",
    "storybook:build": "storybook build",
    "storybook:ci": "storybook build --test",
    "test": "jest --selectProjects test",
    "test:ci": "jest --selectProjects test --silent",
    "test:coverage": "jest --selectProjects test --collectCoverage",
    "test:watch": "jest --selectProjects test --watch",
    "test:storybook": "test-storybook",
    "stats": "STATS=true pnpm build && npx http-server ./stats -p 8081 -c-1",
    "deadcode": "ts-prune | grep -v \".stories\\|.config\\|e2e\\|__mocks__\\|used in module\\|testHelpers\\|typesGenerated\" || echo \"No deadcode found.\""
  },
  "dependencies": {
    "@emoji-mart/data": "1.1.2",
    "@emoji-mart/react": "1.1.1",
    "@emotion/css": "11.11.2",
    "@emotion/react": "11.11.1",
    "@emotion/styled": "11.11.0",
    "@fastly/performance-observer-polyfill": "2.0.0",
    "@fontsource-variable/inter": "5.0.15",
    "@fontsource/ibm-plex-mono": "5.0.5",
    "@monaco-editor/react": "4.6.0",
    "@mui/icons-material": "5.14.0",
    "@mui/lab": "5.0.0-alpha.129",
    "@mui/material": "5.14.0",
    "@mui/system": "5.14.0",
    "@mui/utils": "5.14.11",
    "@tanstack/react-query-devtools": "4.35.3",
    "ansi-to-html": "0.7.2",
    "axios": "1.6.0",
    "canvas": "2.11.0",
    "chart.js": "4.4.0",
    "chartjs-adapter-date-fns": "3.0.0",
    "chartjs-plugin-annotation": "3.0.1",
    "chroma-js": "2.4.2",
    "color-convert": "2.0.1",
    "cron-parser": "4.9.0",
    "cronstrue": "2.43.0",
    "date-fns": "2.30.0",
    "dayjs": "1.11.4",
    "emoji-mart": "5.4.0",
    "formik": "2.4.1",
    "front-matter": "4.0.2",
    "lodash": "4.17.21",
    "monaco-editor": "0.44.0",
    "pretty-bytes": "6.1.0",
    "react": "18.2.0",
    "react-chartjs-2": "5.2.0",
    "react-color": "2.19.3",
    "react-confetti": "6.1.0",
    "react-date-range": "1.4.0",
    "react-dom": "18.2.0",
    "react-helmet-async": "2.0.1",
    "react-markdown": "9.0.1",
    "react-query": "npm:@tanstack/react-query@4.35.3",
    "react-router-dom": "6.20.0",
    "react-syntax-highlighter": "15.5.0",
    "react-use": "17.4.0",
    "react-virtualized-auto-sizer": "1.0.20",
    "react-window": "1.8.8",
    "remark-gfm": "4.0.0",
    "rollup-plugin-visualizer": "5.9.0",
    "semver": "7.5.3",
    "tzdata": "1.0.30",
    "ua-parser-js": "1.0.33",
    "ufuzzy": "npm:@leeoniya/ufuzzy@1.0.10",
    "unique-names-generator": "4.7.1",
    "uuid": "9.0.0",
    "xterm": "5.2.0",
    "xterm-addon-canvas": "0.5.0",
    "xterm-addon-fit": "0.8.0",
    "xterm-addon-unicode11": "0.6.0",
    "xterm-addon-web-links": "0.9.0",
    "xterm-addon-webgl": "0.16.0",
    "yup": "1.3.2"
  },
  "devDependencies": {
    "@octokit/types": "12.3.0",
    "@playwright/test": "1.39.0",
    "@storybook/addon-actions": "7.6.11",
    "@storybook/addon-essentials": "7.6.11",
    "@storybook/addon-interactions": "7.6.11",
    "@storybook/addon-links": "7.6.11",
    "@storybook/addon-mdx-gfm": "7.6.11",
    "@storybook/addon-themes": "7.6.11",
    "@storybook/preview-api": "7.6.11",
    "@storybook/react": "7.6.11",
    "@storybook/react-vite": "7.6.11",
    "@storybook/test": "7.6.11",
    "@swc/core": "1.3.38",
    "@swc/jest": "0.2.24",
    "@testing-library/jest-dom": "6.1.2",
    "@testing-library/react": "14.1.0",
    "@testing-library/react-hooks": "8.0.1",
    "@testing-library/user-event": "14.5.1",
    "@types/chroma-js": "2.4.0",
    "@types/color-convert": "2.0.0",
    "@types/express": "4.17.17",
    "@types/jest": "29.5.2",
    "@types/lodash": "4.14.196",
    "@types/node": "18.19.0",
    "@types/react": "18.2.6",
    "@types/react-color": "3.0.6",
    "@types/react-date-range": "1.4.4",
    "@types/react-dom": "18.2.4",
    "@types/react-helmet": "6.1.5",
    "@types/react-syntax-highlighter": "15.5.5",
    "@types/react-virtualized-auto-sizer": "1.0.1",
    "@types/react-window": "1.8.5",
    "@types/semver": "7.5.0",
    "@types/ssh2": "1.11.13",
    "@types/ua-parser-js": "0.7.36",
    "@types/uuid": "9.0.2",
    "@typescript-eslint/eslint-plugin": "6.9.1",
    "@typescript-eslint/parser": "6.9.1",
    "@vitejs/plugin-react": "4.1.0",
    "chromatic": "10.6.1",
    "eslint": "8.52.0",
    "eslint-config-prettier": "9.0.0",
    "eslint-import-resolver-typescript": "3.6.0",
    "eslint-plugin-compat": "4.2.0",
    "eslint-plugin-eslint-comments": "3.2.0",
    "eslint-plugin-import": "2.29.0",
    "eslint-plugin-jest": "27.6.0",
    "eslint-plugin-jsx-a11y": "6.7.1",
    "eslint-plugin-react": "7.33.0",
    "eslint-plugin-react-hooks": "4.6.0",
    "eslint-plugin-storybook": "0.6.12",
    "eslint-plugin-testing-library": "6.1.0",
    "eslint-plugin-unicorn": "49.0.0",
    "eventsourcemock": "2.0.0",
    "express": "4.18.2",
    "jest": "29.6.2",
    "jest-canvas-mock": "2.5.2",
    "jest-environment-jsdom": "29.5.0",
    "jest-fetch-mock": "3.0.3",
    "jest-location-mock": "2.0.0",
    "jest-runner-eslint": "2.1.0",
    "jest-websocket-mock": "2.5.0",
    "jest_workaround": "0.1.14",
    "msw": "1.3.0",
    "prettier": "3.1.0",
    "protobufjs": "7.2.4",
    "rxjs": "7.8.1",
    "ssh2": "1.14.0",
    "storybook": "7.6.11",
    "storybook-addon-react-router-v6": "2.0.0",
    "storybook-react-context": "0.6.0",
    "ts-node": "10.9.1",
    "ts-proto": "1.164.0",
    "ts-prune": "0.10.3",
    "typescript": "5.2.2",
    "vite": "4.5.2",
    "vite-plugin-checker": "0.6.0",
    "vite-plugin-turbosnap": "1.0.2"
  },
  "browserslist": [
    "chrome 110",
    "firefox 111",
    "safari 16.0"
  ],
  "resolutions": {
    "optionator": "0.9.3",
    "semver": "7.5.3"
  },
  "engines": {
    "npm": ">=9.0.0 <10.0.0",
    "node": ">=18.0.0 <19.0.0"
  }
}
