Adds comprehensive customers list and management components

Introduces customer-related view components for table and row display
Implements mock data loading and customer list rendering
Adds localization support for customer-related text
Enhances UI with detailed customer information and interactions
This commit is contained in:
Janus C. H. Knudsen 2026-01-21 18:00:53 +01:00
parent cd7acaf490
commit 6ef001e35f
11 changed files with 869 additions and 675 deletions

View file

@ -0,0 +1,172 @@
{
"customers": [
{
"id": "anna-jensen",
"firstName": "Anna",
"lastName": "Jensen",
"initials": "AJ",
"phone": "+45 22 33 44 55",
"email": "anna.j@hotmail.dk",
"visits": 6,
"lastVisit": "2025-11-15",
"preferredHairdresser": "Nina K.",
"createdAt": "2024-09-01",
"tags": [],
"avatarColor": null
},
{
"id": "camilla-holm",
"firstName": "Camilla",
"lastName": "Holm",
"initials": "CH",
"phone": "+45 66 77 88 99",
"email": "camilla.h@outlook.dk",
"visits": 25,
"lastVisit": "2025-10-28",
"preferredHairdresser": "Emma L.",
"createdAt": "2022-12-01",
"tags": ["vip"],
"avatarColor": null
},
{
"id": "emma-larsen",
"firstName": "Emma",
"lastName": "Larsen",
"initials": "EL",
"phone": "+45 12 34 56 78",
"email": "emma.l@gmail.com",
"visits": 8,
"lastVisit": "2025-12-05",
"preferredHairdresser": "Nina K.",
"createdAt": "2024-06-01",
"tags": [],
"avatarColor": null
},
{
"id": "freja-christensen",
"firstName": "Freja",
"lastName": "Christensen",
"initials": "FC",
"phone": "+45 55 66 77 88",
"email": "freja.c@outlook.dk",
"visits": 31,
"lastVisit": "2025-11-20",
"preferredHairdresser": "Emma L.",
"createdAt": "2022-08-01",
"tags": ["vip", "allergi"],
"avatarColor": null
},
{
"id": "ida-andersen",
"firstName": "Ida",
"lastName": "Andersen",
"initials": "IA",
"phone": "+45 11 22 33 44",
"email": "ida@firma.dk",
"visits": 3,
"lastVisit": "2025-11-28",
"preferredHairdresser": "Sofie M.",
"createdAt": "2025-10-01",
"tags": ["ny"],
"avatarColor": null
},
{
"id": "katrine-berg",
"firstName": "Katrine",
"lastName": "Berg",
"initials": "KB",
"phone": "+45 55 66 77 88",
"email": "katrine.b@firma.dk",
"visits": 12,
"lastVisit": "2025-11-01",
"preferredHairdresser": "Nina K.",
"createdAt": "2024-04-01",
"tags": [],
"avatarColor": null
},
{
"id": "line-frost",
"firstName": "Line",
"lastName": "Frost",
"initials": "LF",
"phone": "+45 88 99 00 11",
"email": "line.f@mail.dk",
"visits": 9,
"lastVisit": "2025-10-15",
"preferredHairdresser": "Nina K.",
"createdAt": "2024-05-01",
"tags": ["sensitiv"],
"avatarColor": null
},
{
"id": "louise-hansen",
"firstName": "Louise",
"lastName": "Hansen",
"initials": "LH",
"phone": "+45 33 44 55 66",
"email": "louise.h@gmail.com",
"visits": 18,
"lastVisit": "2025-11-10",
"preferredHairdresser": "Emma L.",
"createdAt": "2023-02-01",
"tags": ["stamkunde"],
"avatarColor": "purple"
},
{
"id": "maja-petersen",
"firstName": "Maja",
"lastName": "Petersen",
"initials": "MP",
"phone": "+45 98 76 54 32",
"email": "maja.p@mail.dk",
"visits": 22,
"lastVisit": "2025-12-01",
"preferredHairdresser": "Emma L.",
"createdAt": "2023-01-01",
"tags": ["stamkunde"],
"avatarColor": "blue"
},
{
"id": "maria-olsen",
"firstName": "Maria",
"lastName": "Olsen",
"initials": "MO",
"phone": "+45 44 55 66 77",
"email": "maria.o@mail.dk",
"visits": 2,
"lastVisit": "2025-11-05",
"preferredHairdresser": "Sofie M.",
"createdAt": "2025-11-01",
"tags": ["ny"],
"avatarColor": "amber"
},
{
"id": "rikke-skov",
"firstName": "Rikke",
"lastName": "Skov",
"initials": "RS",
"phone": "+45 77 88 99 00",
"email": "rikke.s@gmail.com",
"visits": 4,
"lastVisit": "2025-10-20",
"preferredHairdresser": "Sofie M.",
"createdAt": "2025-08-01",
"tags": [],
"avatarColor": null
},
{
"id": "sofie-nielsen",
"firstName": "Sofie",
"lastName": "Nielsen",
"initials": "SN",
"phone": "+45 23 45 67 89",
"email": "sofie@email.dk",
"visits": 14,
"lastVisit": "2025-12-09",
"preferredHairdresser": "Emma L.",
"createdAt": "2024-03-01",
"tags": ["vip"],
"avatarColor": null
}
]
}