16 lines
470 B
JavaScript
16 lines
470 B
JavaScript
'use strict'
|
|
|
|
function isInsidePromise(node) {
|
|
const isFunctionExpression =
|
|
node.type === 'FunctionExpression' ||
|
|
node.type === 'ArrowFunctionExpression'
|
|
const parent = node.parent || {}
|
|
const callee = parent.callee || {}
|
|
const name = (callee.property && callee.property.name) || ''
|
|
const parentIsPromise = name === 'then' || name === 'catch'
|
|
const isInCB = isFunctionExpression && parentIsPromise
|
|
return isInCB
|
|
}
|
|
|
|
module.exports = isInsidePromise
|