+
+
+
+
+
404
-
Oops! Page not found
-
- Return to Home
-
+
+ The page you are looking for doesn't exist or has been moved.
+
+
+
+
+
);
diff --git a/src/utils/mockData.ts b/src/utils/mockData.ts
new file mode 100644
index 0000000..0123278
--- /dev/null
+++ b/src/utils/mockData.ts
@@ -0,0 +1,294 @@
+
+export interface Task {
+ id: string;
+ description: string;
+ department: string;
+ deadline: string;
+ priority: 'High' | 'Medium' | 'Low';
+ status: 'Open' | 'In Progress' | 'Completed';
+ context: string;
+}
+
+// Mock data for demonstration purposes
+export const generateTasks = (documentName: string): Task[] => {
+ // Generate different tasks based on document type/name
+ if (documentName.toLowerCase().includes('gdpr')) {
+ return gdprTasks;
+ } else if (documentName.toLowerCase().includes('hipaa')) {
+ return hipaaTasks;
+ } else if (documentName.toLowerCase().includes('iso')) {
+ return isoTasks;
+ } else if (documentName.toLowerCase().includes('soc')) {
+ return socTasks;
+ } else {
+ // Generic security policy tasks
+ return defaultTasks;
+ }
+};
+
+const gdprTasks: Task[] = [
+ {
+ id: '1',
+ description: 'Implement data subject access request (DSAR) process',
+ department: 'Data Privacy Team',
+ deadline: '2024-09-30',
+ priority: 'High',
+ status: 'Open',
+ context: 'Article 15 - Right of access by the data subject'
+ },
+ {
+ id: '2',
+ description: 'Update privacy policies to be GDPR compliant',
+ department: 'Legal Department',
+ deadline: '2024-08-15',
+ priority: 'High',
+ status: 'Open',
+ context: 'Article 13 - Information to be provided'
+ },
+ {
+ id: '3',
+ description: 'Implement data breach notification procedures',
+ department: 'Security Team',
+ deadline: '2024-10-20',
+ priority: 'High',
+ status: 'Open',
+ context: 'Article 33 - Notification of a personal data breach'
+ },
+ {
+ id: '4',
+ description: 'Conduct GDPR awareness training for all employees',
+ department: 'HR Department',
+ deadline: '2024-11-30',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'Article 39 - Tasks of the data protection officer'
+ },
+ {
+ id: '5',
+ description: 'Implement data minimization principles in all systems',
+ department: 'Engineering Team',
+ deadline: '2024-12-15',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'Article 5 - Principles relating to processing of personal data'
+ },
+ {
+ id: '6',
+ description: 'Appoint a Data Protection Officer (DPO)',
+ department: 'Executive Team',
+ deadline: '2024-07-31',
+ priority: 'High',
+ status: 'Open',
+ context: 'Article 37 - Designation of the data protection officer'
+ },
+ {
+ id: '7',
+ description: 'Create data processing agreement templates',
+ department: 'Legal Department',
+ deadline: '2024-09-15',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'Article 28 - Processor'
+ }
+];
+
+const hipaaTasks: Task[] = [
+ {
+ id: '1',
+ description: 'Implement encryption for all PHI data at rest',
+ department: 'IT Security',
+ deadline: '2024-10-15',
+ priority: 'High',
+ status: 'Open',
+ context: 'HIPAA Security Rule - Technical Safeguards'
+ },
+ {
+ id: '2',
+ description: 'Conduct annual HIPAA risk assessment',
+ department: 'Compliance Officer',
+ deadline: '2024-12-31',
+ priority: 'High',
+ status: 'Open',
+ context: 'HIPAA Security Rule - Administrative Safeguards'
+ },
+ {
+ id: '3',
+ description: 'Update Business Associate Agreements (BAAs)',
+ department: 'Legal Department',
+ deadline: '2024-09-30',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'HIPAA Privacy Rule - Business Associate Contracts'
+ },
+ {
+ id: '4',
+ description: 'Implement audit logging for all PHI access',
+ department: 'IT Security',
+ deadline: '2024-11-30',
+ priority: 'High',
+ status: 'Open',
+ context: 'HIPAA Security Rule - Audit Controls'
+ },
+ {
+ id: '5',
+ description: 'Create and document data backup procedures',
+ department: 'IT Department',
+ deadline: '2024-08-31',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'HIPAA Security Rule - Contingency Plan'
+ }
+];
+
+const isoTasks: Task[] = [
+ {
+ id: '1',
+ description: 'Develop and document Information Security Management System (ISMS)',
+ department: 'Security Team',
+ deadline: '2024-11-30',
+ priority: 'High',
+ status: 'Open',
+ context: 'ISO 27001 - Clause 4'
+ },
+ {
+ id: '2',
+ description: 'Conduct risk assessment and treatment',
+ department: 'Risk Management',
+ deadline: '2024-10-15',
+ priority: 'High',
+ status: 'Open',
+ context: 'ISO 27001 - Clause 6.1'
+ },
+ {
+ id: '3',
+ description: 'Define security roles and responsibilities',
+ department: 'HR Department',
+ deadline: '2024-09-30',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'ISO 27001 - Clause 5.3'
+ },
+ {
+ id: '4',
+ description: 'Establish incident management procedures',
+ department: 'Security Team',
+ deadline: '2024-12-15',
+ priority: 'High',
+ status: 'Open',
+ context: 'ISO 27001 - Annex A.16'
+ },
+ {
+ id: '5',
+ description: 'Implement access control policy',
+ department: 'IT Department',
+ deadline: '2024-10-31',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'ISO 27001 - Annex A.9'
+ }
+];
+
+const socTasks: Task[] = [
+ {
+ id: '1',
+ description: 'Document system boundaries for SOC 2 audit',
+ department: 'Compliance Team',
+ deadline: '2024-09-30',
+ priority: 'High',
+ status: 'Open',
+ context: 'SOC 2 - Common Criteria'
+ },
+ {
+ id: '2',
+ description: 'Implement employee security awareness program',
+ department: 'HR Department',
+ deadline: '2024-10-31',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'SOC 2 - CC1.4'
+ },
+ {
+ id: '3',
+ description: 'Develop change management procedures',
+ department: 'IT Operations',
+ deadline: '2024-11-15',
+ priority: 'High',
+ status: 'Open',
+ context: 'SOC 2 - CC8.1'
+ },
+ {
+ id: '4',
+ description: 'Implement monitoring of system anomalies',
+ department: 'Security Team',
+ deadline: '2024-12-15',
+ priority: 'High',
+ status: 'Open',
+ context: 'SOC 2 - CC7.2'
+ },
+ {
+ id: '5',
+ description: 'Document vendor management process',
+ department: 'Procurement',
+ deadline: '2024-10-15',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'SOC 2 - CC9.2'
+ }
+];
+
+const defaultTasks: Task[] = [
+ {
+ id: '1',
+ description: 'Implement multi-factor authentication for all employees',
+ department: 'IT Security',
+ deadline: '2024-09-30',
+ priority: 'High',
+ status: 'Open',
+ context: 'Section 3.2 - Access Control Policy'
+ },
+ {
+ id: '2',
+ description: 'Update firewall rules to comply with new standards',
+ department: 'Network Security',
+ deadline: '2024-10-15',
+ priority: 'High',
+ status: 'Open',
+ context: 'Section 4.1 - Network Security'
+ },
+ {
+ id: '3',
+ description: 'Conduct quarterly security awareness training',
+ department: 'HR Department',
+ deadline: '2024-11-30',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'Section 7.3 - Security Awareness'
+ },
+ {
+ id: '4',
+ description: 'Review and update incident response plan',
+ department: 'Security Team',
+ deadline: '2024-12-15',
+ priority: 'Medium',
+ status: 'Open',
+ context: 'Section 9.2 - Incident Management'
+ },
+ {
+ id: '5',
+ description: 'Perform vulnerability scanning on all production systems',
+ department: 'Security Team',
+ deadline: '2024-08-31',
+ priority: 'High',
+ status: 'Open',
+ context: 'Section 5.4 - Vulnerability Management'
+ },
+ {
+ id: '6',
+ description: 'Implement data loss prevention (DLP) solution',
+ department: 'IT Security',
+ deadline: '2024-10-31',
+ priority: 'High',
+ status: 'Open',
+ context: 'Section 6.1 - Data Protection'
+ }
+];
diff --git a/tailwind.config.ts b/tailwind.config.ts
index 8706086..d0dee78 100644
--- a/tailwind.config.ts
+++ b/tailwind.config.ts
@@ -1,3 +1,4 @@
+
import type { Config } from "tailwindcss";
export default {
@@ -63,6 +64,9 @@ export default {
ring: 'hsl(var(--sidebar-ring))'
}
},
+ fontFamily: {
+ sans: ['Inter', 'system-ui', 'sans-serif'],
+ },
borderRadius: {
lg: 'var(--radius)',
md: 'calc(var(--radius) - 2px)',
@@ -84,11 +88,31 @@ export default {
to: {
height: '0'
}
+ },
+ 'fade-in': {
+ '0%': { opacity: '0' },
+ '100%': { opacity: '1' }
+ },
+ 'fade-up': {
+ '0%': { opacity: '0', transform: 'translateY(10px)' },
+ '100%': { opacity: '1', transform: 'translateY(0)' }
+ },
+ 'pulse-subtle': {
+ '0%, 100%': { opacity: '1' },
+ '50%': { opacity: '0.8' }
+ },
+ 'scale-in': {
+ '0%': { transform: 'scale(0.9)', opacity: '0' },
+ '100%': { transform: 'scale(1)', opacity: '1' }
}
},
animation: {
'accordion-down': 'accordion-down 0.2s ease-out',
- 'accordion-up': 'accordion-up 0.2s ease-out'
+ 'accordion-up': 'accordion-up 0.2s ease-out',
+ 'fade-in': 'fade-in 0.5s ease-out',
+ 'fade-up': 'fade-up 0.5s ease-out',
+ 'pulse-subtle': 'pulse-subtle 2s ease-in-out infinite',
+ 'scale-in': 'scale-in 0.2s ease-out'
}
}
},