diff --git a/config/sync/core.entity_form_display.node.digital_form.default.yml b/config/sync/core.entity_form_display.node.digital_form.default.yml index c4f6558f42..8b3a11a5b7 100644 --- a/config/sync/core.entity_form_display.node.digital_form.default.yml +++ b/config/sync/core.entity_form_display.node.digital_form.default.yml @@ -5,15 +5,18 @@ dependencies: config: - field.field.node.digital_form.field_administration - field.field.node.digital_form.field_chapters + - field.field.node.digital_form.field_expiration_date - field.field.node.digital_form.field_last_saved_by_an_editor - field.field.node.digital_form.field_meta_tags - field.field.node.digital_form.field_omb_number + - field.field.node.digital_form.field_respondent_burden - field.field.node.digital_form.field_va_form_number - node.type.digital_form - workflows.workflow.editorial module: - change_labels - content_moderation + - datetime - field_group - limited_field_widgets - no_table_drag @@ -29,7 +32,7 @@ third_party_settings: label: 'Editorial Workflow' region: content parent_name: '' - weight: 6 + weight: 7 format_type: fieldset format_settings: classes: '' @@ -38,6 +41,25 @@ third_party_settings: description: '' required_fields: true description_display: after + group_omb_info: + children: + - field_respondent_burden + - field_omb_number + - field_expiration_date + label: 'OMB info' + region: content + parent_name: '' + weight: 4 + format_type: fieldset + format_settings: + classes: '' + show_empty_fields: false + id: '' + label_as_html: false + description: 'Text required by the Office of Management and Budget (OMB) to be present on all forms.' + required_fields: true + open: true + description_display: after id: node.digital_form.default targetEntityType: node bundle: digital_form @@ -45,7 +67,7 @@ mode: default content: field_chapters: type: paragraphs_browser - weight: 5 + weight: 6 region: content settings: title: Step @@ -78,6 +100,12 @@ content: add_another: '' no_table_drag: no_table_drag: false + field_expiration_date: + type: datetime_default + weight: 9 + region: content + settings: { } + third_party_settings: { } field_last_saved_by_an_editor: type: datetime_timestamp weight: 2 @@ -86,12 +114,19 @@ content: third_party_settings: { } field_omb_number: type: string_textfield - weight: 4 + weight: 8 region: content settings: size: 9 placeholder: XXXX-XXXX third_party_settings: { } + field_respondent_burden: + type: number + weight: 7 + region: content + settings: + placeholder: '' + third_party_settings: { } field_va_form_number: type: string_textfield weight: 1 diff --git a/config/sync/core.entity_form_display.paragraph.digital_form_identification_info.default.yml b/config/sync/core.entity_form_display.paragraph.digital_form_identification_info.default.yml new file mode 100644 index 0000000000..2fe15eca64 --- /dev/null +++ b/config/sync/core.entity_form_display.paragraph.digital_form_identification_info.default.yml @@ -0,0 +1,40 @@ +uuid: f6c77a23-cd2f-4a5b-9589-4a3ab27cab26 +langcode: en +status: true +dependencies: + config: + - field.field.paragraph.digital_form_identification_info.field_include_veteran_s_service + - field.field.paragraph.digital_form_identification_info.field_title + - paragraphs.paragraphs_type.digital_form_identification_info + module: + - textfield_counter +id: paragraph.digital_form_identification_info.default +targetEntityType: paragraph +bundle: digital_form_identification_info +mode: default +content: + field_include_veteran_s_service: + type: boolean_checkbox + weight: 2 + region: content + settings: + display_label: true + third_party_settings: { } + field_title: + type: string_textfield_with_counter + weight: 1 + region: content + settings: + size: 60 + placeholder: '' + use_field_maxlength: false + maxlength: 0 + counter_position: after + js_prevent_submit: true + count_only_mode: false + count_html_characters: true + textcount_status_message: 'Maxlength: @maxlength
Used: @current_length
Remaining: @remaining_count' + third_party_settings: { } +hidden: + created: true + status: true diff --git a/config/sync/core.entity_view_display.node.digital_form.default.yml b/config/sync/core.entity_view_display.node.digital_form.default.yml index e94f3f02b4..66dee6e524 100644 --- a/config/sync/core.entity_view_display.node.digital_form.default.yml +++ b/config/sync/core.entity_view_display.node.digital_form.default.yml @@ -5,14 +5,37 @@ dependencies: config: - field.field.node.digital_form.field_administration - field.field.node.digital_form.field_chapters + - field.field.node.digital_form.field_expiration_date - field.field.node.digital_form.field_last_saved_by_an_editor - field.field.node.digital_form.field_meta_tags - field.field.node.digital_form.field_omb_number + - field.field.node.digital_form.field_respondent_burden - field.field.node.digital_form.field_va_form_number - node.type.digital_form module: + - datetime - entity_reference_revisions + - field_group - user +third_party_settings: + field_group: + group_omb_info: + children: + - field_respondent_burden + - field_omb_number + - field_expiration_date + label: 'OMB info' + parent_name: '' + region: content + weight: 1 + format_type: details + format_settings: + classes: '' + show_empty_fields: false + id: '' + label_as_html: false + open: true + description: '' id: node.digital_form.default targetEntityType: node bundle: digital_form @@ -25,15 +48,33 @@ content: view_mode: default link: '' third_party_settings: { } - weight: 2 + weight: 3 + region: content + field_expiration_date: + type: datetime_default + label: inline + settings: + timezone_override: '' + format_type: short_date_no_time + third_party_settings: { } + weight: 7 region: content field_omb_number: type: string - label: above + label: inline settings: link_to_entity: false third_party_settings: { } - weight: 1 + weight: 6 + region: content + field_respondent_burden: + type: number_integer + label: inline + settings: + thousand_separator: '' + prefix_suffix: true + third_party_settings: { } + weight: 5 region: content field_va_form_number: type: string diff --git a/config/sync/core.entity_view_display.node.digital_form.external_content.yml b/config/sync/core.entity_view_display.node.digital_form.external_content.yml index fd586c5932..268e0c7c14 100644 --- a/config/sync/core.entity_view_display.node.digital_form.external_content.yml +++ b/config/sync/core.entity_view_display.node.digital_form.external_content.yml @@ -6,9 +6,11 @@ dependencies: - core.entity_view_mode.node.external_content - field.field.node.digital_form.field_administration - field.field.node.digital_form.field_chapters + - field.field.node.digital_form.field_expiration_date - field.field.node.digital_form.field_last_saved_by_an_editor - field.field.node.digital_form.field_meta_tags - field.field.node.digital_form.field_omb_number + - field.field.node.digital_form.field_respondent_burden - field.field.node.digital_form.field_va_form_number - node.type.digital_form module: @@ -52,8 +54,10 @@ content: hidden: field_administration: true field_chapters: true + field_expiration_date: true field_last_saved_by_an_editor: true field_meta_tags: true field_omb_number: true + field_respondent_burden: true langcode: true search_api_excerpt: true diff --git a/config/sync/core.entity_view_display.node.digital_form.teaser.yml b/config/sync/core.entity_view_display.node.digital_form.teaser.yml index 0788c646f4..d2dc0fb2d7 100644 --- a/config/sync/core.entity_view_display.node.digital_form.teaser.yml +++ b/config/sync/core.entity_view_display.node.digital_form.teaser.yml @@ -6,9 +6,11 @@ dependencies: - core.entity_view_mode.node.teaser - field.field.node.digital_form.field_administration - field.field.node.digital_form.field_chapters + - field.field.node.digital_form.field_expiration_date - field.field.node.digital_form.field_last_saved_by_an_editor - field.field.node.digital_form.field_meta_tags - field.field.node.digital_form.field_omb_number + - field.field.node.digital_form.field_respondent_burden - field.field.node.digital_form.field_va_form_number - node.type.digital_form module: @@ -44,9 +46,11 @@ content: hidden: field_administration: true field_chapters: true + field_expiration_date: true field_last_saved_by_an_editor: true field_meta_tags: true field_omb_number: true + field_respondent_burden: true field_va_form_number: true langcode: true search_api_excerpt: true diff --git a/config/sync/core.entity_view_display.paragraph.digital_form_identification_info.default.yml b/config/sync/core.entity_view_display.paragraph.digital_form_identification_info.default.yml new file mode 100644 index 0000000000..720d7cdef5 --- /dev/null +++ b/config/sync/core.entity_view_display.paragraph.digital_form_identification_info.default.yml @@ -0,0 +1,34 @@ +uuid: ee8a8314-d05e-41c9-a1d4-8f79e7f32a0c +langcode: en +status: true +dependencies: + config: + - field.field.paragraph.digital_form_identification_info.field_include_veteran_s_service + - field.field.paragraph.digital_form_identification_info.field_title + - paragraphs.paragraphs_type.digital_form_identification_info +id: paragraph.digital_form_identification_info.default +targetEntityType: paragraph +bundle: digital_form_identification_info +mode: default +content: + field_include_veteran_s_service: + type: boolean + label: above + settings: + format: default + format_custom_false: '' + format_custom_true: '' + third_party_settings: { } + weight: 1 + region: content + field_title: + type: string + label: hidden + settings: + link_to_entity: false + third_party_settings: { } + weight: 0 + region: content +hidden: + breadcrumbs: true + search_api_excerpt: true diff --git a/config/sync/core.entity_view_display.paragraph.digital_form_identification_info.user_guides.yml b/config/sync/core.entity_view_display.paragraph.digital_form_identification_info.user_guides.yml new file mode 100644 index 0000000000..b7f6928d15 --- /dev/null +++ b/config/sync/core.entity_view_display.paragraph.digital_form_identification_info.user_guides.yml @@ -0,0 +1,26 @@ +uuid: b90e31e0-3a2b-41b1-84c8-77f99240339b +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.paragraph.user_guides + - field.field.paragraph.digital_form_identification_info.field_include_veteran_s_service + - field.field.paragraph.digital_form_identification_info.field_title + - paragraphs.paragraphs_type.digital_form_identification_info +id: paragraph.digital_form_identification_info.user_guides +targetEntityType: paragraph +bundle: digital_form_identification_info +mode: user_guides +content: + field_title: + type: string + label: hidden + settings: + link_to_entity: false + third_party_settings: { } + weight: 0 + region: content +hidden: + breadcrumbs: true + field_include_veteran_s_service: true + search_api_excerpt: true diff --git a/config/sync/core.entity_view_display.paragraph.digital_form_name_and_date_of_bi.default.yml b/config/sync/core.entity_view_display.paragraph.digital_form_name_and_date_of_bi.default.yml index 2ab04745a8..5ef650cf69 100644 --- a/config/sync/core.entity_view_display.paragraph.digital_form_name_and_date_of_bi.default.yml +++ b/config/sync/core.entity_view_display.paragraph.digital_form_name_and_date_of_bi.default.yml @@ -30,4 +30,5 @@ content: weight: 0 region: content hidden: + breadcrumbs: true search_api_excerpt: true diff --git a/config/sync/field.field.node.digital_form.field_chapters.yml b/config/sync/field.field.node.digital_form.field_chapters.yml index 337ee74e17..0742b2ede9 100644 --- a/config/sync/field.field.node.digital_form.field_chapters.yml +++ b/config/sync/field.field.node.digital_form.field_chapters.yml @@ -5,6 +5,7 @@ dependencies: config: - field.storage.node.field_chapters - node.type.digital_form + - paragraphs.paragraphs_type.digital_form_identification_info - paragraphs.paragraphs_type.digital_form_name_and_date_of_bi module: - entity_reference_revisions @@ -27,46 +28,50 @@ settings: handler_settings: target_bundles: digital_form_name_and_date_of_bi: digital_form_name_and_date_of_bi + digital_form_identification_info: digital_form_identification_info negate: 0 target_bundles_drag_drop: address: - weight: -95 + weight: -93 enabled: false alert: - weight: -94 + weight: -92 enabled: false alert_single: - weight: -93 + weight: -91 enabled: false audience_topics: - weight: -92 + weight: -90 enabled: false basic_accordion: - weight: -91 + weight: -89 enabled: false button: - weight: -90 + weight: -88 enabled: false centralized_content_descriptor: - weight: -89 + weight: -87 enabled: false checklist: - weight: -88 + weight: -86 enabled: false checklist_item: - weight: -87 + weight: -85 enabled: false collapsible_panel: - weight: -86 + weight: -84 enabled: false collapsible_panel_item: - weight: -85 + weight: -83 enabled: false contact_information: - weight: -84 + weight: -82 enabled: false + digital_form_identification_info: + weight: -94 + enabled: true digital_form_name_and_date_of_bi: - weight: -82 + weight: -95 enabled: true downloadable_file: weight: -81 diff --git a/config/sync/field.field.node.digital_form.field_expiration_date.yml b/config/sync/field.field.node.digital_form.field_expiration_date.yml new file mode 100644 index 0000000000..6fd3216212 --- /dev/null +++ b/config/sync/field.field.node.digital_form.field_expiration_date.yml @@ -0,0 +1,25 @@ +uuid: fa5b4181-5374-42bc-bcba-6c126c46e4fc +langcode: en +status: true +dependencies: + config: + - field.storage.node.field_expiration_date + - node.type.digital_form + module: + - datetime + - tmgmt_content +third_party_settings: + tmgmt_content: + excluded: false +id: node.digital_form.field_expiration_date +field_name: field_expiration_date +entity_type: node +bundle: digital_form +label: 'Expiration date' +description: 'The form expiration date.' +required: true +translatable: false +default_value: { } +default_value_callback: '' +settings: { } +field_type: datetime diff --git a/config/sync/field.field.node.digital_form.field_omb_number.yml b/config/sync/field.field.node.digital_form.field_omb_number.yml index a15aa6e557..c9ab919e57 100644 --- a/config/sync/field.field.node.digital_form.field_omb_number.yml +++ b/config/sync/field.field.node.digital_form.field_omb_number.yml @@ -16,7 +16,7 @@ entity_type: node bundle: digital_form label: 'OMB Number' description: 'Format: XXXX-XXXX' -required: false +required: true translatable: false default_value: { } default_value_callback: '' diff --git a/config/sync/field.field.node.digital_form.field_respondent_burden.yml b/config/sync/field.field.node.digital_form.field_respondent_burden.yml new file mode 100644 index 0000000000..24c9e4632d --- /dev/null +++ b/config/sync/field.field.node.digital_form.field_respondent_burden.yml @@ -0,0 +1,28 @@ +uuid: a8a630a0-e849-49b6-8a8b-799a1e85012f +langcode: en +status: true +dependencies: + config: + - field.storage.node.field_respondent_burden + - node.type.digital_form + module: + - tmgmt_content +third_party_settings: + tmgmt_content: + excluded: false +id: node.digital_form.field_respondent_burden +field_name: field_respondent_burden +entity_type: node +bundle: digital_form +label: 'Respondent burden' +description: 'How many minutes the form is expected to take.' +required: true +translatable: false +default_value: { } +default_value_callback: '' +settings: + min: 0 + max: null + prefix: '' + suffix: ' minute| minutes' +field_type: integer diff --git a/config/sync/field.field.paragraph.digital_form_identification_info.field_include_veteran_s_service.yml b/config/sync/field.field.paragraph.digital_form_identification_info.field_include_veteran_s_service.yml new file mode 100644 index 0000000000..f7b35e4458 --- /dev/null +++ b/config/sync/field.field.paragraph.digital_form_identification_info.field_include_veteran_s_service.yml @@ -0,0 +1,28 @@ +uuid: fbc94490-e23d-420b-8736-2b90f367ac0e +langcode: en +status: true +dependencies: + config: + - field.storage.paragraph.field_include_veteran_s_service + - paragraphs.paragraphs_type.digital_form_identification_info + module: + - tmgmt_content +third_party_settings: + tmgmt_content: + excluded: false +id: paragraph.digital_form_identification_info.field_include_veteran_s_service +field_name: field_include_veteran_s_service +entity_type: paragraph +bundle: digital_form_identification_info +label: "Include Veteran's Service Number?" +description: '' +required: false +translatable: false +default_value: + - + value: 0 +default_value_callback: '' +settings: + on_label: 'Yes' + off_label: 'No' +field_type: boolean diff --git a/config/sync/field.field.paragraph.digital_form_identification_info.field_title.yml b/config/sync/field.field.paragraph.digital_form_identification_info.field_title.yml new file mode 100644 index 0000000000..6d616b8e7d --- /dev/null +++ b/config/sync/field.field.paragraph.digital_form_identification_info.field_title.yml @@ -0,0 +1,26 @@ +uuid: 22f2c100-eac7-445d-8282-8653f7f7a115 +langcode: en +status: true +dependencies: + config: + - field.storage.paragraph.field_title + - paragraphs.paragraphs_type.digital_form_identification_info + module: + - tmgmt_content +third_party_settings: + tmgmt_content: + excluded: false +id: paragraph.digital_form_identification_info.field_title +field_name: field_title +entity_type: paragraph +bundle: digital_form_identification_info +label: Title +description: '' +required: true +translatable: false +default_value: + - + value: 'Identification Information' +default_value_callback: '' +settings: { } +field_type: string diff --git a/config/sync/field.storage.node.field_expiration_date.yml b/config/sync/field.storage.node.field_expiration_date.yml new file mode 100644 index 0000000000..2b41afb697 --- /dev/null +++ b/config/sync/field.storage.node.field_expiration_date.yml @@ -0,0 +1,20 @@ +uuid: aa2a5ea2-6260-4b42-921f-76ccd0f21220 +langcode: en +status: true +dependencies: + module: + - datetime + - node +id: node.field_expiration_date +field_name: field_expiration_date +entity_type: node +type: datetime +settings: + datetime_type: date +module: datetime +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/field.storage.node.field_respondent_burden.yml b/config/sync/field.storage.node.field_respondent_burden.yml new file mode 100644 index 0000000000..7f8f296225 --- /dev/null +++ b/config/sync/field.storage.node.field_respondent_burden.yml @@ -0,0 +1,20 @@ +uuid: 5412244a-523a-4734-80ed-53f8016430ff +langcode: en +status: true +dependencies: + module: + - node +id: node.field_respondent_burden +field_name: field_respondent_burden +entity_type: node +type: integer +settings: + unsigned: false + size: normal +module: core +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/field.storage.paragraph.field_include_veteran_s_service.yml b/config/sync/field.storage.paragraph.field_include_veteran_s_service.yml new file mode 100644 index 0000000000..ab7ca6f826 --- /dev/null +++ b/config/sync/field.storage.paragraph.field_include_veteran_s_service.yml @@ -0,0 +1,18 @@ +uuid: af411891-3d0b-45f3-aadf-bebec5209692 +langcode: en +status: true +dependencies: + module: + - paragraphs +id: paragraph.field_include_veteran_s_service +field_name: field_include_veteran_s_service +entity_type: paragraph +type: boolean +settings: { } +module: core +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/paragraphs.paragraphs_type.digital_form_identification_info.yml b/config/sync/paragraphs.paragraphs_type.digital_form_identification_info.yml new file mode 100644 index 0000000000..bc07a050f0 --- /dev/null +++ b/config/sync/paragraphs.paragraphs_type.digital_form_identification_info.yml @@ -0,0 +1,17 @@ +uuid: b59f56e8-4be0-48fa-8e19-79797f4aaef5 +langcode: en +status: true +dependencies: + content: + - 'file:file:8b5da18c-28a6-4cda-80d5-78e2f60b6cf7' + module: + - paragraphs_browser +third_party_settings: + paragraphs_browser: + image_path: themes/custom/vagovclaro/images/screenshots/identification-info.png +id: digital_form_identification_info +label: 'Identification Information' +icon_uuid: 8b5da18c-28a6-4cda-80d5-78e2f60b6cf7 +icon_default: 'data:image/png;base64,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' +description: "Follow this pattern whenever you need to collect a person's Social Security or VA file number for an application." +behavior_plugins: { } diff --git a/config/sync/paragraphs_browser.paragraphs_browser_type.digital_forms.yml b/config/sync/paragraphs_browser.paragraphs_browser_type.digital_forms.yml index 746c7fdd5a..95e95df58c 100644 --- a/config/sync/paragraphs_browser.paragraphs_browser_type.digital_forms.yml +++ b/config/sync/paragraphs_browser.paragraphs_browser_type.digital_forms.yml @@ -11,3 +11,4 @@ groups: weight: '0' map: digital_form_name_and_date_of_bi: patterns + digital_form_identification_info: patterns diff --git a/docroot/themes/custom/vagovclaro/images/screenshots/identification-info.png b/docroot/themes/custom/vagovclaro/images/screenshots/identification-info.png new file mode 100644 index 0000000000..68a3cb916b Binary files /dev/null and b/docroot/themes/custom/vagovclaro/images/screenshots/identification-info.png differ diff --git a/scripts/content/digital-forms.php b/scripts/content/digital-forms.php index 49d4fba3ce..a62aa21f6f 100644 --- a/scripts/content/digital-forms.php +++ b/scripts/content/digital-forms.php @@ -36,13 +36,19 @@ function create_digital_form( array $values = [ 'type' => 'digital_form', 'title' => 'Script Generated Digital Form', + 'field_expiration_date' => '2024-09-11', 'field_va_form_number' => '123456789', 'field_omb_number' => '1234-5678', + 'field_respondent_burden' => 30, 'moderation_state' => 'published', ], array $steps = [ [], - ['title' => 'Step without Date of Birth', 'include_dob' => FALSE], + [ + 'type' => 'digital_form_identification_info', + 'title' => 'Generated Identification Information', + 'include_sn' => TRUE, + ], ], ) { $digital_form = Node::create($values); @@ -61,12 +67,23 @@ function create_digital_forms() { $form_21_4140 = [ 'type' => 'digital_form', 'title' => 'Employment Questionnaire', + 'field_expiration_date' => '2024-07-31', 'field_va_form_number' => '21-4140', 'field_omb_number' => '2900-0079', + 'field_respondent_burden' => 5, 'moderation_state' => 'published', ]; $form_21_4140_steps = [ - ['title' => "Veteran's personal information", 'include_dob' => TRUE], + [ + 'type' => 'digital_form_name_and_date_of_bi', + 'title' => "Veteran's personal information", + 'include_dob' => TRUE, + ], + [ + 'type' => 'digital_form_identification_info', + 'title' => 'Identification information', + 'include_sn' => TRUE, + ], ]; create_digital_form(); @@ -88,9 +105,18 @@ function create_digital_forms() { function create_step( array $values = [], ): Paragraph { + $step_type = $values['type'] ?? 'digital_form_name_and_date_of_bi'; + $additional_fields = match ($step_type) { + 'digital_form_identification_info' => [ + 'field_include_veteran_s_service' => $values['include_sn'] ?? FALSE, + ], + 'digital_form_name_and_date_of_bi' => [ + 'field_include_date_of_birth' => $values['include_dob'] ?? TRUE, + ], + default => [], + }; return Paragraph::create([ - 'type' => 'digital_form_name_and_date_of_bi', + 'type' => $step_type, 'field_title' => $values['title'] ?? 'Script Generated Step', - 'field_include_date_of_birth' => $values['include_dob'] ?? TRUE, - ]); + ] + $additional_fields); } diff --git a/tests/phpunit/va_gov_content_types/functional/Entity/DigitalFormTest.php b/tests/phpunit/va_gov_content_types/functional/Entity/DigitalFormTest.php index c4c3b4f7c5..de5e76b702 100644 --- a/tests/phpunit/va_gov_content_types/functional/Entity/DigitalFormTest.php +++ b/tests/phpunit/va_gov_content_types/functional/Entity/DigitalFormTest.php @@ -18,6 +18,8 @@ class DigitalFormTest extends VaGovExistingSiteBase { */ public function testBundleClass() { $digital_form_attrs = [ + 'field_expiration_date' => '2025-08-28', + 'field_respondent_burden' => 5, 'field_va_form_number' => '12345', 'field_omb_number' => '1234-5678', 'title' => 'Test Digital Form', @@ -31,10 +33,18 @@ public function testBundleClass() { $node->get('field_va_form_number')->getString(), $digital_form_attrs['field_va_form_number'] ); + $this->assertEquals( + $node->get('field_expiration_date')->getString(), + $digital_form_attrs['field_expiration_date'] + ); $this->assertEquals( $node->get('field_omb_number')->getString(), $digital_form_attrs['field_omb_number'] ); + $this->assertEquals( + $node->get('field_respondent_burden')->getString(), + $digital_form_attrs['field_respondent_burden'] + ); } }