mirror of
https://code.forgejo.org/actions/setup-node.git
synced 2025-06-20 12:27:50 +00:00
21 lines
895 B
JavaScript
21 lines
895 B
JavaScript
![]() |
import {isEmpty, isFunction} from '../utils';
|
||
|
|
||
|
export default function(instance) {
|
||
|
instance.registerHelper('if', function(conditional, options) {
|
||
|
if (isFunction(conditional)) { conditional = conditional.call(this); }
|
||
|
|
||
|
// Default behavior is to render the positive path if the value is truthy and not empty.
|
||
|
// The `includeZero` option may be set to treat the condtional as purely not empty based on the
|
||
|
// behavior of isEmpty. Effectively this determines if 0 is handled by the positive path or negative.
|
||
|
if ((!options.hash.includeZero && !conditional) || isEmpty(conditional)) {
|
||
|
return options.inverse(this);
|
||
|
} else {
|
||
|
return options.fn(this);
|
||
|
}
|
||
|
});
|
||
|
|
||
|
instance.registerHelper('unless', function(conditional, options) {
|
||
|
return instance.helpers['if'].call(this, conditional, {fn: options.inverse, inverse: options.fn, hash: options.hash});
|
||
|
});
|
||
|
}
|