PageSourceSearch

https://portal.godesignguru.com/build/assets/LinkDomainIndex-CGx6cGMu.js

js godesignguru.com collected 2026-10-04 05:49:02 UTC 25,860 bytes, 111 lines download raw bytes

1import { h as ae, o as h, c as $, a as e, t as a, e as n, b as k, f as d, d as w, u as t, C as re, B as ne, m as z, G as D, g as q, i as V, s as Q, H as N, l as le, F as W, r as ie, T as de, k as me, j as ue, z as ce, n as pe, w as fe, D as he, q as U, x as ve } from "./app-yg_pP4S4.js";
2import { _ as A } from "./BaseButton-DP1PFEmO.js";
3import { _ as ge } from "./FilterDropdown-Bc7H-WkN.js";
4import { _ as ye } from "./FilterOrderOptions-CkSlqOJ9.js";
5import { _ as I } from "./FilterRangeInput-DYJXVyzP.js";
6import { _ as L } from "./BaseInput-DrEncIoW.js";
7import { _ as xe } from "./CurrencyInput-DzVajgur.js";
8import { M as P, s as S } from "./LiveChat-BEmWJs6j.js";
9import { b as _e, f as R, n as G } from "./functions-DLrKIvnr.js";
10import { _ as X } from "./FullScreenDialog-C1EmHZW_.js";
11import { _ as j, r as H } from "./ModalConfirmation-BptK8hn4.js";
12import { b as Y, d as Z } from "./index-CDyB1Hog.js";
13import { u as ee } from "./index-BpmkRTCN.js";
14import { _ as be } from "./FileDragAndDrop-Cfa9pl6Y.js";
15import { _ as $e, r as ke } from "./FileProgressSquare-Dz06lRIZ.js";
16import { _ as we } from "./InputError-c3Vl2Z79.js";
17import { T as Ce, a as De } from "./vue-transitions-DxcThSkT.js";
18import { u as Ve } from "./LoaderIcon-BfI_LFZK.js";
19import { S as Ae, r as Me, M as Se, b as J, g as Te } from "./menu-DpWDC0YJ.js";
20import { r as Ee } from "./PencilIcon-DF7D2KxS.js";
21import { r as qe } from "./TrashIcon-7IRzqwUc.js";
22import { _ as K } from "./ShowMoreWithNumber-f2ub6oAQ.js";
23import { _ as je } from "./Table-D1P44re1.js";
24import { _ as Be } from "./DashboardLayout-CXf_hhYT.js";
25import { S as Fe, F as Ue } from "./XMarkIcon-C7ztHuKP.js";
26import { r as Ie } from "./form-BcDj1t5Y.js";
27import "./MinusIcon-C5ZUuSoW.js";
28import "./popover-DTQdCRwt.js";
29import "./EyeIcon-C30yl1ND.js";
30import "./ArrowUpTrayIcon-B-wLF9nu.js";
31import "./disclosure-DwlSpUcA.js";
32import "./ApplicationLogo-D4QkytOJ.js";
33import "./_plugin-vue_export-helper-DlAUqK2U.js";
34import "./UserAvatar-B3-R1wxh.js";
35import "./consts-7Qk9bpse.js";
36import "./index-BF2h0ubX.js";
37import "./CheckIcon-Bb6ppPFl.js";
38import "./modelWrapper-D0DowOi8.js";
39import "./useFileUploads-dfxvBIDP.js";
40import "./filesystem-DWhNxEQp.js";
41import "./use-text-value-9Z6g_4jd.js";
42import "./use-tree-walker-DC0osvAV.js";
43import "./TablePagination-CoQin-sh.js";
44import "./listbox-BVei8WBz.js";
45import "./ChevronUpDownIcon-D7fhXTZr.js";
46import "./CheckIcon-CfE0icDF.js";
47import "./ChevronRightIcon-f6ucdGu7.js";
48import "./ArrowUpIcon-c4MStV6E.js";
49import "./BaseModal-lnT_D81c.js";
50import "./HomeIcon-B7IW8yDA.js";
51import "./ClockIcon-DWc8x_ii.js";
52const Le = { class: "grid grid-cols-6 gap-6" }, Pe = { class: "col-span-6" }, Ne = { for: "domain", class: "block text-sm font-medium text-gray-700" }, Oe = { class: "relative mt-1 rounded-md shadow-sm" }, ze = { key: 0, class: "mt-2 text-sm text-red-600" }, Re = { class: "col-span-6 mt-2" }, Ge = { for: "domain_rating", class: "block text-sm font-medium text-gray-700" }, He = { class: "relative mt-1 rounded-md shadow-sm" }, Je = { key: 0, class: "mt-2 text-sm text-red-600" }, Ke = { class: "col-span-6 mt-2" }, Qe = { for: "traffic", class: "block text-sm font-medium text-gray-700" }, We = { class: "relative mt-1 rounded-md shadow-sm" }, Xe = { key: 0, class: "mt-2 text-sm text-red-600" }, Ye = { class: "col-span-6 mt-2" }, Ze = { for: "niches", class: "block text-sm font-medium text-gray-700" }, et = { class: "relative mt-1 rounded-md shadow-sm" }, tt = { class: "flex space-x-3 p-2" }, st = { key: 0, class: "mt-2 text-sm text-red-600" }, ot = { class: "col-span-6 mt-2" }, at = { for: "countries", class: "block text-sm font-medium text-gray-700" }, rt = { class: "relative mt-1 rounded-md shadow-sm" }, nt = { class: "flex space-x-3 p-2" }, lt = { key: 0, class: "mt-2 text-sm text-red-600" }, it = { class: "col-span-6 mt-2" }, dt = { for: "eta", class: "block text-sm font-medium text-gray-700" }, mt = { class: "relative mt-1 rounded-md shadow-sm" }, ut = { key: 0, class: "mt-2 text-sm text-red-600" }, ct = { class: "col-span-6 mt-2" }, pt = { for: "price", class: "block text-sm font-medium text-gray-700" }, ft = { class: "relative mt-1 rounded-md shadow-sm" }, ht = { class: "pointer-events-none absolute inset-y-0 right-0 flex items-center pr-3" }, vt = { id: "price-currency", class: "text-gray-500 sm:text-sm" }, gt = { key: 0, class: "mt-2 text-sm text-red-600" }, te = { __name: "LinkDomainForm", props: z({ niches: { type: Array, required: true }, etas: { type: Array, required: true }, countries: { type: Array, required: true } }, { modelValue: { type: Object }, modelModifiers: {} }), emits: z(["submited"], ["update:modelValue"]), setup(c, { emit: x }) {
53  const s = c, o = ae(c, "modelValue"), p = x, v = D(null), g = D(null), y = q(() => s.niches.map((l) => ({ value: l.id, label: l.name }))), b = q(() => s.countries.map((l) => ({ value: l.id, label: l.name }))), C = q(() => s.etas.map((l) => ({ value: l.id, label: l.name })));
54  return (l, i) => (h(), $("form", { class: "max-lg:[&_input]:text-base", onSubmit: i[11] || (i[11] = ne((u) => p("submited"), ["prevent"])) }, [e("div", Le, [e("div", Pe, [e("label", Ne, a(l.$t("Domain name")), 1), e("div", Oe, [n(L, { id: "domain", modelValue: o.value.domain, "onUpdate:modelValue": i[0] || (i[0] = (u) => o.value.domain = u), type: "text", name: "domain", "has-errors": o.value.errors.domain, autocomplete: "off" }, null, 8, ["modelValue", "has-errors"])]), o.value.errors.domain ? (h(), $("p", ze, a(o.value.errors.domain), 1)) : k("", true)]), e("div", Re, [e("label", Ge, a(l.$t("Domain rating")), 1
54), e("div", He, [n(L, { id: "domain_rating", modelValue: o.value.domain_rating, "onUpdate:modelValue": i[1] || (i[1] = (u) => o.value.domain_rating = u), type: "number", name: "domain_rating", "has-errors": o.value.errors.domain_rating, autocomplete: "off" }, null, 8, ["modelValue", "has-errors"])]), o.value.errors.domain_rating ? (h(), $("p", Je, a(o.value.errors.domain_rating), 1)) : k("", true)]), e("div", Ke, [e("label", Qe, a(l.$t("Traffic")), 1), e("div", We, [n(L, { id: "traffic", modelValue: o.value.traffic, "onUpdate:modelValue": i[2] || (i[2] = (u) => o.value.traffic = u), type: "number", name: "traffic", "has-errors": o.value.errors.traffic, autocomplete: "off" }, null, 8, ["modelValue", "has-errors"])]), o.value.errors.traffic ? (h(), $("p", Xe, a(o.value.errors.traffic), 1)) : k("", true)]), e("div", Ye, [e("label", Ze, a(l.$t("Niches")), 1), e("div", et, [n(t(S), { ref_key: "nichesMultiselect", ref: v, modelValue: o.value.niches, "onUpdate:modelValue": i[5] || (i[5] = (u) => o.value.niches = u), options: y.value, classes: t(P), searchable: "", "create-option": "", mode: "tags" }, { beforelist: d(() => [e("div", tt, [n(A, { class: "bg-transparent p-1 text-sm text-primary-600 shadow-none hover:text-white", onClick: i[3] || (i[3] = (u) => v.value.selectAll()) }, { default: d(() => [w(a(l.$t("Select all")), 1)]), _: 1 }), n(A, { class: "bg-transparent p-1 text-sm text-primary-600 shadow-none hover:bg-red-600 hover:text-white", onClick: i[4] || (i[4] = (u) => v.value.clear()) }, { default: d(() => [w(a(l.$t("Clear all")), 1)]), _: 1 })])]), _: 1 }, 8, ["modelValue", "options", "classes"])]), o.value.errors.niches ? (h(), $("p", st, a(o.value.errors.niches), 1)) : k("", true)]), e("div", ot, [e("label", at, a(l.$t("Countries")), 1), e("div", rt, [n(t(S), { ref_key: "countriesMultiselect", ref: g, modelValue: o.value.countries, "onUpdate:modelValue": i[8] || (i[8] = (u) => o.value.countries = u), options: b.value, classes: t(P), searchable: "", mode: "tags" }, { beforelist: d(() => [e("div", nt, [n(A, { class: "bg-transparent p-1 text-sm text-primary-600 shadow-none hover:text-white", onClick: i[6] || (i[6] = (u) => g.value.selectAll()) }, { default: d(() => [w(a(l.$t("Select all")), 1)]), _: 1 }), n(A, { class: "bg-transparent p-1 text-sm text-primary-600 shadow-none hover:bg-red-600 hover:text-white", onClick: i[7] || (i[7] = (u) => g.value.clear()) }, { default: d(() => [w(a(l.$t("Clear all")), 1)]), _: 1 })])]), _: 1 }, 8, ["modelValue", "options", "classes"])]), o.value.errors.countries ? (h(), $("p", lt, a(o.value.errors.countries), 1)) : k("", true)]), e("div", it, [e("label", dt, a(l.$t("ETA")), 1), e("div", mt, [n(t(S), { modelValue: o.value.eta, "onUpdate:modelValue": i[9] || (i[9] = (u) => o.value.eta = u), options: C.value, classes: t(P), searchable: "", "create-option": "", mode: "single" }, null, 8, ["modelValue", "options", "classes"])]), o.value.errors.eta ? (h(), $("p", ut, a(o.value.errors.eta), 1)) : k("", true)]), e("div", ct, [e("label", pt, a(l.$t("Price")), 1), e("div", ft, [n(xe, { id: "price", modelValue: o.value.price, "onUpdate:modelValue": i[10] || (i[10] = (u) => o.value.price = u), name: "price", class: re([o.value.errors.price ? "border-red-300 text-red-900 placeholder-red-300 focus:border-red-500 focus:outline-none focus:ring-red-500" : "border border-gray-300 focus:border-primary-500 focus:ring-primary-500", "block w-full rounded-md border-gray-300 pr-16 shadow-sm sm:text-sm"]) }, null, 8, ["modelValue", "class"]), e("div", ht, [e("span", vt, a(o.value.currency ?? t(_e).currency), 1)])]), o.value.errors.price ? (h(), $("p", gt, a(o.value.errors.price), 1)) : k("", true)])])], 32));
55} }, yt = { __name: "LinkDomainCreateModal", props: { open: { type: Boolean, required: false }, niches: { type: Array, required: false, default: () => [] }, etas: { type: Array, required: false, default: () => [] }, countries: { type: Array, required: false, default: () => [] } }, emits: ["close"], setup(c, { emit: x }) {
56  const s = x, o = Y(Z).smaller("sm"), p = ee("post", route("link-domains.store"), { domain: null, domain_rating: null, traffic: null, niches: [], countries: [], eta: null, price: null }), v = () => p.submit({ preserveScroll: true, onSuccess: () => {
57    p.reset(), s("close");
58  } });
59  return (g, y) =>
59 (h(), V(N(t(o) ? X : j), { open: c.open, color: "primary", size: "xl", title: g.$t("Add link"), "confirm-text": t(p).processing ? g.$t("Creating") : g.$t("Create"), loading: t(p).processing, onConfirmed: v, onClosed: y[1] || (y[1] = (b) => s("close")) }, { content: d(() => [n(te, { modelValue: t(p), "onUpdate:modelValue": y[0] || (y[0] = (b) => Q(p) ? p.value = b : null), class: "max-sm:min-h-0 max-sm:flex-1 max-sm:overflow-y-auto max-sm:p-4 max-sm:pb-10 max-sm:text-left", niches: c.niches, etas: c.etas, countries: c.countries }, null, 8, ["modelValue", "niches", "etas", "countries"])]), _: 1 }, 40, ["open", "title", "confirm-text", "loading"]));
60} }, xt = { __name: "LinkDomainEditModal", props: { linkDomain: { type: Object, required: true }, open: { type: Boolean, required: false }, niches: { type: Array, required: false, default: () => [] }, etas: { type: Array, required: false, default: () => [] }, countries: { type: Array, required: false, default: () => [] } }, emits: ["close"], setup(c, { emit: x }) {
61  const s = c, o = x, p = Y(Z).smaller("sm"), v = ee("put", route("link-domains.update", s.linkDomain), { domain: s.linkDomain.domain, domain_rating: s.linkDomain.domain_rating, traffic: s.linkDomain.traffic, niches: _.map(s.linkDomain.niches, "id"), countries: _.map(s.linkDomain.countries, "id"), eta: s.linkDomain.eta.id, price: s.linkDomain.price, currency: s.linkDomain.currency }), g = () => v.submit({ preserveScroll: true, onSuccess: () => {
62    v.reset(), o("close");
63  } });
64  return (y, b) => (h(), V(N(t(p) ? X : j), { open: c.open, color: "primary", size: "xl", title: y.$t("Edit link"), "confirm-text": t(v).processing ? y.$t("Updating") : y.$t("Update"), loading: t(v).processing, onConfirmed: g, onClosed: b[1] || (b[1] = (C) => o("close")) }, { content: d(() => [n(te, { modelValue: t(v), "onUpdate:modelValue": b[0] || (b[0] = (C) => Q(v) ? v.value = C : null), class: "max-sm:min-h-0 max-sm:flex-1 max-sm:overflow-y-auto max-sm:p-4 max-sm:pb-10 max-sm:text-left", niches: c.niches, etas: c.etas, countries: c.countries }, null, 8, ["modelValue", "niches", "etas", "countries"])]), _: 1 }, 40, ["open", "title", "confirm-text", "loading"]));
65} }, _t = { key: 0 }, bt = { class: "font-medium text-gray-900" }, $t = { class: "mt-4 flex w-full space-x-2" }, kt = { class: "truncate text-sm font-semibold" }, wt = { __name: "LinkDomainImportModal", props: { open: { type: Boolean, required: false } }, emits: ["close"], setup(c, { emit: x }) {
66  const s = x, o = le({ file: null }), p = D(), v = () => o.post(route("link-domains.import"), { preserveScroll: true, onSuccess: () => s("close") }), g = [".csv", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "application/vnd.ms-excel", "text/csv"], y = (l) => {
67    if (!g.includes(l.type)) {
68      o.hasErrors = true;
69      return;
70    }
71    o.hasErrors = false, p.value = l;
72  }, b = (l) => {
73    o.file = l;
74  }, C = () => {
75    p.value = null, o.reset(), o.clearErrors();
76  };
77  return (l, i) => (h(), V(j, { open: c.open, color: "primary", size: "xl", "confirm-text": t(o).processing ? l.$t("Importing") : l.$t("Import"), loading: t(o).processing, onConfirmed: v, onClosed: i[0] || (i[0] = (u) => s("close")) }, { title: d(() => [w(a(l.$t("Import link domains")), 1)]), content: d(() => [p.value ? k("", true) : (h(), V(be, { key: 0, "has-errors": t(o).hasErrors, multiple: false, accept: g.join(", "), onFileDropped: y }, null, 8, ["has-errors", "accept"])), n(t(Ce), null, { default: d(() => [p.value ? (h(), $("div", _t, [e("h3", bt, a(l.$t("File added")), 1), e("div", null, [n(t(De), { offset: [0, -50], group: "" }, { default: d(() => [e("div", $t, [n($e, { file: p.value, class: "-m-2", folder: "tmp", onUploaded: b, onDeleteFile: C }, null, 8, ["file"]), e("p", kt, a(p.value.name), 1)])]), _: 1 })])])) : k("", true)]), _: 1 }), (h(true), $(W, null, ie(t(o).errors, (u, T) => (h(), $("div", { key: T }, [n(we, { message: u }, null, 8, ["message"])]))), 128))]), _: 1 }, 8, ["open", "confirm-text", "loading"]));
78} }, Ct = { class: "sr-only" }, Dt = { class: "py-1" }, Vt = { __name: "LinkDomainMenu", props: { linkDomain: { type: Object, required: true } }, emits: ["edit", "delete"], setup(c, { emit: x }) {
79  const s = x, { trigger: o, popper: p } = Ve({ placement: "bottom-end", strategy: "fixed" });
80  return (v, g) => (h(), V(t(Te), { as: "div", class: "inline-block px-3 text-left" }, { default: d(() => [e("div", { ref_key: "popoverButton", ref: o }, [n(t(Ae), { class: "relative flex items-center rounded-full text-gray-400 hover:text-gray-500 focus:outline-none max-lg:after:absolute max-lg:after:-inset-2.5 max-lg:after:content-[''] [@media(hover:none)]:after:absolute [@media(hover:none)]:after:-inset-2.5 [@media(hover:none)]:after:content-['']" }, { default: d(() => [e("span", Ct, a(v.$t("Open options")), 1), n(t(Me), { class: "h-6 w-6", "aria-hidden": "true" })]), _: 1 })], 512), (h(), V(de, { to: "body" }, [n(t(Se), { ref_key: "popoverPanel", ref: p, class: "absolute right-0 z-20 w-56 origin-top-right rounded-md bg-white shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none" }, { default: d(() => [e("div", Dt, [n(t(J), { static: "" }, { default: d(() => [e("span", { class: "flex cursor-pointer items-center px-4 py-2 text-sm text-gray-700 hover:bg-gray-100 max-lg:py-3 [@media(hover:none)]:py-3", onClick: g[0] || (g[0] = (y) => s("edit")) }, [n(t(Ee), { class: "mr-4 h-5 w-5 text-gray-400 group-hover:text-gray-500" }
80), w(" " + a(v.$t("Edit")), 1)])]), _: 1 }), n(t(J), { class: "group flex items-center", static: "" }, { default: d(() => [e("span", { class: "block cursor-pointer px-4 py-2 text-sm text-gray-700 hover:bg-gray-100 max-lg:py-3 [@media(hover:none)]:py-3", onClick: g[1] || (g[1] = (y) => s("delete")) }, [n(t(qe), { class: "mr-4 h-5 w-5 text-gray-400 group-hover:text-gray-500" }), w(" " + a(v.$t("Delete")), 1)])]), _: 1 })])]), _: 1 }, 512)]))]), _: 1 }));
81} }, At = { class: "sm:hidden" }, Mt = { class: "max-sm:hidden" }, St = { class: "bg-white shadow-sm 2xl:rounded-md" }, Tt = { class: "p-4 sm:flex sm:p-6" }, Et = { class: "flex w-full items-center justify-between" }, qt = { class: "mr-4 w-full sm:w-1/2 lg:w-1/3" }, jt = { class: "relative rounded-md shadow-sm" }, Bt = { class: "pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3" }, Ft = ["placeholder"], Ut = { class: "flex space-x-3" }, It = ["aria-label"], Lt = { class: "px-6 py-4 pl-6 text-sm font-medium text-gray-900 group-1-hover:bg-gray-50 max-lg:relative max-lg:w-full max-lg:max-w-0 max-lg:p-0 lg:max-xl:pr-2" }, Pt = { class: "py-3 pl-4 sm:pl-6 lg:hidden" }, Nt = { class: "flex items-baseline justify-between gap-x-3" }, Ot = ["onClick"], zt = { class: "shrink-0 text-sm font-medium tabular-nums leading-5 text-gray-900" }, Rt = { class: "truncate text-xs font-normal leading-5 text-gray-500" }, Gt = { class: "truncate text-xs font-normal leading-5 text-gray-500" }, Ht = { class: "w-72 pr-2 text-sm max-lg:hidden lg:max-xl:w-28" }, Jt = { class: "flex items-center space-x-1.5" }, Kt = { class: "truncate font-medium leading-5 text-gray-900" }, Qt = ["title"], Wt = ["title"], Xt = { class: "hidden lg:table-cell" }, Yt = { class: "truncate pr-5" }, Zt = { class: "hidden lg:table-cell" }, es = { class: "truncate pr-5" }, ts = { class: "hidden lg:table-cell lg:max-xl:whitespace-nowrap lg:max-xl:pr-3" }, ss = { class: "hidden lg:table-cell lg:max-xl:whitespace-nowrap" }, os = { class: "max-lg:w-px" }, as = { class: "mb-3 text-xl font-semibold text-gray-900" }, rs = { class: "mb-5 text-gray-500" }, ro = { __name: "LinkDomainIndex", props: { linkDomains: { type: Object, required: true }, niches: { type: Array, required: true }, etas: { type: Array, required: true }, countries: { type: Array, required: true } }, setup(c) {
82  const x = c;
83  me(() => {
84    if (!document.getElementById("html2pdf")) {
85      var m = document.createElement("script");
86      m.src = "https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js", m.id = "html2pdf", document.getElementsByTagName("head")[0].appendChild(m);
87    }
88  });
89  const { t: s } = ue(), o = ve(), p = q(() => [...new URLSearchParams(o.url.split("?")[1]).entries()].some(([m, f]) => f && !["page", "perPage", "sortBy", "direction"].includes(m))), v = (m) => {
90    var _a;
91    return m.length > 1 ? `${m[0].name} +${m.length - 1}` : (_a = m[0]) == null ? void 0 : _a.name;
92  }, g = [{ label: s("Link domains") }], y = D([{ key: "domain", label: s("Name"), headerClasses: "pl-6 w-full lg:w-2/12 md:w-5/12", showing: true, position: 1 }, { key: "domain_rating", label: s("DR"), headerClasses: "w-full lg:w-2/12 md:table-cell", showing: true, position: 2 }, { key: "traffic", label: s("Traffic"), headerClasses: "lg:w-2/12", showing: true, position: 3 }, { key: "niches", label: s("Niches"), headerClasses: "lg:w-2/12", showing: true, position: 4 }, { key: "countries", label: s("Countries"), headerClasses: "lg:w-2/12", showing: true, position: 4 }, { key: "eta", label: s("ETA"), headerClasses: "w-2/12", showing: true, position: 5 }, { key: "price", label: s("Price"), headerClasses: "w-1/12", showing: true, position: 5 }]), b = [{ key: "price", label: s("Price"), type: "range", component: I }, { key: "domain_rating", label: s("DR"), type: "range", component: I }, { key: "traffic", label: s("Traffic"), type: "range", component: I }, { key: "niches", label: s("Niche"), type: "tags", options: x.niches.map((m) => ({ value: m.id, label: m.name })), component: S }, { key: "etas", label: s("ETA"), type: "tags", options: x.etas.map((m) => ({ value: m.id, label: m.name })), component: S }, { key: "countries", label: s("Countries"), type: "tags", options: x.countries.map((m) => ({ value: m.id, label: m.name })), component: S }], C = D(false), l = D(false), i = D(false), u = D(false), T = D(), B = D(), F = D(route().params.search ?? ""), E = (m) => {
93    const f = Object.assign(route().params, m, { page: 1 });
94    return U.visit(route(route().current(), f), { preserveScroll: true, preserveState: true });
95  }, O = (m) => {
96    T.value = m, C.value = true;
97  }, se = (m) => {
98    B.value = m, l.value = true;
99  }, oe = () => U.delete(route("link-domains.destroy", B.value), { preserveScroll: true, onSuccess: () => {
100    B.value = null, l.value = false;
101  } });
102  return ce(F, _.debounce((m) => {
103    E({ search: m });
104  }, 500)), (m, f) => (h(), $(W, null, [n(t(pe), { title: t(s)("Link catalog") }, null, 8, ["title"]), n(Be, { breadcrumbs: g }, { header: d(() => [w(a(t(s)("Link catalog")), 1)]), actions: d(() => [n(A, { secondary: "", class: "max-sm:hidden", onClick: f[0] || (f[0] = (r) => u.value = true) }, { default: d(() => [w(a(t(s)("Import")), 1)]), _: 1 }), n(A, { class: "max-sm:inline-flex max-sm:min-h-11", "aria-label": t(s)("Add link"), onClick: f[1] || (f[1] = (r) => i.value = true) }, { default: d(() => [n(t(H), { class: "-ml-0.5 mr-1.5 h-5 w-5 sm:hidden", "aria-hidden": "true" }), e("span", At, a(t(s)("Add")), 1), e("span", Mt, a(t(s)("Add link")), 1)]), _: 1 }, 8, ["aria-label"])]), default: d(() => [e("div", St, [e("div", Tt, [e("div", Et, [e("div", qt, [e("div", jt, [e("div", Bt, [n(t(Ie), { class: "h-5 w-5 text-gray-400", "aria-hidden": "true" })]), fe(e("input", { "onUpdate:modelValue": f[2] || (f[2] = (r) => F.value = r), type: "search", name: "search", class: "block w-full rounded-md border-gray-300 pl-10 focus:border-primary-500 focus:ring-primary-500", placeholder: t(s)("Search"), autocomplete: "off" }, null, 8, Ft), [[he, F.value]])])]), e("div", Ut, [e("button", { type: "button", class: "inline-flex h-11 w-11 items-center justify-center rounded-md border border-gray-300 bg-white text-gray-600 hover:bg-gray-50 focus:outline-none focus:ring-1 focus:ring-primary-500 sm:hidden", "aria-label": t(s)("Import"), onClick: f[3] || (f[3] = (r) => u.value = true) }, [n(t(ke), { class: "h-5 w-5", "aria-hidden": "true" })], 8, It), n(ge, { inputs: b, onFiltersChanged: E }), n(ye, { "show-hide-columns": false, onFilterChanged: E })])])]), e("div", null, [n(je, { class: "text-sm max-sm:[&_.normal-row~.normal-row>td]:border-t max-lg:[&_thead]:hidden", data: c.linkDomains, columns: y.value, "sortable-columns": ["created_at"], "show-column-always": "domain", paginated: "", expandable: "", onSort
104Updated: E }, { domain: d(({ item: r }) => {
105    var _a, _b, _c;
106    return [e("td", Lt, [e("div", Pt, [e("div", Nt, [e("button", { type: "button", class: "min-w-0 truncate text-left text-sm font-medium leading-5 text-gray-900 after:absolute after:inset-0 after:content-['']", onClick: (M) => O(r) }, a(r.domain), 9, Ot), e("span", zt, a(t(R)(t(G)(r.price, r.currency), r.currency)), 1)]), e("p", Rt, a([`${t(s)("DR")} ${r.domain_rating}`, `${t(s)("Traffic")} ${r.traffic}`, (_a = r.eta) == null ? void 0 : _a.name].filter(Boolean).join(" \xB7 ")), 1), e("p", Gt, a([v(r.niches), v(r.countries)].filter(Boolean).join(" \xB7 ")), 1)]), e("div", Ht, [e("div", Jt, [e("div", Kt, [e("span", { title: r.domain }, a(r.domain), 9, Qt)])]), e("div", { title: (_b = r.service) == null ? void 0 : _b.name, class: "truncate font-normal leading-5 text-gray-400" }, a((_c = r.service) == null ? void 0 : _c.name), 9, Wt)])])];
107  }), niches: d(({ item: r }) => [e("td", Xt, [e("div", Yt, [n(K, { class: "truncate", lines: r.niches.map((M) => M.name) }, null, 8, ["lines"])])])]), countries: d(({ item: r }) => [e("td", Zt, [e("div", es, [n(K, { class: "truncate", lines: r.countries.map((M) => M.name) }, null, 8, ["lines"])])])]), eta: d(({ item: r }) => [e("td", ts, a(r.eta.name), 1)]), price: d(({ item: r }) => [e("td", ss, a(t(R)(t(G)(r.price, r.currency), r.currency)), 1)]), expandable: d(({ item: r }) => [e("td", os, [n(Vt, { "link-domain": r, onEdit: (M) => O(r), onDelete: (M) => se(r) }, null, 8, ["link-domain", "onEdit", "onDelete"])])]), "empty-state": d(() => [(h(), V(N(p.value ? t(Fe) : t(Ue)), { class: "mx-auto mb-5 h-12 w-12 stroke-1 text-gray-400" })), e("h3", as, a(p.value ? t(s)("No results found") : t(s)("No domains yet")), 1), e("p", rs, a(p.value ? t(s)("Try a different search or clear the filters.") : t(s)("Get started by creating a new domain.")), 1), p.value ? (h(), $("button", { key: 0, type: "button", class: "inline-flex min-h-11 items-center rounded-md border border-gray-300 bg-white px-4 py-2 text-sm font-medium text-gray-700 shadow-sm hover:bg-gray-50 focus:outline-none focus-visible:ring-2 focus-visible:ring-primary-500", onClick: f[4] || (f[4] = (r) => t(U).visit(m.route("link-domains.index"))) }, a(t(s)("Clear filters")), 1)) : (h(), V(A, { key: 1, class: "ml-3 inline-flex items-center rounded-md border border-transparent bg-primary-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-primary-700 focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2", onClick: f[5] || (f[5] = (r) => i.value = true) }, { default: d(() => [n(t(H), { class: "mr-3 h-5 w-5" }), w(" " + a(t(s)("Add link")), 1)]), _: 1 }))]), _: 1 }, 8, ["data", "columns"])])]), C.value ? (h(), V(xt, { key: 0, open: C.value, "link-domain": T.value, niches: c.niches, etas: c.etas, countries: c.countries, onClose: f[6] || (f[6] = (r) => C.value = false) }, null, 8, ["open", "link-domain", "niches", "etas", "countries"])) : k("", true), i.value ? (h(), V(yt, { key: 1, open: i.value, niches: c.niches, etas: c.etas, countries: c.countries, onClose: f[7] || (f[7] = (r) => i.value = false) }, null, 8, ["open", "niches", "etas", "countries"])) : k("", true), u.value ? (h(), V(wt, { key: 2, open: u.value, onClose: f[8] || (f[8] = (r) => u.value = false) }, null, 8, ["open"])) : k("", true), n(j, { open: l.value, color: "red", onConfirmed: oe, onClosed: f[9] || (f[9] = (r) => l.value = false) }, { title: d(() => [w(a(m.$t("Delete link domain?")), 1)]), content: d(() => [w(a(m.$t("Do you want to remove this link domain?")), 1)]), _: 1 }, 8, ["open"])]), _: 1 })], 64));
108} };
109export {
110  ro as default
111};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.