Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Port dspace-8_x] Accessibility settings page #3614

Open
wants to merge 47 commits into
base: dspace-8_x
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
8f708d0
119602: Add AccessibilitySettingsService
AAwouters Oct 22, 2024
b72ce73
119602: Add Accessibility Settings page
AAwouters Oct 22, 2024
d224a2c
119602: Integrate accessibility settings into live-region
AAwouters Oct 22, 2024
6a49df5
119602: Integrate accessibility settings into notifications-board
AAwouters Oct 25, 2024
cad086c
119602: Add AccessibilitySettingsService stub & fix live-region test
AAwouters Oct 25, 2024
52eabec
119602: Add AccessibilitySettingsService tests
AAwouters Oct 25, 2024
82fd953
119602: Add AccessibilitySettingsComponent tests
AAwouters Nov 5, 2024
37455a8
119602: Make AccessibilitySettings cookie expiration configurable
AAwouters Nov 5, 2024
0451559
119602: Add link to AccessibilitySettings on profile page
AAwouters Nov 5, 2024
6319c9b
Merge branch 'accessibility-settings-7.6' into accessibility-settings…
AAwouters Nov 6, 2024
bb7f0cd
119602: Improve profile page link accessibility
AAwouters Nov 7, 2024
fe90d39
119602: Add placeholder in form
AAwouters Nov 18, 2024
ecb00a9
119602: Implement converting of accessibility settings values
AAwouters Nov 18, 2024
fdfa6e2
119602: Update values after converters implementation
AAwouters Nov 18, 2024
dc8a699
119602: Rework convertion & form format
AAwouters Nov 22, 2024
b16cec6
119602: Add automatic notification hiding toggle
AAwouters Nov 22, 2024
cae1394
119602: Allow resetting accessibility settings
AAwouters Nov 22, 2024
287d028
119602: Make input boxes smaller
AAwouters Nov 22, 2024
9ac92e0
119602: Add unit after input fields
AAwouters Nov 22, 2024
5a28e66
119602: Move hints to contextHelp
AAwouters Nov 25, 2024
ced163a
119602: Remove obsolete tests
AAwouters Nov 25, 2024
ec016e8
119602: Update AccessibilitySettingsService stub
AAwouters Nov 25, 2024
deb4a63
119602: Add additional accessibilitySettingsComponent tests
AAwouters Nov 25, 2024
c38352e
119602: Update doc comments
AAwouters Nov 25, 2024
cdec488
119602: Compare notifications by id to correctly update store
AAwouters Nov 29, 2024
010b2f9
119602: Improve types & docs
AAwouters Dec 11, 2024
c71c666
119602: Improve notification hiding toggle useability
AAwouters Dec 11, 2024
fe4dcf0
Merge branch 'accessibility-settings-7.6' into accessibility-settings…
AAwouters Dec 11, 2024
b55a318
119602: Reset notificationTimeOut when left on 0
AAwouters Jan 22, 2025
9052509
Merge branch 'accessibility-settings-7.6' into accessibility-settings…
AAwouters Jan 22, 2025
f4fb0b3
Merge remote-tracking branch 'dspace/dspace-8_x' into accessibility-s…
AAwouters Jan 22, 2025
59cb19a
119602: Restructure labels
AAwouters Feb 7, 2025
80948d9
119602: Force minimum time out
AAwouters Feb 10, 2025
e838873
119602: Set default value as actual value instead of placeholder
AAwouters Feb 17, 2025
b837f63
119602: Add 'Accessibility Settings' Klaro option & respect user choice
AAwouters Feb 18, 2025
d05096c
119602: Add KlaroServiceStub
AAwouters Feb 21, 2025
4c30e2d
119602: Fix existing accessibility-settings.service tests
AAwouters Feb 21, 2025
6290474
119602: Add accessibility-settings.service tests for cookie functiona…
AAwouters Feb 21, 2025
4a74a3a
119602: Fix existing accessibility-settings.component tests
AAwouters Feb 21, 2025
ca80812
119602: Add additional accessibility-settings.component test
AAwouters Feb 21, 2025
cd825ac
119602: Inject AppConfig instead of using environment directly
AAwouters Feb 21, 2025
dcd32c4
119602: Rework settings validation
AAwouters Feb 21, 2025
da5a4f3
Merge branch 'accessibility-settings-7.6' into accessibility-settings…
AAwouters Feb 21, 2025
a5f68a3
Merge branch 'dspace-8_x' into accessibility-settings-8_x
AAwouters Feb 21, 2025
957d4bc
119602: Fix tests after merge
AAwouters Feb 21, 2025
a6be9f8
119602: Add new cookie setting to e2e tests
AAwouters Feb 26, 2025
fa4c5dd
119602: Set cookies for all users
AAwouters Feb 26, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions config/config.example.yml
Original file line number Diff line number Diff line change
Expand Up @@ -550,3 +550,8 @@ liveRegion:
messageTimeOutDurationMs: 30000
# The visibility of the live region. Setting this to true is only useful for debugging purposes.
isVisible: false

# Configuration for storing accessibility settings, used by the AccessibilitySettingsService
accessibility:
# The duration in days after which the accessibility settings cookie expires
cookieExpirationDuration: 7
1 change: 1 addition & 0 deletions cypress.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ export default defineConfig({
DSPACE_TEST_SUBMIT_PERSON_COLLECTION_NAME: 'People',
// Account used to test basic submission process
DSPACE_TEST_SUBMIT_USER: 'dspacedemo+submit@gmail.com',
DSPACE_TEST_SUBMIT_USER_UUID: '914955b1-cf2e-4884-8af7-a166aa24cf73',
DSPACE_TEST_SUBMIT_USER_PASSWORD: 'dspace',
// Administrator users group
DSPACE_ADMINISTRATOR_GROUP: 'e59f5659-bff9-451e-b28f-439e7bd467e4'
Expand Down
6 changes: 4 additions & 2 deletions cypress/support/e2e.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,9 +54,11 @@ before(() => {

// Runs once before the first test in each "block"
beforeEach(() => {
// Pre-agree to all Klaro cookies by setting the klaro-anonymous cookie
// Pre-agree to all Klaro cookies by setting the klaro-anonymous & user-specific cookies
// This just ensures it doesn't get in the way of matching other objects in the page.
cy.setCookie('klaro-anonymous', '{%22authentication%22:true%2C%22preferences%22:true%2C%22acknowledgement%22:true%2C%22google-analytics%22:true%2C%22google-recaptcha%22:true}');
cy.setCookie('klaro-anonymous', '{"authentication":true,"preferences":true,"acknowledgement":true,"google-analytics":true,"accessibility":true}');
cy.setCookie(`klaro-${Cypress.env('DSPACE_TEST_ADMIN_USER_UUID')}`, '{"authentication":true,"preferences":true,"acknowledgement":true,"google-analytics":true,"accessibility":true}');
cy.setCookie(`klaro-${Cypress.env('DSPACE_TEST_SUBMIT_USER_UUID')}`, '{"authentication":true,"preferences":true,"acknowledgement":true,"google-analytics":true,"accessibility":true}');

// Remove any CSRF cookies saved from prior tests
cy.clearCookie(DSPACE_XSRF_COOKIE);
Expand Down
11 changes: 11 additions & 0 deletions src/app/accessibility/accessibility-settings.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import { Config } from '../../config/config.interface';

/**
* Configuration interface used by the AccessibilitySettingsService
*/
export class AccessibilitySettingsConfig implements Config {
/**
* The duration in days after which the accessibility settings cookie expires
*/
cookieExpirationDuration: number;
}
Loading
Loading