import { _ as __nuxt_component_0 } from "./nuxt-link-1NBbHb-h.js"; import { defineComponent, ref, reactive, unref, withCtx, createTextVNode, toDisplayString, openBlock, createBlock, createVNode, useSSRContext } from "vue"; import { ssrRenderAttrs, ssrInterpolate, ssrRenderAttr, ssrIncludeBooleanAttr, ssrLooseContain, ssrLooseEqual, ssrRenderClass, ssrRenderList, ssrRenderComponent, ssrRenderStyle } from "vue/server-renderer"; import "/app/node_modules/hookable/dist/index.mjs"; import { u as useFormatter } from "./useFormatter-hycy3urM.js"; import "/app/node_modules/klona/dist/index.mjs"; import "../server.mjs"; import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.js"; import "/app/node_modules/ufo/dist/index.mjs"; import "/app/node_modules/defu/dist/defu.mjs"; import "./region-0mvXqaMM.js"; import "pinia"; import "/app/node_modules/ofetch/dist/node.mjs"; import "#internal/nuxt/paths"; import "/app/node_modules/unctx/dist/index.mjs"; import "/app/node_modules/h3/dist/index.mjs"; import "vue-router"; import "/app/node_modules/cookie-es/dist/index.mjs"; import "/app/node_modules/destr/dist/index.mjs"; import "/app/node_modules/ohash/dist/index.mjs"; import "/app/node_modules/@unhead/vue/dist/index.mjs"; import "@vue/devtools-api"; const _sfc_main = /* @__PURE__ */ defineComponent({ __name: "index", __ssrInlineRender: true, setup(__props) { const { formatDate } = useFormatter(); const loading = ref(true); const error = ref(false); const providers = ref([]); const stats = ref({ total: 0, pending: 0, approved: 0, rejected: 0, flagged: 0, total_validations: 0, staging_pending: 0 }); const toast = ref(""); const filters = reactive({ search: "", status: "", source: "", sort_by: "created_at", sort_order: "desc", skip: 0, limit: 50 }); function statusClass(status) { const map = { pending: "bg-amber-500/10 text-amber-400", approved: "bg-emerald-500/10 text-emerald-400", rejected: "bg-rose-500/10 text-rose-400", flagged: "bg-purple-500/10 text-purple-400" }; return map[status] || "bg-slate-500/10 text-slate-400"; } function statusLabel(status) { const map = { pending: "Függőben", approved: "Jóváhagyott", rejected: "Elutasított", flagged: "Megjelölt" }; return map[status] || status; } return (_ctx, _push, _parent, _attrs) => { const _component_NuxtLink = __nuxt_component_0; _push(`
Szolgáltatók listázása, keresése és moderálása
Összes
${ssrInterpolate(unref(stats).total)}
Függőben
${ssrInterpolate(unref(stats).pending)}
Jóváhagyott
${ssrInterpolate(unref(stats).approved)}
Elutasított
${ssrInterpolate(unref(stats).rejected)}
Megjelölt
${ssrInterpolate(unref(stats).flagged)}
Hiba történt a szolgáltatók betöltése közben.
| ID | Név | Cím | Státusz | Forrás | Validáció | Létrehozva | Műveletek |
|---|---|---|---|---|---|---|---|
| ${ssrInterpolate(provider.id)} | `); _push(ssrRenderComponent(_component_NuxtLink, { to: `/providers/${provider.id}`, class: "text-sm font-medium text-indigo-400 hover:text-indigo-300 transition" }, { default: withCtx((_, _push2, _parent2, _scopeId) => { if (_push2) { _push2(`${ssrInterpolate(provider.name)}`); } else { return [ createTextVNode(toDisplayString(provider.name), 1) ]; } }), _: 2 }, _parent)); _push(` | ${ssrInterpolate(provider.address || "—")} | ${ssrInterpolate(statusLabel(provider.status))} | ${ssrInterpolate(provider.source)}`);
if (provider.source_table) {
_push(`${ssrInterpolate(provider.source_table)}`);
} else {
_push(``);
}
_push(` | = 20 ? "bg-amber-500" : "bg-slate-500", "h-full rounded-full transition-all"])}" style="${ssrRenderStyle({ width: Math.min(provider.validation_score, 100) + "%" })}" data-v-c684092a> | ${ssrInterpolate(unref(formatDate)(provider.created_at))} | `);
_push(ssrRenderComponent(_component_NuxtLink, {
to: `/providers/${provider.id}`,
class: "p-1.5 rounded-lg text-slate-400 hover:text-white hover:bg-slate-700 transition",
title: "Részletek"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(``);
} else {
return [
(openBlock(), createBlock("svg", {
class: "w-4 h-4",
fill: "none",
stroke: "currentColor",
viewBox: "0 0 24 24"
}, [
createVNode("path", {
"stroke-linecap": "round",
"stroke-linejoin": "round",
"stroke-width": "2",
d: "M15 12a3 3 0 11-6 0 3 3 0 016 0z"
}),
createVNode("path", {
"stroke-linecap": "round",
"stroke-linejoin": "round",
"stroke-width": "2",
d: "M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"
})
]))
];
}
}),
_: 2
}, _parent));
_push(` |
| Nincs megjeleníthető szolgáltató. | |||||||
${ssrInterpolate(unref(providers).length)} találat (összesen: ${ssrInterpolate(unref(stats).total)})