{
    "name": "elf-boilerplate",
    "version": "0.0.0",
    "dependencies": {
        "@lit/localize": "^0.12.2",
        "@neodrag/vanilla": "^2.0.5",
        "lit": "^3.2.0"
    },
    "devDependencies": {
        "@types/eslint__js": "^8.42.3",
        "@types/node": "^22.5.5",
        "@typescript-eslint/eslint-plugin": "^8.6.0",
        "@typescript-eslint/parser": "^8.6.0",
        "chokidar": "^4.0.1",
        "esbuild": "^0.24.0",
        "eslint": "^9.11.0",
        "eslint-plugin-lit": "^1.15.0",
        "eslint-plugin-wc": "^2.1.1",
        "glob": "^10.4.5",
        "http-server": "^14.1.1",
        "knip": "^5.30.4",
        "lit-analyzer": "^2.0.3",
        "lockfile-lint": "^4.14.0",
        "prettier": "^3.3.3",
        "rimraf": "^5.0.10",
        "syncpack": "^13.0.0",
        "typescript": "^5.6.2",
        "typescript-eslint": "^8.6.0",
        "wireit": "^0.14.9"
    },
    "engines": {
        "node": ">=20"
    },
    "license": "MIT",
    "optionalDependencies": {
        "@esbuild/darwin-arm64": "^0.23.0",
        "@esbuild/linux-amd64": "^0.18.11",
        "@esbuild/linux-arm64": "^0.23.0"
    },
    "scripts": {
        "build": "wireit",
        "clean": "wireit",
        "demo": "wireit",
        "fix": "wireit",
        "format": "wireit",
        "lint": "wireit",
        "realclean": "wireit",
        "watch": "wireit"
    },
    "type": "module",
    "wireit": {
        "build": {
            "command": "${NODE_RUNNER} build.mjs",
            "files": [
                "./src/**/*.{css,ts,js}"
            ],
            "output": [
                "dist/**"
            ],
            "env": {
                "NODE_RUNNER": {
                    "external": true,
                    "default": "node"
                }
            }
        },
        "clean": {
            "command": "rimraf ./dist"
        },
        "demo": {
            "command": "${NODE_RUNNER} ./node_modules/.bin/http-server . --port ${HTTP_DEMO_PORT}",
            "server": true,
            "env": {
                "NODE_RUNNER": {
                    "external": true,
                    "default": "node"
                },
                "HTTP_DEMO_PORT": {
                    "external": true,
                    "default": "8000"
                }
            }
        },
        "fix": {
            "command": "prettier --write .",
            "dependencies": [
                "fix:eslint",
                "fix:package"
            ]
        },
        "format": {
            "command": "prettier --write ."
        },
        "fix:eslint": {
            "command": "${NODE_RUNNER ./scripts/eslint.mjs --fix",
            "env": {
                "NODE_RUNNER": {
                    "external": true,
                    "default": "node"
                }
            }
        },
        "lint:components": {
            "command": "lit-analyzer src"
        },
        "lint:eslint": {
            "command": "${NODE_RUNNER} ./scripts/eslint.mjs --precommit",
            "env": {
                "NODE_RUNNER": {
                    "external": true,
                    "default": "node"
                }
            }
        },
        "lint:lockfile": {
            "_comment": "Ensure every entry has a resolved hash",
            "shell": true,
            "command": "[ -z \"$(jq -r '.packages | to_entries[] | select((.key | startswith(\"node_modules\")) and (.value | has(\"resolved\") | not)) | .key' < package-lock.json)\" ]",
            "dependencies": [
                "lint:lockfile:base"
            ]
        },
        "lint:lockfile:base": {
            "command": "lockfile-lint --path ./package-lock.json --allowed-hosts npm --validate-https --validate-integrity"
        },
        "lint:spelling": {
            "command": "${NODE_RUNNER} scripts/check-spelling.mjs",
            "env": {
                "NODE_RUNNER": {
                    "external": true,
                    "default": "node"
                }
            }
        },
        "prettier": {
            "command": "prettier ."
        },
        "lint": {
            "dependencies": [
                "lint:types",
                "lint:components",
                "lint:lit",
                "lint:lockfile",
                "lint:eslint",
                "prettier"
            ]
        },
        "lint:imports": {
            "command": "knip --config scripts/knip.config.ts"
        },
        "lint:lit": {
            "command": "lit-analyzer src"
        },
        "lint:types": {
            "command": "tsc --noEmit -p ."
        },
        "watch": {
            "command": "${NODE_RUNNER} build.mjs --watch",
            "server": true,
            "env": {
                "NODE_RUNNER": {
                    "external": true,
                    "default": "node"
                }
            }
        }
    }
}
