// Simple hash-based router for the vendor PWA
// Routes: #/login, #/dashboard, #/orders/:id, #/new

function useHashRouter() {
  const [route, setRoute] = React.useState(parseHash());

  React.useEffect(() => {
    const handler = () => setRoute(parseHash());
    window.addEventListener('hashchange', handler);
    return () => window.removeEventListener('hashchange', handler);
  }, []);

  return route;
}

function parseHash() {
  const hash = window.location.hash.replace(/^#\/?/, '');
  if (!hash || hash === '/') return { page: 'home', params: {} };
  const parts = hash.split('/');

  if (parts[0] === 'login') return { page: 'login', params: {} };
  if (parts[0] === 'dashboard') return { page: 'dashboard', params: {} };
  if (parts[0] === 'new') return { page: 'new', params: {} };
  if (parts[0] === 'drafts' && parts[1]) return { page: 'draft', params: { draftId: parts[1] } };
  if (parts[0] === 'orders' && parts[1]) return { page: 'order-detail', params: { orderId: parts[1] } };
  // Warranty route disabled — see admin /coming-soon for status.
  // if (parts[0] === 'w' && parts[1]) return { page: 'warranty', params: { warrantyId: parts[1] } };

  return { page: 'home', params: {} };
}

function navigate(path) {
  window.location.hash = path;
}

Object.assign(window, { useHashRouter, navigate });
