RPStep class

The base class for steps which can compose a task.

Each RPStep object represents one logical piece of data entry or activity in a larger task. Whether your app is giving instructions, presenting a form or survey, obtaining consent, or running an active task, everything in the Research Package framework is a collection of steps (RPStep objects), which together form a task (an RPTask object)

  • @JsonSerializable(fieldRename: FieldRename.snake, includeIfNull: false)


RPStep({required String identifier, required String title, String? text, bool optional = false})
Create a RPStep object with a unique identifier, a title, and a text to be displayed.
RPStep.fromJson(Map<String, dynamic> json)


$type String?
The runtime class name (type) of this object. Used for deserialization from JSON objects.
getter/setter pairinherited
fromJsonFunction Function
The function which can convert a JSON string to an object of this type.
no setteroverride
hashCode int
The hash code for this object.
no setterinherited
identifier String
A unique identifier of the Step. This identifier connects the step to its result (RPResult) object.
jsonType String
Return the __type to be used for JSON serialization of this class. Default is runtimeType. Only specify this if you need another type.
no setterinherited
optional bool
Can this step be skipped? If so, the result for the step will be null.
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
stepWidget Widget?
The widget (UI representation) of the step.
no setter
text String?
The text of the Step. Different types of Steps are using the text text differently.
getter/setter pair
timer Timer?
getter/setter pair
title String
The title text. Different types of Steps are using the title text differently.
getter/setter pair


noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
toJson() Map<String, dynamic>
Return a JSON encoding of this object.
toString() String
A string representation of this object.


operator ==(Object other) bool
The equality operator.