{
  "name": "saleor-dashboard",
  "version": "3.13.0-dev",
  "main": "src/index.tsx",
  "repository": {
    "type": "git",
    "url": "git://github.com/saleor/saleor-dashboard.git"
  },
  "author": "Saleor Commerce",
  "license": "BSD-3-Clause",
  "bugs": {
    "url": "https://github.com/saleor/saleor-dashboard/issues"
  },
  "homepage": "https://saleor.io/",
  "engines": {
    "node": ">=18 <19",
    "npm": ">=7"
  },
  "dependencies": {
    "@apollo/client": "3.4.17",
    "@editorjs/editorjs": "^2.24.3",
    "@editorjs/header": "^2.6.2",
    "@editorjs/image": "^2.6.2",
    "@editorjs/list": "^1.7.0",
    "@editorjs/paragraph": "^2.8.0",
    "@editorjs/quote": "^2.4.0",
    "@glideapps/glide-data-grid": "^5.0.0",
    "@graphiql/plugin-explorer": "^0.1.12",
    "@graphiql/react": "^0.15.0",
    "@graphiql/toolkit": "^0.8.0",
    "@material-ui/core": "^4.12.4",
    "@material-ui/icons": "^4.11.3",
    "@material-ui/lab": "^4.0.0-alpha.61",
    "@material-ui/styles": "^4.11.4",
    "@reach/auto-id": "^0.16.0",
    "@saleor/macaw-ui": "^0.8.0-pre.64",
    "@saleor/sdk": "^0.4.6",
    "@sentry/react": "^6.0.0",
    "@types/faker": "^5.1.6",
    "@uiw/react-color-hue": "0.0.34",
    "@uiw/react-color-material": "^0.1.0",
    "@uiw/react-color-saturation": "0.0.34",
    "@vanilla-extract/css-utils": "^0.1.3",
    "apollo-upload-client": "^17.0.0",
    "clsx": "^1.2.1",
    "color-convert": "^2.0.1",
    "crc-32": "^1.2.2",
    "currency-codes": "^2.1.0",
    "currency.js": "^2.0.4",
    "debug": "^4.3.4",
    "downshift": "^6.1.7",
    "editorjs-inline-tool": "^0.4.0",
    "faker": "^5.1.0",
    "fast-array-diff": "^0.2.0",
    "find-test-names": "^1.17.1",
    "fuse.js": "^6.6.2",
    "fuzzaldrin": "^2.1.0",
    "graphiql": "^2.2.0",
    "graphql": "^15.4.0",
    "hotkeys-js": "^3.8.1",
    "is-url": "^1.2.4",
    "jss": "^9.8.7",
    "junit-report-merger": "^3.0.5",
    "jwt-decode": "^3.1.2",
    "keycode": "^2.2.1",
    "lodash": "^4.17.21",
    "lz-string": "^1.4.4",
    "marked": "^4.0.17",
    "moment-timezone": "^0.5.32",
    "pixelmatch": "^5.3.0",
    "qs": "^6.10.3",
    "react": "^17.0.2",
    "react-dom": "^17.0.2",
    "react-draggable": "^4.4.5",
    "react-dropzone": "^11.2.4",
    "react-editor-js": "^2.0.6",
    "react-error-boundary": "^3.1.4",
    "react-github-btn": "^1.4.0",
    "react-gtm-module": "^2.0.11",
    "react-helmet": "^6.1.0",
    "react-infinite-scroll-component": "^6.1.0",
    "react-inlinesvg": "^3.0.2",
    "react-intl": "^5.21.2",
    "react-jss": "^10.0.0",
    "react-markdown": "^4.3.1",
    "react-moment": "^1.0.0",
    "react-responsive-carousel": "^3.2.23",
    "react-router": "^5.0.1",
    "react-router-dom": "^5.0.1",
    "react-sortable-hoc": "^1.10.1",
    "react-sortable-tree": "^2.6.2",
    "semver-compare": "^1.0.0",
    "slugify": "^1.4.6",
    "tslib": "^2.4.1",
    "url-join": "^4.0.1",
    "use-react-router": "^1.0.7"
  },
  "devDependencies": {
    "@babel/cli": "^7.5.5",
    "@babel/core": "^7.7.7",
    "@babel/plugin-proposal-class-properties": "^7.5.0",
    "@babel/plugin-proposal-decorators": "^7.4.4",
    "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1",
    "@babel/plugin-proposal-numeric-separator": "^7.2.0",
    "@babel/plugin-proposal-object-rest-spread": "^7.5.4",
    "@babel/plugin-proposal-optional-chaining": "^7.8.3",
    "@babel/preset-env": "^7.5.4",
    "@babel/preset-react": "^7.7.4",
    "@babel/preset-typescript": "^7.13.0",
    "@babel/runtime": "^7.7.6",
    "@editorjs/embed": "^2.5.3",
    "@esbuild-plugins/node-globals-polyfill": "^0.1.1",
    "@formatjs/cli": "^4.5.0",
    "@graphql-codegen/add": "^3.1.1",
    "@graphql-codegen/cli": "^2.1.1",
    "@graphql-codegen/fragment-matcher": "^3.1.0",
    "@graphql-codegen/import-types-preset": "^2.1.12",
    "@graphql-codegen/introspection": "^2.1.1",
    "@graphql-codegen/typescript": "^2.4.3",
    "@graphql-codegen/typescript-apollo-client-helpers": "^2.1.10",
    "@graphql-codegen/typescript-operations": "^2.2.4",
    "@graphql-codegen/typescript-react-apollo": "^3.2.5",
    "@percy/cli": "^1.21.0",
    "@percy/cypress": "^3.1.2",
    "@pollyjs/adapter-node-http": "~5.0.0",
    "@pollyjs/core": "~5.0.0",
    "@pollyjs/persister-fs": "~5.0.0",
    "@release-it/bumper": "^2.0.0",
    "@saleor/app-sdk": "^0.34.1",
    "@types/apollo-upload-client": "^17.0.2",
    "@types/color-convert": "^2.0.0",
    "@types/debug": "^4.1.7",
    "@types/fuzzaldrin": "^2.1.4",
    "@types/is-ci": "^3.0.0",
    "@types/jscodeshift": "^0.11.3",
    "@types/lodash-es": "^4.17.3",
    "@types/react": "^17.0.50",
    "@types/react-dom": "^17.0.17",
    "@types/react-dropzone": "^4.2.2",
    "@types/react-helmet": "^5.0.8",
    "@types/react-infinite-scroller": "^1.2.3",
    "@types/react-router-dom": "^4.3.4",
    "@types/react-sortable-hoc": "^0.7.1",
    "@types/react-sortable-tree": "^0.3.15",
    "@types/semver-compare": "^1.0.1",
    "@types/url-join": "^4.0.1",
    "@types/webappsec-credential-management": "^0.5.1",
    "@typescript-eslint/eslint-plugin": "^5.41.0",
    "@typescript-eslint/parser": "^5.41.0",
    "@vitejs/plugin-react-swc": "^3.2.0",
    "babel-core": "^7.0.0-bridge.0",
    "babel-jest": "^27.5.1",
    "babel-loader": "^8.0.6",
    "ci-info": "^3.7.0",
    "codecov": "^3.7.1",
    "core-js": "^3.7.0",
    "cross-env": "^6.0.3",
    "dependency-cruiser": "^12.10.0",
    "cypress-recurse": "^1.27.0",
    "dotenv": "^10.0.0",
    "env-var": "^7.3.0",
    "esbuild-loader": "^2.18.0",
    "fork-ts-checker-webpack-plugin": "^3.1.1",
    "graphql-request": "^3.7.0",
    "identity-obj-proxy": "^3.0.0",
    "is-ci": "^3.0.1",
    "jscodeshift": "^0.13.0",
    "regenerator-runtime": "^0.11.1",
    "register-service-worker": "^1.7.2",
    "release-it": "^14.5.0",
    "require-context.macro": "^1.1.1",
    "rimraf": "^3.0.0",
    "rollup-plugin-polyfill-node": "^0.11.0",
    "start-server-and-test": "^1.11.0",
    "tsconfig-paths-webpack-plugin": "^3.2.0",
    "typescript": "^5.0.2",
    "vite": "^3.2.4",
    "vite-plugin-html": "^3.2.0",
    "vite-plugin-pwa": "^0.13.3",
    "vite-plugin-sentry": "^1.1.7",
    "workbox-cacheable-response": "^6.1.2",
    "workbox-expiration": "^6.1.2",
    "workbox-precaching": "^6.1.2",
    "workbox-routing": "^6.1.2",
    "workbox-strategies": "^6.1.2"
  },
  "optionalDependencies": {
    "@storybook/react": "^5.1.9",
    "@testing-library/jest-dom": "^5.16.5",
    "@testing-library/react": "^12.1.5",
    "@testing-library/react-hooks": "^8.0.1",
    "@testing-library/user-event": "^14.4.3",
    "@types/jest": "^26.0.14",
    "@types/setup-polly-jest": "^0.5.0",
    "@types/storybook__react": "^4.0.2",
    "cypress": "^12.4.0",
    "cypress-file-upload": "^5.0.8",
    "cypress-mailhog": "^1.3.0",
    "cypress-mochawesome-reporter": "^2.3.0",
    "cypress-multi-reporters": "^1.5.0",
    "cypress-repeat": "^2.3.3",
    "cypress-timings": "^1.0.0",
    "eslint": "^7.4.0",
    "eslint-config-prettier": "^8.5.0",
    "eslint-plugin-chai-friendly": "^0.6.0",
    "eslint-plugin-cypress": "^2.11.2",
    "eslint-plugin-formatjs": "^2.18.0",
    "eslint-plugin-import": "^2.19.1",
    "eslint-plugin-local-rules": "^0.1.1",
    "eslint-plugin-prefer-arrow": "^1.1.6",
    "eslint-plugin-react-hooks": "^4.6.0",
    "eslint-plugin-react-refresh": "^0.3.1",
    "eslint-plugin-simple-import-sort": "^5.0.3",
    "fsevents": "^1.2.9",
    "husky": "^8.0.3",
    "jest": "^27.5.1",
    "jest-canvas-mock": "^2.4.0",
    "jest-environment-jsdom": "^27.5.1",
    "jest-file": "^1.0.0",
    "jest-localstorage-mock": "^2.4.26",
    "lint-staged": "^10.5.1",
    "mocha-junit-reporter": "^2.0.2",
    "mochawesome": "^7.0.1",
    "mochawesome-merge": "^4.2.2",
    "mochawesome-report-generator": "^6.0.1",
    "prettier": "^2.8.4",
    "setup-polly-jest": "^0.9.1",
    "ts-jest": "^27.1.5"
  },
  "jest": {
    "resetMocks": false,
    "globals": {
      "FLAGS_SERVICE_ENABLED": false,
      "FLAGS": {}
    },
    "globalSetup": "<rootDir>/testUtils/globalSetup.ts",
    "setupFilesAfterEnv": [
      "jest-canvas-mock",
      "jest-localstorage-mock",
      "<rootDir>/testUtils/setup.ts"
    ],
    "testEnvironment": "jest-environment-jsdom",
    "transform": {
      "^.+\\.(jsx?|tsx?)$": "babel-jest",
      "^.+\\.(png|svg|jpe?g)$": "jest-file"
    },
    "testRegex": ".*\\.test\\.tsx?$",
    "moduleFileExtensions": [
      "ts",
      "tsx",
      "js",
      "jsx",
      "json",
      "node"
    ],
    "moduleNameMapper": {
      "\\.(css)$": "identity-obj-proxy",
      "@assets(.*)$": "<rootDir>/assets/$1",
      "@locale(.*)$": "<rootDir>/locale/$1",
      "@dashboard(.*)$": "<rootDir>/src/$1",
      "@test/(.*)$": "<rootDir>/testUtils/$1",
      "^@material-ui/core$": "<rootDir>/node_modules/@material-ui/core",
      "^@material-ui/icons$": "<rootDir>/node_modules/@material-ui/icons",
      "^@material-ui/styles$": "<rootDir>/node_modules/@material-ui/styles",
      "^@saleor/macaw-ui/next$": "<rootDir>/node_modules/@saleor/macaw-ui/dist/macaw-ui.cjs",
      "^react$": "<rootDir>/node_modules/react",
      "^react-dom$": "<rootDir>/node_modules/react-dom"
    }
  },
  "overrides": {
    "resolve": "1.20.0"
  },
  "lint-staged": {
    "*.{ts,tsx}": [
      "eslint --fix",
      "prettier --write"
    ],
    "*.{js,jsx}": [
      "eslint --fix",
      "prettier --write"
    ]
  },
  "scripts": {
    "dev": "vite --host",
    "build": "cross-env NODE_OPTIONS=--max_old_space_size=16384 vite build",
    "preview": "vite preview",
    "build-storybook": "cross-env NODE_OPTIONS=--openssl-legacy-provider build-storybook -c src/storybook/ -o build/storybook",
    "build-types": "node scripts/build-types.js",
    "prebuild": "npm run build-types",
    "check-strict-null-errors": "tsc --noEmit --strictNullChecks | node scripts/count-strict-null-check-errors.js",
    "check-types": "tsc --noEmit",
    "extract-json-messages": "formatjs extract 'src/**/*.{ts,tsx}' --out-file locale/defaultMessages.json --format scripts/formatter.js",
    "extract-messages": "npm run extract-json-messages",
    "fetch-schema": "graphql-codegen --config ./fetch-schema.yml",
    "heroku-postbuild": "npm run build",
    "serve:lhci": "cross-env NODE_ENV=production npm run server",
    "prestart": "npm run build-types",
    "storybook": "cross-env NODE_OPTIONS=--openssl-legacy-provider start-storybook -p 3000 -c src/storybook/",
    "cy:run": "cypress run",
    "cy:run:dashboard": "cypress run --record",
    "cy:open": "cypress open",
    "cy:run:critical": "cypress run --record --env grepTags=@critical",
    "cy:run:allEnv": "cypress run --record --env grepTags=@allEnv",
    "cy:run:critical:parallel": "cypress run --record --env grepTags=@critical  --parallel --tag Critical",
    "cy:run:allEnv:parallel": "cypress run --record --env grepTags=@allEnv --parallel",
    "cy:run:stable:parallel": "cypress run --record --env grepTags=@critical  --parallel --tag Stable",
    "cy:percy": "CYPRESS_demoTests=true percy exec -- npm run cy:run",
    "cy:run:demo": "CYPRESS_demoTests=true npm run cy:run",
    "test": "jest src/",
    "test:watch": "jest --watch src/",
    "lint": "eslint \"src/**/*.@(tsx|ts|jsx|js)\" --fix",
    "postbuild": "node scripts/removeSourcemaps.js",
    "postinstall": "node scripts/patchReactVirtualized.js",
    "predev": "npm run build-types",
    "release": "release-it",
    "prepare": "is-ci || husky install",
    "dep-status": "depcruise --config .dependency-cruiser.js src"
  },
  "description": "![Saleor Dashboard](https://user-images.githubusercontent.com/44495184/185379472-2a204c0b-9b7a-4a3e-93c0-2cb85205ed5e.png)"
}
