Skip to content

Commit

Permalink
WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
mokkabonna committed Mar 2, 2018
1 parent 6549290 commit 06ac5ff
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 15 deletions.
2 changes: 1 addition & 1 deletion build/webpack.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ var path = require('path')
module.exports = {
entry: './src/resolver.js',
output: {
path: path.resolve(__dirname, '../../pure-rest-api/static/js'),
path: path.resolve(__dirname, '../../pure-rest-api/public/js'),
filename: 'json-hyper-schema.bundle.js'
}
}
26 changes: 12 additions & 14 deletions src/resolver.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,10 @@ const Ajv = require('ajv')

const ajv = new Ajv()

const isRelative = jsonPointer => /^\d+/.test(jsonPointer)
const isFalse = s => s === false
function resolve(template, link, instance) {}

function isRelative(jsonPointer) {
return /^\d+/.test(jsonPointer)
}

function getTemplateData(template, link, instance) {
var parsedTemplate = uriTemplates(template)
var templatePointers = link.templatePointers || {}
Expand Down Expand Up @@ -47,24 +45,24 @@ function getTemplateData(template, link, instance) {
return result
}

function anyIsFalse(schema) {
function simplify(schema) {
if (schema === false) {
return true
return false
}

if (Array.isArray(schema.allOf) && schema.allOf.some(s => s === false)) {
return true
if (Array.isArray(schema.allOf) && schema.allOf.some(isFalse)) {
return false
}

if (Array.isArray(schema.anyOf) && schema.anyOf.every(s => s === false)) {
return true
if (Array.isArray(schema.anyOf) && schema.anyOf.every(isFalse)) {
return false
}

if (Array.isArray(schema.oneOf) && schema.oneOf.every(s => s === false)) {
return true
if (Array.isArray(schema.oneOf) && schema.oneOf.every(isFalse)) {
return false
}

return false
return schema
}

function getDefaultInputValues(template, link, instance) {
Expand All @@ -78,7 +76,7 @@ function getDefaultInputValues(template, link, instance) {
var defaultData = parsedTemplate.varNames.reduce(function(all, name) {
var subSchema = extractSubSchema(link.hrefSchema, '/properties/' + name)

if (!anyIsFalse(subSchema)) {
if (simplify(subSchema) !== false) {
all[name] = undefined
}

Expand Down

0 comments on commit 06ac5ff

Please sign in to comment.