import plugin from 'tailwindcss/plugin';

export default plugin(function({ addUtilities }) {
  // Add any custom utilities if needed
}, {
  // Safelist all classes used in the chat-ui package
  safelist: [
    // Layout and flexbox
    'flex',
    'flex-1',
    'flex-col',
    'flex-row-reverse',
    'flex-wrap',
    'flex-shrink-0',
    'items-center',
    'items-start',
    'justify-center',
    'justify-between',
    'justify-end',
    'space-x-2',
    'space-x-4',
    'space-y-2',
    'space-y-3',
    'space-y-4',

    // Positioning
    'relative',
    'absolute',
    'inset-3mt-2',
    'inline-block',

    // Margins and padding
    'm-5',
    'mr-5',
    'ml-4',
    'ml-5',
    'my-5',
    'mx-4',
    'mx-5',
    'mx-auto',
    'mt-2',
    'mt-3',
    'mt-4',
    'mt-5',
    '-mt-1',
    '-mt-5',
    'mb-1',
    'mb-3',
    'mb-4',
    'mb-10',
    'mb-12',
    'mr-2',
    'p-4',
    'p-7',
    'px-4',
    'px-6',
    'py-2',
    'py-6',
    'pl-5',
    'pl-6',
    '-p-6',
    '-m-6',

    // Width and height
    'w-full',
    'w-3/4',
    'w-3/5',
    'w-14',
    'w-24',
    'w-[90%]',
    'w-[272px]',
    'h-auto',
    'h-10',
    'h-14',
    'h-24',
    'h-screen',
    'min-h-0',
    'min-h-[641px]',
    'min-w-[250px]',
    'max-w-[82%]',

    // Colors and backgrounds
    'bg-slate-100',
    'bg-white',
    'bg-[#1b0103]',
    'text-gray-300',
    'text-gray-500',
    'text-gray-600',
    'text-gray-700',
    'text-gray-400',
    'text-blue-600',
    'text-blue-700',
    'text-blue-800',
    'text-white',
    'text-base',
    'text-sm',
    'text-lg',
    'text-xl',
    'text-2xl',
    'border-white',
    'border-slate-400',
    'border-red-500',
    'border-2',
    'border',
    'hover:text-white',
    'hover:text-blue-800',
    'hover:bg-gray-100',
    'hover:border-red-200',
    'hover:opacity-80',

    // Typography
    'font-bold',
    'font-extrabold',
    'font-[sans-serif]',
    'text-left',
    'text-center',
    'uppercase',
    'underline',
    'whitespace-pre-wrap',
    'list-disc',
    'list-decimal',

    // Borders and rounding
    'rounded-lg',
    'rounded-md',
    'rounded-3xl',
    'rounded',

    // Shadows and effects
    'shadow-lg',
    'opacity-50',

    // Scrolling
    'overflow-auto',
    'overflow-y-auto',
    'scrollbar',

    // Cursors
    'cursor-pointer',
    'cursor-not-allowed',

    // Display
    'block',

    // DaisyUI components
    'btn',
    'btn-xs',
    'btn-ghost',
    'btn-error',
    'input',
    'input-bordered',
    'focus:input-primary',
    'avatar',
    'placeholder',
    'loading',
    'loading-dots',
    'loading-md',

    // Responsive variants
    '2xl:max-w-[88%]',
    '2xl:h-screen',

    // Custom negative margins
    '-inset-3mt-2',
  ]
});
