Sha256: f27d7d89ba922c916f165c099b95435d59cdf02d688362dfa6af75d3dc8475df

Contents?: true

Size: 867 Bytes

Versions: 43

Compression:

Stored size: 867 Bytes

Contents

'use strict'

const PROMISE_STATICS = require('./lib/promise-statics')
const getDocsUrl = require('./lib/get-docs-url')

module.exports = {
  meta: {
    docs: {
      url: getDocsUrl('no-new-statics')
    },
    fixable: 'code'
  },
  create(context) {
    return {
      NewExpression(node) {
        if (
          node.callee.type === 'MemberExpression' &&
          node.callee.object.name === 'Promise' &&
          PROMISE_STATICS[node.callee.property.name]
        ) {
          context.report({
            node,
            message: "Avoid calling 'new' on 'Promise.{{ name }}()'",
            data: { name: node.callee.property.name },
            fix(fixer) {
              return fixer.replaceTextRange(
                [node.start, node.start + 'new '.length],
                ''
              )
            }
          })
        }
      }
    }
  }
}

Version data entries

43 entries across 43 versions & 1 rubygems

Version Path
govuk_publishing_components-17.6.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-17.5.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-17.4.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-17.3.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-17.2.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-17.1.1 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-17.1.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-17.0.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.29.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.28.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.27.1 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.27.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.26.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.25.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.24.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.23.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.22.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.21.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.20.1 node_modules/eslint-plugin-promise/rules/no-new-statics.js
govuk_publishing_components-16.20.0 node_modules/eslint-plugin-promise/rules/no-new-statics.js