{
  "name": "tabbable",
  "version": "6.4.0",
  "description": "Returns an array of all tabbable DOM nodes within a containing node.",
  "main": "dist/index.js",
  "module": "dist/index.esm.js",
  "types": "index.d.ts",
  "sideEffects": false,
  "files": [
    "package.json",
    "dist",
    "src",
    "index.d.ts",
    "README.md",
    "CHANGELOG.md",
    "SECURITY.md",
    "LICENSE"
  ],
  "scripts": {
    "build": "npm run clean && npm run compile",
    "clean": "rm -rf ./dist",
    "compile:esm": "cross-env BUILD_ENV=esm BABEL_ENV=esm rollup -c",
    "compile:cjs": "cross-env BUILD_ENV=cjs BABEL_ENV=es5 rollup -c",
    "compile:umd": "cross-env BUILD_ENV=umd BABEL_ENV=es5 rollup -c",
    "compile": "npm run compile:esm && npm run compile:cjs && npm run compile:umd",
    "format": "prettier --write \"{*,src/**/*,test/**/*,.github/workflows/**/*}.+(js|cjs|mjs|ts|cts|mts|yml)\"",
    "format:check": "prettier --check \"{*,src/**/*,test/**/*,.github/workflows/**/*}.+(js|cjs|mjs|ts|cts|mts|yml)\"",
    "format:watch": "onchange \"{*,src/**/*,test/**/*,.github/workflows/**/*}.+(js|cjs|mjs|ts|cts|mts|yml)\" -- prettier --write {{changed}}",
    "lint": "eslint \"{*,src/**/*,test/**/*}.+(js|cjs|mjs|ts|cts|mts)\"",
    "start": "npm run compile:cjs && budo test/debug.js --live --dir -- -t brfs",
    "test": "npm run format:check && npm run lint && npm run test:types && npm run test:unit && npm run test:e2e",
    "test:types": "tsc index.d.ts",
    "test:unit": "jest",
    "test:e2e": "ELECTRON_ENABLE_LOGGING=1 cypress run",
    "test:e2e:dev": "cypress open",
    "test:coverage": "BABEL_ENV=test npm run test:e2e --env coverage=true",
    "prepare": "npm run build",
    "prepublishOnly": "npm run test && npm run build",
    "release": "npm run build && changeset publish"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/focus-trap/tabbable.git"
  },
  "author": {
    "name": "David Clark",
    "url": "http://davidtheclark.com/"
  },
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/focus-trap/tabbable/issues"
  },
  "homepage": "https://github.com/focus-trap/tabbable#readme",
  "devDependencies": {
    "@babel/core": "^7.28.5",
    "@babel/eslint-parser": "^7.28.5",
    "@babel/eslint-plugin": "^7.27.1",
    "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6",
    "@babel/plugin-proposal-optional-chaining": "^7.20.7",
    "@babel/preset-env": "^7.28.5",
    "@changesets/cli": "^2.29.8",
    "@cypress/code-coverage": "^3.14.7",
    "@eslint/js": "^9.39.2",
    "@rollup/plugin-babel": "^6.1.0",
    "@rollup/plugin-commonjs": "^29.0.0",
    "@rollup/plugin-node-resolve": "^16.0.3",
    "@rollup/plugin-terser": "^0.4.4",
    "@testing-library/dom": "^10.4.1",
    "@testing-library/jest-dom": "^6.9.1",
    "@types/node": "^25.0.3",
    "@typescript-eslint/eslint-plugin": "^8.51.0",
    "@typescript-eslint/parser": "^8.51.0",
    "all-contributors-cli": "^6.26.1",
    "babel-jest": "^30.2.0",
    "babel-loader": "^10.0.0",
    "babel-plugin-istanbul": "^7.0.1",
    "brfs": "^2.0.2",
    "browserify": "^17.0.1",
    "budo": "^11.8.4",
    "cross-env": "^10.1.0",
    "cypress": "^15.8.1",
    "eslint": "^9.39.2",
    "eslint-config-prettier": "^10.1.8",
    "eslint-import-resolver-node": "^0.3.9",
    "eslint-import-resolver-typescript": "^4.4.4",
    "eslint-plugin-cypress": "^5.2.0",
    "eslint-plugin-import": "^2.32.0",
    "eslint-plugin-jest": "^29.12.0",
    "eslint-plugin-jest-dom": "^5.5.0",
    "eslint-plugin-testing-library": "^7.15.3",
    "globals": "^16.5.0",
    "jest": "^30.2.0",
    "jest-environment-jsdom": "^30.2.0",
    "jest-watch-typeahead": "^3.0.1",
    "onchange": "^7.1.0",
    "prettier": "^3.7.4",
    "rollup": "^4.54.0",
    "typescript": "^5.9.3",
    "watchify": "^4.0.0",
    "webpack": "^5.104.1"
  }
}
