.eslintrc.js 834 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. /**
  2. * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
  3. * SPDX-License-Identifier: AGPL-3.0-or-later
  4. */
  5. module.exports = {
  6. globals: {
  7. __webpack_nonce__: true,
  8. _: true,
  9. $: true,
  10. dayNames: true,
  11. escapeHTML: true,
  12. firstDay: true,
  13. moment: true,
  14. oc_userconfig: true,
  15. sinon: true,
  16. },
  17. plugins: [
  18. 'cypress',
  19. ],
  20. extends: [
  21. '@nextcloud/eslint-config/typescript',
  22. 'plugin:cypress/recommended',
  23. ],
  24. rules: {
  25. 'no-tabs': 'warn',
  26. // TODO: make sure we fix this as this is bad vue coding style.
  27. // Use proper sync modifier
  28. 'vue/no-mutating-props': 'warn',
  29. 'vue/custom-event-name-casing': ['error', 'kebab-case', {
  30. // allows custom xxxx:xxx events formats
  31. ignores: ['/^[a-z]+(?:-[a-z]+)*:[a-z]+(?:-[a-z]+)*$/u'],
  32. }],
  33. },
  34. settings: {
  35. jsdoc: {
  36. mode: 'typescript',
  37. },
  38. },
  39. }