-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
- Survey / SurveyVersions approach
- Models
- Survey
- Id: hashkey
- Title
- ownerId: string
- currentPublishedVersionId: versionId
- draftVersionId: versionId
- SurveyVersion
- surveyId: hashkey (unique to each survey version)
- versionId: rangeKey (string representing a number an iso timestamp)
- questions: JSON (surveyjs data)
- Survey
- GraphQL API
- Objects
- Survey object
- id - uuid
- title
- ownerId
- currentPublishedVersionId
- draftVersionId
- currentPublishedVersion => SurveyVersion object
- draftVersion => SurveyVersion object
- versions => list of survey versions
- SurveyVersion object
- surveyId
- versionId
- questions
- Survey object
- Query
- survey(id)- gets a survey
- surveys(state: ‘published’ | ‘draft’ |’all’ ) - all surveys
- Mutations
- saveSurvey
- If id provided, then create Survey and SurveyVersion (new draft)
- Otherwise, provide id => saved questions overwrite draft SurveyVersion
- publishSurvey (surveyId)
- deleteSurvey
- unpublishSurvey (surveyId) ? - not yet
- saveSurvey
- Objects
- Models
Metadata
Metadata
Assignees
Labels
No labels