403Webshell
Server IP : 185.208.173.17  /  Your IP : 87.236.161.98
Web Server : Microsoft-IIS/10.0
System : Windows NT SRV8576125506 10.0 build 26100 (Windows Server 2016) AMD64
User : IUSR ( 0)
PHP Version : 7.4.13
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/inetpub/wwwroot/parsmega.nuxt/node_modules/eslint-plugin-nuxt/lib/rules/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/inetpub/wwwroot/parsmega.nuxt/node_modules/eslint-plugin-nuxt/lib/rules/no-cjs-in-config.js
/**
 * @fileoverview Disallow `require/modules.exports/exports` in `nuxt.config.js`
 * @author Xin Du <clark.duxin@gmail.com>
 */
'use strict'

const path = require('path')

// ------------------------------------------------------------------------------
// Rule Definition
// ------------------------------------------------------------------------------

module.exports = {
  meta: {
    docs: {
      description:
        'disallow commonjs module api `require/modules.exports/exports` in `nuxt.config.js`',
      category: 'base'
    },
    messages: {
      noCjs: 'Unexpected {{cjs}}, please use {{esm}} instead.'
    }
  },

  create (context) {
    // variables should be defined here
    const options = context.options[0] || {}
    const configFile = options.file || 'nuxt.config.js'
    let isNuxtConfig = false

    // ----------------------------------------------------------------------
    // Public
    // ----------------------------------------------------------------------

    return {
      Program (node) {
        const filename = path.basename(context.getFilename())
        if (filename === configFile) {
          isNuxtConfig = true
        }
      },
      MemberExpression: function (node) {
        if (!isNuxtConfig) {
          return
        }

        // module.exports
        if (node.object.name === 'module' && node.property.name === 'exports') {
          context.report({
            node,
            messageId: 'noCjs',
            data: {
              cjs: 'module.exports',
              esm: 'export default'
            }
          })
        }

        // exports.
        if (node.object.name === 'exports') {
          const isInScope = context.getScope()
            .variables
            .some(variable => variable.name === 'exports')
          if (!isInScope) {
            context.report({
              node,
              messageId: 'noCjs',
              data: {
                cjs: 'exports',
                esm: 'export default'
              }
            })
          }
        }
      },
      CallExpression: function (call) {
        const module = call.arguments[0]

        if (
          !isNuxtConfig ||
          context.getScope().type !== 'module' ||
          !['ExpressionStatement', 'VariableDeclarator'].includes(call.parent.type) ||
          call.callee.type !== 'Identifier' ||
          call.callee.name !== 'require' ||
          call.arguments.length !== 1 ||
          module.type !== 'Literal' ||
          typeof module.value !== 'string'
        ) {
          return
        }

        context.report({
          node: call.callee,
          messageId: 'noCjs',
          data: {
            cjs: 'require',
            esm: 'import'
          }
        })
      }
    }
  }
}

Youez - 2016 - github.com/yon3zu
LinuXploit