diff --git a/composer.json b/composer.json index 103c275..4c64bf3 100644 --- a/composer.json +++ b/composer.json @@ -27,6 +27,7 @@ "drupal/geofield_map": "^3.0", "drupal/gtm": "^1.8", "drupal/hotjar": "^3.1", + "drupal/linkchecker": "^2.0@alpha", "drupal/masquerade": "^2.0@beta", "drupal/menu_block": "^1.10", "drupal/purge": "3.x-dev@dev", diff --git a/composer.lock b/composer.lock index ef76ea4..425d4f3 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "26a4442d5a24dedf875239df2d714099", + "content-hash": "37d7d31484f13fae8f826e363373da44", "packages": [ { "name": "agile-collective/ac_eu_cookie_compliance_tweaks", @@ -5369,6 +5369,72 @@ "issues": "https://www.drupal.org/project/issues/link_attributes" } }, + { + "name": "drupal/linkchecker", + "version": "2.0.0-alpha2", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/linkchecker.git", + "reference": "2.0.0-alpha2" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/linkchecker-2.0.0-alpha2.zip", + "reference": "2.0.0-alpha2", + "shasum": "87a6843707dd457049336c3320cc6000179925f9" + }, + "require": { + "drupal/core": "^9.4 || ^10.0", + "drupal/dynamic_entity_reference": "^3.0 || ^4.0" + }, + "require-dev": { + "drupal/redirect": "^1.8" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "2.0.0-alpha2", + "datestamp": "1705475131", + "security-coverage": { + "status": "not-covered", + "message": "Alpha releases are not covered by Drupal security advisories." + } + }, + "drush": { + "services": { + "drush.services.yml": "^10 || ^11" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "hass", + "homepage": "https://www.drupal.org/u/hass" + }, + { + "name": "See other contributors", + "homepage": "https://www.drupal.org/node/243795/committers" + }, + { + "name": "hass", + "homepage": "https://www.drupal.org/user/85918" + }, + { + "name": "VladimirAus", + "homepage": "https://www.drupal.org/user/673120" + } + ], + "description": "Periodically checks for broken links in node types, blocks and fields and reports the results.", + "homepage": "https://www.drupal.org/project/linkchecker", + "support": { + "source": "https://git.drupal.org/project/linkchecker.git", + "issues": "https://www.drupal.org/project/issues/linkchecker" + } + }, { "name": "drupal/linkit", "version": "6.1.4", diff --git a/config/sync/core.extension.yml b/config/sync/core.extension.yml index 81fb50d..d2c068c 100644 --- a/config/sync/core.extension.yml +++ b/config/sync/core.extension.yml @@ -20,6 +20,7 @@ module: dbal: 0 dblog: 0 disclosure_nav: 0 + dynamic_entity_reference: 0 dynamic_page_cache: 0 editor: 0 entity_browser: 0 @@ -62,6 +63,7 @@ module: lgd_org_blocks: 0 link: 0 link_attributes: 0 + linkchecker: 0 linkit: 0 localgov_core: 0 localgov_directories: 0 diff --git a/config/sync/field.field.paragraph.image_link.localgov_link.yml b/config/sync/field.field.paragraph.image_link.localgov_link.yml index 3ea9324..4089b1f 100644 --- a/config/sync/field.field.paragraph.image_link.localgov_link.yml +++ b/config/sync/field.field.paragraph.image_link.localgov_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.image_link module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor id: paragraph.image_link.localgov_link field_name: localgov_link entity_type: paragraph diff --git a/config/sync/field.field.paragraph.localgov_accordion_pane.localgov_body_text.yml b/config/sync/field.field.paragraph.localgov_accordion_pane.localgov_body_text.yml index b0bfa3c..cc70f35 100644 --- a/config/sync/field.field.paragraph.localgov_accordion_pane.localgov_body_text.yml +++ b/config/sync/field.field.paragraph.localgov_accordion_pane.localgov_body_text.yml @@ -6,7 +6,12 @@ dependencies: - field.storage.paragraph.localgov_body_text - paragraphs.paragraphs_type.localgov_accordion_pane module: + - linkchecker - text +third_party_settings: + linkchecker: + scan: true + extractor: html_link_extractor _core: default_config_hash: g4-lvUVByBYNx5PJX2Q9QueCFTNtveqPlhvlRQIdZho id: paragraph.localgov_accordion_pane.localgov_body_text @@ -19,5 +24,6 @@ required: true translatable: true default_value: { } default_value_callback: '' -settings: { } +settings: + allowed_formats: { } field_type: text_long diff --git a/config/sync/field.field.paragraph.localgov_call_out_box.localgov_body_text.yml b/config/sync/field.field.paragraph.localgov_call_out_box.localgov_body_text.yml index e5c90d5..60ae380 100644 --- a/config/sync/field.field.paragraph.localgov_call_out_box.localgov_body_text.yml +++ b/config/sync/field.field.paragraph.localgov_call_out_box.localgov_body_text.yml @@ -6,7 +6,12 @@ dependencies: - field.storage.paragraph.localgov_body_text - paragraphs.paragraphs_type.localgov_call_out_box module: + - linkchecker - text +third_party_settings: + linkchecker: + scan: true + extractor: html_link_extractor _core: default_config_hash: HwZMtIoKne-rUz_gMfMFUem5YB8BhTErOWdzEA-4Ejc id: paragraph.localgov_call_out_box.localgov_body_text @@ -19,5 +24,6 @@ required: false translatable: true default_value: { } default_value_callback: '' -settings: { } +settings: + allowed_formats: { } field_type: text_long diff --git a/config/sync/field.field.paragraph.localgov_call_out_box.localgov_button.yml b/config/sync/field.field.paragraph.localgov_call_out_box.localgov_button.yml index 08e2816..08a2764 100644 --- a/config/sync/field.field.paragraph.localgov_call_out_box.localgov_button.yml +++ b/config/sync/field.field.paragraph.localgov_call_out_box.localgov_button.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_call_out_box module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: XoJlbP8ctFb4mKzYzmjZE8vOZWcKwCx1vR5rqI3DBOU id: paragraph.localgov_call_out_box.localgov_button diff --git a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_facebook.yml b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_facebook.yml index 88079df..0defaf8 100644 --- a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_facebook.yml +++ b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_facebook.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_contact module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: SEHPpmi60BrQZ5Kpb76awje8B2V3qyfkC4pLGaAYU7I id: paragraph.localgov_contact.localgov_contact_facebook diff --git a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_instagram.yml b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_instagram.yml index 53f7510..8989fd2 100644 --- a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_instagram.yml +++ b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_instagram.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_contact module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: ZGaXZTds-qr_7ADVTbZfD752iI_M12LVxGGhtev2XWo id: paragraph.localgov_contact.localgov_contact_instagram diff --git a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_other_social.yml b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_other_social.yml index b9179a2..758ec1e 100644 --- a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_other_social.yml +++ b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_other_social.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_contact module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: xuqdF59jgbIo0bzHbQD4ObA-z2674_yDXXbq0IQFltw id: paragraph.localgov_contact.localgov_contact_other_social diff --git a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_other_url.yml b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_other_url.yml index 921ae0d..6284abd 100644 --- a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_other_url.yml +++ b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_other_url.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_contact module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: 4mKmhPzAbHmD60rvpQLnd3WYwZgW4lOTr3IGGyS6iVY id: paragraph.localgov_contact.localgov_contact_other_url diff --git a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_twitter.yml b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_twitter.yml index 2ded6d4..d636524 100644 --- a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_twitter.yml +++ b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_twitter.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_contact module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: hUGvpmZPYSkOVu1SQ42zFEYVhDHZuo1vuf0nhfzD8rQ id: paragraph.localgov_contact.localgov_contact_twitter diff --git a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_url.yml b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_url.yml index 7f47279..714b0ae 100644 --- a/config/sync/field.field.paragraph.localgov_contact.localgov_contact_url.yml +++ b/config/sync/field.field.paragraph.localgov_contact.localgov_contact_url.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_contact module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: E8rSMi_7TWMtGAo6n7Ax7w37mFyZuR4x4Bku2XTPcbQ id: paragraph.localgov_contact.localgov_contact_url diff --git a/config/sync/field.field.paragraph.localgov_featured_campaign.localgov_featured_campaign_link.yml b/config/sync/field.field.paragraph.localgov_featured_campaign.localgov_featured_campaign_link.yml index 6471dda..b609ab1 100644 --- a/config/sync/field.field.paragraph.localgov_featured_campaign.localgov_featured_campaign_link.yml +++ b/config/sync/field.field.paragraph.localgov_featured_campaign.localgov_featured_campaign_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_featured_campaign module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: rWOmQVvrqfqGSAemvmcgEbDOCk9a8_EWcqagUa30wu4 id: paragraph.localgov_featured_campaign.localgov_featured_campaign_link diff --git a/config/sync/field.field.paragraph.localgov_featured_teaser.localgov_link.yml b/config/sync/field.field.paragraph.localgov_featured_teaser.localgov_link.yml index 718bcbe..3a87c8d 100644 --- a/config/sync/field.field.paragraph.localgov_featured_teaser.localgov_link.yml +++ b/config/sync/field.field.paragraph.localgov_featured_teaser.localgov_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_featured_teaser module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: lmGJrGy8XJ4544-_cYEyJ3ho25MAFOPPJiVvpXpKRms id: paragraph.localgov_featured_teaser.localgov_link diff --git a/config/sync/field.field.paragraph.localgov_featured_teaser.localgov_text.yml b/config/sync/field.field.paragraph.localgov_featured_teaser.localgov_text.yml index c6f9612..3596fc0 100644 --- a/config/sync/field.field.paragraph.localgov_featured_teaser.localgov_text.yml +++ b/config/sync/field.field.paragraph.localgov_featured_teaser.localgov_text.yml @@ -6,7 +6,12 @@ dependencies: - field.storage.paragraph.localgov_text - paragraphs.paragraphs_type.localgov_featured_teaser module: + - linkchecker - text +third_party_settings: + linkchecker: + scan: true + extractor: html_link_extractor _core: default_config_hash: i-SXyoAxWNwUx9hn2wYA0Oyh2lRRotqDi4qFKfoopzQ id: paragraph.localgov_featured_teaser.localgov_text @@ -19,5 +24,6 @@ required: false translatable: true default_value: { } default_value_callback: '' -settings: { } +settings: + allowed_formats: { } field_type: text_long diff --git a/config/sync/field.field.paragraph.localgov_featured_teasers.localgov_body_text.yml b/config/sync/field.field.paragraph.localgov_featured_teasers.localgov_body_text.yml index 1eeb708..666b5f4 100644 --- a/config/sync/field.field.paragraph.localgov_featured_teasers.localgov_body_text.yml +++ b/config/sync/field.field.paragraph.localgov_featured_teasers.localgov_body_text.yml @@ -7,7 +7,12 @@ dependencies: - filter.format.wysiwyg - paragraphs.paragraphs_type.localgov_featured_teasers module: + - linkchecker - text +third_party_settings: + linkchecker: + scan: true + extractor: html_link_extractor id: paragraph.localgov_featured_teasers.localgov_body_text field_name: localgov_body_text entity_type: paragraph diff --git a/config/sync/field.field.paragraph.localgov_ia_block.localgov_ia_block_link.yml b/config/sync/field.field.paragraph.localgov_ia_block.localgov_ia_block_link.yml index c648552..25dba32 100644 --- a/config/sync/field.field.paragraph.localgov_ia_block.localgov_ia_block_link.yml +++ b/config/sync/field.field.paragraph.localgov_ia_block.localgov_ia_block_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_ia_block module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: QTnqZOe4lPYlIiQ_QYK6PzqFsEDszJRpy2EVa1v7obc id: paragraph.localgov_ia_block.localgov_ia_block_link diff --git a/config/sync/field.field.paragraph.localgov_ia_block.localgov_ia_block_links.yml b/config/sync/field.field.paragraph.localgov_ia_block.localgov_ia_block_links.yml index 46c3b3a..cbe3898 100644 --- a/config/sync/field.field.paragraph.localgov_ia_block.localgov_ia_block_links.yml +++ b/config/sync/field.field.paragraph.localgov_ia_block.localgov_ia_block_links.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_ia_block module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: 7ng18YvInKfE1ECW1aA02gzCREq7sUJnkApaJPj0jcg id: paragraph.localgov_ia_block.localgov_ia_block_links diff --git a/config/sync/field.field.paragraph.localgov_key_contact_item.localgov_link.yml b/config/sync/field.field.paragraph.localgov_key_contact_item.localgov_link.yml index 4d1c332..69ad96d 100644 --- a/config/sync/field.field.paragraph.localgov_key_contact_item.localgov_link.yml +++ b/config/sync/field.field.paragraph.localgov_key_contact_item.localgov_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_key_contact_item module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: p-2Yi0lOUKfeizQZP2LRsM1dK0evwTma-e8OkUU4210 id: paragraph.localgov_key_contact_item.localgov_link diff --git a/config/sync/field.field.paragraph.localgov_key_fact.localgov_text.yml b/config/sync/field.field.paragraph.localgov_key_fact.localgov_text.yml index 29af2f1..ea04094 100644 --- a/config/sync/field.field.paragraph.localgov_key_fact.localgov_text.yml +++ b/config/sync/field.field.paragraph.localgov_key_fact.localgov_text.yml @@ -6,7 +6,12 @@ dependencies: - field.storage.paragraph.localgov_text - paragraphs.paragraphs_type.localgov_key_fact module: + - linkchecker - text +third_party_settings: + linkchecker: + scan: true + extractor: html_link_extractor _core: default_config_hash: P9B45-K-G_s_OVDnFKb7Mqvn_CwPaVTeJ3589WudwZI id: paragraph.localgov_key_fact.localgov_text @@ -19,5 +24,6 @@ required: true translatable: true default_value: { } default_value_callback: '' -settings: { } +settings: + allowed_formats: { } field_type: text_long diff --git a/config/sync/field.field.paragraph.localgov_labelled_icon.localgov_labelled_icon_link.yml b/config/sync/field.field.paragraph.localgov_labelled_icon.localgov_labelled_icon_link.yml index cddcca3..d56181f 100644 --- a/config/sync/field.field.paragraph.localgov_labelled_icon.localgov_labelled_icon_link.yml +++ b/config/sync/field.field.paragraph.localgov_labelled_icon.localgov_labelled_icon_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_labelled_icon module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: 8PeBnpbVB0jBsL18FRqKJbIfwHTongEoC0psvBUuRLI id: paragraph.localgov_labelled_icon.localgov_labelled_icon_link diff --git a/config/sync/field.field.paragraph.localgov_link.field_link.yml b/config/sync/field.field.paragraph.localgov_link.field_link.yml index 9b62ac8..6f9a829 100644 --- a/config/sync/field.field.paragraph.localgov_link.field_link.yml +++ b/config/sync/field.field.paragraph.localgov_link.field_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_link module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor id: paragraph.localgov_link.field_link field_name: field_link entity_type: paragraph diff --git a/config/sync/field.field.paragraph.localgov_link_and_summary.localgov_link.yml b/config/sync/field.field.paragraph.localgov_link_and_summary.localgov_link.yml index db68496..6c4e96f 100644 --- a/config/sync/field.field.paragraph.localgov_link_and_summary.localgov_link.yml +++ b/config/sync/field.field.paragraph.localgov_link_and_summary.localgov_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_link_and_summary module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: Xvcjk2OwNuX1i7z1hAQtMjHZsEbkdafE5jn1MuQ0uGo id: paragraph.localgov_link_and_summary.localgov_link diff --git a/config/sync/field.field.paragraph.localgov_media_with_text.field_links.yml b/config/sync/field.field.paragraph.localgov_media_with_text.field_links.yml index 737a62a..9ef174c 100644 --- a/config/sync/field.field.paragraph.localgov_media_with_text.field_links.yml +++ b/config/sync/field.field.paragraph.localgov_media_with_text.field_links.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_media_with_text module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor id: paragraph.localgov_media_with_text.field_links field_name: field_links entity_type: paragraph diff --git a/config/sync/field.field.paragraph.localgov_media_with_text.localgov_link.yml b/config/sync/field.field.paragraph.localgov_media_with_text.localgov_link.yml index 469c245..80f5358 100644 --- a/config/sync/field.field.paragraph.localgov_media_with_text.localgov_link.yml +++ b/config/sync/field.field.paragraph.localgov_media_with_text.localgov_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_media_with_text module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: xHpi2dXAefycbmS98UaCNOiMDbvixPF_ZOGRJGO1-0U id: paragraph.localgov_media_with_text.localgov_link diff --git a/config/sync/field.field.paragraph.localgov_media_with_text.localgov_text.yml b/config/sync/field.field.paragraph.localgov_media_with_text.localgov_text.yml index 78bb617..b7928b4 100644 --- a/config/sync/field.field.paragraph.localgov_media_with_text.localgov_text.yml +++ b/config/sync/field.field.paragraph.localgov_media_with_text.localgov_text.yml @@ -6,7 +6,12 @@ dependencies: - field.storage.paragraph.localgov_text - paragraphs.paragraphs_type.localgov_media_with_text module: + - linkchecker - text +third_party_settings: + linkchecker: + scan: true + extractor: html_link_extractor _core: default_config_hash: L2PphbcDalK3_DWcQVhYhXv3DAUm215qZGVNcNVGUD8 id: paragraph.localgov_media_with_text.localgov_text @@ -19,5 +24,6 @@ required: false translatable: true default_value: { } default_value_callback: '' -settings: { } +settings: + allowed_formats: { } field_type: text_long diff --git a/config/sync/field.field.paragraph.localgov_newsroom_teaser.localgov_newsroom_teaser_link.yml b/config/sync/field.field.paragraph.localgov_newsroom_teaser.localgov_newsroom_teaser_link.yml index 3e9f4a6..821a4bb 100644 --- a/config/sync/field.field.paragraph.localgov_newsroom_teaser.localgov_newsroom_teaser_link.yml +++ b/config/sync/field.field.paragraph.localgov_newsroom_teaser.localgov_newsroom_teaser_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.localgov_newsroom_teaser module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor _core: default_config_hash: x3G7fjc-ChD17yHBXywfXvJIikBoDPuoew6TmDOnu_M id: paragraph.localgov_newsroom_teaser.localgov_newsroom_teaser_link diff --git a/config/sync/field.field.paragraph.localgov_numbered_text.localgov_text.yml b/config/sync/field.field.paragraph.localgov_numbered_text.localgov_text.yml index 1dddfaf..a8adbbe 100644 --- a/config/sync/field.field.paragraph.localgov_numbered_text.localgov_text.yml +++ b/config/sync/field.field.paragraph.localgov_numbered_text.localgov_text.yml @@ -6,7 +6,12 @@ dependencies: - field.storage.paragraph.localgov_text - paragraphs.paragraphs_type.localgov_numbered_text module: + - linkchecker - text +third_party_settings: + linkchecker: + scan: true + extractor: html_link_extractor id: paragraph.localgov_numbered_text.localgov_text field_name: localgov_text entity_type: paragraph diff --git a/config/sync/field.field.paragraph.localgov_tab_panel.localgov_body_text.yml b/config/sync/field.field.paragraph.localgov_tab_panel.localgov_body_text.yml index f2bf70a..e1a1468 100644 --- a/config/sync/field.field.paragraph.localgov_tab_panel.localgov_body_text.yml +++ b/config/sync/field.field.paragraph.localgov_tab_panel.localgov_body_text.yml @@ -6,7 +6,12 @@ dependencies: - field.storage.paragraph.localgov_body_text - paragraphs.paragraphs_type.localgov_tab_panel module: + - linkchecker - text +third_party_settings: + linkchecker: + scan: true + extractor: html_link_extractor _core: default_config_hash: HCNjectxnbImX2gFepQjptWH1OnQZkmOMzq4UQByhUo id: paragraph.localgov_tab_panel.localgov_body_text @@ -19,5 +24,6 @@ required: true translatable: true default_value: { } default_value_callback: '' -settings: { } +settings: + allowed_formats: { } field_type: text_long diff --git a/config/sync/field.field.paragraph.localgov_text.localgov_text.yml b/config/sync/field.field.paragraph.localgov_text.localgov_text.yml index e92c076..e50fd1d 100644 --- a/config/sync/field.field.paragraph.localgov_text.localgov_text.yml +++ b/config/sync/field.field.paragraph.localgov_text.localgov_text.yml @@ -6,7 +6,12 @@ dependencies: - field.storage.paragraph.localgov_text - paragraphs.paragraphs_type.localgov_text module: + - linkchecker - text +third_party_settings: + linkchecker: + scan: true + extractor: html_link_extractor _core: default_config_hash: coOUNwEHi31kSbDURy8GVhyFNMMgBVCAT0CkJt1iLzI id: paragraph.localgov_text.localgov_text @@ -19,5 +24,6 @@ required: false translatable: false default_value: { } default_value_callback: '' -settings: { } +settings: + allowed_formats: { } field_type: text_long diff --git a/config/sync/field.field.paragraph.multiple_image_and_links.localgov_body_text.yml b/config/sync/field.field.paragraph.multiple_image_and_links.localgov_body_text.yml index ac0fc35..b57601b 100644 --- a/config/sync/field.field.paragraph.multiple_image_and_links.localgov_body_text.yml +++ b/config/sync/field.field.paragraph.multiple_image_and_links.localgov_body_text.yml @@ -7,7 +7,12 @@ dependencies: - filter.format.wysiwyg - paragraphs.paragraphs_type.multiple_image_and_links module: + - linkchecker - text +third_party_settings: + linkchecker: + scan: true + extractor: html_link_extractor id: paragraph.multiple_image_and_links.localgov_body_text field_name: localgov_body_text entity_type: paragraph diff --git a/config/sync/field.field.paragraph.multiple_image_and_links.localgov_link.yml b/config/sync/field.field.paragraph.multiple_image_and_links.localgov_link.yml index 789670f..6e26c21 100644 --- a/config/sync/field.field.paragraph.multiple_image_and_links.localgov_link.yml +++ b/config/sync/field.field.paragraph.multiple_image_and_links.localgov_link.yml @@ -7,6 +7,11 @@ dependencies: - paragraphs.paragraphs_type.multiple_image_and_links module: - link + - linkchecker +third_party_settings: + linkchecker: + scan: true + extractor: link_link_extractor id: paragraph.multiple_image_and_links.localgov_link field_name: localgov_link entity_type: paragraph diff --git a/config/sync/linkchecker.settings.yml b/config/sync/linkchecker.settings.yml new file mode 100644 index 0000000..3ad0f24 --- /dev/null +++ b/config/sync/linkchecker.settings.yml @@ -0,0 +1,44 @@ +_core: + default_config_hash: FzFKuqOuk667AkDorrqvXkc_-M4D-Ac1XeGGusxS1JU +scan_blocks: null +check_links_types: 0 +default_url_scheme: 'https://' +base_path: localgovdrupal.org +extract: + from_a: true + from_audio: false + from_embed: false + from_iframe: false + from_img: false + from_object: false + from_video: false + filter_blacklist: + filter_align: filter_align + filter_caption: filter_caption + filter_autop: filter_autop + media_embed: media_embed + editor_file_reference: '0' + filter_image_lazy_load: '0' + filter_html_image_secure: '0' + filter_url: '0' + filter_html_escape: '0' + filter_htmlcorrector: '0' + filter_html: '0' + linkit: '0' +check: + connections_max: 8 + connections_max_per_domain: 2 + disable_link_check_for_urls: |- + example.com + example.net + example.org + library: core + interval: 2419200 + useragent: 'Drupal (+https://drupal.org/)' +error: + action_status_code_301: 0 + action_status_code_404: 0 + ignore_response_codes: "200\r\n206\r\n302\r\n304\r\n401\r\n403" + impersonate_account: admin +logging: + level: 6 diff --git a/config/sync/views.view.broken_links_report.yml b/config/sync/views.view.broken_links_report.yml new file mode 100644 index 0000000..80babfe --- /dev/null +++ b/config/sync/views.view.broken_links_report.yml @@ -0,0 +1,1205 @@ +uuid: 48925e9c-87eb-4add-8171-d1ae92a04631 +langcode: en +status: true +dependencies: + config: + - system.menu.admin + module: + - linkchecker + - user +_core: + default_config_hash: G19NgTMdwaqUb6hm1fXazGVwr0N2GRkmKCiNhpTkB4o +id: broken_links_report +label: 'Broken links report' +module: views +description: '' +tag: '' +base_table: linkchecker_link +base_field: lid +display: + default: + id: default + display_title: Master + display_plugin: default + position: 0 + display_options: + title: 'Broken links report' + fields: + entity_field: + id: entity_field + table: linkchecker_link + field: entity_field + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: entity_field + plugin_id: field + label: 'Entity field' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + entity_langcode: + id: entity_langcode + table: linkchecker_link + field: entity_langcode + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: entity_langcode + plugin_id: field + label: 'Entity language' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: language + settings: + link_to_entity: false + native_language: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + linkcheckerlink_page_entity_label: + id: linkcheckerlink_page_entity_label + table: linkchecker_link + field: linkcheckerlink_page_entity_label + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + plugin_id: linkcheckerlink_page_entity_label + label: '' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + link_to_entity: 1 + url: + id: url + table: linkchecker_link + field: url + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: url + plugin_id: field + label: URL + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: uri_link + settings: { } + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + last_check: + id: last_check + table: linkchecker_link + field: last_check + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: last_check + plugin_id: field + label: 'Last checked' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: nowrap + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: Never + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: timestamp + settings: + date_format: medium + custom_date_format: '' + timezone: '' + tooltip: + date_format: '' + custom_date_format: '' + time_diff: + enabled: false + future_format: '@interval hence' + past_format: '@interval ago' + granularity: 2 + refresh: 60 + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + method: + id: method + table: linkchecker_link + field: method + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: method + plugin_id: field + label: Method + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + code: + id: code + table: linkchecker_link + field: code + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: code + plugin_id: field + label: 'Status code' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: nowrap + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: number_integer + settings: + thousand_separator: '' + prefix_suffix: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + error: + id: error + table: linkchecker_link + field: error + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: error + plugin_id: field + label: Error + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: basic_string + settings: { } + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + fail_count: + id: fail_count + table: linkchecker_link + field: fail_count + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: fail_count + plugin_id: field + label: 'Fail count' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: nowrap + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: number_integer + settings: + thousand_separator: '' + prefix_suffix: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + nothing: + id: nothing + table: views + field: nothing + relationship: none + group_type: group + admin_label: '' + plugin_id: custom + label: 'Found here' + exclude: false + alter: + alter_text: true + text: "Entity: {{ linkcheckerlink_page_entity_label }}
\r\nField: {{ entity_field }}
\r\nLanguage: {{ entity_langcode }}" + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: false + status: + id: status + table: linkchecker_link + field: status + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: status + plugin_id: field + label: 'Test link' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: nowrap + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: boolean + settings: + format: unicode-yes-no + format_custom_false: '' + format_custom_true: '' + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + operations: + id: operations + table: linkchecker_link + field: operations + relationship: none + group_type: group + admin_label: '' + entity_type: null + entity_field: null + plugin_id: entity_operations + label: Operations + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + destination: false + pager: + type: full + options: + offset: 0 + items_per_page: 50 + total_pages: null + id: 0 + tags: + next: ›› + previous: ‹‹ + first: '« First' + last: 'Last »' + expose: + items_per_page: true + items_per_page_label: 'Items per page' + items_per_page_options: '10, 25, 50, 100' + items_per_page_options_all: false + items_per_page_options_all_label: '- All -' + offset: false + offset_label: Offset + quantity: 9 + exposed_form: + type: basic + options: + submit_button: Apply + reset_button: false + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + access: + type: perm + options: + perm: 'access broken links report' + cache: + type: tag + options: { } + empty: { } + sorts: { } + arguments: { } + filters: + url: + id: url + table: linkchecker_link + field: url + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: url + plugin_id: string + operator: contains + value: '' + group: 1 + exposed: true + expose: + operator_id: url_op + label: URL + description: '' + use_operator: false + operator: url_op + operator_limit_selection: false + operator_list: { } + identifier: url + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + code_1: + id: code_1 + table: linkchecker_link + field: code + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: code + plugin_id: numeric + operator: '=' + value: + min: '' + max: '' + value: '' + group: 1 + exposed: true + expose: + operator_id: code_1_op + label: 'Status code' + description: null + use_operator: false + operator: code_1_op + operator_limit_selection: false + operator_list: { } + identifier: result + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + min_placeholder: null + max_placeholder: null + placeholder: null + is_grouped: true + group_info: + label: Result + description: '' + identifier: result + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: + 1: + title: Failed + operator: 'not between' + value: + min: '200' + max: '299' + value: '' + 2: + title: 'Success (2xx)' + operator: between + value: + min: '200' + max: '299' + value: '' + 3: + title: 'Redirect (3xx)' + operator: between + value: + min: '300' + max: '399' + value: '' + 4: + title: 'Client error (4xx)' + operator: between + value: + min: '400' + max: '499' + value: '' + 5: + title: 'Server error (5xx)' + operator: between + value: + min: '500' + max: '599' + value: '' + code: + id: code + table: linkchecker_link + field: code + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: code + plugin_id: numeric + operator: '=' + value: + min: '' + max: '' + value: '' + group: 1 + exposed: true + expose: + operator_id: code_op + label: 'Status code' + description: '' + use_operator: false + operator: code_op + operator_limit_selection: false + operator_list: { } + identifier: code + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + min_placeholder: '' + max_placeholder: '' + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + entity_langcode: + id: entity_langcode + table: linkchecker_link + field: entity_langcode + relationship: none + group_type: group + admin_label: '' + entity_type: linkcheckerlink + entity_field: entity_langcode + plugin_id: language + operator: in + value: { } + group: 1 + exposed: true + expose: + operator_id: entity_langcode_op + label: 'Entity language' + description: '' + use_operator: false + operator: entity_langcode_op + operator_limit_selection: false + operator_list: { } + identifier: entity_langcode + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + filter_groups: + operator: AND + groups: + 1: AND + style: + type: table + options: + grouping: { } + row_class: '' + default_row_class: true + columns: + url__uri: url__uri + last_check: last_check + method: method + code: code + error: error + fail_count: fail_count + entity_id__target_id: entity_id__target_id + entity_field__value: entity_field__value + entity_langcode: entity_langcode + status: status + operations: operations + default: '-1' + info: + url__uri: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + last_check: + sortable: true + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + method: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + code: + sortable: true + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + error: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + fail_count: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + entity_id__target_id: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + entity_field__value: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + entity_langcode: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + status: + sortable: true + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + operations: + align: '' + separator: '' + empty_column: false + responsive: '' + override: true + sticky: false + summary: '' + empty_table: false + caption: '' + description: '' + row: + type: fields + query: + type: views_query + options: + query_comment: '' + disable_sql_rewrite: false + distinct: false + replica: false + query_tags: { } + relationships: { } + show_admin_links: true + header: { } + footer: + result: + id: result + table: views + field: result + relationship: none + group_type: group + admin_label: '' + plugin_id: result + empty: false + content: 'Displaying @start - @end of @total' + display_extenders: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - user.permissions + tags: { } + page_1: + id: page_1 + display_title: Page + display_plugin: page + position: 1 + display_options: + display_extenders: { } + path: admin/reports/linkchecker + menu: + type: normal + title: 'Broken links' + description: 'Shows a list of broken links in content.' + weight: 0 + expanded: false + menu_name: admin + parent: system.admin_reports + context: '0' + tab_options: + type: none + title: '' + description: '' + weight: 0 + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - user.permissions + tags: { }