├── tests ├── files │ └── .gitkeep ├── fixtures │ └── .gitkeep └── features │ ├── roles.feature │ ├── bootstrap │ └── FeatureContext.php │ └── workflow │ └── diff.feature ├── config ├── install │ ├── system.logging.yml │ ├── system.theme.yml │ ├── system.cron.yml │ ├── user.role.administrator.yml │ ├── language │ │ └── fr │ │ │ └── system.site.yml │ ├── system.site.yml │ ├── user.settings.yml │ └── system.performance.yml ├── schema │ └── wxt.schema.yml └── optional │ └── field.storage.node.field_date_modified.yml ├── wxt.png ├── favicon.ico ├── modules └── custom │ ├── wxt_ext │ ├── wxt_ext_theme │ │ ├── config │ │ │ └── rewrite │ │ │ │ ├── node.settings.yml │ │ │ │ └── system.theme.yml │ │ ├── wxt_ext_theme.module │ │ ├── wxt_ext_theme.wxt_extension.yml │ │ └── wxt_ext_theme.info.yml │ ├── wxt_ext_blog │ │ ├── config │ │ │ ├── language │ │ │ │ └── fr │ │ │ │ │ ├── page_manager.page.blog.yml │ │ │ │ │ └── page_manager.page_variant.blog-panels_variant-0.yml │ │ │ ├── optional │ │ │ │ ├── page_manager.page.blog.yml │ │ │ │ ├── image.style.blog_spotlight.yml │ │ │ │ ├── pathauto.pattern.blog.yml │ │ │ │ ├── field.field.node.blog_post.field_meta_tags.yml │ │ │ │ └── field.storage.node.field_avatar_image.yml │ │ │ └── rewrite │ │ │ │ ├── field.storage.node.field_blog_tags.yml │ │ │ │ └── node.type.blog_post.yml │ │ ├── wxt_ext_blog.wxt_extension.yml │ │ ├── wxt_ext_blog.info.yml │ │ └── wxt_ext_blog.module │ ├── wxt_ext_user │ │ ├── config │ │ │ ├── rewrite │ │ │ │ └── user.settings.yml │ │ │ └── install │ │ │ │ ├── system.action.user_add_role_action.creator.yml │ │ │ │ ├── system.action.user_add_role_action.reviewer.yml │ │ │ │ ├── system.action.user_remove_role_action.creator.yml │ │ │ │ ├── system.action.user_remove_role_action.reviewer.yml │ │ │ │ └── page_manager.page.user.yml │ │ ├── wxt_ext_user.module │ │ ├── wxt_ext_user.wxt_extension.yml │ │ └── wxt_ext_user.info.yml │ ├── wxt_ext.module │ ├── wxt_ext_group │ │ ├── config │ │ │ ├── rewrite │ │ │ │ ├── group.settings.yml │ │ │ │ └── pathauto.pattern.group_content.yml │ │ │ └── install │ │ │ │ ├── group.type.department.yml │ │ │ │ ├── language.content_settings.group.department.yml │ │ │ │ ├── group.role.department-outsider.yml │ │ │ │ ├── group.role.department-anonymous.yml │ │ │ │ ├── field.storage.group.field_shortcode.yml │ │ │ │ ├── group.content_type.department-group_membership.yml │ │ │ │ ├── field.field.group.department.field_shortcode.yml │ │ │ │ ├── group.content_type.department-group_node-blog_post.yml │ │ │ │ ├── field.field.group_content.department-group_membership.group_roles.yml │ │ │ │ └── core.entity_view_display.group_content.department-group_membership.default.yml │ │ ├── wxt_ext_group.module │ │ ├── wxt_ext_group.links.task.yml │ │ ├── wxt_ext_group.install │ │ └── wxt_ext_group.info.yml │ ├── wxt_ext_editor │ │ ├── config │ │ │ ├── language │ │ │ │ └── fr │ │ │ │ │ └── toc_api.toc_type.wxt.yml │ │ │ └── rewrite │ │ │ │ └── image.style.linkit_result_thumbnail.yml │ │ ├── wxt_ext_editor.wxt_extension.yml │ │ ├── js │ │ │ ├── ckeditor5_plugins │ │ │ │ ├── wxt_panel │ │ │ │ │ └── src │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── panelcssclasses.js │ │ │ │ │ │ └── panel.js │ │ │ │ └── wxt_alert │ │ │ │ │ └── src │ │ │ │ │ ├── alertcssclasses.js │ │ │ │ │ ├── alert.js │ │ │ │ │ └── index.js │ │ │ ├── plugins │ │ │ │ ├── wet_alert │ │ │ │ │ ├── icons │ │ │ │ │ │ └── alert.png │ │ │ │ │ └── lang │ │ │ │ │ │ ├── en.js │ │ │ │ │ │ └── fr.js │ │ │ │ └── wet_panel │ │ │ │ │ ├── icons │ │ │ │ │ └── panel.png │ │ │ │ │ └── lang │ │ │ │ │ ├── en.js │ │ │ │ │ └── fr.js │ │ │ └── wxt_ext_editor.js │ │ ├── fonts │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ └── glyphicons-halflings-regular.woff2 │ │ ├── css │ │ │ └── wxt_ext_editor.admin.css │ │ ├── icons │ │ │ ├── panel.svg │ │ │ └── alert.svg │ │ ├── wxt_ext_editor.install │ │ └── wxt_ext_editor.libraries.yml │ ├── wxt_ext_book │ │ ├── wxt_ext_book.wxt_extension.yml │ │ ├── config │ │ │ ├── install │ │ │ │ └── wxt_ext_book.settings.yml │ │ │ ├── rewrite │ │ │ │ ├── book.settings.yml │ │ │ │ └── node.type.book.yml │ │ │ └── optional │ │ │ │ └── language.content_settings.node.book.yml │ │ ├── wxt_ext_book.links.menu.yml │ │ ├── wxt_ext_book.routing.yml │ │ └── wxt_ext_book.info.yml │ ├── wxt_ext_comment │ │ ├── wxt_ext_comment.module │ │ ├── wxt_ext_comment.wxt_extension.yml │ │ ├── config │ │ │ └── optional │ │ │ │ ├── comment.type.comment.yml │ │ │ │ ├── field.storage.node.comment.yml │ │ │ │ ├── field.storage.paragraph.field_comment.yml │ │ │ │ ├── field.field.comment.comment.comment_body.yml │ │ │ │ └── core.entity_view_display.comment.comment.default.yml │ │ └── wxt_ext_comment.info.yml │ ├── wxt_ext_media │ │ ├── config │ │ │ ├── install │ │ │ │ ├── wxt_ext_media.settings.yml │ │ │ │ ├── core.entity_view_mode.media.embedded.yml │ │ │ │ ├── core.entity_view_mode.media.thumbnail.yml │ │ │ │ ├── field.storage.media.embed_code.yml │ │ │ │ └── field.storage.media.field_media_in_library.yml │ │ │ └── optional │ │ │ │ ├── core.entity_view_mode.media.linked.yml │ │ │ │ ├── pathauto.pattern.media.yml │ │ │ │ ├── field.storage.media.field_image_link.yml │ │ │ │ └── field.field.media.image.field_image_link.yml │ │ ├── wxt_ext_media.wxt_extension.yml │ │ ├── images │ │ │ ├── star.png │ │ │ └── upload.png │ │ ├── wxt_ext_media.links.menu.yml │ │ ├── wxt_ext_media.routing.yml │ │ ├── wxt_ext_media.services.yml │ │ ├── wxt_ext_media.libraries.yml │ │ ├── wxt_ext_media.install │ │ ├── wxt_ext_media.info.yml │ │ └── src │ │ │ └── Routing │ │ │ └── RouteSubscriber.php │ ├── wxt_ext_page │ │ ├── wxt_ext_page.wxt_extension.yml │ │ ├── config │ │ │ └── optional │ │ │ │ ├── field.storage.node.field_lead_title.yml │ │ │ │ ├── field.field.node.page.field_lead_title.yml │ │ │ │ ├── field.field.node.page.body.yml │ │ │ │ ├── core.base_field_override.node.page.promote.yml │ │ │ │ ├── node.type.page.yml │ │ │ │ ├── core.base_field_override.node.page.status.yml │ │ │ │ ├── pathauto.pattern.page.yml │ │ │ │ ├── field.field.node.page.layout_builder__layout.yml │ │ │ │ ├── field.field.node.page.layout_selection.yml │ │ │ │ ├── core.entity_view_display.node.page.featured.yml │ │ │ │ ├── field.field.node.page.layout_builder__translation.yml │ │ │ │ ├── field.field.node.page.field_meta_tags.yml │ │ │ │ └── core.entity_view_display.node.page.teaser.yml │ │ └── wxt_ext_page.info.yml │ ├── wxt_ext_queue │ │ ├── wxt_ext_queue.wxt_extension.yml │ │ ├── wxt_ext_queue.info.yml │ │ ├── config │ │ │ └── install │ │ │ │ ├── field.storage.node.field_queue.yml │ │ │ │ └── entityqueue.entity_queue.front_page.yml │ │ └── wxt_ext_queue.module │ ├── wxt_ext_sitemap │ │ ├── wxt_ext_sitemap.module │ │ ├── wxt_ext_sitemap.wxt_extension.yml │ │ └── wxt_ext_sitemap.info.yml │ ├── wxt_ext_blocks │ │ ├── wxt_ext_blocks.wxt_extension.yml │ │ ├── config │ │ │ └── optional │ │ │ │ ├── block_content.type.modal.yml │ │ │ │ ├── block_content.type.basic.yml │ │ │ │ ├── block_content.type.search.yml │ │ │ │ ├── block_content.type.spotlight.yml │ │ │ │ ├── core.entity_view_mode.block_content.featured.yml │ │ │ │ ├── image.style.spotlight.yml │ │ │ │ ├── language.content_settings.block_content.modal.yml │ │ │ │ ├── language.content_settings.block_content.search.yml │ │ │ │ ├── language.content_settings.block_content.spotlight.yml │ │ │ │ ├── field.storage.block_content.field_search_path.yml │ │ │ │ ├── field.storage.block_content.field_modal_id.yml │ │ │ │ ├── field.storage.block_content.field_spotlight_media.yml │ │ │ │ ├── core.entity_view_display.block_content.basic.default.yml │ │ │ │ ├── field.storage.block_content.field_search_filter.yml │ │ │ │ ├── field.storage.block_content.field_search_placeholder.yml │ │ │ │ ├── field.field.block_content.search.field_search_filter.yml │ │ │ │ ├── field.field.block_content.search.body.yml │ │ │ │ ├── field.field.block_content.spotlight.body.yml │ │ │ │ ├── field.field.block_content.search.field_search_placeholder.yml │ │ │ │ ├── field.field.block_content.basic.body.yml │ │ │ │ ├── field.field.block_content.modal.body.yml │ │ │ │ ├── field.field.block_content.modal.field_modal_id.yml │ │ │ │ ├── field.field.block_content.search.field_search_path.yml │ │ │ │ └── core.entity_view_display.block_content.modal.default.yml │ │ ├── wxt_ext_blocks.install │ │ └── wxt_ext_blocks.info.yml │ ├── wxt_ext_layout │ │ ├── wxt_ext_layout.wxt_extension.yml │ │ ├── images │ │ │ ├── topic.png │ │ │ └── homepage.png │ │ ├── config │ │ │ ├── optional │ │ │ │ └── wxt_ext_layout.settings.yml │ │ │ └── schema │ │ │ │ └── wxt_ext_layout.schema.yml │ │ ├── wxt_ext_layout.links.menu.yml │ │ ├── wxt_ext_layout.routing.yml │ │ ├── wxt_ext_layout.install │ │ └── wxt_ext_layout.info.yml │ ├── wxt_ext_migration │ │ ├── wxt_ext_migration.module │ │ ├── wxt_ext_migration.wxt_extension.yml │ │ ├── data │ │ │ └── images │ │ │ │ ├── 218x291.png │ │ │ │ ├── 265x352.png │ │ │ │ ├── 355x113.png │ │ │ │ ├── 360x203.png │ │ │ │ ├── 520x200.png │ │ │ │ ├── 520x296.png │ │ │ │ ├── 1170x347-1.png │ │ │ │ ├── 1170x347-2.png │ │ │ │ ├── 1170x347-3.png │ │ │ │ ├── 653x194-1.png │ │ │ │ ├── 653x194-2.png │ │ │ │ ├── 653x194-3.png │ │ │ │ ├── 750x222-1.png │ │ │ │ └── 750x222-2.png │ │ ├── config │ │ │ └── install │ │ │ │ ├── migrate_plus.migration_group.wxt.yml │ │ │ │ ├── migrate_plus.migration_group.gcweb.yml │ │ │ │ ├── migrate_plus.migration_group.gc_intranet.yml │ │ │ │ ├── migrate_plus.migration_group.wxt_translation.yml │ │ │ │ ├── migrate_plus.migration_group.gcweb_translation.yml │ │ │ │ └── migrate_plus.migration_group.gc_intranet_translation.yml │ │ ├── wxt_ext_migration.services.yml │ │ └── wxt_ext_migration.info.yml │ ├── wxt_ext_paragraph │ │ ├── wxt_ext_paragraph.module │ │ ├── wxt_ext_paragraph.wxt_extension.yml │ │ ├── wxt_ext_paragraph.info.yml │ │ └── config │ │ │ └── install │ │ │ ├── field.storage.paragraph.field_url.yml │ │ │ ├── field.storage.paragraph.field_body.yml │ │ │ ├── field.storage.paragraph.field_details.yml │ │ │ ├── field.storage.paragraph.field_title.yml │ │ │ └── field.storage.node.field_paragraph.yml │ ├── wxt_ext_search │ │ ├── wxt_ext_search.wxt_extension.yml │ │ └── wxt_ext_search.info.yml │ ├── wxt_ext_fontawesome │ │ ├── wxt_ext_fontawesome.module │ │ ├── wxt_ext_fontawesome.wxt_extension.yml │ │ ├── wxt_ext_fontawesome.info.yml │ │ └── config │ │ │ └── rewrite │ │ │ └── fontawesome.settings.yml │ ├── wxt_ext_metatag │ │ ├── wxt_ext_metatag.wxt_extension.yml │ │ ├── config │ │ │ └── rewrite │ │ │ │ ├── metatag.metatag_defaults.user.yml │ │ │ │ ├── metatag.metatag_defaults.front.yml │ │ │ │ ├── metatag.metatag_defaults.taxonomy_term.yml │ │ │ │ ├── metatag.metatag_defaults.global.yml │ │ │ │ └── metatag.metatag_defaults.node.yml │ │ ├── wxt_ext_metatag.info.yml │ │ └── src │ │ │ └── Plugin │ │ │ └── metatag │ │ │ └── Group │ │ │ └── AdobeAnalytics.php │ ├── wxt_ext_webform │ │ ├── wxt_ext_webform.wxt_extension.yml │ │ ├── config │ │ │ ├── install │ │ │ │ └── language.content_settings.node.webform.yml │ │ │ └── rewrite │ │ │ │ ├── field.storage.node.webform.yml │ │ │ │ ├── field.field.node.webform.body.yml │ │ │ │ └── node.type.webform.yml │ │ └── wxt_ext_webform.info.yml │ ├── wxt_ext_archived │ │ ├── wxt_ext_archived.wxt_extension.yml │ │ ├── wxt_ext_archived.info.yml │ │ ├── config │ │ │ ├── schema │ │ │ │ └── wxt_ext_archived.schema.yml │ │ │ ├── optional │ │ │ │ └── field.storage.node.field_archived.yml │ │ │ └── language │ │ │ │ └── fr │ │ │ │ └── block.block.archivedblock.yml │ │ └── wxt_ext_archived.install │ ├── wxt_ext_carousel │ │ ├── wxt_ext_carousel.wxt_extension.yml │ │ ├── config │ │ │ └── optional │ │ │ │ ├── block_content.type.carousel.yml │ │ │ │ ├── paragraphs.paragraphs_type.carousel_item.yml │ │ │ │ ├── image.style.carousel.yml │ │ │ │ ├── field.storage.paragraph.field_link.yml │ │ │ │ ├── field.storage.paragraph.field_image.yml │ │ │ │ ├── language.content_settings.block_content.carousel.yml │ │ │ │ ├── language.content_settings.paragraph.carousel_item.yml │ │ │ │ ├── field.storage.block_content.field_carousel_item.yml │ │ │ │ ├── field.field.paragraph.carousel_item.field_link.yml │ │ │ │ ├── field.field.block_content.carousel.field_transition_type.yml │ │ │ │ └── field.storage.block_content.field_transition_type.yml │ │ └── wxt_ext_carousel.info.yml │ ├── wxt_ext_taxonomy │ │ ├── wxt_ext_taxonomy.wxt_extension.yml │ │ ├── config │ │ │ └── install │ │ │ │ └── taxonomy.vocabulary.blog_freetags.yml │ │ └── wxt_ext_taxonomy.info.yml │ ├── wxt_ext_workflow │ │ ├── wxt_ext_workflow.wxt_extension.yml │ │ ├── config │ │ │ ├── language │ │ │ │ └── fr │ │ │ │ │ └── views.view.moderation_history.yml │ │ │ └── schema │ │ │ │ └── wxt_ext_workflow.schema.yml │ │ ├── wxt_ext_workflow.info.yml │ │ ├── wxt_ext_workflow.post_update.php │ │ └── wxt_ext_workflow.links.contextual.yml │ ├── wxt_ext_breadcrumb │ │ ├── wxt_ext_breadcrumb.wxt_extension.yml │ │ ├── wxt_ext_breadcrumb.permissions.yml │ │ ├── wxt_ext_breadcrumb.links.menu.yml │ │ ├── wxt_ext_breadcrumb.routing.yml │ │ ├── wxt_ext_breadcrumb.info.yml │ │ └── config │ │ │ └── rewrite │ │ │ └── menu_breadcrumb.settings.yml │ ├── wxt_ext_media_image │ │ ├── wxt_ext_media_image.wxt_extension.yml │ │ ├── config │ │ │ └── optional │ │ │ │ ├── core.entity_form_mode.media.media_browser.yml │ │ │ │ ├── media.type.image.yml │ │ │ │ ├── crop.type.freeform.yml │ │ │ │ ├── field.field.media.image.field_media_in_library.yml │ │ │ │ ├── field.storage.media.field_media_image.yml │ │ │ │ ├── core.entity_view_display.media.image.default.yml │ │ │ │ ├── core.entity_view_display.media.image.media_library.yml │ │ │ │ └── core.entity_view_display.media.image.embedded.yml │ │ ├── wxt_ext_media_image.info.yml │ │ └── src │ │ │ └── Plugin │ │ │ └── media │ │ │ └── Source │ │ │ └── Image.php │ ├── wxt_ext_media_audio │ │ ├── wxt_ext_media_audio.wxt_extension.yml │ │ ├── wxt_ext_media_audio.install │ │ ├── wxt_ext_media_audio.info.yml │ │ ├── config │ │ │ └── optional │ │ │ │ ├── media.type.audio.yml │ │ │ │ ├── field.storage.media.field_media_audio_file.yml │ │ │ │ └── field.field.media.audio.field_media_in_library.yml │ │ ├── wxt_ext_media_audio.module │ │ └── src │ │ │ └── Plugin │ │ │ └── media │ │ │ └── Source │ │ │ └── AudioFile.php │ ├── wxt_ext_media_slideshow │ │ ├── wxt_ext_media_slideshow.module │ │ ├── wxt_ext_media_slideshow.wxt_extension.yml │ │ ├── config │ │ │ ├── optional │ │ │ │ ├── core.entity_view_mode.media.slideshow.yml │ │ │ │ ├── block_content.type.media_slideshow.yml │ │ │ │ ├── media.type.slideshow.yml │ │ │ │ ├── field.storage.media.slideshow_items.yml │ │ │ │ ├── field.storage.block_content.field_slideshow_items.yml │ │ │ │ ├── field.field.media.slideshow.field_slideshow_style.yml │ │ │ │ ├── field.storage.media.field_slideshow_style.yml │ │ │ │ └── field.field.media.slideshow.field_media_in_library.yml │ │ │ └── install │ │ │ │ └── image.style.slideshow.yml │ │ ├── wxt_media_slideshow.services.yml │ │ ├── wxt_ext_media_slideshow.info.yml │ │ └── wxt_ext_media_slideshow.features.yml │ ├── wxt_ext_media_video │ │ ├── wxt_ext_media_video.wxt_extension.yml │ │ ├── wxt_ext_media_video.install │ │ ├── wxt_ext_media_video.info.yml │ │ ├── config │ │ │ └── optional │ │ │ │ ├── media.type.video.yml │ │ │ │ ├── media.type.remote_video.yml │ │ │ │ ├── field.storage.media.field_media_oembed_video.yml │ │ │ │ ├── field.storage.media.field_media_video_file.yml │ │ │ │ ├── field.field.media.remote_video.field_media_oembed_video.yml │ │ │ │ ├── field.field.media.video.field_media_in_library.yml │ │ │ │ └── field.field.media.remote_video.field_media_in_library.yml │ │ └── src │ │ │ └── Plugin │ │ │ └── media │ │ │ └── Source │ │ │ └── VideoFile.php │ ├── wxt_ext_password_policy │ │ ├── wxt_ext_password_policy.module │ │ ├── wxt_ext_password_policy.wxt_extension.yml │ │ ├── config │ │ │ └── install │ │ │ │ └── password_policy.password_policy.wxt_ism_policy_strong.yml │ │ └── wxt_ext_password_policy.info.yml │ ├── wxt_ext_landing_page │ │ ├── wxt_ext_landing_page.wxt_extension.yml │ │ ├── config │ │ │ ├── install │ │ │ │ ├── node.type.landing_page.yml │ │ │ │ ├── field.storage.node.layout_builder__layout.yml │ │ │ │ ├── field.storage.node.layout_builder__translation.yml │ │ │ │ ├── core.base_field_override.node.landing_page.promote.yml │ │ │ │ ├── field.field.node.landing_page.body.yml │ │ │ │ ├── field.field.node.landing_page.layout_builder__layout.yml │ │ │ │ ├── field.field.node.landing_page.field_meta_tags.yml │ │ │ │ └── field.field.node.landing_page.layout_builder__translation.yml │ │ │ └── optional │ │ │ │ └── pathauto.pattern.landing_page.yml │ │ └── wxt_ext_landing_page.info.yml │ ├── wxt_ext_search_db │ │ ├── wxt_ext_search_db.wxt_extension.yml │ │ ├── wxt_ext_search_db.info.yml │ │ └── config │ │ │ └── optional │ │ │ └── search_api.server.default_server.yml │ ├── wxt_ext_media_twitter │ │ ├── wxt_ext_media_twitter.wxt_extension.yml │ │ ├── wxt_ext_media_twitter.install │ │ ├── templates │ │ │ └── media-entity-twitter-tweet.html.twig │ │ ├── wxt_ext_media_twitter.info.yml │ │ ├── config │ │ │ └── optional │ │ │ │ ├── media.type.tweet.yml │ │ │ │ ├── field.field.media.tweet.embed_code.yml │ │ │ │ ├── field.field.media.tweet.field_media_in_library.yml │ │ │ │ ├── core.entity_view_display.media.tweet.default.yml │ │ │ │ └── core.entity_view_display.media.tweet.thumbnail.yml │ │ └── src │ │ │ └── Plugin │ │ │ └── media │ │ │ └── Source │ │ │ └── Twitter.php │ ├── wxt_ext_media_document │ │ ├── wxt_ext_media_document.wxt_extension.yml │ │ ├── wxt_ext_media_document.info.yml │ │ ├── config │ │ │ └── optional │ │ │ │ ├── media.type.document.yml │ │ │ │ ├── field.storage.media.field_media_document.yml │ │ │ │ ├── field.field.media.document.field_media_in_library.yml │ │ │ │ └── core.entity_view_display.media.document.embedded.yml │ │ ├── wxt_ext_media_document.module │ │ └── src │ │ │ └── Plugin │ │ │ └── media │ │ │ └── Source │ │ │ └── File.php │ ├── wxt_ext_media_instagram │ │ ├── wxt_ext_media_instagram.wxt_extension.yml │ │ ├── wxt_ext_media_instagram.install │ │ ├── wxt_ext_media_instagram.info.yml │ │ ├── config │ │ │ └── optional │ │ │ │ ├── media.type.instagram.yml │ │ │ │ ├── field.field.media.instagram.embed_code.yml │ │ │ │ └── field.field.media.instagram.field_media_in_library.yml │ │ └── src │ │ │ └── Plugin │ │ │ └── media │ │ │ └── Source │ │ │ └── Instagram.php │ ├── wxt_ext_media_bulk_upload │ │ ├── wxt_ext_media_bulk_upload.wxt_extension.yml │ │ ├── wxt_ext_media_bulk_upload.links.action.yml │ │ ├── wxt_ext_media_bulk_upload.routing.yml │ │ ├── wxt_ext_media_bulk_upload.info.yml │ │ └── wxt_ext_media_bulk_upload.install │ └── wxt_ext_media_image_responsive │ │ ├── wxt_ext_media_image_responsive.wxt_extension.yml │ │ ├── config │ │ └── optional │ │ │ ├── core.entity_view_mode.media.large.yml │ │ │ ├── core.entity_view_mode.media.medium.yml │ │ │ ├── core.entity_view_mode.media.small.yml │ │ │ ├── core.entity_view_mode.media.full_width.yml │ │ │ ├── image.style.responsive_mobile_small.yml │ │ │ ├── image.style.responsive_tablet_small.yml │ │ │ ├── image.style.responsive_desktop_large.yml │ │ │ ├── image.style.responsive_desktop_medium.yml │ │ │ ├── image.style.responsive_desktop_small.yml │ │ │ ├── image.style.responsive_tabled_medium.yml │ │ │ ├── image.style.responsive_mobile_full_width.yml │ │ │ ├── image.style.responsive_tablet_full_width.yml │ │ │ └── image.style.responsive_desktop_full_width.yml │ │ ├── wxt_ext_media_image_responsive.info.yml │ │ ├── wxt_ext_media_image_responsive.install │ │ └── wxt_ext_media_image_responsive.module │ ├── wxt_translation │ ├── config │ │ └── optional │ │ │ ├── language │ │ │ └── fr │ │ │ │ ├── language.entity.en.yml │ │ │ │ ├── language.entity.fr.yml │ │ │ │ ├── language.entity.und.yml │ │ │ │ ├── language.entity.zxx.yml │ │ │ │ ├── system.maintenance.yml │ │ │ │ └── views.view.frontpage.yml │ │ │ └── language.entity.fr.yml │ ├── wxt_translation.batch.inc │ └── wxt_translation.info.yml │ ├── wxt_admin │ ├── wxt_admin.module │ ├── wxt_admin.permissions.yml │ ├── wxt_admin.services.yml │ └── wxt_admin.info.yml │ └── wxt_core │ ├── images │ └── default-avatar.png │ ├── wxt_core.permissions.yml │ ├── config │ ├── install │ │ ├── core.date_format.wxt_standard.yml │ │ ├── core.date_format.long_12h.yml │ │ ├── core.entity_view_mode.node.featured.yml │ │ └── image.style.small.yml │ └── optional │ │ ├── field.storage.node.field_meta_tags.yml │ │ ├── field.storage.user.field_last_name.yml │ │ ├── field.storage.user.field_first_name.yml │ │ ├── field.field.user.user.field_last_name.yml │ │ ├── field.field.user.user.field_first_name.yml │ │ ├── core.entity_view_display.user.user.default.yml │ │ ├── field.storage.node.field_image.yml │ │ ├── field.storage.user.user_picture.yml │ │ └── core.entity_form_display.user.user.default.yml │ ├── src │ ├── Form │ │ ├── RoleForm.php │ │ ├── EntityFormModeAddForm.php │ │ ├── EntityDisplayModeAddForm.php │ │ └── EntityDisplayModeEditForm.php │ ├── Plugin │ │ └── views │ │ │ └── filter │ │ │ └── Bundle.php │ ├── Entity │ │ ├── Role.php │ │ └── EntityFormMode.php │ └── Annotation │ │ └── UpdateWxT.php │ ├── drush.services.yml │ └── wxt_core.links.menu.yml ├── wxt.services.yml ├── wxt.links.menu.yml ├── src ├── Installer │ └── ExtensionException.php └── README.md ├── package.json ├── KNOWN_ISSUES.md ├── phpcs.xml.dist ├── version.sh ├── .gitignore ├── .github └── workflows │ └── changelog.yml └── wxt.info.yml /tests/files/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/fixtures/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/install/system.logging.yml: -------------------------------------------------------------------------------- 1 | error_level: all 2 | -------------------------------------------------------------------------------- /wxt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drupalwxt/wxt/HEAD/wxt.png -------------------------------------------------------------------------------- /favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drupalwxt/wxt/HEAD/favicon.ico -------------------------------------------------------------------------------- /config/install/system.theme.yml: -------------------------------------------------------------------------------- 1 | admin: claro 2 | default: wxt_bootstrap 3 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_theme/config/rewrite/node.settings.yml: -------------------------------------------------------------------------------- 1 | use_admin_theme: true 2 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blog/config/language/fr/page_manager.page.blog.yml: -------------------------------------------------------------------------------- 1 | label: Blogue 2 | -------------------------------------------------------------------------------- /modules/custom/wxt_translation/config/optional/language/fr/language.entity.en.yml: -------------------------------------------------------------------------------- 1 | label: Anglais 2 | -------------------------------------------------------------------------------- /modules/custom/wxt_translation/config/optional/language/fr/language.entity.fr.yml: -------------------------------------------------------------------------------- 1 | label: Français 2 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_user/config/rewrite/user.settings.yml: -------------------------------------------------------------------------------- 1 | register: visitors_admin_approval 2 | -------------------------------------------------------------------------------- /modules/custom/wxt_translation/config/optional/language/fr/language.entity.und.yml: -------------------------------------------------------------------------------- 1 | label: 'Non spécifié' 2 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext.module: -------------------------------------------------------------------------------- 1 | ' 4 | menu_name: main 5 | wxt.front_page_fr: 6 | title: 'Accueil' 7 | route_name: '' 8 | menu_name: main-fr 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/config/install/core.date_format.wxt_standard.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: { } 4 | id: wxt_standard 5 | label: 'Standard (WxT)' 6 | locked: false 7 | pattern: 'F d, Y' 8 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image_responsive/wxt_ext_media_image_responsive.wxt_extension.yml: -------------------------------------------------------------------------------- 1 | name: WxT Extend Media Image Responsive 2 | description: WxT Extend Media Image Responsive 3 | default: false 4 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/config/install/core.date_format.long_12h.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: { } 4 | id: long_12h 5 | label: 'Long (12-hour)' 6 | locked: false 7 | pattern: 'F j, Y \a\t g:i A' 8 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_breadcrumb/wxt_ext_breadcrumb.permissions.yml: -------------------------------------------------------------------------------- 1 | administer wxt_ext_breadcrumb: 2 | title: 'Administer wxt breadcrumbs' 3 | description: 'Access the wxt breadcrumbs pages.' 4 | restrict access: true 5 | -------------------------------------------------------------------------------- /src/Installer/ExtensionException.php: -------------------------------------------------------------------------------- 1 | 8 | 9 | [drupal-queue]: https://drupal.org/project/issues/wxt?categories=All 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_audio/wxt_ext_media_audio.info.yml: -------------------------------------------------------------------------------- 1 | name: 'Media Audio' 2 | core_version_requirement: '^9 || ^10' 3 | type: module 4 | package: WxT 5 | description: 'Provides an Audio entity type for Media.' 6 | dependencies: 7 | - 'wxt_ext_media:wxt_ext_media' 8 | version: 5.4.2 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image/wxt_ext_media_image.info.yml: -------------------------------------------------------------------------------- 1 | name: 'Media Image' 2 | core_version_requirement: '^9 || ^10' 3 | type: module 4 | package: WxT 5 | description: 'Provides an Image entity type for Media.' 6 | dependencies: 7 | - 'wxt_ext_media:wxt_ext_media' 8 | version: 5.4.2 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_video/wxt_ext_media_video.info.yml: -------------------------------------------------------------------------------- 1 | name: 'Media Video' 2 | core_version_requirement: '^9 || ^10' 3 | type: module 4 | package: WxT 5 | description: 'Provides a Video entity type for Media.' 6 | dependencies: 7 | - 'wxt_ext_media:wxt_ext_media' 8 | version: 5.4.2 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_theme/wxt_ext_theme.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Theme' 2 | description: 'Provides theming and related functionality.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'config_rewrite:config_rewrite' 8 | version: 5.4.2 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blog/config/optional/page_manager.page.blog.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: { } 4 | id: blog 5 | label: Blog 6 | description: '' 7 | use_admin_theme: false 8 | path: /blog 9 | access_logic: and 10 | access_conditions: { } 11 | parameters: { } 12 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_document/wxt_ext_media_document.info.yml: -------------------------------------------------------------------------------- 1 | name: 'Media Document' 2 | core_version_requirement: '^9 || ^10' 3 | type: module 4 | description: 'Provides a Document entity type for Media.' 5 | package: WxT 6 | dependencies: 7 | - 'wxt_ext_media:wxt_ext_media' 8 | version: 5.4.2 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_slideshow/config/optional/core.entity_view_mode.media.slideshow.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | third_party_settings: { } 7 | id: media.slideshow 8 | label: Slideshow 9 | targetEntityType: media 10 | cache: true 11 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_metatag/config/rewrite/metatag.metatag_defaults.user.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: { } 5 | id: user 6 | label: User 7 | tags: 8 | canonical_url: '[user:url]' 9 | description: '[site:name]' 10 | title: '[user:name]' 11 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_taxonomy/wxt_ext_taxonomy.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Taxonomy' 2 | description: 'Provides taxonomy vocabularies used for categorizing content.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'drupal:taxonomy' 8 | version: 5.4.2 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_metatag/config/rewrite/metatag.metatag_defaults.front.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: { } 5 | id: front 6 | label: 'Front page' 7 | tags: 8 | canonical_url: '[site:url]' 9 | title: '[site:name]' 10 | shortlink: '[site:url]' 11 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_workflow/wxt_ext_workflow.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Workflow' 2 | description: 'Provides enhanced functionality to improve your content workflow.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'drupal:content_moderation' 8 | version: 5.4.2 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_book/wxt_ext_book.routing.yml: -------------------------------------------------------------------------------- 1 | wxt_ext_book.admin_config_wxt_ext_book: 2 | path: '/admin/config/wxt/wxt_ext_book' 3 | defaults: 4 | _form: '\Drupal\wxt_ext_book\Form\WxtBookSettingsForm' 5 | _title: 'WxT Book Settings' 6 | requirements: 7 | _permission: 'administer site configuration' 8 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_editor/icons/panel.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_landing_page/config/install/node.type.landing_page.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | name: 'Landing page' 4 | type: landing_page 5 | description: 'A special page with its own one-off layout and content.' 6 | help: '' 7 | new_revision: true 8 | preview_mode: 0 9 | display_submitted: false 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_twitter/templates/media-entity-twitter-tweet.html.twig: -------------------------------------------------------------------------------- 1 | {# 2 | /** 3 | * @file 4 | * Default theme implementation to display a tweet. 5 | * 6 | * @ingroup themeable 7 | */ 8 | #} 9 | 10 | {{ placeholder }} 11 | 12 | -------------------------------------------------------------------------------- /config/install/system.site.yml: -------------------------------------------------------------------------------- 1 | name: 'Web Experience Toolkit' 2 | mail: admin@example.com 3 | slogan: 'Collaborative open source project led by the Government of Canada' 4 | page: 5 | 403: '' 6 | 404: '' 7 | front: /node 8 | admin_compact_mode: false 9 | weight_select_max: 100 10 | langcode: en 11 | default_langcode: en 12 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media/config/install/core.entity_view_mode.media.thumbnail.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | third_party_settings: 7 | wxt_core: 8 | description: '' 9 | id: media.thumbnail 10 | label: Thumbnail 11 | targetEntityType: media 12 | cache: true 13 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_sitemap/wxt_ext_sitemap.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Sitemap' 2 | description: 'Provides a default sitemap.' 3 | type: module 4 | package: WxT 5 | core_version_requirement: '^9 || ^10' 6 | dependencies: 7 | - 'simple_sitemap:simple_sitemap' 8 | - 'wxt_ext_page:wxt_ext_page' 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_archived/wxt_ext_archived.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Archived' 2 | description: 'Creates an archived alert block triggered by a checkbox field on a entity.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'wxt_ext_blocks:wxt_ext_blocks' 8 | version: 5.4.2 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_breadcrumb/wxt_ext_breadcrumb.routing.yml: -------------------------------------------------------------------------------- 1 | wxt_ext_breadcrumb.settings_form: 2 | path: '/admin/config/wxt/wxt_ext_breadcrumb' 3 | defaults: 4 | _title: 'WxT Breadcrumbs' 5 | _form: '\Drupal\wxt_ext_breadcrumb\Form\BreadcrumbsForm' 6 | requirements: 7 | _permission: 'administer wxt_ext_breadcrumb' 8 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_carousel/config/optional/paragraphs.paragraphs_type.carousel_item.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: { } 4 | id: carousel_item 5 | label: 'Carousel item' 6 | icon_uuid: null 7 | icon_default: null 8 | description: 'An image and link to display in a carousel.' 9 | behavior_plugins: { } 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_fontawesome/wxt_ext_fontawesome.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Font Awesome' 2 | description: 'Adds Font Awesome support.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'config_rewrite:config_rewrite' 8 | - 'fontawesome:fontawesome' 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image/config/optional/media.type.image.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | id: image 7 | label: Image 8 | description: 'Locally hosted images.' 9 | source: image 10 | source_configuration: 11 | source_field: field_media_image 12 | field_map: { } 13 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_metatag/config/rewrite/metatag.metatag_defaults.taxonomy_term.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: { } 5 | id: taxonomy_term 6 | label: 'Taxonomy term' 7 | tags: 8 | description: '[term:description]' 9 | canonical_url: '[term:url]' 10 | title: '[term:title]' 11 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_editor/js/ckeditor5_plugins/wxt_alert/src/alert.js: -------------------------------------------------------------------------------- 1 | import AlertEditing from './alertediting'; 2 | import AlertUI from './alertui'; 3 | import { Plugin } from 'ckeditor5/src/core'; 4 | 5 | export default class Alert extends Plugin { 6 | static get requires() { 7 | return [AlertEditing, AlertUI]; 8 | } 9 | } -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_editor/js/ckeditor5_plugins/wxt_panel/src/panel.js: -------------------------------------------------------------------------------- 1 | import PanelEditing from './panelediting'; 2 | import PanelUI from './panelui'; 3 | import { Plugin } from 'ckeditor5/src/core'; 4 | 5 | export default class Panel extends Plugin { 6 | static get requires() { 7 | return [PanelEditing, PanelUI]; 8 | } 9 | } -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media/config/optional/core.entity_view_mode.media.linked.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | - wxt_core 7 | third_party_settings: 8 | wxt_core: 9 | description: '' 10 | id: media.linked 11 | label: Linked 12 | targetEntityType: media 13 | cache: true 14 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_slideshow/config/optional/block_content.type.media_slideshow.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | enforced: 5 | module: 6 | - wxt_ext_media_slideshow 7 | id: media_slideshow 8 | label: 'Slideshow' 9 | revision: 0 10 | description: 'A slideshow or carousel of media items.' 11 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_archived/config/schema/wxt_ext_archived.schema.yml: -------------------------------------------------------------------------------- 1 | block.settings.wxt_archived_block: 2 | type: block_settings 3 | label: 'field translations' 4 | mapping: 5 | archived_title: 6 | type: text 7 | label: 'Archived title' 8 | archived_text: 9 | type: text 10 | label: 'Archived text' 11 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_book/wxt_ext_book.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Book' 2 | description: 'Configures book module to support GC Subway functionality.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'book:book' 8 | configure: wxt_ext_book.admin_config_wxt_ext_book 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_bulk_upload/wxt_ext_media_bulk_upload.routing.yml: -------------------------------------------------------------------------------- 1 | wxt_ext_media.bulk_upload: 2 | path: '/admin/content/media/bulk-upload' 3 | defaults: 4 | _title: 'Bulk upload' 5 | _form: '\Drupal\wxt_ext_media_bulk_upload\Form\BulkUploadForm' 6 | requirements: 7 | _permission: 'dropzone upload files,create media' 8 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_paragraph/wxt_ext_paragraph.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Paragraph' 2 | description: 'Provides Paragraph and related functionality.' 3 | type: module 4 | package: WxT 5 | core_version_requirement: '^9 || ^10' 6 | dependencies: 7 | - 'paragraphs:paragraphs' 8 | - 'wxt_translation:wxt_translation' 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_translation/wxt_translation.batch.inc: -------------------------------------------------------------------------------- 1 | getPath('locale') . '/locale.bulk.inc'; 9 | include_once \Drupal::service('extension.list.module')->getPath('locale') . '/locale.batch.inc'; 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_bulk_upload/wxt_ext_media_bulk_upload.info.yml: -------------------------------------------------------------------------------- 1 | name: 'Bulk Media Upload' 2 | core_version_requirement: '^9 || ^10' 3 | type: module 4 | description: 'Provides improvements to Bulk Upload for Media.' 5 | package: WxT 6 | dependencies: 7 | - 'dropzonejs:dropzonejs' 8 | - 'wxt_ext_media:wxt_ext_media' 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image_responsive/config/optional/core.entity_view_mode.media.large.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | - wxt_core 7 | third_party_settings: 8 | wxt_core: 9 | description: '' 10 | id: media.large 11 | label: Large 12 | targetEntityType: media 13 | cache: true 14 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image_responsive/config/optional/core.entity_view_mode.media.medium.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | - wxt_core 7 | third_party_settings: 8 | wxt_core: 9 | description: '' 10 | id: media.medium 11 | label: Medium 12 | targetEntityType: media 13 | cache: true 14 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image_responsive/config/optional/core.entity_view_mode.media.small.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | - wxt_core 7 | third_party_settings: 8 | wxt_core: 9 | description: '' 10 | id: media.small 11 | label: Small 12 | targetEntityType: media 13 | cache: true 14 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_layout/wxt_ext_layout.routing.yml: -------------------------------------------------------------------------------- 1 | wxt_ext_layout.settings: 2 | path: '/admin/config/wxt/wxt_ext_layout' 3 | defaults: 4 | _title: WxT Extend Layout 5 | _form: '\Drupal\wxt_ext_layout\Form\SettingsForm' 6 | requirements: 7 | _is_administrator: 'true' 8 | _custom_access: '\Drupal\wxt_ext_layout\Form\SettingsForm::access' 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_twitter/wxt_ext_media_twitter.info.yml: -------------------------------------------------------------------------------- 1 | name: 'Media Twitter' 2 | core_version_requirement: '^9 || ^10' 3 | type: module 4 | package: WxT 5 | description: 'Provides a Twitter entity type for Media.' 6 | dependencies: 7 | - 'wxt_ext_media:wxt_ext_media' 8 | - 'media_entity_twitter:media_entity_twitter' 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_translation/wxt_translation.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Translation' 2 | description: 'Ensures that both of the official languages for Canada are setup correctly.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'drupal:config_translation' 8 | - 'drupal:content_translation' 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_admin/wxt_admin.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Admin' 2 | description: 'Provides the default configuration and various helper methods for administrative tasks.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'admin_toolbar:admin_toolbar' 8 | - 'admin_toolbar_tools:admin_toolbar_tools' 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image/config/optional/crop.type.freeform.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: { } 4 | label: Freeform 5 | id: freeform 6 | description: 'Crops without enforcing any aspect ratio.' 7 | aspect_ratio: '' 8 | soft_limit_width: null 9 | soft_limit_height: null 10 | hard_limit_width: null 11 | hard_limit_height: null 12 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_search_db/wxt_ext_search_db.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Search Database' 2 | description: 'Provides a default setup for Search w/Database Backend.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'wxt_ext_search:wxt_ext_search' 8 | - 'search_api:search_api_db' 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_breadcrumb/wxt_ext_breadcrumb.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Breadcrumb' 2 | description: 'Configures breadcrumb and related functionality.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'menu_breadcrumb:menu_breadcrumb' 8 | configure: wxt_ext_breadcrumb.settings_form 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_group/wxt_ext_group.install: -------------------------------------------------------------------------------- 1 | install(['flexible_permissions']); 13 | } 14 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_layout/config/schema/wxt_ext_layout.schema.yml: -------------------------------------------------------------------------------- 1 | wxt_ext_layout.settings: 2 | type: config_object 3 | label: 'WxT Extend Layout settings' 4 | mapping: 5 | entity_blocks: 6 | type: sequence 7 | label: 'Entity Blocks entity type whitelist' 8 | sequence: 9 | type: string 10 | label: 'Entity type ID' 11 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media/wxt_ext_media.services.yml: -------------------------------------------------------------------------------- 1 | services: 2 | wxt.media_helper: 3 | class: '\Drupal\wxt_ext_media\MediaHelper' 4 | arguments: 5 | - '@entity_type.manager' 6 | 7 | wxt_ext_media.route_subscriber: 8 | class: '\Drupal\wxt_ext_media\Routing\RouteSubscriber' 9 | tags: 10 | - 11 | name: event_subscriber 12 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image_responsive/config/optional/core.entity_view_mode.media.full_width.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | - wxt_core 7 | third_party_settings: 8 | wxt_core: 9 | description: '' 10 | id: media.full_width 11 | label: 'Full width' 12 | targetEntityType: media 13 | cache: true 14 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image_responsive/wxt_ext_media_image_responsive.info.yml: -------------------------------------------------------------------------------- 1 | name: 'Media Image' 2 | core_version_requirement: '^9 || ^10' 3 | type: module 4 | package: WxT 5 | description: 'Provides responsive image support for Media.' 6 | dependencies: 7 | - 'drupal:responsive_image' 8 | - 'wxt_ext_media_image:wxt_ext_media_image' 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_instagram/wxt_ext_media_instagram.info.yml: -------------------------------------------------------------------------------- 1 | name: 'Media Instagram' 2 | core_version_requirement: '^9 || ^10' 3 | type: module 4 | description: 'Provides an Instagram entity type for Media.' 5 | package: WxT 6 | dependencies: 7 | - 'wxt_ext_media:wxt_ext_media' 8 | - 'media_entity_instagram:media_entity_instagram' 9 | version: 5.4.2 10 | -------------------------------------------------------------------------------- /tests/features/roles.feature: -------------------------------------------------------------------------------- 1 | @wxt @core @api 2 | Feature: User roles and related config 3 | 4 | Scenario: Administrator Role select list should be present in Account Settings 5 | Given I am logged in as a user with the administrator role 6 | When I visit "/admin/people/role-settings" 7 | Then I should see "This role will be automatically granted all permissions." 8 | -------------------------------------------------------------------------------- /config/schema/wxt.schema.yml: -------------------------------------------------------------------------------- 1 | user.role.*.third_party.wxt: 2 | type: mapping 3 | label: 'WxT settings' 4 | mapping: 5 | bundled: 6 | type: boolean 7 | label: 'Bundled with WxT' 8 | 9 | wxt.versions: 10 | type: config_object 11 | label: 'WxT component versions' 12 | mapping: 13 | config_value: 14 | type: string 15 | label: 'Version' 16 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blocks/config/optional/core.entity_view_mode.block_content.featured.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - block_content 6 | - wxt_core 7 | third_party_settings: 8 | wxt_core: 9 | description: '' 10 | id: block_content.featured 11 | label: Featured 12 | targetEntityType: block_content 13 | cache: true 14 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media/config/optional/pathauto.pattern.media.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | id: media 7 | label: Media 8 | type: 'canonical_entities:media' 9 | pattern: 'media/[media:bundle:target_id]/[media:mid]' 10 | selection_criteria: { } 11 | selection_logic: and 12 | weight: -5 13 | relationships: { } 14 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_migration/config/install/migrate_plus.migration_group.wxt.yml: -------------------------------------------------------------------------------- 1 | id: wxt 2 | label: WxT Migrate 3 | description: Provides default content and related configuration for Drupal WxT. 4 | source_type: Embedded data 5 | dependencies: 6 | enforced: 7 | module: 8 | - wxt_ext_migration 9 | shared_configuration: 10 | source: 11 | key: default 12 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_slideshow/wxt_media_slideshow.services.yml: -------------------------------------------------------------------------------- 1 | services: 2 | wxt_ext_media_slideshow.uninstall_validator: 3 | class: '\Drupal\wxt_ext_media_slideshow\UninstallValidator' 4 | arguments: 5 | - '@entity_type.manager' 6 | - '@string_translation' 7 | tags: 8 | - { name: module_install.uninstall_validator } 9 | lazy: true 10 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_migration/config/install/migrate_plus.migration_group.gcweb.yml: -------------------------------------------------------------------------------- 1 | id: gcweb 2 | label: GCWEB Migrate 3 | description: Provides default content and related configuration for Drupal WxT. 4 | source_type: Embedded data 5 | dependencies: 6 | enforced: 7 | module: 8 | - wxt_ext_migration 9 | shared_configuration: 10 | source: 11 | key: default 12 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/config/install/image.style.small.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: { } 4 | name: small 5 | label: 'Small (50x50)' 6 | effects: 7 | 95a7ddba-94ab-4a2e-915c-e06ca3f76c2b: 8 | uuid: 95a7ddba-94ab-4a2e-915c-e06ca3f76c2b 9 | id: image_scale 10 | weight: 1 11 | data: 12 | width: 50 13 | height: 50 14 | upscale: false 15 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_metatag/config/rewrite/metatag.metatag_defaults.global.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: { } 5 | id: global 6 | label: Global 7 | tags: 8 | title: '[current-page:title] - [site:name]' 9 | canonical_url: '[current-page:url]' 10 | dcterms_title: '[current-page:title]' 11 | dcterms_language: '[language:langcode]' 12 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_user/config/install/system.action.user_add_role_action.creator.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - user.role.creator 6 | module: 7 | - user 8 | id: user_add_role_action.creator 9 | label: 'Add the Creator role to the selected users' 10 | type: user 11 | plugin: user_add_role_action 12 | configuration: 13 | rid: creator 14 | -------------------------------------------------------------------------------- /phpcs.xml.dist: -------------------------------------------------------------------------------- 1 | 2 | 3 | Default PHP CodeSniffer configuration for Drupal project. 4 | 5 | 6 | */libraries/* 7 | 8 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_bulk_upload/wxt_ext_media_bulk_upload.install: -------------------------------------------------------------------------------- 1 | Bienvenue à [site:name]. Aucun contenu de la page d''accueil n''a été créé.

