UNPKG

dinoloop-es8

Version:

A lightweight REST API Library for building scalable Node.js server-side applications powered by Typescript

21 lines 1.81 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const data_utility_1 = require("./data.utility"); let STRIP_COMMENTS = /((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg; let ARGUMENT_NAMES = /([^\s,]+)/g; // returns only param names as string array // refer: https://stackoverflow.com/questions/1007981/how-to-get-function-parameter-names-values-dynamically class FunctionUtility { static getParamNames(func) { if (data_utility_1.DataUtility.isUndefinedOrNull(func)) return []; let fnStr = func.toString().replace(STRIP_COMMENTS, ''); let result = fnStr.slice(fnStr.indexOf('(') + 1, fnStr.indexOf(')')).match(ARGUMENT_NAMES); if (result === null) { result = []; } return result; } } exports.FunctionUtility = FunctionUtility; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb24udXRpbGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tb2R1bGVzL3V0aWxpdHkvZnVuY3Rpb24udXRpbGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlEQUE2QztBQUU3QyxJQUFJLGNBQWMsR0FBRyxrQ0FBa0MsQ0FBQztBQUN4RCxJQUFJLGNBQWMsR0FBRyxZQUFZLENBQUM7QUFFbEMsMkNBQTJDO0FBQzNDLDRHQUE0RztBQUM1RztJQUNJLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBYztRQUUvQixJQUFJLDBCQUFXLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFFbkQsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEQsSUFBSSxNQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzNGLElBQUksTUFBTSxLQUFLLElBQUksRUFBRTtZQUNqQixNQUFNLEdBQUcsRUFBRSxDQUFDO1NBQ2Y7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0NBQ0o7QUFiRCwwQ0FhQyJ9