Skip to main content

SliderResponse

Defined in: parser/types.ts:988

The SliderResponse interface is used to define the properties of a slider response. SliderResponses render as a slider input with user specified steps. For example, you could have steps of 0, 50, and 100.

{
"id": "q-slider",
"prompt": "How are you feeling?",
"location": "aboveStimulus",
"type": "slider",
"default": 50,
"options": [
{
"label": "Bad",
"value": 0
},
{
"label": "OK",
"value": 50
},
{
"label": "Good",
"value": 100
}
]
}

Extends​

Properties​

PropertyTypeDescriptionInherited fromDefined in
default?numberThe default value of the response. Specify a numeric value that falls within the slider range.-parser/types.ts:993
delay?numberDelay in milliseconds before an element activates. Must be non-negative; defaults to 0 meaning the element is always active. Minimum 0BaseResponse.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 belowStimulusBaseResponse.locationparser/types.ts:498
onSubmit?GlobalStoreAction[]Apply these actions to the final submitted answer, in declared order.BaseResponse.onSubmitparser/types.ts:484
optionsNumberOption[]This defines the steps in the slider and the extent of the slider as an array of objects that have a label and a value.-parser/types.ts:991
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
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?unknownYou can provide a required value, which makes it so a participant has to answer with that value.BaseResponse.requiredValueparser/types.ts:500
secondaryText?stringThe secondary text that is displayed to the participant under the prompt. This does not accept markdown.BaseResponse.secondaryTextparser/types.ts:492
smeqStyle?booleanWhether to render the slider with a SMEQ style. Defaults to false.-parser/types.ts:1007
snap?booleanWhether the slider should snap between values. Defaults to false. Slider snapping disables the label above the handle.-parser/types.ts:997
spacing?numberThe spacing between the ticks. If not provided, the spacing is the largest power of 10 smaller than the slider range.-parser/types.ts:1001
startingValue?numberThe starting value of the slider. Defaults to the minimum value.-parser/types.ts:995
step?numberThe step value of the slider. If not provided (and snap not enabled), the step value is calculated as the range of the slider divided by 100.-parser/types.ts:999
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
tlxStyle?booleanWhether to render the slider with a NASA-tlx style. Defaults to false.-parser/types.ts:1005
type"slider"--parser/types.ts:989
visibleIf?ResponseVisibilityConditionShow this response only when another response in this component satisfies the condition.BaseResponse.visibleIfparser/types.ts:518
withBar?booleanWhether to render the slider with a bar to the left. Defaults to true.-parser/types.ts:1003
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