diff --git a/.github/workflows/startup-tests.yml b/.github/workflows/startup-tests.yml index 371d45098..693bb46c2 100644 --- a/.github/workflows/startup-tests.yml +++ b/.github/workflows/startup-tests.yml @@ -8,7 +8,7 @@ env: GITHUB_WORKFLOW: github_actions backend-directory: ./backend working-directory: ./frontend - + jobs: startup-functional-test: runs-on: ubuntu-20.04 @@ -122,7 +122,7 @@ jobs: working-directory: ${{ env.working-directory }} run: | response=$(curl -d "username=admin@tests.com&password=1234" -H "Origin: https://localhost:8443" https://localhost:8443/login -k) - server_reponse='{"type":"redirect","status":302,"location":"/analytics"}' + server_reponse='{"type":"redirect","status":302,"location":"/bird-eye"}' if [[ "$response" == "$server_reponse" ]]; then echo "Success" exit 0 diff --git a/.gitignore b/.gitignore index 0e51560e5..8997aebe7 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ django_secret_key temp/ db/ .dccache +venv/ diff --git a/frontend/messages/de.json b/frontend/messages/de.json index c42dcccb7..2d9fba21a 100644 --- a/frontend/messages/de.json +++ b/frontend/messages/de.json @@ -37,28 +37,45 @@ "edit": "Bearbeiten", "changePassword": "Passwort ändern", "overview": "Übersicht", + "dashboard": "Armaturenbrett", "context": "Kontext", + "repository": "Repository", "governance": "Governance", "risk": "Risiko", "compliance": "Compliance", "organization": "Organisation", "extra": "Extra", + "config": "Konfig", "analytics": "Analytics", + "birdEye": "Vogelaugen", "calendar": "Kalender", + "schedules": "Zeitpläne", "threats": "Bedrohungen", "referenceControls": "Referenzkontrollen", "appliedControls": "Angewendete Kontrollen", + "mappedControls": "Zuordnete Steuerungen", "assets": "Assets", + "assetInventory": "Anlageninventar", "asset": "Asset", "policy": "Richtlinie", "policies": "Richtlinien", + "policiesAndProcedures": "Richtlinien und Prozeduren", + "trainingAndEduction": "Ausbildung & Bildung", + "changeManagement": "Change-Management", + "incidentManagement": "Störungsmanagement", + "configurationManagement": "Konfigurationsmanagement", + "patchManagement": "Patch-Management", + "thirdPartyAuditReports": "Auditberichte von Drittanbietern", + "reports": "Berichte", "riskMatrices": "Risikomatrizen", "riskAssessments": "Risikobewertungen", + "riskRegister": "Gefahrenregister", "riskScenarios": "Risikoszenarien", "riskScenario": "Risikoszenario", "riskAcceptances": "Risikoakzeptanzen", "riskAcceptance": "Risikoakzeptanz", "complianceAssessments": "Audits", + "complianceAuditReports": "Auditberichte", "complianceAssessment": "Audit", "evidences": "Beweise", "evidence": "Beweis", diff --git a/frontend/messages/en.json b/frontend/messages/en.json index c32fac242..eed7476a9 100644 --- a/frontend/messages/en.json +++ b/frontend/messages/en.json @@ -37,28 +37,45 @@ "edit": "Edit", "changePassword": "Change password", "overview": "Overview", + "dashboard": "Dashboard", "context": "Context", + "repository": "Repository", "governance": "Governance", "risk": "Risk", "compliance": "Compliance", "organization": "Organization", "extra": "Extra", + "config": "Config", "analytics": "Analytics", + "birdEye": "Bird Eye", "calendar": "Calendar", + "schedules": "Schedules", "threats": "Threats", "referenceControls": "Reference controls", "appliedControls": "Applied controls", + "mappedControls": "Mapped Controls", "assets": "Assets", + "assetInventory": "Asset Inventory", "asset": "Asset", "policy": "Policy", "policies": "Policies", + "policiesAndProcedures": "Policies & Procedures", + "trainingAndEduction": "Training & Education", + "changeManagement": "Change Management", + "incidentManagement": "Incident Management", + "configurationManagement": "Configuration Management", + "patchManagement": "Patch Management", + "thirdPartyAuditReports": "Third-Party Audit Reports", + "reports": "Reports", "riskMatrices": "Risk matrices", "riskAssessments": "Risk assessments", + "riskRegister": "Risk Register", "riskScenarios": "Risk scenarios", "riskScenario": "Risk scenario", "riskAcceptances": "Risk acceptances", "riskAcceptance": "Risk acceptance", "complianceAssessments": "Audits", + "complianceAuditReports": "Audit Reports", "complianceAssessment": "Audit", "evidences": "Evidences", "evidence": "Evidence", @@ -531,4 +548,4 @@ "outdated": "Outdated", "exportBackupDescription": "This will serialize and create a backup of the database, including users and RBAC. Evidences and other files are not included in the backup.", "importBackupDescription": "This will deserialize and restore the database from a backup. This will overwrite all existing data, including users and RBAC and cannot be undone." -} \ No newline at end of file +} diff --git a/frontend/messages/es.json b/frontend/messages/es.json index da5c45dad..79eb84082 100644 --- a/frontend/messages/es.json +++ b/frontend/messages/es.json @@ -37,28 +37,45 @@ "edit": "Editar", "changePassword": "Cambiar contraseña", "overview": "Visión general", + "dashboard": "Panel", "context": "Contexto", + "repository": "repositorio", "governance": "Gobernanza", "risk": "Riesgo", "compliance": "Cumplimiento", "organization": "Organización", "extra": "Extra", + "config": "configuración", "analytics": "Analíticas", + "birdEye": "Ojo de pájaro", "calendar": "Calendario", + "schedules": "horarios", "threats": "Amenazas", "referenceControls": "Controles de referencia", "appliedControls": "Controles aplicados", + "mappedControls": "Controles Mapeados", "assets": "Activos", + "assetInventory": "Inventario de activos", "asset": "Activo", "policy": "Política", "policies": "Políticas", + "policiesAndProcedures": "políticas y procedimientos", + "trainingAndEduction": "Formación y Educación", + "changeManagement": "Gestión del Cambio", + "incidentManagement": "Gestión de Incidentes", + "configurationManagement": "Gestión de Configuración", + "patchManagement": "Gestión de Parches", + "thirdPartyAuditReports": "Informes de Auditoría de Terceros", + "reports": "Informes", "riskMatrices": "Matrices de riesgo", + "riskRegister": "Registro de riesgo", "riskAssessments": "Evaluaciones de riesgos", "riskScenarios": "Escenarios de riesgo", "riskScenario": "Escenario de riesgo", "riskAcceptances": "Aceptaciones de riesgo", "riskAcceptance": "Aceptación de riesgo", "complianceAssessments": "Auditorías", + "complianceAuditReports": "Informes de auditoría", "complianceAssessment": "Auditoría", "evidences": "Evidencias", "evidence": "Evidencia", diff --git a/frontend/messages/fr.json b/frontend/messages/fr.json index a533c6000..338c7e692 100644 --- a/frontend/messages/fr.json +++ b/frontend/messages/fr.json @@ -37,28 +37,45 @@ "edit": "Modifier", "changePassword": "Changer le mot de passe", "overview": "Vue d'ensemble", + "dashboard": "tableau de bord", "context": "Contexte", + "repository": "dépôt", "governance": "Gouvernance", "risk": "Risque", "compliance": "Conformité", "organization": "Organisation", "extra": "Extra", + "config": "Configuration", "analytics": "Analytiques", + "birdEye": "Yeux d'oiseau", "calendar": "Calendrier", + "schedules": "des horaires", "threats": "Menaces", "referenceControls": "Mesures de référence", "appliedControls": "Mesures appliquées", + "mappedControls": "Contrôles Mappés", "assets": "Biens sensibles", + "assetInventory": "Inventaire des actifs", "asset": "Bien sensible", "policy": "Politique", "policies": "Politiques", + "policiesAndProcedures": "Politiques et procédures", + "trainingAndEduction": "Formation et Éducation", + "changeManagement": "Gestion du Changement", + "incidentManagement": "Gestion des Incidents", + "configurationManagement": "Gestion de Configuration", + "patchManagement": "Gestion de Correctifs", + "thirdPartyAuditReports": "Rapports d'Audit de Tiers", + "reports": "Rapports", "riskMatrices": "Matrices de risque", + "riskRegister": "Registre des risques", "riskAssessments": "Évaluations de risque", "riskScenarios": "Scénarios de risque", "riskScenario": "Scénario de risque", "riskAcceptances": "Acceptations de risque", "riskAcceptance": "Acceptation de risque", "complianceAssessments": "Audits", + "complianceAuditReports": "Rapports d'audit", "complianceAssessment": "Audit", "evidences": "Preuves", "evidence": "Preuve", diff --git a/frontend/messages/it.json b/frontend/messages/it.json index d449f84c6..22d380d4a 100644 --- a/frontend/messages/it.json +++ b/frontend/messages/it.json @@ -37,28 +37,45 @@ "edit": "Modifica", "changePassword": "Cambia password", "overview": "Panoramica", + "dashboard": "pannello di controllo", "context": "Contesto", + "repository": "deposito", "governance": "Governance", "risk": "Rischio", "compliance": "Conformità", "organization": "Organizzazione", "extra": "Extra", + "config": "Configurazione", "analytics": "Analisi", + "birdEye": "Occhio di uccello", "calendar": "Calendario", + "schedules": "orari", "threats": "Minacce", "referenceControls": "Controlli di riferimento", "appliedControls": "Controlli applicati", + "mappedControls": "Controlli Mappati", "assets": "Risorse", + "assetInventory": "Inventario delle risorse", "asset": "Risorsa", "policy": "Politica", "policies": "Politiche", + "policiesAndProcedures": "Politiche e procedure", + "trainingAndEduction": "Formazione e Educazione", + "changeManagement": "Gestione del Cambiamento", + "incidentManagement": "Gestione degli Incidenti", + "configurationManagement": "Gestione della Configurazione", + "patchManagement": "Gestione dei Patch", + "thirdPartyAuditReports": "Rapporti di Audit di Terze Parti", + "reports": "Rapporti", "riskMatrices": "Matrici di rischio", + "riskRegister": "Registro dei rischi", "riskAssessments": "Valutazioni del rischio", "riskScenarios": "Scenari di rischio", "riskScenario": "Scenario di rischio", "riskAcceptances": "Accettazioni di rischio", "riskAcceptance": "Accettazione del rischio", "complianceAssessments": "Audit", + "complianceAuditReports": "Rapporti di audit", "complianceAssessment": "Audit", "evidences": "Prove", "evidence": "Prova", diff --git a/frontend/messages/nl.json b/frontend/messages/nl.json index 1c476570a..11e914f2f 100644 --- a/frontend/messages/nl.json +++ b/frontend/messages/nl.json @@ -37,28 +37,45 @@ "edit": "Bewerken", "changePassword": "Wachtwoord wijzigen", "overview": "Overzicht", + "dashboard": "dashboard", "context": "Context", + "repository": "opslagplaats", "governance": "Bestuur", "risk": "Risico", "compliance": "Naleving", "organization": "Organisatie", "extra": "Extra", + "config": "Configuratie", "analytics": "Analytics", + "birdEye": "Vogel oog", "calendar": "Kalender", + "schedules": "schema's", "threats": "Bedreigingen", "referenceControls": "Referentiecontroles", "appliedControls": "Toegepaste controles", + "mappedControls": "Toegekende Bedieningen", "assets": "Middelen", + "assetInventory": "Inventaris van activa", "asset": "Middel", "policy": "Beleid", "policies": "Beleiden", + "policiesAndProcedures": "Beleid en procedures", + "trainingAndEduction": "Training & Opleiding", + "changeManagement": "Verandermanagement", + "incidentManagement": "Incidentbeheer", + "configurationManagement": "Configuratiemanagement", + "patchManagement": "Patchbeheer", + "thirdPartyAuditReports": "Auditrapporten van Derden", + "reports": "Rapporten", "riskMatrices": "Risicomatrices", + "riskRegister": "Risicoregister", "riskAssessments": "Risicobeoordelingen", "riskScenarios": "Risicoscenario's", "riskScenario": "Risicoscenario", "riskAcceptances": "Risicoacceptaties", "riskAcceptance": "Risicoacceptatie", "complianceAssessments": "Audits", + "complianceAuditReports": "Auditrapporten", "complianceAssessment": "Audit", "evidences": "Bewijzen", "evidence": "Bewijs", diff --git a/frontend/messages/pt.json b/frontend/messages/pt.json index 44fc4f918..0a7450fa8 100644 --- a/frontend/messages/pt.json +++ b/frontend/messages/pt.json @@ -37,28 +37,45 @@ "edit": "Editar", "changePassword": "Alterar senha", "overview": "Visão geral", + "dashboard": "painel", "context": "Contexto", + "repository": "repositório", "governance": "Governança", "risk": "Risco", "compliance": "Conformidade", "organization": "Organização", "extra": "Extra", + "config": "Configuração", "analytics": "Análises", + "birdEye": "Olho de pássaro", "calendar": "Calendário", + "schedules": "horários", "threats": "Ameaças", "referenceControls": "Controles de referência", "appliedControls": "Controles aplicados", + "mappedControls": "Controles Mapeados", "assets": "Ativos", + "assetInventory": "Inventário de ativos", "asset": "Ativo", "policy": "Política", "policies": "Políticas", + "policiesAndProcedures": "Políticas e Procedimentos", + "trainingAndEduction": "Treinamento e Educação", + "changeManagement": "Gestão da Mudança", + "incidentManagement": "Gestão de Incidentes", + "configurationManagement": "Gestão de Configuração", + "patchManagement": "Gestão de Patches", + "thirdPartyAuditReports": "Relatórios de Auditoria de Terceiros", + "reports": "Relatórios", "riskMatrices": "Matrizes de risco", + "riskRegister": "Registro de riscos", "riskAssessments": "Avaliações de risco", "riskScenarios": "Cenários de risco", "riskScenario": "Cenário de risco", "riskAcceptances": "Aceites de risco", "riskAcceptance": "Aceite de risco", "complianceAssessments": "Auditorias", + "complianceAuditReports": "Relatórios de auditoria", "complianceAssessment": "Auditoria", "evidences": "Evidências", "evidence": "Evidência", diff --git a/frontend/src/lib/components/Calendar/Day.svelte b/frontend/src/lib/components/Schedules/Day.svelte similarity index 100% rename from frontend/src/lib/components/Calendar/Day.svelte rename to frontend/src/lib/components/Schedules/Day.svelte diff --git a/frontend/src/lib/components/Calendar/Notifications.svelte b/frontend/src/lib/components/Schedules/Notifications.svelte similarity index 100% rename from frontend/src/lib/components/Calendar/Notifications.svelte rename to frontend/src/lib/components/Schedules/Notifications.svelte diff --git a/frontend/src/lib/components/Calendar/Calendar.svelte b/frontend/src/lib/components/Schedules/Schedules.svelte similarity index 100% rename from frontend/src/lib/components/Calendar/Calendar.svelte rename to frontend/src/lib/components/Schedules/Schedules.svelte diff --git a/frontend/src/lib/components/SideBar/navData.ts b/frontend/src/lib/components/SideBar/navData.ts index c2e25b686..1f81aea35 100644 --- a/frontend/src/lib/components/SideBar/navData.ts +++ b/frontend/src/lib/components/SideBar/navData.ts @@ -12,12 +12,12 @@ export const navData = { // ] // }, { - name: 'overview', + name: 'dashboard', items: [ { - name: 'analytics', + name: 'birdEye', fa_icon: 'fa-solid fa-gauge', - href: '/analytics', + href: '/bird-eye', permissions: [ 'view_project', 'view_riskscenario', @@ -27,9 +27,9 @@ export const navData = { ] }, { - name: 'calendar', + name: 'schedules', fa_icon: 'fa-solid fa-calendar-days', - href: '/calendar', + href: '/schedules', permissions: [ 'view_appliedcontrol', 'view_riskacceptance', @@ -40,8 +40,18 @@ export const navData = { ] }, { - name: 'context', + name: 'repository', items: [ + { + name: 'frameworks', + fa_icon: 'fa-solid fa-folder', + href: '/frameworks' + }, + { + name: 'riskMatrices', + fa_icon: 'fa-solid fa-table-cells-large', + href: '/risk-matrices' + }, { name: 'threats', fa_icon: 'fa-solid fa-biohazard', @@ -52,15 +62,20 @@ export const navData = { fa_icon: 'fa-solid fa-gears', href: '/reference-controls' }, + { + name: 'evidences', + fa_icon: 'fa-solid fa-file', + href: '/evidences' + }, { name: 'appliedControls', fa_icon: 'fa-solid fa-fire-extinguisher', href: '/applied-controls' }, { - name: 'assets', - fa_icon: 'fa-solid fa-gem', - href: '/assets' + name: 'mappedControls', + fa_icon: 'fa-solid fa-fire-extinguisher', + href: '/applied-controls' } ] }, @@ -68,15 +83,50 @@ export const navData = { name: 'governance', items: [ { - name: 'policies', + name: 'assetInventory', + fa_icon: 'fa-solid fa-gem', + href: '/assets' + }, + { + name: 'policiesAndProcedures', fa_icon: 'fa-solid fa-user', href: '/policies', permissions: ['view_appliedcontrol'] }, { - name: 'riskMatrices', - fa_icon: 'fa-solid fa-table-cells-large', - href: '/risk-matrices' + name: 'trainingAndEduction', + fa_icon: 'fa-solid fa-graduation-cap', + href: '/policies' + }, + { + name: 'changeManagement', + fa_icon: 'fa-solid fa-wrench', + href: '/policies' + }, + { + name: 'incidentManagement', + fa_icon: 'fa-solid fa-medkit', + href: '/policies' + }, + { + name: 'configurationManagement', + fa_icon: 'fa-solid fa-tasks', + href: '/policies' + }, + { + name: 'patchManagement', + fa_icon: 'fa-solid fa-sitemap', + href: '/policies' + }, + { + name: 'thirdPartyAuditReports', + fa_icon: 'fa-solid fa-table', + href: '/policies' + }, + { + name: 'reports', + fa_icon: 'fa-solid fa-book', + href: '/policies' } ] }, @@ -97,6 +147,11 @@ export const navData = { name: 'riskAcceptances', fa_icon: 'fa-solid fa-user-tie', href: '/risk-acceptances' + }, + { + name: 'riskRegister', + fa_icon: 'fa-solid fa-book', + href: '/risk-acceptances' } ] }, @@ -110,14 +165,9 @@ export const navData = { href: '/compliance-assessments' }, { - name: 'evidences', - fa_icon: 'fa-solid fa-file', - href: '/evidences' - }, - { - name: 'frameworks', - fa_icon: 'fa-solid fa-folder', - href: '/frameworks' + name: 'complianceAuditReports', + fa_icon: 'fa-solid fa-book', + href: '/compliance-assessments' // update path } ] }, @@ -153,7 +203,7 @@ export const navData = { }, { - name: 'extra', + name: 'config', items: [ { name: 'xRays', diff --git a/frontend/src/lib/utils/locales.ts b/frontend/src/lib/utils/locales.ts index 44fa7bb80..1af2cc792 100644 --- a/frontend/src/lib/utils/locales.ts +++ b/frontend/src/lib/utils/locales.ts @@ -62,27 +62,44 @@ export function localItems(languageTag: string): LocalItems { home: m.home({ languageTag: languageTag }), edit: m.edit({ languageTag: languageTag }), overview: m.overview({ languageTag: languageTag }), + dashboard: m.dashboard({ languageTag: languageTag }), context: m.context({ languageTag: languageTag }), + repository: m.repository({ languageTag: languageTag }), governance: m.governance({ languageTag: languageTag }), risk: m.risk({ languageTag: languageTag }), compliance: m.compliance({ languageTag: languageTag }), organization: m.organization({ languageTag: languageTag }), extra: m.extra({ languageTag: languageTag }), + config: m.config({ languageTag: languageTag }), analytics: m.analytics({ languageTag: languageTag }), + birdEye: m.birdEye({ languageTag: languageTag }), calendar: m.calendar({ languageTag: languageTag }), + schedules: m.schedules({ languageTag: languageTag }), threats: m.threats({ languageTag: languageTag }), referenceControls: m.referenceControls({ languageTag: languageTag }), appliedControls: m.appliedControls({ languageTag: languageTag }), + mappedControls: m.mappedControls({ languageTag: languageTag }), assets: m.assets({ languageTag: languageTag }), + assetInventory: m.assetInventory({ languageTag: languageTag }), asset: m.asset({ languageTag: languageTag }), policies: m.policies({ languageTag: languageTag }), + policiesAndProcedures: m.policiesAndProcedures({ languageTag: languageTag }), + trainingAndEduction: m.trainingAndEduction({ languageTag: languageTag }), + changeManagement: m.changeManagement({ languageTag: languageTag }), + incidentManagement: m.incidentManagement({ languageTag: languageTag }), + configurationManagement: m.configurationManagement({ languageTag: languageTag }), + patchManagement: m.patchManagement({ languageTag: languageTag }), + thirdPartyAuditReports: m.thirdPartyAuditReports({ languageTag: languageTag }), + reports: m.reports({ languageTag: languageTag }), riskMatrices: m.riskMatrices({ languageTag: languageTag }), riskAssessments: m.riskAssessments({ languageTag: languageTag }), riskScenarios: m.riskScenarios({ languageTag: languageTag }), riskScenario: m.riskScenario({ languageTag: languageTag }), riskAcceptances: m.riskAcceptances({ languageTag: languageTag }), + riskRegister: m.riskRegister({ languageTag: languageTag }), riskAcceptance: m.riskAcceptance({ languageTag: languageTag }), complianceAssessments: m.complianceAssessments({ languageTag: languageTag }), + complianceAuditReports: m.complianceAuditReports({ languageTag: languageTag }), complianceAssessment: m.complianceAssessment({ languageTag: languageTag }), evidences: m.evidences({ languageTag: languageTag }), evidence: m.evidence({ languageTag: languageTag }), diff --git a/frontend/src/routes/(app)/+page.server.ts b/frontend/src/routes/(app)/+page.server.ts index d139b4b57..c4f739df1 100644 --- a/frontend/src/routes/(app)/+page.server.ts +++ b/frontend/src/routes/(app)/+page.server.ts @@ -2,5 +2,5 @@ import { redirect } from '@sveltejs/kit'; import type { PageServerLoad } from './$types'; export const load: PageServerLoad = async () => { - redirect(301, '/analytics'); + redirect(301, '/bird-eye'); }; diff --git a/frontend/src/routes/(app)/analytics/+layout.svelte b/frontend/src/routes/(app)/bird-eye/+layout.svelte similarity index 100% rename from frontend/src/routes/(app)/analytics/+layout.svelte rename to frontend/src/routes/(app)/bird-eye/+layout.svelte diff --git a/frontend/src/routes/(app)/analytics/+page.server.ts b/frontend/src/routes/(app)/bird-eye/+page.server.ts similarity index 100% rename from frontend/src/routes/(app)/analytics/+page.server.ts rename to frontend/src/routes/(app)/bird-eye/+page.server.ts diff --git a/frontend/src/routes/(app)/analytics/+page.svelte b/frontend/src/routes/(app)/bird-eye/+page.svelte similarity index 99% rename from frontend/src/routes/(app)/analytics/+page.svelte rename to frontend/src/routes/(app)/bird-eye/+page.svelte index 7188c8673..e22a48a1f 100644 --- a/frontend/src/routes/(app)/analytics/+page.svelte +++ b/frontend/src/routes/(app)/bird-eye/+page.svelte @@ -164,7 +164,7 @@ /> diff --git a/frontend/src/routes/(app)/analytics/ComposerSelect.svelte b/frontend/src/routes/(app)/bird-eye/ComposerSelect.svelte similarity index 95% rename from frontend/src/routes/(app)/analytics/ComposerSelect.svelte rename to frontend/src/routes/(app)/bird-eye/ComposerSelect.svelte index 4309472d3..2fdb9b830 100644 --- a/frontend/src/routes/(app)/analytics/ComposerSelect.svelte +++ b/frontend/src/routes/(app)/bird-eye/ComposerSelect.svelte @@ -38,7 +38,7 @@ /> {#if data.risk_assessment && data.risk_assessment.length > 0} {m.processButton()} {:else} diff --git a/frontend/src/routes/(app)/analytics/CounterCard.svelte b/frontend/src/routes/(app)/bird-eye/CounterCard.svelte similarity index 100% rename from frontend/src/routes/(app)/analytics/CounterCard.svelte rename to frontend/src/routes/(app)/bird-eye/CounterCard.svelte diff --git a/frontend/src/routes/(app)/analytics/composer/+page.server.ts b/frontend/src/routes/(app)/bird-eye/composer/+page.server.ts similarity index 100% rename from frontend/src/routes/(app)/analytics/composer/+page.server.ts rename to frontend/src/routes/(app)/bird-eye/composer/+page.server.ts diff --git a/frontend/src/routes/(app)/analytics/composer/+page.svelte b/frontend/src/routes/(app)/bird-eye/composer/+page.svelte similarity index 100% rename from frontend/src/routes/(app)/analytics/composer/+page.svelte rename to frontend/src/routes/(app)/bird-eye/composer/+page.svelte diff --git a/frontend/src/routes/(app)/risk-scenarios/[id=uuid]/edit/+page.svelte b/frontend/src/routes/(app)/risk-scenarios/[id=uuid]/edit/+page.svelte index f5a16442a..180993e78 100644 --- a/frontend/src/routes/(app)/risk-scenarios/[id=uuid]/edit/+page.svelte +++ b/frontend/src/routes/(app)/risk-scenarios/[id=uuid]/edit/+page.svelte @@ -193,7 +193,7 @@ {form} options={getOptions({ objects: data.foreignKeys['assets'] })} field="assets" - label={m.assets()} + label={m.assetInventory()} helpText={m.riskScenarioAssetHelpText()} /> diff --git a/frontend/src/routes/(app)/calendar/+page.server.ts b/frontend/src/routes/(app)/schedules/+page.server.ts similarity index 100% rename from frontend/src/routes/(app)/calendar/+page.server.ts rename to frontend/src/routes/(app)/schedules/+page.server.ts diff --git a/frontend/src/routes/(app)/calendar/+page.svelte b/frontend/src/routes/(app)/schedules/+page.svelte similarity index 87% rename from frontend/src/routes/(app)/calendar/+page.svelte rename to frontend/src/routes/(app)/schedules/+page.svelte index ad3ae46d8..0e39dc413 100644 --- a/frontend/src/routes/(app)/calendar/+page.svelte +++ b/frontend/src/routes/(app)/schedules/+page.svelte @@ -1,5 +1,5 @@ - + diff --git a/frontend/src/routes/(authentication)/login/+page.server.ts b/frontend/src/routes/(authentication)/login/+page.server.ts index 76623ddd5..ab0417c11 100644 --- a/frontend/src/routes/(authentication)/login/+page.server.ts +++ b/frontend/src/routes/(authentication)/login/+page.server.ts @@ -10,7 +10,7 @@ import { setError, superValidate } from 'sveltekit-superforms'; export const load: PageServerLoad = async ({ request, locals }) => { // redirect user if already logged in if (locals.user) { - redirect(302, '/analytics'); + redirect(302, '/bird-eye'); } const form = await superValidate(request, zod(loginSchema)); @@ -63,6 +63,6 @@ export const actions: Actions = { secure: true }); - redirect(302, url.searchParams.get('next') || '/analytics'); + redirect(302, url.searchParams.get('next') || '/bird-eye'); } }; diff --git a/frontend/src/routes/(authentication)/logout/+server.ts b/frontend/src/routes/(authentication)/logout/+server.ts index a21213e76..5e84099ad 100644 --- a/frontend/src/routes/(authentication)/logout/+server.ts +++ b/frontend/src/routes/(authentication)/logout/+server.ts @@ -5,7 +5,7 @@ export const GET = async ({ locals }) => { if (!locals.user) { redirect(302, `/login?next=/home`); } - redirect(302, '/analytics'); + redirect(302, '/bird-eye'); }; export const POST = async ({ fetch, cookies }) => { diff --git a/frontend/tests/functional/detailed/login.test.ts b/frontend/tests/functional/detailed/login.test.ts index f41c56aa3..6a85f8b4d 100644 --- a/frontend/tests/functional/detailed/login.test.ts +++ b/frontend/tests/functional/detailed/login.test.ts @@ -12,7 +12,7 @@ baseTest.skip('login page as expected title', async ({ page }) => { test('login / logout process is working properly', async ({ loginPage, - analyticsPage, + birdEyePage, sideBar, page }) => { @@ -20,7 +20,7 @@ test('login / logout process is working properly', async ({ await expect.soft(page.getByTestId('login')).toBeVisible(); await loginPage.checkForUndefinedText(); await loginPage.login(); - await analyticsPage.hasUrl(); + await birdEyePage.hasUrl(); await sideBar.logout(); }); diff --git a/frontend/tests/functional/nav.test.ts b/frontend/tests/functional/nav.test.ts index 669481ce8..499b38c34 100644 --- a/frontend/tests/functional/nav.test.ts +++ b/frontend/tests/functional/nav.test.ts @@ -2,12 +2,12 @@ import { localItems } from '../../src/lib/utils/locales.js'; import { languageTag, setLanguageTag, availableLanguageTags } from '../../src/paraglide/runtime.js'; import { test, expect, setHttpResponsesListener } from '../utils/test-utils.js'; -test('sidebar navigation tests', async ({ logedPage, analyticsPage, sideBar, page }) => { +test('sidebar navigation tests', async ({ logedPage, birdEyePage, sideBar, page }) => { test.slow(); await test.step('proper redirection to the analytics page after login', async () => { - await analyticsPage.hasUrl(); - await analyticsPage.hasTitle(); + await birdEyePage.hasUrl(); + await birdEyePage.hasTitle(); setHttpResponsesListener(page); }); @@ -59,7 +59,7 @@ test('sidebar navigation tests', async ({ logedPage, analyticsPage, sideBar, pag }); await test.step('translation panel is working properly', async () => { - await analyticsPage.goto(); + await birdEyePage.goto(); const locales = [...availableLanguageTags]; const index = locales.indexOf('en'); if (index !== -1) { diff --git a/frontend/tests/functional/startup.test.ts b/frontend/tests/functional/startup.test.ts index a56fee59e..6ad5eccfc 100644 --- a/frontend/tests/functional/startup.test.ts +++ b/frontend/tests/functional/startup.test.ts @@ -1,15 +1,15 @@ import { test } from '../utils/test-utils.js'; -test('startup tests', async ({ loginPage, analyticsPage, page }) => { +test('startup tests', async ({ loginPage, birdEyePage, page }) => { await test.step('proper redirection to the login page', async () => { await page.goto('/'); await loginPage.hasUrl(1); await loginPage.login(); - await analyticsPage.hasUrl(); + await birdEyePage.hasUrl(); }); await test.step('proper redirection to the analytics page after login', async () => { - await analyticsPage.hasUrl(); - await analyticsPage.hasTitle(); + await birdEyePage.hasUrl(); + await birdEyePage.hasTitle(); }); }); diff --git a/frontend/tests/functional/user-route.test.ts b/frontend/tests/functional/user-route.test.ts index b54321718..14372f29f 100644 --- a/frontend/tests/functional/user-route.test.ts +++ b/frontend/tests/functional/user-route.test.ts @@ -6,15 +6,15 @@ const vars = TestContent.generateTestVars(); test('user usual routine actions are working correctly', async ({ logedPage, pages, - analyticsPage, + birdEyePage, sideBar, page }) => { test.slow(); await test.step('proper redirection to the analytics page after login', async () => { - await analyticsPage.hasUrl(); - await analyticsPage.hasTitle(); + await birdEyePage.hasUrl(); + await birdEyePage.hasTitle(); setHttpResponsesListener(page); }); diff --git a/frontend/tests/utils/analytics-page.ts b/frontend/tests/utils/birdEye-page.ts similarity index 67% rename from frontend/tests/utils/analytics-page.ts rename to frontend/tests/utils/birdEye-page.ts index 96ae82010..e20cb7d34 100644 --- a/frontend/tests/utils/analytics-page.ts +++ b/frontend/tests/utils/birdEye-page.ts @@ -1,9 +1,9 @@ import { expect, type Page } from './test-utils.js'; import { BasePage } from './base-page.js'; -export class AnalyticsPage extends BasePage { +export class BirdEyePage extends BasePage { constructor(public readonly page: Page) { - super(page, '/analytics', 'Analytics'); + super(page, '/bird-eye', 'Bird Eye'); // this.page.goto('/analytics'); } } diff --git a/frontend/tests/utils/test-utils.ts b/frontend/tests/utils/test-utils.ts index d9dfa8232..793fa2dcc 100644 --- a/frontend/tests/utils/test-utils.ts +++ b/frontend/tests/utils/test-utils.ts @@ -1,7 +1,7 @@ import { test as base, expect as baseExpect, type Page } from '@playwright/test'; import { SideBar } from './sidebar.js'; import { LoginPage } from './login-page.js'; -import { AnalyticsPage } from './analytics-page.js'; +import { BirdEyePage } from './birdEye-page.js'; import { PageContent } from './page-content.js'; import { FormFieldType as type } from './form-content.js'; import { Mailer } from './mailer.js'; @@ -14,7 +14,7 @@ type Fixtures = { mailer: Mailer; sideBar: SideBar; pages: { [page: string]: PageContent }; - analyticsPage: AnalyticsPage; + birdEyePage: BirdEyePage; assetsPage: PageContent; complianceAssessmentsPage: PageContent; evidencesPage: PageContent; @@ -90,8 +90,8 @@ export const test = base.extend({ }); }, - analyticsPage: async ({ page }, use) => { - await use(new AnalyticsPage(page)); + birdEyePage: async ({ page }, use) => { + await use(new BirdEyePage(page)); }, complianceAssessmentsPage: async ({ page }, use) => {