1234567891011121314151617181920 |
- 'use strict'
- const isInsidePromise = require('./is-inside-promise')
- function isInsideCallback(node) {
- const isCallExpression =
- node.type === 'FunctionExpression' ||
- node.type === 'ArrowFunctionExpression' ||
- node.type === 'FunctionDeclaration' // this may be controversial
- // it's totally fine to use promises inside promises
- if (isInsidePromise(node)) return
- const name = node.params && node.params[0] && node.params[0].name
- const firstArgIsError = name === 'err' || name === 'error'
- const isInACallback = isCallExpression && firstArgIsError
- return isInACallback
- }
- module.exports = isInsideCallback
|