169 lines
4.8 KiB
JSON
169 lines
4.8 KiB
JSON
{
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|