{{## 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 }} {{?}} {{~}}
#}}