{
  "name": "react-mentions-ts",
  "private": false,
  "version": "6.0.0",
  "description": "A React component that enables Facebook/Twitter-style @mentions and tagging in textarea inputs with full TypeScript support.",
  "type": "module",
  "packageManager": "pnpm@10.33.0",
  "main": "./dist/index.cjs",
  "module": "./dist/index.js",
  "types": "./dist/index.d.cts",
  "exports": {
    ".": {
      "import": {
        "types": "./dist/index.d.ts",
        "default": "./dist/index.js"
      },
      "require": {
        "types": "./dist/index.d.cts",
        "default": "./dist/index.cjs"
      }
    },
    "./package.json": "./package.json"
  },
  "files": [
    "codemods",
    "dist",
    "styles",
    "README.md",
    "CHANGELOG.md",
    "LICENSE",
    "package.json"
  ],
  "sideEffects": false,
  "scripts": {
    "clean": "rimraf dist",
    "build": "pnpm clean && tsdown --config tsdown.config.ts && node ./scripts/remove-dist-source-maps.mjs",
    "build:demo": "vite build --config demo/vite.config.ts",
    "dupes": "jscpd",
    "typecheck": "tsc --project tsconfig.json --noEmit",
    "fmt": "oxfmt",
    "fmt:check": "oxfmt --check",
    "lint": "oxlint src",
    "lint:rule-counts": "node ./scripts/oxlint-rule-counts.mjs",
    "lint:all-rules": "node ./scripts/write-oxlint-all-rules.mjs",
    "publint": "npx publint --pack npm",
    "size": "size-limit",
    "size:check": "pnpm build && pnpm size",
    "tree-shake:report": "pnpm build && npx publint --pack npm && node ./scripts/tree-shake-report.mjs",
    "types:lint": "npm_config_cache=.npm-cache attw --pack .",
    "ci:verify": "pnpm lint && pnpm typecheck && pnpm build && pnpm size && npx publint --pack npm && pnpm types:lint",
    "dev": "node ./scripts/dev-with-wdyr.mjs",
    "demo": "vite --config demo/vite.config.ts",
    "preview": "vite preview --config demo/vite.config.ts",
    "perf:check": "node ./scripts/perf-notes.mjs check",
    "perf:record": "node ./scripts/perf-notes.mjs record",
    "test": "BROWSERSLIST_IGNORE_OLD_DATA=true vitest run",
    "test:browser": "BROWSERSLIST_IGNORE_OLD_DATA=true vitest run --config vitest.browser.config.ts",
    "test:perf": "BROWSERSLIST_IGNORE_OLD_DATA=true vitest run tests/MentionsInput.performance.spec.tsx tests/MentionsInputSelectors.performance.spec.ts",
    "test:watch": "BROWSERSLIST_IGNORE_OLD_DATA=true vitest",
    "test:coverage": "BROWSERSLIST_IGNORE_OLD_DATA=true vitest run --coverage",
    "knip": "knip --strict",
    "knip:deps": "knip --dependencies",
    "fta": "fta src"
  },
  "size-limit": [
    {
      "name": "esm",
      "path": "dist/index.js",
      "limit": "30 kB",
      "gzip": true
    },
    {
      "name": "cjs",
      "path": "dist/index.cjs",
      "limit": "30 kB",
      "gzip": true
    }
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/hbmartin/react-mentions-ts.git"
  },
  "keywords": [
    "react",
    "mentions",
    "react-component",
    "typescript",
    "textarea",
    "autocomplete",
    "suggestions",
    "tagging",
    "user-mentions",
    "input",
    "social",
    "mentionable",
    "triggers",
    "markup",
    "contenteditable"
  ],
  "browserslist": [
    "chrome >= 110",
    "edge >= 110",
    "firefox >= 115",
    "safari >= 16.4"
  ],
  "author": {
    "name": "Harold Martin",
    "email": "harold.martin@gmail.com",
    "url": "https://www.linkedin.com/in/harold-martin-98526971/"
  },
  "license": "BSD-3-Clause",
  "bugs": {
    "url": "https://github.com/hbmartin/react-mentions-ts/issues"
  },
  "homepage": "https://github.com/hbmartin/react-mentions-ts",
  "devDependencies": {
    "@arethetypeswrong/cli": "^0.18.2",
    "@eslint/js": "^10.0.1",
    "@size-limit/file": "12.1.0",
    "@testing-library/dom": "^10.4.1",
    "@testing-library/jest-dom": "^6.9.1",
    "@testing-library/react": "^16.3.2",
    "@types/jscodeshift": "^17.3.0",
    "@types/node": "^22.19.17",
    "@types/react": "^19.2.14",
    "@types/react-dom": "^19.2.3",
    "@vitejs/plugin-react": "^6.0.1",
    "@vitest/browser-playwright": "^4.1.5",
    "@vitest/browser-preview": "^4.1.5",
    "@vitest/coverage-v8": "^4.1.5",
    "@vitest/eslint-plugin": "^1.6.16",
    "@welldone-software/why-did-you-render": "^10.0.1",
    "class-variance-authority": "^0.7.1",
    "clsx": "^2.1.1",
    "eslint": "^10.2.1",
    "eslint-import-resolver-typescript": "^4.4.4",
    "eslint-plugin-code-complete": "^1.5.0",
    "eslint-plugin-import-x": "^4.16.2",
    "eslint-plugin-jsx-a11y": "^6.10.2",
    "eslint-plugin-package-json": "^0.91.1",
    "eslint-plugin-promise": "^7.2.1",
    "eslint-plugin-react": "^7.37.5",
    "eslint-plugin-react-hooks": "^7.1.1",
    "eslint-plugin-react-perf": "^3.3.3",
    "eslint-plugin-react-refresh": "^0.5.2",
    "eslint-plugin-security": "^4.0.0",
    "eslint-plugin-sonarjs": "^4.0.3",
    "eslint-plugin-unicorn": "^64.0.0",
    "eslint-plugin-unused-imports": "^4.4.1",
    "fta-cli": "^3.0.0",
    "globals": "^17.5.0",
    "jiti": "^2.6.1",
    "jscodeshift": "^17.3.0",
    "jscpd": "^4.0.9",
    "jsdom": "^29.0.2",
    "jsonc-eslint-parser": "^3.1.0",
    "knip": "^6.7.0",
    "oxfmt": "^0.46.0",
    "oxlint": "^1.61.0",
    "oxlint-tsgolint": "^0.22.0",
    "playwright": "^1.59.1",
    "publint": "^0.3.18",
    "react": "19.2.5",
    "react-dom": "19.2.5",
    "rimraf": "^6.1.3",
    "size-limit": "12.1.0",
    "tailwind-merge": "^3.5.0",
    "tsdown": "^0.21.10",
    "typescript": "^6.0.3",
    "typescript-eslint": "^8.59.0",
    "vite": "8.0.9",
    "vitest": "^4.1.5"
  },
  "peerDependencies": {
    "class-variance-authority": ">=0.6.0",
    "clsx": ">=2.0.0",
    "react": ">=19.0.3 <19.1.0 || >=19.1.4 <19.2.0 || >=19.2.3",
    "react-dom": ">=19.0.0",
    "tailwind-merge": ">=3.0.0"
  },
  "engines": {
    "node": ">=22.12.0"
  },
  "resolutions": {
    "@types/node": "^22"
  },
  "publishConfig": {
    "access": "public"
  },
  "jscpd": {
    "threshold": 0,
    "reporters": [
      "markdown"
    ],
    "ignore": [
      "**/node_modules/**",
      "**/dist/**",
      "**/coverage/**",
      "**/tests/**",
      "**/__snapshots__/**",
      "**/*.json",
      "**/*.test.js",
      "**/*.test.jsx",
      "**/*.test.ts",
      "**/*.test.tsx",
      "**/*.spec.ts",
      "**/*.spec.tsx",
      "**/*.css",
      "**/*.yml",
      "**/*.md",
      "**/declaration/**/*",
      "**/demo/**/*"
    ],
    "absolute": false
  }
}
