fox-block-builder
Version:
Maintainable code for loop slack-block-kit-like modal builder
30 lines • 1.03 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.conditionals = exports.omitIfFalsy = exports.setIfFalsy = exports.omitIfTruthy = exports.setIfTruthy = void 0;
const falsyValues = [undefined, null, false];
const falsy = (value) => falsyValues.includes(value);
const truthy = (value) => !falsyValues.includes(value);
function setIfTruthy(condition, toSet) {
return truthy(condition) ? toSet : undefined;
}
exports.setIfTruthy = setIfTruthy;
function omitIfTruthy(condition, toOmit) {
return truthy(condition) ? undefined : toOmit;
}
exports.omitIfTruthy = omitIfTruthy;
function setIfFalsy(condition, toSet) {
return falsy(condition) ? toSet : undefined;
}
exports.setIfFalsy = setIfFalsy;
function omitIfFalsy(condition, toOmit) {
return falsy(condition) ? undefined : toOmit;
}
exports.omitIfFalsy = omitIfFalsy;
const conditionals = {
setIfTruthy,
omitIfTruthy,
setIfFalsy,
omitIfFalsy,
};
exports.conditionals = conditionals;
//# sourceMappingURL=index.js.map