759 lines
15 KiB
JSON

{
"version": "0.3.14-fixed",
"steps": [
{
"tag": "CreateEnum",
"enum": "ChoiseType",
"values": [
"SELECT",
"CHECK",
"CHOOSE"
]
},
{
"tag": "CreateEnum",
"enum": "AnswerType",
"values": [
"INPUT",
"CHOISE"
]
},
{
"tag": "CreateSource",
"source": "db"
},
{
"tag": "CreateArgument",
"location": {
"tag": "Source",
"source": "db"
},
"argument": "provider",
"value": "\"postgres\""
},
{
"tag": "CreateArgument",
"location": {
"tag": "Source",
"source": "db"
},
"argument": "url",
"value": "\"***\""
},
{
"tag": "CreateModel",
"model": "Form"
},
{
"tag": "CreateField",
"model": "Form",
"field": "title",
"type": "String",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "Form",
"field": "choisesQuestions",
"type": "ChoisesQuestion",
"arity": "List"
},
{
"tag": "CreateField",
"model": "Form",
"field": "inputQuestions",
"type": "InputQuestion",
"arity": "List"
},
{
"tag": "CreateField",
"model": "Form",
"field": "submissions",
"type": "FormSubmission",
"arity": "List"
},
{
"tag": "CreateField",
"model": "Form",
"field": "dateCreated",
"type": "DateTime",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "Form",
"field": "dateCreated"
},
"directive": "default"
}
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "Form",
"field": "dateCreated"
},
"directive": "default"
},
"argument": "",
"value": "now()"
},
{
"tag": "CreateField",
"model": "Form",
"field": "id",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "Form",
"field": "id"
},
"directive": "id"
}
},
{
"tag": "CreateField",
"model": "Form",
"field": "userId",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "Form",
"field": "author",
"type": "User",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "Form",
"field": "author"
},
"directive": "relation"
}
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "Form",
"field": "author"
},
"directive": "relation"
},
"argument": "fields",
"value": "[userId]"
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "Form",
"field": "author"
},
"directive": "relation"
},
"argument": "references",
"value": "[id]"
},
{
"tag": "CreateModel",
"model": "ChoisesQuestion"
},
{
"tag": "CreateField",
"model": "ChoisesQuestion",
"field": "title",
"type": "String",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "ChoisesQuestion",
"field": "variants",
"type": "Variant",
"arity": "List"
},
{
"tag": "CreateField",
"model": "ChoisesQuestion",
"field": "type",
"type": "ChoiseType",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "ChoisesQuestion",
"field": "number",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "ChoisesQuestion",
"field": "id",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "ChoisesQuestion",
"field": "id"
},
"directive": "id"
}
},
{
"tag": "CreateField",
"model": "ChoisesQuestion",
"field": "Form",
"type": "Form",
"arity": "Optional"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "ChoisesQuestion",
"field": "Form"
},
"directive": "relation"
}
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "ChoisesQuestion",
"field": "Form"
},
"directive": "relation"
},
"argument": "fields",
"value": "[formId]"
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "ChoisesQuestion",
"field": "Form"
},
"directive": "relation"
},
"argument": "references",
"value": "[id]"
},
{
"tag": "CreateField",
"model": "ChoisesQuestion",
"field": "formId",
"type": "Int",
"arity": "Optional"
},
{
"tag": "CreateModel",
"model": "Variant"
},
{
"tag": "CreateField",
"model": "Variant",
"field": "text",
"type": "String",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "Variant",
"field": "id",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "Variant",
"field": "id"
},
"directive": "id"
}
},
{
"tag": "CreateField",
"model": "Variant",
"field": "ChoisesQuestion",
"type": "ChoisesQuestion",
"arity": "Optional"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "Variant",
"field": "ChoisesQuestion"
},
"directive": "relation"
}
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "Variant",
"field": "ChoisesQuestion"
},
"directive": "relation"
},
"argument": "fields",
"value": "[choisesQuestionId]"
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "Variant",
"field": "ChoisesQuestion"
},
"directive": "relation"
},
"argument": "references",
"value": "[id]"
},
{
"tag": "CreateField",
"model": "Variant",
"field": "choisesQuestionId",
"type": "Int",
"arity": "Optional"
},
{
"tag": "CreateModel",
"model": "InputQuestion"
},
{
"tag": "CreateField",
"model": "InputQuestion",
"field": "title",
"type": "String",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "InputQuestion",
"field": "number",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "InputQuestion",
"field": "id",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "InputQuestion",
"field": "id"
},
"directive": "id"
}
},
{
"tag": "CreateField",
"model": "InputQuestion",
"field": "Form",
"type": "Form",
"arity": "Optional"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "InputQuestion",
"field": "Form"
},
"directive": "relation"
}
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "InputQuestion",
"field": "Form"
},
"directive": "relation"
},
"argument": "fields",
"value": "[formId]"
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "InputQuestion",
"field": "Form"
},
"directive": "relation"
},
"argument": "references",
"value": "[id]"
},
{
"tag": "CreateField",
"model": "InputQuestion",
"field": "formId",
"type": "Int",
"arity": "Optional"
},
{
"tag": "CreateModel",
"model": "FormSubmission"
},
{
"tag": "CreateField",
"model": "FormSubmission",
"field": "answers",
"type": "Answer",
"arity": "List"
},
{
"tag": "CreateField",
"model": "FormSubmission",
"field": "date",
"type": "DateTime",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "FormSubmission",
"field": "date"
},
"directive": "default"
}
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "FormSubmission",
"field": "date"
},
"directive": "default"
},
"argument": "",
"value": "now()"
},
{
"tag": "CreateField",
"model": "FormSubmission",
"field": "id",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "FormSubmission",
"field": "id"
},
"directive": "id"
}
},
{
"tag": "CreateField",
"model": "FormSubmission",
"field": "user",
"type": "User",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "FormSubmission",
"field": "user"
},
"directive": "relation"
}
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "FormSubmission",
"field": "user"
},
"directive": "relation"
},
"argument": "fields",
"value": "[userId]"
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "FormSubmission",
"field": "user"
},
"directive": "relation"
},
"argument": "references",
"value": "[id]"
},
{
"tag": "CreateField",
"model": "FormSubmission",
"field": "Form",
"type": "Form",
"arity": "Optional"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "FormSubmission",
"field": "Form"
},
"directive": "relation"
}
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "FormSubmission",
"field": "Form"
},
"directive": "relation"
},
"argument": "fields",
"value": "[formId]"
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "FormSubmission",
"field": "Form"
},
"directive": "relation"
},
"argument": "references",
"value": "[id]"
},
{
"tag": "CreateField",
"model": "FormSubmission",
"field": "formId",
"type": "Int",
"arity": "Optional"
},
{
"tag": "CreateField",
"model": "FormSubmission",
"field": "userId",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateModel",
"model": "Answer"
},
{
"tag": "CreateField",
"model": "Answer",
"field": "id",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "Answer",
"field": "id"
},
"directive": "id"
}
},
{
"tag": "CreateField",
"model": "Answer",
"field": "userInput",
"type": "String",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "Answer",
"field": "userChoise",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "Answer",
"field": "type",
"type": "AnswerType",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "Answer",
"field": "FormSubmission",
"type": "FormSubmission",
"arity": "Optional"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "Answer",
"field": "FormSubmission"
},
"directive": "relation"
}
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "Answer",
"field": "FormSubmission"
},
"directive": "relation"
},
"argument": "fields",
"value": "[formSubmissionId]"
},
{
"tag": "CreateArgument",
"location": {
"tag": "Directive",
"path": {
"tag": "Field",
"model": "Answer",
"field": "FormSubmission"
},
"directive": "relation"
},
"argument": "references",
"value": "[id]"
},
{
"tag": "CreateField",
"model": "Answer",
"field": "formSubmissionId",
"type": "Int",
"arity": "Optional"
},
{
"tag": "CreateModel",
"model": "User"
},
{
"tag": "CreateField",
"model": "User",
"field": "id",
"type": "Int",
"arity": "Required"
},
{
"tag": "CreateDirective",
"location": {
"path": {
"tag": "Field",
"model": "User",
"field": "id"
},
"directive": "id"
}
},
{
"tag": "CreateField",
"model": "User",
"field": "name",
"type": "String",
"arity": "Required"
},
{
"tag": "CreateField",
"model": "User",
"field": "forms",
"type": "Form",
"arity": "List"
},
{
"tag": "CreateField",
"model": "User",
"field": "formsSubmissions",
"type": "FormSubmission",
"arity": "List"
}
]
}