UNPKG

@jondotsoy/flags

Version:

A Javascript arguments processor

29 lines 2.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.booleanFlagRefine = void 0; const booleanFlagRefine = (_arg, _index, _args, context, _builder) => { if (!context) { return null; } // Boolean flags don't consume additional arguments // If value is already set from flagMatchRefine (e.g., "--verbose=true"), parse it if (context.value !== "") { const lowerValue = context.value.toLowerCase(); if (lowerValue === "true" || lowerValue === "1") { return { ...context, value: true }; } if (lowerValue === "false" || lowerValue === "0") { return { ...context, value: false }; } // Invalid boolean value return null; } // No explicit value means the flag presence is true return { args: context.args, index: context.index, value: true, }; }; exports.booleanFlagRefine = booleanFlagRefine; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbkZsYWdSZWZpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYnVpbGRlcnMvcmVmaW5lcnMvYm9vbGVhbkZsYWdSZWZpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRU8sTUFBTSxpQkFBaUIsR0FBVyxDQUN2QyxJQUFJLEVBQ0osTUFBTSxFQUNOLEtBQUssRUFDTCxPQUFPLEVBQ1AsUUFBUSxFQUNSLEVBQUU7SUFDRixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDYixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxtREFBbUQ7SUFDbkQsa0ZBQWtGO0lBQ2xGLElBQUksT0FBTyxDQUFDLEtBQUssS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUN6QixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQy9DLElBQUksVUFBVSxLQUFLLE1BQU0sSUFBSSxVQUFVLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDaEQsT0FBTyxFQUFFLEdBQUcsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUNyQyxDQUFDO1FBQ0QsSUFBSSxVQUFVLEtBQUssT0FBTyxJQUFJLFVBQVUsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNqRCxPQUFPLEVBQUUsR0FBRyxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQ3RDLENBQUM7UUFDRCx3QkFBd0I7UUFDeEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsb0RBQW9EO0lBQ3BELE9BQU87UUFDTCxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7UUFDbEIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLO1FBQ3BCLEtBQUssRUFBRSxJQUFJO0tBQ1osQ0FBQztBQUNKLENBQUMsQ0FBQztBQS9CVyxRQUFBLGlCQUFpQixxQkErQjVCIn0=