| full_width  |  | Boolean
 When set to true, the field will take up all the horizontal space allowed by its container. Defaults totrue. | 
| name  |  | String
 Value for the HTML name attribute. | 
| id  |  | String
 Value for the HTML id attribute. | 
| class  |  | String
 CSS classes to include in the input's HTML classattribute. Exists for compatibility with Rails form builders. | 
| classes  |  | Array
 CSS classes to include in the input's HTML classattribute. Combined with the:classargument. The list may contain strings, hashes, ornilvalues, and is automatically cleaned up by Primer'sclass_namehelper (nils, falsy entries, and blank strings are ignored). | 
| caption  |  | String
 A string describing the field and what sorts of input it expects. Displayed below the input. | 
| label  |  | String
 Label text displayed above the input. | 
| visually_hide_label  |  | Boolean
 When set to true, hides the label. Although the label will be hidden visually, it will still be visible to screen readers. | 
| disabled  |  | Boolean
 When set to true, the input will not accept keyboard or mouse input. | 
| hidden  |  | Boolean
 When set to true, visually hides the field. | 
| invalid  |  | Boolean
 If set to true, the input will be rendered with a red border. Implied ifvalidation_messageis truthy. This option is set totrueautomatically if the model object associated with the form reports that the input is invalid via Rails validations. It is provided for cases where the form does not have an associated model. If the input is invalid as determined by Rails validations, settinginvalidtofalsewill have no effect. | 
| validation_message  |  | String
 A string displayed between the caption and the input indicating the input's contents are invalid. This option is, by default, set to the first Rails validation message for the input (assuming the form is associated with a model object). Use validation_messageto override the default or to provide a validation message in case there is no associated model object. | 
| label_arguments  |  | Hash
 Attributes that will be passed to Rails' builder.labelmethod. These can be HTML attributes or any of the other label options Rails supports. They will appear as HTML attributes on the<label>tag. | 
| scope_name_to_model  |  | Boolean
 Default true. When set tofalse, prevents the model name from prefixing the field name. For example, if the field name ismy_field, Rails will normally emit an HTML name attribute ofmodel[my_field]. Settingscope_name_to_modeltofalsewill cause Rails to emitmy_fieldinstead. | 
| scope_id_to_model  |  | Boolean
 Default true. When set tofalse, prevents the model name from prefixing the field ID. For example, if the field name ismy_field, Rails will normally emit an HTML ID attribute ofmodel_my_field. Settingscope_id_to_modeltofalsewill cause Rails to emitmy_fieldinstead. | 
| required  |  | Boolean
 Default false. When set totrue, causes an asterisk (*) to appear next to the field's label indicating it is a required field. Note that this option explicitly does not add arequiredHTML attribute. Doing so would enable native browser validations, which are inaccessible and inconsistent with the Primer design system. | 
| aria  |  | Hash
 Key/value pairs that represent Aria attributes and their values. Eg. aria: { current: true }becomesaria-current="true". | 
| data  |  | Hash
 Key/value pairs that represent data attributes and their values. Eg. data: { foo: "bar" }becomesdata-foo="bar". | 
| system_arguments  |  | Hash
 A hash of attributes passed to the underlying Rails builder methods. These options may mean something special depending on the type of input, otherwise they are emitted as HTML attributes. See the Rails documentation for more information. In addition, the usual Primer utility arguments are accepted in system arguments. For example, passing mt: 2will add themt-2class to the input. See the Primer system arguments docs for details. |