import { t as AdminLayout_default } from "./AdminLayout-CFTJa237.js";
import { Head, router } from "@inertiajs/vue3";
import { Fragment, createBlock, createCommentVNode, createTextVNode, createVNode, defineComponent, openBlock, ref, renderList, toDisplayString, unref, useSSRContext, vModelText, watch, withCtx, withDirectives } from "vue";
import { ssrIncludeBooleanAttr, ssrInterpolate, ssrRenderAttr, ssrRenderClass, ssrRenderComponent, ssrRenderList } from "vue/server-renderer";
import { Calendar, Clock, Eye, HardDrive, Search, User } from "lucide-vue-next";
//#region resources/js/Pages/Logs/Index.vue?vue&type=script&setup=true&lang.ts
var Index_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
	__name: "Index",
	__ssrInlineRender: true,
	props: {
		logs: {},
		filters: {}
	},
	setup(__props) {
		const search = ref(__props.filters.search || "");
		const selectedLog = ref(null);
		const isModalOpen = ref(false);
		let timeoutId = null;
		watch(search, (newSearch) => {
			if (timeoutId) clearTimeout(timeoutId);
			timeoutId = setTimeout(() => {
				router.get(route("logs.index"), { search: newSearch }, {
					preserveState: true,
					replace: true
				});
			}, 400);
		});
		const openDetails = (log) => {
			selectedLog.value = log;
			isModalOpen.value = true;
		};
		const closeDetails = () => {
			isModalOpen.value = false;
			selectedLog.value = null;
		};
		const getEventBadgeClass = (event) => {
			if (!event) return "bg-slate-100 text-slate-700 dark:bg-slate-800 dark:text-slate-300";
			switch (event.toLowerCase()) {
				case "created": return "bg-emerald-50 text-emerald-700 border-emerald-200 dark:bg-emerald-950/30 dark:text-emerald-400 dark:border-emerald-900/50";
				case "updated": return "bg-amber-50 text-amber-700 border-amber-200 dark:bg-amber-950/30 dark:text-amber-400 dark:border-amber-900/50";
				case "deleted": return "bg-rose-50 text-rose-700 border-rose-200 dark:bg-rose-950/30 dark:text-rose-400 dark:border-rose-900/50";
				default: return "bg-blue-50 text-blue-700 border-blue-200 dark:bg-blue-950/30 dark:text-blue-400 dark:border-blue-900/50";
			}
		};
		const formatJson = (json) => {
			try {
				return JSON.stringify(json, null, 2);
			} catch {
				return String(json);
			}
		};
		return (_ctx, _push, _parent, _attrs) => {
			_push(`<!--[-->`);
			_push(ssrRenderComponent(unref(Head), { title: "Activity Logs" }, null, _parent));
			_push(ssrRenderComponent(AdminLayout_default, null, {
				default: withCtx((_, _push, _parent, _scopeId) => {
					if (_push) {
						_push(`<div class="space-y-6"${_scopeId}><div class="flex flex-col gap-4 md:flex-row md:items-center md:justify-between"${_scopeId}><div${_scopeId}><h1 class="text-2xl font-bold tracking-tight text-slate-900 dark:text-slate-50"${_scopeId}>Activity Logs</h1><p class="text-sm text-slate-500 dark:text-slate-400 mt-1"${_scopeId}> Monitor system actions, security events, and audit trails. </p></div></div><div class="bg-white dark:bg-slate-950 border border-slate-200 dark:border-slate-800 rounded-xl p-4 shadow-sm flex flex-col md:flex-row gap-4 items-center justify-between"${_scopeId}><div class="relative w-full md:max-w-sm"${_scopeId}>`);
						_push(ssrRenderComponent(unref(Search), { class: "absolute left-3 top-2.5 h-4 w-4 text-slate-400 dark:text-slate-500" }, null, _parent, _scopeId));
						_push(`<input${ssrRenderAttr("value", search.value)} type="text" placeholder="Search logs, events, or users..." class="w-full pl-9 pr-4 py-2 text-sm bg-slate-50 dark:bg-slate-900 border border-slate-200 dark:border-slate-800 rounded-lg text-slate-950 dark:text-slate-50 placeholder-slate-400 focus:outline-none focus:ring-2 focus:ring-red-500 focus:border-transparent transition-all"${_scopeId}></div><div class="text-sm text-slate-500 dark:text-slate-400"${_scopeId}> Showing ${ssrInterpolate(__props.logs.data.length)} of ${ssrInterpolate(__props.logs.total)} events </div></div><div class="bg-white dark:bg-slate-950 border border-slate-200 dark:border-slate-800 rounded-xl shadow-sm overflow-hidden"${_scopeId}><div class="overflow-x-auto"${_scopeId}><table class="w-full border-collapse text-left"${_scopeId}><thead${_scopeId}><tr class="border-b border-slate-200 dark:border-slate-800 bg-slate-50/50 dark:bg-slate-900/50 text-xs font-semibold text-slate-500 dark:text-slate-400 uppercase tracking-wider"${_scopeId}><th class="px-6 py-4"${_scopeId}>Causer</th><th class="px-6 py-4"${_scopeId}>Event</th><th class="px-6 py-4"${_scopeId}>Description</th><th class="px-6 py-4"${_scopeId}>Subject</th><th class="px-6 py-4"${_scopeId}>Time</th><th class="px-6 py-4 text-right"${_scopeId}>Actions</th></tr></thead><tbody class="divide-y divide-slate-200 dark:divide-slate-800 text-sm"${_scopeId}>`);
						if (__props.logs.data.length === 0) {
							_push(`<tr${_scopeId}><td colspan="6" class="px-6 py-12 text-center text-slate-500 dark:text-slate-400"${_scopeId}><div class="flex flex-col items-center justify-center space-y-2"${_scopeId}>`);
							_push(ssrRenderComponent(unref(Clock), { class: "h-8 w-8 text-slate-300 dark:text-slate-700" }, null, _parent, _scopeId));
							_push(`<p class="font-medium text-slate-700 dark:text-slate-300"${_scopeId}>No activity logs found</p><p class="text-xs text-slate-400 dark:text-slate-500"${_scopeId}>Try adjusting your search criteria</p></div></td></tr>`);
						} else _push(`<!---->`);
						_push(`<!--[-->`);
						ssrRenderList(__props.logs.data, (log) => {
							_push(`<tr class="hover:bg-slate-50/50 dark:hover:bg-slate-900/50 transition-colors"${_scopeId}><td class="px-6 py-4"${_scopeId}><div class="flex items-center gap-3"${_scopeId}><div class="h-8 w-8 rounded-full bg-red-50 dark:bg-red-950/30 flex items-center justify-center border border-red-100 dark:border-red-900/40"${_scopeId}>`);
							_push(ssrRenderComponent(unref(User), { class: "h-4 w-4 text-red-600 dark:text-red-400" }, null, _parent, _scopeId));
							_push(`</div><div${_scopeId}><div class="font-medium text-slate-900 dark:text-slate-100"${_scopeId}>${ssrInterpolate(log.causer ? log.causer.name : "System")}</div><div class="text-xs text-slate-400 dark:text-slate-500"${_scopeId}>${ssrInterpolate(log.causer ? log.causer.email : "system@internal")}</div></div></div></td><td class="px-6 py-4"${_scopeId}><span class="${ssrRenderClass(["inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium border", getEventBadgeClass(log.event)])}"${_scopeId}>${ssrInterpolate(log.event || "action")}</span></td><td class="px-6 py-4 text-slate-700 dark:text-slate-300 font-medium"${_scopeId}>${ssrInterpolate(log.description)}</td><td class="px-6 py-4 text-slate-500 dark:text-slate-400"${_scopeId}>`);
							if (log.subject_type) {
								_push(`<span class="inline-flex items-center gap-1"${_scopeId}>`);
								_push(ssrRenderComponent(unref(HardDrive), { class: "h-3.5 w-3.5" }, null, _parent, _scopeId));
								_push(` ${ssrInterpolate(log.subject_type)} <span class="text-xs font-semibold bg-slate-100 dark:bg-slate-800 px-1.5 py-0.5 rounded text-slate-600 dark:text-slate-400"${_scopeId}>#${ssrInterpolate(log.subject_id)}</span></span>`);
							} else _push(`<span class="text-xs text-slate-400 italic"${_scopeId}>None</span>`);
							_push(`</td><td class="px-6 py-4 text-slate-500 dark:text-slate-400 whitespace-nowrap"${_scopeId}><span${ssrRenderAttr("title", log.created_at_exact)} class="flex items-center gap-1.5 cursor-help"${_scopeId}>`);
							_push(ssrRenderComponent(unref(Clock), { class: "h-3.5 w-3.5 text-slate-400" }, null, _parent, _scopeId));
							_push(` ${ssrInterpolate(log.created_at)}</span></td><td class="px-6 py-4 text-right whitespace-nowrap"${_scopeId}><button class="inline-flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-medium border border-slate-200 dark:border-slate-800 hover:bg-slate-50 dark:hover:bg-slate-900 text-slate-700 dark:text-slate-300 transition-all focus:outline-none focus:ring-2 focus:ring-red-500"${_scopeId}>`);
							_push(ssrRenderComponent(unref(Eye), { class: "h-3.5 w-3.5 text-slate-500" }, null, _parent, _scopeId));
							_push(` View Details </button></td></tr>`);
						});
						_push(`<!--]--></tbody></table></div>`);
						if (__props.logs.last_page > 1) {
							_push(`<div class="border-t border-slate-200 dark:border-slate-800 px-6 py-4 flex items-center justify-between bg-slate-50/50 dark:bg-slate-900/50"${_scopeId}><div class="flex-1 flex justify-between sm:hidden"${_scopeId}><button${ssrIncludeBooleanAttr(!__props.logs.prev_page_url) ? " disabled" : ""} class="relative inline-flex items-center px-4 py-2 border border-slate-300 dark:border-slate-800 text-sm font-medium rounded-md text-slate-700 dark:text-slate-300 bg-white dark:bg-slate-950 hover:bg-slate-50 dark:hover:bg-slate-900 disabled:opacity-50 transition-colors"${_scopeId}> Previous </button><button${ssrIncludeBooleanAttr(!__props.logs.next_page_url) ? " disabled" : ""} class="ml-3 relative inline-flex items-center px-4 py-2 border border-slate-300 dark:border-slate-800 text-sm font-medium rounded-md text-slate-700 dark:text-slate-300 bg-white dark:bg-slate-950 hover:bg-slate-50 dark:hover:bg-slate-900 disabled:opacity-50 transition-colors"${_scopeId}> Next </button></div><div class="hidden sm:flex-1 sm:flex sm:items-center sm:justify-between"${_scopeId}><div${_scopeId}><p class="text-sm text-slate-700 dark:text-slate-400"${_scopeId}> Showing page <span class="font-medium text-slate-900 dark:text-slate-50"${_scopeId}>${ssrInterpolate(__props.logs.current_page)}</span> of <span class="font-medium text-slate-900 dark:text-slate-50"${_scopeId}>${ssrInterpolate(__props.logs.last_page)}</span></p></div><div${_scopeId}><nav class="relative z-0 inline-flex rounded-md shadow-sm -space-x-px" aria-label="Pagination"${_scopeId}><!--[-->`);
							ssrRenderList(__props.logs.links, (link, idx) => {
								_push(`<button${ssrIncludeBooleanAttr(!link.url) ? " disabled" : ""} class="${ssrRenderClass([
									link.active ? "z-10 bg-red-500 border-red-500 text-white focus:ring-red-500" : "bg-white dark:bg-slate-950 border-slate-300 dark:border-slate-800 text-slate-500 dark:text-slate-400 hover:bg-slate-50 dark:hover:bg-slate-900",
									"relative inline-flex items-center px-3 py-2 border text-xs font-medium disabled:opacity-50 transition-colors cursor-pointer",
									idx === 0 ? "rounded-l-md" : "",
									idx === __props.logs.links.length - 1 ? "rounded-r-md" : ""
								])}"${_scopeId}>${link.label ?? ""}</button>`);
							});
							_push(`<!--]--></nav></div></div></div>`);
						} else _push(`<!---->`);
						_push(`</div></div>`);
						if (isModalOpen.value) {
							_push(`<div class="fixed inset-0 z-50 flex items-center justify-center p-4 animate-fade-in"${_scopeId}><div class="fixed inset-0 bg-slate-950/60 backdrop-blur-sm transition-opacity"${_scopeId}></div><div class="relative bg-white dark:bg-slate-950 border border-slate-200 dark:border-slate-800 rounded-xl shadow-2xl w-full max-w-2xl overflow-hidden flex flex-col max-h-[85vh] animate-in zoom-in-95 duration-200"${_scopeId}><div class="px-6 py-4 border-b border-slate-200 dark:border-slate-800 flex items-center justify-between bg-slate-50/50 dark:bg-slate-900/50"${_scopeId}><h3 class="text-base font-semibold text-slate-900 dark:text-slate-50"${_scopeId}>Log Details #${ssrInterpolate(selectedLog.value?.id)}</h3><button class="rounded-lg p-1 text-slate-400 hover:bg-slate-100 dark:hover:bg-slate-900 hover:text-slate-600 dark:hover:text-slate-300 transition-colors"${_scopeId}><span class="sr-only"${_scopeId}>Close</span> × </button></div><div class="p-6 overflow-y-auto space-y-6"${_scopeId}><div class="grid grid-cols-2 gap-4"${_scopeId}><div class="space-y-1"${_scopeId}><span class="text-xs text-slate-400 dark:text-slate-500 uppercase tracking-wider block"${_scopeId}>Description</span><span class="text-sm font-semibold text-slate-950 dark:text-slate-50"${_scopeId}>${ssrInterpolate(selectedLog.value?.description)}</span></div><div class="space-y-1"${_scopeId}><span class="text-xs text-slate-400 dark:text-slate-500 uppercase tracking-wider block"${_scopeId}>Log Group</span><span class="text-sm font-semibold text-slate-950 dark:text-slate-50"${_scopeId}>${ssrInterpolate(selectedLog.value?.log_name || "default")}</span></div><div class="space-y-1"${_scopeId}><span class="text-xs text-slate-400 dark:text-slate-500 uppercase tracking-wider block"${_scopeId}>Performed By</span><span class="text-sm font-medium text-slate-950 dark:text-slate-50 flex items-center gap-1.5"${_scopeId}>`);
							_push(ssrRenderComponent(unref(User), { class: "h-4 w-4 text-red-500" }, null, _parent, _scopeId));
							_push(` ${ssrInterpolate(selectedLog.value?.causer?.name || "System")} (${ssrInterpolate(selectedLog.value?.causer?.email || "system@internal")}) </span></div><div class="space-y-1"${_scopeId}><span class="text-xs text-slate-400 dark:text-slate-500 uppercase tracking-wider block"${_scopeId}>Logged At</span><span class="text-sm font-medium text-slate-950 dark:text-slate-50 flex items-center gap-1.5"${_scopeId}>`);
							_push(ssrRenderComponent(unref(Calendar), { class: "h-4 w-4 text-slate-400" }, null, _parent, _scopeId));
							_push(` ${ssrInterpolate(selectedLog.value?.created_at_exact)}</span></div></div><div class="space-y-2"${_scopeId}><span class="text-xs text-slate-400 dark:text-slate-500 uppercase tracking-wider block"${_scopeId}>Changes &amp; Metadata</span>`);
							if (selectedLog.value?.properties && Object.keys(selectedLog.value.properties).length > 0) _push(`<div class="relative"${_scopeId}><pre class="bg-slate-950 text-slate-350 dark:bg-slate-900 border border-slate-800 rounded-lg p-4 font-mono text-xs overflow-x-auto text-slate-300 leading-relaxed max-h-60"${_scopeId}>${ssrInterpolate(formatJson(selectedLog.value.properties))}</pre></div>`);
							else _push(`<div class="text-xs italic text-slate-400 dark:text-slate-500 py-3 border border-dashed border-slate-200 dark:border-slate-800 rounded-lg text-center"${_scopeId}> No additional metadata stored with this event. </div>`);
							_push(`</div></div><div class="px-6 py-4 border-t border-slate-200 dark:border-slate-800 flex justify-end bg-slate-50/50 dark:bg-slate-900/50"${_scopeId}><button class="px-4 py-2 text-sm font-medium text-slate-700 dark:text-slate-300 bg-white dark:bg-slate-950 border border-slate-200 dark:border-slate-800 rounded-lg hover:bg-slate-50 dark:hover:bg-slate-900 transition-colors focus:outline-none"${_scopeId}> Close </button></div></div></div>`);
						} else _push(`<!---->`);
					} else return [createVNode("div", { class: "space-y-6" }, [
						createVNode("div", { class: "flex flex-col gap-4 md:flex-row md:items-center md:justify-between" }, [createVNode("div", null, [createVNode("h1", { class: "text-2xl font-bold tracking-tight text-slate-900 dark:text-slate-50" }, "Activity Logs"), createVNode("p", { class: "text-sm text-slate-500 dark:text-slate-400 mt-1" }, " Monitor system actions, security events, and audit trails. ")])]),
						createVNode("div", { class: "bg-white dark:bg-slate-950 border border-slate-200 dark:border-slate-800 rounded-xl p-4 shadow-sm flex flex-col md:flex-row gap-4 items-center justify-between" }, [createVNode("div", { class: "relative w-full md:max-w-sm" }, [createVNode(unref(Search), { class: "absolute left-3 top-2.5 h-4 w-4 text-slate-400 dark:text-slate-500" }), withDirectives(createVNode("input", {
							"onUpdate:modelValue": ($event) => search.value = $event,
							type: "text",
							placeholder: "Search logs, events, or users...",
							class: "w-full pl-9 pr-4 py-2 text-sm bg-slate-50 dark:bg-slate-900 border border-slate-200 dark:border-slate-800 rounded-lg text-slate-950 dark:text-slate-50 placeholder-slate-400 focus:outline-none focus:ring-2 focus:ring-red-500 focus:border-transparent transition-all"
						}, null, 8, ["onUpdate:modelValue"]), [[vModelText, search.value]])]), createVNode("div", { class: "text-sm text-slate-500 dark:text-slate-400" }, " Showing " + toDisplayString(__props.logs.data.length) + " of " + toDisplayString(__props.logs.total) + " events ", 1)]),
						createVNode("div", { class: "bg-white dark:bg-slate-950 border border-slate-200 dark:border-slate-800 rounded-xl shadow-sm overflow-hidden" }, [createVNode("div", { class: "overflow-x-auto" }, [createVNode("table", { class: "w-full border-collapse text-left" }, [createVNode("thead", null, [createVNode("tr", { class: "border-b border-slate-200 dark:border-slate-800 bg-slate-50/50 dark:bg-slate-900/50 text-xs font-semibold text-slate-500 dark:text-slate-400 uppercase tracking-wider" }, [
							createVNode("th", { class: "px-6 py-4" }, "Causer"),
							createVNode("th", { class: "px-6 py-4" }, "Event"),
							createVNode("th", { class: "px-6 py-4" }, "Description"),
							createVNode("th", { class: "px-6 py-4" }, "Subject"),
							createVNode("th", { class: "px-6 py-4" }, "Time"),
							createVNode("th", { class: "px-6 py-4 text-right" }, "Actions")
						])]), createVNode("tbody", { class: "divide-y divide-slate-200 dark:divide-slate-800 text-sm" }, [__props.logs.data.length === 0 ? (openBlock(), createBlock("tr", { key: 0 }, [createVNode("td", {
							colspan: "6",
							class: "px-6 py-12 text-center text-slate-500 dark:text-slate-400"
						}, [createVNode("div", { class: "flex flex-col items-center justify-center space-y-2" }, [
							createVNode(unref(Clock), { class: "h-8 w-8 text-slate-300 dark:text-slate-700" }),
							createVNode("p", { class: "font-medium text-slate-700 dark:text-slate-300" }, "No activity logs found"),
							createVNode("p", { class: "text-xs text-slate-400 dark:text-slate-500" }, "Try adjusting your search criteria")
						])])])) : createCommentVNode("", true), (openBlock(true), createBlock(Fragment, null, renderList(__props.logs.data, (log) => {
							return openBlock(), createBlock("tr", {
								key: log.id,
								class: "hover:bg-slate-50/50 dark:hover:bg-slate-900/50 transition-colors"
							}, [
								createVNode("td", { class: "px-6 py-4" }, [createVNode("div", { class: "flex items-center gap-3" }, [createVNode("div", { class: "h-8 w-8 rounded-full bg-red-50 dark:bg-red-950/30 flex items-center justify-center border border-red-100 dark:border-red-900/40" }, [createVNode(unref(User), { class: "h-4 w-4 text-red-600 dark:text-red-400" })]), createVNode("div", null, [createVNode("div", { class: "font-medium text-slate-900 dark:text-slate-100" }, toDisplayString(log.causer ? log.causer.name : "System"), 1), createVNode("div", { class: "text-xs text-slate-400 dark:text-slate-500" }, toDisplayString(log.causer ? log.causer.email : "system@internal"), 1)])])]),
								createVNode("td", { class: "px-6 py-4" }, [createVNode("span", { class: ["inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium border", getEventBadgeClass(log.event)] }, toDisplayString(log.event || "action"), 3)]),
								createVNode("td", { class: "px-6 py-4 text-slate-700 dark:text-slate-300 font-medium" }, toDisplayString(log.description), 1),
								createVNode("td", { class: "px-6 py-4 text-slate-500 dark:text-slate-400" }, [log.subject_type ? (openBlock(), createBlock("span", {
									key: 0,
									class: "inline-flex items-center gap-1"
								}, [
									createVNode(unref(HardDrive), { class: "h-3.5 w-3.5" }),
									createTextVNode(" " + toDisplayString(log.subject_type) + " ", 1),
									createVNode("span", { class: "text-xs font-semibold bg-slate-100 dark:bg-slate-800 px-1.5 py-0.5 rounded text-slate-600 dark:text-slate-400" }, "#" + toDisplayString(log.subject_id), 1)
								])) : (openBlock(), createBlock("span", {
									key: 1,
									class: "text-xs text-slate-400 italic"
								}, "None"))]),
								createVNode("td", { class: "px-6 py-4 text-slate-500 dark:text-slate-400 whitespace-nowrap" }, [createVNode("span", {
									title: log.created_at_exact,
									class: "flex items-center gap-1.5 cursor-help"
								}, [createVNode(unref(Clock), { class: "h-3.5 w-3.5 text-slate-400" }), createTextVNode(" " + toDisplayString(log.created_at), 1)], 8, ["title"])]),
								createVNode("td", { class: "px-6 py-4 text-right whitespace-nowrap" }, [createVNode("button", {
									onClick: ($event) => openDetails(log),
									class: "inline-flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-medium border border-slate-200 dark:border-slate-800 hover:bg-slate-50 dark:hover:bg-slate-900 text-slate-700 dark:text-slate-300 transition-all focus:outline-none focus:ring-2 focus:ring-red-500"
								}, [createVNode(unref(Eye), { class: "h-3.5 w-3.5 text-slate-500" }), createTextVNode(" View Details ")], 8, ["onClick"])])
							]);
						}), 128))])])]), __props.logs.last_page > 1 ? (openBlock(), createBlock("div", {
							key: 0,
							class: "border-t border-slate-200 dark:border-slate-800 px-6 py-4 flex items-center justify-between bg-slate-50/50 dark:bg-slate-900/50"
						}, [createVNode("div", { class: "flex-1 flex justify-between sm:hidden" }, [createVNode("button", {
							disabled: !__props.logs.prev_page_url,
							onClick: ($event) => __props.logs.prev_page_url && unref(router).visit(__props.logs.prev_page_url),
							class: "relative inline-flex items-center px-4 py-2 border border-slate-300 dark:border-slate-800 text-sm font-medium rounded-md text-slate-700 dark:text-slate-300 bg-white dark:bg-slate-950 hover:bg-slate-50 dark:hover:bg-slate-900 disabled:opacity-50 transition-colors"
						}, " Previous ", 8, ["disabled", "onClick"]), createVNode("button", {
							disabled: !__props.logs.next_page_url,
							onClick: ($event) => __props.logs.next_page_url && unref(router).visit(__props.logs.next_page_url),
							class: "ml-3 relative inline-flex items-center px-4 py-2 border border-slate-300 dark:border-slate-800 text-sm font-medium rounded-md text-slate-700 dark:text-slate-300 bg-white dark:bg-slate-950 hover:bg-slate-50 dark:hover:bg-slate-900 disabled:opacity-50 transition-colors"
						}, " Next ", 8, ["disabled", "onClick"])]), createVNode("div", { class: "hidden sm:flex-1 sm:flex sm:items-center sm:justify-between" }, [createVNode("div", null, [createVNode("p", { class: "text-sm text-slate-700 dark:text-slate-400" }, [
							createTextVNode(" Showing page "),
							createVNode("span", { class: "font-medium text-slate-900 dark:text-slate-50" }, toDisplayString(__props.logs.current_page), 1),
							createTextVNode(" of "),
							createVNode("span", { class: "font-medium text-slate-900 dark:text-slate-50" }, toDisplayString(__props.logs.last_page), 1)
						])]), createVNode("div", null, [createVNode("nav", {
							class: "relative z-0 inline-flex rounded-md shadow-sm -space-x-px",
							"aria-label": "Pagination"
						}, [(openBlock(true), createBlock(Fragment, null, renderList(__props.logs.links, (link, idx) => {
							return openBlock(), createBlock("button", {
								key: idx,
								disabled: !link.url,
								onClick: ($event) => link.url && unref(router).visit(link.url),
								innerHTML: link.label,
								class: [
									link.active ? "z-10 bg-red-500 border-red-500 text-white focus:ring-red-500" : "bg-white dark:bg-slate-950 border-slate-300 dark:border-slate-800 text-slate-500 dark:text-slate-400 hover:bg-slate-50 dark:hover:bg-slate-900",
									"relative inline-flex items-center px-3 py-2 border text-xs font-medium disabled:opacity-50 transition-colors cursor-pointer",
									idx === 0 ? "rounded-l-md" : "",
									idx === __props.logs.links.length - 1 ? "rounded-r-md" : ""
								]
							}, null, 10, [
								"disabled",
								"onClick",
								"innerHTML"
							]);
						}), 128))])])])])) : createCommentVNode("", true)])
					]), isModalOpen.value ? (openBlock(), createBlock("div", {
						key: 0,
						class: "fixed inset-0 z-50 flex items-center justify-center p-4 animate-fade-in"
					}, [createVNode("div", {
						onClick: closeDetails,
						class: "fixed inset-0 bg-slate-950/60 backdrop-blur-sm transition-opacity"
					}), createVNode("div", { class: "relative bg-white dark:bg-slate-950 border border-slate-200 dark:border-slate-800 rounded-xl shadow-2xl w-full max-w-2xl overflow-hidden flex flex-col max-h-[85vh] animate-in zoom-in-95 duration-200" }, [
						createVNode("div", { class: "px-6 py-4 border-b border-slate-200 dark:border-slate-800 flex items-center justify-between bg-slate-50/50 dark:bg-slate-900/50" }, [createVNode("h3", { class: "text-base font-semibold text-slate-900 dark:text-slate-50" }, "Log Details #" + toDisplayString(selectedLog.value?.id), 1), createVNode("button", {
							onClick: closeDetails,
							class: "rounded-lg p-1 text-slate-400 hover:bg-slate-100 dark:hover:bg-slate-900 hover:text-slate-600 dark:hover:text-slate-300 transition-colors"
						}, [createVNode("span", { class: "sr-only" }, "Close"), createTextVNode(" × ")])]),
						createVNode("div", { class: "p-6 overflow-y-auto space-y-6" }, [createVNode("div", { class: "grid grid-cols-2 gap-4" }, [
							createVNode("div", { class: "space-y-1" }, [createVNode("span", { class: "text-xs text-slate-400 dark:text-slate-500 uppercase tracking-wider block" }, "Description"), createVNode("span", { class: "text-sm font-semibold text-slate-950 dark:text-slate-50" }, toDisplayString(selectedLog.value?.description), 1)]),
							createVNode("div", { class: "space-y-1" }, [createVNode("span", { class: "text-xs text-slate-400 dark:text-slate-500 uppercase tracking-wider block" }, "Log Group"), createVNode("span", { class: "text-sm font-semibold text-slate-950 dark:text-slate-50" }, toDisplayString(selectedLog.value?.log_name || "default"), 1)]),
							createVNode("div", { class: "space-y-1" }, [createVNode("span", { class: "text-xs text-slate-400 dark:text-slate-500 uppercase tracking-wider block" }, "Performed By"), createVNode("span", { class: "text-sm font-medium text-slate-950 dark:text-slate-50 flex items-center gap-1.5" }, [createVNode(unref(User), { class: "h-4 w-4 text-red-500" }), createTextVNode(" " + toDisplayString(selectedLog.value?.causer?.name || "System") + " (" + toDisplayString(selectedLog.value?.causer?.email || "system@internal") + ") ", 1)])]),
							createVNode("div", { class: "space-y-1" }, [createVNode("span", { class: "text-xs text-slate-400 dark:text-slate-500 uppercase tracking-wider block" }, "Logged At"), createVNode("span", { class: "text-sm font-medium text-slate-950 dark:text-slate-50 flex items-center gap-1.5" }, [createVNode(unref(Calendar), { class: "h-4 w-4 text-slate-400" }), createTextVNode(" " + toDisplayString(selectedLog.value?.created_at_exact), 1)])])
						]), createVNode("div", { class: "space-y-2" }, [createVNode("span", { class: "text-xs text-slate-400 dark:text-slate-500 uppercase tracking-wider block" }, "Changes & Metadata"), selectedLog.value?.properties && Object.keys(selectedLog.value.properties).length > 0 ? (openBlock(), createBlock("div", {
							key: 0,
							class: "relative"
						}, [createVNode("pre", { class: "bg-slate-950 text-slate-350 dark:bg-slate-900 border border-slate-800 rounded-lg p-4 font-mono text-xs overflow-x-auto text-slate-300 leading-relaxed max-h-60" }, toDisplayString(formatJson(selectedLog.value.properties)), 1)])) : (openBlock(), createBlock("div", {
							key: 1,
							class: "text-xs italic text-slate-400 dark:text-slate-500 py-3 border border-dashed border-slate-200 dark:border-slate-800 rounded-lg text-center"
						}, " No additional metadata stored with this event. "))])]),
						createVNode("div", { class: "px-6 py-4 border-t border-slate-200 dark:border-slate-800 flex justify-end bg-slate-50/50 dark:bg-slate-900/50" }, [createVNode("button", {
							onClick: closeDetails,
							class: "px-4 py-2 text-sm font-medium text-slate-700 dark:text-slate-300 bg-white dark:bg-slate-950 border border-slate-200 dark:border-slate-800 rounded-lg hover:bg-slate-50 dark:hover:bg-slate-900 transition-colors focus:outline-none"
						}, " Close ")])
					])])) : createCommentVNode("", true)];
				}),
				_: 1
			}, _parent));
			_push(`<!--]-->`);
		};
	}
});
//#endregion
//#region resources/js/Pages/Logs/Index.vue
var _sfc_setup = Index_vue_vue_type_script_setup_true_lang_default.setup;
Index_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
	const ssrContext = useSSRContext();
	(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("resources/js/Pages/Logs/Index.vue");
	return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
};
var Index_default = Index_vue_vue_type_script_setup_true_lang_default;
//#endregion
export { Index_default as default };
