186 lines
3.6 KiB
YAML
186 lines
3.6 KiB
YAML
|
components:
|
||
|
schemas:
|
||
|
userView:
|
||
|
type: object
|
||
|
properties:
|
||
|
id:
|
||
|
type: string
|
||
|
format: uuid
|
||
|
username:
|
||
|
type: string
|
||
|
email:
|
||
|
type: string
|
||
|
experience:
|
||
|
type: integer
|
||
|
level:
|
||
|
type: integer
|
||
|
expToCurrentLevel:
|
||
|
type: integer
|
||
|
expToNextLevel:
|
||
|
type: integer
|
||
|
games:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/gameView"
|
||
|
role:
|
||
|
type: string
|
||
|
enum:
|
||
|
- user
|
||
|
- creator
|
||
|
- admin
|
||
|
required:
|
||
|
- id
|
||
|
- username
|
||
|
- email
|
||
|
- experience
|
||
|
- level
|
||
|
- expToCurrentLevel
|
||
|
- expToNextLevel
|
||
|
- games
|
||
|
- role
|
||
|
gameView:
|
||
|
type: object
|
||
|
properties:
|
||
|
id:
|
||
|
type: string
|
||
|
format: uuid
|
||
|
visible:
|
||
|
type: boolean
|
||
|
title:
|
||
|
type: string
|
||
|
description:
|
||
|
type: string
|
||
|
type:
|
||
|
$ref: "#/components/schemas/gameType"
|
||
|
points:
|
||
|
type: integer
|
||
|
taskCount:
|
||
|
type: integer
|
||
|
createdAt:
|
||
|
type: string
|
||
|
authors:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/userView"
|
||
|
icon:
|
||
|
type: string
|
||
|
format: uuid
|
||
|
required:
|
||
|
- id
|
||
|
- title
|
||
|
- description
|
||
|
- type
|
||
|
- points
|
||
|
- taskCount
|
||
|
- createdAt
|
||
|
- authors
|
||
|
taskView:
|
||
|
type: object
|
||
|
properties:
|
||
|
message:
|
||
|
type: string
|
||
|
enum:
|
||
|
- ok_code
|
||
|
- invalid_code
|
||
|
- old_code
|
||
|
- next_level
|
||
|
- game_complete
|
||
|
title:
|
||
|
type: string
|
||
|
text:
|
||
|
type: string
|
||
|
codes:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/codeView"
|
||
|
required:
|
||
|
- title
|
||
|
- text
|
||
|
- codes
|
||
|
codeView:
|
||
|
type: object
|
||
|
properties:
|
||
|
description:
|
||
|
type: string
|
||
|
code:
|
||
|
type: string
|
||
|
gameEdit:
|
||
|
type: object
|
||
|
properties:
|
||
|
id:
|
||
|
type: string
|
||
|
format: uuid
|
||
|
visible:
|
||
|
type: boolean
|
||
|
title:
|
||
|
type: string
|
||
|
description:
|
||
|
type: string
|
||
|
type:
|
||
|
$ref: "#/components/schemas/gameType"
|
||
|
tasks:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/taskEdit"
|
||
|
points:
|
||
|
type: integer
|
||
|
icon:
|
||
|
type: string
|
||
|
format: uuid
|
||
|
required:
|
||
|
- visible
|
||
|
- title
|
||
|
- description
|
||
|
- type
|
||
|
- tasks
|
||
|
- points
|
||
|
taskEdit:
|
||
|
type: object
|
||
|
properties:
|
||
|
id:
|
||
|
type: string
|
||
|
format: uuid
|
||
|
title:
|
||
|
type: string
|
||
|
text:
|
||
|
type: string
|
||
|
codes:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/codeEdit"
|
||
|
required:
|
||
|
- id
|
||
|
- title
|
||
|
- text
|
||
|
- codes
|
||
|
codeEdit:
|
||
|
type: object
|
||
|
properties:
|
||
|
id:
|
||
|
type: string
|
||
|
format: uuid
|
||
|
description:
|
||
|
type: string
|
||
|
code:
|
||
|
type: string
|
||
|
required:
|
||
|
- code
|
||
|
gameType:
|
||
|
type: string
|
||
|
enum:
|
||
|
- virtual
|
||
|
- city
|
||
|
fileItem:
|
||
|
type: object
|
||
|
properties:
|
||
|
id:
|
||
|
type: string
|
||
|
format: uuid
|
||
|
originalName:
|
||
|
type: string
|
||
|
size:
|
||
|
type: integer
|
||
|
required:
|
||
|
- id
|
||
|
- originalName
|
||
|
- size
|