const primitive = (schema) => { schema = objectify(schema) let { type, format } = schema let fn = primitives[`${type}_${format}`] || primitives[type] if(isFunc(fn)) return fn(schema) return "Unknown Type: " + schema.type }
function combinePlugins(plugins, toolbox) { if(isObject(plugins) && !isArray(plugins)) return plugins if(isFunc(plugins)) return combinePlugins(plugins(toolbox), toolbox) if(isArray(plugins)) { return plugins .map(plugin => combinePlugins(plugin, toolbox)) .reduce(systemExtend, {}) } return {} }