{
  "name": "web-component-base",
  "version": "6.1.1",
  "description": "A zero-dependency & tiny JS base class for creating reactive custom elements easily",
  "type": "module",
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.js"
    },
    "./cem-plugin": {
      "types": "./dist/cem-plugin.d.ts",
      "import": "./dist/cem-plugin.js"
    },
    "./*": {
      "types": "./dist/*.d.ts",
      "import": "./dist/*.js"
    },
    "./utils": {
      "types": "./dist/utils/index.d.ts",
      "import": "./dist/utils/index.js"
    },
    "./utils/*": {
      "types": "./dist/utils/*.d.ts",
      "import": "./dist/utils/*.js"
    },
    "./package.json": "./package.json"
  },
  "main": "./dist/index.js",
  "types": "./dist/index.d.ts",
  "files": [
    "dist"
  ],
  "scripts": {
    "preinstall": "npx only-allow pnpm",
    "start": "pnpm -F demo dev",
    "dev": "pnpm -F demo dev",
    "test": "vitest --run",
    "test:watch": "vitest",
    "test:e2e": "E2E_BROWSERS=chromium vitest --run --config vitest.e2e.config.mjs",
    "test:e2e:chromium": "E2E_BROWSERS=chromium vitest --run --config vitest.e2e.config.mjs",
    "test:e2e:firefox": "E2E_BROWSERS=firefox vitest --run --config vitest.e2e.config.mjs",
    "test:e2e:webkit": "E2E_BROWSERS=webkit vitest --run --config vitest.e2e.config.mjs",
    "test:e2e:all": "vitest --run --config vitest.e2e.config.mjs",
    "test:types": "pnpm run build && tsc -p test/types/tsconfig.json && tsc -p demo/examples/typed-props/tsconfig.json",
    "test:all": "pnpm test && pnpm test:types && pnpm test:e2e:all",
    "demo": "pnpm -F demo dev",
    "demo:build": "pnpm -F demo build",
    "docs": "pnpm -F docs start",
    "storybook": "pnpm run build && pnpm -F storybook dev",
    "storybook:build": "pnpm run build && pnpm -F storybook build",
    "build": "pnpm run clean && tsc && pnpm run copy:source",
    "size-limit": "pnpm run build && size-limit",
    "clean": "rm -rf dist",
    "copy:source": "esbuild --minify --bundle ./src/*.js ./src/utils/* --outdir=\"./dist\" --format=\"esm\"",
    "release": "bumpp && node ./scripts/release.js",
    "format": "prettier . --write",
    "lint": "eslint . --config eslint.config.mjs",
    "prepare": "husky"
  },
  "lint-staged": {
    "*.{js,mjs,cjs}": [
      "eslint --config eslint.config.mjs --fix",
      "prettier --write"
    ],
    "*.{json,css,html,md,yml,yaml}": "prettier --write"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/ayo-run/wcb.git"
  },
  "homepage": "https://WebComponent.io",
  "keywords": [
    "web components",
    "web component",
    "custom elements",
    "custom element"
  ],
  "author": "Ayo Ayco",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/ayo-run/wcb/issues"
  },
  "devDependencies": {
    "@custom-elements-manifest/analyzer": "^0.11.0",
    "@eslint/js": "^9.39.2",
    "@size-limit/preset-small-lib": "^12.0.0",
    "@vitest/browser": "4.0.18",
    "@vitest/browser-playwright": "4.0.18",
    "@vitest/coverage-v8": "4.0.18",
    "bumpp": "^11.1.0",
    "esbuild": "^0.27.2",
    "eslint": "^9.39.2",
    "eslint-plugin-jsdoc": "^62.4.1",
    "globals": "^17.1.0",
    "happy-dom": "^20.3.7",
    "husky": "^9.1.7",
    "lint-staged": "^17.0.8",
    "netlify-cli": "^23.13.5",
    "playwright": "^1.61.1",
    "prettier": "^3.8.1",
    "release-it": "^19.2.4",
    "simple-git": "^3.36.0",
    "simple-server": "^1.1.1",
    "size-limit": "^12.0.0",
    "typescript": "^5.9.3",
    "vitest": "^4.0.18"
  },
  "size-limit": [
    {
      "path": "./dist/WebComponent.js",
      "limit": "2.05 KB"
    },
    {
      "path": "./dist/html.js",
      "limit": "0.6 KB"
    },
    {
      "path": "./dist/utils/create-element.js",
      "limit": "0.5 KB"
    },
    {
      "path": "./dist/utils/patch.js",
      "limit": "0.8 KB"
    },
    {
      "path": "./dist/utils/deserialize.js",
      "limit": "0.5 KB"
    },
    {
      "path": "./dist/utils/serialize.js",
      "limit": "0.5 KB"
    },
    {
      "path": "./dist/utils/get-camel-case.js",
      "limit": "0.5 KB"
    },
    {
      "path": "./dist/utils/get-kebab-case.js",
      "limit": "0.5 KB"
    }
  ]
}
