Files
DuckQ1u 93d1b7c3d3
Copilot Setup Steps / copilot-setup-steps (push) Has been cancelled
first commit
2026-04-22 19:51:20 +07:00

71 lines
2.2 KiB
JavaScript

/* eslint-env node */
module.exports = {
root: true,
parser: '@babel/eslint-parser',
parserOptions: {
sourceType: 'module',
allowImportExportEverywhere: false,
ecmaFeatures: {
globalReturn: false,
legacyDecorators: true,
jsx: true
},
requireConfigFile: false,
babelOptions: {
plugins: [
'@babel/plugin-proposal-class-properties',
['@babel/plugin-proposal-decorators', {legacy: true}],
'babel-plugin-transform-react-jsx'
]
}
},
plugins: [
'ghost',
'react'
],
extends: [
'plugin:ghost/ember'
],
rules: {
'ghost/filenames/match-exported-class': ['off'],
// Enforce kebab-case (lowercase with hyphens) for all filenames
'ghost/filenames/match-regex': ['error', '^[a-z0-9.-]+$', false],
'no-shadow': ['error'],
// TODO: migrate away from accessing controller in routes
'ghost/ember/no-controller-access-in-routes': 'off',
// TODO: enable once we're fully on octane 🏎
'ghost/ember/no-assignment-of-untracked-properties-used-in-tracking-contexts': 'off',
'ghost/ember/no-actions-hash': 'off',
'ghost/ember/no-classic-classes': 'off',
'ghost/ember/no-classic-components': 'off',
'ghost/ember/require-tagless-components': 'off',
'ghost/ember/no-component-lifecycle-hooks': 'off',
// disable linting of `this.get` until there's a reliable autofix
'ghost/ember/use-ember-get-and-set': 'off',
// disable linting of mixins until we migrate away
'ghost/ember/no-mixins': 'off',
'ghost/ember/no-new-mixins': 'off',
'react/jsx-uses-react': 'error',
'react/jsx-uses-vars': 'error'
},
overrides: [{
files: 'tests/**/*.js',
env: {
embertest: true,
mocha: true
},
extends: [
'plugin:ghost/test'
],
rules: {
'ghost/ember/no-invalid-debug-function-arguments': 'off',
'ghost/mocha/no-setup-in-describe': 'off'
}
}]
};