{
  "name": "@ds-mo/ui",
  "version": "14.17.0",
  "description": "CompoMo — composable web components styled with TokoMo design tokens",
  "keywords": [
    "web-components",
    "custom-elements",
    "react",
    "angular",
    "vue",
    "components",
    "ui",
    "design-system",
    "component-library",
    "typescript"
  ],
  "homepage": "https://zainadeel.github.io/compomo/",
  "bugs": "https://github.com/zainadeel/compomo/issues",
  "repository": {
    "type": "git",
    "url": "https://github.com/zainadeel/compomo.git"
  },
  "license": "MIT",
  "type": "module",
  "main": "./dist/components/index.js",
  "module": "./dist/components/index.js",
  "types": "./dist/types/components.d.ts",
  "bin": {
    "compomo-mcp": "./dist/mcp/cli.js"
  },
  "exports": {
    ".": {
      "types": "./dist/types/components.d.ts",
      "import": "./dist/components/index.js"
    },
    "./angular": {
      "types": "./dist/framework/angular.d.ts",
      "import": "./dist/framework/angular.js"
    },
    "./angular/*": {
      "types": "./dist/angular/*.d.ts",
      "import": "./dist/angular/*.js"
    },
    "./react": {
      "types": "./dist/react/components.d.ts",
      "import": "./dist/react/components.js"
    },
    "./vue": {
      "types": "./dist/vue/components.d.ts",
      "import": "./dist/vue/components.js"
    },
    "./dist/components": {
      "types": "./dist/types/components.d.ts",
      "import": "./dist/components/index.js"
    },
    "./components": {
      "types": "./dist/types/components.d.ts",
      "import": "./dist/components/index.js"
    },
    "./shell": {
      "types": "./dist/lib/shell/index.d.ts",
      "import": "./dist/lib/shell/index.js"
    },
    "./utils": {
      "types": "./dist/lib/utils/index.d.ts",
      "import": "./dist/lib/utils/index.js"
    },
    "./toast": {
      "types": "./dist/lib/toast/index.d.ts",
      "import": "./dist/lib/toast/index.js"
    },
    "./control-elevation.css": "./dist/styles/control-elevation.css",
    "./prose.css": "./dist/styles/prose.css",
    "./table.css": "./dist/styles/table.css",
    "./agent": "./dist/agent.json",
    "./agent/patterns": "./dist/agent-patterns.json",
    "./dist/components/*": "./dist/components/*",
    "./components/*": "./dist/components/*"
  },
  "files": [
    "dist",
    "NOTICE"
  ],
  "scripts": {
    "prebuild": "npm run clean && npm run clean:framework-proxies && node scripts/generate-icon-catalog.mjs",
    "pretypecheck": "node scripts/generate-icon-catalog.mjs",
    "pretest": "node scripts/generate-icon-catalog.mjs",
    "build": "stencil build && node scripts/verify-framework-proxies.mjs && node scripts/patch-index-types.mjs && node scripts/verify-icons-externalized.mjs && node scripts/build-lib-exports.mjs && node scripts/build-style-exports.mjs && node scripts/build-framework-exports.mjs && node scripts/build-registry.mjs && node scripts/build-agent-manifest.mjs && node scripts/build-mcp.mjs && node scripts/verify-framework-proxies.mjs && node scripts/write-build-stamp.mjs",
    "verify:pack": "node scripts/verify-framework-proxies.mjs && node scripts/verify-npm-pack.mjs && node scripts/verify-package-imports.mjs",
    "test": "node --import tsx/esm --test tests/*.test.ts",
    "test:e2e": "npm run build && playwright test",
    "test:e2e:firefox:local": "node scripts/test-firefox-local.mjs",
    "test:e2e:install": "playwright install chromium firefox webkit",
    "prebuild:docs": "npm run clean:framework-proxies",
    "build:docs": "stencil build --docs",
    "predev": "npm run clean:framework-proxies",
    "dev": "node scripts/package-dev.mjs",
    "dev:components": "node scripts/generate-icon-catalog.mjs && stencil build --watch --config stencil.storybook.config.ts",
    "storybook:ui": "node scripts/storybook-ui.mjs",
    "prestorybook:build": "node scripts/write-build-stamp.mjs --storybook",
    "storybook": "node scripts/storybook-dev.mjs",
    "storybook:build": "storybook build",
    "storybook:test:a11y": "vitest run --project=storybook-light --project=storybook-dark",
    "clean": "rm -rf dist",
    "clean:framework-proxies": "node scripts/clean-framework-proxies.mjs",
    "typecheck": "tsc --noEmit",
    "typecheck:storybook": "tsc -p tsconfig.storybook-tests.json",
    "lint": "eslint src/ .storybook/vitest.setup.ts vitest.config.ts tests/ci-browser-scope.test.ts && npm run lint:css",
    "lint:css": "stylelint \"src/wc/components/**/*.css\" \"src/wc/styles/**/*.css\" \"src/wc/utils/**/*.css\"",
    "registry:build": "node scripts/build-registry.mjs",
    "agent:validate": "node scripts/validate-agent-contract.mjs",
    "agent:validate:trilogy": "node scripts/validate-trilogy-manifests.mjs",
    "mcp": "node scripts/mcp-server.mjs"
  },
  "peerDependencies": {
    "@angular/core": ">=19 <23",
    "@angular/forms": ">=19 <23",
    "@ds-mo/icons": "^7.0.0",
    "@ds-mo/tokens": "^6.5.0",
    "react": "^18 || ^19",
    "react-dom": "^18 || ^19",
    "rxjs": "^7.8.0",
    "vue": "^3.4.38"
  },
  "peerDependenciesMeta": {
    "@angular/core": {
      "optional": true
    },
    "@angular/forms": {
      "optional": true
    },
    "react": {
      "optional": true
    },
    "react-dom": {
      "optional": true
    },
    "rxjs": {
      "optional": true
    },
    "vue": {
      "optional": true
    }
  },
  "devDependencies": {
    "@angular/compiler": "^22.0.7",
    "@angular/compiler-cli": "^22.0.7",
    "@angular/core": "^22.0.7",
    "@angular/forms": "^22.0.7",
    "@axe-core/playwright": "^4.12.1",
    "@ds-mo/icons": "^7.0.0",
    "@ds-mo/tokens": "^6.5.0",
    "@eslint/js": "^10.0.1",
    "@fontsource-variable/inter": "^5.3.0",
    "@fontsource/fira-code": "^5.3.0",
    "@modelcontextprotocol/client": "^2.0.0",
    "@modelcontextprotocol/server": "^2.0.0",
    "@playwright/test": "^1.55.0",
    "@stencil/angular-output-target": "^1.4.0",
    "@stencil/core": "^4.43.5",
    "@stencil/react-output-target": "^1.6.0",
    "@stencil/vue-output-target": "^0.14.1",
    "@storybook/addon-a11y": "^10.5.1",
    "@storybook/addon-docs": "^10.5.0",
    "@storybook/addon-vitest": "^10.5.2",
    "@storybook/web-components": "^10.5.0",
    "@storybook/web-components-vite": "^10.5.0",
    "@types/d3-array": "^3.2.2",
    "@types/d3-scale": "^4.0.9",
    "@types/d3-shape": "^3.1.8",
    "@types/node": "^26.1.1",
    "@types/react": "^19.2.17",
    "@types/react-dom": "^19.2.3",
    "@vitest/browser-playwright": "^4.1.10",
    "ajv": "^8.20.0",
    "axe-core": "^4.12.1",
    "concurrently": "^10.0.3",
    "esbuild": "^0.28.1",
    "eslint": "^10.7.0",
    "eslint-plugin-react-hooks": "^7.1.1",
    "globals": "^17.7.0",
    "lit": "^3.3.3",
    "react": "^19.2.7",
    "react-dom": "^19.2.7",
    "storybook": "^10.5.0",
    "stylelint": "^17.14.0",
    "stylelint-config-standard": "^40.0.0",
    "tsx": "^4.23.0",
    "typescript": "~6.0.3",
    "typescript-eslint": "^8.63.0",
    "vite": "^8.1.4",
    "vitest": "^4.1.10",
    "vue": "^3.5.41",
    "vue-router": "^5.2.0",
    "zod": "^4.4.3"
  },
  "engines": {
    "node": "^20.19.0 || >=22.12.0"
  },
  "sideEffects": [
    "**/*.css",
    "dist/components/**/*.js"
  ],
  "dependencies": {
    "@lit/react": "^1.0.8",
    "@paper-design/shaders": "0.0.80",
    "d3-array": "^3.2.4",
    "d3-scale": "^4.0.2",
    "d3-shape": "^3.2.0",
    "mdast-util-from-markdown": "^2.0.3",
    "mdast-util-gfm": "^3.1.0",
    "micromark-extension-gfm": "^3.0.0"
  },
  "packageManager": "npm@11.12.1"
}
