Skip to main content

DateResponse

Defined in: parser/types.ts:621

The DateResponse interface defines a date entered directly or selected with a date picker, or a month or year selected with the corresponding picker. Values are stored as MM/DD/YYYY, MM/YYYY, or YYYY strings based on options. Supported years range from 0100 through 9999.

{
"id": "q-date",
"prompt": "Select a date.",
"location": "aboveStimulus",
"type": "date",
"options": "date",
"default": "08/21/2026",
"min": "08/01/2026",
"max": "08/31/2026",
"placeholder": "MM/DD/YYYY"
}

Extends​

Properties​

PropertyTypeDescriptionOverridesInherited fromDefined in
default?stringThe default value, using the format selected by options. Years must be between 0100 and 9999.--parser/types.ts:628
delay?numberDelay in milliseconds before an element activates. Must be non-negative; defaults to 0 meaning the element is always active. Minimum 0-BaseResponse.delayparser/types.ts:520
excludeFromRandomization?booleanExclude response from randomization. If present, will override the responseOrder randomization setting in the components. Defaults to false.-BaseResponse.excludeFromRandomizationparser/types.ts:516
hidden?booleanControls whether the response is hidden.-BaseResponse.hiddenparser/types.ts:506
idstringThe id of the response. This is used to identify the response in the data file.-BaseResponse.idparser/types.ts:486
infoText?stringThe description that is displayed when the participant hovers over the response. This does not accept markdown.-BaseResponse.infoTextparser/types.ts:494
location?ConfigResponseBlockLocationControls the response location. These might be the same for all responses, or differ across responses. Defaults to belowStimulus-BaseResponse.locationparser/types.ts:498
max?stringThe latest value accepted, using the format selected by options. Years must be between 0100 and 9999.--parser/types.ts:634
min?stringThe earliest value accepted, using the format selected by options. Years must be between 0100 and 9999.--parser/types.ts:632
onSubmit?GlobalStoreAction[]Apply these actions to the final submitted answer, in declared order.-BaseResponse.onSubmitparser/types.ts:484
options?"date" | "month" | "year"Determines whether participants enter or select a date, or select a month or year with a picker. Defaults to date.--parser/types.ts:624
paramCapture?stringUse to capture querystring parameters in answers such as participant_name. See the examples for how this is used, but prefer uiConfig.urlParticipantIdParam if you are capturing a participant ID.-BaseResponse.paramCaptureparser/types.ts:504
path?stringPath under src/public/ to response code. Custom responses require a default React component. Any response code module may export validate(value, values, response) to return an error message, a boolean validity result, or null for valid input. It may separately export score(value, values, response, expected?) to return a boolean or a score from 0 to 1; null uses ordinary correct-answer matching. expected is the configured correct answer when correctness is checked.-BaseResponse.pathparser/types.ts:488
placeholder?stringThe placeholder text displayed in the input. Defaults to the format used by options.--parser/types.ts:626
promptstringThe prompt that is displayed to the participant. You can use markdown here to render images, links, etc.-BaseResponse.promptparser/types.ts:490
required?booleanControls whether the response is required to be answered. Defaults to true.-BaseResponse.requiredparser/types.ts:496
requiredLabel?stringYou can provide a required label, which makes it so a participant has to answer with a response that matches label.-BaseResponse.requiredLabelparser/types.ts:502
requiredValue?stringThe value required for a correct response, using the format selected by options. Years must be between 0100 and 9999.BaseResponse.requiredValue-parser/types.ts:630
secondaryText?stringThe secondary text that is displayed to the participant under the prompt. This does not accept markdown.-BaseResponse.secondaryTextparser/types.ts:492
style?StylesYou can set styles here, using React CSSProperties, for example: {"width": 100} or {"width": "50%"}-BaseResponse.styleparser/types.ts:514
stylesheetPath?stringThe path to the external stylesheet file.-BaseResponse.stylesheetPathparser/types.ts:512
type"date"---parser/types.ts:622
visibleIf?ResponseVisibilityConditionShow this response only when another response in this component satisfies the condition.-BaseResponse.visibleIfparser/types.ts:518
withDivider?booleanRenders the response with a trailing divider. If present, will override the divider setting in the components or uiConfig.-BaseResponse.withDividerparser/types.ts:508
withDontKnow?booleanRenders the response with an option for "I don't know". This counts as a completed answer for the validation.-BaseResponse.withDontKnowparser/types.ts:510