Spaces:
Running
Running
{{## def.assignDefault: | |
{{? it.compositeRule }} | |
{{ | |
if (it.opts.strictDefaults) { | |
var $defaultMsg = 'default is ignored for: ' + $passData; | |
if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg); | |
else throw new Error($defaultMsg); | |
} | |
}} | |
{{??}} | |
if ({{=$passData}} === undefined | |
{{? it.opts.useDefaults == 'empty' }} | |
|| {{=$passData}} === null | |
|| {{=$passData}} === '' | |
{{?}} | |
) | |
{{=$passData}} = {{? it.opts.useDefaults == 'shared' }} | |
{{= it.useDefault($sch.default) }} | |
{{??}} | |
{{= JSON.stringify($sch.default) }} | |
{{?}}; | |
{{?}} | |
#}} | |
{{## def.defaultProperties: | |
{{ | |
var $schema = it.schema.properties | |
, $schemaKeys = Object.keys($schema); }} | |
{{~ $schemaKeys:$propertyKey }} | |
{{ var $sch = $schema[$propertyKey]; }} | |
{{? $sch.default !== undefined }} | |
{{ var $passData = $data + it.util.getProperty($propertyKey); }} | |
{{# def.assignDefault }} | |
{{?}} | |
{{~}} | |
#}} | |
{{## def.defaultItems: | |
{{~ it.schema.items:$sch:$i }} | |
{{? $sch.default !== undefined }} | |
{{ var $passData = $data + '[' + $i + ']'; }} | |
{{# def.assignDefault }} | |
{{?}} | |
{{~}} | |
#}} | |