{
  "name": "@nswds/ui",
  "version": "8.0.0",
  "description": "UI components for NSW Government digital products, providing reusable design elements and patterns for consistent user interfaces.",
  "license": "MIT",
  "homepage": "https://github.com/digitalnsw/nswds-ui#readme",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/digitalnsw/nswds-ui.git",
    "directory": "packages/ui"
  },
  "bugs": {
    "url": "https://github.com/digitalnsw/nswds-ui/issues"
  },
  "keywords": [
    "nsw",
    "nswds",
    "design-system",
    "react",
    "components",
    "base-ui",
    "tailwindcss",
    "shadcn"
  ],
  "type": "module",
  "private": false,
  "engines": {
    "node": "^22.14.0 || >=24.10.0"
  },
  "publishConfig": {
    "access": "public"
  },
  "files": [
    "dist",
    "postcss.config.mjs",
    "src/styles/globals.css.d.ts"
  ],
  "sideEffects": [
    "**/*.css"
  ],
  "scripts": {
    "build": "npm run build:js && npm run build:css && npm run verify:dist && npm run check:cascade",
    "build:css": "tailwindcss -i ./src/styles/package.css -o ./dist/styles.css --minify",
    "build:js": "tsup",
    "verify:dist": "node scripts/verify-dist.mjs",
    "test": "node --test \"tests/**/*.test.mjs\"",
    "check:cascade": "node scripts/check-cascade-safety.mjs",
    "check:drift": "node scripts/check-component-drift.mjs",
    "check:radius": "node scripts/check-radius.mjs",
    "check:portal-boundary": "node scripts/check-portal-boundary.mjs",
    "check:registry-resolves": "node scripts/check-registry-resolves.mjs",
    "check:icons": "node scripts/generate-icons.mjs check",
    "check:package": "publint --strict && attw --pack . --profile esm-only --exclude-entrypoints ./postcss.config",
    "lint": "eslint --max-warnings 0",
    "registry:build": "npm run registry:validate && shadcn build registry.json --cwd . --output ../../apps/registry/public/r && node scripts/rewrite-registry-aliases.mjs ../../apps/registry/public/r && npm run check:registry-resolves",
    "registry:validate": "shadcn registry validate registry.json --cwd .",
    "typecheck": "tsc --noEmit"
  },
  "dependencies": {
    "@base-ui/react": "^1.5.0",
    "class-variance-authority": "^0.7.1",
    "clsx": "^2.1.1",
    "embla-carousel-react": "^8.6.0",
    "input-otp": "^1.5.0",
    "next-themes": "^0.4.6",
    "react-resizable-panels": "^4.11.2",
    "sonner": "^2.0.7",
    "tailwind-merge": "^3.6.0",
    "vaul": "^1.1.2"
  },
  "peerDependencies": {
    "react": "^19.0.0",
    "react-dom": "^19.0.0"
  },
  "devDependencies": {
    "@arethetypeswrong/cli": "^0.18.3",
    "@nswds/tokens": "^5.0.0",
    "@storybook/addon-docs": "10.6.0",
    "@storybook/react-vite": "10.6.0",
    "@tailwindcss/cli": "^4.3.0",
    "@tailwindcss/postcss": "^4.1.18",
    "@turbo/gen": "^2.8.1",
    "@types/node": "^25.1.0",
    "@types/react": "^19.2.10",
    "@types/react-dom": "^19.2.3",
    "@workspace/eslint-config": "*",
    "@workspace/typescript-config": "*",
    "eslint": "^9.39.2",
    "publint": "^0.3.21",
    "react": "^19.2.4",
    "react-dom": "^19.2.4",
    "shadcn": "^4.8.0",
    "storybook": "10.6.0",
    "tailwindcss": "^4.1.18",
    "tsup": "^8.5.1",
    "tw-animate-css": "^1.4.0",
    "typescript": "^5.9.3"
  },
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.js"
    },
    "./styles.css": {
      "types": "./src/styles/globals.css.d.ts",
      "default": "./dist/styles.css"
    },
    "./postcss.config": "./postcss.config.mjs",
    "./components/*": {
      "types": "./dist/components/*.d.ts",
      "import": "./dist/components/*.js"
    },
    "./icons": {
      "types": "./dist/icons/index.d.ts",
      "import": "./dist/icons/index.js"
    },
    "./icons/brands": {
      "types": "./dist/icons/brands/index.d.ts",
      "import": "./dist/icons/brands/index.js"
    },
    "./icons/*": {
      "types": "./dist/icons/*.d.ts",
      "import": "./dist/icons/*.js"
    },
    "./package.json": "./package.json"
  }
}
