from apistar.codecs.jsonschema import JSON_SCHEMA from apistar.compat import dict_type from apistar.document import Document, Field, Link, Section from apistar.exceptions import ParseError SCHEMA_REF = validators.Object( properties={'$ref': validators.String(pattern='^#/components/schemas/')}) RESPONSE_REF = validators.Object( properties={'$ref': validators.String(pattern='^#/components/responses/')}) SWAGGER = validators.Object( def_name='Swagger', title='Swagger', properties=[ ('swagger', validators.String()), ('info', validators.Ref('Info')), ('paths', validators.Ref('Paths')), ('host', validators.String()), ('basePath', validators.String()), ('schemes', validators.Array(items=validators.String())), ('consumes', validators.Array(items=validators.String())), ('produces', validators.Array(items=validators.String())), ('definitions', validators.Object(additional_properties=validators.Any())), ('parameters', validators.Object( additional_properties=validators.Ref('Parameters'))), ('responses', validators.Object(additional_properties=validators.Ref('Responses'))), ('securityDefinitions', validators.Object(
SCHEMA_REF = validators.Object( properties={'$ref': validators.String(pattern='^#/components/schemas/')} ) REQUESTBODY_REF = validators.Object( properties={'$ref': validators.String(pattern='^#/components/requestBodies/')} ) RESPONSE_REF = validators.Object( properties={'$ref': validators.String(pattern='^#/components/responses/')} ) OPEN_API = validators.Object( def_name='OpenAPI', title='OpenAPI', properties=[ ('openapi', validators.String()), ('info', validators.Ref('Info')), ('servers', validators.Array(items=validators.Ref('Server'))), ('paths', validators.Ref('Paths')), ('components', validators.Ref('Components')), ('security', validators.Array(items=validators.Ref('SecurityRequirement'))), ('tags', validators.Array(items=validators.Ref('Tag'))), ('externalDocs', validators.Ref('ExternalDocumentation')), ], pattern_properties={ '^x-': validators.Any(), }, additional_properties=False, required=['openapi', 'info', 'paths'], definitions={ 'Info': validators.Object( properties=[
import json from apistar import types, validators from apistar.codecs.base import BaseCodec from apistar.compat import dict_type from apistar.exceptions import ParseError JSON_SCHEMA = validators.Object( def_name="JSONSchema", properties=[ ("$ref", validators.String()), ("type", validators.String() | validators.Array(items=validators.String())), ("enum", validators.Array(unique_items=True, min_items=1)), ( "definitions", validators.Object(additional_properties=validators.Ref("JSONSchema")), ), # String ("minLength", validators.Integer(minimum=0)), ("maxLength", validators.Integer(minimum=0)), ("pattern", validators.String(format="regex")), ("format", validators.String()), # Numeric ("minimum", validators.Number()), ("maximum", validators.Number()), ("exclusiveMinimum", validators.Boolean()), ("exclusiveMaximum", validators.Boolean()), ("multipleOf", validators.Number(minimum=0.0, exclusive_minimum=True)), # Object ( "properties",
from apistar import types, validators from apistar.codecs.base import BaseCodec from apistar.compat import dict_type from apistar.exceptions import ParseError JSON_SCHEMA = validators.Object( def_name='JSONSchema', properties=[ ('$ref', validators.String()), ('type', validators.String() | validators.Array(items=validators.String())), ('enum', validators.Array(unique_items=True, min_items=1)), ('definitions', validators.Object( additional_properties=validators.Ref('JSONSchema'))), # String ('minLength', validators.Integer(minimum=0)), ('maxLength', validators.Integer(minimum=0)), ('pattern', validators.String(format='regex')), ('format', validators.String()), # Numeric ('minimum', validators.Number()), ('maximum', validators.Number()), ('exclusiveMinimum', validators.Boolean()), ('exclusiveMaximum', validators.Boolean()), ('multipleOf', validators.Number(minimum=0.0, exclusive_minimum=True)), # Object
SCHEMA_REF = validators.Object( properties={"$ref": validators.String(pattern="^#/components/schemas/")}) REQUESTBODY_REF = validators.Object( properties={ "$ref": validators.String(pattern="^#/components/requestBodies/") }) RESPONSE_REF = validators.Object( properties={"$ref": validators.String(pattern="^#/components/responses/")}) OPEN_API = validators.Object( def_name="OpenAPI", title="OpenAPI", properties=[ ("openapi", validators.String()), ("info", validators.Ref("Info")), ("servers", validators.Array(items=validators.Ref("Server"))), ("paths", validators.Ref("Paths")), ("components", validators.Ref("Components")), ("security", validators.Array(items=validators.Ref("SecurityRequirement"))), ("tags", validators.Array(items=validators.Ref("Tag"))), ("externalDocs", validators.Ref("ExternalDocumentation")), ], pattern_properties={"^x-": validators.Any()}, additional_properties=False, required=["openapi", "info", "paths"], definitions={ "Info": validators.Object( properties=[
from apistar import validators from apistar.codecs import BaseCodec, JSONSchemaCodec from apistar.codecs.jsonschema import JSON_SCHEMA from apistar.compat import dict_type from apistar.document import Document, Field, Link, Section from apistar.exceptions import ParseError SCHEMA_REF = validators.Object( properties={'$ref': validators.String(pattern='^#/components/schemas/')}) OPEN_API = validators.Object( def_name='OpenAPI', title='OpenAPI', properties=[ ('openapi', validators.String()), ('info', validators.Ref('Info')), ('servers', validators.Array(items=validators.Ref('Server'))), ('paths', validators.Ref('Paths')), ('components', validators.Ref('Components')), ('security', validators.Ref('SecurityRequirement')), ('tags', validators.Array(items=validators.Ref('Tag'))), ('externalDocs', validators.Ref('ExternalDocumentation')), ], pattern_properties={ '^x-': validators.Any(), }, additional_properties=False, required=['openapi', 'info'], definitions={ 'Info': validators.Object(properties=[