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