Inputs

Inputs

Schema inputs is a key(id) - value(config) mapping of the parameters that a workflow or tool expects in order to run successfully. Inputs can be defined as either Static Inputs or Field Inputs.

Table Of Contents

  • Static Inputs
  • Field Inputs
  • 🚧 Reserved Keywords 🚧
  • Text Input
  • Integer Input
  • Text Area Input
  • Dropdown Input
  • Multi-select Input (allows selecting multiple options, submits comma-separated string)
  • Radio Input (similar to Dropdown, but better if less options)
  • Checkbox Input
  • Range Input (submits comma-separated string of numbers)
  • File Input
  • Directory Input
  • Spreadsheet Input (See subpage for more details)
  • Genome Inputs (See subpage for more details on Genome Inputs)
  • Genome ID Input (*Requires Genomes Bucket Input)
  • Genomes Bucket Input (*Required for Genome ID Input)
  • Genome Annotation Version Input
  • Genome Tax ID Input (always disabled, usually hidden if necessary)
  • Genome SNPEFF Version Input (always disabled, usually hidden if necessary)

Static Inputs

A Static Input represents a parameter that needs to be passed to a workflow or toolbox, but that does not require a full “field” configuration because its value will never be provided by the user. Instead its configuration only consists of a value property.

Example:

"myStaticInput": {
	"value": "myStaticValue"
}

While it may seem that a static input should just be defined during the run itself, they can be very handy when building dynamic forms using conditionals, where the user should never interact with this value, but its value should change depending on other values provided.

Field Inputs

Field inputs represent a run parameter whose value can be provided by a user. The Field Input configuration defines the type of input to display in the form in the web application, as well as labels, help texts, default values, and various forms of validation, depending on the field.

Every Field Input contains the following properties: title, hidden, required, description, and help_text

A note about description and help_text:

  • Descriptions should be a concise description of parameter as it will be displayed immediately below the input in the form. These can be dynamically updated using conditionals.
  • Help texts can be more verbose explanations of the parameters as these will be displayed in a collapsable help drawer to the right of the form. These cannot be dynamically updated using conditionals, so it maybe helpful to provide insight here as to why an input might change.

🚧 Reserved Keywords 🚧

⚠️
Input ID “genomes_bucket” is a reserved keyword and will always be treated as a Genomes Bucket Input, be careful not to use that input ID for other types of inputs.

Here is a list of supported Field Inputs:

Text Input

image

Integer Input

"myIntegerInput": {
	// required properties
	"title": "My Integer Input",
	"type": "integer",
	// optional properties
	"hidden": false,
	"required": true,
	"description": "Here is a description",
	"help_text": "Here are more details....",
	"default": 20,
	"minimum": 0,
	"maximum": 100
}
image

Text Area Input

image

Dropdown Input

image

Multi-select Input (allows selecting multiple options, submits comma-separated string)

image

Radio Input (similar to Dropdown, but better if less options)

image

Checkbox Input

"myCheckboxInput": {
	// required properties
	"title": "My Checkbox Input",
	"type": "boolean",
	// optional properties
	"hidden": false,
	"required": true,
	"description": "Here is a description",
	"help_text": "Here are more details....",
	"default": true
}
image

Range Input (submits comma-separated string of numbers)

image

File Input

image

Directory Input

If filetype is specified, only directories containing a file of the specified type are allowed.

image

Spreadsheet Input (See subpage for more details)

Spreadsheet InputSpreadsheet Input
image

Genome Inputs (See subpage for more details on Genome Inputs)

Genome InputsGenome Inputs

Genome ID Input (*Requires Genomes Bucket Input)

image

Genomes Bucket Input (*Required for Genome ID Input)

The genomes bucket input is required if using a Genome ID Input as a hidden configuration input parameter.

⚠️
Input ID “genomes_bucket” is a reserved keyword and will always be treated as a format “genomes_bucket”, be careful not to use that input ID for other types of inputs.

Genome Annotation Version Input

image

Genome Tax ID Input (always disabled, usually hidden if necessary)

image

Genome SNPEFF Version Input (always disabled, usually hidden if necessary)

image