// data.jsx — Mock data for the inbox prototype
// All chats represent Instagram DMs to the @tattoofashion_landshut account.

const NOW = Date.now();
const min = (n) => n * 60 * 1000;
const hr = (n) => n * 60 * 60 * 1000;
const day = (n) => n * 24 * 60 * 60 * 1000;

// Avatar gradients (used as fallback when no profile pic)
const avatarGradient = (seed) => {
  const palettes = [
    ['#5b3a8a', '#a5429b'],
    ['#3a6e8a', '#5cc2c4'],
    ['#8a5a3a', '#d4a84b'],
    ['#3a8a5e', '#9bd474'],
    ['#8a3a5a', '#d44b87'],
    ['#3a4d8a', '#5c87d4'],
    ['#5a3a8a', '#8a3a8a'],
    ['#8a7a3a', '#d4c84b'],
    ['#3a8a8a', '#4bd4d4'],
  ];
  const p = palettes[seed % palettes.length];
  return `linear-gradient(135deg, ${p[0]}, ${p[1]})`;
};

const initialsFor = (name) => {
  const parts = name.split(/\s+/).filter(Boolean);
  return (parts[0]?.[0] || '') + (parts[1]?.[0] || '');
};

const initialChats = [
  {
    id: 'c1',
    name: 'Lena Kowalski',
    handle: 'lena.koww',
    avatarSeed: 0,
    online: true,
    unread: 2,
    aiEnabled: true,
    aiPaused: false,
    tags: ['Booking-Anfrage', 'Fineline'],
    customer: { firstSeen: '12.03.2025', city: 'Landshut', followers: '2.4K' },
    messages: [
      { id: 1, from: 'them', text: 'Hey 🖤 ich überlege schon länger, mir ein kleines Fineline-Tattoo am Schlüsselbein machen zu lassen', t: NOW - hr(3) - min(12) },
      { id: 2, from: 'them', text: 'Hättet ihr da freie Termine in den nächsten 2-3 Wochen?', t: NOW - hr(3) - min(11) },
      { id: 3, from: 'us', author: 'ai', text: 'Hi Lena! Schön, dass du an uns denkst 🌹 Für Fineline arbeiten Sara und Marco bei uns. In den nächsten 2-3 Wochen wäre noch was möglich. Hättest du schon ein Motiv im Kopf? Wenn du mir ein Referenzbild + ungefähre Größe schickst, kann ich das gleich an die richtige Künstlerin weiterleiten.', t: NOW - hr(3) - min(10) },
      { id: 4, from: 'them', text: 'Ja, eine Mondsichel mit ein paar Sternen drumherum, ca. 6-8cm', t: NOW - min(45) },
      { id: 5, from: 'them', image: 'https://images.unsplash.com/photo-1565967511849-76a60a516170?w=500&q=80', t: NOW - min(44) },
    ],
  },
  {
    id: 'c2',
    name: 'Maximilian R.',
    handle: 'max_inkd',
    avatarSeed: 1,
    online: false,
    unread: 0,
    aiEnabled: false,
    aiPaused: true,
    pauseReason: 'Marco hat geantwortet · vor 18 Min.',
    tags: ['Realismus', 'Sleeve'],
    customer: { firstSeen: '04.11.2024', city: 'Regensburg', followers: '380' },
    messages: [
      { id: 1, from: 'them', text: 'Servus, wollte mal fragen wie weit Marco mit den Sleeve-Designs ist. Wir hatten beim letzten Termin gesagt er meldet sich diese Woche', t: NOW - hr(2) },
      { id: 2, from: 'us', author: 'ai', text: 'Hey Max! Ich leite das direkt an Marco weiter, er meldet sich heute noch bei dir. Falls es dringend ist, kannst du auch jederzeit im Studio anrufen: 0871 / 12345.', t: NOW - hr(2) + min(1) },
      { id: 3, from: 'them', text: 'Top, danke!', t: NOW - hr(1) - min(40) },
      { id: 4, from: 'us', author: 'staff', authorName: 'Marco', text: 'Yo Max! Hab gestern Nacht noch zwei Varianten fertig gemacht. Kommen heute Abend per Mail, dann kannst du in Ruhe schauen 🤘', t: NOW - min(18) },
    ],
  },
  {
    id: 'c3',
    name: 'Anna Berger',
    handle: 'annaaa.berger',
    avatarSeed: 2,
    online: true,
    unread: 1,
    aiEnabled: true,
    aiPaused: false,
    tags: ['Preisfrage'],
    customer: { firstSeen: '02.05.2026', city: 'Landshut', followers: '5.1K' },
    messages: [
      { id: 1, from: 'them', text: 'hey was kostet bei euch ungefähr ein kleines tattoo am handgelenk? ca 4cm', t: NOW - min(8) },
    ],
  },
  {
    id: 'c4',
    name: 'Tobias Schmidt',
    handle: 'tobi.schmidt',
    avatarSeed: 3,
    online: false,
    unread: 0,
    aiEnabled: true,
    aiPaused: false,
    tags: ['Cover-Up'],
    customer: { firstSeen: '15.01.2025', city: 'München', followers: '892' },
    messages: [
      { id: 1, from: 'them', text: 'Moin, ich hätte ein altes Tribal das ich gerne covern lassen würde. Macht ihr sowas?', t: NOW - hr(5) },
      { id: 2, from: 'them', image: 'https://images.unsplash.com/photo-1565058379802-bbe93b2f703a?w=400&q=80', t: NOW - hr(5) + min(1) },
      { id: 3, from: 'us', author: 'ai', text: 'Hi Tobias! Cover-Ups sind absolut unsere Welt 🔥 Das auf dem Bild ist mit etwas Schwarz und einer kräftigen Komposition gut machbar. Sandro hat sich auf Cover-Ups spezialisiert. Möchtest du einen kostenlosen Beratungstermin im Studio?', t: NOW - hr(4) - min(58) },
      { id: 4, from: 'them', text: 'Ja gerne, am liebsten Samstag', t: NOW - hr(4) - min(50) },
      { id: 5, from: 'us', author: 'ai', text: 'Perfekt! Sandro hat Samstag den 9.5. um 15:00 oder 16:30 frei. Welcher Slot passt dir?', t: NOW - hr(4) - min(48) },
    ],
  },
  {
    id: 'c5',
    name: 'Julia Hoffmann',
    handle: 'jul.hoff',
    avatarSeed: 4,
    online: false,
    unread: 0,
    aiEnabled: true,
    aiPaused: false,
    tags: ['Termin'],
    customer: { firstSeen: '20.07.2024', city: 'Landshut', followers: '1.2K' },
    messages: [
      { id: 1, from: 'them', text: 'Mein Termin ist morgen um 14 Uhr, richtig?', t: NOW - day(1) - hr(2) },
      { id: 2, from: 'us', author: 'ai', text: 'Hey Julia! Ja genau, morgen 14:00 bei Sara. Wir freuen uns 🌟 Bring bitte was Süßes zu trinken & einen Snack mit, wir sitzen ca. 3h.', t: NOW - day(1) - hr(2) + min(1) },
      { id: 3, from: 'them', text: 'Perfekt, bis morgen!', t: NOW - day(1) - hr(1) },
    ],
  },
  {
    id: 'c6',
    name: 'Florian K.',
    handle: 'flo_k_91',
    avatarSeed: 5,
    online: false,
    unread: 0,
    aiEnabled: true,
    aiPaused: false,
    tags: ['Info'],
    customer: { firstSeen: '08.09.2025', city: 'Dingolfing', followers: '210' },
    messages: [
      { id: 1, from: 'them', text: 'Habt ihr am 1.5. offen?', t: NOW - day(2) },
      { id: 2, from: 'us', author: 'ai', text: 'Hey Flo, am 1.5. (Tag der Arbeit) ist das Studio geschlossen. Ab dem 2.5. sind wir wieder normal von 11-19 Uhr für dich da!', t: NOW - day(2) + min(1) },
    ],
  },
  {
    id: 'c7',
    name: 'Sophie Werner',
    handle: 'sophiew.art',
    avatarSeed: 6,
    online: true,
    unread: 0,
    aiEnabled: true,
    aiPaused: false,
    tags: ['Walk-In'],
    customer: { firstSeen: '11.04.2026', city: 'Landshut', followers: '720' },
    messages: [
      { id: 1, from: 'them', text: 'Macht ihr Walk-Ins? Würde gern heute spontan vorbeikommen', t: NOW - day(3) },
      { id: 2, from: 'us', author: 'ai', text: 'Hi Sophie! Ja, Walk-Ins sind ab 14 Uhr möglich, je nach Auslastung. Ruf am besten kurz an oder komm vorbei. Was schwebt dir vor?', t: NOW - day(3) + min(2) },
      { id: 3, from: 'them', text: 'Top, dann komm ich gleich vorbei!', t: NOW - day(3) + min(15) },
    ],
  },
  {
    id: 'c8',
    name: 'David Pichler',
    handle: 'davepich',
    avatarSeed: 7,
    online: false,
    unread: 0,
    aiEnabled: true,
    aiPaused: false,
    tags: ['Black & Grey'],
    customer: { firstSeen: '03.02.2025', city: 'Passau', followers: '1.8K' },
    messages: [
      { id: 1, from: 'them', text: 'Wie lange sind die Wartezeiten bei euch für ein größeres Black & Grey Stück (Oberarm)?', t: NOW - day(4) },
      { id: 2, from: 'us', author: 'ai', text: 'Hey David! Aktuell hast du bei Sandro ca. 6-8 Wochen Wartezeit für größere Black & Grey Projekte. Wenn du magst, schick mir gern ein paar Referenzen, dann kann ich dir einen Beratungstermin vorschlagen.', t: NOW - day(4) + min(2) },
    ],
  },
];

window.AppData = {
  initialChats,
  avatarGradient,
  initialsFor,
};