Voulez-vous voir le README?

' 7 | title: 8 | title: 'Bienvenue à [site:name]' 9 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_video/config/optional/media.type.video.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - file 6 | id: video 7 | label: 'Video file' 8 | description: 'A locally hosted video file' 9 | source: video_file 10 | queue_thumbnail_downloads: false 11 | new_revision: false 12 | source_configuration: 13 | source_field: field_media_video_file 14 | field_map: { } 15 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_user/config/install/system.action.user_remove_role_action.reviewer.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - user.role.reviewer 6 | module: 7 | - user 8 | id: user_remove_role_action.reviewer 9 | label: 'Remove the Reviewer role from the selected users' 10 | type: user 11 | plugin: user_remove_role_action 12 | configuration: 13 | rid: reviewer 14 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blocks/config/optional/image.style.spotlight.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: { } 4 | name: spotlight 5 | label: 'Spotlight (360x167)' 6 | effects: 7 | 5e414783-b1db-409d-abd2-aacfd2f5d621: 8 | uuid: 5e414783-b1db-409d-abd2-aacfd2f5d621 9 | id: image_scale 10 | weight: 1 11 | data: 12 | width: 360 13 | height: 167 14 | upscale: false 15 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_carousel/config/optional/image.style.carousel.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: { } 4 | name: carousel 5 | label: Carousel 6 | effects: 7 | 226bdb77-883e-4463-842f-66ad82d74dc2: 8 | uuid: 226bdb77-883e-4463-842f-66ad82d74dc2 9 | id: image_scale_and_crop 10 | weight: 1 11 | data: 12 | width: 730 13 | height: 249 14 | anchor: center-center 15 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_migration/config/install/migrate_plus.migration_group.gc_intranet_translation.yml: -------------------------------------------------------------------------------- 1 | id: gc_intranet_translation 2 | label: GC Intranet Migrate 3 | description: Provides default content and related configuration for Drupal WxT. 4 | source_type: Embedded data 5 | dependencies: 6 | enforced: 7 | module: 8 | - wxt_ext_migration 9 | shared_configuration: 10 | source: 11 | key: default 12 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_migration/wxt_ext_migration.services.yml: -------------------------------------------------------------------------------- 1 | services: 2 | wxt_ext_migration.migration_subscriber: 3 | class: Drupal\wxt_ext_migration\EventSubscriber\MigrationSubscriber 4 | arguments: ['@database', '@entity_type.manager', '@config.factory', '@session_manager', '@session', '@current_user', '@uuid', '@cache_tags.invalidator', '@tempstore.shared'] 5 | tags: 6 | - { name: event_subscriber } 7 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_editor/config/rewrite/image.style.linkit_result_thumbnail.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: { } 4 | name: linkit_result_thumbnail 5 | label: 'Linkit result thumbnail' 6 | effects: 7 | 2943df29-38ea-459c-ba1d-290489bb1807: 8 | uuid: 2943df29-38ea-459c-ba1d-290489bb1807 9 | id: image_scale_and_crop 10 | weight: 1 11 | data: 12 | width: 50 13 | height: 50 14 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_document/config/optional/media.type.document.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | id: document 7 | label: Document 8 | description: 'A locally hosted document, such as a PDF.' 9 | source: file 10 | queue_thumbnail_downloads: false 11 | new_revision: false 12 | source_configuration: 13 | source_field: field_media_document 14 | field_map: { } 15 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_instagram/config/optional/media.type.instagram.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media_entity_instagram 6 | id: instagram 7 | label: Instagram 8 | description: 'Instagram posts.' 9 | source: 'oembed:instagram' 10 | queue_thumbnail_downloads: false 11 | new_revision: false 12 | source_configuration: 13 | source_field: embed_code 14 | field_map: { } 15 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_search/wxt_ext_search.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Search' 2 | description: 'Provides a default setup for Search API.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'drupal:field' 8 | - 'drupal:image' 9 | - 'drupal:node' 10 | - 'drupal:text' 11 | - 'drupal:user' 12 | - 'drupal:views' 13 | - 'search_api:search_api' 14 | version: 5.4.2 15 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_slideshow/config/optional/media.type.slideshow.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media_entity_slideshow 6 | id: slideshow 7 | label: Slideshow 8 | description: 'Slideshows of media items.' 9 | source: slideshow 10 | queue_thumbnail_downloads: false 11 | new_revision: false 12 | source_configuration: 13 | source_field: slideshow_items 14 | field_map: { } 15 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blog/config/optional/image.style.blog_spotlight.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: { } 4 | name: blog_spotlight 5 | label: 'Blog spotlight' 6 | effects: 7 | b3b974e7-49c6-4097-a404-75af6bff54a7: 8 | uuid: b3b974e7-49c6-4097-a404-75af6bff54a7 9 | id: image_scale_and_crop 10 | weight: 1 11 | data: 12 | width: 360 13 | height: 172 14 | anchor: center-center 15 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_book/config/optional/language.content_settings.node.book.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - node.type.book 6 | module: 7 | - content_translation 8 | third_party_settings: 9 | content_translation: 10 | enabled: true 11 | id: node.book 12 | target_entity_type_id: node 13 | target_bundle: book 14 | default_langcode: site_default 15 | language_alterable: false 16 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_archived/config/optional/field.storage.node.field_archived.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - node 6 | id: node.field_archive 7 | field_name: field_archived 8 | entity_type: node 9 | type: boolean 10 | settings: { } 11 | module: core 12 | locked: false 13 | cardinality: 1 14 | translatable: true 15 | indexes: { } 16 | persist_with_no_fields: false 17 | custom_storage: false 18 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blocks/wxt_ext_blocks.install: -------------------------------------------------------------------------------- 1 | [ 15 | 'basic', 16 | ], 17 | ]; 18 | wxt_translation_enable_translation($entities); 19 | } 20 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image_responsive/wxt_ext_media_image_responsive.install: -------------------------------------------------------------------------------- 1 | Books have a built-in hierarchical navigation (GC Subway).' 18 | help: '' 19 | new_revision: true 20 | preview_mode: 1 21 | display_submitted: false 22 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_group/config/install/field.field.group.department.field_shortcode.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.group.field_shortcode 6 | - group.type.department 7 | id: group.department.field_shortcode 8 | field_name: field_shortcode 9 | entity_type: group 10 | bundle: department 11 | label: Shortcode 12 | description: '' 13 | required: false 14 | translatable: false 15 | default_value: { } 16 | default_value_callback: '' 17 | settings: { } 18 | field_type: string 19 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_landing_page/config/install/field.storage.node.layout_builder__layout.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: 5 | module: 6 | - layout_builder 7 | - node 8 | id: node.layout_builder__layout 9 | field_name: layout_builder__layout 10 | entity_type: node 11 | type: layout_section 12 | settings: { } 13 | module: layout_builder 14 | locked: true 15 | cardinality: 1 16 | translatable: false 17 | indexes: { } 18 | persist_with_no_fields: false 19 | custom_storage: false 20 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_twitter/config/optional/field.field.media.tweet.embed_code.yml: -------------------------------------------------------------------------------- 1 | langcode: und 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.media.embed_code 6 | - media.type.tweet 7 | id: media.tweet.embed_code 8 | field_name: embed_code 9 | entity_type: media 10 | bundle: tweet 11 | label: Tweet 12 | description: 'Paste tweet''s URL or embed code.' 13 | required: true 14 | translatable: false 15 | default_value: { } 16 | default_value_callback: '' 17 | settings: { } 18 | field_type: string_long 19 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/src/Form/EntityFormModeAddForm.php: -------------------------------------------------------------------------------- 1 | 404 Not Found

Not Found

The requested URL "@path" was not found on this server.

' 12 | js: 13 | preprocess: true 14 | gzip: true 15 | stale_file_threshold: 2592000 16 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_carousel/wxt_ext_carousel.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Carousel' 2 | description: 'Creates custom block of type Carousel.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'block_content:block_content' 8 | - 'content_translation:content_translation' 9 | - 'entity_reference_revisions:entity_reference_revisions' 10 | - 'link:link' 11 | - 'media:media' 12 | - 'media_library:media_library' 13 | - 'options:options' 14 | - 'paragraphs:paragraphs' 15 | version: 5.4.2 16 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_group/config/rewrite/pathauto.pattern.group_content.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: 5 | module: 6 | - group 7 | id: group_content 8 | label: 'Group content' 9 | type: 'canonical_entities:group_content' 10 | pattern: 'group/[group_content:group:field_shortcode:value]/[group_content:pretty-path-key]/[group_content:id]' 11 | selection_criteria: { } 12 | selection_logic: and 13 | weight: -6 14 | relationships: 15 | 'group_content:langcode:language': 16 | label: Language 17 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_metatag/config/rewrite/metatag.metatag_defaults.node.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: { } 5 | id: node 6 | label: Content 7 | tags: 8 | description: '[node:summary]' 9 | canonical_url: '[node:url]' 10 | title: '[node:title] - [site:name]' 11 | dcterms_title: '[node:title]' 12 | dcterms_description: '[node:summary]' 13 | dcterms_language: '[language:langcode]' 14 | dcterms_issued: '[node:created:custom:Y-m-d]' 15 | dcterms_modified: '[node:changed:custom:Y-m-d]' 16 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_webform/config/rewrite/field.storage.node.webform.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: 5 | module: 6 | - node 7 | - webform 8 | enforced: 9 | module: 10 | - webform_node 11 | id: node.webform 12 | field_name: webform 13 | entity_type: node 14 | type: webform 15 | settings: 16 | target_type: webform 17 | module: webform 18 | locked: false 19 | cardinality: 1 20 | translatable: true 21 | indexes: { } 22 | persist_with_no_fields: false 23 | custom_storage: false 24 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blocks/config/optional/core.entity_view_display.block_content.basic.default.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - block_content.type.basic 6 | - field.field.block_content.basic.body 7 | module: 8 | - text 9 | id: block_content.basic.default 10 | targetEntityType: block_content 11 | bundle: basic 12 | mode: default 13 | content: 14 | body: 15 | label: hidden 16 | type: text_default 17 | weight: 0 18 | settings: { } 19 | third_party_settings: { } 20 | hidden: { } 21 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_carousel/config/optional/language.content_settings.block_content.carousel.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - block_content.type.carousel 6 | module: 7 | - content_translation 8 | third_party_settings: 9 | content_translation: 10 | enabled: true 11 | bundle_settings: 12 | untranslatable_fields_hide: '0' 13 | id: block_content.carousel 14 | target_entity_type_id: block_content 15 | target_bundle: carousel 16 | default_langcode: site_default 17 | language_alterable: false 18 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_comment/config/optional/field.field.comment.comment.comment_body.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - comment.type.comment 6 | - field.storage.comment.comment_body 7 | module: 8 | - text 9 | id: comment.comment.comment_body 10 | field_name: comment_body 11 | entity_type: comment 12 | bundle: comment 13 | label: Comment 14 | description: '' 15 | required: true 16 | translatable: true 17 | default_value: { } 18 | default_value_callback: '' 19 | settings: { } 20 | field_type: text_long 21 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_layout/wxt_ext_layout.install: -------------------------------------------------------------------------------- 1 | basic pages for your static content, such as an ''About us'' page.' 17 | help: '' 18 | new_revision: false 19 | preview_mode: 1 20 | display_submitted: false 21 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Ignore Development Files 2 | compass_app_log.txt 3 | *.DS_Store 4 | *.diff 5 | *.err 6 | *.orig 7 | *.log 8 | *.rej 9 | *.swo 10 | *.swp 11 | *.vi 12 | *.sass-cache 13 | 14 | # VSCode 15 | .vscode 16 | 17 | # Composer files 18 | bin/ 19 | html 20 | vendor/ 21 | */*/*/vendor 22 | */*/vendor 23 | 24 | # Node 25 | node_modules/ 26 | bower_components/ 27 | 28 | # PhpStorm 29 | .idea 30 | 31 | # SASS 32 | .sass-cache 33 | *.sass-cache* 34 | **/sass/*.css 35 | 36 | # WxT 37 | test-results 38 | files_private/ 39 | 40 | # Tarball 41 | *.tar.gz 42 | /.editorconfig 43 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/src/Annotation/UpdateWxT.php: -------------------------------------------------------------------------------- 1 | getProvider() . ':' . parent::getId(); 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/src/Form/EntityDisplayModeEditForm.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_video/config/optional/field.field.media.remote_video.field_media_oembed_video.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.media.field_media_oembed_video 6 | - media.type.remote_video 7 | id: media.remote_video.field_media_oembed_video 8 | field_name: field_media_oembed_video 9 | entity_type: media 10 | bundle: remote_video 11 | label: 'Video URL' 12 | description: '' 13 | required: true 14 | translatable: true 15 | default_value: { } 16 | default_value_callback: '' 17 | settings: { } 18 | field_type: string 19 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_webform/config/rewrite/node.type.webform.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: 5 | enforced: 6 | module: 7 | - webform_node 8 | module: 9 | - content_moderation 10 | - menu_ui 11 | third_party_settings: 12 | menu_ui: 13 | available_menus: { } 14 | parent: '' 15 | wxt_ext_workflow: 16 | workflow: editorial 17 | name: Webform 18 | type: webform 19 | description: 'A basic page with a webform attached.' 20 | help: '' 21 | new_revision: true 22 | preview_mode: 0 23 | display_submitted: false 24 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/src/Entity/EntityFormMode.php: -------------------------------------------------------------------------------- 1 | moduleExists('wxt_translation')) { 21 | TranslationHelper::importTranslations('wxt_ext_editor'); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_document/src/Plugin/media/Source/File.php: -------------------------------------------------------------------------------- 1 | moduleExists('wxt_translation')) { 21 | TranslationHelper::importTranslations('wxt_ext_archived'); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blocks/config/optional/field.field.block_content.basic.body.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - block_content.type.basic 6 | - field.storage.block_content.body 7 | module: 8 | - text 9 | id: block_content.basic.body 10 | field_name: body 11 | entity_type: block_content 12 | bundle: basic 13 | label: Body 14 | description: '' 15 | required: false 16 | translatable: true 17 | default_value: { } 18 | default_value_callback: '' 19 | settings: 20 | display_summary: false 21 | third_party_settings: { } 22 | field_type: text_with_summary 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blocks/config/optional/field.field.block_content.modal.body.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - block_content.type.modal 6 | - field.storage.block_content.body 7 | module: 8 | - text 9 | id: block_content.modal.body 10 | field_name: body 11 | entity_type: block_content 12 | bundle: modal 13 | label: Body 14 | description: '' 15 | required: false 16 | translatable: true 17 | default_value: { } 18 | default_value_callback: '' 19 | settings: 20 | display_summary: false 21 | required_summary: false 22 | field_type: text_with_summary 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_page/config/optional/core.entity_view_display.node.page.featured.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - core.entity_view_mode.node.featured 6 | - field.field.node.page.body 7 | - node.type.page 8 | module: 9 | - text 10 | - user 11 | id: node.page.featured 12 | targetEntityType: node 13 | bundle: page 14 | mode: featured 15 | content: 16 | body: 17 | label: hidden 18 | type: text_default 19 | weight: 100 20 | settings: { } 21 | third_party_settings: { } 22 | links: 23 | weight: 101 24 | hidden: { } 25 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blocks/config/optional/field.field.block_content.modal.field_modal_id.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - block_content.type.modal 6 | - field.storage.block_content.field_modal_id 7 | id: block_content.modal.field_modal_id 8 | field_name: field_modal_id 9 | entity_type: block_content 10 | bundle: modal 11 | label: 'Modal ID' 12 | description: 'A unique ID attribute for this modal, used to activate it.' 13 | required: true 14 | translatable: false 15 | default_value: { } 16 | default_value_callback: '' 17 | settings: { } 18 | field_type: string 19 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_carousel/config/optional/field.storage.block_content.field_carousel_item.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - block_content 6 | - entity_reference_revisions 7 | - paragraphs 8 | id: block_content.field_carousel_item 9 | field_name: field_carousel_item 10 | entity_type: block_content 11 | type: entity_reference_revisions 12 | settings: 13 | target_type: paragraph 14 | module: entity_reference_revisions 15 | locked: false 16 | cardinality: -1 17 | translatable: true 18 | indexes: { } 19 | persist_with_no_fields: false 20 | custom_storage: false 21 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_landing_page/config/optional/pathauto.pattern.landing_page.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - node 6 | id: landing_page 7 | label: 'Landing page' 8 | type: 'canonical_entities:node' 9 | pattern: '[node:title]' 10 | selection_criteria: 11 | 357097ed-305b-4a11-9bc7-6b80f1688cd2: 12 | id: entity_bundle:node 13 | bundles: 14 | landing_page: landing_page 15 | negate: false 16 | context_mapping: 17 | node: node 18 | uuid: 357097ed-305b-4a11-9bc7-6b80f1688cd2 19 | selection_logic: and 20 | weight: -5 21 | relationships: { } 22 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_carousel/config/optional/field.field.paragraph.carousel_item.field_link.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.paragraph.field_link 6 | - paragraphs.paragraphs_type.carousel_item 7 | module: 8 | - link 9 | id: paragraph.carousel_item.field_link 10 | field_name: field_link 11 | entity_type: paragraph 12 | bundle: carousel_item 13 | label: Link 14 | description: '' 15 | required: true 16 | translatable: true 17 | default_value: { } 18 | default_value_callback: '' 19 | settings: 20 | title: 2 21 | link_type: 17 22 | field_type: link 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_slideshow/config/optional/field.storage.block_content.field_slideshow_items.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | enforced: 5 | module: 6 | - wxt_ext_media_slideshow 7 | module: 8 | - block_content 9 | - media 10 | id: block_content.field_slideshow_items 11 | field_name: field_slideshow_items 12 | entity_type: block_content 13 | type: entity_reference 14 | settings: 15 | target_type: media 16 | module: core 17 | locked: false 18 | cardinality: -1 19 | translatable: true 20 | indexes: { } 21 | persist_with_no_fields: false 22 | custom_storage: false 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_page/config/optional/field.field.node.page.layout_builder__translation.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.node.layout_builder__translation 6 | - node.type.page 7 | module: 8 | - layout_builder_st 9 | id: node.page.layout_builder__translation 10 | field_name: layout_builder__translation 11 | entity_type: node 12 | bundle: page 13 | label: 'Layout Labels' 14 | description: '' 15 | required: false 16 | translatable: true 17 | default_value: { } 18 | default_value_callback: '' 19 | settings: { } 20 | field_type: layout_translation 21 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/config/optional/core.entity_view_display.user.user.default.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.field.user.user.user_picture 6 | - image.style.thumbnail 7 | module: 8 | - image 9 | - user 10 | id: user.user.default 11 | targetEntityType: user 12 | bundle: user 13 | mode: default 14 | content: 15 | member_for: 16 | weight: 5 17 | user_picture: 18 | type: image 19 | weight: 0 20 | settings: 21 | image_style: thumbnail 22 | image_link: content 23 | third_party_settings: { } 24 | label: hidden 25 | hidden: { } 26 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blocks/config/optional/field.field.block_content.search.field_search_path.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - block_content.type.search 6 | - field.storage.block_content.field_search_path 7 | module: 8 | - link 9 | id: block_content.search.field_search_path 10 | field_name: field_search_path 11 | entity_type: block_content 12 | bundle: search 13 | label: Path 14 | description: '' 15 | required: false 16 | translatable: true 17 | default_value: { } 18 | default_value_callback: '' 19 | settings: 20 | link_type: 17 21 | title: 0 22 | field_type: link 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_audio/src/Plugin/media/Source/AudioFile.php: -------------------------------------------------------------------------------- 1 | Blog post content to groups both publicly and privately.' 13 | group_type: department 14 | content_plugin: 'group_node:blog_post' 15 | plugin_config: 16 | group_cardinality: 0 17 | entity_cardinality: 1 18 | use_creation_wizard: true 19 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_landing_page/config/install/field.field.node.landing_page.layout_builder__layout.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: 5 | config: 6 | - field.storage.node.layout_builder__layout 7 | - node.type.landing_page 8 | module: 9 | - layout_builder 10 | id: node.landing_page.layout_builder__layout 11 | field_name: layout_builder__layout 12 | entity_type: node 13 | bundle: landing_page 14 | label: Layout 15 | description: '' 16 | required: false 17 | translatable: false 18 | default_value: { } 19 | default_value_callback: '' 20 | settings: { } 21 | field_type: layout_section 22 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_migration/wxt_ext_migration.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Migrate' 2 | description: 'Provides Migration related functionality along with a plethora of plugins and default content.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'entityqueue:entityqueue' 8 | - 'migrate:migrate' 9 | - 'migrate_plus:migrate_plus' 10 | - 'migrate_tools:migrate_tools' 11 | - 'page_manager:page_manager' 12 | - 'panels_ipe:panels_ipe' 13 | - 'wxt_ext_layout:wxt_ext_layout' 14 | - 'wxt_ext_media:wxt_ext_media' 15 | - 'wxt_ext_media_slideshow:wxt_ext_media_slideshow' 16 | version: 5.4.2 17 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_instagram/src/Plugin/media/Source/Instagram.php: -------------------------------------------------------------------------------- 1 | moduleExists('views')) { 17 | Config::forModule('content_moderation') 18 | ->optional() 19 | ->getEntity('view', 'moderated_content') 20 | ->save(); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_slideshow/config/optional/field.storage.media.field_slideshow_style.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - media 6 | - options 7 | id: media.field_slideshow_style 8 | field_name: field_slideshow_style 9 | entity_type: media 10 | type: list_string 11 | settings: 12 | allowed_values: 13 | - 14 | value: default 15 | label: Default 16 | - 17 | value: thumbs 18 | label: Thumbs 19 | allowed_values_function: '' 20 | module: options 21 | locked: false 22 | cardinality: 1 23 | translatable: true 24 | indexes: { } 25 | persist_with_no_fields: false 26 | custom_storage: false 27 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_twitter/config/optional/field.field.media.tweet.field_media_in_library.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.media.field_media_in_library 6 | - media.type.tweet 7 | id: media.tweet.field_media_in_library 8 | field_name: field_media_in_library 9 | entity_type: media 10 | bundle: tweet 11 | label: 'Show in media library' 12 | description: '' 13 | required: false 14 | translatable: false 15 | default_value: 16 | - 17 | value: 1 18 | default_value_callback: '' 19 | settings: 20 | on_label: 'Shown in media library' 21 | off_label: 'Hidden in media library' 22 | field_type: boolean 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_landing_page/config/install/field.field.node.landing_page.layout_builder__translation.yml: -------------------------------------------------------------------------------- 1 | config_rewrite: replace 2 | langcode: en 3 | status: true 4 | dependencies: 5 | config: 6 | - field.storage.node.layout_builder__translation 7 | - node.type.landing_page 8 | module: 9 | - layout_builder_st 10 | id: node.landing_page.layout_builder__translation 11 | field_name: layout_builder__translation 12 | entity_type: node 13 | bundle: landing_page 14 | label: 'Layout Labels' 15 | description: '' 16 | required: false 17 | translatable: true 18 | default_value: { } 19 | default_value_callback: '' 20 | settings: { } 21 | field_type: layout_translation 22 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media/src/Routing/RouteSubscriber.php: -------------------------------------------------------------------------------- 1 | get('entity_embed.dialog'); 19 | if ($route) { 20 | $route->setDefault('_form', EntityEmbedDialog::class); 21 | } 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_document/config/optional/field.field.media.document.field_media_in_library.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.media.field_media_in_library 6 | - media.type.document 7 | id: media.document.field_media_in_library 8 | field_name: field_media_in_library 9 | entity_type: media 10 | bundle: document 11 | label: 'Show in media library' 12 | description: '' 13 | required: false 14 | translatable: true 15 | default_value: 16 | - 17 | value: 1 18 | default_value_callback: '' 19 | settings: 20 | on_label: 'Shown in media library' 21 | off_label: 'Hidden in media library' 22 | field_type: boolean 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_page/config/optional/core.entity_view_display.node.page.teaser.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - core.entity_view_mode.node.teaser 6 | - field.field.node.page.body 7 | - node.type.page 8 | module: 9 | - text 10 | - user 11 | id: node.page.teaser 12 | targetEntityType: node 13 | bundle: page 14 | mode: teaser 15 | content: 16 | body: 17 | label: hidden 18 | type: text_summary_or_trimmed 19 | weight: 100 20 | settings: 21 | trim_length: 600 22 | third_party_settings: { } 23 | region: content 24 | links: 25 | weight: 101 26 | region: content 27 | hidden: { } 28 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_queue/config/install/entityqueue.entity_queue.front_page.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - block_content 6 | id: front_page 7 | label: 'Front Page' 8 | handler: simple 9 | handler_configuration: { } 10 | entity_settings: 11 | target_type: block_content 12 | handler: 'default:block_content' 13 | handler_settings: 14 | target_bundles: 15 | spotlight: spotlight 16 | sort: 17 | field: changed 18 | direction: DESC 19 | auto_create: false 20 | auto_create_bundle: basic 21 | queue_settings: 22 | min_size: 0 23 | max_size: 4 24 | act_as_queue: true 25 | reverse_in_admin: false 26 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blog/wxt_ext_blog.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Blog' 2 | description: 'Creates a default Blog listing layout page.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'blog:blog' 8 | - 'bootstrap_layouts:bootstrap_layouts' 9 | - 'content_moderation:content_moderation' 10 | - 'config_rewrite:config_rewrite' 11 | - 'page_manager:page_manager' 12 | - 'panels_ipe:panels_ipe' 13 | - 'views_bootstrap:views_bootstrap' 14 | - 'wxt_translation:wxt_translation' 15 | - 'wxt_ext_comment:wxt_ext_comment' 16 | - 'wxt_ext_metatag:wxt_ext_metatag' 17 | - 'wxt_ext_taxonomy:wxt_ext_taxonomy' 18 | version: 5.4.2 19 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_instagram/config/optional/field.field.media.instagram.field_media_in_library.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.media.field_media_in_library 6 | - media.type.instagram 7 | id: media.instagram.field_media_in_library 8 | field_name: field_media_in_library 9 | entity_type: media 10 | bundle: instagram 11 | label: 'Show in media library' 12 | description: '' 13 | required: false 14 | translatable: false 15 | default_value: 16 | - 17 | value: 1 18 | default_value_callback: '' 19 | settings: 20 | on_label: 'Shown in media library' 21 | off_label: 'Hidden in media library' 22 | field_type: boolean 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_slideshow/config/optional/field.field.media.slideshow.field_media_in_library.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.media.field_media_in_library 6 | - media.type.slideshow 7 | id: media.slideshow.field_media_in_library 8 | field_name: field_media_in_library 9 | entity_type: media 10 | bundle: slideshow 11 | label: 'Save to my media library' 12 | description: '' 13 | required: false 14 | translatable: true 15 | default_value: 16 | - 17 | value: 1 18 | default_value_callback: '' 19 | settings: 20 | on_label: 'Saved to my media library' 21 | off_label: 'Not in my media library' 22 | field_type: boolean 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blog/config/optional/field.storage.node.field_avatar_image.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - file 6 | - image 7 | - node 8 | id: node.field_avatar_image 9 | field_name: field_avatar_image 10 | entity_type: node 11 | type: image 12 | settings: 13 | uri_scheme: public 14 | default_image: 15 | uuid: '' 16 | alt: '' 17 | title: '' 18 | width: null 19 | height: null 20 | target_type: file 21 | display_field: false 22 | display_default: false 23 | module: image 24 | locked: false 25 | cardinality: 1 26 | translatable: true 27 | indexes: { } 28 | persist_with_no_fields: false 29 | custom_storage: false 30 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_video/config/optional/field.field.media.remote_video.field_media_in_library.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.media.field_media_in_library 6 | - media.type.remote_video 7 | id: media.remote_video.field_media_in_library 8 | field_name: field_media_in_library 9 | entity_type: media 10 | bundle: remote_video 11 | label: 'Show in media library' 12 | description: '' 13 | required: false 14 | translatable: false 15 | default_value: 16 | - 17 | value: 1 18 | default_value_callback: '' 19 | settings: 20 | on_label: 'Shown in media library' 21 | off_label: 'Hidden in media library' 22 | field_type: boolean 23 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/config/optional/field.storage.node.field_image.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - file 6 | - image 7 | - node 8 | id: node.field_image 9 | field_name: field_image 10 | entity_type: node 11 | type: image 12 | settings: 13 | uri_scheme: public 14 | default_image: 15 | uuid: '' 16 | alt: '' 17 | title: '' 18 | width: null 19 | height: null 20 | target_type: file 21 | display_field: false 22 | display_default: false 23 | module: image 24 | locked: false 25 | cardinality: -1 26 | translatable: true 27 | indexes: 28 | target_id: 29 | - target_id 30 | persist_with_no_fields: false 31 | custom_storage: false 32 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_workflow/wxt_ext_workflow.links.contextual.yml: -------------------------------------------------------------------------------- 1 | # The following contextual links can be removed when 2 | # https://www.drupal.org/project/drupal/issues/2815221 has been committed 3 | # to Drupal core. 4 | block_content.block_edit_latest_revision: 5 | title: 'Edit' 6 | group: block_content_latest_version 7 | route_name: 'entity.block_content.canonical' 8 | 9 | entity.node.latest_version_edit_form: 10 | route_name: entity.node.edit_form 11 | group: node_latest_version 12 | title: Edit 13 | 14 | entity.taxonomy_term.latest_version_edit_form: 15 | title: Edit 16 | group: taxonomy_term_latest_version 17 | route_name: entity.taxonomy_term.edit_form 18 | weight: 10 19 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/config/optional/field.storage.user.user_picture.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - file 6 | - image 7 | - user 8 | id: user.user_picture 9 | field_name: user_picture 10 | entity_type: user 11 | type: image 12 | settings: 13 | uri_scheme: public 14 | default_image: 15 | uuid: null 16 | alt: '' 17 | title: '' 18 | width: null 19 | height: null 20 | target_type: file 21 | display_field: false 22 | display_default: false 23 | module: image 24 | locked: false 25 | cardinality: 1 26 | translatable: true 27 | indexes: 28 | target_id: 29 | - target_id 30 | persist_with_no_fields: false 31 | custom_storage: false 32 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blocks/config/optional/core.entity_view_display.block_content.modal.default.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - block_content.type.modal 6 | - field.field.block_content.modal.body 7 | - field.field.block_content.modal.field_modal_id 8 | module: 9 | - text 10 | id: block_content.modal.default 11 | targetEntityType: block_content 12 | bundle: modal 13 | mode: default 14 | content: 15 | body: 16 | type: text_default 17 | label: hidden 18 | settings: { } 19 | third_party_settings: { } 20 | weight: 0 21 | region: content 22 | hidden: 23 | field_modal_id: true 24 | langcode: true 25 | search_api_excerpt: true 26 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image/config/optional/field.storage.media.field_media_image.yml: -------------------------------------------------------------------------------- 1 | langcode: und 2 | status: true 3 | dependencies: 4 | module: 5 | - file 6 | - image 7 | - media 8 | id: media.field_media_image 9 | field_name: field_media_image 10 | entity_type: media 11 | type: image 12 | settings: 13 | uri_scheme: public 14 | default_image: 15 | uuid: null 16 | alt: '' 17 | title: '' 18 | width: null 19 | height: null 20 | target_type: file 21 | display_field: false 22 | display_default: false 23 | module: image 24 | locked: false 25 | cardinality: 1 26 | translatable: true 27 | indexes: { } 28 | persist_with_no_fields: false 29 | custom_storage: false 30 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_layout/wxt_ext_layout.info.yml: -------------------------------------------------------------------------------- 1 | name: 'WxT Extend Layout' 2 | description: 'Provides Layout related functionality and enhancements.' 3 | type: module 4 | core_version_requirement: '^9 || ^10' 5 | package: WxT 6 | dependencies: 7 | - 'drupal:block' 8 | - 'drupal:layout_builder' 9 | - 'drupal:options' 10 | - 'bootstrap_layouts:bootstrap_layouts' 11 | - 'config_rewrite:config_rewrite' 12 | - 'core_context:core_context' 13 | - 'layout_library:layout_library' 14 | - 'layout_builder_restrictions:layout_builder_restrictions' 15 | - 'layout_builder_st:layout_builder_st' 16 | - 'layout_builder_styles:layout_builder_styles' 17 | - 'page_manager_ui:page_manager_ui' 18 | version: 5.4.2 19 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image/config/optional/core.entity_view_display.media.image.default.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.field.media.image.field_media_image 6 | - media.type.image 7 | module: 8 | - image 9 | id: media.image.default 10 | targetEntityType: media 11 | bundle: image 12 | mode: default 13 | content: 14 | field_media_image: 15 | type: image 16 | weight: 0 17 | label: hidden 18 | settings: 19 | image_style: '' 20 | image_link: '' 21 | third_party_settings: { } 22 | region: content 23 | hidden: 24 | created: true 25 | field_media_in_library: true 26 | name: true 27 | thumbnail: true 28 | uid: true 29 | -------------------------------------------------------------------------------- /modules/custom/wxt_core/config/optional/core.entity_form_display.user.user.default.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.field.user.user.user_picture 6 | - image.style.thumbnail 7 | module: 8 | - image 9 | - user 10 | id: user.user.default 11 | targetEntityType: user 12 | bundle: user 13 | mode: default 14 | content: 15 | account: 16 | weight: -10 17 | contact: 18 | weight: 5 19 | language: 20 | weight: 0 21 | timezone: 22 | weight: 6 23 | user_picture: 24 | type: image_image 25 | settings: 26 | progress_indicator: throbber 27 | preview_image_style: thumbnail 28 | third_party_settings: { } 29 | weight: -1 30 | hidden: { } 31 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_group/config/install/field.field.group_content.department-group_membership.group_roles.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.storage.group_content.group_roles 6 | - group.content_type.department-group_membership 7 | id: group_content.department-group_membership.group_roles 8 | field_name: group_roles 9 | entity_type: group_content 10 | bundle: department-group_membership 11 | label: Roles 12 | description: '' 13 | required: false 14 | translatable: true 15 | default_value: { } 16 | default_value_callback: '' 17 | settings: 18 | handler: 'group_type:group_role' 19 | handler_settings: 20 | group_type_id: department 21 | field_type: entity_reference 22 | -------------------------------------------------------------------------------- /.github/workflows/changelog.yml: -------------------------------------------------------------------------------- 1 | name: changelog 2 | on: 3 | push: 4 | branches: 5 | - 5.4.x 6 | release: 7 | types: [edited] 8 | 9 | # Environment variables available to all jobs and steps in this workflow 10 | env: 11 | COMPOSER_MEMORY_LIMIT: -1 12 | 13 | jobs: 14 | build: 15 | runs-on: ubuntu-22.04 16 | steps: 17 | - uses: actions/checkout@master 18 | 19 | - name: Repository Dispatch to website 20 | uses: peter-evans/repository-dispatch@v1 21 | with: 22 | token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} 23 | repository: drupalwxt/drupalwxt.github.io 24 | event-type: wxt-tagged 25 | client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}' 26 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_twitter/config/optional/core.entity_view_display.media.tweet.default.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.field.media.tweet.embed_code 6 | - field.field.media.tweet.field_media_in_library 7 | - media.type.tweet 8 | module: 9 | - media_entity_twitter 10 | id: media.tweet.default 11 | targetEntityType: media 12 | bundle: tweet 13 | mode: default 14 | content: 15 | embed_code: 16 | type: twitter_embed 17 | weight: 1 18 | label: hidden 19 | settings: { } 20 | third_party_settings: { } 21 | region: content 22 | hidden: 23 | created: true 24 | field_media_in_library: true 25 | name: true 26 | thumbnail: true 27 | uid: true 28 | -------------------------------------------------------------------------------- /tests/features/workflow/diff.feature: -------------------------------------------------------------------------------- 1 | @wxt @workflow @api @diff 2 | Feature: Diffing different revisions of content 3 | 4 | Scenario: Diffing two node revisions 5 | Given I am logged in as a user with the administrator role 6 | And page content: 7 | | title | body | moderation_state | 8 | | Drupal 10 | First revision | draft | 9 | When I visit "/drupal-10" 10 | And I visit the edit form 11 | And I enter "Second revision" for "body[0][value]" 12 | And I press "Save" 13 | And I visit the edit form 14 | And I enter "Third revision" for "body[0][value]" 15 | And I press "Save" 16 | And I compare the 1st and 2nd revisions 17 | Then I should see "Changes to Drupal 10" 18 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_queue/wxt_ext_queue.module: -------------------------------------------------------------------------------- 1 | driver(); 18 | if ($db == 'pgsql') { 19 | // @todo Wait for Drupal Core to handle this. 20 | if (!empty($view->relationship['entityqueue_relationship'])) { 21 | $query->getTableInfo('entity_subqueue__items')['join']->field .= '::bigint'; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_twitter/config/optional/core.entity_view_display.media.tweet.thumbnail.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - core.entity_view_mode.media.thumbnail 6 | - image.style.medium 7 | - media.type.tweet 8 | module: 9 | - image 10 | id: media.tweet.thumbnail 11 | targetEntityType: media 12 | bundle: tweet 13 | mode: thumbnail 14 | content: 15 | thumbnail: 16 | type: image 17 | weight: 0 18 | label: hidden 19 | settings: 20 | image_style: medium 21 | image_link: '' 22 | third_party_settings: { } 23 | region: content 24 | hidden: 25 | created: true 26 | embed_code: true 27 | field_media_in_library: true 28 | name: true 29 | uid: true 30 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_group/config/install/core.entity_view_display.group_content.department-group_membership.default.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - field.field.group_content.department-group_membership.group_roles 6 | - group.content_type.department-group_membership 7 | id: group_content.department-group_membership.default 8 | targetEntityType: group_content 9 | bundle: department-group_membership 10 | mode: default 11 | content: 12 | group_roles: 13 | label: above 14 | type: entity_reference_label 15 | settings: 16 | link: false 17 | weight: -4 18 | third_party_settings: { } 19 | region: content 20 | hidden: 21 | entity_id: true 22 | langcode: true 23 | uid: true 24 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_document/config/optional/core.entity_view_display.media.document.embedded.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - core.entity_view_mode.media.embedded 6 | - field.field.media.document.field_media_document 7 | - media.type.document 8 | module: 9 | - file 10 | id: media.document.embedded 11 | targetEntityType: media 12 | bundle: document 13 | mode: embedded 14 | content: 15 | field_media_document: 16 | weight: 0 17 | label: hidden 18 | settings: { } 19 | third_party_settings: { } 20 | type: file_default 21 | region: content 22 | hidden: 23 | created: true 24 | field_media_in_library: true 25 | name: true 26 | thumbnail: true 27 | uid: true 28 | -------------------------------------------------------------------------------- /wxt.info.yml: -------------------------------------------------------------------------------- 1 | name: WxT 2 | description: 'A Drupal distribution created to leverage the Web Experience Toolkit.' 3 | type: profile 4 | core_version_requirement: '^9 || ^10' 5 | distribution: 6 | name: WxT 7 | keep_english: true 8 | install: 9 | - big_pipe 10 | - config_translation 11 | - content_translation 12 | - dynamic_page_cache 13 | - field_ui 14 | - inline_form_errors 15 | - jquery_ui 16 | - jquery_ui_draggable 17 | - jquery_ui_resizable 18 | - language 19 | - locale 20 | - menu_link_content 21 | - menu_ui 22 | - node 23 | - path 24 | - taxonomy 25 | - text 26 | - user 27 | - wxt_admin 28 | - wxt_core 29 | - wxt_library 30 | - wxt_translation 31 | themes: 32 | - claro 33 | - wxt_bootstrap 34 | version: 5.4.2 35 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_carousel/config/optional/field.storage.block_content.field_transition_type.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | module: 5 | - block_content 6 | - options 7 | id: block_content.field_transition_type 8 | field_name: field_transition_type 9 | entity_type: block_content 10 | type: list_string 11 | settings: 12 | allowed_values: 13 | - 14 | value: fade 15 | label: Fade 16 | - 17 | value: slide 18 | label: Slide 19 | - 20 | value: slidevert 21 | label: 'Slide vertical' 22 | allowed_values_function: '' 23 | module: options 24 | locked: false 25 | cardinality: 1 26 | translatable: true 27 | indexes: { } 28 | persist_with_no_fields: false 29 | custom_storage: false 30 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_editor/wxt_ext_editor.libraries.yml: -------------------------------------------------------------------------------- 1 | alert: 2 | js: 3 | js/build/wxt_alert.js: { preprocess: true, minified: false } 4 | dependencies: 5 | - core/ckeditor5 6 | panel: 7 | js: 8 | js/build/wxt_panel.js: { preprocess: true, minified: false } 9 | dependencies: 10 | - core/ckeditor5 11 | admin.wxt_ext_editor: 12 | css: 13 | theme: 14 | css/wxt_ext_editor.admin.css: { preprocess: true, minified: false } 15 | admin.gcext: 16 | css: 17 | theme: 18 | css/gcext.admin.css: { preprocess: true, minified: false } 19 | ckeditor5: 20 | css: 21 | theme: 22 | css/cke5-bootstrap-3-4-1.css: { preprocess: true, minified: false } 23 | css/cke5-theme-gcweb.css: { preprocess: true, minified: false } 24 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image/config/optional/core.entity_view_display.media.image.media_library.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - core.entity_view_mode.media.media_library 6 | - image.style.thumbnail 7 | - media.type.image 8 | module: 9 | - image 10 | id: media.image.media_library 11 | targetEntityType: media 12 | bundle: image 13 | mode: media_library 14 | content: 15 | thumbnail: 16 | type: image 17 | weight: 0 18 | region: content 19 | label: hidden 20 | settings: 21 | image_style: thumbnail 22 | image_link: '' 23 | third_party_settings: { } 24 | hidden: 25 | created: true 26 | field_media_in_library: true 27 | image: true 28 | name: true 29 | uid: true 30 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_blog/wxt_ext_blog.module: -------------------------------------------------------------------------------- 1 | getConstraints(); 22 | unset($constraints['EntityUntranslatableFields']); 23 | $entity_type->setConstraints($constraints); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /modules/custom/wxt_ext/wxt_ext_media_image/config/optional/core.entity_view_display.media.image.embedded.yml: -------------------------------------------------------------------------------- 1 | langcode: en 2 | status: true 3 | dependencies: 4 | config: 5 | - core.entity_view_mode.media.embedded 6 | - field.field.media.image.field_media_image 7 | - media.type.image 8 | module: 9 | - image 10 | id: media.image.embedded 11 | targetEntityType: media 12 | bundle: image 13 | mode: embedded 14 | content: 15 | field_media_image: 16 | type: image 17 | weight: 0 18 | label: hidden 19 | settings: 20 | image_style: '' 21 | image_link: '' 22 | third_party_settings: { } 23 | region: content 24 | hidden: 25 | created: true 26 | field_media_in_library: true 27 | name: true 28 | thumbnail: true 29 | uid: true 30 | --------------------------------------------------------------------------------