diff --git a/package.json b/package.json index e81d09d..4b97dc7 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ "vuetify": "^4.0.4" }, "devDependencies": { + "@axe-core/playwright": "^4.11.1", "@intellectronica/ruler": "^0.3.37", "@playwright/test": "^1.58.2", "@tsconfig/node22": "^22.0.5", diff --git a/playwright.config.ts b/playwright.config.ts index f39f187..5ee16b5 100644 --- a/playwright.config.ts +++ b/playwright.config.ts @@ -39,15 +39,6 @@ export default defineConfig({ use: { ...devices['Desktop Chrome'] }, }, - { - name: 'firefox', - use: { ...devices['Desktop Firefox'] }, - }, - - { - name: 'webkit', - use: { ...devices['Desktop Safari'] }, - }, /* Test against mobile viewports. */ // { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 56b6762..3ba9907 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -30,6 +30,9 @@ importers: specifier: ^4.0.4 version: 4.0.4(typescript@5.9.3)(vite-plugin-vuetify@2.1.3)(vue@3.5.31(typescript@5.9.3)) devDependencies: + '@axe-core/playwright': + specifier: ^4.11.1 + version: 4.11.1(playwright-core@1.58.2) '@intellectronica/ruler': specifier: ^0.3.37 version: 0.3.37 @@ -87,6 +90,11 @@ packages: peerDependencies: '@types/json-schema': ^7.0.15 + '@axe-core/playwright@4.11.1': + resolution: {integrity: sha512-mKEfoUIB1MkVTht0BGZFXtSAEKXMJoDkyV5YZ9jbBmZCcWDz71tegNsdTkIN8zc/yMi5Gm2kx7Z5YQ9PfWNAWw==} + peerDependencies: + playwright-core: '>= 1.0.0' + '@babel/generator@7.29.1': resolution: {integrity: sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==} engines: {node: '>=6.9.0'} @@ -664,6 +672,10 @@ packages: asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + axe-core@4.11.1: + resolution: {integrity: sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A==} + engines: {node: '>=4'} + axios@1.13.6: resolution: {integrity: sha512-ChTCHMouEe2kn713WHbQGcuYrr6fXTBiu460OTwWrWob16g1bXn4vtz07Ope7ewMozJAnEquLk5lWQWtBig9DQ==} @@ -2004,6 +2016,11 @@ snapshots: '@types/json-schema': 7.0.15 js-yaml: 4.1.1 + '@axe-core/playwright@4.11.1(playwright-core@1.58.2)': + dependencies: + axe-core: 4.11.1 + playwright-core: 1.58.2 + '@babel/generator@7.29.1': dependencies: '@babel/parser': 7.29.2 @@ -2589,6 +2606,8 @@ snapshots: asynckit@0.4.0: {} + axe-core@4.11.1: {} + axios@1.13.6: dependencies: follow-redirects: 1.15.11 diff --git a/src/components/PageLogin.vue b/src/components/PageLogin.vue index 2b42be9..bb092cd 100644 --- a/src/components/PageLogin.vue +++ b/src/components/PageLogin.vue @@ -127,7 +127,7 @@ /> -
+
Copyright © {{ new Date().getFullYear() }} {{ props.branding.organization }}
@@ -189,7 +189,7 @@ /> -
+
Copyright © {{ new Date().getFullYear() }} {{ props.branding.organization }}
diff --git a/src/components/login/LoginHeader.vue b/src/components/login/LoginHeader.vue index 35571bb..7eb0574 100644 --- a/src/components/login/LoginHeader.vue +++ b/src/components/login/LoginHeader.vue @@ -1,7 +1,7 @@ diff --git a/src/components/login/LoginToolBar.vue b/src/components/login/LoginToolBar.vue index 622db47..801d7e2 100644 --- a/src/components/login/LoginToolBar.vue +++ b/src/components/login/LoginToolBar.vue @@ -2,6 +2,7 @@
import { mdiPaletteOutline, mdiTranslate } from '@mdi/js' import { computed } from 'vue' +import { useI18n } from 'vue-i18n' import { useTheme } from 'vuetify' import { getNextThemeName } from '@/utils/theme' @@ -55,6 +58,7 @@ const props = withDefaults(defineProps(), { const emit = defineEmits(['change-locale', 'toggle-layout']) +const { t } = useI18n() const theme = useTheme() const availableThemeNames = computed(() => diff --git a/src/language/en-US.json b/src/language/en-US.json index b1e0e6f..ac01a1e 100644 --- a/src/language/en-US.json +++ b/src/language/en-US.json @@ -30,6 +30,10 @@ "verifyFailed": "Verification failed", "loginFailed": "Login failed", "loginSuccess": "Login success!" + }, + "toolbar": { + "toggleTheme": "Toggle theme", + "selectLocale": "Select language" } } } diff --git a/src/language/zh-TW.json b/src/language/zh-TW.json index 02a04f7..269efec 100644 --- a/src/language/zh-TW.json +++ b/src/language/zh-TW.json @@ -30,6 +30,10 @@ "verifyFailed": "驗證失敗", "loginFailed": "登入失敗", "loginSuccess": "登入成功!" + }, + "toolbar": { + "toggleTheme": "切換主題", + "selectLocale": "選擇語系" } } }