Files
backend/resources/js/Components/Supervisor/ui.js
T

68 lines
3.0 KiB
JavaScript

export const labelClass = 'block text-xs font-semibold uppercase tracking-wide text-slate-500';
export const inputClass =
'mt-1.5 block w-full rounded-xl border-slate-200 bg-white px-3 py-2.5 text-sm text-slate-800 shadow-sm transition placeholder:text-slate-400 focus:border-indigo-400 focus:outline-none focus:ring-2 focus:ring-indigo-500/20';
export const selectClass = inputClass;
export const cardClass = 'overflow-hidden rounded-2xl border border-slate-200/80 bg-white shadow-sm';
export const filterBarClass =
'mb-6 flex flex-wrap gap-4 rounded-2xl border border-slate-200/80 bg-white p-5 shadow-sm';
export const thFilterClass = 'px-6 py-3 align-bottom';
export const filterLabelClass =
'mb-1.5 block text-xs font-semibold uppercase tracking-wide text-slate-600';
export const filterInputClass =
'block w-full min-w-[7rem] rounded-lg border-slate-200 bg-white px-2.5 py-1.5 text-sm text-slate-800 shadow-sm transition placeholder:text-slate-400 focus:border-indigo-400 focus:outline-none focus:ring-2 focus:ring-indigo-500/20';
export const filterSelectClass = filterInputClass;
export const formPanelClass =
'mb-6 rounded-2xl border border-indigo-200/60 bg-white p-6 shadow-sm ring-1 ring-indigo-50';
export const thClass =
'px-6 py-4 text-left text-xs font-semibold uppercase tracking-wide text-slate-600';
export const tdClass = 'px-6 py-4 text-sm text-slate-600';
export const rowClass = '';
export const linkClass = 'font-medium text-indigo-600 transition hover:text-indigo-800';
export const machineStatusColors = {
available: 'bg-emerald-100 text-emerald-800 ring-emerald-600/20',
reserved: 'bg-amber-100 text-amber-800 ring-amber-600/20',
running: 'bg-sky-100 text-sky-800 ring-sky-600/20',
maintenance: 'bg-orange-100 text-orange-800 ring-orange-600/20',
offline: 'bg-slate-100 text-slate-600 ring-slate-500/20',
error: 'bg-red-100 text-red-800 ring-red-600/20',
};
export const bookingStatusColors = {
pending: 'bg-slate-100 text-slate-600 ring-slate-500/20',
confirmed: 'bg-sky-100 text-sky-800 ring-sky-600/20',
expired: 'bg-orange-100 text-orange-800 ring-orange-600/20',
active: 'bg-emerald-100 text-emerald-800 ring-emerald-600/20',
completed: 'bg-indigo-100 text-indigo-800 ring-indigo-600/20',
cancelled: 'bg-amber-100 text-amber-800 ring-amber-600/20',
no_show: 'bg-red-100 text-red-800 ring-red-600/20',
};
export const washStatusColors = {
pending_start: 'bg-slate-100 text-slate-600 ring-slate-500/20',
running: 'bg-sky-100 text-sky-800 ring-sky-600/20',
completed: 'bg-emerald-100 text-emerald-800 ring-emerald-600/20',
failed: 'bg-red-100 text-red-800 ring-red-600/20',
cancelled: 'bg-amber-100 text-amber-800 ring-amber-600/20',
};
export const activeStatusColors = {
active: 'bg-emerald-100 text-emerald-800 ring-emerald-600/20',
inactive: 'bg-slate-100 text-slate-600 ring-slate-500/20',
};
export const getStatusColor = (status, map) => map[status] ?? 'bg-slate-100 text-slate-700 ring-slate-500/20';