{
  "name": "web-component-base",
  "version": "4.1.2",
  "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"
    },
    "./*": {
      "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",
  "scripts": {
    "preinstall": "npx only-allow pnpm",
    "start": "npx simple-server .",
    "dev": "npm start",
    "test": "vitest --run",
    "test:watch": "vitest",
    "demo": "npx simple-server .",
    "docs": "pnpm -F docs start",
    "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\"",
    "pub": "pnpm run clean && pnpm run build && npm publish",
    "pub:patch": "npm version patch && pnpm run pub",
    "pub:minor": "npm version minor && pnpm run pub",
    "pub:major": "npm version major && pnpm run pub",
    "format": "prettier . --write",
    "lint": "eslint . --config eslint.config.mjs",
    "prepare": "husky"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/ayo-run/web-component-base.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/web-component-base/issues"
  },
  "devDependencies": {
    "@eslint/js": "^9.39.2",
    "@size-limit/preset-small-lib": "^12.0.0",
    "@vitest/coverage-v8": "4.0.18",
    "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",
    "netlify-cli": "^23.13.5",
    "prettier": "^3.8.1",
    "release-it": "^19.2.4",
    "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": "1.2 KB"
    },
    {
      "path": "./dist/html.js",
      "limit": "0.6 KB"
    },
    {
      "path": "./dist/utils/create-element.js",
      "limit": "0.5 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"
    }
  ]
}
