Module: GOVUKDesignSystemFormBuilder
- Includes:
- ActiveSupport::Configurable
- Defined in:
- lib/govuk_design_system_formbuilder.rb,
lib/govuk_design_system_formbuilder/base.rb,
lib/govuk_design_system_formbuilder/proxy.rb,
lib/govuk_design_system_formbuilder/builder.rb,
lib/govuk_design_system_formbuilder/version.rb,
lib/govuk_design_system_formbuilder/traits/hint.rb,
lib/govuk_design_system_formbuilder/traits/error.rb,
lib/govuk_design_system_formbuilder/traits/input.rb,
lib/govuk_design_system_formbuilder/traits/label.rb,
lib/govuk_design_system_formbuilder/elements/date.rb,
lib/govuk_design_system_formbuilder/elements/file.rb,
lib/govuk_design_system_formbuilder/elements/hint.rb,
lib/govuk_design_system_formbuilder/elements/null.rb,
lib/govuk_design_system_formbuilder/traits/select.rb,
lib/govuk_design_system_formbuilder/builder_helper.rb,
lib/govuk_design_system_formbuilder/elements/label.rb,
lib/govuk_design_system_formbuilder/traits/caption.rb,
lib/govuk_design_system_formbuilder/elements/legend.rb,
lib/govuk_design_system_formbuilder/elements/select.rb,
lib/govuk_design_system_formbuilder/elements/submit.rb,
lib/govuk_design_system_formbuilder/elements/caption.rb,
lib/govuk_design_system_formbuilder/containers/radios.rb,
lib/govuk_design_system_formbuilder/elements/password.rb,
lib/govuk_design_system_formbuilder/elements/text_area.rb,
lib/govuk_design_system_formbuilder/containers/fieldset.rb,
lib/govuk_design_system_formbuilder/elements/inputs/url.rb,
lib/govuk_design_system_formbuilder/traits/html_classes.rb,
lib/govuk_design_system_formbuilder/traits/localisation.rb,
lib/govuk_design_system_formbuilder/traits/supplemental.rb,
lib/govuk_design_system_formbuilder/elements/inputs/text.rb,
lib/govuk_design_system_formbuilder/traits/fieldset_item.rb,
lib/govuk_design_system_formbuilder/containers/form_group.rb,
lib/govuk_design_system_formbuilder/elements/inputs/email.rb,
lib/govuk_design_system_formbuilder/elements/inputs/phone.rb,
lib/govuk_design_system_formbuilder/containers/check_boxes.rb,
lib/govuk_design_system_formbuilder/elements/error_message.rb,
lib/govuk_design_system_formbuilder/elements/error_summary.rb,
lib/govuk_design_system_formbuilder/elements/inputs/number.rb,
lib/govuk_design_system_formbuilder/traits/collection_item.rb,
lib/govuk_design_system_formbuilder/traits/html_attributes.rb,
lib/govuk_design_system_formbuilder/containers/button_group.rb,
lib/govuk_design_system_formbuilder/containers/supplemental.rb,
lib/govuk_design_system_formbuilder/elements/check_boxes/label.rb,
lib/govuk_design_system_formbuilder/elements/collection_select.rb,
lib/govuk_design_system_formbuilder/elements/radios/collection.rb,
lib/govuk_design_system_formbuilder/refinements/prefixable_array.rb,
lib/govuk_design_system_formbuilder/containers/check_boxes_fieldset.rb,
lib/govuk_design_system_formbuilder/elements/check_boxes/collection.rb,
lib/govuk_design_system_formbuilder/containers/radio_buttons_fieldset.rb,
lib/govuk_design_system_formbuilder/elements/radios/fieldset_radio_button.rb,
lib/govuk_design_system_formbuilder/elements/check_boxes/fieldset_check_box.rb,
lib/govuk_design_system_formbuilder/elements/radios/collection_radio_button.rb,
lib/govuk_design_system_formbuilder/elements/check_boxes/collection_check_box.rb
Defined Under Namespace
Modules: Builder, BuilderHelper, Containers, Elements, PrefixableArray, Traits Classes: Base, FormBuilder, FormBuilderProxy, Proxy
Defaults collapse
- DEFAULTS =
Default form builder configuration
-
:brandsets the value used to prefix all classes, used to allow the builder to be branded for alternative (similar) design systems. -
:default_caption_sizecontrols the default size of caption text. Can be eitherxl,lorm. -
:default_legend_sizecontrols the default size of legend text. Can be eitherxl,l,mors. -
:default_legend_tagcontrols the default tag that legends are wrapped in. Defaults tonil. -
:default_submit_button_textsets the value assigned togovuk_submit, defaults to ‘Continue’. -
:default_date_segmentsallows the date segments used by Rails’ multiparameter attributes to be configured. This is useful if you want to override the standard behaviour where Rails tries to cast the values into aDate. Defaults to { day: ‘3i’, month: ‘2i’, year: ‘1i’ } -
:default_date_segment_namesallows the individual date field labels to have their default values set. Defaults to { day: ‘Day’, month: ‘Month’, year: ‘Year’ } -
:default_radio_divider_textsets the text automatically added to the radio button divider, defaults to ‘or’ -
:default_check_box_divider_textsets the text automatically added to the checkbox divider, defaults to ‘or’ -
:default_collection_check_boxes_include_hiddencontrols whether or not a hidden field is added when rendering a collection of check boxes -
:default_collection_radio_buttons_include_hiddencontrols whether or not a hidden field is added when rendering a collection of radio buttons -
:default_collection_radio_buttons_auto_bold_labelswill automatically make labels on #govuk_collection_radio_buttons bold when a:hint_methodis present. The default can be overridden using thebold_labels:argument. The default value is ‘true’. -
:default_error_message_prefixsets the prefix text inserted before inline errors added to form inputs. It defaults to ‘Error’. -
:default_error_summary_titlesets the text used in error summary blocks. As per the GOV.UK Design System spec, it defaults to ‘There is a problem’. -
:default_error_summary_presenterthe class that’s instantiated when rendering an error summary and formats the messages for each attribute -
:default_error_summary_error_order_methodis the method that the library will check for on the bound object to see whether or not to try ordering the error messages -
:default_error_summary_turbo_prefixis used to disable turbo/turbolinks from handling clicks on links in the error summary. When it’s a string (eg, turbo), that will result in links with the attribute ‘data-turbo=false’. When nil, no data attribute will be added. Defaults to turbo since Rails 7, change to ‘turbolinks’ for Rails 6.1 -
:localisation_schema_fallbacksets the prefix elements for the array used to build the localisation string. The final two elements are always are the object name and attribute name. The special value__context__, is used as a placeholder for the context (label, fieldset or hint). -
:localisation_schema_legend,:localisation_schema_hintand:localisation_schema_labeleach override the schema root for their particular context, allowing them to be independently customised. -
:enable_loggercontrols whether or not the library will emit log messages via Rails.logger.warn, defaults totrue -
:trust_error_messagescall html_safe on error messages before they’re rendered. This allows formatting markup to be used to change the display of the error message. Defaults tofalse -
:enable_nested_localisationscan the object name before building the localisation schema path to see if it’s nested or not. The old behaviour can be restored by setting this option tofalse. Defaults totrue
-
{ brand: 'govuk', default_legend_size: 'm', default_legend_tag: nil, default_caption_size: 'm', default_submit_button_text: 'Continue', default_date_segments: { day: '3i', month: '2i', year: '1i' }, default_date_segment_names: { day: 'Day', month: 'Month', year: 'Year' }, default_radio_divider_text: 'or', default_check_box_divider_text: 'or', default_error_message_prefix: 'Error', default_error_summary_title: 'There is a problem', default_error_summary_presenter: Presenters::ErrorSummaryPresenter, default_error_summary_error_order_method: nil, default_error_summary_turbo_prefix: 'turbo', default_collection_check_boxes_include_hidden: true, default_collection_radio_buttons_include_hidden: true, default_collection_radio_buttons_auto_bold_labels: true, default_submit_validate: false, default_show_password_text: "Show", default_hide_password_text: "Hide", default_show_password_aria_label_text: "Show password", default_hide_password_aria_label_text: "Hide password", default_password_shown_announcement_text: "Your password is visible", default_password_hidden_announcement_text: "Your password is hidden", localisation_schema_fallback: %i(helpers __context__), localisation_schema_label: nil, localisation_schema_hint: nil, localisation_schema_legend: nil, localisation_schema_caption: nil, enable_logger: true, trust_error_messages: false, # temporarily allow the new nested localisation functionality to be # disabled enable_nested_localisation: true, }.freeze
Constant Summary collapse
- VERSION =
'5.13.0'.freeze
Defaults collapse
-
.configure {|config| ... } ⇒ Object
Configure the form builder in the usual manner.
-
.reset! ⇒ Object
Resets each of the configurable values to its default.
Class Method Details
.configure {|config| ... } ⇒ Object
Configure the form builder in the usual manner. All of the keys in DEFAULTS can be configured as per the example below
148 149 150 |
# File 'lib/govuk_design_system_formbuilder.rb', line 148 def configure yield(config) end |
.reset! ⇒ Object
This method is only really intended for use to clean up during testing
Resets each of the configurable values to its default
156 157 158 159 160 |
# File 'lib/govuk_design_system_formbuilder.rb', line 156 def reset! configure do |c| DEFAULTS.each { |k, v| c.send("#{k}=", v) } end end |