{"_id":"@bytestruct/dnd5e-eslint","name":"@bytestruct/dnd5e-eslint","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.3":{"name":"@bytestruct/dnd5e-eslint","version":"1.0.3","license":"MIT","repository":{"url":"git+https://github.com/Fyorl/dnd5e-eslint.git"},"exports":{".":"./index.mjs"},"scripts":{"test":"node --test \"test/**/*.test.mjs\""},"engines":{"node":">=20.0.0"},"peerDependencies":{"@stylistic/eslint-plugin":">=5","eslint":">=10","eslint-plugin-jsdoc":">=62","eslint-plugin-perfectionist":">=5","globals":">=17"},"devDependencies":{"@stylistic/eslint-plugin":"^5.10.0","eslint":"^10.1.0","eslint-plugin-jsdoc":"^62.8.0","eslint-plugin-perfectionist":"^5.7.0","globals":"^17.4.0"},"publishConfig":{"access":"public"},"gitHead":"8c53fbf0ff936d9bece9f27f66bfc21b7d0c4f34","_id":"@bytestruct/dnd5e-eslint@1.0.3","description":"ESLint rules for enforcing the dnd5e project code style conventions.","bugs":{"url":"https://github.com/Fyorl/dnd5e-eslint/issues"},"homepage":"https://github.com/Fyorl/dnd5e-eslint#readme","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-DfDER+CwFSm3A6zk62gf4OT+Q2zlxpNVitAr6a5CcL6dtQPkXKe4Xp0fDmKbpHdEavmSM/Raa/Iq896NkabwRA==","shasum":"5881ba62aa0108156ad6ae1ec4c1dae664700af9","tarball":"https://registry.npmjs.org/@bytestruct/dnd5e-eslint/-/dnd5e-eslint-1.0.3.tgz","fileCount":13,"unpackedSize":33164,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFm0lzIdm+w8JrejTrLfVLmq49bZvEJfOAIT/I4VlBvNAiA3VIokaI3P/OJyTAx+pyOu4c91Uj3bTZaEdO6FWSexpg=="}]},"_npmUser":{"name":"fyorl","email":"kim.mantas@gmail.com"},"directories":{},"maintainers":[{"name":"fyorl","email":"kim.mantas@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dnd5e-eslint_1.0.3_1782919537951_0.6112142609563933"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-01T15:25:37.797Z","1.0.3":"2026-07-01T15:25:38.117Z","modified":"2026-07-01T15:25:38.345Z"},"maintainers":[{"name":"fyorl","email":"kim.mantas@gmail.com"}],"description":"ESLint rules for enforcing the dnd5e project code style conventions.","homepage":"https://github.com/Fyorl/dnd5e-eslint#readme","repository":{"url":"git+https://github.com/Fyorl/dnd5e-eslint.git"},"bugs":{"url":"https://github.com/Fyorl/dnd5e-eslint/issues"},"license":"MIT","readme":"# @bytestruct/dnd5e-eslint\n\nESLint rules for enforcing the dnd5e project code style conventions.\n\n## Installation\n\n```sh\nnpm install --save-dev @bytestruct/dnd5e-eslint\n```\n\nIn `eslint.config.mjs`:\n\n```js\nimport dnd5e from \"@bytestruct/dnd5e-eslint\";\n\nexport default [\n  ...dnd5e.configs.recommended\n];\n```\n\n## Rules\n\n### `dnd5e/jsdoc-no-spaces-around-optional-param-equals`\n\nDisallows spaces around `=` in JSDoc optional parameter defaults.\n\n```js\n// Incorrect\n/** @param {string} [foo = \"bar\"] */\n\n// Correct\n/** @param {string} [foo=\"bar\"] */\n```\n\n---\n\n### `dnd5e/no-spaces-around-default-param-equals`\n\nDisallows spaces around `=` in function default parameters.\n\n```js\n// Incorrect\nfunction foo(options = {}) {}\n\n// Correct\nfunction foo(options={}) {}\n```\n\n---\n\n### `dnd5e/require-arrow-braces`\n\nRequires block bodies for multi-line arrow functions.\n\n```js\n// Incorrect\nconst f = x =>\n  x + 1;\n\n// Correct\nconst f = x => {\n  return x + 1;\n};\n```\n\n---\n\n### `dnd5e/require-method-separator`\n\nRequires a separator comment before each class method and top-level function after the first.\n\n```js\n// Incorrect\nclass Foo {\n  a() {}\n  b() {}\n}\n\n// Correct\nclass Foo {\n  a() {}\n\n  /* -------------------------------------------- */\n\n  b() {}\n}\n```\n\n---\n\n### `dnd5e/sort-object-keys`\n\nRequires object properties to be ordered shorthand-first, then alphabetically within each group.\nSkips objects containing spread elements or computed keys.\n\n```js\n// Incorrect\nconst x = { foo: 1, b, bar: 2, a };\n\n// Correct\nconst x = { a, b, bar: 2, foo: 1 };\n```\n\n---\n\n### `dnd5e/space-in-control-flow-parens`\n\nRequires spaces inside the parentheses of control-flow statements\n(`if`, `for`, `while`, `switch`, `do...while`, `catch`).\n\n```js\n// Incorrect\nif (x) {}\n\n// Correct\nif ( x ) {}\n```\n","readmeFilename":"README.md","_rev":"1-477fc52572753b18de2889e5e409c401"}