1.0.6 • Published 2 years ago

nv-cli-simple-routes v1.0.6

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

nv-cli-simple-routes

  • nv-cli-simple-routes
  • cli tool, quickly generate template of routes

install

  • npm install nv-cli-simple-routes -g

usage

    Usage: nv_cli_sroute [options]
    Options:
        -p, --prefix        route prefix
        -r, --routes        route names
        -h, --help          usage

example

    ctrl# nv_cli_sroute -p ctrl -r max_retry_times proxy_cmd proxy_handler 2 proxy_pasv_port_range proxy_pasv_url proxy_url upstream_dstfn upstream_password upstream_url upstream_user
    ctrl# ls -l
    total 56
    -rw-r--r-- 1 root root  412 Apr 15 07:04 act-def.js
    -rw-r--r-- 1 root root  419 Apr 15 07:04 err.js
    -rw-r--r-- 1 root root 1573 Apr 15 07:04 index.js
    -rw-r--r-- 1 root root 1277 Apr 15 07:04 max_retry_times.js
    -rw-r--r-- 1 root root 1277 Apr 15 07:04 proxy_cmd.js
    -rw-r--r-- 1 root root 1546 Apr 15 07:04 proxy_handler.js
    -rw-r--r-- 1 root root 1277 Apr 15 07:04 proxy_pasv_port_range.js
    -rw-r--r-- 1 root root 1277 Apr 15 07:04 proxy_pasv_url.js
    -rw-r--r-- 1 root root 1277 Apr 15 07:04 proxy_url.js
    -rw-r--r-- 1 root root  309 Apr 15 07:04 route-def.js
    -rw-r--r-- 1 root root 1277 Apr 15 07:04 upstream_dstfn.js
    -rw-r--r-- 1 root root 1277 Apr 15 07:04 upstream_password.js
    -rw-r--r-- 1 root root 1277 Apr 15 07:04 upstream_url.js
    -rw-r--r-- 1 root root 1277 Apr 15 07:04 upstream_user.js
    ctrl#
    ctrl# cat index.js

    const max_retry_times = require("./max_retry_times");
    const proxy_cmd = require("./proxy_cmd");
    const proxy_handler = require("./proxy_handler");
    const proxy_pasv_port_range = require("./proxy_pasv_port_range");
    const proxy_pasv_url = require("./proxy_pasv_url");
    const proxy_url = require("./proxy_url");
    const upstream_dstfn = require("./upstream_dstfn");
    const upstream_password = require("./upstream_password");
    const upstream_url = require("./upstream_url");
    const upstream_user = require("./upstream_user");

    module.exports = {
        routes:require("./route-def"),
        schemes: {
            "max_retry_times":max_retry_times.SCHEME,
            "proxy_cmd":proxy_cmd.SCHEME,
            "proxy_handler":proxy_handler.SCHEME,
            "proxy_pasv_port_range":proxy_pasv_port_range.SCHEME,
            "proxy_pasv_url":proxy_pasv_url.SCHEME,
            "proxy_url":proxy_url.SCHEME,
            "upstream_dstfn":upstream_dstfn.SCHEME,
            "upstream_password":upstream_password.SCHEME,
            "upstream_url":upstream_url.SCHEME,
            "upstream_user":upstream_user.SCHEME,
        },
        callbacks: {
            "max_retry_times":max_retry_times.creat_cb,
            "proxy_cmd":proxy_cmd.creat_cb,
            "proxy_handler":proxy_handler.creat_cb,
            "proxy_pasv_port_range":proxy_pasv_port_range.creat_cb,
            "proxy_pasv_url":proxy_pasv_url.creat_cb,
            "proxy_url":proxy_url.creat_cb,
            "upstream_dstfn":upstream_dstfn.creat_cb,
            "upstream_password":upstream_password.creat_cb,
            "upstream_url":upstream_url.creat_cb,
            "upstream_user":upstream_user.creat_cb,
        }
    }
    ctrl# cat act-def.js

    const {kvlist2d} = require("nv-facutil-basic");

    const ARR = [
        "max_retry_times",
        "proxy_cmd",
        "proxy_handler",
        "proxy_pasv_port_range",
        "proxy_pasv_url",
        "proxy_url",
        "upstream_dstfn",
        "upstream_password",
        "upstream_url",
        "upstream_user"
    ];

    const ACTION = kvlist2d(ARR,ARR);
    Object.defineProperty(ACTION,'arr_',{get:function(){return(ARR)}});

    module.exports = ACTION;
    ctrl# cat route-def.js

    const {kvlist2d} = require("nv-facutil-basic");
    const ACTION = require("./act-def");

    const PREFIX = '//ctrl';
    const KS = ACTION.arr_;
    const VS = KS.map(k=>`${PREFIX}/${k}`)
    const ROUTES =  kvlist2d(KS,VS);
    Object.defineProperty(ROUTES,'prefix_',{get:function(){return(PREFIX)}});


    module.exports = ROUTES;
    ctrl# node
    Welcome to Node.js v16.13.1.
    Type ".help" for more information.
    > require("./route-def")
    {
      max_retry_times: '//ctrl/max_retry_times',
      proxy_cmd: '//ctrl/proxy_cmd',
      proxy_handler: '//ctrl/proxy_handler',
      proxy_pasv_port_range: '//ctrl/proxy_pasv_port_range',
      proxy_pasv_url: '//ctrl/proxy_pasv_url',
      proxy_url: '//ctrl/proxy_url',
      upstream_dstfn: '//ctrl/upstream_dstfn',
      upstream_password: '//ctrl/upstream_password',
      upstream_url: '//ctrl/upstream_url',
      upstream_user: '//ctrl/upstream_user'
    }
    > .exit

LICENSE

  • ISC
1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago