From 95b32e50998dbf54b453f31ee5d26ed29eb60c51 Mon Sep 17 00:00:00 2001 From: SCBsudo Date: Fri, 8 Sep 2023 12:50:40 -0400 Subject: [PATCH] # This is a combination of 6 commits. # This is the 1st commit message: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Accessibility Project - Pre-assessments # This is the commit message #2: WET-380 Ajax Fetch Working Example # This is the commit message #3: Content - Follow us, Lowest topic section, HTML cleanup - Code maintenance and fixing/adjusting examples (#2196) * Theme: Remove hardcoded post-JS HTML markup * Remove the following hardcoded markup: * wb-init and wb-*-inited classes * wb-auto-* IDs * Note: Fixes broken local links caused by duplicate IDs * Update modified dates of: * Pages containing affected code samples * Pages that reference updated samples/includes * Spinoff of #2179 * Content - Ajust template with the follow-us include and added example of secondary-menu * Theme: Update page modified dates with post-JS changes * Bump initial commit's page modified dates to current date * Change modified dates in several extra pages that are now using the old follow-us include (components/gc-follow-us/follow.html, _includes/components/gc-follow-us/follow.html) via @duboisp's commit GCWeb - Content - Remove hardcoded post-JS HTML markup, GCWeb - Content - Adjusted the follow us component used on various page to match the stable example vs beta template, GCWeb - Content - Adding working example with secondary navigation (fixing the lowest-topic section example) GCWeb Jekyll - Minor - Add basic support for content with a secondary menu --------- Co-authored-by: Pierre Dubois # This is the commit message #4: Step by step navigation: adding documentation # This is the commit message #5: méli-mélo 2023-09-menu - Initial commit (#2247) Co-authored-by: gjb-pch <108414322+gjb-pch@users.noreply.github.com> # This is the commit message #6: Page feedback: hiding page feedback by default and updating doc> > Co-authored-by: Pierre Dubois --- _data/components.json | 58 + _data/sites.json | 1065 ++++++++- .../components/gc-features/features.html | 2 +- _includes/components/gc-follow-us/follow.html | 8 +- common/ajax-fetch/ajax-fetch-en.html | 70 + common/ajax-fetch/ajax-fetch-fr.html | 70 + .../ajax-fetch/ajax/data-ajax-extra-en.html | 4 + .../ajax-fetch/ajax/data-ajax-extra-fr.html | 4 + common/ajax-fetch/index.json-ld | 35 + common/gc_top_menu/index.json-ld | 35 + common/gc_top_menu/reports/pre-a11y-1-en.json | 14 + common/gc_top_menu/reports/pre-a11y-1-fr.json | 14 + common/gc_top_menu/reports/pre-a11y-1.json | 462 ++++ common/gc_topic/index.json-ld | 35 + common/gc_topic/reports/pre-a11y-1-en.json | 14 + common/gc_topic/reports/pre-a11y-1-fr.json | 14 + common/gc_topic/reports/pre-a11y-1.json | 444 ++++ common/header_language_selector/index.json-ld | 35 + .../reports/pre-a11y-1-en.json | 14 + .../reports/pre-a11y-1-fr.json | 14 + .../reports/pre-a11y-1.json | 444 ++++ common/list/lists-en.html | 2 +- common/list/lists-fr.html | 2 +- .../tabs_interference_carousel/index.json-ld | 35 + .../reports/pre-a11y-1-en.json | 14 + .../reports/pre-a11y-1-fr.json | 14 + .../reports/pre-a11y-1.json | 444 ++++ components/baseline/_base.scss | 7 - components/gc-features/samples/features.html | 2 +- components/gc-follow-us/samples/follow.html | 8 +- components/gc-stp-stp/_base.scss | 20 + components/gc-stp-stp/_screen-sm-min.scss | 16 + components/gc-stp-stp/gc-stp-stp-doc-en.html | 128 ++ components/gc-stp-stp/gc-stp-stp-doc-fr.html | 126 ++ components/gc-stp-stp/gc-stp-stp-en.html | 61 + components/gc-stp-stp/gc-stp-stp-fr.html | 61 + .../gc-stp-stp/includes/gc-stp-stp.html | 15 + components/gc-stp-stp/index.json-ld | 58 + index-en.md | 1 + index-fr.md | 1 + .../2023-09-menu/about.html" | 59 + .../2023-09-menu/calendar.html" | 58 + .../2023-09-menu/campaign-menu.css" | 150 ++ .../2023-09-menu/campaign-menu.js" | 183 ++ .../2023-09-menu/index.html" | 74 + package-lock.json | 48 +- .../deprecated/report-problem-inline-en.html | 61 + .../deprecated/report-problem-inline-fr.html | 61 + sites/feedback/dto-guidance-en.html | 3 + sites/feedback/dto-guidance-fr.html | 3 + sites/feedback/feedback-docs-en.html | 378 +--- sites/feedback/feedback-docs-fr.html | 376 +--- sites/feedback/includes/feedback.html | 1 - sites/feedback/index.json-ld | 1065 ++++++++- sites/feedback/page-feedback-contact-en.html | 3 +- sites/feedback/page-feedback-contact-fr.html | 3 +- sites/feedback/page-feedback-en.html | 3 +- sites/feedback/page-feedback-fr.html | 3 +- sites/feedback/report-problem-en.html | 1 + sites/feedback/report-problem-fr.html | 1 + sites/includes/i18n-core.liquid | 4 + sites/layouts/default.html | 21 +- sites/layouts/documentation.html | 2005 +++++++++++++++++ sites/page-details/includes/footer.html | 4 +- sites/page-details/page-details-docs-en.html | 8 +- .../page-details-without-buttons-en.html | 3 +- .../page-details-without-buttons-fr.html | 3 +- .../page-details-without-report-btn-en.html | 3 +- .../page-details-without-report-btn-fr.html | 3 +- .../includes/secondary-menu.html | 43 + sites/secondary-menu/index.json-ld | 189 ++ sites/skiplinks/skiplinks-en.html | 4 +- sites/skiplinks/skiplinks-fr.html | 4 +- sites/theme.scss | 3 + templates/advancedservice/index-en.html | 24 +- templates/advancedservice/index-fr.html | 24 +- templates/advancedservice/page2-en.html | 24 +- templates/advancedservice/page2-fr.html | 24 +- templates/advancedservice/page3-en.html | 24 +- templates/advancedservice/page3-fr.html | 24 +- templates/advancedservice/page4-en.html | 24 +- templates/advancedservice/page4-fr.html | 24 +- templates/advancedservice/page5-en.html | 24 +- templates/advancedservice/page5-fr.html | 24 +- templates/advancedservice/page6-en.html | 24 +- templates/advancedservice/page6-fr.html | 24 +- templates/gc-audience-en.html | 4 +- templates/gc-audience-fr.html | 4 +- templates/home/home-en.html | 1 - templates/home/home-fr.html | 1 - .../institutional/institution-arms-en.html | 4 +- .../institutional/institution-arms-fr.html | 4 +- .../institutional/institution-contact-en.html | 4 +- .../institutional/institution-contact-fr.html | 4 +- templates/institutional/institution-en.html | 4 +- templates/institutional/institution-fr.html | 4 +- templates/localnav/task1/index-fr.html | 36 - templates/localnav/task1/task1/index-fr.html | 30 - templates/localnav/task1/task2/index-fr.html | 30 - templates/localnav/task1/task3/index-fr.html | 30 - templates/localnav/task1/task4/index-fr.html | 30 - templates/localnav/task1/task5/index-fr.html | 30 - templates/localnav/task1/task6/index-fr.html | 30 - templates/localnav/task1/task7/index-fr.html | 30 - .../{localnav => lowest-topic}/index-en.html | 6 +- .../{localnav => lowest-topic}/index-fr.html | 6 +- .../{localnav => lowest-topic}/index.json-ld | 53 +- .../task1/index-en.html | 4 +- templates/lowest-topic/task1/index-fr.html | 36 + .../task1/task1/index-en.html | 4 +- .../lowest-topic/task1/task1/index-fr.html | 30 + .../task1/task2/index-en.html | 4 +- .../lowest-topic/task1/task2/index-fr.html | 30 + .../task1/task3/index-en.html | 4 +- .../lowest-topic/task1/task3/index-fr.html | 30 + .../task1/task4/index-en.html | 4 +- .../lowest-topic/task1/task4/index-fr.html | 30 + .../task1/task5/index-en.html | 4 +- .../lowest-topic/task1/task5/index-fr.html | 30 + .../task1/task6/index-en.html | 4 +- .../lowest-topic/task1/task6/index-fr.html | 30 + .../task1/task7/index-en.html | 4 +- .../lowest-topic/task1/task7/index-fr.html | 30 + .../task2/index-en.html | 4 +- .../task2}/index-fr.html | 14 +- .../task3/index-en.html | 4 +- .../task3/index-fr.html | 20 +- .../task3/task1/index-en.html | 4 +- .../task3/task1}/index-fr.html | 16 +- .../task3/task2/index-en.html | 4 +- .../task3/task2/index-fr.html | 20 +- .../task3/task2/task1/index-en.html | 4 +- .../task3/task2/task1}/index-fr.html | 16 +- .../task3/task2/task2/index-en.html | 4 +- .../task3/task2/task2}/index-fr.html | 16 +- .../task3/task3/index-en.html | 4 +- .../task3/task3}/index-fr.html | 16 +- .../task4/index-en.html | 4 +- .../task4}/index-fr.html | 14 +- templates/ministerial/ministerial-doc-fr.html | 6 +- templates/news/news-en.html | 4 +- templates/news/news-fr.html | 4 +- .../organizational-arms-en.html | 4 +- .../organizational-arms-fr.html | 4 +- .../organizational/organizational-en.html | 4 +- .../organizational/organizational-fr.html | 4 +- templates/thematic/dark-theme-home-en.html | 1 - templates/thematic/dark-theme-home-fr.html | 1 - templates/thematic/pink-day-home-en.html | 1 - templates/thematic/pink-day-home-fr.html | 1 - templates/theme-en.html | 4 +- templates/theme-fr.html | 4 +- templates/topic/topic-en.html | 4 +- templates/topic/topic-fr.html | 4 +- templates/topic/topic-testcase-1-en.html | 4 +- templates/topic/topic-testcase-1-fr.html | 4 +- 156 files changed, 8434 insertions(+), 1400 deletions(-) create mode 100644 common/ajax-fetch/ajax-fetch-en.html create mode 100644 common/ajax-fetch/ajax-fetch-fr.html create mode 100644 common/ajax-fetch/ajax/data-ajax-extra-en.html create mode 100644 common/ajax-fetch/ajax/data-ajax-extra-fr.html create mode 100644 common/ajax-fetch/index.json-ld create mode 100644 common/gc_top_menu/index.json-ld create mode 100644 common/gc_top_menu/reports/pre-a11y-1-en.json create mode 100644 common/gc_top_menu/reports/pre-a11y-1-fr.json create mode 100644 common/gc_top_menu/reports/pre-a11y-1.json create mode 100644 common/gc_topic/index.json-ld create mode 100644 common/gc_topic/reports/pre-a11y-1-en.json create mode 100644 common/gc_topic/reports/pre-a11y-1-fr.json create mode 100644 common/gc_topic/reports/pre-a11y-1.json create mode 100644 common/header_language_selector/index.json-ld create mode 100644 common/header_language_selector/reports/pre-a11y-1-en.json create mode 100644 common/header_language_selector/reports/pre-a11y-1-fr.json create mode 100644 common/header_language_selector/reports/pre-a11y-1.json create mode 100644 common/tabs_interference_carousel/index.json-ld create mode 100644 common/tabs_interference_carousel/reports/pre-a11y-1-en.json create mode 100644 common/tabs_interference_carousel/reports/pre-a11y-1-fr.json create mode 100644 common/tabs_interference_carousel/reports/pre-a11y-1.json create mode 100644 components/gc-stp-stp/_base.scss create mode 100644 components/gc-stp-stp/_screen-sm-min.scss create mode 100644 components/gc-stp-stp/gc-stp-stp-doc-en.html create mode 100644 components/gc-stp-stp/gc-stp-stp-doc-fr.html create mode 100644 components/gc-stp-stp/gc-stp-stp-en.html create mode 100644 components/gc-stp-stp/gc-stp-stp-fr.html create mode 100644 components/gc-stp-stp/includes/gc-stp-stp.html create mode 100644 components/gc-stp-stp/index.json-ld create mode 100644 "m\303\251li-m\303\251lo/2023-09-menu/about.html" create mode 100644 "m\303\251li-m\303\251lo/2023-09-menu/calendar.html" create mode 100644 "m\303\251li-m\303\251lo/2023-09-menu/campaign-menu.css" create mode 100644 "m\303\251li-m\303\251lo/2023-09-menu/campaign-menu.js" create mode 100644 "m\303\251li-m\303\251lo/2023-09-menu/index.html" create mode 100644 sites/feedback/deprecated/report-problem-inline-en.html create mode 100644 sites/feedback/deprecated/report-problem-inline-fr.html create mode 100644 sites/feedback/dto-guidance-en.html create mode 100644 sites/feedback/dto-guidance-fr.html create mode 100644 sites/layouts/documentation.html create mode 100644 sites/secondary-menu/includes/secondary-menu.html create mode 100644 sites/secondary-menu/index.json-ld delete mode 100644 templates/localnav/task1/index-fr.html delete mode 100644 templates/localnav/task1/task1/index-fr.html delete mode 100644 templates/localnav/task1/task2/index-fr.html delete mode 100644 templates/localnav/task1/task3/index-fr.html delete mode 100644 templates/localnav/task1/task4/index-fr.html delete mode 100644 templates/localnav/task1/task5/index-fr.html delete mode 100644 templates/localnav/task1/task6/index-fr.html delete mode 100644 templates/localnav/task1/task7/index-fr.html rename templates/{localnav => lowest-topic}/index-en.html (94%) rename templates/{localnav => lowest-topic}/index-fr.html (94%) rename templates/{localnav => lowest-topic}/index.json-ld (77%) rename templates/{localnav => lowest-topic}/task1/index-en.html (97%) create mode 100644 templates/lowest-topic/task1/index-fr.html rename templates/{localnav => lowest-topic}/task1/task1/index-en.html (97%) create mode 100644 templates/lowest-topic/task1/task1/index-fr.html rename templates/{localnav => lowest-topic}/task1/task2/index-en.html (97%) create mode 100644 templates/lowest-topic/task1/task2/index-fr.html rename templates/{localnav => lowest-topic}/task1/task3/index-en.html (97%) create mode 100644 templates/lowest-topic/task1/task3/index-fr.html rename templates/{localnav => lowest-topic}/task1/task4/index-en.html (97%) create mode 100644 templates/lowest-topic/task1/task4/index-fr.html rename templates/{localnav => lowest-topic}/task1/task5/index-en.html (97%) create mode 100644 templates/lowest-topic/task1/task5/index-fr.html rename templates/{localnav => lowest-topic}/task1/task6/index-en.html (97%) create mode 100644 templates/lowest-topic/task1/task6/index-fr.html rename templates/{localnav => lowest-topic}/task1/task7/index-en.html (97%) create mode 100644 templates/lowest-topic/task1/task7/index-fr.html rename templates/{localnav => lowest-topic}/task2/index-en.html (96%) rename templates/{localnav/task4 => lowest-topic/task2}/index-fr.html (64%) rename templates/{localnav => lowest-topic}/task3/index-en.html (97%) rename templates/{localnav => lowest-topic}/task3/index-fr.html (52%) rename templates/{localnav => lowest-topic}/task3/task1/index-en.html (96%) rename templates/{localnav/task3/task3 => lowest-topic/task3/task1}/index-fr.html (58%) rename templates/{localnav => lowest-topic}/task3/task2/index-en.html (97%) rename templates/{localnav => lowest-topic}/task3/task2/index-fr.html (50%) rename templates/{localnav => lowest-topic}/task3/task2/task1/index-en.html (96%) rename templates/{localnav/task3/task2/task2 => lowest-topic/task3/task2/task1}/index-fr.html (55%) rename templates/{localnav => lowest-topic}/task3/task2/task2/index-en.html (96%) rename templates/{localnav/task3/task2/task1 => lowest-topic/task3/task2/task2}/index-fr.html (55%) rename templates/{localnav => lowest-topic}/task3/task3/index-en.html (96%) rename templates/{localnav/task3/task1 => lowest-topic/task3/task3}/index-fr.html (58%) rename templates/{localnav => lowest-topic}/task4/index-en.html (96%) rename templates/{localnav/task2 => lowest-topic/task4}/index-fr.html (64%) diff --git a/_data/components.json b/_data/components.json index 46441ecd35..0cf0a9577e 100644 --- a/_data/components.json +++ b/_data/components.json @@ -296,6 +296,64 @@ ] } } +,{ + "@context": { + "@version": 1.1, + "dct": "http://purl.org/dc/terms/", + "title": { "@id": "dct:title", "@container": "@language" }, + "description": { "@id": "dct:description", "@container": "@language" }, + "modified": "dct:modified" + }, + "title": { + "en": "Step by Step navigation", + "fr": "Navigation étape par étape" + }, + "description": { + "en": "Step by Step navigation designed based on user experience testing", + "fr": "Navigation étape par étape conçu d'après des recherches d'expérience utilisateur" + }, + "modified": "2023-06-28", + "componentName": "gc-stp-stp", + "status": "stable", + "pages": { + "docs": [ + { + "title": "Step by Step navigation", + "language": "en", + "path": "gc-stp-stp-doc-en.html" + }, + { + "title": "Navigation étape par étape", + "language": "fr", + "path": "gc-stp-stp-doc-fr.html" + } + ], + "examples": [ + { + "title": "Step by Step navigation", + "language": "en", + "path": "gc-stp-stp-en.html" + }, + { + "title": "Navigation étape par étape", + "language": "fr", + "path": "gc-stp-stp-fr.html" + } + ], + "spec": [ + { + "title": "Navigation étape par étape : Système de conception de Canada.ca", + "language": "fr", + "url": "https://conception.canada.ca/modeles-recommandes/pages-lancement-service.html" + }, + { + "title": "Step by Step navigation: Canada.ca design system", + "language": "en", + "url": "https://design.canada.ca/recommended-templates/service-initiation-pages.html" + } + ] + } +} ,{ "@context": { "@version": 1.1, diff --git a/_data/sites.json b/_data/sites.json index 2bb48802b8..faf14bf189 100644 --- a/_data/sites.json +++ b/_data/sites.json @@ -191,6 +191,7 @@ "modified": "2023-01-10", "componentName": "feedback", "status": "stable", + "version": "1.5", "pages": { "docs": [ { @@ -236,7 +237,1069 @@ "path": "report-problem-fr.html" } ] - } + }, + "dependencies": [ + "Page details" + ], + "a11yGuidance": "no accessibility guidance", + "variations": [ + { + "name": { + "en": "Page feedback tool (default)", + "fr": "Outil de rétroaction sur la page (par défaut)" + }, + "status": "stable", + "description": { + "en": "The Page feedback tool variation replaces the “Report a problem” pattern while actively collecting user feedback", + "fr": "La variante de l'Outil de rétroaction sur la page remplace le modèle « Signaler un problème » tout en collectant activement les commentaires des utilisateurs." + }, + "guidance": { + "en": "https://design.canada.ca/continuous-improvement/monitoring/feedback.html", + "fr": "https://conception.canada.ca/amelioration-continue/mesure/retroaction.html" + }, + "iteration": "_:iteration_pft_1", + "example": [ + { + "en": { "href": "page-feedback-en.html", "text": "Page feedback tool" }, + "fr": { "href": "page-feedback-fr.html", "text": "Outil de rétroaction sur la page" } + } + ], + "implementation": [ + "_:implement_pft", + "_:implement_pft_gcweb" + ], + "history": [ + { + "en": "August 2023 - Initial implementation of the variation.", + "fr": "Août 2023 - Implémentation initiale de la variante." + } + ] + }, + { + "name": { + "en": "Page feedback tool with contact link", + "fr": "Outil de rétroaction sur la page avec lien de contact" + }, + "status": "stable", + "description": { + "en": "The Page feedback tool with contact link variation replaces the “Report a problem” pattern while actively collecting user feedback", + "fr": "La variante de l'Outil de rétroaction sur la page avec lien de contact remplace le modèle « Signaler un problème » tout en collectant activement les commentaires des utilisateurs." + }, + "guidance": { + "en": "https://design.canada.ca/continuous-improvement/monitoring/feedback.html", + "fr": "https://conception.canada.ca/amelioration-continue/mesure/retroaction.html" + }, + "iteration": "_:iteration_pft_1", + "example": [ + { + "en": { "href": "page-feedback-contact-en.html", "text": "Page feedback tool with contact link" }, + "fr": { "href": "page-feedback-contact-fr.html", "text": "Outil de rétroaction sur la page avec lien de contact" } + } + ], + "implementation": [ + "_:implement_pft_contact", + "_:implement_pft_contact_gcweb" + ], + "history": [ + { + "en": "August 2023 - Initial implementation of the variation.", + "fr": "Août 2023 - Implémentation initiale de la variante." + } + ] + }, + { + "name": { + "en": "Report a problem", + "fr": "Signaler un problème" + }, + "status": "stable", + "description": { + "en": "The Report a problem variation features an expand/collapse button with a list of checkboxes.", + "fr": "La variation Signaler un problème comporte un bouton développer/réduire avec une liste de cases à cocher." + }, + "guidance": { + "en": "https://design.canada.ca/common-design-patterns/report-problem.html", + "fr": "https://conception.canada.ca/configurations-conception-communes/signaler-probleme.html" + }, + "iteration": "_:iteration_rap_5", + "example": [ + { + "en": { "href": "report-problem-en.html", "text": "Report a problem" }, + "fr": { "href": "report-problem-fr.html", "text": "Signaler un problème" } + } + ], + "implementation": [ + "_:implement_rap", + "_:implement_rap_aa", + "_:implement_rap_gcweb" + ], + "history": [ + { + "en": "August 2023 - Removed JSON Manager extraction for 'externalReferer' and 'subject'.", + "fr": "Août 2023 – Suppression de l’extraction via le Gestionnaire JSON pour « externalReferer » et « subject »." + }, + { + "en": "March 2023 - Leveraging JSON Manager Extractor and Data JSON to generate hidden input fields.", + "fr": "Mars 2023 - Utilise l'extracteur du Gestionnaire JSON et Data JSON pour générer des champs de saisie masqués." + }, + { + "en": "January 2023 - Removed login error sub-options and renamed login error option.", + "fr": "Janvier 2023 – Suppression des sous-options d’erreur de connexion et l'option d’erreur de connexion renommée." + }, + { + "en": "May 2022 - Rework of the template to use data-ajax. Includes fallback for basic HTML version.", + "fr": "Mai 2022 - Refonte du gabarit pour utiliser data-ajax. Inclut une solution de secours pour la version HTML simplifiée." + }, + { + "en": "March 2021 - Initial implementation of the component.", + "fr": "Mars 2021 - Implémentation initiale de la composante." + } + ] + } + ], + "implementation": [ + { + "@id": "_:implement_rap", + "iteration": "_:iteration_rap_5", + "name": { + "en": "Standard", + "fr": "Standard" + }, + "introduction": { + "en": "This implementation is meant for developers/publishers adding the component manually.", + "fr": "Cette implémentation est destinée aux développeurs/éditeurs qui ajoutent le composant manuellement." + }, + "instructions": { + "en": [ + "To show the Report a problem form, create a <div> with the following data attribute: data-ajax-replace=\"ajax/report-problem-en.html\".", + "For the basic HTML version, a link element should be created inside a <div> that points to the report a problem form page: <div><a class=\"btn btn-default btn-block\" href=\"https://www.canada.ca/en/report-problem.html\">Report a problem on this page</a></div>.", + "This variation leverages JSON Manager and Data JSON to get information about the page and generate hidden input fields in the form. Therefore, the tag <meta name=\"dcterms.creator\" content=\"[Department name]\"> needs to be present in the page." + ], + "fr": [ + "Pour afficher le formulaire de commentaires sur la page, créez un <div> avec l'attribut suivant : data-ajax-replace=\"ajax/report-problem-fr.html\".", + "Pour la version HTML de base, un lien doit être créé dans un <div> qui pointe vers la page du formulaire de signalement d'un problème : <div><a class=\"btn btn-default btn-block\" href=\"https://www.canada.ca/fr/signaler-probleme.html\">Signaler un problème sur cette page</a></div>.", + "Cette variante utilise JSON Manager et Data JSON pour obtenir des informations sur la page et générer des champs de saisie masqués dans le formulaire. La balise <meta name=\"dcterms.creator\" content=\"[Nom du service]\"> doit être présente dans la page." + ] + }, + "notes": { + "en": [ + "For more information about Data Ajax plugin, please visit Data Ajax documentation page." + ], + "fr": [ + "Pour plus d'informations sur le plugin Data Ajax, veuillez visiter la page de documentation Data Ajax." + ] + }, + "sample": { + "en": [ + { + "@type": "source-code", + "description": "Code sample:", + "code": "<div data-ajax-replace=\"ajax/report-problem-en.html\">\n\t<div class=\"row row-no-gutters\">\n\t\t<div class=\"col-sm-9 col-md-6 col-lg-5\">\n\t\t\t<a class=\"btn btn-default btn-block\" href=\"https://www.canada.ca/en/report-problem.html\">Report a problem on this page</a>\n\t\t</div>\n\t</div>\n</div>" + }, + { + "@type": "source-code", + "collapsed": true, + "description": "Ajaxed-in content", + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "ajax/report-problem-en.html" + } + } + ], + "fr": [ + { + "@type": "source-code", + "description": "Exemple de code :", + "code": "<div data-ajax-replace=\"ajax/report-problem-en.html\">\n\t<div class=\"row row-no-gutters\">\n\t\t<div class=\"col-sm-9 col-md-6 col-lg-5\">\n\t\t\t<a class=\"btn btn-default btn-block\" href=\"https://www.canada.ca/fr/signaler-probleme.html">Signaler un problème sur cette page</a>\n\t\t</div>\n\t</div>\n</div>" + }, + { + "@type": "source-code", + "collapsed": true, + "description": "Contenu ajouté via Ajax :", + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "ajax/report-problem-fr.html" + } + } + ] + } + }, + { + "@id": "_:implement_rap_aa", + "iteration": "_:iteration_rap_5", + "name": { + "en": "Adobe Analytics", + "fr": "Adobe Analytics" + }, + "introduction": { + "en": "This implementation is meant for analytics analysts trying to add analytics properties to the component.", + "fr": "Cette implémentation est destinée aux analystes en analytiques qui veulent ajouter des propriétés analytiques au composant." + }, + "instructions": { + "en": [ + "To implement Adobe Analytics in the Report a problem form, simply add the attribute data-gc-analytics-rap to every checkbox with the value being the same as the current language's <label>, followed by a dash and followed by the other language's <label>." + ], + "fr": [ + "Pour implémenter Adobe Analytics dans le formulaire Signaler un problème, ajoutez simplement l'attribut data-gc-analytics-rap à chaque case à cocher avec la valeur étant la même que le <label> de la langue actuelle, suivie d'un tiret et suivi par le <label> de l'autre langue." + ] + }, + "sample": { + "en": [ + { + "@type": "source-code", + "description": "Code sample:", + "code": "<div class=\"checkbox\">\n\t<label for=\"problem2\">\n\t\t<input name=\"problem2\" id=\"problem2\" type=\"checkbox\" value=\"Yes\" data-gc-analytics-rap=\"It has a spelling mistake-Il y a une erreur d'orthographe ou de grammaire\">It has a spelling mistake\n\t</label>\n\t<input name=\"problem2\" type=\"hidden\" value=\"\">\n</div>" + } + ], + "fr": [ + { + "@type": "source-code", + "description": "Exemple de code :", + "code": "<div class=\"checkbox\">\n\t<label for=\"problem2\">\n\t\t<input name=\"problem2\" id=\"problem2\" type=\"checkbox\" value=\"Yes\" data-gc-analytics-rap=\"Il y a une erreur d'orthographe ou de grammaire-It has a spelling mistake\">Il y a une erreur d'orthographe ou de grammaire\n\t</label>\n\t<input name=\"problem2\" type=\"hidden\" value=\"\">\n</div>" + } + ] + } + }, + { + "@id": "_:implement_rap_gcweb", + "iteration": "_:iteration_rap_5", + "name": { + "en": "GCWeb Jekyll", + "fr": "GCWeb Jekyll" + }, + "introduction": { + "en": "This implementation is meant for developers trying to implement this component within a GCWeb Jekyll site.", + "fr": "Cette implémentation est destinée aux développeurs essayant d'implémenter ce composant dans un site GCWeb Jekyll." + }, + "instructions": { + "en": [ + "In the page's front-matter do the following:
  • set the variable feedback to true
  • set the variable feedbackPath to \"ajax/report-problem-en.html\"
  • set the variable feedbackFallback to true
" + ], + "fr": [ + "Dans l'en-tête de la page faites ce qui suit :
  • définissez la variable feedback à true.
  • définissez la variable feedbackPath à \"ajax/report-problem-fr.html\"
  • définissez la variable feedbackFallback à true
  • " + ] + }, + "sample": { + "en": [ + { + "@type": "source-code", + "description": "Code sample:", + "code": "\"feedback\": true, \n\"feedbackFallback\": true, \n\"feedbackPath\": \"ajax-report-problem-en.html\"" + } + ], + "fr": [ + { + "@type": "source-code", + "description": "Code sample:", + "code": "\"feedback\": true, \n\"feedbackFallback\": true, \n\"feedbackPath\": \"ajax-report-problem-fr.html\"" + } + ] + } + }, + { + "@id": "_:implement_pft", + "iteration": "_:iteration_pft_1", + "name": { + "en": "Standard", + "fr": "Standard" + }, + "introduction": { + "en": "This implementation is meant for developers/publishers adding the component manually.", + "fr": "Cette implémentation est destinée aux développeurs/éditeurs qui ajoutent le composant manuellement." + }, + "instructions": { + "en": [ + "To show the page feedback form, create a <div class=\"wb-disable-allow\"> with the following data attributes:
    • Mandatory: data-ajax-replace=\"assets/page-feedback-en.html\"
    • Optional: data-feedback-theme=\"[Text defining the theme of your page]\"
    • Optional: data-feedback-section=\"[Text defining the section where your page resides]\"
    ", + "Additionally, your page needs to have the following metadata: <meta name=\"dcterms.creator\" content=\"[Department name]\">" + ], + "fr": [ + "Pour afficher le formulaire de rétroaction sur la page, créez un <div class=\"wb-disable-allow\"> avec les attributs suivants :
    • Obligatoire : data-ajax-replace=\"assets/page-feedback-fr.html\"
    • Optionnel : data-feedback-theme=\"[Texte définissant le thème de votre page]\"
    • Optionnel : data-feedback-section=\"[Texte définissant la section où réside votre page]\"
    ", + "De plus, vous pouvez définir les métadonnées suivantes : <meta name=\"dcterms.creator\" content=\"[Department name]\">" + ] + }, + "notes": { + "en": [ + "For more information about Data Ajax plugin, please visit Data Ajax documentation page." + ], + "fr": [ + "Pour plus d'informations sur le plugin Data Ajax, veuillez visiter la page de documentation Data Ajax." + ] + }, + "sample": { + "en": [ + { + "@type": "source-code", + "description": "Code sample:", + "code": "<div class=\"wb-disable-allow\" \ndata-ajax-replace=\"assets/page-feedback-en.html\" \ndata-feedback-section=\"[Text defining the theme of your page]\" \ndata-feedback-theme=\"[Text defining the section where your page resides]\"></div>" + }, + { + "@type": "source-code", + "collapsed": true, + "description": "Ajaxed-in content", + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "assets/page-feedback-en.html" + } + } + ], + "fr": [ + { + "@type": "source-code", + "description": "Exemple de code :", + "code": "<div class=\"wb-disable-allow\" \ndata-ajax-replace=\"assets/page-feedback-fr.html\" \ndata-feedback-section=\"[Texte définissant le thème de votre page]\" \ndata-feedback-theme=\"[Texte définissant la section où réside votre page]\"></div>" + }, + { + "@type": "source-code", + "collapsed": true, + "description": "Contenu ajouté via Ajax :", + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "assets/page-feedback-fr.html" + } + } + ] + } + }, + { + "@id": "_:implement_pft_gcweb", + "iteration": "_:iteration_pft_1", + "name": { + "en": "GCWeb Jekyll", + "fr": "GCWeb Jekyll" + }, + "introduction": { + "en": "This implementation is meant for developers trying to implement this component within a GCWeb Jekyll site. To apply this variant's optional attributes on any given page, you will need to do the following in the page's front-matter:", + "fr": "Cette implémentation est destinée aux développeurs essayant d'implémenter ce composant dans un site GCWeb Jekyll. Pour appliquer les attributs facultatifs de cette variante sur une page donnée, vous devrez procéder comme suit dans le front-matter de la page :" + }, + "instructions": { + "en": [ + "Set the variable feedback to true.", + "Set the variable feedbackData to an object containing the following customizable strings:
    • section: to define the section where your page resides.
    • theme: to define the theme of your page.
    " + ], + "fr": [ + "Définissez la variable feedback à true.", + "Définissez la variable feedbackData à un objet contenant les chaînes de caractères suivantes :
    • section: pour définir la section où réside votre page.
    • theme: pour définir le thème de votre page.
    " + ] + }, + "sample": { + "en": [ + { + "@type": "source-code", + "description": "Code sample:", + "code": "\"feedback\": true,\n\"feedbackData\": {\n\t\"theme\": \"Theme\",\n\t\"section\": \"Section\"\n}" + } + ], + "fr": [ + { + "@type": "source-code", + "description": "Code sample:", + "code": "\"feedback\": true,\n\"feedbackData\": {\n\t\"theme\": \"Thème\",\n\t\"section\": \"Section\"\n}" + } + ] + } + }, + { + "@id": "_:implement_pft_contact", + "iteration": "_:iteration_pft_1", + "name": { + "en": "Standard", + "fr": "Standard" + }, + "introduction": { + "en": "This implementation is meant for developers/publishers adding the component manually.", + "fr": "Cette implémentation est destinée aux développeurs/éditeurs qui ajoutent le composant manuellement." + }, + "instructions": { + "en": [ + "To show the page feedback form, create a <div class=\"wb-disable-allow\"> with the following data attributes:
    • Mandatory: data-ajax-replace=\"assets/page-feedback-en.html\"
    • Mandatory: data-feedback-link=\"[Contact link text]\"
    • Mandatory: data-feedback-url=\"[Contact link URL]\"
    • Optional: data-feedback-theme=\"[Text defining the theme of your page]\"
    • Optional: data-feedback-section=\"[Text defining the section where your page resides]\"
    ", + "Additionally, your page needs to have the following metadata: <meta name=\"dcterms.creator\" content=\"[Department name]\">" + ], + "fr": [ + "Pour afficher le formulaire de rétroaction sur la page, créez un <div class=\"wb-disable-allow\"> avec les attributs suivants :
    • Obligatoire : data-ajax-replace=\"assets/page-feedback-fr.html\"
    • Obligatoire : data-feedback-link=\"[Contact link text]\"
    • Obligatoire : data-feedback-url=\"[Contact link URL]\"
    • Optionnel : data-feedback-theme=\"[Texte définissant le thème de votre page]\"
    • Optionnel : data-feedback-section=\"[Texte définissant la section où réside votre page]\"
    ", + "De plus, vous pouvez définir les métadonnées suivantes : <meta name=\"dcterms.creator\" content=\"[Department name]\">" + ] + }, + "notes": { + "en": [ + "For more information about Data Ajax plugin, please visit Data Ajax documentation page." + ], + "fr": [ + "Pour plus d'informations sur le plugin Data Ajax, veuillez visiter la page de documentation Data Ajax." + ] + }, + "sample": { + "en": [ + { + "@type": "source-code", + "description": "Code sample:", + "code": "<div class=\"wb-disable-allow\" \ndata-ajax-replace=\"assets/page-feedback-en.html\" \ndata-feedback-section=\"[Text defining the theme of your page]\" \ndata-feedback-theme=\"[Text defining the section where your page resides]\" \ndata-feedback-link=\"[Contact link text]\" \ndata-feedback-url=\"[Contact link URL]\"></div>" + }, + { + "@type": "source-code", + "collapsed": true, + "description": "Ajaxed-in content", + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "assets/page-feedback-en.html" + } + } + ], + "fr": [ + { + "@type": "source-code", + "description": "Exemple de code :", + "code": "<div class=\"wb-disable-allow\" \ndata-ajax-replace=\"assets/page-feedback-fr.html\" \ndata-feedback-section=\"[Texte définissant le thème de votre page]\" \ndata-feedback-theme=\"[Texte définissant la section où réside votre page]\" \ndata-feedback-link=\"[Texte du lien de contact]\" \ndata-feedback-url=\"[URL du lien de contact]\"></div>" + }, + { + "@type": "source-code", + "collapsed": true, + "description": "Contenu ajouté via Ajax :", + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "assets/page-feedback-fr.html" + } + } + ] + } + }, + { + "@id": "_:implement_pft_contact_gcweb", + "iteration": "_:iteration_pft_1", + "name": { + "en": "GCWeb Jekyll", + "fr": "GCWeb Jekyll" + }, + "introduction": { + "en": "This implementation is meant for developers trying to implement this component within a GCWeb Jekyll site. To apply this variant's optional attributes on any given page, you will need to do the following in the page's front-matter:", + "fr": "Cette implémentation est destinée aux développeurs essayant d'implémenter ce composant dans un site GCWeb Jekyll. Pour appliquer les attributs facultatifs de cette variante sur une page donnée, vous devrez procéder comme suit dans le front-matter de la page :" + }, + "instructions": { + "en": [ + "Set the variable feedback to true.", + "Set the variable feedbackContact to an object containing the following properties:
    • link: to define the contact link's text.
    • url: to define the contact link's URL.
    ", + "Optionally, set the variable feedbackData to an object containing the following customizable strings:
    • section: to define the section where your page resides.
    • theme: to define the theme of your page.
    " + ], + "fr": [ + "Définissez la variable feedback à true.", + "Définissez la variable feedbackContact à un objet contenant les propriétés :
    • link: pour définir le texte du lien de contact.
    • url: pour définir l'URL du lien de contact.
    ", + "Facultativement, définissez la variable feedbackData à un objet contenant les propriétés suivantes :
    • section: pour définir la section où réside votre page.
    • theme: pour définir le thème de votre page.
    " + ] + }, + "sample": { + "en": [ + { + "@type": "source-code", + "description": "Code sample:", + "code": "\"feedback\": true, \n\"feedbackContact\": {\n\t\"link\": \"Contact link\",\n\t\"url\": \"https://canada.ca/en\"\n}, \n\"feedbackData\": {\n\t\"theme\": \"Theme\",\n\t\"section\": \"Section\"\n}" + } + ], + "fr": [ + { + "@type": "source-code", + "description": "Code sample:", + "code": "\"feedback\": true, \n\"feedbackContact\": {\n\t\"link\": \"Lien de contact\",\n\t\"url\": \"https://canada.ca/fr\"\n}, \n\"feedbackData\": {\n\t\"theme\": \"Thème\",\n\t\"section\": \"Section\"\n}" + } + ] + } + } + ], + "changesets": [ + { + "@id": "_:cs_rap_inline", + "name": "Report a problem inline", + "status": "stable", + "baseOnIteration": "_:iteration_rap_1", + "detectableBy": "The RAP web form is hardcoded in each page and the form inputs are server-side personalized/configured.", + "layout": [ + "At the top-left column in the page details component", + "When expanded, a vertical form is shown in-place" + ], + "style": [ + "It is visually rendered as a default button", + "Only have an arrow when the online form is available directly on the page" + ], + "semantic": { + "@type": "source-code", + "collapsed": true, + "description": "Include with logic in Handlebars that supports all variations of this changeset. The list of questions is in scope.", + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "deprecated/report-problem-inline-en.html" + } + }, + "logic": "Not applicable", + "behaviour": [ + "Non-Canada.ca implementation - Redirect to a web page with a form to collect the feedback", + "Canada.ca implementation - Show an inline form underneath the button, when requested by the user, to collect the feedback" + ], + "guidance": [ + "Canada.ca - Show the feedback form under the RAP button", + "Non Canada.ca - Redirect the user on a page to collect the feedback." + ], + "context": "In the page details component, inside the main content of the page", + "configuration":[ + "Form submission URL", + "Basic mode: URL of the feedback button" + ], + "static": [ + "Button text - RAP-title - 'Report a problem on this page' - 'Signaler un problème ou une erreur sur cette page'", + "Text in the ", + "Question 1", + "Question 2", + "Question 3", + "Question 4", + "Question 5", + "Question 11", + "Question 12" + ], + "schema": [ + "Form submission URL" + ], + "dependency": [ + "Page details, version 1, incompatible with version 2 and up" + ], + "file": "Not applicable" + }, + { + "@id": "_:cs_rap_container", + "name": "Report a problem with AJAX", + "status": "stable", + "baseOnIteration": "_:iteration_rap_5", + "detectableBy": "The RAP web form is inserted via ajax", + "layout": [ + "At the top-left column in the page details component", + "When expanded, a vertical form is shown in-place" + ], + "style": [ + "It is visually rendered as a default button", + "Only have an arrow when the online form is available directly on the page" + ], + "semantic": { + "@type": "source-code", + "description": "Container calling the RAP form via AJAX", + "code": { + "@type": [ "rdf:HTML" ], + "@value": "
    \n\t
    \n\t\t\n\t
    \n
    \n" + } + }, + "logic": "Not applicable", + "behaviour": [ + "Non-Canada.ca implementation: redirect to a web page with a form to collect the feedback", + "Canada.ca implementation: show an inline form underneath the button when requested by the user, to collect the feedback", + "Basic mode Canada.ca implementation: show the fallback button" + ], + "guidance": [ + "Canada.ca: show the feedback form underneath the RAP button", + "Non Canada.ca: redirect the user on a page to collect the feedback." + ], + "context": "In the page details component, inside the main content of the page", + "configuration":[ + "URL of the file being AJAXed", + "URL of the RAP fallback link" + ], + "static": [ + "Button text - RAP-title - \"Report a problem on this page\" - \"Signaler un problème ou une erreur sur cette page\"" + ], + "schema": [ + "AjaxLink", + "StaticRapLink" + ], + "dependency": [ + "Page details, version 2, incompatible with version 1", + "RAP AJAX content as described by the changeset _:cs_rap_ajax", + "RAP AJAX content as described by the changeset _:cs_rap_ajax_2" + ], + "file": "Not applicable" + }, + { + "@id": "_:cs_rap_ajax", + "name": "Report a problem AJAX file", + "status": "stable", + "baseOnIteration": "_:iteration_rap_2", + "dependOnChangeSet": "_:cs_rap_container", + "detectableBy": "HTML fragment that starts with a \"row row-no-gutters\", containing a form and a wrapper \"div.gc-rprt-prlm\"", + "layout": [ + "Full width button", + "When expanded, a vertical form is shown" + ], + "style": [ + "The expandable Button is rendered as the default button preceded by an arrow", + "Gray background for the form area", + "Primary styled button for form submission" + ], + "semantic": { + "@type": "source-code", + "description": "HTML fragment which is inserted into the RAP container", + "collapsed": true, + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "ajax/deprecated/report-problem-v1-en.html" + } + }, + "logic": "Not applicable", + "behaviour": [ + "Button that show/hide the RAP form", + "Success message showed on success or failure" + ], + "guidance": [ + "Canada.ca: show the feedback form underneath the RAP button" + ], + "context": "To be used by RAP", + "configuration":[ + "Form submission URL" + ], + "static": [ + "Button text - RAP-title - \"Report a problem on this page\" - \"Signaler un problème ou une erreur sur cette page\"", + "Text in the ", + "Problem 1", + "Problem 2", + "Problem 3", + "Problem 4", + "Problem 5", + "Problem 6", + "Problem 7", + "Problem 8", + "Problem 9", + "Problem 10", + "Problem 11", + "Problem 12", + "Submit button", + "Success message", + "Failure message" + ], + "schema": [ + "Form submission URL" + ], + "dependency": [ + "Page details, version 2, incompatible with version 1" + ], + "file": "Not applicable, this HTML fragment content is intended to be integrated by a location that fits the content management system" + }, + { + "@id": "_:cs_rap_ajax_2", + "name": "Report a problem AJAX file Data-JSON", + "status": "stable", + "baseOnIteration": "_:iteration_rap_5", + "dependOnChangeSet": "_:cs_rap_container", + "detectableBy": "Hidden inputs genereted via Data-JSON and \"subject\" and \"externalReferer\" are static", + "layout": [ + "Full width button", + "When expanded, a vertical form is shown" + ], + "style": [ + "The expandable Button is rendered as the default button preceded by an arrow", + "Gray background for the form area", + "Primary styled button for form submission" + ], + "semantic": { + "@type": "source-code", + "description": "HTML fragment which is inserted into the RAP container", + "collapsed": true, + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "ajax/deprecated/report-problem-v1-en.html" + } + }, + "logic": "Not applicable", + "behaviour": [ + "Button that show/hide the RAP form", + "Success message showed on success or failure" + ], + "guidance": [ + "Canada.ca: show the feedback form underneath the RAP button" + ], + "context": "To be used by RAP", + "configuration":[ + "Form submission URL" + ], + "static": [ + "Button text - RAP-title - \"Report a problem on this page\" - \"Signaler un problème ou une erreur sur cette page\"", + "Hidden inputs \"subject\" and \"externalReferer\"", + "Text in the ", + "Problem 1", + "Problem 2", + "Problem 3", + "Problem 4", + "Problem 5", + "Problem 11", + "Problem 12", + "Submit button", + "Success message", + "Failure message" + ], + "schema": [ + "Form submission URL" + ], + "dependency": [ + "Page details, version 2, incompatible with version 1" + ], + "file": "Not applicable, this HTML fragment content is intended to be integrated by a location that fits the content management system" + }, + { + "@id": "_:cs_pft_container", + "name": "Page feedback tool with AJAX", + "status": "stable", + "baseOnIteration": "_:iteration_pft_1", + "detectableBy": "
    ", + "layout": [ + "At the top-left column in the page details component", + "When user selects \"No\", a form with a textarea appears" + ], + "style": [ + "Light-gray box with question and two primary buttons", + "When user selects \"No\", a form with a textarea replaces the question and primary buttons" + ], + "semantic": { + "@type": "source-code", + "description": "Container calling the RAP form via AJAX", + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "includes/feedback.html" + } + }, + "logic": "Not applicable", + "behaviour": [ + "Display an inline form that replaces the buttons when requested by the user, to collect the feedback" + ], + "context": "In the page details component, inside the main content of the page", + "configuration":[ + "Mandatory: URL of the file being AJAXed", + "Optional: data-feedback-section attribute", + "Optional: data-feedback-theme attribute", + "Mandaotry for Page feedback tool with contact link variation: data-feedback-link attribute", + "Mandaotry for Page feedback tool with contact link variation: data-feedback-url attribute" + ], + "static": "Not applicable", + "schema": [ + "AjaxLink", + "FeedbackSection", + "FeedbackTheme", + "FeedbackLink", + "FeedbackURL" + ], + "dependency": [ + "Page details, version 2, incompatible with version 1", + "PFT AJAX content as described by the changeset _:cs_pft_ajax" + ], + "file": "Not applicable" + }, + { + "@id": "_:cs_pft_ajax", + "name": "Page feedback tool AJAX file", + "status": "stable", + "baseOnIteration": "_:iteration_pft_1", + "dependOnChangeSet": "_:cs_pft_container", + "detectableBy": "
    ", + "layout": [ + "Row - string followed by two primary buttons", + "Form appear when \"No\" is selected", + "Label", + "Hint", + "Info text", + "Textarea", + "Submit button" + ], + "style": [ + "Light-gray box with question and two primary buttons", + "When user selects \"No\", a form with a textarea replaces the question and primary buttons", + "When user submits, a confirmation message is shown on postback" + ], + "semantic": { + "@type": "source-code", + "description": "HTML fragment which is inserted into the PFT container", + "collapsed": true, + "code": { + "@type": [ "@id", "rdf:HTML" ], + "@value": "assets/page-feedback-en.html" + } + }, + "logic": "Not applicable", + "behaviour": [ + "When user selects \"No\", a form with a textarea and submit button replaces the question and primary buttons", + "When user selects \"Yes\", a success message replaces the question and primary buttons" + ], + "guidance": "Not applicable", + "context": "To be used by PFT", + "configuration": "Not applicable", + "static": [ + "Heading 3: Give feedback about this page - Donnez votre rétroaction sur cette page", + "Legend: Did you find what you were looking for? - Avez-vous trouvé ce que vous cherchiez?", + "Button: Yes - Oui", + "Button: No - Non", + "Paragraph (basic only): If not, tell us why below - Sinon, dites nous pourquoi ci-dessous", + "Paragraph: Tell us why below - Dites nous pourquoi ci-dessous", + "Summary (contact link variation only): Need urgent help with a problem? Contact us - Besoin d’aide urgente pour résoudre un problème? Communiquez avec nous", + "Label: Please provide more details - Veuillez fournir plus de détails", + "Small note: You will not receive a reply. Don't include personal information (telephone, email, SIN, financial, medical, or work details). - Vous ne recevrez pas de réponse. N'incluez pas de renseignements personnels (téléphone, courriel, NAS, renseignements financiers, médicaux ou professionnels).", + "Instruction paragraph: Maximum 300 characters - Maximum de 300 caractères", + "Button: Submit - Soumettre", + "Success message: Thank you for your feedback. - Merci de vos commentaires." + ], + "schema": "Not applicable", + "dependency": [ + "Page details, version 2, incompatible with version 1" + ], + "file": "Not applicable, this HTML fragment content is intended to be integrated by a location that fits the content management system" + } + ], + "iteration": [ + { + "@id": "_:iteration_pft_1", + "name": "Page feedback tool - Iteration 1", + "date": "2023-08", + "detectableBy": ".gc-pft", + "assets": [ + { + "@type": "source-code", + "@language": "en", + "description": "Code sample", + "code": "
    " + }, + { + "@type": "source-code", + "@language": "en", + "description": "Code sample with contact link", + "code": "
    " + }, + { + "@type": "source-code", + "@language": "en", + "description": "Ajaxed-in content", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "assets/page-feedback-en.html" + } + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Exemple de code", + "code": "
    " + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Exemple de code avec lien de contact", + "code": "
    " + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Contenu ajouté via Ajax", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "assets/page-feedback-fr.html" + } + } + ] + }, + { + "@id": "_:iteration_rap_1", + "@language": "en", + "name": "Report a problem - Iteration 1", + "date": "2021-03", + "detectableBy": ".gc-rprt-prblm", + "successor": "_:iteration_rap_2", + "assets": [ + { + "@type": "source-code", + "@language": "en", + "description": "Code sample", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "ajax/deprecated/report-problem-v1-en.html" + } + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Exemple de code", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "ajax/deprecated/report-problem-v1-fr.html" + } + } + ] + }, + { + "@id": "_:iteration_rap_2", + "name": "Report a problem - Iteration 2", + "date": "2022-05", + "detectableBy": "The component is now loaded through data-ajax", + "breaking": [ + "Layout: rework of the template to use data-ajax. Includes fallback for basic HTML version", + "Semantic: added login error options (problem 5 to problem 10).", + "Behaviour: form now leverages wb-postback for form validation and no longer uses data-toggle on submit.", + "Behaviour: added error and success messages." + ], + "predecessor": "_:iteration_rap_1", + "successor": "_:iteration_rap_3", + "assets": [ + { + "@type": "source-code", + "@language": "en", + "description": "Code sample", + "code": "
    \n\t
    \n\t\t\n\t
    \n
    " + }, + { + "@type": "source-code", + "@language": "en", + "description": "Ajaxed-in content", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "ajax/deprecated/report-problem-v2-en.html" + } + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Exemple de code", + "code": "
    \n\t
    \n\t\t\n\t
    \n
    " + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Contenu ajouté via Ajax", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "ajax/deprecated/report-problem-v2-fr.html" + } + } + ] + }, + { + "@id": "_:iteration_rap_3", + "name": "Report a problem - Iteration 3", + "date": "2023-01", + "detectableBy": "Options 6 through 10 are not there.", + "breaking": [ + "Semantic: removed login error sub-options.", + "Semantic: renamed login error option." + ], + "predecessor": "_:iteration_rap_2", + "successor": "_:iteration_rap_4", + "assets": [ + { + "@type": "source-code", + "@language": "en", + "description": "Code sample", + "code": "
    \n\t
    \n\t\t\n\t
    \n
    " + }, + { + "@type": "source-code", + "@language": "en", + "description": "Ajaxed-in content", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "ajax/deprecated/report-problem-v3-en.html" + } + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Exemple de code", + "code": "
    \n\t
    \n\t\t\n\t
    \n
    " + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Contenu ajouté via Ajax", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "ajax/deprecated/report-problem-v3-fr.html" + } + } + ] + }, + { + "@id": "_:iteration_rap_4", + "name": "Report a problem - Iteration 4", + "date": "2023-03", + "detectableBy": "Hidden inputs are generated via Data-JSON", + "breaking": [ + "Semantic: leveraging JSON Manager Extractor and Data JSON to generate hidden input fields." + ], + "predecessor": "_:iteration_rap_3", + "successor": "_:iteration_rap_5", + "assets": [ + { + "@type": "source-code", + "@language": "en", + "description": "Code sample", + "code": "
    \n\t
    \n\t\t\n\t
    \n
    " + }, + { + "@type": "source-code", + "@language": "en", + "description": "Ajaxed-in content", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "ajax/deprecated/report-problem-v4-en.html" + } + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Exemple de code", + "code": "
    \n\t
    \n\t\t\n\t
    \n
    " + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Contenu ajouté via Ajax", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "ajax/deprecated/report-problem-v4-fr.html" + } + } + ] + }, + { + "@id": "_:iteration_rap_5", + "name": "Report a problem - Iteration 5", + "date": "2023-08", + "detectableBy": "externalReferer and subject are no longer generated via Data-JSON, but are now static.", + "breaking": [ + "Semantic: removed JSON Manager extraction for 'externalReferer' and 'subject'." + ], + "additions": [ + "Semantic: added static hidden inputs for 'externalReferer' and 'subject'." + ], + "predecessor": "_:iteration_rap_4", + "assets": [ + { + "@type": "source-code", + "@language": "en", + "description": "Code sample", + "code": "
    \n\t
    \n\t\t\n\t
    \n
    " + }, + { + "@type": "source-code", + "@language": "en", + "description": "Ajaxed-in content", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "ajax/report-problem-en.html" + } + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Exemple de code", + "code": "
    \n\t
    \n\t\t\n\t
    \n
    " + }, + { + "@type": "source-code", + "@language": "fr", + "description": "Contenu ajouté via Ajax", + "code": { + "@type": [ "rdf:HTML", "@id" ], + "@value": "ajax/report-problem-fr.html" + } + } + ] + } + ] } ,{ "@context": { diff --git a/_includes/components/gc-features/features.html b/_includes/components/gc-features/features.html index da6e088094..fc64cd4ed9 100644 --- a/_includes/components/gc-features/features.html +++ b/_includes/components/gc-features/features.html @@ -15,7 +15,7 @@

    Features

    {% for i in (1..3) %}
    -
    +
    {%- if page.language == "fr" -%}

    [Lien vers l’élément en vedette]

    diff --git a/_includes/components/gc-follow-us/follow.html b/_includes/components/gc-follow-us/follow.html index 7f5bd635a2..d0f00b639f 100644 --- a/_includes/components/gc-follow-us/follow.html +++ b/_includes/components/gc-follow-us/follow.html @@ -12,9 +12,9 @@ {%- if page.language == "fr" -%}

    Suivez :

      -
    • +
    • -
    • YouTube
    • +
    • YouTube
    • Flickr
    • Pinterest
    • LinkedIn
    • @@ -26,9 +26,9 @@

      Suivez :

      {%- else -%}

      Follow:

        -
      • +
      • -
      • YouTube
      • +
      • YouTube
      • Flickr
      • Pinterest
      • LinkedIn
      • diff --git a/common/ajax-fetch/ajax-fetch-en.html b/common/ajax-fetch/ajax-fetch-en.html new file mode 100644 index 0000000000..34fa02b9f4 --- /dev/null +++ b/common/ajax-fetch/ajax-fetch-en.html @@ -0,0 +1,70 @@ +--- +{ + "title": "Ajax Fetch", + "language": "en", + "altLangPage": "ajax-fetch-fr.html", + "breadcrumbs": [ + { "title": "GCWeb home", "link": "https://wet-boew.github.io/GCWeb/index-en.html" } + ], + "dateModified": "2023-08-25" +} +--- +
        +

        Successful Ajax Fetch

        +
        +
        +

        Text to be replaced

        +

        This text will be replaced.

        +
        +
        + +

        Failed Ajax Fetch

        +
        +
        +

        Text to be replaced

        +

        This text will not be replaced.

        +
        +
        + +

        Code

        +
        +
        +

        Source code

        +
        <h2>Successful Ajax Fetch</h2>
        +			<div data-ajax-replace="ajax/data-ajax-extra-en.html">
        +				<section>
        +					<h3>Text to be replaced</h3>
        +					<p>This text will be replaced.</p>
        +				</section>
        +			</div>
        +
        +			<h2>Failed Ajax Fetch</h2>
        +			<div data-ajax-replace="failedUrl">
        +				<section>
        +					<h3>Text to be replaced</h3>
        +					<p>This text will <strong>not</strong> be replaced.</p>
        +				</section>
        +			</div>
        +		
        +
        + +
        +

        DOM Tree

        +
        <h2>Successful Ajax Fetch</h2>
        +			<div data-ajax-replace="ajax/data-ajax-extra-en.html">
        +				<section class="ajaxed-in">
        +					<h3>I was ajaxed in</h3>
        +					<p>I was ajaxed in. I was ajaxed in. I was ajaxed in. I was ajaxed in. I was ajaxed in. I was ajaxed in. I was ajaxed in.</p>
        +				</section>
        +			</div>
        +
        +			<h2>Failed Ajax Fetch</h2>
        +			<div data-ajax-replace="failedUrl">
        +				<section>
        +					<h3>Text to be replaced</h3>
        +					<p>This text will <strong>not</strong> be replaced.</p>
        +				</section>
        +			</div>
        +		
        +
        +
        diff --git a/common/ajax-fetch/ajax-fetch-fr.html b/common/ajax-fetch/ajax-fetch-fr.html new file mode 100644 index 0000000000..3de7215652 --- /dev/null +++ b/common/ajax-fetch/ajax-fetch-fr.html @@ -0,0 +1,70 @@ +--- +{ + "title": "Récupération de ressource via Ajax", + "language": "fr", + "altLangPage": "ajax-fetch-en.html", + "breadcrumbs": [ + { "title": "GCWeb home", "link": "https://wet-boew.github.io/GCWeb/index-fr.html" } + ], + "dateModified": "2023-08-25" +} +--- +
        +

        Succès de récupération d'une ressource ajax

        +
        +
        +

        Texte à être remplacé

        +

        Ce texte sera remplacé.

        +
        +
        + +

        Échec de récupération d'une ressource ajax

        +
        +
        +

        Texte à être remplacé

        +

        Ce texte ne sera pas remplacé.

        +
        +
        + +

        Code

        +
        +
        +

        Code source

        +
        <h2>Succès de récupération d'une ressource ajax</h2>
        +			<div data-ajax-replace="ajax/data-ajax-extra-fr.html">
        +				<section>
        +					<h3>Texte à être remplacé</h3>
        +					<p>Ce texte sera remplacé.</p>
        +				</section>
        +			</div>
        +
        +			<h2>Failed Ajax Fetch</h2>
        +			<div data-ajax-replace="urlEnEchec">
        +				<section>
        +					<h3>Texte à être remplacé</h3>
        +					<p>Ce texte ne sera <strong>pas</strong> remplacé.</p>
        +				</section>
        +			</div>
        +		
        +
        + +
        +

        Arbre de contenu

        +
        <h2>Succès de récupération d'une ressource ajax</h2>
        +			<div data-ajax-replace="ajax/data-ajax-extra-fr.html">
        +				<section class="ajaxed-in">
        +					<h3>J'ai été affiché via Ajax</h3>
        +					<p>J'ai été affiché via Ajax. J'ai été affiché via Ajax. J'ai été affiché via Ajax. J'ai été affiché via Ajax. J'ai été affiché via Ajax.</p>
        +				</section>
        +			</div>
        +
        +			<h2>Échec de récupération d'une ressource ajax</h2>
        +			<div data-ajax-replace="urlEnEchec">
        +				<section>
        +					<h3>Texte à être remplacé</h3>
        +					<p>Ce texte ne sera <strong>pas</strong> remplacé.</p>
        +				</section>
        +			</div>
        +		
        +
        +
        diff --git a/common/ajax-fetch/ajax/data-ajax-extra-en.html b/common/ajax-fetch/ajax/data-ajax-extra-en.html new file mode 100644 index 0000000000..0ed3c498f3 --- /dev/null +++ b/common/ajax-fetch/ajax/data-ajax-extra-en.html @@ -0,0 +1,4 @@ +
        +

        I was ajaxed in

        +

        I was ajaxed in. I was ajaxed in. I was ajaxed in. I was ajaxed in. I was ajaxed in. I was ajaxed in. I was ajaxed in.

        +
        diff --git a/common/ajax-fetch/ajax/data-ajax-extra-fr.html b/common/ajax-fetch/ajax/data-ajax-extra-fr.html new file mode 100644 index 0000000000..b18610c713 --- /dev/null +++ b/common/ajax-fetch/ajax/data-ajax-extra-fr.html @@ -0,0 +1,4 @@ +
        +

        J'ai été affiché via Ajax

        +

        J'ai été affiché via Ajax. J'ai été affiché via Ajax. J'ai été affiché via Ajax. J'ai été affiché via Ajax. J'ai été affiché via Ajax.

        +
        diff --git a/common/ajax-fetch/index.json-ld b/common/ajax-fetch/index.json-ld new file mode 100644 index 0000000000..15d09a8e3b --- /dev/null +++ b/common/ajax-fetch/index.json-ld @@ -0,0 +1,35 @@ +{ + "@context": { + "@version": 1.1, + "dct": "http://purl.org/dc/terms/", + "title": { "@id": "dct:title", "@container": "@language" }, + "description": { "@id": "dct:description", "@container": "@language" }, + "modified": "dct:modified" + }, + "title": { + "en": "Ajax Fetch", + "fr": "Récupération de ressource via Ajax" + }, + "description": { + "en": "Fetch data using Ajax", + "fr": "Récupération de données via Ajax" + }, + "modified": "2023-08-25", + "componentName": "ajax-fetch", + "processing": "baseline", + "status": "stable", + "pages": { + "examples": [ + { + "title": "Ajax Fetch", + "language": "en", + "path": "ajax-fetch-en.html" + }, + { + "title": "Récupération de ressource via Ajax", + "language": "fr", + "path": "ajax-fetch-fr.html" + } + ] + } +} diff --git a/common/gc_top_menu/index.json-ld b/common/gc_top_menu/index.json-ld new file mode 100644 index 0000000000..54a74d455b --- /dev/null +++ b/common/gc_top_menu/index.json-ld @@ -0,0 +1,35 @@ +{ + "@context": { + "@version": 2.0, + "dct": "http://purl.org/dc/terms/", + "title": { "@id": "dct:title", "@container": "@language" }, + "description": { "@id": "dct:description", "@container": "@language" }, + "modified": "dct:modified" + }, + "title": { + "en": "GC Top Menu", + "fr": "Menu principal du GC" + }, + "description": { + "en": "The GC Top Menu is the primary navigation bar at the top of Canada.ca websites, providing quick access to essential services, information, and other government departments.", + "fr": "Le Menu principal du GC est la barre de navigation principale en haut des sites web de Canada.ca, offrant un accès rapide aux services essentiels, aux informations et aux autres départements gouvernementaux." + }, + "modified": "2023-09-08", + "componentName": "GC Top Menu", + "status": "stable", + "pages": { + "docs": [], + "reports": [ + { + "title": "Pre accessibility assessment #1 - GC Top Menu", + "language": "en", + "path": "reports/pre-ally-1-en.html" + }, + { + "title": "Pre assessment d'accessibilité #1 - Menu principal du GC", + "language": "fr", + "path": "reports/pre-ally-1-fr.html" + } + ] + } +} \ No newline at end of file diff --git a/common/gc_top_menu/reports/pre-a11y-1-en.json b/common/gc_top_menu/reports/pre-a11y-1-en.json new file mode 100644 index 0000000000..bcc7e66c73 --- /dev/null +++ b/common/gc_top_menu/reports/pre-a11y-1-en.json @@ -0,0 +1,14 @@ + +{ + "title": "Pre accessibility assessment #1 - GC Top Menu", + "language": "en", + "description": "Evaluation of how the GC Top Menu meets accessibility requirements", + "tag": "GC Top Menu", + "parentdir": "GC Top Menu", + "parentPage": "GC Top Menu", + "parentPageURL": "GC Top Menu", + "altLangPage": "pre-a11y-1-fr.html", + "dateModified": "2023-09-08", + "layout": "assessment_wrote_en-en", + "reportURL": "pre-a11y-1.json" +} diff --git a/common/gc_top_menu/reports/pre-a11y-1-fr.json b/common/gc_top_menu/reports/pre-a11y-1-fr.json new file mode 100644 index 0000000000..efbe46b937 --- /dev/null +++ b/common/gc_top_menu/reports/pre-a11y-1-fr.json @@ -0,0 +1,14 @@ + +{ + "title": "Pré-évaluation de l'accessibilité n°1 - Menu principal du GC", + "language": "fr", + "description": "Évaluation de la manière dont le Menu principal du GC répond aux exigences en matière d'accessibilité", + "tag": "Menu principal du GC", + "parentdir": "Menu principal du GC", + "parentPage": "Menu principal du GC", + "parentPageURL": "Menu principal du GC", + "altLangPage": "pre-a11y-1-en.html", + "dateModified": "2023-09-08", + "layout": "assessment_wrote_en-fr", + "reportURL": "pre-a11y-1.json" +} diff --git a/common/gc_top_menu/reports/pre-a11y-1.json b/common/gc_top_menu/reports/pre-a11y-1.json new file mode 100644 index 0000000000..76e604e320 --- /dev/null +++ b/common/gc_top_menu/reports/pre-a11y-1.json @@ -0,0 +1,462 @@ +{ + "@context": "https://wet-boew.github.io/vocab/context/2023/conformance-report-en.json", + + "@type": [ "earl:Assertion", "acr:AssessmentReport" ], + + "earl:subject": { + "@id": "_:subject", + "dct:references": "https://wet-boew.github.io/GCWeb/sites/gcweb-menu/gcweb-menu-docs-en.html", + "dct:hasPart": [ + { + "@id": "_:non-text-content_itm1", + "dct:isPartOf": "_:subject", + "@type": [ "earl:TestSubject", "schema:WebPageElement" ], + "dct:description": "Pre-assessment of GCWeb menu component", + "earl:pointer": { + "@type": "oa:CssSelector", + "@value": "img" + } + }, + { + "@id": "_:video_abc", + "dct:isPartOf": "_:subject", + "@type": [ "earl:TestSubject", "schema:WebPageElement" ], + "dct:description": "Textual identification of the web page element that is being evaluated, like: 'Video ABC (earl:pointer)" + } + ], + "@type": [ + "earl:TestSubject", + "schema:WebPage" + ], + "dct:description": "Describe what is being assessed, like the full page or a component inside that page. Provide a pointer when applicable (earl:pointer)", + "earl:pointer": { + "@type": "oa:CssSelector", + "@value": "title, meta, #wb-bc, main" + } + }, + + "earl:assertedBy": { + "foaf:name": "Service Canada - Principal Publisher", + "foaf:homepage": "https://github.com/ServiceCanada", + "@type": ["earl:Assertor", "foaf:Organization"], + "earl:mainAssertor": { + "foaf:name": "Sebastian Burke (Github: @SebastianBurke)", + "foaf:homepage": "https://github.com/sebastianburke", + "@type": ["earl:Assertor", "foaf:Person"] + } + }, + + "dct:date": null, + "dct:description": "Analyzing and exploring the subject and produce a pre-evaluation of all WCAG 2.1 SC at level AA.", + "acr:involvesExpertise": [ + "wbv:acr/topics#aria", + "Javascript" + ], + + "dct:source": "act:rulesets/wcag2x/wcag21_all_levelAA.json", + "acr:standard": "https://www.w3.org/TR/WCAG21", + "acr:conformanceOption": "act:standard/profiles/wcag#levelAA", + + "earl:result": [ + { + "earl:test": "WCAG21:non-text-content", + "earl:outcome": "earl:innaplicable", + "earl:subject": "_:subject", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-only-and-video-only-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:captions-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-description-or-media-alternative-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:captions-live", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-description-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:info-and-relationships", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:meaningful-sequence", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:sensory-characteristics", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:orientation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:identify-input-purpose", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:use-of-color", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-control", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:contrast-minimum", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:resize-text", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:image-of-text", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:reflow", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:non-text-contrast", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:text-spacing", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:content-on-hover-or-focus", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:keyboard", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:no-keyboard-trap", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:character-key-shortcuts", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:timing-adjustable", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pause-stop-hide", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:three-flashes-or-below-threshold", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:bypass-blocks", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:page-titled", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:focus-order", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:link-purpose-in-context", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:multiple-ways", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:headings-and-labels", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:focus-visible", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pointer-gestures", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pointer-cancellation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:label-in-name", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:motion-actuation", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:language-of-page", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:language-of-parts", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:on-focus", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:on-input", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:consistent-navigation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:consistent-identification", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-identification", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:labels-or-instructions", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-suggestion", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-prevention-legal-financial-data)", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:parsing", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:name-role-value", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:status-messages", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + } + ] +} \ No newline at end of file diff --git a/common/gc_topic/index.json-ld b/common/gc_topic/index.json-ld new file mode 100644 index 0000000000..e98b1e920a --- /dev/null +++ b/common/gc_topic/index.json-ld @@ -0,0 +1,35 @@ +{ + "@context": { + "@version": 2.0, + "dct": "http://purl.org/dc/terms/", + "title": { "@id": "dct:title", "@container": "@language" }, + "description": { "@id": "dct:description", "@container": "@language" }, + "modified": "dct:modified" + }, + "title": { + "en": "GC Topic Title", + "fr": "Titre du sujet GC" + }, + "description": { + "en": "A placeholder for the title of the theme and topic being covered.", + "fr": "Un espace réservé pour le titre du thème et du sujet abordés." + }, + "modified": "2023-09-08", + "componentName": "GC Topic Title", + "status": "stable", + "pages": { + "docs": [], + "reports": [ + { + "title": "Pre accessibility assessment #1 - "GC Topic Title", + "language": "en", + "path": "reports/pre-ally-1-en.html" + }, + { + "title": "Pre assessment d'accessibilité #1 - Titre du Sujet GC", + "language": "fr", + "path": "reports/pre-ally-1-fr.html" + } + ] + } +} \ No newline at end of file diff --git a/common/gc_topic/reports/pre-a11y-1-en.json b/common/gc_topic/reports/pre-a11y-1-en.json new file mode 100644 index 0000000000..0da7c7d95e --- /dev/null +++ b/common/gc_topic/reports/pre-a11y-1-en.json @@ -0,0 +1,14 @@ + +{ + "title": "Pre accessibility assessment #1 - GC Topic Title", + "language": "en", + "description": "Evaluation of how GC Topic Titles perform in terms of accessibility", + "tag": "GC Topic Title", + "parentdir": "GC Topic Title", + "parentPage": "GC Topic Title", + "parentPageURL": "GC Topic Title", + "altLangPage": "pre-a11y-1-fr.html", + "dateModified": "2023-09-08", + "layout": "assessment_wrote_en-en", + "reportURL": "pre-a11y-1.json" +} diff --git a/common/gc_topic/reports/pre-a11y-1-fr.json b/common/gc_topic/reports/pre-a11y-1-fr.json new file mode 100644 index 0000000000..9ed2bf6e19 --- /dev/null +++ b/common/gc_topic/reports/pre-a11y-1-fr.json @@ -0,0 +1,14 @@ + +{ + "title": "Pre assessment d'accessibilité #1 - Titre du Sujet GC", + "language": "fr", + "description": "Évaluation de la performance des titres de sujets en termes d'accessibilité.", + "tag": "Titre du Sujet GC", + "parentdir": "Titre du Sujet GC", + "parentPage": "Titre du Sujet GC", + "parentPageURL": "Titre du Sujet GC", + "altLangPage": "pre-a11y-1-en.html", + "dateModified": "2023-09-08", + "layout": "assessment_wrote_en-fr", + "reportURL": "pre-a11y-1.json" +} diff --git a/common/gc_topic/reports/pre-a11y-1.json b/common/gc_topic/reports/pre-a11y-1.json new file mode 100644 index 0000000000..37a9dcb0cf --- /dev/null +++ b/common/gc_topic/reports/pre-a11y-1.json @@ -0,0 +1,444 @@ +{ + "@context": "https://wet-boew.github.io/vocab/context/2023/conformance-report-en.json", + + "@type": [ "earl:Assertion", "acr:AssessmentReport" ], + + "earl:subject": { + "@id": "_:subject", + "dct:references": "https://wet-boew.github.io/GCWeb/templates/topic/topic-en.html", + "@type": [ + "earl:TestSubject", + "schema:WebPage" + ], + "dct:description": "Evaluation of effectiveness of Topic Title at appropiately describing the content of the page", + "earl:pointer": { + "@type": "oa:CssSelector", + "@value": "" + } + }, + + "earl:assertedBy": { + "foaf:name": "Service Canada - Principal Publisher", + "foaf:homepage": "https://github.com/ServiceCanada", + "@type": ["earl:Assertor", "foaf:Organization"], + "earl:mainAssertor": { + "foaf:name": "Sebastian Burke (Github: @SebastianBurke)", + "foaf:homepage": "https://github.com/sebastianburke", + "@type": ["earl:Assertor", "foaf:Person"] + } + }, + + "dct:date": "2023-09-01", + "dct:description": "Analyzing and exploring the subject and produce a pre-evaluation of all WCAG 2.1 SC at level AA.", + "acr:involvesExpertise": [ + "wbv:acr/topics#aria", + "Javascript" + ], + + "dct:source": "act:rulesets/wcag2x/wcag21_all_levelAA.json", + "acr:standard": "https://www.w3.org/TR/WCAG21", + "acr:conformanceOption": "act:standard/profiles/wcag#levelAA", + + "earl:result": [ + { + "earl:test": "WCAG21:non-text-content", + "earl:outcome": "earl:innaplicable", + "earl:subject": "_:subject", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-only-and-video-only-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:captions-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-description-or-media-alternative-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:captions-live", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-description-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:info-and-relationships", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:meaningful-sequence", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:sensory-characteristics", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:orientation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:identify-input-purpose", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:use-of-color", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-control", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:contrast-minimum", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:resize-text", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:image-of-text", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:reflow", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:non-text-contrast", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:text-spacing", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:content-on-hover-or-focus", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:keyboard", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:no-keyboard-trap", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:character-key-shortcuts", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:timing-adjustable", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pause-stop-hide", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:three-flashes-or-below-threshold", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:bypass-blocks", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:page-titled", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:focus-order", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:link-purpose-in-context", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:multiple-ways", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:headings-and-labels", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:focus-visible", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pointer-gestures", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pointer-cancellation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:label-in-name", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:motion-actuation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:language-of-page", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:language-of-parts", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:on-focus", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:on-input", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:consistent-navigation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:consistent-identification", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-identification", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:labels-or-instructions", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-suggestion", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-prevention-legal-financial-data)", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:parsing", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:name-role-value", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:status-messages", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + } + ] +} \ No newline at end of file diff --git a/common/header_language_selector/index.json-ld b/common/header_language_selector/index.json-ld new file mode 100644 index 0000000000..c3c3ae4ce7 --- /dev/null +++ b/common/header_language_selector/index.json-ld @@ -0,0 +1,35 @@ +{ + "@context": { + "@version": 2.0, + "dct": "http://purl.org/dc/terms/", + "title": { "@id": "dct:title", "@container": "@language" }, + "description": { "@id": "dct:description", "@container": "@language" }, + "modified": "dct:modified" + }, + "title": { + "en": "Language Toggle Link", + "fr": "Lien de basculement de langue" + }, + "description": { + "en": "The language toggle link located on the top right corner of the global header area (regardless of screen size) leads people to the equivalent page in the other official language.", + "fr": "Le lien de basculement de langue situé dans le coin supérieur droit de la zone d'en-tête globale (quelle que soit la taille de l'écran) dirige les personnes vers la page équivalente dans l'autre langue officielle." + }, + "modified": "2023-09-08", + "componentName": "Language Toggle Link", + "status": "stable", + "pages": { + "docs": [], + "reports": [ + { + "title": "Pre accessibility assessment #1 - "Language Toggle Link", + "language": "en", + "path": "reports/pre-ally-1-en.html" + }, + { + "title": "Pre assessment d'accessibilité #1 - "Lien de basculement de langue", + "language": "fr", + "path": "reports/pre-ally-1-fr.html" + } + ] + } +} \ No newline at end of file diff --git a/common/header_language_selector/reports/pre-a11y-1-en.json b/common/header_language_selector/reports/pre-a11y-1-en.json new file mode 100644 index 0000000000..4ffce7e54a --- /dev/null +++ b/common/header_language_selector/reports/pre-a11y-1-en.json @@ -0,0 +1,14 @@ + +{ + "title": "Pre accessibility assessment #1 - Language Toggle Link", + "language": "en", + "description": "Evaluation of how the Language Toggle Link meets accessibility requirements", + "tag": "Language Toggle Link", + "parentdir": "Language Toggle Link", + "parentPage": "Language Toggle Link", + "parentPageURL": "Language Toggle Link", + "altLangPage": "pre-a11y-1-fr.html", + "dateModified": "2023-09-08", + "layout": "assessment_wrote_en-en", + "reportURL": "pre-a11y-1.json" +} diff --git a/common/header_language_selector/reports/pre-a11y-1-fr.json b/common/header_language_selector/reports/pre-a11y-1-fr.json new file mode 100644 index 0000000000..4088419219 --- /dev/null +++ b/common/header_language_selector/reports/pre-a11y-1-fr.json @@ -0,0 +1,14 @@ + +{ + "title": "Pre assessment d'accessibilité #1 - Lien de basculement de langue", + "language": "fr", + "description": "Évaluation de la manière dont le lien de basculement de langue répond aux exigences en matière d'accessibilité", + "tag": "Lien de basculement de langue", + "parentdir": "Lien de basculement de langue", + "parentPage": "Lien de basculement de langue", + "parentPageURL": "Lien de basculement de langue", + "altLangPage": "pre-a11y-1-en.html", + "dateModified": "2023-09-08", + "layout": "assessment_wrote_en-fr", + "reportURL": "pre-a11y-1.json" +} diff --git a/common/header_language_selector/reports/pre-a11y-1.json b/common/header_language_selector/reports/pre-a11y-1.json new file mode 100644 index 0000000000..6dc63f94f3 --- /dev/null +++ b/common/header_language_selector/reports/pre-a11y-1.json @@ -0,0 +1,444 @@ +{ + "@context": "https://wet-boew.github.io/vocab/context/2023/conformance-report-en.json", + + "@type": [ "earl:Assertion", "acr:AssessmentReport" ], + + "earl:subject": { + "@id": "_:subject", + "dct:references": "https://wet-boew.github.io/GCWeb/sites/language/language-en.html", + "@type": [ + "earl:TestSubject", + "schema:WebPage" + ], + "dct:description": "Evaluation of how the Language Toggle Link meets accessibility requirements", + "earl:pointer": { + "@type": "oa:CssSelector", + "@value": "" + } + }, + + "earl:assertedBy": { + "foaf:name": "Service Canada - Principal Publisher", + "foaf:homepage": "https://github.com/ServiceCanada", + "@type": ["earl:Assertor", "foaf:Organization"], + "earl:mainAssertor": { + "foaf:name": "Sebastian Burke (Github: @SebastianBurke)", + "foaf:homepage": "https://github.com/sebastianburke", + "@type": ["earl:Assertor", "foaf:Person"] + } + }, + + "dct:date": "2023-09-01", + "dct:description": "Analyzing and exploring the subject and produce a pre-evaluation of all WCAG 2.1 SC at level AA.", + "acr:involvesExpertise": [ + "wbv:acr/topics#aria", + "Javascript" + ], + + "dct:source": "act:rulesets/wcag2x/wcag21_all_levelAA.json", + "acr:standard": "https://www.w3.org/TR/WCAG21", + "acr:conformanceOption": "act:standard/profiles/wcag#levelAA", + + "earl:result": [ + { + "earl:test": "WCAG21:non-text-content", + "earl:outcome": "earl:innaplicable", + "earl:subject": "_:subject", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-only-and-video-only-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:captions-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-description-or-media-alternative-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:captions-live", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-description-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:info-and-relationships", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:meaningful-sequence", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:sensory-characteristics", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:orientation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:identify-input-purpose", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:use-of-color", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-control", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:contrast-minimum", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:resize-text", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:image-of-text", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:reflow", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:non-text-contrast", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:text-spacing", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:content-on-hover-or-focus", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:keyboard", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:no-keyboard-trap", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:character-key-shortcuts", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:timing-adjustable", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pause-stop-hide", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:three-flashes-or-below-threshold", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:bypass-blocks", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:page-titled", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:focus-order", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:link-purpose-in-context", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:multiple-ways", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:headings-and-labels", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:focus-visible", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pointer-gestures", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pointer-cancellation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:label-in-name", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:motion-actuation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:language-of-page", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:language-of-parts", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:on-focus", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:on-input", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:consistent-navigation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:consistent-identification", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-identification", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:labels-or-instructions", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-suggestion", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-prevention-legal-financial-data)", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:parsing", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:name-role-value", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:status-messages", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + } + ] +} \ No newline at end of file diff --git a/common/list/lists-en.html b/common/list/lists-en.html index 3293a35c6f..e7e546cf68 100644 --- a/common/list/lists-en.html +++ b/common/list/lists-en.html @@ -317,7 +317,7 @@

        Appearance − Multi-class

        </ul>

        Responsive list .list-responsive

        -
          +
          • Item
          • Item
          • Item
          • diff --git a/common/list/lists-fr.html b/common/list/lists-fr.html index 0d05116762..3bdb23686a 100644 --- a/common/list/lists-fr.html +++ b/common/list/lists-fr.html @@ -319,7 +319,7 @@

            Appearance − Multi-class

            </ul>

            Responsive list .list-responsive

            -
              +
              • Item
              • Item
              • Item
              • diff --git a/common/tabs_interference_carousel/index.json-ld b/common/tabs_interference_carousel/index.json-ld new file mode 100644 index 0000000000..8cc810f666 --- /dev/null +++ b/common/tabs_interference_carousel/index.json-ld @@ -0,0 +1,35 @@ +{ + "@context": { + "@version": 2.0, + "dct": "http://purl.org/dc/terms/", + "title": { "@id": "dct:title", "@container": "@language" }, + "description": { "@id": "dct:description", "@container": "@language" }, + "modified": "dct:modified" + }, + "title": { + "en": "Tabs Interface - Carousel", + "fr": "Interface à onglets - Carrousel" + }, + "description": { + "en": "Responsive carousels are in-page components used to display multiple different items within the same content space.", + "fr": "Les carrousels responsifs sont des composants intégrés à la page utilisés pour afficher plusieurs éléments différents dans le même espace de contenu." + }, + "modified": "2023-09-08", + "componentName": "Tabs Interface - Carousel", + "status": "stable", + "pages": { + "docs": [], + "reports": [ + { + "title": "Pre accessibility assessment #1 - "Tabs Interface - Carousel", + "language": "en", + "path": "reports/pre-ally-1-en.html" + }, + { + "title": "Pre assessment d'accessibilité #1 - "Interface à onglets - Carrousel", + "language": "fr", + "path": "reports/pre-ally-1-fr.html" + } + ] + } +} \ No newline at end of file diff --git a/common/tabs_interference_carousel/reports/pre-a11y-1-en.json b/common/tabs_interference_carousel/reports/pre-a11y-1-en.json new file mode 100644 index 0000000000..eeea6ec46f --- /dev/null +++ b/common/tabs_interference_carousel/reports/pre-a11y-1-en.json @@ -0,0 +1,14 @@ + +{ + "title": "Pre accessibility assessment #1 - Tabs Interface - Carousel", + "language": "en", + "description": "Evaluation of how the Tabs Interface - Carousel meets accessibility requirements", + "tag": "Tabs Interface - Carousel", + "parentdir": "Tabs Interface - Carousel", + "parentPage": "Tabs Interface - Carousel", + "parentPageURL": "Tabs Interface - Carousel", + "altLangPage": "pre-a11y-1-fr.html", + "dateModified": "2023-09-08", + "layout": "assessment_wrote_en-en", + "reportURL": "pre-a11y-1.json" +} diff --git a/common/tabs_interference_carousel/reports/pre-a11y-1-fr.json b/common/tabs_interference_carousel/reports/pre-a11y-1-fr.json new file mode 100644 index 0000000000..10e24edc8d --- /dev/null +++ b/common/tabs_interference_carousel/reports/pre-a11y-1-fr.json @@ -0,0 +1,14 @@ + +{ + "title": "Pre assessment d'accessibilité #1 - Interface à onglets - Carrousel", + "language": "fr", + "description": "Évaluation de la manière dont le Interface à onglets - Carrousel répond aux exigences en matière d'accessibilité", + "tag": "Interface à onglets - Carrousel", + "parentdir": "Interface à onglets - Carrousel", + "parentPage": "Interface à onglets - Carrousel", + "parentPageURL": "Interface à onglets - Carrousel", + "altLangPage": "pre-a11y-1-en.html", + "dateModified": "2023-09-08", + "layout": "assessment_wrote_en-fr", + "reportURL": "pre-a11y-1.json" +} diff --git a/common/tabs_interference_carousel/reports/pre-a11y-1.json b/common/tabs_interference_carousel/reports/pre-a11y-1.json new file mode 100644 index 0000000000..01d2f92e3f --- /dev/null +++ b/common/tabs_interference_carousel/reports/pre-a11y-1.json @@ -0,0 +1,444 @@ +{ + "@context": "https://wet-boew.github.io/vocab/context/2023/conformance-report-en.json", + + "@type": [ "earl:Assertion", "acr:AssessmentReport" ], + + "earl:subject": { + "@id": "_:subject", + "dct:references": "https://wet-boew.github.io/GCWeb/sites/language/language-en.html", + "@type": [ + "earl:TestSubject", + "schema:WebPage" + ], + "dct:description": "Evaluation of how the Tabs Interface - Carousel component meets accessibility requirements", + "earl:pointer": { + "@type": "oa:CssSelector", + "@value": "" + } + }, + + "earl:assertedBy": { + "foaf:name": "Service Canada - Principal Publisher", + "foaf:homepage": "https://github.com/ServiceCanada", + "@type": ["earl:Assertor", "foaf:Organization"], + "earl:mainAssertor": { + "foaf:name": "Sebastian Burke (Github: @SebastianBurke)", + "foaf:homepage": "https://github.com/sebastianburke", + "@type": ["earl:Assertor", "foaf:Person"] + } + }, + + "dct:date": "2023-09-01", + "dct:description": "Analyzing and exploring the subject and produce a pre-evaluation of all WCAG 2.1 SC at level AA.", + "acr:involvesExpertise": [ + "wbv:acr/topics#aria", + "Javascript" + ], + + "dct:source": "act:rulesets/wcag2x/wcag21_all_levelAA.json", + "acr:standard": "https://www.w3.org/TR/WCAG21", + "acr:conformanceOption": "act:standard/profiles/wcag#levelAA", + + "earl:result": [ + { + "earl:test": "WCAG21:non-text-content", + "earl:outcome": "earl:untested", + "earl:subject": "_:subject", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-only-and-video-only-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:captions-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-description-or-media-alternative-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:captions-live", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-description-prerecorded", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:info-and-relationships", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:meaningful-sequence", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:sensory-characteristics", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:orientation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:identify-input-purpose", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:use-of-color", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:audio-control", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:contrast-minimum", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:resize-text", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:image-of-text", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:reflow", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:non-text-contrast", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:text-spacing", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:content-on-hover-or-focus", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:keyboard", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:no-keyboard-trap", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:character-key-shortcuts", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:timing-adjustable", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pause-stop-hide", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:three-flashes-or-below-threshold", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:bypass-blocks", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:page-titled", + "earl:subject": "_:subject", + "earl:outcome": "earl:innaplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:focus-order", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:link-purpose-in-context", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:multiple-ways", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:headings-and-labels", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:focus-visible", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pointer-gestures", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:pointer-cancellation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:label-in-name", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:motion-actuation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:language-of-page", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:language-of-parts", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:on-focus", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:on-input", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:consistent-navigation", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:consistent-identification", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-identification", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:labels-or-instructions", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-suggestion", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:error-prevention-legal-financial-data)", + "earl:subject": "_:subject", + "earl:outcome": "earl:inapplicable", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:parsing", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:name-role-value", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + }, + { + "earl:test": "WCAG21:status-messages", + "earl:subject": "_:subject", + "earl:outcome": "earl:untested", + "dct:description": "", + "earl:mode": "earl:unknownMode", + "@type": ["earl:TestResult", "earl:Assertion"] + } + ] +} \ No newline at end of file diff --git a/components/baseline/_base.scss b/components/baseline/_base.scss index e144eb7155..05a6009c91 100644 --- a/components/baseline/_base.scss +++ b/components/baseline/_base.scss @@ -2,13 +2,6 @@ * Components styles */ -// Step by step navigation used on Advanced service template -.gc-stp-stp { - border-bottom: solid 1px #ccc; - margin-bottom: 30px; - margin-top: 15px; -} - // theme default color .bg-gctheme { background-color: #355688; diff --git a/components/gc-features/samples/features.html b/components/gc-features/samples/features.html index da6e088094..fc64cd4ed9 100644 --- a/components/gc-features/samples/features.html +++ b/components/gc-features/samples/features.html @@ -15,7 +15,7 @@

                Features

                {% for i in (1..3) %}
                -
                +
                {%- if page.language == "fr" -%}

                [Lien vers l’élément en vedette]

                diff --git a/components/gc-follow-us/samples/follow.html b/components/gc-follow-us/samples/follow.html index 7f5bd635a2..d0f00b639f 100644 --- a/components/gc-follow-us/samples/follow.html +++ b/components/gc-follow-us/samples/follow.html @@ -12,9 +12,9 @@ {%- if page.language == "fr" -%}

                Suivez :

                  -
                • +
                • -
                • YouTube
                • +
                • YouTube
                • Flickr
                • Pinterest
                • LinkedIn
                • @@ -26,9 +26,9 @@

                  Suivez :

                  {%- else -%}

                  Follow:

                    -
                  • +
                  • -
                  • YouTube
                  • +
                  • YouTube
                  • Flickr
                  • Pinterest
                  • LinkedIn
                  • diff --git a/components/gc-stp-stp/_base.scss b/components/gc-stp-stp/_base.scss new file mode 100644 index 0000000000..4904cd13b8 --- /dev/null +++ b/components/gc-stp-stp/_base.scss @@ -0,0 +1,20 @@ +/* + * + * Web Experience Toolkit (WET) / Boîte à outils de l'expérience Web (BOEW) + * wet-boew.github.io/wet-boew/License-en.html / wet-boew.github.io/wet-boew/Licence-fr.html + * + * + * GC Step by step navigation +*/ + +.gc-stp-stp { + border-bottom: solid 1px #ccc; + margin-bottom: 30px; + margin-top: 15px; + + ul:not(.col-md-12), ol:not(.col-md-12) { + margin-left: 0; + margin-right: 0; + padding-left: 0; + } +} diff --git a/components/gc-stp-stp/_screen-sm-min.scss b/components/gc-stp-stp/_screen-sm-min.scss new file mode 100644 index 0000000000..820b048d14 --- /dev/null +++ b/components/gc-stp-stp/_screen-sm-min.scss @@ -0,0 +1,16 @@ +/* + * + * Web Experience Toolkit (WET) / Boîte à outils de l'expérience Web (BOEW) + * wet-boew.github.io/wet-boew/License-en.html / wet-boew.github.io/wet-boew/Licence-fr.html + * + * + * GC Step by step navigation +*/ + +.gc-stp-stp { + ul, ol { + &:not(.lst-spcd) li { + margin-bottom: 10px; + } + } +} diff --git a/components/gc-stp-stp/gc-stp-stp-doc-en.html b/components/gc-stp-stp/gc-stp-stp-doc-en.html new file mode 100644 index 0000000000..2c196bc0fa --- /dev/null +++ b/components/gc-stp-stp/gc-stp-stp-doc-en.html @@ -0,0 +1,128 @@ +--- +title: Step by Step navigation +language: en +description: Step by Step navigation +dateModified: 2023-06-28 +altLangPage: gc-stp-stp-doc-fr.html +--- + + + +
                    +
                    Status
                    +
                    Stable
                    +
                    Type
                    +
                    Canada.ca design pattern
                    +
                    Last review
                    +
                    2023-09-05
                    +
                    Guidance
                    +
                    Step by step navigation (service initiation pages): Canada.ca design system
                    +
                    Technical name
                    +
                    +
                      +
                    • gc-stp-stp
                    • +
                    +
                    +
                    + +

                    Purpose

                    +

                    Shows links to each step in initiating the service and highlights the currently selected step.

                    + +

                    Working example

                    + + +

                    How to implement

                    +
                      +
                    1. Create a <div> with the CSS class gc-stp-stp.
                    2. +
                    3. Within this <div>, create either a <ul> or <ol> (the correct tag will depend on whether or not your pages have a logical order. To this <ul> or <ol> add the CSS classes row and toc.
                    4. +
                    5. Within this <ul> or <ol>, add your <li> and add the following CSS classes: col-md-4 and col-sm-6 to every <li>.
                    6. +
                    7. Within those <li>, create a <a> with the CSS class list-group-item.
                    8. +
                    9. To the current page's <a> add the CSS class active.
                    10. +
                    +

                    Note: this component should be inserted directly after the byline.

                    + +

                    Evaluation and report

                    +

                    There is no evaluation and report available for this component.

                    + +

                    API (Version 1.0)

                    + + + + + + + + + + + + + +
                    CSS ClassTemplateVisual renderingSchema
                    Version 1.0Version 2.0Version 1.0n.a.
                    + +

                    CSS Class (v1.0)

                    +
                    +
                    gc-stp-stp
                    +
                    Component: Step by Step navigation
                    +
                    +
                    + Version notes +
                    +
                    Version 1.0
                    +
                    +
                      +
                    • Created: .gc-stp-stp
                    • +
                    +
                    +
                    +
                    + +

                    Template (v2.0)

                    +{%- highlight html -%} + +{%- endhighlight -%} + +
                    + Version notes +
                    +
                    Version 2.0
                    +
                    +
                      +
                    • Removed <div class="row"> wrapping the list.
                    • +
                    • Applied the CSS class row directly to the list.
                    • +
                    • Removed the CSS classes lst-spcd and col-md-12 from the list.
                    • +
                    • Removed clr-lft-[breakpoint] CSS classes.
                    • +
                    +
                    +
                    Version 1.0
                    +
                    +
                      +
                    • Initial template
                    • +
                    +
                    +
                    +
                    + +

                    Visual rendering (v1.0)

                    +
                    + Version notes +
                    +
                    Version 1.0
                    +
                    +
                      +
                    • Original rendering
                    • +
                    +
                    +
                    +
                    diff --git a/components/gc-stp-stp/gc-stp-stp-doc-fr.html b/components/gc-stp-stp/gc-stp-stp-doc-fr.html new file mode 100644 index 0000000000..79854e87c7 --- /dev/null +++ b/components/gc-stp-stp/gc-stp-stp-doc-fr.html @@ -0,0 +1,126 @@ +--- +title: Navigation étape par étape +language: fr +description: Navigation étape par étape +dateModified: 2023-06-28 +altLangPage: gc-stp-stp-doc-en.html +--- + + + +
                    +
                    Statut
                    +
                    Stable
                    +
                    Type
                    +
                    Conception de Canada.ca
                    +
                    Dernière revue
                    +
                    2023-09-05
                    +
                    Orientation
                    +
                    Navigation étape par étape (pages de lancement d'un service) - Configuration de conception de Canada.ca
                    +
                    Nom technique
                    +
                    +
                      +
                    • gc-stp-stp
                    • +
                    +
                    +
                    + +

                    But

                    +

                    Affiche les liens pour chacune des étapes de lancement d'un service et met en surbrillance l'étape sélectionnée.

                    + +

                    Comment mettre en œuvre

                    +
                      +
                    1. Créez un <div> avec la classe CSS gc-stp-stp.
                    2. +
                    3. Dans ce <div>, créez soit un <ul> soit un <ol> (la bonne balise dépendra de si vos pages ont un ordre logique ou non. À ce <ul> ou <ol> ajoutez les classes CSS row et toc.
                    4. +
                    5. Dans ce <ul> ou <ol>, ajoutez vos <li> et ajoutez à chacun d'eux les classes CSS suivantes : col-md-4 et col-sm-6.
                    6. +
                    7. Dans ces <li>, créez un <a> avec la classe CSS list-group-item.
                    8. +
                    9. Au <a> de la page courante, ajoutez la classe CSS active.
                    10. +
                    +

                    Remarque : ce composant doit être inséré directement après la signature.

                    + +

                    Exemples pratiques

                    + + +

                    Évaluation et rapport

                    +

                    Il n'y a pas d'évaluation et de rapport disponible pour ce composant.

                    + +

                    API (Version 1.0)

                    + + + + + + + + + + + + + +
                    Classe CSSGabaritRendu visuelSchema
                    Version 1.0Version 2.0Version 1.0s.o.
                    +

                    Classe CSS (v1.0)

                    +
                    +
                    gc-stp-stp
                    +
                    Composant : Navigation étape par étape
                    +
                    +
                    + Notes sur les versions +
                    +
                    Version 1.0 (v8.0)
                    +
                    +
                      +
                    • Crée : .gc-stp-stp
                    • +
                    +
                    +
                    +
                    +

                    Gabarit (v2.0)

                    +{%- highlight html -%} + +{%- endhighlight -%} + +
                    + Notes sur les versions +
                    +
                    Version 2.0
                    +
                    +
                      +
                    • Suppression du <div class="row"> enveloppant la liste.
                    • +
                    • Ajout de la classe CSS row directement à la liste.
                    • +
                    • Suppression des classes CSS lst-spcd et col-md-12 de la liste.
                    • +
                    • Suppressions des classes CSS clr-lft-[breakpoint].
                    • +
                    +
                    +
                    Version 1.0
                    +
                    +
                      +
                    • Gabarit initial
                    • +
                    +
                    +
                    +
                    + +

                    Rendu visuel (v1.0)

                    +
                    + Notes sur les versions +
                    +
                    Version 1.0
                    +
                    +
                      +
                    • Rendu visuel initial
                    • +
                    +
                    +
                    +
                    diff --git a/components/gc-stp-stp/gc-stp-stp-en.html b/components/gc-stp-stp/gc-stp-stp-en.html new file mode 100644 index 0000000000..05bebf5067 --- /dev/null +++ b/components/gc-stp-stp/gc-stp-stp-en.html @@ -0,0 +1,61 @@ +--- +{ + "title": "[Service name] - 2. [Step / section page name]", + "secondTitle": "2. [Step / section page name]", + "language": "en", + "altLangPage": "gc-stp-stp-fr.html", + "breadcrumbs": [ + { "title": "[Institution name]", "link": "#" }, + { "title": "[Topic name]", "link": "#" }, + { "title": "[Service name]", "link": "#" } + ], + "secondlevel": false, + "dateModified": "2023-09-05", + "share": "true", + "steps": [ + { "name": "1. [Step / section page name]", "link": "index-en.html" }, + { "name": "2. [Step / section page name]", "isActive": true }, + { "name": "3. [Step / section page name]", "link": "page3-en.html" }, + { "name": "4. [Step / section page name]", "link": "page4-en.html" }, + { "name": "5. [Step / section page name]", "link": "page5-en.html" }, + { "name": "6. [Step / section page name]", "link": "page6-en.html" } + ] +} +--- + + +{%- include gc-stp-stp/gc-stp-stp.html -%} + +
                    +
                    +

                    2. [Step / section page name]

                    +

                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Et a adipisci nostrum optio dolorum sint ipsa facilis nisi quisquam laboriosam.

                    +

                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Praesentium odio adipisci ad neque distinctio quod molestias, molestiae accusamus quo aspernatur expedita blanditiis quam! Esse cum modi atque, beatae aliquam, dolor.

                    +

                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptatem aliquid hic numquam obcaecati ea, laborum accusamus culpa atque voluptate distinctio et omnis! Alias, beatae, tenetur.

                    +
                    +

                    [Sub heading]

                    +

                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Corrupti cupiditate voluptatem praesentium, facilis corporis magni esse reiciendis distinctio. Vitae totam iste porro, esse facere obcaecati? Laborum earum minus harum enim.

                    +
                    +
                    +

                    [Sub heading]

                    +

                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ipsa hic minima magni nesciunt nam. Facilis perferendis, adipisci voluptates, enim illo perspiciatis molestias itaque iste qui distinctio asperiores quidem voluptatum sunt.

                    +
                    + +
                    + +
                    diff --git a/components/gc-stp-stp/gc-stp-stp-fr.html b/components/gc-stp-stp/gc-stp-stp-fr.html new file mode 100644 index 0000000000..2d179891c7 --- /dev/null +++ b/components/gc-stp-stp/gc-stp-stp-fr.html @@ -0,0 +1,61 @@ +--- +{ + "title": "[Nom du service] - 2. [Nom de la page de la section ou de l’étape]", + "secondTitle": "2. [Nom de la page de la section ou de l’étape]", + "language": "fr", + "altLangPage": "gc-stp-stp-en.html", + "breadcrumbs": [ + { "title": "[Nom de l'institution]", "link": "#" }, + { "title": "[Nom du sujet]", "link": "#" }, + { "title": "[Nom du service]", "link": "#" } + ], + "secondlevel": false, + "dateModified": "2023-09-05", + "share": "true", + "steps": [ + { "name": "1. [Nom de la page de la section ou de l’étape]", "link": "index-fr.html" }, + { "name": "2. [Nom de la page de la section ou de l’étape]", "isActive": true }, + { "name": "3. [Nom de la page de la section ou de l’étape]", "link": "page3-fr.html" }, + { "name": "4. [Nom de la page de la section ou de l’étape]", "link": "page4-fr.html" }, + { "name": "5. [Nom de la page de la section ou de l’étape]", "link": "page5-fr.html" }, + { "name": "6. [Nom de la page de la section ou de l’étape]", "link": "page6-fr.html" } + ] +} +--- + + +{%- include gc-stp-stp/gc-stp-stp.html -%} + +
                    +
                    +

                    2. [Nom de la page de la section ou de l’étape]

                    +

                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Et a adipisci nostrum optio dolorum sint ipsa facilis nisi quisquam laboriosam.

                    +

                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Praesentium odio adipisci ad neque distinctio quod molestias, molestiae accusamus quo aspernatur expedita blanditiis quam! Esse cum modi atque, beatae aliquam, dolor.

                    +

                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptatem aliquid hic numquam obcaecati ea, laborum accusamus culpa atque voluptate distinctio et omnis! Alias, beatae, tenetur.

                    +
                    +

                    [Sous-titre]

                    +

                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Corrupti cupiditate voluptatem praesentium, facilis corporis magni esse reiciendis distinctio. Vitae totam iste porro, esse facere obcaecati? Laborum earum minus harum enim.

                    +
                    +
                    +

                    [Sous-titre]

                    +

                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ipsa hic minima magni nesciunt nam. Facilis perferendis, adipisci voluptates, enim illo perspiciatis molestias itaque iste qui distinctio asperiores quidem voluptatum sunt.

                    +
                    + +
                    + +
                    diff --git a/components/gc-stp-stp/includes/gc-stp-stp.html b/components/gc-stp-stp/includes/gc-stp-stp.html new file mode 100644 index 0000000000..d69ce47324 --- /dev/null +++ b/components/gc-stp-stp/includes/gc-stp-stp.html @@ -0,0 +1,15 @@ +{%- if page.steps -%} +
                    +
                      + {%- for step in page.steps -%} +
                    • + {%- if step.isActive == true or step.isActive == "true" -%} + {{ step.name }} + {%- else -%} + {{ step.name }} + {%- endif -%} +
                    • + {%- endfor -%} +
                    +
                    +{%- endif -%} diff --git a/components/gc-stp-stp/index.json-ld b/components/gc-stp-stp/index.json-ld new file mode 100644 index 0000000000..1821111432 --- /dev/null +++ b/components/gc-stp-stp/index.json-ld @@ -0,0 +1,58 @@ +{ + "@context": { + "@version": 1.1, + "dct": "http://purl.org/dc/terms/", + "title": { "@id": "dct:title", "@container": "@language" }, + "description": { "@id": "dct:description", "@container": "@language" }, + "modified": "dct:modified" + }, + "title": { + "en": "Step by Step navigation", + "fr": "Navigation étape par étape" + }, + "description": { + "en": "Step by Step navigation designed based on user experience testing", + "fr": "Navigation étape par étape conçu d'après des recherches d'expérience utilisateur" + }, + "modified": "2023-06-28", + "componentName": "gc-stp-stp", + "status": "stable", + "pages": { + "docs": [ + { + "title": "Step by Step navigation", + "language": "en", + "path": "gc-stp-stp-doc-en.html" + }, + { + "title": "Navigation étape par étape", + "language": "fr", + "path": "gc-stp-stp-doc-fr.html" + } + ], + "examples": [ + { + "title": "Step by Step navigation", + "language": "en", + "path": "gc-stp-stp-en.html" + }, + { + "title": "Navigation étape par étape", + "language": "fr", + "path": "gc-stp-stp-fr.html" + } + ], + "spec": [ + { + "title": "Navigation étape par étape : Système de conception de Canada.ca", + "language": "fr", + "url": "https://conception.canada.ca/modeles-recommandes/pages-lancement-service.html" + }, + { + "title": "Step by Step navigation: Canada.ca design system", + "language": "en", + "url": "https://design.canada.ca/recommended-templates/service-initiation-pages.html" + } + ] + } +} diff --git a/index-en.md b/index-en.md index be1f455ec8..a5fcd7d500 100644 --- a/index-en.md +++ b/index-en.md @@ -5,6 +5,7 @@ dateModified: 2023-08-29 description: "Home page describing all the components of the Canada.ca theme, named GCWeb." layout: no-container language: en +feedback: true css: - href: https://use.fontawesome.com/releases/v5.8.1/css/all.css integrity: sha384-50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf diff --git a/index-fr.md b/index-fr.md index a1de94fe22..22398a238d 100644 --- a/index-fr.md +++ b/index-fr.md @@ -5,6 +5,7 @@ dateModified: 2023-08-29 description: "Page d'accueil décrivant l'ensemble des composants du thème de Canada.ca, nommé GCWeb." layout: no-container language: fr +feedback: true css: - href: https://use.fontawesome.com/releases/v5.8.1/css/all.css integrity: sha384-50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf diff --git "a/m\303\251li-m\303\251lo/2023-09-menu/about.html" "b/m\303\251li-m\303\251lo/2023-09-menu/about.html" new file mode 100644 index 0000000000..7a87020f2c --- /dev/null +++ "b/m\303\251li-m\303\251lo/2023-09-menu/about.html" @@ -0,0 +1,59 @@ +--- +title: About - Campaign Menu +dateModified: 2023-09-12 +lang: en +css: campaign-menu.css +script: campaign-menu.js +layout: no-container +nomenu: true +--- +
                    +

                    About - Campaign Menu

                    +

                    Example of a new menu that uses megamenu for md and lg, and GCWeb menu for sm and xs.

                    +
                    +
                    + +
                    +
                    +

                    Test content

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +
                    diff --git "a/m\303\251li-m\303\251lo/2023-09-menu/calendar.html" "b/m\303\251li-m\303\251lo/2023-09-menu/calendar.html" new file mode 100644 index 0000000000..2dcb3a9346 --- /dev/null +++ "b/m\303\251li-m\303\251lo/2023-09-menu/calendar.html" @@ -0,0 +1,58 @@ +--- +title: Calendar with global GCMenu - Campaign Menu +dateModified: 2023-09-12 +lang: en +css: campaign-menu.css +script: campaign-menu.js +layout: no-container +--- +
                    +

                    Calendar with global GCMenu - Campaign Menu

                    +

                    Example of a new menu that uses megamenu for md and lg, and GCWeb menu for sm and xs.

                    +
                    +
                    + +
                    +
                    +

                    Test content

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +
                    diff --git "a/m\303\251li-m\303\251lo/2023-09-menu/campaign-menu.css" "b/m\303\251li-m\303\251lo/2023-09-menu/campaign-menu.css" new file mode 100644 index 0000000000..a8bb5fa3c3 --- /dev/null +++ "b/m\303\251li-m\303\251lo/2023-09-menu/campaign-menu.css" @@ -0,0 +1,150 @@ +/*** Mega Menu ***/ +/* add background and text color for menu */ +#wb-sm.campaign-menu { + background: #003c77; + color: #fff; +} +/* remove table cell and text shadow*/ +#wb-sm.campaign-menu .menu { + border-right: 0px !important; + display: block; + text-shadow: none; +} + + /* focus within mneu itme background */ +#wb-sm.campaign-menu .menu .active, +#wb-sm.campaign-menu .menu .wb-navcurr { + background: #ccc !important; + color: #333 !important; +} + +/* adjust menu padding to align height with GCMenu button */ +#wb-sm.campaign-menu .menu > li a { + padding: 0.5em 1em; +} + +/* change menu item on-hover background*/ +#wb-sm.campaign-menu .menu > li a:hover{ + background: #ccc !important; + color: #333 !important; +} + +/* change menu item on-focus background */ +#wb-sm.campaign-menu .menu > li a:focus{ + background: #003c77 !important; + color: #fff !important; +} +/* change menuitem text color when mouse move to submenu item*/ +#wb-sm.campaign-menu .menu > li.active > a{ + background: #ccc!important; + color: #333!important; +} + +/* submenu default color */ +#wb-sm.campaign-menu .sm.open li a { + background: #ccc !important; + color: #333 !important; +} + +/* hover on submenu item*/ +#wb-sm.campaign-menu .sm.open li a:active, +#wb-sm.campaign-menu .sm.open li a:focus, +#wb-sm.campaign-menu .sm.open li a:hover { + background: #003c77 !important; + color: #fff !important; +} + +/* submenu bottom bar color */ +#wb-sm.campaign-menu .sm.open { + border-bottom: 5px solid #003c77 !important; +} + + +/* add right border for last child item on md screen */ +@media screen and (max-width: 1199px) { + #wb-sm.campaign-menu .menu > li:last-child { + border-right: 1px solid #999; + } +} + + +/*** GCWEB Menu ***/ +/* default color */ +.gcweb-menu.campaign-menu button[aria-haspopup=true] { + background-color: #003c77 !important; + border: 1px solid #003c77; + color: #fff; +} + +/* Button opened with white background */ +.gcweb-menu.campaign-menu button[aria-haspopup=true][aria-expanded=true] { + background-color: #fff !important; + color: #000; +} + +/* button closed */ +.gcweb-menu.campaign-menu button[aria-haspopup=true]:focus { + background-color: #003c77 !important; + border: 1px dotted #fff; /* For focus - Make sure the */ + color: #fff; +} + +/* add border for menu item area to align the width */ +.gcweb-menu.campaign-menu button[aria-haspopup=true][aria-expanded=true] + [role=menu] { + border-right: #003c77 solid 1px !important; +} + +/* menu item background and color */ +.gcweb-menu.campaign-menu [role=menu] { + background-color: #003c77 !important; + color: #fff; +} +/* remove boder lines */ +.gcweb-menu.campaign-menu [role=menuitem], +.gcweb-menu.campaign-menu [role=menuitem]:visited, +.gcweb-menu.campaign-menu [role=menu] > li, +.gcweb-menu.campaign-menu [role=menu] > li:first-child, +.gcweb-menu.campaign-menu [role=menu] > li:last-child, +.gcweb-menu.campaign-menu [role=menu] [role=menu] [role=menuitem], +.gcweb-menu.campaign-menu [role=menu] [role=menu] li:first-child [role=menuitem] { + border: none; +} + +/* submenu background and text color*/ +.gcweb-menu.campaign-menu [role=menu] [role=menu] li [role=menuitem] { + background-color: #e1e1e1 !important; + color: #333; + padding-left: 65px; +} + +/* submenu item paddings and margins */ +.gcweb-menu.campaign-menu [aria-expanded=true]:not(button) + [role=menu] li { + margin-left: 0px; +} +.gcweb-menu.campaign-menu [aria-expanded=true]:not(button) + [role=menu] li:first-child [role=menuitem], +.gcweb-menu.campaign-menu [aria-expanded=true]:not(button) + [role=menu] li:last-child [role=menuitem] { + padding-left: 65px; +} + +/* submenu item on focus */ +.gcweb-menu.campaign-menu [role=menu] [role=menu] [role=menuitem]:focus, +.gcweb-menu.campaign-menu [role=menu] [role=menu] li:first-child [role=menuitem]:focus, +.gcweb-menu.campaign-menu [role=menu] [role=menu] li:last-child [role=menuitem]:focus { + background-color: #e1e1e1 !important; + color: #333 !important; +} + +/* submenu item on hover */ +.gcweb-menu.campaign-menu [role=menu] [role=menu] [role=menuitem]:hover, +.gcweb-menu.campaign-menu [role=menu] [role=menu] li:first-child [role=menuitem]:hover, +.gcweb-menu.campaign-menu [role=menu] [role=menu] li:last-child [role=menuitem]:hover { + background: #003c77 !important; + color: #fff !important; + text-decoration: none; +} + +/* remove the underline of sub menu item */ +.gcweb-menu.campaign-menu [role=menu] [role=menu] li [role=menuitem], +.gcweb-menu.campaign-menu [role=menu] [role=menu] li:first-child [role=menuitem] { + text-decoration: none; +} diff --git "a/m\303\251li-m\303\251lo/2023-09-menu/campaign-menu.js" "b/m\303\251li-m\303\251lo/2023-09-menu/campaign-menu.js" new file mode 100644 index 0000000000..163996c772 --- /dev/null +++ "b/m\303\251li-m\303\251lo/2023-09-menu/campaign-menu.js" @@ -0,0 +1,183 @@ +/** + * @title Campaign menu + * @author PCH + */ +(function ($, window, document, wb) { + "use strict"; + + /* + * Variable and function definitions. + * These are global to the plugin - meaning that they will be initialized once per page, + * not once per instance of plugin on the page. So, this is a good place to define + * variables that are common to all instances of the plugin on a page. + */ + var componentName = "campaign-menu", + selector = "." + componentName + ".gcweb-menu", + initEvent = "wb-init" + selector, + $document = wb.doc, + /** + * @method init + * @param {jQuery Event} event Event that triggered the function call + */ + init = function (event) { + + var testing = true; + + // Start initialization + // returns DOM object = proceed with init + // returns undefined = do not proceed with init (e.g., already initialized) + var elm = wb.init(event, componentName, selector), + $elm, + settings; + + if (elm) { + + // At this point, the GCWeb menu is already completed + $elm = $(elm); + + // Check if there is already a gcweb menu (or if there are 2 present) + /// If global gcmenu is present, hide the campaign menu and return, do not continue + var gcWebMenus = document.querySelectorAll(".gcweb-menu"); + if (gcWebMenus.length > 1) { + console.warn(componentName + " - gcweb menu already exsits on the page, hiding gcweb campaign menu"); + $elm.addClass('hidden'); + return; + } + + // Apply appropriate visible CSS classes to the GCWeb menu + $elm.addClass( "visible-sm visible-xs" ); + + // Use the GCWeb menu to create the megamenu for md and lg + // If a megamenu is already present, abort to avoid duplicate wb-sm IDs + var megamenuExists = document.querySelector("#wb-sm"); + if (megamenuExists != undefined || megamenuExists != null) { + console.warn(componentName + " can't start, megamenu already exsits on the page"); + wb.ready($elm, componentName); + return; + } + + // Megamenu does not exist, let's start to build it + + // Retrieve the top level list items from GCWeb men + /// USE $elm that is already in scope + /// TODO: Make the elm.queryselectorall work + /// var gcwebMenuListItems = elm.querySelectorAll("> ul > li"); + /// TEMP QUERY + var gcwebMenuListItems = document.querySelectorAll(selector + " > ul > li"); + //console.log(gcwebMenuListItems); + + // Start building mega menu + var megamenuHTML = ""; + var listItemCounter = 0; + var subMenuCounter = 0; + $.each(gcwebMenuListItems, function (key, element) { + // console.log(key + ": " + element); + listItemCounter++; + + // Get top level list item's anchor + var listItemAnchor = element.querySelector("a"); + listItemAnchor.setAttribute('class', 'item'); + //console.log("anchor: ", listItemAnchor); + + // Get top level list item's children + var listItemchildren = element.querySelectorAll("li"); + //console.log("children: ", listItemchildren); + //console.log("children length: " + gcwebMenuListItems.length); + + // Build top level list items, with and without submenus + if(listItemchildren.length > 0) { + // Use counter to generate dynamic href bookmarks and ids for submenus + subMenuCounter++; + + // Build list item with a submenu + let subMenuId = "menu-" + subMenuCounter; + + var submegamenuHTML = ""; + // TODO: Verify all the attributes + megamenuHTML += '
                  • ' + listItemAnchor.textContent; + if (!testing) { + megamenuHTML += ''; + } + megamenuHTML += ''; + + $.each(listItemchildren, function (key, element) { + //console.log(key + ": " + element); + var listItemAnchor = element.querySelector("a"); + var href = listItemAnchor.getAttribute('href'); + + // TODO: Add missing attributes present in the + submegamenuHTML += '
                  • ' + listItemAnchor.textContent + '
                  • '; + }); + + megamenuHTML += ''; + } + else { + // Build list item without a submenu + let href = listItemAnchor.getAttribute('href'); + megamenuHTML += '
                  • ' + listItemAnchor.textContent + '
                  • '; + } + }); + + // Get GCWeb h2 + var gcwebMenuH2 = document.querySelector(selector + " > h2"); + + // Wrap menu HTML with the megamenu wrapper + // NOTE: Removed role="navigation" (redundant) and typeof="SiteNavigationElement" (not required) + megamenuHTML = ` + `; + //console.log(megamenuHTML); + + // Add the megamenu + $elm.after( megamenuHTML ); + + // Identify that initialization has completed - Does this conflict with GCWeb initialization? All we did to GCWeb menu was add classes for xs and sm visible... This might not be required. + wb.ready($elm, componentName); + + if(testing) { + // Start the megamenu plugin + + // HACKS - Add the div required to build the hamburger menu, but hide it, since all we're trying to do is fully initialize the megamenu + $( ".wb-menu" ).attr('data-trgt', 'mb-pnl'); + $( ".wb-menu" ).after( ''); + $( ".wb-menu" ).after( ''); + + // Initialize it + $( ".wb-menu" ).trigger( "wb-init.wb-menu" ); + + $( "#mb-pnl" ).remove(); + $( "#wb-glb-mn" ).remove(); + $( ".wb-menu" ).removeAttr('data-trgt'); + } + } + }; + + // Add your plugin event handler + // No new plugin for now, comment out + /* + $document.on("ready", selector, function (event, data) { + + var elm = event.currentTarget, + $elm = $(elm); + + $elm.append(" Hello World "); // Do we need this? + + if (data && data.domore) { // Do we need this? + $elm.prepend("Do more"); + } + }); +*/ + // Bind the init event of the plugin + $document.on("timerpoke.wb " + initEvent, selector, init); + + + // Add the timer poke to initialize the plugin + wb.add(selector); + +})(jQuery, window, document, wb); diff --git "a/m\303\251li-m\303\251lo/2023-09-menu/index.html" "b/m\303\251li-m\303\251lo/2023-09-menu/index.html" new file mode 100644 index 0000000000..6040071a41 --- /dev/null +++ "b/m\303\251li-m\303\251lo/2023-09-menu/index.html" @@ -0,0 +1,74 @@ +--- +title: Campaign Menu +dateModified: 2023-09-12 +lang: en +css: campaign-menu.css +script: campaign-menu.js +layout: no-container +nomenu: true +--- +
                    +

                    Campaign Menu

                    +

                    Example of a new menu that uses megamenu for md and lg, and GCWeb menu for sm and xs.

                    +

                    This méli-mélo project is sponsored by PCH department.

                    +
                      +
                    • About Wintlude - demo wb-navcurr for a sub menu page
                    • +
                    • Calendar - demo for when global Canada.ca GCWeb menu is already present, this custom menu will not be activated by the plugin
                    • +
                    +
                    +
                    + +
                    +
                    +

                    Implementation plan

                    +

                    (To be revised during winter 2023-24)

                    +
                      +
                    • Stabilize the plugin amalgamation - estimated by November 2023
                    • +
                    • Revise the color for a better alignment with the Canada.ca default color scheme - estimated by January/April 2024
                    • +
                    • Collect user experience feedback on this redesigned menu after the winterlude 2024 event - Report summary to added by March 2024
                    • +
                    • Make the code independent from the wet-boew mega menu and from the GCWeb menu - Summer 2024
                    • +
                    • Engage with DTO and web apps community (ex. CDTS implementer) about this initiative - Now to spring 2024
                    • +
                    • Work toward a provisional plugin - Autumn 2025
                    • +
                    +

                    Test content

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +

                    Lorem

                    +
                    diff --git a/package-lock.json b/package-lock.json index 13d2723e1d..aa8f70361c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1094,7 +1094,7 @@ "wordwrap": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw==", "dev": true } } @@ -8269,7 +8269,7 @@ }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", "dev": true }, @@ -9636,7 +9636,7 @@ "acorn-jsx": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", - "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", + "integrity": "sha512-AU7pnZkguthwBjKgCg6998ByQNIMjbuDQZ8bb78QAFZwPfmKia8AIzgY/gWgqCjnht8JLdXmB4YxA0KaV60ncQ==", "dev": true, "requires": { "acorn": "^3.0.4" @@ -9645,7 +9645,7 @@ "acorn": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "integrity": "sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw==", "dev": true } } @@ -9653,7 +9653,7 @@ "ajv": { "version": "4.11.8", "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "integrity": "sha512-I/bSHSNEcFFqXLf91nchoNB9D1Kie3QKcWdchYUaoIg1+1bdWDkdfdlvdIOJbi9U8xR0y+MWc5D+won9v95WlQ==", "dev": true, "requires": { "co": "^4.6.0", @@ -9669,7 +9669,7 @@ "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true }, "argparse": { @@ -9684,7 +9684,7 @@ "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { "ansi-styles": "^2.2.1", @@ -9697,7 +9697,7 @@ "doctrine": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "integrity": "sha512-lsGyRuYr4/PIB0txi+Fy2xOMI2dGaTguCaotzFGkVZuKR5usKfcRWIFKNM3QNrU7hh/+w2bwTW+ZeXPK5l8uVg==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -9707,7 +9707,7 @@ "eslint": { "version": "2.13.1", "resolved": "https://registry.npmjs.org/eslint/-/eslint-2.13.1.tgz", - "integrity": "sha1-5MyPoPAJ+4KaquI4VaKTYL4fbBE=", + "integrity": "sha512-29PFGeV6lLQrPaPHeCkjfgLRQPFflDiicoNZOw+c/JkaQ0Am55yUICdYZbmCiM+DSef+q7oCercimHvjNI0GAw==", "dev": true, "requires": { "chalk": "^1.1.3", @@ -9764,7 +9764,7 @@ "file-entry-cache": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-1.3.1.tgz", - "integrity": "sha1-RMYepgeuS+nBQC9B9EJwy/4zT/g=", + "integrity": "sha512-JyVk7P0Hvw6uEAwH4Y0j+rZMvaMWvLBYRmRGAF2S6jKTycf0mMDcC7d21Y2KyrKJk3XI8YghSsk5KmRdbvg0VQ==", "dev": true, "requires": { "flat-cache": "^1.2.1", @@ -9786,7 +9786,7 @@ "fs-extra": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", - "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=", + "integrity": "sha512-V3Z3WZWVUYd8hoCL5xfXJCaHWYzmtwW5XWYSlLgERi8PWd8bx1kUHUk8L1BT57e49oKnDDD180mjfrHc1yA9rg==", "dev": true, "requires": { "graceful-fs": "^4.1.2", @@ -9865,7 +9865,7 @@ "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true }, "js-yaml": { @@ -9881,7 +9881,7 @@ "jsonfile": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", - "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", + "integrity": "sha512-oBko6ZHlubVB5mRFkur5vgYR1UyqX+S6Y/oCfLhqNdcc2fYFlDpIoNc7AfKS1KOGcnNAkvsr0grLck9ANM815w==", "dev": true, "requires": { "graceful-fs": "^4.1.6" @@ -9890,7 +9890,7 @@ "levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", "dev": true, "requires": { "prelude-ls": "~1.1.2", @@ -9924,7 +9924,7 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true }, "optionator": { @@ -9944,13 +9944,13 @@ "prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", "dev": true }, "progress": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", + "integrity": "sha512-UdA8mJ4weIkUBO224tIarHzuHs4HuYiJvsuGT7j/SPQiUJVjYvNDBIPa0hAorduOfjGohB/qHWRa/lrrWX/mXw==", "dev": true }, "rimraf": { @@ -9965,13 +9965,13 @@ "slice-ansi": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", - "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", + "integrity": "sha512-up04hB2hR92PgjpyU3y/eg91yIBILyjVY26NvvciY3EVVPjybkMszMpXQ9QAkcS3I5rtJBDLoTxxg+qvW8c7rw==", "dev": true }, "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, "string-width": { @@ -9987,7 +9987,7 @@ "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "requires": { "ansi-regex": "^3.0.0" @@ -9998,19 +9998,19 @@ "strip-json-comments": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz", - "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=", + "integrity": "sha512-AOPG8EBc5wAikaG1/7uFCNFJwnKOuQwFTpYBdTW6OvWHeZBQBrAA/amefHGrEiOnCPcLFZK6FUPtWVKpQVIRgg==", "dev": true }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true }, "table": { "version": "3.8.3", "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", - "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", + "integrity": "sha512-RZuzIOtzFbprLCE0AXhkI0Xi42ZJLZhCC+qkwuMLf/Vjz3maWpA8gz1qMdbmNoI9cOROT2Am/DxeRyXenrL11g==", "dev": true, "requires": { "ajv": "^4.7.0", @@ -10024,7 +10024,7 @@ "type-check": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", "dev": true, "requires": { "prelude-ls": "~1.1.2" diff --git a/sites/feedback/deprecated/report-problem-inline-en.html b/sites/feedback/deprecated/report-problem-inline-en.html new file mode 100644 index 0000000000..e8e89ea294 --- /dev/null +++ b/sites/feedback/deprecated/report-problem-inline-en.html @@ -0,0 +1,61 @@ +{%- if page.report == "true" %} +
                    + {{ i18nText-feedback }} +
                    +
                    +
                    +
                    +
                    + Please select all that apply: +
                    + + +
                    +
                    + + +
                    +
                    + + +
                    +
                    + + +
                    +
                    + + +
                    +
                    + + +
                    +
                    + +
                    +
                    +
                    +

                    Thank you for your help!

                    +

                    You will not receive a reply. For enquiries, please contact us.

                    +
                    +
                    +
                    +
                    +{%- else -%} + +{%- endif -%} diff --git a/sites/feedback/deprecated/report-problem-inline-fr.html b/sites/feedback/deprecated/report-problem-inline-fr.html new file mode 100644 index 0000000000..6e400900ac --- /dev/null +++ b/sites/feedback/deprecated/report-problem-inline-fr.html @@ -0,0 +1,61 @@ +{%- if page.report == "true" %} +
                    + {{ i18nText-feedback }} +
                    +
                    +
                    +
                    +
                    + Veuillez cocher toutes les réponses pertinentes : +
                    + + +
                    +
                    + + +
                    +
                    + + +
                    +
                    + + +
                    +
                    + + +
                    +
                    + + +
                    +
                    + +
                    +
                    +
                    +

                    Merci de votre aide!

                    +

                    Vous ne recevrez pas de réponse. Pour toute question, s’il vous plaît contactez-nous.

                    +
                    +
                    +
                    +
                    +{%- else -%} + +{%- endif -%} diff --git a/sites/feedback/dto-guidance-en.html b/sites/feedback/dto-guidance-en.html new file mode 100644 index 0000000000..7b4b4beaf9 --- /dev/null +++ b/sites/feedback/dto-guidance-en.html @@ -0,0 +1,3 @@ +
                    +

                    First use the GC Task Success Survey to identify tasks that you would like to improve. Then add the page feedback tool on specific pages related to that task to uncover specific page-level issues affecting task performance.

                    +
                    diff --git a/sites/feedback/dto-guidance-fr.html b/sites/feedback/dto-guidance-fr.html new file mode 100644 index 0000000000..91c971e7d0 --- /dev/null +++ b/sites/feedback/dto-guidance-fr.html @@ -0,0 +1,3 @@ +
                    +

                    Utilisez d'abord le Sondage sur la réussite des tâches du GC pour identifier les tâches que vous souhaitez améliorer. Ensuite, ajoutez l'outil de rétroaction sur les pages spécifiques liées à cette tâche pour découvrir les problèmes spécifiques au niveau de la page qui affectent la performance de la tâche.

                    +
                    diff --git a/sites/feedback/feedback-docs-en.html b/sites/feedback/feedback-docs-en.html index 61fb0d4897..a8bd4824ec 100644 --- a/sites/feedback/feedback-docs-en.html +++ b/sites/feedback/feedback-docs-en.html @@ -1,380 +1,12 @@ --- { "title": "Feedback area - Documentation", + "title_section": "GCWeb (the Canada.ca theme in WET)", "language": "en", "altLangPage": "feedback-docs-fr.html", - "secondlevel": false, - "dateModified": "2023-01-10", - "share": true, - "feedbackPath": "assets/page-feedback-en.html" + "dateModified": "2023-08-28", + "layout": "documentation", + "index_json": "index.json-ld", + "before_start_ajax_url": "dto-guidance-en.html #beforeYouBegin" } --- - -
                    -
                    Status
                    -
                    Stable
                    -
                    Version
                    -
                    5.0.0
                    -
                    Type
                    -
                    Canada.ca site functionality
                    -
                    - -

                    Introduction

                    -

                    Purpose

                    -

                    Provide feedback on any given page through a form.

                    - -

                    Evaluation and report

                    -

                    There is no evaluation and report available for this component.

                    - -

                    Guidance

                    - - -

                    Variants

                    -

                    This component supports the following variants:

                    - -
                    -

                    Note

                    -

                    All variants are comprised of two sub-components:

                    -
                      -
                    • The first one is used for the integration on the page.
                    • -
                    • The second one is the form which is inserted dynamically via an Ajax call. This sub-component is however out of scope of the API.
                    • -
                    -
                    - -

                    Variant 1: Page Feedback Tool (default) Provisional

                    -

                    Iteration 1

                    - -

                    Working example(s)

                    - - -

                    How to implement

                    -
                      -
                    • To show the page feedback form, create a <div class="wb-disable-allow"> with the following data attributes: -
                        -
                      • Mandatory: data-ajax-replace="assets/page-feedback-en.html"
                      • -
                      • Optional: data-feedback-theme="[Text defining the theme of your page]"
                      • -
                      • Optional: data-feedback-section="[Text defining the section where your page resides]"
                      • -
                      -
                    • -
                    • Additionally, your page needs to have the following metadata: <meta name="dcterms.creator" content="[Department name]">
                    • -
                    -

                    For more information about Data Ajax plugin, please visit Data Ajax documentation page.

                    - -
                    GCWeb Jekyll specific
                    -

                    To apply this variant's optional attributes on any given page, you will need to do the following in the page's front-matter:

                    -
                      -
                    • Set the variable feedbackData to an object containing the following customizable strings: -
                        -
                      • section: to define the section where your page resides.
                      • -
                      • theme: to define the theme of your page.
                      • -
                      -
                    • -
                    -

                    For example:

                    -
                    "feedbackData": {
                    -	"theme": "Theme",
                    -	"section": "Section"
                    -}
                    - -

                    Code sample

                    -{%- highlight html -%} -
                    -{%- endhighlight -%} -
                    - Ajaxed-in content - {%- highlight html -%} - {%- include_relative assets/page-feedback-en.html -%} - {%- endhighlight -%} -
                    - -

                    Variant 2: Page Feedback Tool With Contact Link Provisional

                    -

                    Iteration 1

                    - -

                    Working example(s)

                    - - -

                    How to implement

                    -
                      -
                    • To show the page feedback form, create a <div class="wb-disable-allow"> with the following data attributes: -
                        -
                      • Mandatory: data-ajax-replace="assets/page-feedback-en.html"
                      • -
                      • Mandatory: data-feedback-link="[Contact link text]"
                      • -
                      • Mandatory: data-feedback-url="[Contact link URL]"
                      • -
                      • Optional: data-feedback-theme="[Text defining the theme of your page]"
                      • -
                      • Optional: data-feedback-section="[Text defining the section where your page resides]"
                      • -
                      -
                    • -
                    • For the basic HTML version, a link element should be created inside your <div> that points to the report a problem form page: <div><a class="btn btn-default btn-block" href="https://www.canada.ca/en/report-problem.html">Report a problem on this page</a></div>.
                    • -
                    • Additionally, you can define the following metadata: <meta name="dcterms.creator" content="[Department name]">
                    • -
                    -

                    For more information about Data Ajax plugin, please visit Data Ajax documentation page.

                    - -
                    GCWeb Jekyll specific
                    -

                    To apply this variant on any given page, you will need to do the following in the page's front-matter:

                    -
                      -
                    • Set the variable feedbackContact to an object containing the following customizable strings: -
                        -
                      • link: to define the contact link's text.
                      • -
                      • url: to define the contact link's URL.
                      • -
                      -
                    • -
                    • Optionally, you can set the variable feedbackData to an object containing the following customizable strings: -
                        -
                      • section: to define the section where your page resides.
                      • -
                      • theme: to define the theme of your page.
                      • -
                      -
                    • -
                    -

                    For example:

                    -
                    "feedbackContact": {
                    -	"link": "Contact link",
                    -	"url": "https://canada.ca"
                    -},
                    -"feedbackData": {
                    -	"theme": "Theme",
                    -	"section": "Section"
                    -}
                    - -

                    Code sample

                    -{%- highlight html -%} -
                    -{%- endhighlight -%} -
                    - Ajaxed-in content - {%- highlight html -%} - {%- include_relative assets/page-feedback-en.html -%} - {%- endhighlight -%} -
                    - -

                    Variant 3: Report a Problem (RAP) Stable

                    -

                    Iteration 5

                    -

                    Here is a list of changes that happened since the previous iteration:

                    - - - - - - - - - - - - - -
                    Breaking -
                      -
                    • Removed JSON Manager extraction for "externalReferer" and "subject".
                    • -
                    -
                    Additions -
                      -
                    • Added static hidden inputs for "externalReferer" and "subject"
                    • -
                    -
                    Fixesn/a
                    - -

                    Working example(s)

                    - - -

                    How to implement

                    -
                      -
                    • To show the Report a problem form, create a <div> with the following data attribute: data-ajax-replace="ajax/report-problem-en.html".
                    • -
                    • For the basic HTML version, a link element should be created inside a <div> that points to the report a problem form page: <div><a class="btn btn-default btn-block" href="https://www.canada.ca/en/report-problem.html">Report a problem on this page</a></div>.
                    • -
                    - -

                    For more information about Data Ajax plugin, please visit Data Ajax documentation page.

                    -
                    - Adobe Analytics implementation -

                    To implement Adobe Analytics in the Report a problem form, simply add the attribute data-gc-analytics-rap to every checkbox with the value being the same as the current language's label, followed by a dash and followed by the other language's label.

                    -

                    For example:

                    -
                    <div class="checkbox">
                    -	<label for="problem2">
                    -		<input name="problem2" id="problem2" type="checkbox" value="Yes" data-gc-analytics-rap="It has a spelling mistake-Il y a une erreur d'orthographe ou de grammaire">It has a spelling mistake
                    -	</label>
                    -	<input name="problem2" type="hidden" value="">
                    -</div>
                    -
                    - -
                    Hidden input fields
                    -

                    The Report a problem variant leverages JSON Manager and Data JSON to get information about the page and generate hidden input fields in the form.

                    -

                    The following tag needs to be present in the page: <meta name="dcterms.creator" content="[Department name]">
                    Where [Department name] is a department name from canada.ca controlled vocabulary, for example: gc:institutions/service-canada

                    - -
                    GCWeb Jekyll specific
                    -

                    To apply this variant on any given page, you will need to do the following in the page's front-matter or in the site configurations (_config.yml):

                    -
                      -
                    • set the variable feedbackPath to "ajax/report-problem-en.html".
                    • -
                    • set the variable feedbackFallback to true.
                    • -
                    - -

                    Code sample

                    -{%- highlight html -%} - -{%- endhighlight -%} -
                    - Ajaxed-in content - {%- highlight html -%} - {%- include_relative ajax/report-problem-en.html -%} - {%- endhighlight -%} -
                    - -

                    Previous iterations

                    - -
                    - Iteration 4 -

                    Here is a list of changes that happened since the previous iteration:

                    - - - - - - - - - - - - - -
                    Breaking -
                      -
                    • Leveraging JSON Manager Extractor and Data JSON to generate hidden input fields
                    • -
                    -
                    Additionsn/a
                    Fixesn/a
                    - -

                    Code sample

                    - {%- highlight html -%} - - {%- endhighlight -%} -
                    - Ajaxed-in content - {%- highlight html -%} - {%- include_relative ajax/deprecated/report-problem-v4-en.html -%} - {%- endhighlight -%} -
                    -
                    - -
                    - Iteration 3 -

                    Here is a list of changes that happened since the previous iteration:

                    - - - - - - - - - - - - - -
                    Breaking -
                      -
                    • Removed login error sub-options.
                    • -
                    • Renamed login error option.
                    • -
                    -
                    Additionsn/a
                    Fixesn/a
                    - -

                    Code sample

                    - {%- highlight html -%} - - {%- endhighlight -%} -
                    - Ajaxed-in content - {%- highlight html -%} - {%- include_relative ajax/deprecated/report-problem-v3-en.html -%} - {%- endhighlight -%} -
                    -
                    - - -
                    - Iteration 2 -

                    Here is a list of changes that happened since the previous iteration:

                    - - - - - - - - - - - - - -
                    Breaking -
                      -
                    • Rework of the template to use data-ajax. Includes fallback for basic HTML version.
                    • -
                    • Updated form: -
                        -
                      • Now implements wb-postback for form validation and no longer uses data-toggle on submit.
                      • -
                      • Added login error options (problem 5 to problem 10).
                      • -
                      • Added error and success messages.
                      • -
                      -
                    • -
                    -
                    Additionsn/a
                    Fixesn/a
                    - -

                    Code sample

                    - {%- highlight html -%} - - {%- endhighlight -%} -
                    - Ajaxed-in content - {%- highlight html -%} - {%- include_relative ajax/deprecated/report-problem-v2-en.html -%} - {%- endhighlight -%} -
                    -
                    -
                    - Iteration 1 -

                    Code sample

                    - {%- highlight html -%} - {%- include_relative ajax/deprecated/report-problem-v1-en.html -%} - {%- endhighlight -%} -
                    diff --git a/sites/feedback/feedback-docs-fr.html b/sites/feedback/feedback-docs-fr.html index 2a741bbd8a..1224852049 100644 --- a/sites/feedback/feedback-docs-fr.html +++ b/sites/feedback/feedback-docs-fr.html @@ -1,378 +1,12 @@ --- { "title": "Zone de rétroaction - Documentation", + "title_section": "GCWeb (le thème de Canada.ca dans la BOEW)", "language": "fr", "altLangPage": "feedback-docs-en.html", - "secondlevel": false, - "dateModified": "2023-01-10", - "share": "true", - "feedbackPath": "assets/page-feedback-fr.html" + "dateModified": "2023-08-28", + "layout": "documentation", + "index_json": "index.json-ld", + "before_start_ajax_url": "dto-guidance-fr.html #beforeYouBegin" } --- - -
                    -
                    Statut
                    -
                    Stable
                    -
                    Version
                    -
                    5.0.0
                    -
                    Type
                    -
                    Fonctionnalité globale de site de Canada.ca
                    -
                    - -

                    Introduction

                    -

                    Objectif

                    -

                    Obtenir une rétroaction des utilisateurs sur une page donnée via un formulaire.

                    - -

                    Évaluation et rapport

                    -

                    Il n'y a pas d'évaluation ni de rapport disponible pour cette composante.

                    - -

                    Orientation

                    - - -

                    Variantes

                    -

                    Ce composant prend en charge les variantes suivantes :

                    - -
                    -

                    Note

                    -

                    Toutes les variantes sont composées de deux sous-composants :

                    -
                      -
                    • Le premier est utilisé pour l'intégration sur la page.
                    • -
                    • Le second est le formulaire qui est inséré dynamiquement via un appel Ajax. Ce sous-composant est par contre hors de portée de l'API.
                    • -
                    -
                    - -

                    Variante 1: Outil de rétroaction sur la page (par défaut) Provisoire

                    -

                    Itération 1

                    - -

                    Exemple(s) pratique(s)

                    - - -

                    Comment mettre en œuvre

                    -
                      -
                    • Pour afficher le formulaire de rétroaction sur la page, créez un <div> avec les attributs suivants : -
                        -
                      • Obligatoire : data-ajax-replace="assets/page-feedback-en.html"
                      • -
                      • Optionnel : data-feedback-theme="[Texte définissant le thème de votre page]"
                      • -
                      • Optionnel : data-feedback-section="[Texte définissant la section où réside votre page]"
                      • -
                      -
                    • -
                    • Pour la version HTML de base, un lien doit être créé dans un <div> qui pointe vers la page du formulaire de signalement d'un problème : <div><a class="btn btn-default btn-block" href="https://www.canada.ca/fr/signaler-probleme.html">Signaler un problème sur cette page</a></div>.
                    • -
                    • De plus, vous pouvez définir les métadonnées suivantes: <meta name="dcterms.creator" content="[Nom du département]">
                    • -
                    -

                    Pour plus d'informations sur le plugin Data Ajax, veuillez visiter la page de documentation Data Ajax.

                    - -
                    Spécifique à GCWeb Jekyll
                    -

                    Pour appliquer les attributs facultatifs de cette variante sur une page donnée, vous devrez procéder comme suit dans le front-matter de la page :

                    -
                      -
                    • Définissez la variable feedbackData à un objet contenant les chaînes de caractères suivantes : -
                        -
                      • section : pour définir la section où réside votre page.
                      • -
                      • theme : pour définir le thème de votre page.
                      • -
                      -
                    • -
                    -

                    Par exemple :

                    -
                    "feedbackData": {
                    -	"theme": "Thème",
                    -	"section": "Section"
                    -}
                    - -

                    Exemple de code

                    -{%- highlight html -%} -
                    -{%- endhighlight -%} -
                    - Contenu ajouté via Ajax - {%- highlight html -%} - {%- include_relative assets/page-feedback-fr.html -%} - {%- endhighlight -%} -
                    - -

                    Variante 2: Outil de rétroaction sur la page avec lien de contact Provisoire

                    -

                    Itération 1

                    - -

                    Exemple(s) pratique(s)

                    - - -

                    Comment mettre en œuvre

                    -
                      -
                    • Pour afficher le formulaire de rétroaction sur la page, créez un <div> avec les attributs suivants : -
                        -
                      • Obligatoire : data-ajax-replace="assets/page-feedback-en.html"
                      • -
                      • Obligatoire : data-feedback-link="[Texte du lien de contact]"
                      • -
                      • Obligatoire : data-feedback-url="[URL du lien de contact]"
                      • -
                      • Optionnel : data-feedback-theme="[Texte définissant le thème de votre page]"
                      • -
                      • Optionnel : data-feedback-section="[Texte définissant la section où réside votre page]"
                      • -
                      -
                    • -
                    • Pour la version HTML de base, un lien doit être créé dans un <div> qui pointe vers la page du formulaire de signalement d'un problème : <div><a class="btn btn-default btn-block" href="https://www.canada.ca/fr/signaler-probleme.html">Signaler un problème sur cette page</a></div>.
                    • -
                    • De plus, votre page doit avoir les métadonnées suivantes: <meta name="dcterms.creator" content="[Nom du département]">
                    • -
                    -

                    Pour plus d'informations sur le plugin Data Ajax, veuillez visiter la page de documentation Data Ajax.

                    - -
                    Spécifique à GCWeb Jekyll
                    -

                    Pour appliquer cette variante sur une page donnée, vous devrez faire ce qui suit dans l'en-tête de la page :

                    -
                      -
                    • Définissez la variable feedbackContact à un objet contenant les chaînes personnalisables suivantes: -
                        -
                      • link: pour définir le texte du lien de contact.
                      • -
                      • url: pour définir l'URL du lien de contact.
                      • -
                      -
                    • -
                    • Facultativement, vous pouvez définir la variable feedbackData à un objet contenant les chaînes de caractères suivantes: -
                        -
                      • section : pour définir la section où réside votre page.
                      • -
                      • theme : pour définir le thème de votre page.
                      • -
                      -
                    • -
                    -

                    Par exemple :

                    -
                    "feedbackContact": {
                    -	"link": "Lien de contact",
                    -	"url": "https://canada.ca/fr"
                    -},
                    -"feedbackData": {
                    -	"theme": "Thème",
                    -	"section": "Section"
                    -}
                    - -

                    Exemple de code

                    -{%- highlight html -%} -
                    -{%- endhighlight -%} -
                    - Contenu ajouté via Ajax - {%- highlight html -%} - {%- include_relative assets/page-feedback-fr.html -%} - {%- endhighlight -%} -
                    - -

                    Variante 3: Signaler un problème sur cette page (SUP) Stable

                    -

                    Itération 5

                    -

                    Voici une liste des changements qui se sont produits depuis l'itération précédente :

                    - - - - - - - - - - - - - -
                    Majeurs -
                      -
                    • Suppression de l'extraction de données avec JSON Manager pour "externalReferer" et "subject".
                    • -
                    -
                    Additions -
                      -
                    • Ajout de champs de saisie masqués statiques pour "externalReferer" et "subject"
                    • -
                    -
                    Correctifsn/a
                    - -

                    Exemple(s) pratique(s)

                    - - -

                    Comment mettre en œuvre

                    -
                      -
                    • Pour afficher le formulaire de commentaires sur la page, créez un <div> avec l'attribut suivant : data-ajax-replace="ajax/report-problem-fr.html".
                    • -
                    • Pour la version HTML de base, un lien doit être créé dans un <div> qui pointe vers la page du formulaire de signalement d'un problème : <div><a class="btn btn-default btn-block" href="https://www.canada.ca/fr/signaler-probleme.html">Signaler un problème sur cette page</a></div>.
                    • -
                    -

                    Pour plus d'informations sur le plugin Data Ajax, veuillez visiter la page de documentation Data Ajax.

                    -
                    - Implémentation de Adobe Analytics -

                    Pour implémenter Adobe Analytics dans le formulaire Signaler un problème, ajoutez simplement l'attribut data-gc-analytics-rap à chaque case à cocher avec la valeur étant la même que le "label" de la langue actuelle, suivie d'un tiret et suivi par le "label" de l'autre langue.

                    -

                    Par exemple :

                    -
                    <div class="checkbox">
                    -	<label for="problem2">
                    -		<input name="problem2" id="problem2" type="checkbox" value="Yes" data-gc-analytics-rap="Il y a une erreur d'orthographe ou de grammaire-It has a spelling mistake">Il y a une erreur d'orthographe ou de grammaire
                    -	</label>
                    -	<input name="problem2" type="hidden" value="">
                    -</div>
                    -
                    - -
                    Champs de saisie masqués
                    -

                    La variante Signaler un problème utilise JSON Manager et Data JSON pour obtenir des informations sur la page et générer des champs de saisie masqués dans le formulaire.

                    -

                    La balise suivante doit être présente dans la page : <meta name="author" content="[Nom du service]">
                    Où [Nom du ministère] est un nom de ministère du vocabulaire contrôlé de canada.ca, par exemple : gc:institutions/service-canada

                    - -
                    Spécifique à GCWeb Jekyll
                    -

                    Pour appliquer cette variante sur une page donnée, vous devrez faire ce qui suit dans l'en-tête de la page ou dans les configurations du site (_config.yml).

                    -
                      -
                    • définir la variable feedbackPath à "ajax/report-problem-fr.html".
                    • -
                    • définir la variable feedbackFallback à true.
                    • -
                    - -

                    Exemple de code

                    -{%- highlight html -%} - -{%- endhighlight -%} -
                    - Contenu ajouté via Ajax - {%- highlight html -%} - {%- include_relative ajax/report-problem-fr.html -%} - {%- endhighlight -%} -
                    - -

                    Itérations précédentes

                    -
                    - Itération 4 -

                    Voici une liste des changements qui se sont produits depuis l'itération précédente :

                    - - - - - - - - - - - - - -
                    Majeurs -
                      -
                    • Utilise JSON Manager Extractor et Data JSON pour générer des champs de saisie masqués
                    • -
                    -
                    Additionsn/a
                    Correctifsn/a
                    - -

                    Exemple de code

                    - {%- highlight html -%} - - {%- endhighlight -%} -
                    - Contenu ajouté via Ajax - {%- highlight html -%} - {%- include_relative ajax/deprecated/report-problem-v4-fr.html -%} - {%- endhighlight -%} -
                    -
                    - -
                    - Itération 3 -

                    Voici une liste des changements qui se sont produits depuis l'itération précédente :

                    - - - - - - - - - - - - - -
                    Majeurs -
                      -
                    • Suppression des sous-options d'erreur de connexion.
                    • -
                    • Option d'erreur de connexion renommée.
                    • -
                    -
                    Additionsn/a
                    Correctifsn/a
                    - -

                    Exemple de code

                    - {%- highlight html -%} - - {%- endhighlight -%} -
                    - Contenu ajouté via Ajax - {%- highlight html -%} - {%- include_relative ajax/deprecated/report-problem-v3-fr.html -%} - {%- endhighlight -%} -
                    -
                    - -
                    - Itération 2 -

                    Here is a list of changes that happened since the previous itération:

                    - - - - - - - - - - - - - -
                    Majeurs -
                      -
                    • Refonte du gabarit pour utiliser data-ajax. Inclut la solution de secours pour la version HTML de base.
                    • -
                    • Mise à jour du formulaire: -
                        -
                      • Implémente désormais wb-postback pour la validation des formulaires et n'utilise plus data-toggle lors de l'envoi.
                      • -
                      • Ajout d'options d'erreur de connexion (problème 5 à problème 10).
                      • -
                      • Ajout de messages d'erreur et de réussite.
                      • -
                      -
                    • -
                    -
                    Additionsn/a
                    Correctifsn/a
                    - -

                    Exemple de code

                    - {%- highlight html -%} - - {%- endhighlight -%} -
                    - Contenu ajouté via Ajax - {%- highlight html -%} - {%- include_relative ajax/deprecated/report-problem-v2-fr.html -%} - {%- endhighlight -%} -
                    -
                    -
                    - Itération 1 -

                    Exemple de code

                    - {%- highlight html -%} - {%- include_relative ajax/deprecated/report-problem-v1-fr.html -%} - {%- endhighlight -%} -
                    diff --git a/sites/feedback/includes/feedback.html b/sites/feedback/includes/feedback.html index 96c3d7adef..312a8463c7 100644 --- a/sites/feedback/includes/feedback.html +++ b/sites/feedback/includes/feedback.html @@ -13,7 +13,6 @@ {%- endif -%} {%- endcapture -%} -