mirror of
https://github.com/philomena-dev/philomena.git
synced 2025-03-28 22:37:45 +01:00
Remove the deprecated eslint and stylelint prettier plugins. Move prettier to the top level
This commit is contained in:
parent
25973857c5
commit
f763d5dc62
10 changed files with 79 additions and 166 deletions
|
@ -1,7 +1,5 @@
|
|||
---
|
||||
extends: stylelint-config-recommended
|
||||
plugins:
|
||||
- stylelint-prettier
|
||||
rules:
|
||||
block-no-empty: true
|
||||
at-rule-no-unknown:
|
||||
|
@ -75,4 +73,3 @@ rules:
|
|||
declaration-block-no-redundant-longhand-properties: true
|
||||
shorthand-property-no-redundant-values: true
|
||||
comment-whitespace-inside: always
|
||||
prettier/prettier: true
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
import tsEslint from 'typescript-eslint';
|
||||
import vitestPlugin from 'eslint-plugin-vitest';
|
||||
import eslintPluginPrettierRecommended from 'eslint-plugin-prettier/recommended';
|
||||
import globals from 'globals';
|
||||
|
||||
export default tsEslint.config(
|
||||
...tsEslint.configs.recommended,
|
||||
eslintPluginPrettierRecommended,
|
||||
{
|
||||
name: 'PhilomenaConfig',
|
||||
files: ['**/*.js', '**/*.ts'],
|
||||
|
|
|
@ -9,24 +9,22 @@ import { fetchHtml, handleError } from './utils/requests';
|
|||
import { showBlock } from './utils/image';
|
||||
import { addTag } from './tagsinput';
|
||||
|
||||
/* eslint-disable prettier/prettier */
|
||||
|
||||
// Event types and any qualifying conditions - return true to not run action
|
||||
const types = {
|
||||
click(event) { return event.button !== 0; /* Left-click only */ },
|
||||
change() { /* No qualifier */ },
|
||||
click(event) { return event.button !== 0; /* Left-click only */ },
|
||||
change() { /* No qualifier */ },
|
||||
fetchcomplete() { /* No qualifier */ },
|
||||
};
|
||||
|
||||
const actions = {
|
||||
hide(data) { selectorCb(data.base, data.value, el => el.classList.add('hidden')); },
|
||||
show(data) { selectorCb(data.base, data.value, el => el.classList.remove('hidden')); },
|
||||
toggle(data) { selectorCb(data.base, data.value, el => el.classList.toggle('hidden')); },
|
||||
submit(data) { selectorCb(data.base, data.value, el => el.submit()); },
|
||||
disable(data) { selectorCb(data.base, data.value, el => el.disabled = true); },
|
||||
focus(data) { document.querySelector(data.value).focus(); },
|
||||
unfilter(data) { showBlock(data.el.closest('.image-show-container')); },
|
||||
tabHide(data) { selectorCbChildren(data.base, data.value, el => el.classList.add('hidden')); },
|
||||
hide(data) { selectorCb(data.base, data.value, el => el.classList.add('hidden')); },
|
||||
show(data) { selectorCb(data.base, data.value, el => el.classList.remove('hidden')); },
|
||||
toggle(data) { selectorCb(data.base, data.value, el => el.classList.toggle('hidden')); },
|
||||
submit(data) { selectorCb(data.base, data.value, el => el.submit()); },
|
||||
disable(data) { selectorCb(data.base, data.value, el => el.disabled = true); },
|
||||
focus(data) { document.querySelector(data.value).focus(); },
|
||||
unfilter(data) { showBlock(data.el.closest('.image-show-container')); },
|
||||
tabHide(data) { selectorCbChildren(data.base, data.value, el => el.classList.add('hidden')); },
|
||||
preventdefault() { /* The existence of this entry is enough */ },
|
||||
|
||||
copy(data) {
|
||||
|
@ -61,8 +59,8 @@ const actions = {
|
|||
|
||||
tab(data) {
|
||||
const block = data.el.parentNode.parentNode,
|
||||
newTab = $(`.block__tab[data-tab="${data.value}"]`),
|
||||
loadTab = data.el.dataset.loadTab;
|
||||
newTab = $(`.block__tab[data-tab="${data.value}"]`),
|
||||
loadTab = data.el.dataset.loadTab;
|
||||
|
||||
// Switch tab
|
||||
const selectedTab = block.querySelector('.selected');
|
||||
|
@ -87,8 +85,6 @@ const actions = {
|
|||
},
|
||||
};
|
||||
|
||||
/* eslint-enable prettier/prettier */
|
||||
|
||||
// Use this function to apply a callback to elements matching the selectors
|
||||
function selectorCb(base = document, selector, cb) {
|
||||
[].forEach.call(base.querySelectorAll(selector), cb);
|
||||
|
|
|
@ -47,8 +47,7 @@ function isOK(event: KeyboardEvent): boolean {
|
|||
);
|
||||
}
|
||||
|
||||
/* eslint-disable prettier/prettier */
|
||||
|
||||
// prettier-ignore
|
||||
const keyCodes: ShortcutKeyMap = {
|
||||
74() { click('.js-prev'); }, // J - go to previous image
|
||||
73() { click('.js-up'); }, // I - go to index page
|
||||
|
@ -68,8 +67,6 @@ const keyCodes: ShortcutKeyMap = {
|
|||
},
|
||||
};
|
||||
|
||||
/* eslint-enable prettier/prettier */
|
||||
|
||||
export function listenForKeys() {
|
||||
document.addEventListener('keydown', (event: KeyboardEvent) => {
|
||||
if (isOK(event) && keyCodes[event.keyCode]) {
|
||||
|
|
|
@ -26,18 +26,40 @@ function createTagDropdown(tag: HTMLSpanElement) {
|
|||
const [unwatched, watched, spoilered, hidden] = $$<HTMLSpanElement>('.tag__state', tag);
|
||||
const tagId = parseInt(assertNotUndefined(tag.dataset.tagId), 10);
|
||||
|
||||
/* eslint-disable prettier/prettier */
|
||||
const actions: TagDropdownActionList = {
|
||||
unwatch() { hideEl(unwatch, watched); showEl(watch, unwatched); removeTag(tagId, watchedTagList); },
|
||||
watch() { hideEl(watch, unwatched); showEl(unwatch, watched); addTag(tagId, watchedTagList); },
|
||||
unwatch() {
|
||||
hideEl(unwatch, watched);
|
||||
showEl(watch, unwatched);
|
||||
removeTag(tagId, watchedTagList);
|
||||
},
|
||||
watch() {
|
||||
hideEl(watch, unwatched);
|
||||
showEl(unwatch, watched);
|
||||
addTag(tagId, watchedTagList);
|
||||
},
|
||||
|
||||
unspoiler() { hideEl(unspoiler, spoilered); showEl(spoiler); removeTag(tagId, spoileredTagList); },
|
||||
spoiler() { hideEl(spoiler); showEl(unspoiler, spoilered); addTag(tagId, spoileredTagList); },
|
||||
unspoiler() {
|
||||
hideEl(unspoiler, spoilered);
|
||||
showEl(spoiler);
|
||||
removeTag(tagId, spoileredTagList);
|
||||
},
|
||||
spoiler() {
|
||||
hideEl(spoiler);
|
||||
showEl(unspoiler, spoilered);
|
||||
addTag(tagId, spoileredTagList);
|
||||
},
|
||||
|
||||
unhide() { hideEl(unhide, hidden); showEl(hide); removeTag(tagId, hiddenTagList); },
|
||||
hide() { hideEl(hide); showEl(unhide, hidden); addTag(tagId, hiddenTagList); },
|
||||
unhide() {
|
||||
hideEl(unhide, hidden);
|
||||
showEl(hide);
|
||||
removeTag(tagId, hiddenTagList);
|
||||
},
|
||||
hide() {
|
||||
hideEl(hide);
|
||||
showEl(unhide, hidden);
|
||||
addTag(tagId, hiddenTagList);
|
||||
},
|
||||
};
|
||||
/* eslint-enable prettier/prettier */
|
||||
|
||||
const tagIsWatched = watchedTagList.includes(tagId);
|
||||
const tagIsSpoilered = spoileredTagList.includes(tagId);
|
||||
|
|
129
assets/package-lock.json
generated
129
assets/package-lock.json
generated
|
@ -22,13 +22,9 @@
|
|||
"@testing-library/jest-dom": "^6.6.3",
|
||||
"@vitest/coverage-v8": "^2.1.9",
|
||||
"eslint": "^9.16.0",
|
||||
"eslint-config-prettier": "^9.1.0",
|
||||
"eslint-plugin-prettier": "^5.2.1",
|
||||
"eslint-plugin-vitest": "^0.5.4",
|
||||
"prettier": "^3.4.2",
|
||||
"stylelint": "^16.11.0",
|
||||
"stylelint-config-standard": "^36.0.1",
|
||||
"stylelint-prettier": "^5.0.2",
|
||||
"typescript-eslint": "8.17.0",
|
||||
"vitest": "^2.1.9",
|
||||
"vitest-fetch-mock": "^0.4.2"
|
||||
|
@ -1120,18 +1116,6 @@
|
|||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/@pkgr/core": {
|
||||
"version": "0.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz",
|
||||
"integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": "^12.20.0 || ^14.18.0 || >=16.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/unts"
|
||||
}
|
||||
},
|
||||
"node_modules/@rollup/rollup-android-arm-eabi": {
|
||||
"version": "4.28.1",
|
||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.28.1.tgz",
|
||||
|
@ -2517,48 +2501,6 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-config-prettier": {
|
||||
"version": "9.1.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz",
|
||||
"integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"eslint-config-prettier": "bin/cli.js"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"eslint": ">=7.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-plugin-prettier": {
|
||||
"version": "5.2.1",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.1.tgz",
|
||||
"integrity": "sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"prettier-linter-helpers": "^1.0.0",
|
||||
"synckit": "^0.9.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^14.18.0 || >=16.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/eslint-plugin-prettier"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@types/eslint": ">=8.0.0",
|
||||
"eslint": ">=8.0.0",
|
||||
"eslint-config-prettier": "*",
|
||||
"prettier": ">=3.0.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"@types/eslint": {
|
||||
"optional": true
|
||||
},
|
||||
"eslint-config-prettier": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-plugin-vitest": {
|
||||
"version": "0.5.4",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.5.4.tgz",
|
||||
|
@ -2828,12 +2770,6 @@
|
|||
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/fast-diff": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz",
|
||||
"integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/fast-glob": {
|
||||
"version": "3.3.2",
|
||||
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
|
||||
|
@ -4121,33 +4057,6 @@
|
|||
"node": ">= 0.8.0"
|
||||
}
|
||||
},
|
||||
"node_modules/prettier": {
|
||||
"version": "3.4.2",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.2.tgz",
|
||||
"integrity": "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"prettier": "bin/prettier.cjs"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/prettier/prettier?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/prettier-linter-helpers": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz",
|
||||
"integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"fast-diff": "^1.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/pretty-format": {
|
||||
"version": "27.5.1",
|
||||
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz",
|
||||
|
@ -4628,22 +4537,6 @@
|
|||
"stylelint": "^16.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/stylelint-prettier": {
|
||||
"version": "5.0.2",
|
||||
"resolved": "https://registry.npmjs.org/stylelint-prettier/-/stylelint-prettier-5.0.2.tgz",
|
||||
"integrity": "sha512-qJ+BN+1T2ZcKz9WIrv0x+eFGHzSUnXfXd5gL///T6XoJvr3D8/ztzz2fhtmXef7Vb8P33zBXmLTTveByr0nwBw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"prettier-linter-helpers": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=18.12.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"prettier": ">=3.0.0",
|
||||
"stylelint": ">=16.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/stylelint/node_modules/balanced-match": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz",
|
||||
|
@ -4750,22 +4643,6 @@
|
|||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/synckit": {
|
||||
"version": "0.9.2",
|
||||
"resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz",
|
||||
"integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@pkgr/core": "^0.1.0",
|
||||
"tslib": "^2.6.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^14.18.0 || >=16.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://opencollective.com/unts"
|
||||
}
|
||||
},
|
||||
"node_modules/table": {
|
||||
"version": "6.9.0",
|
||||
"resolved": "https://registry.npmjs.org/table/-/table-6.9.0.tgz",
|
||||
|
@ -4992,12 +4869,6 @@
|
|||
"typescript": ">=4.2.0"
|
||||
}
|
||||
},
|
||||
"node_modules/tslib": {
|
||||
"version": "2.8.1",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
|
||||
"integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/type-check": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
|
||||
|
|
|
@ -27,13 +27,9 @@
|
|||
"@testing-library/jest-dom": "^6.6.3",
|
||||
"@vitest/coverage-v8": "^2.1.9",
|
||||
"eslint": "^9.16.0",
|
||||
"eslint-config-prettier": "^9.1.0",
|
||||
"eslint-plugin-prettier": "^5.2.1",
|
||||
"eslint-plugin-vitest": "^0.5.4",
|
||||
"prettier": "^3.4.2",
|
||||
"stylelint": "^16.11.0",
|
||||
"stylelint-config-standard": "^36.0.1",
|
||||
"stylelint-prettier": "^5.0.2",
|
||||
"typescript-eslint": "8.17.0",
|
||||
"vitest": "^2.1.9",
|
||||
"vitest-fetch-mock": "^0.4.2"
|
||||
|
|
27
package-lock.json
generated
Normal file
27
package-lock.json
generated
Normal file
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"name": "philomena",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"devDependencies": {
|
||||
"prettier": "^3.5.3"
|
||||
}
|
||||
},
|
||||
"node_modules/prettier": {
|
||||
"version": "3.5.3",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz",
|
||||
"integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"prettier": "bin/prettier.cjs"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/prettier/prettier?sponsor=1"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
9
package.json
Normal file
9
package.json
Normal file
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"scripts": {
|
||||
"fmt": "prettier --write .",
|
||||
"fmt-check": "prettier --check ."
|
||||
},
|
||||
"devDependencies": {
|
||||
"prettier": "^3.5.3"
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue