Lisans dağıtım işlemleri detayları.
);
};
-export default LicenseDistributionPage;
+export default LicenseDistributionPage;
\ No newline at end of file
diff --git a/src/pages/Distributor/OrderManagementPage.js b/src/pages/Distributor/OrderManagementPage.js
index 36bd9bd..a8ca97f 100644
--- a/src/pages/Distributor/OrderManagementPage.js
+++ b/src/pages/Distributor/OrderManagementPage.js
@@ -1,12 +1,170 @@
import React from 'react';
-
+import './dashboard.css';
const OrderManagementPage = () => {
+ const orderStats = [
+ { label: 'Total Orders', value: '328', change: '+15%' },
+ { label: 'Pending Orders', value: '24', change: '-3%' },
+ { label: 'Completed Orders', value: '289', change: '+18%' },
+ { label: 'Avg. Processing Time', value: '2.4 days', change: '-0.5' },
+ ];
+
+ const recentOrders = [
+ { id: 'ORD-2023-1056', customer: 'ABC Corp', product: 'Business Suite', amount: '$1,200', date: '2023-05-15', status: 'Processing' },
+ { id: 'ORD-2023-1055', customer: 'XYZ Ltd', product: 'Security Pro', amount: '$850', date: '2023-05-14', status: 'Shipped' },
+ { id: 'ORD-2023-1054', customer: 'Acme Inc', product: 'Design Master', amount: '$650', date: '2023-05-13', status: 'Completed' },
+ { id: 'ORD-2023-1053', customer: 'Global Tech', product: 'Business Suite', amount: '$2,400', date: '2023-05-12', status: 'Completed' },
+ ];
+
return (
-
-
Sipariş Yönetimi
-
Sipariş yönetimi ile ilgili içerikler.
+
+
Order Management System
+
+
+ {orderStats.map((stat, index) => (
+
+
{stat.value}
+
{stat.label}
+
+ {stat.change.startsWith('-') ? stat.change : `+${stat.change}`} from last month
+
+
+ ))}
+
+
+
+
Recent Orders
+
+
+
+
+
+
+
+
+ Order ID |
+ Customer |
+ Product |
+ Amount |
+ Date |
+ Status |
+ Actions |
+
+
+
+ {recentOrders.map((order, index) => (
+
+ {order.id} |
+ {order.customer} |
+ {order.product} |
+ {order.amount} |
+ {order.date} |
+
+
+ {order.status}
+
+ |
+
+
+
+ {order.status === 'Processing' && (
+
+ )}
+ |
+
+ ))}
+
+
+
+
+
+
+
Order Fulfillment Workflow
+
+
+
1
+
Order Received
+
Customer places order
+
+
+
2
+
Processing
+
Verification & preparation
+
+
+
3
+
License Generation
+
Create & validate license
+
+
+
4
+
Delivery
+
Send to customer
+
+
+
);
};
-export default OrderManagementPage;
+export default OrderManagementPage;
\ No newline at end of file
diff --git a/src/pages/Distributor/PaymentBillingPage.js b/src/pages/Distributor/PaymentBillingPage.js
index 1ce78bd..dec527b 100644
--- a/src/pages/Distributor/PaymentBillingPage.js
+++ b/src/pages/Distributor/PaymentBillingPage.js
@@ -1,12 +1,164 @@
import React from 'react';
-
+import './dashboard.css';
const PaymentBillingPage = () => {
+ const paymentStats = [
+ { label: 'Total Revenue', value: '$86,450', change: '+12%' },
+ { label: 'Pending Payments', value: '$5,720', change: '-3%' },
+ { label: 'Avg. Payment Time', value: '2.1 days', change: '-0.3' },
+ { label: 'Successful Transactions', value: '94.7%', change: '+1.2%' },
+ ];
+
+ const recentTransactions = [
+ { id: 'TXN-58741', invoice: 'INV-2023-1056', amount: '$1,200', date: '2023-05-15', method: 'Credit Card', status: 'Completed' },
+ { id: 'TXN-58740', invoice: 'INV-2023-1055', amount: '$850', date: '2023-05-14', method: 'PayPal', status: 'Completed' },
+ { id: 'TXN-58739', invoice: 'INV-2023-1054', amount: '$650', date: '2023-05-13', method: 'Bank Transfer', status: 'Pending' },
+ { id: 'TXN-58738', invoice: 'INV-2023-1053', amount: '$2,400', date: '2023-05-12', method: 'Credit Card', status: 'Failed' },
+ ];
+
+ const upcomingInvoices = [
+ { invoice: 'INV-2023-1057', client: 'ABC Corp', amount: '$1,500', dueDate: '2023-05-20', status: 'Unpaid' },
+ { invoice: 'INV-2023-1058', client: 'XYZ Ltd', amount: '$950', dueDate: '2023-05-21', status: 'Unpaid' },
+ { invoice: 'INV-2023-1059', client: 'Acme Inc', amount: '$2,100', dueDate: '2023-05-22', status: 'Unpaid' },
+ ];
+
return (
-
-
Ödeme & Fatura
-
Ödeme ve fatura işlemleri bilgileri.
+
+
Payment & Billing Management
+
+
+ {paymentStats.map((stat, index) => (
+
+
{stat.value}
+
{stat.label}
+
+ {stat.change.startsWith('-') ? stat.change : `+${stat.change}`} from last month
+
+
+ ))}
+
+
+
+
Recent Transactions
+
+
+
+
+
+
+
+
+ Transaction ID |
+ Invoice |
+ Amount |
+ Date |
+ Method |
+ Status |
+ Actions |
+
+
+
+ {recentTransactions.map((txn, index) => (
+
+ {txn.id} |
+ {txn.invoice} |
+ {txn.amount} |
+ {txn.date} |
+ {txn.method} |
+
+
+ {txn.status}
+
+ |
+
+
+ {txn.status === 'Pending' && (
+
+ )}
+ {txn.status === 'Failed' && (
+
+ )}
+ |
+
+ ))}
+
+
+
+
+
+
+
Upcoming Invoices
+
+
+
+
+ Invoice |
+ Client |
+ Amount |
+ Due Date |
+ Status |
+ Actions |
+
+
+
+ {upcomingInvoices.map((invoice, index) => (
+
+ {invoice.invoice} |
+ {invoice.client} |
+ {invoice.amount} |
+ {invoice.dueDate} |
+
+
+ {invoice.status}
+
+ |
+
+
+
+ |
+
+ ))}
+
+
+
+
+
+
+
Revenue Analytics
+
+ {/* This would be replaced with an actual chart component */}
+
+ [Revenue Chart - Monthly Trends by Payment Method]
+
+
+
);
};
-export default PaymentBillingPage;
+export default PaymentBillingPage;
\ No newline at end of file
diff --git a/src/pages/Distributor/RetailerFeedbackPage.js b/src/pages/Distributor/RetailerFeedbackPage.js
index ca495b8..d497f37 100644
--- a/src/pages/Distributor/RetailerFeedbackPage.js
+++ b/src/pages/Distributor/RetailerFeedbackPage.js
@@ -1,12 +1,188 @@
import React from 'react';
-
+import './dashboard.css';
const RetailerFeedbackPage = () => {
+ const feedbackStats = [
+ { label: 'Total Feedback', value: '142', change: '+8%' },
+ { label: 'Average Rating', value: '4.2/5', change: '+0.1' },
+ { label: 'Positive Feedback', value: '87%', change: '+3%' },
+ { label: 'Response Rate', value: '92%', change: '+2%' },
+ ];
+
+ const recentFeedback = [
+ { id: 'FB-1056', retailer: 'Tech Haven', rating: 5, comment: 'Excellent service and fast response times!', date: '2023-05-15', status: 'Responded' },
+ { id: 'FB-1055', retailer: 'Digital World', rating: 4, comment: 'Good products but delivery could be faster', date: '2023-05-14', status: 'Pending' },
+ { id: 'FB-1054', retailer: 'Software Plus', rating: 3, comment: 'Had some issues with license activation', date: '2023-05-13', status: 'In Progress' },
+ { id: 'FB-1053', retailer: 'CompuZone', rating: 5, comment: 'Best software distributor we work with', date: '2023-05-12', status: 'Responded' },
+ ];
+
+ const ratingDistribution = [
+ { stars: 5, count: 85, percent: 60 },
+ { stars: 4, count: 32, percent: 22 },
+ { stars: 3, count: 15, percent: 10 },
+ { stars: 2, count: 6, percent: 4 },
+ { stars: 1, count: 4, percent: 3 },
+ ];
+
return (
-
-
Perakende Geri Bildirim
-
Perakende ile gelen geri bildirimler.
+
+
Retailer Feedback Management
+
+
+ {feedbackStats.map((stat, index) => (
+
+
{stat.value}
+
{stat.label}
+
+ {stat.change} from last month
+
+
+ ))}
+
+
+
+
Recent Feedback
+
+
+
+
+
+
+
+
+ Feedback ID |
+ Retailer |
+ Rating |
+ Comment |
+ Date |
+ Status |
+ Actions |
+
+
+
+ {recentFeedback.map((feedback, index) => (
+
+ {feedback.id} |
+ {feedback.retailer} |
+
+
+ {[...Array(5)].map((_, i) => (
+ ★
+ ))}
+
+ |
+ {feedback.comment} |
+ {feedback.date} |
+
+
+ {feedback.status}
+
+ |
+
+
+ {feedback.status !== 'Responded' && (
+
+ )}
+ |
+
+ ))}
+
+
+
+
+
+
+
+
Rating Distribution
+
+ {ratingDistribution.map((item, index) => (
+
+
+
+ {[...Array(item.stars)].map((_, i) => (
+ ★
+ ))}
+
+ {item.count} ({item.percent}%)
+
+
+
+ ))}
+
+
+
+
+
Feedback Response
+
+ {/* This would be replaced with an actual chart component */}
+
+ [Response Time and Satisfaction Chart]
+
+
+
+
+
+
6.2h
+
Avg. Response Time
+
+
+
87%
+
Satisfaction After Response
+
+
+
+
);
};
-export default RetailerFeedbackPage;
+export default RetailerFeedbackPage;
\ No newline at end of file
diff --git a/src/pages/Distributor/SalesPerformancePage.js b/src/pages/Distributor/SalesPerformancePage.js
index 3b107c8..b156216 100644
--- a/src/pages/Distributor/SalesPerformancePage.js
+++ b/src/pages/Distributor/SalesPerformancePage.js
@@ -1,12 +1,84 @@
+// SalesPerformancePage.jsx
import React from 'react';
+import { Line } from 'react-chartjs-2';
+import { Chart as ChartJS } from 'chart.js/auto';
const SalesPerformancePage = () => {
+ const salesData = {
+ labels: ['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran'],
+ datasets: [
+ {
+ label: 'Aylık Satışlar (TL)',
+ data: [65000, 59000, 80000, 81000, 56000, 95000],
+ borderColor: '#4A90E2',
+ tension: 0.4,
+ },
+ ],
+ };
+
+ const regionalSales = {
+ 'İstanbul': 45,
+ 'Ankara': 25,
+ 'İzmir': 15,
+ 'Diğer': 15
+ };
+
return (
-
-
Satış Performansı
-
Satış performans analizleri burada.
+
+
Satış Performansı
+
+
+
+
Aylık Satış Trendi
+
+
+
+
+
Bölgesel Dağılım
+
+ {Object.entries(regionalSales).map(([region, percent]) => (
+
+
+ {region}
+ {percent}%
+
+
+
+ ))}
+
+
+
+
+
Son İşlemler
+
+
+
+ Tarih |
+ Ürün |
+ Miktar |
+ Durum |
+
+
+
+ {[...Array(5)].map((_, i) => (
+
+ 2023-0{i+1}-15 |
+ Yazılım Paketi {i+1} |
+ {(i+1)*1450} TL |
+ Tamamlandı |
+
+ ))}
+
+
+
+
);
};
-export default SalesPerformancePage;
+export default SalesPerformancePage;
\ No newline at end of file
diff --git a/src/pages/Distributor/SalesReportsPage.js b/src/pages/Distributor/SalesReportsPage.js
index 4ed6417..2a28a00 100644
--- a/src/pages/Distributor/SalesReportsPage.js
+++ b/src/pages/Distributor/SalesReportsPage.js
@@ -1,12 +1,90 @@
-import React from 'react';
+// SalesReportsPage.jsx
+import React, { useState } from 'react';
const SalesReportsPage = () => {
+ const [filters, setFilters] = useState({
+ dateRange: 'month',
+ productCategory: 'all',
+ region: 'all'
+ });
+
+ const reports = [...Array(8)].map((_, i) => ({
+ id: i+1,
+ date: `2023-Q${Math.floor(i/2)+1}`,
+ product: `Ürün Kategorisi ${i%3+1}`,
+ region: ['İstanbul', 'Ankara', 'İzmir'][i%3],
+ total: (i+1)*17500,
+ status: ['pending', 'completed'][i%2]
+ }));
+
return (
-
-
Satış Raporları
-
Satış raporlarına ait detaylar.
+
+
Satış Raporları
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Çeyrek |
+ Ürün Kategorisi |
+ Bölge |
+ Toplam Satış |
+ Durum |
+ İşlemler |
+
+
+
+ {reports.map(report => (
+
+ {report.date} |
+ {report.product} |
+ {report.region} |
+ {report.total.toLocaleString()} TL |
+
+
+ {report.status === 'completed' ? 'Tamamlandı' : 'Beklemede'}
+
+ |
+
+
+
+ |
+
+ ))}
+
+
+
);
};
-export default SalesReportsPage;
+export default SalesReportsPage;
\ No newline at end of file
diff --git a/src/pages/Distributor/StockCampaignManagementPage.js b/src/pages/Distributor/StockCampaignManagementPage.js
index 2d792a8..62b4129 100644
--- a/src/pages/Distributor/StockCampaignManagementPage.js
+++ b/src/pages/Distributor/StockCampaignManagementPage.js
@@ -1,12 +1,106 @@
-import React from 'react';
+// StockCampaignManagementPage.jsx
+import React, { useState } from 'react';
const StockCampaignManagementPage = () => {
+ const [stock] = useState([
+ { id: 1, product: 'ERP Pro Lisans', stock: 45, threshold: 50 },
+ { id: 2, product: 'Bulut Depolama 100GB', stock: 23, threshold: 30 },
+ { id: 3, product: 'E-Ticaret Entegrasyon', stock: 12, threshold: 20 }
+ ]);
+
+ const [campaigns, setCampaigns] = useState([
+ { id: 1, name: 'Yazılım Paket İndirimi', status: 'active', discount: 15 },
+ { id: 2, name: 'Bulut Depolama Kampanyası', status: 'planned', discount: 20 }
+ ]);
+
+ const [newCampaign, setNewCampaign] = useState({
+ name: '',
+ discount: '',
+ startDate: '',
+ endDate: ''
+ });
+
+ const handleAddCampaign = (e) => {
+ e.preventDefault();
+ // Kampanya ekleme mantığı
+ };
+
return (
-
-
Stok & Kampanya Yönetimi
-
Stok ve kampanya yönetimi bilgileri.
+
+
Stok & Kampanya Yönetimi
+
+
+
+
Stok Durumu
+
+ {stock.map(item => (
+
+
+ {item.product}
+
+ {item.stock} Adet
+
+
+
+
+ ))}
+
+
+
+
+
Aktif Kampanyalar
+
+ {campaigns.map(campaign => (
+
+
+
{campaign.name}
+
+
+
+ İndirim: %{campaign.discount}
+ Durum: {campaign.status === 'active' ? 'Aktif' : 'Planlanan'}
+
+
+ ))}
+
+
+
+
+
);
};
-export default StockCampaignManagementPage;
+export default StockCampaignManagementPage;
\ No newline at end of file
diff --git a/src/pages/Distributor/dashboard.css b/src/pages/Distributor/dashboard.css
new file mode 100644
index 0000000..e97a5bb
--- /dev/null
+++ b/src/pages/Distributor/dashboard.css
@@ -0,0 +1,298 @@
+/* styles/dashboard.css */
+.dashboard-container {
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
+ max-width: 1200px;
+ margin: 0 auto;
+ padding: 20px;
+ }
+
+ .dashboard-header {
+ color: #2c3e50;
+ border-bottom: 2px solid #3498db;
+ padding-bottom: 10px;
+ margin-bottom: 30px;
+ }
+
+ .dashboard-card {
+ background: white;
+ border-radius: 8px;
+ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
+ padding: 20px;
+ margin-bottom: 30px;
+ }
+
+ .card-title {
+ color: #2980b9;
+ margin-top: 0;
+ }
+
+ .stats-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
+ gap: 20px;
+ margin-bottom: 20px;
+ }
+
+ .stat-card {
+ background: #f8f9fa;
+ padding: 15px;
+ border-radius: 6px;
+ border-left: 4px solid #3498db;
+ }
+
+ .stat-value {
+ font-size: 24px;
+ font-weight: bold;
+ color: #2c3e50;
+ }
+
+ .stat-label {
+ color: #7f8c8d;
+ font-size: 14px;
+ }
+
+ .table-container {
+ overflow-x: auto;
+ }
+
+ .data-table {
+ width: 100%;
+ border-collapse: collapse;
+ margin-top: 20px;
+ }
+
+ .data-table th {
+ background-color: #3498db;
+ color: white;
+ padding: 12px;
+ text-align: left;
+ }
+
+ .data-table td {
+ padding: 10px 12px;
+ border-bottom: 1px solid #ecf0f1;
+ }
+
+ .data-table tr:hover {
+ background-color: #f8f9fa;
+ }
+
+ .action-btn {
+ background-color: #3498db;
+ color: white;
+ border: none;
+ padding: 8px 12px;
+ border-radius: 4px;
+ cursor: pointer;
+ margin-right: 5px;
+ font-size: 14px;
+ }
+
+ .action-btn.secondary {
+ background-color: #95a5a6;
+ }
+
+ .action-btn.danger {
+ background-color: #e74c3c;
+ }
+
+ .action-btn:hover {
+ opacity: 0.9;
+ }
+
+ .chart-container {
+ height: 300px;
+ margin: 20px 0;
+ }
+
+ .search-filter {
+ display: flex;
+ justify-content: space-between;
+ margin-bottom: 20px;
+ }
+
+ .search-box {
+ padding: 10px;
+ border: 1px solid #ddd;
+ border-radius: 4px;
+ width: 300px;
+ }
+
+ .filter-select {
+ padding: 10px;
+ border: 1px solid #ddd;
+ border-radius: 4px;
+ background: white;
+ }
+
+
+
+
+ .page-title {
+ color: #2c3e50;
+ border-bottom: 3px solid #4A90E2;
+ padding-bottom: 0.5rem;
+ margin-bottom: 2rem;
+ }
+
+ .grid-container {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
+ gap: 2rem;
+ }
+
+ .chart-card, .metrics-card {
+ background: white;
+ padding: 1.5rem;
+ border-radius: 10px;
+ box-shadow: 0 2px 15px rgba(0,0,0,0.1);
+ }
+
+ .recent-sales table {
+ width: 100%;
+ border-collapse: collapse;
+ margin-top: 1rem;
+ }
+
+ th, td {
+ text-align: left;
+ padding: 12px;
+ border-bottom: 1px solid #eee;
+ }
+
+ .status {
+ display: inline-block;
+ padding: 5px 12px;
+ border-radius: 20px;
+ font-size: 0.85rem;
+ }
+
+ .status.completed {
+ background: #e8f5e9;
+ color: #2e7d32;
+ }
+
+ .progress-bar {
+ height: 8px;
+ background: #eee;
+ border-radius: 4px;
+ overflow: hidden;
+ }
+
+ .progress-fill {
+ height: 100%;
+ background: #4A90E2;
+ transition: width 0.3s ease;
+ }
+
+ /* Sales Reports Specific */
+ .report-filters {
+ display: flex;
+ gap: 1rem;
+ margin-bottom: 2rem;
+ }
+
+ .report-filters select {
+ padding: 8px 12px;
+ border: 1px solid #ddd;
+ border-radius: 5px;
+ background: white;
+ }
+
+ .export-btn {
+ padding: 6px 12px;
+ border: none;
+ border-radius: 5px;
+ margin: 2px;
+ cursor: pointer;
+ }
+
+ .export-btn.pdf { background: #ff4757; color: white; }
+ .export-btn.excel { background: #2ed573; color: white; }
+
+ /* Stock & Campaign Management */
+ .management-container {
+ display: grid;
+ grid-template-columns: 1fr 1.5fr;
+ gap: 2rem;
+ }
+
+ .stock-item {
+ background: white;
+ padding: 1rem;
+ margin-bottom: 1rem;
+ border-radius: 8px;
+ box-shadow: 0 2px 10px rgba(0,0,0,0.05);
+ }
+
+ .stock-quantity.low { color: #e74c3c; }
+
+ .campaign-card {
+ background: white;
+ padding: 1rem;
+ margin-bottom: 1rem;
+ border-left: 4px solid;
+ border-radius: 6px;
+ }
+
+ .campaign-card.active { border-color: #4A90E2; }
+ .campaign-card.planned { border-color: #f1c40f; }
+
+ .campaign-form {
+ background: #f9f9f9;
+ padding: 1.5rem;
+ border-radius: 8px;
+ margin-top: 2rem;
+ }
+
+ .campaign-form input {
+ display: block;
+ width: 100%;
+ padding: 8px;
+ margin: 8px 0;
+ border: 1px solid #ddd;
+ }
+
+ .add-button {
+ background: #4A90E2;
+ color: white;
+ padding: 10px 20px;
+ border: none;
+ border-radius: 5px;
+ cursor: pointer;
+ margin-top: 1rem;
+ }
+
+ @media (max-width: 768px) {
+ .management-container {
+ grid-template-columns: 1fr;
+ }
+
+ .grid-container {
+ grid-template-columns: 1fr;
+ }
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/pages/LoginPage.js b/src/pages/LoginPage.js
index ce26156..eb80e0a 100644
--- a/src/pages/LoginPage.js
+++ b/src/pages/LoginPage.js
@@ -12,31 +12,31 @@ const LoginPage = ({ onLogin }) => {
};
return (
-
-
-
Software License Dashboard
-
+
+
+
Software License Dashboard
+
@@ -46,4 +46,78 @@ const LoginPage = ({ onLogin }) => {
);
};
-export default LoginPage;
\ No newline at end of file
+const styles = {
+ loginContainer: {
+ minHeight: '100vh',
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ background: 'linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%)',
+ padding: '20px',
+ },
+ loginBox: {
+ background: 'rgba(255, 255, 255, 0.95)',
+ padding: '2.5rem',
+ borderRadius: '15px',
+ boxShadow: '0 8px 30px rgba(0, 0, 0, 0.12)',
+ width: '100%',
+ maxWidth: '400px',
+ position: 'relative',
+ overflow: 'hidden',
+ animation: 'fadeInUp 0.6s ease',
+ },
+ loginTitle: {
+ fontSize: '1.8rem',
+ fontWeight: 700,
+ color: '#2d3748',
+ textAlign: 'center',
+ marginBottom: '2rem',
+ position: 'relative',
+ },
+ buttonContainer: {
+ display: 'flex',
+ flexDirection: 'column',
+ gap: '1rem',
+ },
+ loginButton: {
+ width: '100%',
+ padding: '0.8rem',
+ border: 'none',
+ borderRadius: '8px',
+ fontSize: '1rem',
+ fontWeight: '500',
+ cursor: 'pointer',
+ transition: 'all 0.3s ease',
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ gap: '0.5rem',
+ position: 'relative',
+ overflow: 'hidden',
+ },
+ loginButtonHover: {
+ transform: 'translateY(-2px)',
+ boxShadow: '0 4px 6px rgba(0, 0, 0, 0.1)',
+ },
+ loginButtonActive: {
+ transform: 'translateY(0)',
+ },
+ admin: {
+ background: '#4299e1',
+ color: 'white',
+ },
+ distributor: {
+ background: '#48bb78',
+ color: 'white',
+ },
+ retailer: {
+ background: '#9f7aea',
+ color: 'white',
+ },
+ customer: {
+ background: '#ed8936',
+ color: 'white',
+ },
+};
+
+export default LoginPage;
diff --git a/src/roles/DistributorRoutes.js b/src/roles/DistributorRoutes.js
index 9557b7b..ff4bd1e 100644
--- a/src/roles/DistributorRoutes.js
+++ b/src/roles/DistributorRoutes.js
@@ -15,7 +15,7 @@ const DistributorRoutes = () => {
} />
} />
} />
- } />
+ } />
} />
} />
} />