{
  "name": "react-grid-layout",
  "version": "2.2.3",
  "description": "A draggable and resizable grid layout with responsive breakpoints, for React.",
  "main": "dist/index.js",
  "module": "dist/index.mjs",
  "types": "dist/index.d.ts",
  "exports": {
    ".": {
      "import": {
        "types": "./dist/index.d.mts",
        "default": "./dist/index.mjs"
      },
      "require": {
        "types": "./dist/index.d.ts",
        "default": "./dist/index.js"
      }
    },
    "./core": {
      "import": {
        "types": "./dist/core.d.mts",
        "default": "./dist/core.mjs"
      },
      "require": {
        "types": "./dist/core.d.ts",
        "default": "./dist/core.js"
      }
    },
    "./react": {
      "import": {
        "types": "./dist/react.d.mts",
        "default": "./dist/react.mjs"
      },
      "require": {
        "types": "./dist/react.d.ts",
        "default": "./dist/react.js"
      }
    },
    "./legacy": {
      "import": {
        "types": "./dist/legacy.d.mts",
        "default": "./dist/legacy.mjs"
      },
      "require": {
        "types": "./dist/legacy.d.ts",
        "default": "./dist/legacy.js"
      }
    },
    "./extras": {
      "import": {
        "types": "./dist/extras.d.mts",
        "default": "./dist/extras.mjs"
      },
      "require": {
        "types": "./dist/extras.d.ts",
        "default": "./dist/extras.js"
      }
    },
    "./css/styles.css": "./css/styles.css"
  },
  "sideEffects": [
    "*.css"
  ],
  "files": [
    "dist",
    "css",
    "index.js",
    "index-dev.js"
  ],
  "scripts": {
    "lint": "make lint",
    "test": "make test",
    "test:match": "NODE_ENV=test npx jest --testPathPatterns",
    "build": "make build",
    "build:ts": "tsup",
    "build:ts:watch": "tsup --watch",
    "typecheck": "tsc --noEmit",
    "build-example": "make build-example",
    "view-example": "make view-example",
    "dev": "make dev",
    "prepare": "husky",
    "prepublishOnly": "make build",
    "validate": "npm ls",
    "fmt": "prettier --write .",
    "fmt:check": "prettier --check ."
  },
  "repository": {
    "type": "git",
    "url": "git@github.com:STRML/react-grid-layout.git"
  },
  "keywords": [
    "react",
    "grid",
    "drag",
    "draggable",
    "resize",
    "resizable",
    "fluid",
    "responsive"
  ],
  "author": "Samuel Reed <samuel.trace.reed@gmail.com> (http://strml.net/)",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/react-grid-layout/react-grid-layout/issues"
  },
  "homepage": "https://github.com/react-grid-layout/react-grid-layout",
  "dependencies": {
    "clsx": "^2.1.1",
    "fast-equals": "^4.0.3",
    "prop-types": "^15.8.1",
    "react-draggable": "^4.4.6",
    "react-resizable": "^3.1.3",
    "resize-observer-polyfill": "^1.5.1"
  },
  "_dependencyNotes": {
    "fast-equals": "Bug in CRA5 causes fast-equals@5 to fail to import due to .cjs file. See https://github.com/react-grid-layout/react-grid-layout/issues/1904"
  },
  "devDependencies": {
    "@babel/cli": "^7.28.6",
    "@babel/core": "^7.29.0",
    "@babel/eslint-parser": "^7.28.6",
    "@babel/plugin-transform-class-properties": "^7.28.6",
    "@babel/preset-env": "^7.29.0",
    "@babel/preset-react": "^7.27.1",
    "@babel/preset-typescript": "^7.28.5",
    "@babel/register": "^7.28.6",
    "@eslint/compat": "^2.0.2",
    "@eslint/js": "^9.39.2",
    "@testing-library/dom": "^10.4.0",
    "@testing-library/jest-dom": "^6.6.3",
    "@testing-library/react": "^16.3.2",
    "@types/node": "^25.2.3",
    "@types/react": "^19.2.14",
    "@webpack-cli/serve": "^3.0.1",
    "babel-jest": "^30.2.0",
    "babel-loader": "^10.0.0",
    "babel-plugin-preval": "^5.1.0",
    "css-loader": "^7.1.3",
    "ejs": "^4.0.1",
    "eslint": "^9.39.2",
    "eslint-plugin-mocha": "^11.2.0",
    "eslint-plugin-react": "^7.33.2",
    "eslint-plugin-react-hooks": "^7.0.1",
    "eslint-plugin-unicorn": "^63.0.0",
    "exports-loader": "^5.0.0",
    "globals": "^17.3.0",
    "husky": "^9.1.7",
    "imports-loader": "^5.0.0",
    "jest": "^30.2.0",
    "jest-environment-jsdom": "^30.2.0",
    "lint-staged": "^16.2.7",
    "lodash": "^4.17.21",
    "opener": "^1.5.2",
    "prettier": "^3.8.1",
    "react": "^18.3.1",
    "react-dom": "^18.3.1",
    "react-grab": "^0.0.71",
    "react-hot-loader": "^4.13.1",
    "react-transform-hmr": "^1.0.2",
    "style-loader": "^4.0.0",
    "timsort": "^0.3.0",
    "tsup": "^8.5.1",
    "typescript": "^5.9.3",
    "typescript-eslint": "^8.55.0",
    "webpack": "^5.105.2",
    "webpack-cli": "^6.0.1",
    "webpack-dev-server": "^5.2.3"
  },
  "resolutions": {
    "**/cheerio": "npm:cheerio@1.0.0-rc.12"
  },
  "_resolutionNotes": {
    "**/cheerio": "See https://github.com/cheeriojs/cheerio/issues/4618"
  },
  "peerDependencies": {
    "react": ">= 16.3.0",
    "react-dom": ">= 16.3.0"
  },
  "publishConfig": {
    "registry": "https://registry.npmjs.org"
  },
  "jest": {
    "setupFilesAfterEnv": [
      "<rootDir>test/util/setupTests.js"
    ],
    "testMatch": [
      "<rootDir>/test/spec/*.js",
      "<rootDir>/test/spec/*.ts",
      "<rootDir>/test/spec/*.tsx"
    ],
    "testEnvironment": "jsdom",
    "testEnvironmentOptions": {
      "url": "http://localhost"
    },
    "coverageThreshold": {
      "global": {
        "statements": 65,
        "branches": 60,
        "functions": 65,
        "lines": 65
      }
    },
    "transform": {
      "^.+\\.(js|jsx)$": "babel-jest",
      "^.+\\.(ts|tsx)$": [
        "babel-jest",
        {
          "presets": [
            "@babel/preset-typescript"
          ]
        }
      ]
    },
    "moduleFileExtensions": [
      "ts",
      "tsx",
      "js",
      "jsx",
      "json"
    ],
    "moduleNameMapper": {
      "^(\\.{1,2}/.*)\\.js$": "$1"
    }
  },
  "lint-staged": {
    "*.{js,jsx,ts,tsx}": [
      "eslint --fix"
    ],
    "*": [
      "prettier --ignore-unknown --write"
    ]
  }
}
