Noteworthy Programming Masterpiece

    @putout/operator-declare

    4.6.4 • Public • Published

    @putout/operator-declare NPM version

    🐊Putout operator adds ability to declare variable that was not defined before.

    Install

    npm i putout @putout/operator-declare
    

    API

    If you want to create 🐊Putout plugin that will declare variables according to your needs just:

    const {operator} = require('putout');
    const {declare} = operator;
    
    module.exports = declare({
        fs: `import fs from 'fs/promises'`,
    });

    Dual packages

    When you need different declarations for ESM and CommonJS you can use:

    const {operator} = require('putout');
    const {declare} = operator;
    
    module.exports = declare({
        fs: {
            esm: `import fs from 'fs/promises'`,
            comomnjs: `const fs = require('fs')`, // drop when not needed
        },
    });

    Configuration

    Plugin supports options, so you can pass it in .putout.json:

    {
        "rules": {
            "putout/declare-undefined-variables": ["on", {
                "declarations": {
                    "fs": "import fs from 'fs/promises'"
                }
            }]
        }
    }

    Used in

    Evaluate

    Can be used with ESLint's putout/evaluate:

    {
        "rules": {
            "putout/declare-undefined-variables": ["on", {
                "declarations": {
                    "superMethod": "import superMethod from '__putout_evaluate: join(`./`, basename(__filename), `.js`)'"
                }
            }]
        }
    }

    If you have a file index.spec.js:

    + import superMethod from './index.js'
    superMethod();

    License

    MIT

    Install

    npm i @putout/operator-declare

    DownloadsWeekly Downloads

    6,429

    Version

    4.6.4

    License

    MIT

    Unpacked Size

    10.6 kB

    Total Files

    5

    Last publish

    Collaborators

    • coderaiser