@Override public CompletionStage<PropertyContext<?>> convert(final CompletionStage<PropertyContext<?>> cs) { return cs.thenApply(context -> { jsonSchema.setType("string"); if (context.getProperty().getValidation() == null || context.getProperty().getValidation().getEnumValues() == null) { jsonSchema.setEnumValues(emptyList()); } else { jsonSchema.setEnumValues(context.getProperty().getValidation().getEnumValues()); } return context; }); } }
@Override public CompletionStage<PropertyContext<?>> convert(final CompletionStage<PropertyContext<?>> cs) { return cs.thenCompose(context -> { final UiSchema schema = newUiSchema(context); schema.setWidget("datalist"); schema.setTitleMap(emptyList()); final JsonSchema jsonSchema = findJsonSchema(context); if (jsonSchema != null) { if (jsonSchema.getType() == null) { jsonSchema.setType("string"); } // avoid to validate against the enum since we don't udpate it at suggestion time jsonSchema.setEnumValues(null); } return CompletableFuture.completedFuture(context); }); } }
return pairs.thenApply(namedValues -> { schema.setTitleMap(namedValues); jsonSchema.setEnumValues(namedValues.stream().map(UiSchema.NameValue::getValue).collect(toList())); return context; });
return nameValue; }).collect(toList())); jsonSchema.setEnumValues(context.getProperty().getValidation().getEnumValues()); } else { final String actionName = context.getProperty().getMetadata().get("action::dynamic_values"); return pairs.thenApply(namedValues -> { schema.setTitleMap(namedValues); jsonSchema.setEnumValues(namedValues.stream().map(UiSchema.NameValue::getValue).collect(toList())); return context; });
public JsonSchema build() { final JsonSchema jsonSchema = new JsonSchema(); jsonSchema.setId(id); jsonSchema.setTitle(title); jsonSchema.setDescription(description); jsonSchema.setSchema(schema); jsonSchema.setRef(ref); jsonSchema.setType(type); jsonSchema.setMinItems(minItems); jsonSchema.setMaxItems(maxItems); jsonSchema.setMinLength(minLength); jsonSchema.setMaxLength(maxLength); jsonSchema.setMinimum(minimum); jsonSchema.setMaximum(maximum); jsonSchema.setUniqueItems(uniqueItems); jsonSchema.setPattern(pattern); jsonSchema.setDefaultValue(defaultValue); jsonSchema.setRequired(required); jsonSchema.setProperties(properties); jsonSchema.setEnumValues(enumValues); jsonSchema.setItems(items); return jsonSchema; } }