{
  "name": "@rfdtech/components",
  "version": "2.2.0",
  "description": "Shared React component library for Clet projects",
  "type": "module",
  "main": "./dist/index.cjs",
  "module": "./dist/index.js",
  "types": "./dist/index.d.ts",
  "sideEffects": [
    "**/*.css",
    "./dist/index.css"
  ],
  "exports": {
    ".": {
      "import": {
        "types": "./dist/index.d.ts",
        "default": "./dist/index.js"
      },
      "require": {
        "types": "./dist/index.d.ts",
        "default": "./dist/index.cjs"
      }
    },
    "./style.css": {
      "import": "./dist/index.css",
      "require": "./dist/index.css",
      "default": "./dist/index.css"
    },
    "./dist/index.css": {
      "import": "./dist/index.css",
      "require": "./dist/index.css",
      "default": "./dist/index.css"
    },
    "./next": {
      "import": {
        "types": "./dist/next-index.d.ts",
        "default": "./dist/next.js"
      },
      "require": {
        "types": "./dist/next-index.d.ts",
        "default": "./dist/next.cjs"
      }
    }
  },
  "files": [
    "dist",
    "scripts/postinstall.mjs"
  ],
  "bin": {
    "components-mcp": "dist/mcp/index.js",
    "rfdui": "dist/mcp/cli.js"
  },
  "scripts": {
    "prepare": "npm run generate:tokens",
    "postinstall": "node scripts/postinstall.mjs",
    "generate:tokens": "node scripts/generate-theme-tokens.mjs",
    "build": "npm run generate:tokens && BUILD_TARGET=default npx vite build && BUILD_TARGET=next npx vite build && mv dist/next-index.css dist/next.css && node -e \"var fs=require('fs');['dist/next.js','dist/next.cjs'].forEach(f=>fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('./next-index.css','./next.css')))\" && tsc -p tsconfig.build.json && cp src/next.d.ts dist/next.d.ts && (cd mcp && npx tsc -p tsconfig.json) && node mcp/scripts/prepare-dist.mjs",
    "build:mcp": "(cd mcp && npx tsc -p tsconfig.json) && node mcp/scripts/prepare-dist.mjs",
    "dev": "vite-react-ssg dev -c vite.demo.config.ts",
    "demo": "vite-react-ssg build -c vite.demo.config.ts",
    "test": "vitest run",
    "test:watch": "vitest",
    "test:types": "vitest --typecheck run",
    "lint": "eslint .",
    "lint:css": "stylelint 'src/**/*.css' --max-warnings 0",
    "lint:css:fix": "stylelint 'src/**/*.css' --fix",
    "typecheck": "tsc --noEmit",
    "prepublishOnly": "npm run generate:tokens && npm run lint:css && npm run lint && npm run typecheck && npm run test && npm run test:types && npm run build"
  },
  "peerDependencies": {
    "@hookform/resolvers": ">=3.0.0",
    "@radix-ui/react-alert-dialog": "^1.1.0",
    "@radix-ui/react-checkbox": "^1.3.0",
    "@radix-ui/react-dialog": "^1.1.0",
    "@radix-ui/react-popover": "^1.1.0",
    "@radix-ui/react-radio-group": "^1.4.0",
    "@radix-ui/react-select": "^2.3.0",
    "@radix-ui/react-switch": "^1.2.0",
    "@radix-ui/react-tabs": "^1.1.0",
    "lucide-react": ">=1.0.0",
    "next": ">=14.0.0",
    "react": ">=18.0.0",
    "react-dom": ">=18.0.0",
    "react-hook-form": ">=7.0.0",
    "react-router-dom": ">=7.0.0",
    "xlsx": ">=0.18.5",
    "zod": ">=3.0.0"
  },
  "peerDependenciesMeta": {
    "react-hook-form": {
      "optional": true
    },
    "zod": {
      "optional": true
    },
    "next": {
      "optional": true
    },
    "@hookform/resolvers": {
      "optional": true
    },
    "xlsx": {
      "optional": true
    }
  },
  "devDependencies": {
    "@eslint/js": "^10.0.1",
    "@fontsource-variable/geist": "^5.2.9",
    "@fontsource-variable/geist-mono": "^5.2.8",
    "@hookform/resolvers": "^5.4.0",
    "@mdx-js/react": "^3.1.1",
    "@mdx-js/rollup": "^3.1.1",
    "@radix-ui/react-alert-dialog": "^1.1.16",
    "@radix-ui/react-checkbox": "^1.3.4",
    "@radix-ui/react-dialog": "^1.1.16",
    "@radix-ui/react-popover": "^1.1.16",
    "@radix-ui/react-radio-group": "^1.4.0",
    "@radix-ui/react-select": "^2.3.0",
    "@radix-ui/react-switch": "^1.3.3",
    "@radix-ui/react-tabs": "^1.1.14",
    "@testing-library/jest-dom": "^6.9.1",
    "@testing-library/react": "^16.3.2",
    "@testing-library/user-event": "^14.6.1",
    "@types/express": "^5.0.6",
    "@types/react": "^19.1.8",
    "@types/react-dom": "^19.1.6",
    "@vitejs/plugin-react": "^5.0.0",
    "@vitest/coverage-v8": "^4.1.10",
    "eslint": "^10.5.0",
    "eslint-plugin-react-hooks": "^7.1.1",
    "jsdom": "^29.1.1",
    "lucide-react": "^1.18.0",
    "react": "^19.2.7",
    "react-dom": "^19.2.7",
    "react-hook-form": "^7.58.1",
    "react-router-dom": "^6.30.4",
    "rehype-pretty-code": "^0.14.3",
    "remark-gfm": "^4.0.1",
    "shiki": "^4.2.0",
    "stylelint": "^17.13.0",
    "stylelint-config-standard": "^40.0.0",
    "typescript": "^5.8.3",
    "typescript-eslint": "^8.61.1",
    "vite": "^6.3.5",
    "vite-plugin-dts": "^4.5.4",
    "vite-plugin-lib-inject-css": "^2.2.2",
    "vite-react-ssg": "^0.9.1-beta.1",
    "vitest": "^4.1.8",
    "xlsx": "^0.18.5",
    "zod": "^4.4.3"
  },
  "keywords": [
    "react",
    "components",
    "gsl",
    "clet",
    "app-switcher",
    "app-launcher",
    "google-apps",
    "product-switcher"
  ],
  "license": "MIT",
  "publishConfig": {
    "access": "public"
  },
  "dependencies": {
    "@dnd-kit/core": "^6.3.1",
    "@dnd-kit/sortable": "^10.0.0",
    "@dnd-kit/utilities": "^3.2.2",
    "@fontsource/lato": "^5.2.7",
    "@fontsource/roboto-serif": "^5.2.9",
    "@modelcontextprotocol/sdk": "^1.29.0",
    "@tanstack/react-virtual": "^3.14.3",
    "cmdk": "^1.1.1",
    "country-flag-icons": "^1.6.20",
    "libphonenumber-js": "^1.13.7",
    "lottie-react": "^2.4.1",
    "sonner": "^2.0.7",
    "zod": ">=3.0.0"
  }
}
