This repository has been archived on 2024-07-27. You can view files and clone it, but cannot push or open issues or pull requests.
keksAccountGUI/node_modulesOLD/eslint-plugin-vue/lib/rules/require-direct-export.js
2019-08-11 20:48:02 +02:00

46 lines
1.2 KiB
JavaScript

/**
* @fileoverview require the component to be directly exported
* @author Hiroki Osame <hiroki.osame@gmail.com>
*/
'use strict'
const utils = require('../utils')
// ------------------------------------------------------------------------------
// Rule Definition
// ------------------------------------------------------------------------------
module.exports = {
meta: {
type: 'suggestion',
docs: {
description: 'require the component to be directly exported',
category: undefined,
url: 'https://eslint.vuejs.org/rules/require-direct-export.html'
},
fixable: null, // or "code" or "whitespace"
schema: []
},
create (context) {
const filePath = context.getFilename()
return {
'ExportDefaultDeclaration:exit' (node) {
if (!utils.isVueFile(filePath)) return
const isObjectExpression = (
node.type === 'ExportDefaultDeclaration' &&
node.declaration.type === 'ObjectExpression'
)
if (!isObjectExpression) {
context.report({
node,
message: `Expected the component literal to be directly exported.`
})
}
}
}
}
}