mirror of
https://github.com/photoprism/photoprism.git
synced 2025-12-12 00:34:13 +01:00
This new viewer is based on PhotoSwipe v5 instead of v4, which provides the customization options needed for a hybrid viewer. However, some of the features available in the old viewer are still missing. See the "Todo: ..." code comments for details. Signed-off-by: Michael Mayer <michael@photoprism.app>
88 lines
2.3 KiB
JavaScript
88 lines
2.3 KiB
JavaScript
module.exports = {
|
|
env: {
|
|
browser: true,
|
|
commonjs: true,
|
|
es2021: true,
|
|
node: true,
|
|
mocha: true,
|
|
},
|
|
extends: ["eslint:recommended", "plugin:vue/recommended", "plugin:prettier/recommended", "plugin:vue/base", "plugin:vuetify/base"],
|
|
|
|
settings: {
|
|
"prettier/prettier": {
|
|
// Settings for how to process Vue SFC Blocks
|
|
SFCBlocks: {
|
|
template: false,
|
|
script: false,
|
|
style: false,
|
|
},
|
|
|
|
// Use prettierrc for prettier options or not (default: `true`)
|
|
usePrettierrc: true,
|
|
|
|
// Set the options for `prettier.getFileInfo`.
|
|
// @see https://prettier.io/docs/en/api.html#prettiergetfileinfofilepath-options
|
|
fileInfoOptions: {
|
|
// Path to ignore file (default: `'.prettierignore'`)
|
|
// Notice that the ignore file is only used for this plugin
|
|
ignorePath: ".testignore",
|
|
|
|
// Process the files in `node_modules` or not (default: `false`)
|
|
withNodeModules: false,
|
|
},
|
|
},
|
|
},
|
|
|
|
parserOptions: {
|
|
ecmaVersion: "latest",
|
|
sourceType: "module",
|
|
},
|
|
rules: {
|
|
// 'comma-dangle': ['error', 'always-multiline'],
|
|
indent: ["error", 2, { SwitchCase: 1 }],
|
|
"linebreak-style": ["error", "unix"],
|
|
quotes: [
|
|
"off",
|
|
"double",
|
|
{
|
|
avoidEscape: true,
|
|
allowTemplateLiterals: true,
|
|
},
|
|
],
|
|
semi: ["error", "always"],
|
|
"no-unused-vars": ["warn"],
|
|
"no-console": 0,
|
|
"no-case-declarations": 0,
|
|
"no-prototype-builtins": 0,
|
|
"vue/no-v-text-v-html-on-component": 0,
|
|
"vue/valid-model-definition": 0,
|
|
"vue/valid-attribute-name": 0,
|
|
"vue/singleline-html-element-content-newline": [
|
|
"off",
|
|
{
|
|
ignoreWhenNoAttributes: true,
|
|
ignoreWhenEmpty: true,
|
|
ignores: ["pre", "textarea", "span", "translate", "a", "v-icon", "v-text-field", "v-input", "v-select", "v-switch", "v-checkbox", "v-img"],
|
|
externalIgnores: [],
|
|
},
|
|
],
|
|
"vue/first-attribute-linebreak": [
|
|
"error",
|
|
{
|
|
singleline: "ignore",
|
|
multiline: "ignore",
|
|
},
|
|
],
|
|
"prettier/prettier": [
|
|
"warn",
|
|
{
|
|
printWidth: 300,
|
|
singleQuote: false,
|
|
semi: true,
|
|
trailingComma: "es5",
|
|
htmlWhitespaceSensitivity: "strict",
|
|
},
|
|
],
|
|
},
|
|
};
|