2025-12-29 17:17:35 +01:00
|
|
|
import { InertiaLinkProps } from '@inertiajs/react';
|
|
|
|
|
import { type ClassValue, clsx } from 'clsx';
|
|
|
|
|
import { twMerge } from 'tailwind-merge';
|
|
|
|
|
|
|
|
|
|
export function cn(...inputs: ClassValue[]) {
|
|
|
|
|
return twMerge(clsx(inputs));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export function isSameUrl(
|
|
|
|
|
url1: NonNullable<InertiaLinkProps['href']>,
|
|
|
|
|
url2: NonNullable<InertiaLinkProps['href']>,
|
|
|
|
|
) {
|
|
|
|
|
return resolveUrl(url1) === resolveUrl(url2);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export function resolveUrl(url: NonNullable<InertiaLinkProps['href']>): string {
|
|
|
|
|
return typeof url === 'string' ? url : url.url;
|
|
|
|
|
}
|
2026-03-22 01:08:44 +01:00
|
|
|
|
|
|
|
|
export function csrfToken(): string {
|
|
|
|
|
return (
|
|
|
|
|
document
|
|
|
|
|
.querySelector('meta[name="csrf-token"]')
|
|
|
|
|
?.getAttribute('content') || ''
|
|
|
|
|
);
|
|
|
|
|
}
|