@webx-ui/module-audit 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AuditHostPlaces.d.ts +1 -1
- package/dist/index.js +1060 -1032
- package/dist/index.js.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { defineComponent as se, ref as
|
|
1
|
+
import { defineComponent as se, ref as C, onMounted as ve, openBlock as t, createElementBlock as y, createBlock as u, unref as e, withCtx as a, createTextVNode as n, toDisplayString as s, Fragment as L, createVNode as d, renderList as M, createCommentVNode as S, computed as q, renderSlot as Ze, watch as de, createElementVNode as I, useModel as Me, mergeModels as Se, normalizeClass as Ne, withModifiers as et, onBeforeUnmount as Ge, createSlots as Je } from "vue";
|
|
2
2
|
import { useAdmin as le, useTranslate as ee, useErrorText as oe, WxListScreen as tt, WxDate as ke, useDates as at, WxScreen as st } from "@webx-ui/module-admin";
|
|
3
|
-
import { WxText as P, WxSkeleton as fe, WxLink as xe, WxBadge as B, WxButton as
|
|
3
|
+
import { WxText as P, WxSkeleton as fe, WxLink as xe, WxBadge as B, WxButton as K, WxTable as he, WxSelect as pe, toast as X, WxDialog as Ke, WxFormItem as Re, WxInput as Qe, WxTextarea as lt, WxPopover as Te, WxCard as ce, WxAlert as _e, WxProgress as Fe, WxSegmented as Xe, WxEmpty as Le, WxStatistic as Oe, WxDrawer as nt, WxTabs as it, WxImage as ut, WxIcon as ot, WxCheckboxGroup as rt, WxActionBar as dt } from "@webx-ui/core";
|
|
4
4
|
import { useRouter as we, useRoute as Ye } from "vue-router";
|
|
5
|
-
function
|
|
5
|
+
function qe(f) {
|
|
6
6
|
const v = {
|
|
7
|
-
search:
|
|
8
|
-
status:
|
|
9
|
-
indexable:
|
|
10
|
-
check:
|
|
11
|
-
sort:
|
|
12
|
-
page:
|
|
13
|
-
per_page:
|
|
7
|
+
search: f.search || void 0,
|
|
8
|
+
status: f.status || void 0,
|
|
9
|
+
indexable: f.indexable === null || f.indexable === void 0 ? void 0 : f.indexable ? 1 : 0,
|
|
10
|
+
check: f.check || void 0,
|
|
11
|
+
sort: f.sort || void 0,
|
|
12
|
+
page: f.page,
|
|
13
|
+
per_page: f.per_page
|
|
14
14
|
};
|
|
15
|
-
for (const
|
|
16
|
-
v[`f[${
|
|
15
|
+
for (const g of f.filters ?? [])
|
|
16
|
+
v[`f[${g.field}]`] = g.value === void 0 || g.value === "" ? g.op : `${g.op}:${g.value}`;
|
|
17
17
|
return v;
|
|
18
18
|
}
|
|
19
|
-
function re(
|
|
20
|
-
const v = `${
|
|
19
|
+
function re(f) {
|
|
20
|
+
const v = `${f.apiPath}/audit`, g = (l) => l.data, o = (l) => ({
|
|
21
21
|
check: l.check || void 0,
|
|
22
22
|
severity: l.severity || void 0,
|
|
23
23
|
group: l.group || void 0,
|
|
@@ -26,50 +26,50 @@ function re(_) {
|
|
|
26
26
|
per_page: l.per_page
|
|
27
27
|
});
|
|
28
28
|
return {
|
|
29
|
-
latest: () =>
|
|
30
|
-
run: (l) =>
|
|
31
|
-
runs: (l = {}) =>
|
|
32
|
-
start: (l, r) =>
|
|
33
|
-
cancel: (l) =>
|
|
34
|
-
checks: (l, r = {}) =>
|
|
35
|
-
issues: (l, r = {}) =>
|
|
36
|
-
pages: (l, r = {}) =>
|
|
37
|
-
pagesFile: (l, r,
|
|
29
|
+
latest: () => f.http.get(`${v}/runs/latest`).then(g),
|
|
30
|
+
run: (l) => f.http.get(`${v}/runs/${l}`).then(g),
|
|
31
|
+
runs: (l = {}) => f.http.get(`${v}/runs`, { query: l }).then((r) => ({ ...r.meta, data: r.data })),
|
|
32
|
+
start: (l, r) => f.http.post(`${v}/runs`, l === "urls" ? { scope: l, urls: r } : { scope: l }).then(g),
|
|
33
|
+
cancel: (l) => f.http.post(`${v}/runs/${l}/cancel`, {}).then(g),
|
|
34
|
+
checks: (l, r = {}) => f.http.get(`${v}/runs/${l}/checks`, { query: o(r) }).then(g),
|
|
35
|
+
issues: (l, r = {}) => f.http.get(`${v}/runs/${l}/issues`, { query: o(r) }).then((p) => ({ ...p.meta, data: p.data })),
|
|
36
|
+
pages: (l, r = {}) => f.http.get(`${v}/runs/${l}/pages`, { query: qe(r) }).then((p) => ({ ...p.meta, data: p.data })),
|
|
37
|
+
pagesFile: (l, r, p) => {
|
|
38
38
|
const h = new URLSearchParams();
|
|
39
|
-
for (const [
|
|
40
|
-
...
|
|
39
|
+
for (const [b, c] of Object.entries({
|
|
40
|
+
...qe(r),
|
|
41
41
|
page: void 0,
|
|
42
42
|
per_page: void 0
|
|
43
43
|
}))
|
|
44
|
-
|
|
45
|
-
return h.set("columns",
|
|
44
|
+
c !== void 0 && h.set(b, String(c));
|
|
45
|
+
return h.set("columns", p.join(",")), `${v}/runs/${l}/pages/export?${h.toString()}`;
|
|
46
46
|
},
|
|
47
|
-
page: (l, r) =>
|
|
48
|
-
links: (l, r,
|
|
49
|
-
resources: (l, r,
|
|
50
|
-
fixes: (l, r) =>
|
|
51
|
-
fix: (l, r,
|
|
47
|
+
page: (l, r) => f.http.get(`${v}/runs/${l}/pages/${r}`).then(g),
|
|
48
|
+
links: (l, r, p = {}) => f.http.get(`${v}/runs/${l}/pages/${r}/links`, { query: p }).then((h) => ({ ...h.meta, data: h.data })),
|
|
49
|
+
resources: (l, r, p) => f.http.get(`${v}/runs/${l}/pages/${r}/resources`, { query: p }).then((h) => ({ ...h.meta, data: h.data })),
|
|
50
|
+
fixes: (l, r) => f.http.get(`${v}/runs/${l}/issues/${r}/fixes`).then(g),
|
|
51
|
+
fix: (l, r, p, h = !1) => f.http.post(`${v}/runs/${l}/issues/${r}/fixes/${encodeURIComponent(p)}`, {
|
|
52
52
|
dry_run: h
|
|
53
|
-
}).then(
|
|
53
|
+
}).then(g),
|
|
54
54
|
pageFile: (l, r) => `${v}/runs/${l}/pages/${r}/export`,
|
|
55
|
-
compare: (l, r) =>
|
|
56
|
-
compareIssues: (l) =>
|
|
55
|
+
compare: (l, r) => f.http.get(`${v}/runs/compare`, { query: { to: l, from: r ?? void 0 } }).then(g),
|
|
56
|
+
compareIssues: (l) => f.http.get(`${v}/runs/compare/issues`, {
|
|
57
57
|
query: { ...l, from: l.from ?? void 0, check: l.check || void 0 }
|
|
58
58
|
}).then((r) => ({ ...r.meta, data: r.data })),
|
|
59
|
-
hosts: (l = {}) =>
|
|
59
|
+
hosts: (l = {}) => f.http.get(`${v}/hosts`, {
|
|
60
60
|
query: {
|
|
61
61
|
class: l.class || void 0,
|
|
62
62
|
search: l.search || void 0,
|
|
63
63
|
host: l.host || void 0
|
|
64
64
|
}
|
|
65
|
-
}).then(
|
|
66
|
-
ignores: () =>
|
|
67
|
-
hide: (l) =>
|
|
68
|
-
hidePreview: (l) =>
|
|
69
|
-
unhide: (l) =>
|
|
65
|
+
}).then(g),
|
|
66
|
+
ignores: () => f.http.get(`${v}/ignores`).then(g),
|
|
67
|
+
hide: (l) => f.http.post(`${v}/ignores`, l).then(g),
|
|
68
|
+
hidePreview: (l) => f.http.post(`${v}/ignores`, { ...l, dry_run: !0 }).then((r) => r.data.hidden),
|
|
69
|
+
unhide: (l) => f.http.delete(`${v}/ignores/${l}`).then(() => {
|
|
70
70
|
}),
|
|
71
|
-
settings: () =>
|
|
72
|
-
saveSettings: (l) =>
|
|
71
|
+
settings: () => f.http.get(`${v}/settings`).then((l) => l.data.values),
|
|
72
|
+
saveSettings: (l) => f.http.put(`${v}/settings`, { values: l }).then((r) => r.data.values)
|
|
73
73
|
};
|
|
74
74
|
}
|
|
75
75
|
const ct = {
|
|
@@ -120,6 +120,8 @@ const ct = {
|
|
|
120
120
|
"group-other": "Other",
|
|
121
121
|
sources: "Content searched",
|
|
122
122
|
"sources-missing": "Installed, but not searched:",
|
|
123
|
+
"sources-help": "Besides crawling the site, the audit reads the text modules keep in the database — drafts, hidden records and fields the template never prints — and looks there for absolute addresses, such as links to a development stand. Green: modules that hand their text over. Orange: modules installed here that do not yet. Their published pages are still crawled, but their drafts and hidden fields are not searched, and a fix button cannot reach them.",
|
|
124
|
+
"sources-help-label": "What this means",
|
|
123
125
|
"sync-queue": "The queue runs jobs inside the request (sync), so the panel cannot start a run. Run php artisan webx:audit:run from the terminal or cron.",
|
|
124
126
|
"already-running": "An audit is already running.",
|
|
125
127
|
check: "Check",
|
|
@@ -313,8 +315,8 @@ const ct = {
|
|
|
313
315
|
}, De = /* @__PURE__ */ new WeakSet();
|
|
314
316
|
function ne() {
|
|
315
317
|
try {
|
|
316
|
-
const { i18n:
|
|
317
|
-
De.has(
|
|
318
|
+
const { i18n: f } = le();
|
|
319
|
+
De.has(f) || (f.defaults("webx-audit", ct), De.add(f));
|
|
318
320
|
} catch {
|
|
319
321
|
}
|
|
320
322
|
}
|
|
@@ -329,17 +331,17 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
329
331
|
props: {
|
|
330
332
|
host: {}
|
|
331
333
|
},
|
|
332
|
-
setup(
|
|
333
|
-
const v =
|
|
334
|
+
setup(f) {
|
|
335
|
+
const v = f, g = re(le());
|
|
334
336
|
ne();
|
|
335
|
-
const o = ee("webx-audit"), l = oe(), r = we(),
|
|
337
|
+
const o = ee("webx-audit"), l = oe(), r = we(), p = C(null), h = C(null), b = (c) => c != null && (c >= 400 || c === 0);
|
|
336
338
|
return ve(async () => {
|
|
337
339
|
try {
|
|
338
|
-
|
|
339
|
-
} catch (
|
|
340
|
-
h.value = l(
|
|
340
|
+
p.value = await g.hosts({ host: v.host });
|
|
341
|
+
} catch (c) {
|
|
342
|
+
h.value = l(c);
|
|
341
343
|
}
|
|
342
|
-
}), (
|
|
344
|
+
}), (c, z) => (t(), y("div", pt, [
|
|
343
345
|
h.value ? (t(), u(e(P), {
|
|
344
346
|
key: 0,
|
|
345
347
|
size: "sm",
|
|
@@ -349,9 +351,9 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
349
351
|
n(s(h.value), 1)
|
|
350
352
|
]),
|
|
351
353
|
_: 1
|
|
352
|
-
})) :
|
|
353
|
-
|
|
354
|
-
|
|
354
|
+
})) : p.value ? (t(), y(L, { key: 2 }, [
|
|
355
|
+
p.value.pages?.length ? (t(), y("section", gt, [
|
|
356
|
+
d(e(P), {
|
|
355
357
|
size: "sm",
|
|
356
358
|
weight: "semibold"
|
|
357
359
|
}, {
|
|
@@ -360,53 +362,53 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
360
362
|
]),
|
|
361
363
|
_: 1
|
|
362
364
|
}),
|
|
363
|
-
(t(!0),
|
|
364
|
-
key:
|
|
365
|
+
(t(!0), y(L, null, M(p.value.pages, (w, A) => (t(), y("div", {
|
|
366
|
+
key: A,
|
|
365
367
|
class: "wx-audit-places__row"
|
|
366
368
|
}, [
|
|
367
|
-
|
|
368
|
-
href:
|
|
369
|
+
d(e(xe), {
|
|
370
|
+
href: w.page,
|
|
369
371
|
target: "_blank",
|
|
370
372
|
class: "wx-audit-places__url"
|
|
371
373
|
}, {
|
|
372
374
|
default: a(() => [
|
|
373
|
-
n(s(
|
|
375
|
+
n(s(w.page), 1)
|
|
374
376
|
]),
|
|
375
377
|
_: 2
|
|
376
378
|
}, 1032, ["href"]),
|
|
377
|
-
|
|
379
|
+
d(e(P), {
|
|
378
380
|
size: "sm",
|
|
379
381
|
tone: "muted",
|
|
380
382
|
class: "wx-audit-places__url"
|
|
381
383
|
}, {
|
|
382
384
|
default: a(() => [
|
|
383
|
-
n(s(
|
|
385
|
+
n(s(w.kind) + " → " + s(w.url), 1)
|
|
384
386
|
]),
|
|
385
387
|
_: 2
|
|
386
388
|
}, 1024),
|
|
387
|
-
|
|
389
|
+
w.anchor ? (t(), u(e(P), {
|
|
388
390
|
key: 0,
|
|
389
391
|
size: "sm"
|
|
390
392
|
}, {
|
|
391
393
|
default: a(() => [
|
|
392
|
-
n("«" + s(
|
|
394
|
+
n("«" + s(w.anchor) + "»", 1)
|
|
393
395
|
]),
|
|
394
396
|
_: 2
|
|
395
|
-
}, 1024)) :
|
|
396
|
-
|
|
397
|
+
}, 1024)) : S("", !0),
|
|
398
|
+
b(w.status) ? (t(), u(e(B), {
|
|
397
399
|
key: 1,
|
|
398
400
|
type: "danger",
|
|
399
401
|
size: "sm"
|
|
400
402
|
}, {
|
|
401
403
|
default: a(() => [
|
|
402
|
-
n(s(
|
|
404
|
+
n(s(w.status || e(o)("page.status-none")), 1)
|
|
403
405
|
]),
|
|
404
406
|
_: 2
|
|
405
|
-
}, 1024)) :
|
|
407
|
+
}, 1024)) : S("", !0)
|
|
406
408
|
]))), 128))
|
|
407
|
-
])) :
|
|
408
|
-
|
|
409
|
-
|
|
409
|
+
])) : S("", !0),
|
|
410
|
+
p.value.fields?.length ? (t(), y("section", vt, [
|
|
411
|
+
d(e(P), {
|
|
410
412
|
size: "sm",
|
|
411
413
|
weight: "semibold"
|
|
412
414
|
}, {
|
|
@@ -415,26 +417,26 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
415
417
|
]),
|
|
416
418
|
_: 1
|
|
417
419
|
}),
|
|
418
|
-
(t(!0),
|
|
419
|
-
key:
|
|
420
|
+
(t(!0), y(L, null, M(p.value.fields, (w, A) => (t(), y("div", {
|
|
421
|
+
key: A,
|
|
420
422
|
class: "wx-audit-places__row"
|
|
421
423
|
}, [
|
|
422
|
-
|
|
424
|
+
d(e(P), { size: "sm" }, {
|
|
423
425
|
default: a(() => [
|
|
424
|
-
n(s(
|
|
426
|
+
n(s(w.record_label), 1)
|
|
425
427
|
]),
|
|
426
428
|
_: 2
|
|
427
429
|
}, 1024),
|
|
428
|
-
|
|
430
|
+
d(e(P), {
|
|
429
431
|
size: "sm",
|
|
430
432
|
tone: "muted"
|
|
431
433
|
}, {
|
|
432
434
|
default: a(() => [
|
|
433
|
-
n(s(
|
|
435
|
+
n(s(w.source) + " · " + s(w.field) + s(w.locale ? ` · ${w.locale}` : ""), 1)
|
|
434
436
|
]),
|
|
435
437
|
_: 2
|
|
436
438
|
}, 1024),
|
|
437
|
-
|
|
439
|
+
w.published ? S("", !0) : (t(), u(e(B), {
|
|
438
440
|
key: 0,
|
|
439
441
|
size: "sm"
|
|
440
442
|
}, {
|
|
@@ -443,60 +445,60 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
443
445
|
]),
|
|
444
446
|
_: 1
|
|
445
447
|
})),
|
|
446
|
-
|
|
448
|
+
d(e(P), {
|
|
447
449
|
size: "sm",
|
|
448
450
|
tone: "muted",
|
|
449
451
|
class: "wx-audit-places__url"
|
|
450
452
|
}, {
|
|
451
453
|
default: a(() => [
|
|
452
|
-
n(s(
|
|
454
|
+
n(s(w.url), 1)
|
|
453
455
|
]),
|
|
454
456
|
_: 2
|
|
455
457
|
}, 1024),
|
|
456
|
-
|
|
458
|
+
w.edit_url ? (t(), u(e(K), {
|
|
457
459
|
key: 1,
|
|
458
460
|
size: "sm",
|
|
459
461
|
variant: "text",
|
|
460
462
|
icon: "edit",
|
|
461
|
-
onClick: (
|
|
463
|
+
onClick: (O) => e(r).push(w.edit_url)
|
|
462
464
|
}, {
|
|
463
465
|
default: a(() => [
|
|
464
466
|
n(s(e(o)("page.open-editor")), 1)
|
|
465
467
|
]),
|
|
466
468
|
_: 1
|
|
467
|
-
}, 8, ["onClick"])) :
|
|
469
|
+
}, 8, ["onClick"])) : S("", !0)
|
|
468
470
|
]))), 128))
|
|
469
|
-
])) :
|
|
471
|
+
])) : S("", !0)
|
|
470
472
|
], 64)) : (t(), u(e(fe), {
|
|
471
473
|
key: 1,
|
|
472
474
|
rows: 2
|
|
473
475
|
}))
|
|
474
476
|
]));
|
|
475
477
|
}
|
|
476
|
-
}), ie = (
|
|
477
|
-
const
|
|
478
|
+
}), ie = (f, v) => {
|
|
479
|
+
const g = f.__vccOpts || f;
|
|
478
480
|
for (const [o, l] of v)
|
|
479
|
-
|
|
480
|
-
return
|
|
481
|
-
}, ft = /* @__PURE__ */ ie(ht, [["__scopeId", "data-v-
|
|
481
|
+
g[o] = l;
|
|
482
|
+
return g;
|
|
483
|
+
}, ft = /* @__PURE__ */ ie(ht, [["__scopeId", "data-v-e95fc205"]]), me = /* @__PURE__ */ se({
|
|
482
484
|
__name: "AuditLayout",
|
|
483
485
|
props: {
|
|
484
486
|
base: {},
|
|
485
487
|
current: {},
|
|
486
488
|
card: { type: Boolean, default: !0 }
|
|
487
489
|
},
|
|
488
|
-
setup(
|
|
489
|
-
const v =
|
|
490
|
+
setup(f) {
|
|
491
|
+
const v = f, g = le(), o = we(), l = Ye();
|
|
490
492
|
ne();
|
|
491
|
-
const r = ee("webx-audit"),
|
|
492
|
-
() =>
|
|
493
|
-
), h =
|
|
493
|
+
const r = ee("webx-audit"), p = q(
|
|
494
|
+
() => g.state.manifest?.modules.find((z) => z.id === "audit")?.title ?? r("module.title")
|
|
495
|
+
), h = q(() => [
|
|
494
496
|
{ value: "overview", label: r("page.overview") },
|
|
495
497
|
{ value: "issues", label: r("page.issues") },
|
|
496
498
|
{ value: "pages", label: r("page.pages") },
|
|
497
499
|
{ value: "hosts", label: r("page.hosts") },
|
|
498
500
|
{ value: "runs", label: r("page.runs") }
|
|
499
|
-
]),
|
|
501
|
+
]), b = q(
|
|
500
502
|
() => v.current === "settings" ? [] : [
|
|
501
503
|
{
|
|
502
504
|
key: "settings",
|
|
@@ -507,24 +509,24 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
507
509
|
}
|
|
508
510
|
}
|
|
509
511
|
]
|
|
510
|
-
),
|
|
512
|
+
), c = q({
|
|
511
513
|
/* The settings belong to no tab; the overview's stays lit as the way back. */
|
|
512
514
|
get: () => v.current === "settings" ? "overview" : v.current,
|
|
513
|
-
set: (
|
|
514
|
-
const
|
|
515
|
-
|
|
515
|
+
set: (z) => {
|
|
516
|
+
const w = z === "overview" ? v.base : `${v.base}/${String(z)}`;
|
|
517
|
+
w !== l.path && o.push(w);
|
|
516
518
|
}
|
|
517
519
|
});
|
|
518
|
-
return (
|
|
519
|
-
view:
|
|
520
|
-
"onUpdate:view":
|
|
521
|
-
title:
|
|
520
|
+
return (z, w) => (t(), u(e(tt), {
|
|
521
|
+
view: c.value,
|
|
522
|
+
"onUpdate:view": w[0] || (w[0] = (A) => c.value = A),
|
|
523
|
+
title: p.value,
|
|
522
524
|
views: h.value,
|
|
523
|
-
actions:
|
|
525
|
+
actions: b.value,
|
|
524
526
|
card: v.card
|
|
525
527
|
}, {
|
|
526
528
|
default: a(() => [
|
|
527
|
-
Ze(
|
|
529
|
+
Ze(z.$slots, "default")
|
|
528
530
|
]),
|
|
529
531
|
_: 3
|
|
530
532
|
}, 8, ["view", "title", "views", "actions", "card"]));
|
|
@@ -534,128 +536,128 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
534
536
|
props: {
|
|
535
537
|
base: {}
|
|
536
538
|
},
|
|
537
|
-
setup(
|
|
538
|
-
const v =
|
|
539
|
+
setup(f) {
|
|
540
|
+
const v = f, g = re(le());
|
|
539
541
|
ne();
|
|
540
|
-
const o = ee("webx-audit"), l = ee("webx-admin"), r = oe(),
|
|
542
|
+
const o = ee("webx-audit"), l = ee("webx-admin"), r = oe(), p = C(null), h = C(!1), b = C(""), c = C(null), z = C([]), w = {
|
|
541
543
|
dev: "danger",
|
|
542
544
|
own_mirror: "warning",
|
|
543
545
|
external: "info",
|
|
544
546
|
own: "success"
|
|
545
|
-
},
|
|
547
|
+
}, A = q(() => [
|
|
546
548
|
{ key: "host", label: o("page.host"), minWidth: 220 },
|
|
547
549
|
{ key: "links", label: o("page.links"), width: 90, align: "right" },
|
|
548
550
|
{ key: "pages", label: o("page.pages"), width: 90, align: "right", hideBelow: 560 },
|
|
549
551
|
{ key: "broken", label: o("page.broken"), width: 100, align: "right", hideBelow: 640 },
|
|
550
552
|
{ key: "fields", label: o("page.fields"), width: 120, align: "right" },
|
|
551
553
|
{ key: "first_seen", label: o("page.first-seen"), minWidth: 140, hideBelow: 760 }
|
|
552
|
-
]), O =
|
|
553
|
-
() => Object.keys(
|
|
554
|
-
value:
|
|
555
|
-
label: `${o(`page.host-${
|
|
554
|
+
]), O = q(
|
|
555
|
+
() => Object.keys(w).map((_) => ({
|
|
556
|
+
value: _,
|
|
557
|
+
label: `${o(`page.host-${_}`)}${p.value?.classes[_] ? ` · ${p.value.classes[_]}` : ""}`
|
|
556
558
|
}))
|
|
557
559
|
);
|
|
558
|
-
function i(
|
|
559
|
-
return typeof
|
|
560
|
+
function i(_) {
|
|
561
|
+
return typeof _ == "string" && _ in w ? _ : null;
|
|
560
562
|
}
|
|
561
563
|
async function N() {
|
|
562
564
|
h.value = !0;
|
|
563
565
|
try {
|
|
564
|
-
|
|
565
|
-
} catch (
|
|
566
|
-
X.danger(r(
|
|
566
|
+
p.value = await g.hosts({ class: c.value, search: b.value }), z.value = [];
|
|
567
|
+
} catch (_) {
|
|
568
|
+
X.danger(r(_));
|
|
567
569
|
} finally {
|
|
568
570
|
h.value = !1;
|
|
569
571
|
}
|
|
570
572
|
}
|
|
571
|
-
return de([
|
|
573
|
+
return de([c, b], () => {
|
|
572
574
|
N();
|
|
573
|
-
}), ve(N), (
|
|
575
|
+
}), ve(N), (_, T) => (t(), u(me, {
|
|
574
576
|
base: v.base,
|
|
575
577
|
current: "hosts"
|
|
576
578
|
}, {
|
|
577
579
|
default: a(() => [
|
|
578
|
-
|
|
579
|
-
expanded:
|
|
580
|
-
"onUpdate:expanded":
|
|
581
|
-
search:
|
|
582
|
-
"onUpdate:search":
|
|
583
|
-
data:
|
|
584
|
-
columns:
|
|
580
|
+
d(e(he), {
|
|
581
|
+
expanded: z.value,
|
|
582
|
+
"onUpdate:expanded": T[1] || (T[1] = (k) => z.value = k),
|
|
583
|
+
search: b.value,
|
|
584
|
+
"onUpdate:search": T[2] || (T[2] = (k) => b.value = k),
|
|
585
|
+
data: p.value?.hosts ?? [],
|
|
586
|
+
columns: A.value,
|
|
585
587
|
"row-key": "host",
|
|
586
588
|
expandable: "",
|
|
587
589
|
flush: "",
|
|
588
590
|
searchable: "",
|
|
589
591
|
"search-placeholder": e(o)("page.search-host"),
|
|
590
592
|
loading: h.value,
|
|
591
|
-
"filters-count":
|
|
593
|
+
"filters-count": c.value ? 1 : 0,
|
|
592
594
|
"filters-label": e(l)("filters.title"),
|
|
593
|
-
"row-class": (
|
|
595
|
+
"row-class": (k) => k.class === "dev" ? "is-stand" : void 0,
|
|
594
596
|
"empty-text": e(o)("page.hosts-empty")
|
|
595
597
|
}, {
|
|
596
598
|
filters: a(() => [
|
|
597
|
-
|
|
598
|
-
"model-value":
|
|
599
|
+
d(e(pe), {
|
|
600
|
+
"model-value": c.value,
|
|
599
601
|
options: O.value,
|
|
600
602
|
placeholder: e(o)("page.any-class"),
|
|
601
603
|
clearable: "",
|
|
602
|
-
"onUpdate:modelValue":
|
|
604
|
+
"onUpdate:modelValue": T[0] || (T[0] = (k) => c.value = i(k))
|
|
603
605
|
}, null, 8, ["model-value", "options", "placeholder"])
|
|
604
606
|
]),
|
|
605
|
-
"cell-host": a(({ row:
|
|
607
|
+
"cell-host": a(({ row: k }) => [
|
|
606
608
|
I("span", _t, [
|
|
607
|
-
|
|
608
|
-
type:
|
|
609
|
+
d(e(B), {
|
|
610
|
+
type: w[k.class],
|
|
609
611
|
size: "sm"
|
|
610
612
|
}, {
|
|
611
613
|
default: a(() => [
|
|
612
|
-
n(s(e(o)(`page.host-${
|
|
614
|
+
n(s(e(o)(`page.host-${k.class}`)), 1)
|
|
613
615
|
]),
|
|
614
616
|
_: 2
|
|
615
617
|
}, 1032, ["type"]),
|
|
616
|
-
|
|
618
|
+
d(e(P), {
|
|
617
619
|
size: "sm",
|
|
618
|
-
tone:
|
|
620
|
+
tone: k.class === "dev" ? "danger" : void 0,
|
|
619
621
|
weight: "medium"
|
|
620
622
|
}, {
|
|
621
623
|
default: a(() => [
|
|
622
|
-
n(s(
|
|
624
|
+
n(s(k.host), 1)
|
|
623
625
|
]),
|
|
624
626
|
_: 2
|
|
625
627
|
}, 1032, ["tone"])
|
|
626
628
|
])
|
|
627
629
|
]),
|
|
628
|
-
"cell-broken": a(({ row:
|
|
629
|
-
|
|
630
|
+
"cell-broken": a(({ row: k }) => [
|
|
631
|
+
d(e(P), {
|
|
630
632
|
size: "sm",
|
|
631
|
-
tone:
|
|
633
|
+
tone: k.broken ? "danger" : "muted"
|
|
632
634
|
}, {
|
|
633
635
|
default: a(() => [
|
|
634
|
-
n(s(
|
|
636
|
+
n(s(k.broken), 1)
|
|
635
637
|
]),
|
|
636
638
|
_: 2
|
|
637
639
|
}, 1032, ["tone"])
|
|
638
640
|
]),
|
|
639
|
-
"cell-fields": a(({ row:
|
|
640
|
-
|
|
641
|
+
"cell-fields": a(({ row: k }) => [
|
|
642
|
+
d(e(P), {
|
|
641
643
|
size: "sm",
|
|
642
|
-
tone:
|
|
644
|
+
tone: k.fields && k.class === "dev" ? "danger" : void 0
|
|
643
645
|
}, {
|
|
644
646
|
default: a(() => [
|
|
645
|
-
n(s(
|
|
647
|
+
n(s(k.fields), 1)
|
|
646
648
|
]),
|
|
647
649
|
_: 2
|
|
648
650
|
}, 1032, ["tone"])
|
|
649
651
|
]),
|
|
650
|
-
"cell-first_seen": a(({ row:
|
|
651
|
-
|
|
652
|
+
"cell-first_seen": a(({ row: k }) => [
|
|
653
|
+
k.first_seen ? (t(), u(e(ke), {
|
|
652
654
|
key: 0,
|
|
653
|
-
value:
|
|
654
|
-
}, null, 8, ["value"])) :
|
|
655
|
+
value: k.first_seen
|
|
656
|
+
}, null, 8, ["value"])) : S("", !0)
|
|
655
657
|
]),
|
|
656
|
-
expanded: a(({ row:
|
|
657
|
-
|
|
658
|
-
host:
|
|
658
|
+
expanded: a(({ row: k }) => [
|
|
659
|
+
d(ft, {
|
|
660
|
+
host: k.host
|
|
659
661
|
}, null, 8, ["host"])
|
|
660
662
|
]),
|
|
661
663
|
_: 1
|
|
@@ -675,24 +677,24 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
675
677
|
props: {
|
|
676
678
|
details: {}
|
|
677
679
|
},
|
|
678
|
-
setup(
|
|
679
|
-
const v =
|
|
680
|
+
setup(f) {
|
|
681
|
+
const v = f, g = we();
|
|
680
682
|
ne();
|
|
681
683
|
const o = ee("webx-audit");
|
|
682
|
-
function l(
|
|
683
|
-
const
|
|
684
|
-
return
|
|
684
|
+
function l(b) {
|
|
685
|
+
const c = Number(b);
|
|
686
|
+
return c >= 500 || c === 0 ? "danger" : c >= 400 ? "warning" : c >= 300 ? "info" : "success";
|
|
685
687
|
}
|
|
686
|
-
function r(
|
|
687
|
-
return
|
|
688
|
+
function r(b, c) {
|
|
689
|
+
return b[c.key];
|
|
688
690
|
}
|
|
689
|
-
function
|
|
690
|
-
return
|
|
691
|
+
function p(b) {
|
|
692
|
+
return b == null ? "" : o(b ? "page.yes" : "page.no");
|
|
691
693
|
}
|
|
692
|
-
function h(
|
|
693
|
-
return
|
|
694
|
+
function h(b) {
|
|
695
|
+
return b == null ? "" : String(b);
|
|
694
696
|
}
|
|
695
|
-
return (
|
|
697
|
+
return (b, c) => (t(), y("div", bt, [
|
|
696
698
|
v.details.summary ? (t(), u(e(P), {
|
|
697
699
|
key: 0,
|
|
698
700
|
size: "sm"
|
|
@@ -701,43 +703,43 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
701
703
|
n(s(v.details.summary), 1)
|
|
702
704
|
]),
|
|
703
705
|
_: 1
|
|
704
|
-
})) :
|
|
705
|
-
v.details.table && v.details.table.rows.length ? (t(),
|
|
706
|
+
})) : S("", !0),
|
|
707
|
+
v.details.table && v.details.table.rows.length ? (t(), y("div", kt, [
|
|
706
708
|
I("table", xt, [
|
|
707
709
|
I("thead", null, [
|
|
708
710
|
I("tr", null, [
|
|
709
|
-
(t(!0),
|
|
710
|
-
key:
|
|
711
|
-
}, s(
|
|
711
|
+
(t(!0), y(L, null, M(v.details.table.columns, (z) => (t(), y("th", {
|
|
712
|
+
key: z.key
|
|
713
|
+
}, s(z.label), 1))), 128))
|
|
712
714
|
])
|
|
713
715
|
]),
|
|
714
716
|
I("tbody", null, [
|
|
715
|
-
(t(!0),
|
|
716
|
-
(t(!0),
|
|
717
|
-
key:
|
|
717
|
+
(t(!0), y(L, null, M(v.details.table.rows, (z, w) => (t(), y("tr", { key: w }, [
|
|
718
|
+
(t(!0), y(L, null, M(v.details.table.columns, (A) => (t(), y("td", {
|
|
719
|
+
key: A.key
|
|
718
720
|
}, [
|
|
719
|
-
|
|
721
|
+
A.type === "url" && h(r(z, A)) ? (t(), u(e(xe), {
|
|
720
722
|
key: 0,
|
|
721
|
-
href: h(r(
|
|
723
|
+
href: h(r(z, A)),
|
|
722
724
|
target: "_blank",
|
|
723
725
|
class: "wx-audit-details__url"
|
|
724
726
|
}, {
|
|
725
727
|
default: a(() => [
|
|
726
|
-
n(s(h(r(
|
|
728
|
+
n(s(h(r(z, A))), 1)
|
|
727
729
|
]),
|
|
728
730
|
_: 2
|
|
729
|
-
}, 1032, ["href"])) :
|
|
731
|
+
}, 1032, ["href"])) : A.type === "status" && r(z, A) !== null ? (t(), u(e(B), {
|
|
730
732
|
key: 1,
|
|
731
|
-
type: l(r(
|
|
733
|
+
type: l(r(z, A)),
|
|
732
734
|
size: "sm"
|
|
733
735
|
}, {
|
|
734
736
|
default: a(() => [
|
|
735
|
-
n(s(h(r(
|
|
737
|
+
n(s(h(r(z, A))), 1)
|
|
736
738
|
]),
|
|
737
739
|
_: 2
|
|
738
|
-
}, 1032, ["type"])) :
|
|
739
|
-
n(s(
|
|
740
|
-
], 64)) :
|
|
740
|
+
}, 1032, ["type"])) : A.type === "bool" ? (t(), y(L, { key: 2 }, [
|
|
741
|
+
n(s(p(r(z, A))), 1)
|
|
742
|
+
], 64)) : A.type === "missing" && !h(r(z, A)) ? (t(), u(e(P), {
|
|
741
743
|
key: 3,
|
|
742
744
|
size: "sm",
|
|
743
745
|
tone: "danger"
|
|
@@ -746,34 +748,34 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
746
748
|
n(s(e(o)("page.missing")), 1)
|
|
747
749
|
]),
|
|
748
750
|
_: 1
|
|
749
|
-
})) :
|
|
751
|
+
})) : A.type === "edit" && h(r(z, A)) ? (t(), u(e(K), {
|
|
750
752
|
key: 4,
|
|
751
753
|
size: "sm",
|
|
752
754
|
variant: "text",
|
|
753
755
|
icon: "edit",
|
|
754
|
-
onClick: (O) => e(
|
|
756
|
+
onClick: (O) => e(g).push(h(r(z, A)))
|
|
755
757
|
}, {
|
|
756
758
|
default: a(() => [
|
|
757
759
|
n(s(e(o)("page.open-editor")), 1)
|
|
758
760
|
]),
|
|
759
761
|
_: 1
|
|
760
|
-
}, 8, ["onClick"])) :
|
|
761
|
-
n(s(h(r(
|
|
762
|
+
}, 8, ["onClick"])) : A.type === "code" ? (t(), y("code", wt, s(h(r(z, A))), 1)) : (t(), y(L, { key: 6 }, [
|
|
763
|
+
n(s(h(r(z, A))), 1)
|
|
762
764
|
], 64))
|
|
763
765
|
]))), 128))
|
|
764
766
|
]))), 128))
|
|
765
767
|
])
|
|
766
768
|
])
|
|
767
|
-
])) :
|
|
769
|
+
])) : S("", !0)
|
|
768
770
|
]));
|
|
769
771
|
}
|
|
770
772
|
}), je = /* @__PURE__ */ ie($t, [["__scopeId", "data-v-c364445d"]]), zt = { class: "wx-audit-fix" }, St = { class: "wx-audit-fix__changes" }, Ct = {
|
|
771
773
|
key: 0,
|
|
772
774
|
class: "wx-audit-fix__field"
|
|
773
|
-
}, At = { class: "wx-audit-fix__value" },
|
|
775
|
+
}, At = { class: "wx-audit-fix__value" }, Wt = {
|
|
774
776
|
key: 0,
|
|
775
777
|
class: "wx-audit-fix__count"
|
|
776
|
-
},
|
|
778
|
+
}, Pt = { class: "wx-audit-fix__value" }, It = { class: "wx-audit-fix__actions" }, Ot = /* @__PURE__ */ se({
|
|
777
779
|
__name: "AuditFixDialog",
|
|
778
780
|
props: /* @__PURE__ */ Se({
|
|
779
781
|
run: {},
|
|
@@ -783,140 +785,140 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
783
785
|
openModifiers: {}
|
|
784
786
|
}),
|
|
785
787
|
emits: /* @__PURE__ */ Se(["fixed"], ["update:open"]),
|
|
786
|
-
setup(
|
|
787
|
-
const
|
|
788
|
+
setup(f, { emit: v }) {
|
|
789
|
+
const g = f, o = v, l = Me(f, "open"), r = re(le());
|
|
788
790
|
ne();
|
|
789
|
-
const
|
|
790
|
-
async function
|
|
791
|
-
|
|
791
|
+
const p = ee("webx-audit"), h = oe(), b = we(), c = C(null), z = C(null), w = C(null);
|
|
792
|
+
async function A() {
|
|
793
|
+
c.value = null, z.value = null;
|
|
792
794
|
try {
|
|
793
|
-
|
|
795
|
+
c.value = await r.fixes(g.run, g.issue.id);
|
|
794
796
|
} catch (N) {
|
|
795
|
-
|
|
797
|
+
z.value = h(N);
|
|
796
798
|
}
|
|
797
799
|
}
|
|
798
800
|
async function O(N) {
|
|
799
|
-
|
|
801
|
+
w.value = N.id;
|
|
800
802
|
try {
|
|
801
|
-
await r.fix(
|
|
802
|
-
} catch (
|
|
803
|
-
X.danger(h(
|
|
803
|
+
await r.fix(g.run, g.issue.id, N.id), X.success(p("page.fix-applied")), o("fixed", N.id), l.value = !1;
|
|
804
|
+
} catch (_) {
|
|
805
|
+
X.danger(h(_));
|
|
804
806
|
} finally {
|
|
805
|
-
|
|
807
|
+
w.value = null;
|
|
806
808
|
}
|
|
807
809
|
}
|
|
808
810
|
function i(N) {
|
|
809
|
-
l.value = !1,
|
|
811
|
+
l.value = !1, b.push(N);
|
|
810
812
|
}
|
|
811
813
|
return de(
|
|
812
|
-
[l, () =>
|
|
814
|
+
[l, () => g.issue.id],
|
|
813
815
|
([N]) => {
|
|
814
|
-
N &&
|
|
816
|
+
N && A();
|
|
815
817
|
},
|
|
816
818
|
{ immediate: !0 }
|
|
817
|
-
), (N,
|
|
819
|
+
), (N, _) => (t(), u(e(Ke), {
|
|
818
820
|
open: l.value,
|
|
819
|
-
"onUpdate:open":
|
|
820
|
-
title: e(
|
|
821
|
+
"onUpdate:open": _[0] || (_[0] = (T) => l.value = T),
|
|
822
|
+
title: e(p)("page.fix-button"),
|
|
821
823
|
width: 640
|
|
822
824
|
}, {
|
|
823
825
|
default: a(() => [
|
|
824
826
|
I("div", zt, [
|
|
825
|
-
|
|
827
|
+
z.value ? (t(), u(e(P), {
|
|
826
828
|
key: 0,
|
|
827
829
|
size: "sm",
|
|
828
830
|
tone: "danger"
|
|
829
831
|
}, {
|
|
830
832
|
default: a(() => [
|
|
831
|
-
n(s(
|
|
833
|
+
n(s(z.value), 1)
|
|
832
834
|
]),
|
|
833
835
|
_: 1
|
|
834
|
-
})) :
|
|
836
|
+
})) : c.value ? c.value.length === 0 ? (t(), u(e(P), {
|
|
835
837
|
key: 2,
|
|
836
838
|
size: "sm",
|
|
837
839
|
tone: "muted"
|
|
838
840
|
}, {
|
|
839
841
|
default: a(() => [
|
|
840
|
-
n(s(e(
|
|
842
|
+
n(s(e(p)("page.fix-none")), 1)
|
|
841
843
|
]),
|
|
842
844
|
_: 1
|
|
843
|
-
})) :
|
|
845
|
+
})) : S("", !0) : (t(), u(e(fe), {
|
|
844
846
|
key: 1,
|
|
845
847
|
rows: 3
|
|
846
848
|
})),
|
|
847
|
-
(t(!0),
|
|
848
|
-
key:
|
|
849
|
+
(t(!0), y(L, null, M(c.value ?? [], (T) => (t(), y("section", {
|
|
850
|
+
key: T.id,
|
|
849
851
|
class: "wx-audit-fix__offer"
|
|
850
852
|
}, [
|
|
851
|
-
|
|
853
|
+
d(e(P), { weight: "semibold" }, {
|
|
852
854
|
default: a(() => [
|
|
853
|
-
n(s(
|
|
855
|
+
n(s(T.title), 1)
|
|
854
856
|
]),
|
|
855
857
|
_: 2
|
|
856
858
|
}, 1024),
|
|
857
|
-
|
|
859
|
+
T.description ? (t(), u(e(P), {
|
|
858
860
|
key: 0,
|
|
859
861
|
size: "sm",
|
|
860
862
|
tone: "muted"
|
|
861
863
|
}, {
|
|
862
864
|
default: a(() => [
|
|
863
|
-
n(s(
|
|
865
|
+
n(s(T.description), 1)
|
|
864
866
|
]),
|
|
865
867
|
_: 2
|
|
866
|
-
}, 1024)) :
|
|
868
|
+
}, 1024)) : S("", !0),
|
|
867
869
|
I("table", St, [
|
|
868
870
|
I("thead", null, [
|
|
869
871
|
I("tr", null, [
|
|
870
|
-
I("th", null, s(e(
|
|
871
|
-
I("th", null, s(e(
|
|
872
|
-
I("th", null, s(e(
|
|
873
|
-
|
|
872
|
+
I("th", null, s(e(p)("page.fix-changes")), 1),
|
|
873
|
+
I("th", null, s(e(p)("page.fix-before")), 1),
|
|
874
|
+
I("th", null, s(e(p)("page.fix-after")), 1),
|
|
875
|
+
_[1] || (_[1] = I("th", null, null, -1))
|
|
874
876
|
])
|
|
875
877
|
]),
|
|
876
878
|
I("tbody", null, [
|
|
877
|
-
(t(!0),
|
|
879
|
+
(t(!0), y(L, null, M(T.changes, (k, G) => (t(), y("tr", { key: G }, [
|
|
878
880
|
I("td", null, [
|
|
879
|
-
I("div", null, s(
|
|
880
|
-
|
|
881
|
+
I("div", null, s(k.label), 1),
|
|
882
|
+
k.field ? (t(), y("div", Ct, s(k.field), 1)) : S("", !0)
|
|
881
883
|
]),
|
|
882
884
|
I("td", At, [
|
|
883
|
-
n(s(
|
|
884
|
-
|
|
885
|
+
n(s(k.before ?? "") + " ", 1),
|
|
886
|
+
k.count ? (t(), y("span", Wt, "× " + s(k.count), 1)) : S("", !0)
|
|
885
887
|
]),
|
|
886
|
-
I("td",
|
|
888
|
+
I("td", Pt, s(k.after ?? ""), 1),
|
|
887
889
|
I("td", null, [
|
|
888
|
-
|
|
890
|
+
k.edit_url ? (t(), u(e(K), {
|
|
889
891
|
key: 0,
|
|
890
892
|
size: "sm",
|
|
891
893
|
variant: "text",
|
|
892
894
|
icon: "edit",
|
|
893
|
-
"aria-label": e(
|
|
894
|
-
onClick: (Y) => i(
|
|
895
|
-
}, null, 8, ["aria-label", "onClick"])) :
|
|
895
|
+
"aria-label": e(p)("page.open-editor"),
|
|
896
|
+
onClick: (Y) => i(k.edit_url)
|
|
897
|
+
}, null, 8, ["aria-label", "onClick"])) : S("", !0)
|
|
896
898
|
])
|
|
897
899
|
]))), 128))
|
|
898
900
|
])
|
|
899
901
|
]),
|
|
900
|
-
|
|
902
|
+
T.note ? (t(), u(e(P), {
|
|
901
903
|
key: 1,
|
|
902
904
|
size: "sm",
|
|
903
905
|
tone: "muted"
|
|
904
906
|
}, {
|
|
905
907
|
default: a(() => [
|
|
906
|
-
n(s(
|
|
908
|
+
n(s(T.note), 1)
|
|
907
909
|
]),
|
|
908
910
|
_: 2
|
|
909
|
-
}, 1024)) :
|
|
911
|
+
}, 1024)) : S("", !0),
|
|
910
912
|
I("div", It, [
|
|
911
|
-
|
|
913
|
+
d(e(K), {
|
|
912
914
|
type: "primary",
|
|
913
915
|
size: "sm",
|
|
914
|
-
loading:
|
|
915
|
-
disabled:
|
|
916
|
-
onClick: (
|
|
916
|
+
loading: w.value === T.id,
|
|
917
|
+
disabled: w.value !== null,
|
|
918
|
+
onClick: (k) => O(T)
|
|
917
919
|
}, {
|
|
918
920
|
default: a(() => [
|
|
919
|
-
n(s(e(
|
|
921
|
+
n(s(e(p)("page.fix-apply")), 1)
|
|
920
922
|
]),
|
|
921
923
|
_: 1
|
|
922
924
|
}, 8, ["loading", "disabled", "onClick"])
|
|
@@ -937,139 +939,139 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
937
939
|
openModifiers: {}
|
|
938
940
|
}),
|
|
939
941
|
emits: /* @__PURE__ */ Se(["hidden"], ["update:open"]),
|
|
940
|
-
setup(
|
|
941
|
-
const
|
|
942
|
+
setup(f, { emit: v }) {
|
|
943
|
+
const g = f, o = v, l = Me(f, "open"), r = re(le());
|
|
942
944
|
ne();
|
|
943
|
-
const
|
|
944
|
-
let
|
|
945
|
-
function O(
|
|
946
|
-
if (!
|
|
945
|
+
const p = ee("webx-audit"), h = oe(), b = C(""), c = C(""), z = C(null), w = C(!1);
|
|
946
|
+
let A;
|
|
947
|
+
function O(T) {
|
|
948
|
+
if (!T) return "";
|
|
947
949
|
try {
|
|
948
|
-
const
|
|
949
|
-
return
|
|
950
|
+
const k = new URL(T);
|
|
951
|
+
return k.pathname + k.search;
|
|
950
952
|
} catch {
|
|
951
|
-
return
|
|
953
|
+
return T;
|
|
952
954
|
}
|
|
953
955
|
}
|
|
954
|
-
const i =
|
|
956
|
+
const i = q(() => c.value.trim() !== "");
|
|
955
957
|
function N() {
|
|
956
|
-
clearTimeout(
|
|
958
|
+
clearTimeout(A), A = setTimeout(async () => {
|
|
957
959
|
try {
|
|
958
|
-
|
|
960
|
+
z.value = await r.hidePreview({ check: g.issue.check, pattern: b.value });
|
|
959
961
|
} catch {
|
|
960
|
-
|
|
962
|
+
z.value = null;
|
|
961
963
|
}
|
|
962
964
|
}, 300);
|
|
963
965
|
}
|
|
964
|
-
async function
|
|
965
|
-
|
|
966
|
+
async function _() {
|
|
967
|
+
w.value = !0;
|
|
966
968
|
try {
|
|
967
|
-
const
|
|
968
|
-
check:
|
|
969
|
-
pattern:
|
|
970
|
-
reason:
|
|
969
|
+
const T = await r.hide({
|
|
970
|
+
check: g.issue.check,
|
|
971
|
+
pattern: b.value,
|
|
972
|
+
reason: c.value
|
|
971
973
|
});
|
|
972
|
-
X.success(
|
|
973
|
-
} catch (
|
|
974
|
-
X.danger(h(
|
|
974
|
+
X.success(p("page.hidden-done")), o("hidden", T), l.value = !1;
|
|
975
|
+
} catch (T) {
|
|
976
|
+
X.danger(h(T));
|
|
975
977
|
} finally {
|
|
976
|
-
|
|
978
|
+
w.value = !1;
|
|
977
979
|
}
|
|
978
980
|
}
|
|
979
981
|
return de(
|
|
980
|
-
[l, () =>
|
|
981
|
-
([
|
|
982
|
-
|
|
982
|
+
[l, () => g.issue.id],
|
|
983
|
+
([T]) => {
|
|
984
|
+
T && (b.value = O(g.issue.url), c.value = "", z.value = null, N());
|
|
983
985
|
},
|
|
984
986
|
{ immediate: !0 }
|
|
985
|
-
), de(
|
|
987
|
+
), de(b, () => {
|
|
986
988
|
l.value && N();
|
|
987
|
-
}), (
|
|
989
|
+
}), (T, k) => (t(), u(e(Ke), {
|
|
988
990
|
open: l.value,
|
|
989
|
-
"onUpdate:open":
|
|
990
|
-
title: e(
|
|
991
|
+
"onUpdate:open": k[3] || (k[3] = (G) => l.value = G),
|
|
992
|
+
title: e(p)("page.hide-title"),
|
|
991
993
|
width: 560
|
|
992
994
|
}, {
|
|
993
995
|
footer: a(() => [
|
|
994
|
-
|
|
995
|
-
onClick:
|
|
996
|
+
d(e(K), {
|
|
997
|
+
onClick: k[2] || (k[2] = (G) => l.value = !1)
|
|
996
998
|
}, {
|
|
997
999
|
default: a(() => [
|
|
998
|
-
n(s(e(
|
|
1000
|
+
n(s(e(p)("page.dismiss")), 1)
|
|
999
1001
|
]),
|
|
1000
1002
|
_: 1
|
|
1001
1003
|
}),
|
|
1002
|
-
|
|
1004
|
+
d(e(K), {
|
|
1003
1005
|
type: "primary",
|
|
1004
|
-
loading:
|
|
1006
|
+
loading: w.value,
|
|
1005
1007
|
disabled: !i.value,
|
|
1006
|
-
onClick:
|
|
1008
|
+
onClick: _
|
|
1007
1009
|
}, {
|
|
1008
1010
|
default: a(() => [
|
|
1009
|
-
n(s(e(
|
|
1011
|
+
n(s(e(p)("page.hide")), 1)
|
|
1010
1012
|
]),
|
|
1011
1013
|
_: 1
|
|
1012
1014
|
}, 8, ["loading", "disabled"])
|
|
1013
1015
|
]),
|
|
1014
1016
|
default: a(() => [
|
|
1015
1017
|
I("div", Vt, [
|
|
1016
|
-
|
|
1018
|
+
d(e(P), { weight: "semibold" }, {
|
|
1017
1019
|
default: a(() => [
|
|
1018
|
-
n(s(
|
|
1020
|
+
n(s(g.title), 1)
|
|
1019
1021
|
]),
|
|
1020
1022
|
_: 1
|
|
1021
1023
|
}),
|
|
1022
|
-
|
|
1024
|
+
d(e(P), {
|
|
1023
1025
|
size: "sm",
|
|
1024
1026
|
tone: "muted"
|
|
1025
1027
|
}, {
|
|
1026
1028
|
default: a(() => [
|
|
1027
|
-
n(s(e(
|
|
1029
|
+
n(s(e(p)("page.hide-help")), 1)
|
|
1028
1030
|
]),
|
|
1029
1031
|
_: 1
|
|
1030
1032
|
}),
|
|
1031
|
-
|
|
1032
|
-
label: e(
|
|
1033
|
-
help: e(
|
|
1033
|
+
d(e(Re), {
|
|
1034
|
+
label: e(p)("page.hide-pattern"),
|
|
1035
|
+
help: e(p)("page.hide-pattern-help")
|
|
1034
1036
|
}, {
|
|
1035
1037
|
default: a(() => [
|
|
1036
|
-
|
|
1037
|
-
modelValue:
|
|
1038
|
-
"onUpdate:modelValue":
|
|
1038
|
+
d(e(Qe), {
|
|
1039
|
+
modelValue: b.value,
|
|
1040
|
+
"onUpdate:modelValue": k[0] || (k[0] = (G) => b.value = G),
|
|
1039
1041
|
placeholder: "/search/**"
|
|
1040
1042
|
}, null, 8, ["modelValue"])
|
|
1041
1043
|
]),
|
|
1042
1044
|
_: 1
|
|
1043
1045
|
}, 8, ["label", "help"]),
|
|
1044
|
-
|
|
1045
|
-
label: e(
|
|
1046
|
+
d(e(Re), {
|
|
1047
|
+
label: e(p)("page.hide-reason"),
|
|
1046
1048
|
required: ""
|
|
1047
1049
|
}, {
|
|
1048
1050
|
default: a(() => [
|
|
1049
|
-
|
|
1050
|
-
modelValue:
|
|
1051
|
-
"onUpdate:modelValue":
|
|
1051
|
+
d(e(lt), {
|
|
1052
|
+
modelValue: c.value,
|
|
1053
|
+
"onUpdate:modelValue": k[1] || (k[1] = (G) => c.value = G),
|
|
1052
1054
|
rows: 3
|
|
1053
1055
|
}, null, 8, ["modelValue"])
|
|
1054
1056
|
]),
|
|
1055
1057
|
_: 1
|
|
1056
1058
|
}, 8, ["label"]),
|
|
1057
|
-
|
|
1059
|
+
z.value !== null ? (t(), u(e(P), {
|
|
1058
1060
|
key: 0,
|
|
1059
1061
|
size: "sm",
|
|
1060
1062
|
tone: "muted"
|
|
1061
1063
|
}, {
|
|
1062
1064
|
default: a(() => [
|
|
1063
|
-
n(s(e(
|
|
1065
|
+
n(s(e(p)("page.hide-count", { count: z.value })), 1)
|
|
1064
1066
|
]),
|
|
1065
1067
|
_: 1
|
|
1066
|
-
})) :
|
|
1068
|
+
})) : S("", !0)
|
|
1067
1069
|
])
|
|
1068
1070
|
]),
|
|
1069
1071
|
_: 1
|
|
1070
1072
|
}, 8, ["open", "title"]));
|
|
1071
1073
|
}
|
|
1072
|
-
}),
|
|
1074
|
+
}), Tt = /* @__PURE__ */ ie(Nt, [["__scopeId", "data-v-1db364c4"]]), jt = { class: "wx-audit-issues" }, Rt = { class: "wx-audit-issues__head" }, Ft = /* @__PURE__ */ se({
|
|
1073
1075
|
__name: "AuditIssueList",
|
|
1074
1076
|
props: {
|
|
1075
1077
|
run: {},
|
|
@@ -1078,54 +1080,54 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1078
1080
|
title: {}
|
|
1079
1081
|
},
|
|
1080
1082
|
emits: ["changed"],
|
|
1081
|
-
setup(
|
|
1082
|
-
const
|
|
1083
|
+
setup(f, { emit: v }) {
|
|
1084
|
+
const g = f, o = v, l = le(), r = re(l), p = l.can("audit.manage");
|
|
1083
1085
|
ne();
|
|
1084
|
-
const h = ee("webx-audit"),
|
|
1085
|
-
function
|
|
1086
|
-
N.value =
|
|
1086
|
+
const h = ee("webx-audit"), b = oe(), c = C(null), z = C(!1), w = C(1), A = C(null), O = C(null), i = C(!1), N = C(null), _ = C(!1);
|
|
1087
|
+
function T(W) {
|
|
1088
|
+
N.value = W, _.value = !0;
|
|
1087
1089
|
}
|
|
1088
|
-
function
|
|
1089
|
-
|
|
1090
|
+
function k(W) {
|
|
1091
|
+
c.value && !W.pattern ? c.value = [] : c.value && N.value && (c.value = c.value.filter((F) => F.id !== N.value?.id)), o("changed");
|
|
1090
1092
|
}
|
|
1091
|
-
async function
|
|
1092
|
-
if (
|
|
1093
|
+
async function G(W) {
|
|
1094
|
+
if (W.ignore)
|
|
1093
1095
|
try {
|
|
1094
|
-
await r.unhide(
|
|
1096
|
+
await r.unhide(W.ignore.id), X.success(h("page.unhidden")), o("changed");
|
|
1095
1097
|
} catch (F) {
|
|
1096
|
-
X.danger(
|
|
1098
|
+
X.danger(b(F));
|
|
1097
1099
|
}
|
|
1098
1100
|
}
|
|
1099
|
-
function Y(
|
|
1100
|
-
const F =
|
|
1101
|
+
function Y(W) {
|
|
1102
|
+
const F = W.ignore;
|
|
1101
1103
|
return F ? F.created_by ? h("page.hidden-by", { who: F.created_by, reason: F.reason }) : h("page.hidden-reason", { reason: F.reason }) : "";
|
|
1102
1104
|
}
|
|
1103
|
-
function R(
|
|
1104
|
-
O.value =
|
|
1105
|
+
function R(W) {
|
|
1106
|
+
O.value = W, i.value = !0;
|
|
1105
1107
|
}
|
|
1106
|
-
function
|
|
1107
|
-
O.value && (O.value.fixed_with =
|
|
1108
|
+
function D(W) {
|
|
1109
|
+
O.value && (O.value.fixed_with = W);
|
|
1108
1110
|
}
|
|
1109
|
-
async function U(
|
|
1111
|
+
async function U(W = 1) {
|
|
1110
1112
|
try {
|
|
1111
|
-
const F = await r.issues(
|
|
1112
|
-
|
|
1113
|
+
const F = await r.issues(g.run, { ...g.query, page: W, per_page: 50 });
|
|
1114
|
+
c.value = W === 1 ? F.data : [...c.value ?? [], ...F.data], w.value = F.current_page, z.value = F.current_page < F.last_page;
|
|
1113
1115
|
} catch (F) {
|
|
1114
|
-
|
|
1116
|
+
A.value = b(F);
|
|
1115
1117
|
}
|
|
1116
1118
|
}
|
|
1117
|
-
return ve(() => U()), (
|
|
1118
|
-
|
|
1119
|
+
return ve(() => U()), (W, F) => (t(), y("div", jt, [
|
|
1120
|
+
A.value ? (t(), u(e(P), {
|
|
1119
1121
|
key: 0,
|
|
1120
1122
|
size: "sm",
|
|
1121
1123
|
tone: "danger"
|
|
1122
1124
|
}, {
|
|
1123
1125
|
default: a(() => [
|
|
1124
|
-
n(s(
|
|
1126
|
+
n(s(A.value), 1)
|
|
1125
1127
|
]),
|
|
1126
1128
|
_: 1
|
|
1127
|
-
})) :
|
|
1128
|
-
(t(!0),
|
|
1129
|
+
})) : c.value ? (t(), y(L, { key: 2 }, [
|
|
1130
|
+
(t(!0), y(L, null, M(c.value, (V) => (t(), y("div", {
|
|
1129
1131
|
key: V.id,
|
|
1130
1132
|
class: "wx-audit-issues__item"
|
|
1131
1133
|
}, [
|
|
@@ -1140,7 +1142,7 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1140
1142
|
n(s(V.url), 1)
|
|
1141
1143
|
]),
|
|
1142
1144
|
_: 2
|
|
1143
|
-
}, 1032, ["href"])) :
|
|
1145
|
+
}, 1032, ["href"])) : S("", !0),
|
|
1144
1146
|
V.state === "new" ? (t(), u(e(B), {
|
|
1145
1147
|
key: 1,
|
|
1146
1148
|
type: "primary",
|
|
@@ -1150,7 +1152,7 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1150
1152
|
n(s(e(h)("page.state-new")), 1)
|
|
1151
1153
|
]),
|
|
1152
1154
|
_: 1
|
|
1153
|
-
})) :
|
|
1155
|
+
})) : S("", !0),
|
|
1154
1156
|
V.fixed_with ? (t(), u(e(B), {
|
|
1155
1157
|
key: 2,
|
|
1156
1158
|
type: "success",
|
|
@@ -1160,7 +1162,7 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1160
1162
|
n(s(e(h)("page.fix-pressed")), 1)
|
|
1161
1163
|
]),
|
|
1162
1164
|
_: 1
|
|
1163
|
-
})) :
|
|
1165
|
+
})) : f.fixable && e(p) && !V.ignored ? (t(), u(e(K), {
|
|
1164
1166
|
key: 3,
|
|
1165
1167
|
size: "sm",
|
|
1166
1168
|
variant: "outline",
|
|
@@ -1172,32 +1174,32 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1172
1174
|
n(s(e(h)("page.fix-button")), 1)
|
|
1173
1175
|
]),
|
|
1174
1176
|
_: 1
|
|
1175
|
-
}, 8, ["onClick"])) :
|
|
1176
|
-
e(
|
|
1177
|
+
}, 8, ["onClick"])) : S("", !0),
|
|
1178
|
+
e(p) && V.ignored && V.ignore ? (t(), u(e(K), {
|
|
1177
1179
|
key: 4,
|
|
1178
1180
|
size: "sm",
|
|
1179
1181
|
variant: "text",
|
|
1180
1182
|
icon: "eye",
|
|
1181
1183
|
class: "wx-audit-issues__end",
|
|
1182
|
-
onClick: (ue) =>
|
|
1184
|
+
onClick: (ue) => G(V)
|
|
1183
1185
|
}, {
|
|
1184
1186
|
default: a(() => [
|
|
1185
1187
|
n(s(e(h)("page.unhide")), 1)
|
|
1186
1188
|
]),
|
|
1187
1189
|
_: 1
|
|
1188
|
-
}, 8, ["onClick"])) : e(
|
|
1190
|
+
}, 8, ["onClick"])) : e(p) && !V.ignored ? (t(), u(e(K), {
|
|
1189
1191
|
key: 5,
|
|
1190
1192
|
size: "sm",
|
|
1191
1193
|
variant: "text",
|
|
1192
1194
|
icon: "eye-off",
|
|
1193
|
-
class: Ne({ "wx-audit-issues__end": !
|
|
1194
|
-
onClick: (ue) =>
|
|
1195
|
+
class: Ne({ "wx-audit-issues__end": !f.fixable || V.fixed_with }),
|
|
1196
|
+
onClick: (ue) => T(V)
|
|
1195
1197
|
}, {
|
|
1196
1198
|
default: a(() => [
|
|
1197
1199
|
n(s(e(h)("page.hide")), 1)
|
|
1198
1200
|
]),
|
|
1199
1201
|
_: 1
|
|
1200
|
-
}, 8, ["class", "onClick"])) :
|
|
1202
|
+
}, 8, ["class", "onClick"])) : S("", !0)
|
|
1201
1203
|
]),
|
|
1202
1204
|
V.ignore ? (t(), u(e(P), {
|
|
1203
1205
|
key: 0,
|
|
@@ -1208,22 +1210,22 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1208
1210
|
n(s(Y(V)), 1)
|
|
1209
1211
|
]),
|
|
1210
1212
|
_: 2
|
|
1211
|
-
}, 1024)) :
|
|
1212
|
-
|
|
1213
|
+
}, 1024)) : S("", !0),
|
|
1214
|
+
d(je, {
|
|
1213
1215
|
details: V.details
|
|
1214
1216
|
}, null, 8, ["details"])
|
|
1215
1217
|
]))), 128)),
|
|
1216
|
-
|
|
1218
|
+
z.value ? (t(), u(e(K), {
|
|
1217
1219
|
key: 0,
|
|
1218
1220
|
size: "sm",
|
|
1219
1221
|
variant: "text",
|
|
1220
|
-
onClick: F[0] || (F[0] = (V) => U(
|
|
1222
|
+
onClick: F[0] || (F[0] = (V) => U(w.value + 1))
|
|
1221
1223
|
}, {
|
|
1222
1224
|
default: a(() => [...F[3] || (F[3] = [
|
|
1223
1225
|
n("…", -1)
|
|
1224
1226
|
])]),
|
|
1225
1227
|
_: 1
|
|
1226
|
-
})) :
|
|
1228
|
+
})) : S("", !0)
|
|
1227
1229
|
], 64)) : (t(), u(e(fe), {
|
|
1228
1230
|
key: 1,
|
|
1229
1231
|
rows: 2
|
|
@@ -1232,44 +1234,44 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1232
1234
|
key: 3,
|
|
1233
1235
|
open: i.value,
|
|
1234
1236
|
"onUpdate:open": F[1] || (F[1] = (V) => i.value = V),
|
|
1235
|
-
run:
|
|
1237
|
+
run: f.run,
|
|
1236
1238
|
issue: O.value,
|
|
1237
|
-
onFixed:
|
|
1238
|
-
}, null, 8, ["open", "run", "issue"])) :
|
|
1239
|
-
N.value ? (t(), u(
|
|
1239
|
+
onFixed: D
|
|
1240
|
+
}, null, 8, ["open", "run", "issue"])) : S("", !0),
|
|
1241
|
+
N.value ? (t(), u(Tt, {
|
|
1240
1242
|
key: 4,
|
|
1241
|
-
open:
|
|
1242
|
-
"onUpdate:open": F[2] || (F[2] = (V) =>
|
|
1243
|
+
open: _.value,
|
|
1244
|
+
"onUpdate:open": F[2] || (F[2] = (V) => _.value = V),
|
|
1243
1245
|
issue: N.value,
|
|
1244
|
-
title:
|
|
1245
|
-
onHidden:
|
|
1246
|
-
}, null, 8, ["open", "issue", "title"])) :
|
|
1246
|
+
title: g.title ?? N.value.check,
|
|
1247
|
+
onHidden: k
|
|
1248
|
+
}, null, 8, ["open", "issue", "title"])) : S("", !0)
|
|
1247
1249
|
]));
|
|
1248
1250
|
}
|
|
1249
|
-
}), Lt = /* @__PURE__ */ ie(Ft, [["__scopeId", "data-v-23ac6ac8"]]),
|
|
1251
|
+
}), Lt = /* @__PURE__ */ ie(Ft, [["__scopeId", "data-v-23ac6ac8"]]), qt = { class: "wx-audit-findings__filters" }, Dt = { class: "wx-audit-findings__title" }, Et = { class: "wx-audit-findings__texts" }, Bt = /* @__PURE__ */ se({
|
|
1250
1252
|
__name: "AuditIssuesPage",
|
|
1251
1253
|
props: {
|
|
1252
1254
|
base: {}
|
|
1253
1255
|
},
|
|
1254
|
-
setup(
|
|
1255
|
-
const v =
|
|
1256
|
+
setup(f) {
|
|
1257
|
+
const v = f, g = re(le());
|
|
1256
1258
|
ne();
|
|
1257
|
-
const o = ee("webx-audit"), l = ee("webx-admin"), r = oe(),
|
|
1258
|
-
() => [
|
|
1259
|
+
const o = ee("webx-audit"), l = ee("webx-admin"), r = oe(), p = C(null), h = C(null), b = C(!1), c = C([]), z = C(null), w = C(null), A = C(null), O = q(() => ({ severity: z.value, group: w.value, state: A.value })), i = q(
|
|
1260
|
+
() => [z.value, w.value, A.value].filter(Boolean).length
|
|
1259
1261
|
), N = {
|
|
1260
1262
|
error: "danger",
|
|
1261
1263
|
warning: "warning",
|
|
1262
1264
|
notice: "info"
|
|
1263
|
-
},
|
|
1265
|
+
}, _ = q(() => [
|
|
1264
1266
|
{ key: "severity", label: o("page.severity"), width: 130 },
|
|
1265
1267
|
{ key: "title", label: o("page.check") },
|
|
1266
1268
|
{ key: "count", label: o("page.count"), width: 110, align: "right" }
|
|
1267
|
-
]),
|
|
1268
|
-
() => ["error", "warning", "notice"].map((
|
|
1269
|
-
value:
|
|
1270
|
-
label: o(`page.severity-${
|
|
1269
|
+
]), T = q(
|
|
1270
|
+
() => ["error", "warning", "notice"].map((D) => ({
|
|
1271
|
+
value: D,
|
|
1272
|
+
label: o(`page.severity-${D}`)
|
|
1271
1273
|
}))
|
|
1272
|
-
),
|
|
1274
|
+
), k = q(
|
|
1273
1275
|
() => [
|
|
1274
1276
|
"config",
|
|
1275
1277
|
"host",
|
|
@@ -1281,91 +1283,91 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1281
1283
|
"images",
|
|
1282
1284
|
"a11y",
|
|
1283
1285
|
"structure"
|
|
1284
|
-
].map((
|
|
1285
|
-
),
|
|
1286
|
-
() => ["new", "persisting", "hidden"].map((
|
|
1287
|
-
value:
|
|
1288
|
-
label: o(`page.state-${
|
|
1286
|
+
].map((D) => ({ value: D, label: o(`page.group-${D}`) }))
|
|
1287
|
+
), G = q(
|
|
1288
|
+
() => ["new", "persisting", "hidden"].map((D) => ({
|
|
1289
|
+
value: D,
|
|
1290
|
+
label: o(`page.state-${D}`)
|
|
1289
1291
|
}))
|
|
1290
1292
|
);
|
|
1291
|
-
function Y(
|
|
1292
|
-
return typeof
|
|
1293
|
+
function Y(D) {
|
|
1294
|
+
return typeof D == "string" && D !== "" ? D : null;
|
|
1293
1295
|
}
|
|
1294
1296
|
async function R() {
|
|
1295
|
-
|
|
1297
|
+
b.value = !0;
|
|
1296
1298
|
try {
|
|
1297
|
-
|
|
1298
|
-
} catch (
|
|
1299
|
-
X.danger(r(
|
|
1299
|
+
p.value === null && (p.value = (await g.latest()).done?.id ?? null), h.value = p.value === null ? [] : await g.checks(p.value, O.value), c.value = [];
|
|
1300
|
+
} catch (D) {
|
|
1301
|
+
X.danger(r(D));
|
|
1300
1302
|
} finally {
|
|
1301
|
-
|
|
1303
|
+
b.value = !1;
|
|
1302
1304
|
}
|
|
1303
1305
|
}
|
|
1304
1306
|
return de(O, () => {
|
|
1305
1307
|
R();
|
|
1306
|
-
}), ve(R), (
|
|
1308
|
+
}), ve(R), (D, U) => (t(), u(me, {
|
|
1307
1309
|
base: v.base,
|
|
1308
1310
|
current: "issues"
|
|
1309
1311
|
}, {
|
|
1310
1312
|
default: a(() => [
|
|
1311
|
-
|
|
1312
|
-
expanded:
|
|
1313
|
-
"onUpdate:expanded": U[4] || (U[4] = (
|
|
1313
|
+
d(e(he), {
|
|
1314
|
+
expanded: c.value,
|
|
1315
|
+
"onUpdate:expanded": U[4] || (U[4] = (W) => c.value = W),
|
|
1314
1316
|
data: h.value ?? [],
|
|
1315
|
-
columns:
|
|
1317
|
+
columns: _.value,
|
|
1316
1318
|
"row-key": "id",
|
|
1317
1319
|
expandable: "",
|
|
1318
1320
|
flush: "",
|
|
1319
|
-
loading:
|
|
1321
|
+
loading: b.value,
|
|
1320
1322
|
"filters-count": i.value,
|
|
1321
1323
|
"filters-label": e(l)("filters.title"),
|
|
1322
|
-
"empty-text":
|
|
1324
|
+
"empty-text": p.value === null ? e(o)("page.never") : e(o)("page.empty")
|
|
1323
1325
|
}, {
|
|
1324
1326
|
filters: a(() => [
|
|
1325
|
-
I("div",
|
|
1326
|
-
|
|
1327
|
-
"model-value":
|
|
1328
|
-
options:
|
|
1327
|
+
I("div", qt, [
|
|
1328
|
+
d(e(pe), {
|
|
1329
|
+
"model-value": z.value,
|
|
1330
|
+
options: T.value,
|
|
1329
1331
|
placeholder: e(o)("page.any-severity"),
|
|
1330
1332
|
clearable: "",
|
|
1331
|
-
"onUpdate:modelValue": U[0] || (U[0] = (
|
|
1333
|
+
"onUpdate:modelValue": U[0] || (U[0] = (W) => z.value = Y(W))
|
|
1332
1334
|
}, null, 8, ["model-value", "options", "placeholder"]),
|
|
1333
|
-
|
|
1334
|
-
"model-value":
|
|
1335
|
-
options:
|
|
1335
|
+
d(e(pe), {
|
|
1336
|
+
"model-value": w.value,
|
|
1337
|
+
options: k.value,
|
|
1336
1338
|
placeholder: e(o)("page.any-group"),
|
|
1337
1339
|
clearable: "",
|
|
1338
|
-
"onUpdate:modelValue": U[1] || (U[1] = (
|
|
1340
|
+
"onUpdate:modelValue": U[1] || (U[1] = (W) => w.value = Y(W))
|
|
1339
1341
|
}, null, 8, ["model-value", "options", "placeholder"]),
|
|
1340
|
-
|
|
1341
|
-
"model-value":
|
|
1342
|
-
options:
|
|
1342
|
+
d(e(pe), {
|
|
1343
|
+
"model-value": A.value,
|
|
1344
|
+
options: G.value,
|
|
1343
1345
|
placeholder: e(o)("page.any-state"),
|
|
1344
1346
|
clearable: "",
|
|
1345
|
-
"onUpdate:modelValue": U[2] || (U[2] = (
|
|
1347
|
+
"onUpdate:modelValue": U[2] || (U[2] = (W) => A.value = Y(W))
|
|
1346
1348
|
}, null, 8, ["model-value", "options", "placeholder"])
|
|
1347
1349
|
])
|
|
1348
1350
|
]),
|
|
1349
|
-
"cell-severity": a(({ row:
|
|
1350
|
-
|
|
1351
|
-
type: N[
|
|
1351
|
+
"cell-severity": a(({ row: W }) => [
|
|
1352
|
+
d(e(B), {
|
|
1353
|
+
type: N[W.severity],
|
|
1352
1354
|
dot: ""
|
|
1353
1355
|
}, {
|
|
1354
1356
|
default: a(() => [
|
|
1355
|
-
n(s(e(o)(`page.severity-${
|
|
1357
|
+
n(s(e(o)(`page.severity-${W.severity}`)), 1)
|
|
1356
1358
|
]),
|
|
1357
1359
|
_: 2
|
|
1358
1360
|
}, 1032, ["type"])
|
|
1359
1361
|
]),
|
|
1360
|
-
"cell-title": a(({ row:
|
|
1361
|
-
I("span",
|
|
1362
|
-
|
|
1362
|
+
"cell-title": a(({ row: W }) => [
|
|
1363
|
+
I("span", Dt, [
|
|
1364
|
+
d(e(P), { size: "sm" }, {
|
|
1363
1365
|
default: a(() => [
|
|
1364
|
-
n(s(
|
|
1366
|
+
n(s(W.title), 1)
|
|
1365
1367
|
]),
|
|
1366
1368
|
_: 2
|
|
1367
1369
|
}, 1024),
|
|
1368
|
-
|
|
1370
|
+
W.new > 0 ? (t(), u(e(B), {
|
|
1369
1371
|
key: 0,
|
|
1370
1372
|
type: "primary",
|
|
1371
1373
|
size: "sm"
|
|
@@ -1374,13 +1376,13 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1374
1376
|
n(s(e(o)("page.state-new")), 1)
|
|
1375
1377
|
]),
|
|
1376
1378
|
_: 1
|
|
1377
|
-
})) :
|
|
1378
|
-
|
|
1379
|
-
title:
|
|
1379
|
+
})) : S("", !0),
|
|
1380
|
+
d(e(Te), {
|
|
1381
|
+
title: W.title,
|
|
1380
1382
|
width: "360"
|
|
1381
1383
|
}, {
|
|
1382
1384
|
trigger: a(() => [
|
|
1383
|
-
|
|
1385
|
+
d(e(K), {
|
|
1384
1386
|
size: "sm",
|
|
1385
1387
|
variant: "text",
|
|
1386
1388
|
icon: "question",
|
|
@@ -1392,26 +1394,26 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1392
1394
|
default: a(() => [
|
|
1393
1395
|
I("dl", Et, [
|
|
1394
1396
|
I("dt", null, s(e(o)("page.found")), 1),
|
|
1395
|
-
I("dd", null, s(
|
|
1397
|
+
I("dd", null, s(W.found), 1),
|
|
1396
1398
|
I("dt", null, s(e(o)("page.why")), 1),
|
|
1397
|
-
I("dd", null, s(
|
|
1399
|
+
I("dd", null, s(W.why), 1),
|
|
1398
1400
|
I("dt", null, s(e(o)("page.fix")), 1),
|
|
1399
|
-
I("dd", null, s(
|
|
1401
|
+
I("dd", null, s(W.fix), 1)
|
|
1400
1402
|
])
|
|
1401
1403
|
]),
|
|
1402
1404
|
_: 2
|
|
1403
1405
|
}, 1032, ["title"])
|
|
1404
1406
|
])
|
|
1405
1407
|
]),
|
|
1406
|
-
expanded: a(({ row:
|
|
1407
|
-
|
|
1408
|
+
expanded: a(({ row: W }) => [
|
|
1409
|
+
p.value !== null ? (t(), u(Lt, {
|
|
1408
1410
|
key: 0,
|
|
1409
|
-
run:
|
|
1410
|
-
query: { ...O.value, check:
|
|
1411
|
-
fixable: (
|
|
1412
|
-
title:
|
|
1411
|
+
run: p.value,
|
|
1412
|
+
query: { ...O.value, check: W.id },
|
|
1413
|
+
fixable: (W.fixes ?? []).length > 0,
|
|
1414
|
+
title: W.title,
|
|
1413
1415
|
onChanged: R
|
|
1414
|
-
}, null, 8, ["run", "query", "fixable", "title"])) :
|
|
1416
|
+
}, null, 8, ["run", "query", "fixable", "title"])) : S("", !0)
|
|
1415
1417
|
]),
|
|
1416
1418
|
_: 1
|
|
1417
1419
|
}, 8, ["expanded", "data", "columns", "loading", "filters-count", "filters-label", "empty-text"])
|
|
@@ -1419,33 +1421,33 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1419
1421
|
_: 1
|
|
1420
1422
|
}, 8, ["base"]));
|
|
1421
1423
|
}
|
|
1422
|
-
}), Ht = /* @__PURE__ */ ie(Bt, [["__scopeId", "data-v-7f790d95"]]), Mt = { class: "wx-audit-overview" },
|
|
1424
|
+
}), Ht = /* @__PURE__ */ ie(Bt, [["__scopeId", "data-v-7f790d95"]]), Mt = { class: "wx-audit-overview" }, Gt = { class: "wx-audit-overview__row" }, Jt = { class: "wx-audit-overview__row" }, Kt = { class: "wx-audit-overview__summary" }, Qt = { class: "wx-audit-overview__health" }, Xt = {
|
|
1423
1425
|
key: 0,
|
|
1424
1426
|
class: "wx-audit-overview__parts"
|
|
1425
|
-
}, Yt = { class: "wx-audit-overview__stats" }, Zt = { class: "wx-audit-overview__meta" }, ea = { class: "wx-audit-overview__groups" }, ta = { class: "wx-audit-overview__badges" }, aa = { class: "wx-audit-
|
|
1427
|
+
}, Yt = { class: "wx-audit-overview__stats" }, Zt = { class: "wx-audit-overview__meta" }, ea = { class: "wx-audit-overview__groups" }, ta = { class: "wx-audit-overview__badges" }, aa = { class: "wx-audit-overview__title" }, sa = { class: "wx-audit-overview__badges" }, la = {
|
|
1426
1428
|
key: 0,
|
|
1427
1429
|
class: "wx-audit-overview__missing"
|
|
1428
|
-
},
|
|
1430
|
+
}, na = 2e3, ia = /* @__PURE__ */ se({
|
|
1429
1431
|
__name: "AuditOverviewPage",
|
|
1430
1432
|
props: {
|
|
1431
1433
|
base: {}
|
|
1432
1434
|
},
|
|
1433
|
-
setup(
|
|
1434
|
-
const v =
|
|
1435
|
+
setup(f) {
|
|
1436
|
+
const v = f, g = le(), o = re(g);
|
|
1435
1437
|
ne();
|
|
1436
|
-
const l = ee("webx-audit"), r = oe(),
|
|
1437
|
-
let
|
|
1438
|
-
const
|
|
1438
|
+
const l = ee("webx-audit"), r = oe(), p = C(null), h = C("quick"), b = C(!1);
|
|
1439
|
+
let c;
|
|
1440
|
+
const z = g.can("audit.run") || g.can("audit.manage"), w = q(() => p.value?.active ?? null), A = q(() => p.value?.done ?? null), O = q(() => A.value?.counts ?? null), i = q(() => [
|
|
1439
1441
|
{ value: "quick", label: l("page.scope-quick") },
|
|
1440
1442
|
{ value: "full", label: l("page.scope-full") }
|
|
1441
1443
|
]), N = [
|
|
1442
1444
|
{ key: "error", label: "page.errors", tone: "danger" },
|
|
1443
1445
|
{ key: "warning", label: "page.warnings", tone: "warning" },
|
|
1444
1446
|
{ key: "notice", label: "page.notices", tone: "info" }
|
|
1445
|
-
],
|
|
1446
|
-
const
|
|
1447
|
-
return
|
|
1448
|
-
}),
|
|
1447
|
+
], _ = q(() => O.value?.health_parts ?? null), T = q(() => {
|
|
1448
|
+
const W = O.value?.health ?? 0;
|
|
1449
|
+
return W >= 90 ? "success" : W >= 60 ? "warning" : "danger";
|
|
1450
|
+
}), k = [
|
|
1449
1451
|
"config",
|
|
1450
1452
|
"host",
|
|
1451
1453
|
"hosts",
|
|
@@ -1456,136 +1458,136 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1456
1458
|
"images",
|
|
1457
1459
|
"a11y",
|
|
1458
1460
|
"structure"
|
|
1459
|
-
],
|
|
1460
|
-
() => Object.entries(O.value?.groups ?? {}).map(([
|
|
1461
|
-
id:
|
|
1462
|
-
label: l(`page.group-${
|
|
1461
|
+
], G = q(
|
|
1462
|
+
() => Object.entries(O.value?.groups ?? {}).map(([W, F]) => ({
|
|
1463
|
+
id: W,
|
|
1464
|
+
label: l(`page.group-${k.includes(W) ? W : "other"}`),
|
|
1463
1465
|
bySeverity: F
|
|
1464
1466
|
}))
|
|
1465
1467
|
);
|
|
1466
|
-
function Y(
|
|
1467
|
-
return
|
|
1468
|
+
function Y(W) {
|
|
1469
|
+
return W.status === "queued" ? l("page.status-queued") : W.progress.stage ? l(`page.stage-${W.progress.stage}`) : l("page.status-running");
|
|
1468
1470
|
}
|
|
1469
1471
|
async function R() {
|
|
1470
1472
|
try {
|
|
1471
|
-
|
|
1472
|
-
} catch (
|
|
1473
|
-
X.danger(r(
|
|
1473
|
+
p.value = await o.latest();
|
|
1474
|
+
} catch (W) {
|
|
1475
|
+
X.danger(r(W));
|
|
1474
1476
|
}
|
|
1475
|
-
clearTimeout(
|
|
1477
|
+
clearTimeout(c), p.value?.active && (c = setTimeout(() => {
|
|
1476
1478
|
R();
|
|
1477
|
-
},
|
|
1479
|
+
}, na));
|
|
1478
1480
|
}
|
|
1479
|
-
async function
|
|
1480
|
-
|
|
1481
|
+
async function D() {
|
|
1482
|
+
b.value = !0;
|
|
1481
1483
|
try {
|
|
1482
1484
|
await o.start(h.value), X.success(l("page.started")), await R();
|
|
1483
|
-
} catch (
|
|
1484
|
-
X.danger(r(
|
|
1485
|
+
} catch (W) {
|
|
1486
|
+
X.danger(r(W));
|
|
1485
1487
|
} finally {
|
|
1486
|
-
|
|
1488
|
+
b.value = !1;
|
|
1487
1489
|
}
|
|
1488
1490
|
}
|
|
1489
|
-
async function U(
|
|
1491
|
+
async function U(W) {
|
|
1490
1492
|
try {
|
|
1491
|
-
await o.cancel(
|
|
1493
|
+
await o.cancel(W.id), await R();
|
|
1492
1494
|
} catch (F) {
|
|
1493
1495
|
X.danger(r(F));
|
|
1494
1496
|
}
|
|
1495
1497
|
}
|
|
1496
|
-
return ve(R),
|
|
1498
|
+
return ve(R), Ge(() => clearTimeout(c)), (W, F) => (t(), u(me, {
|
|
1497
1499
|
base: v.base,
|
|
1498
1500
|
current: "overview",
|
|
1499
1501
|
card: !1
|
|
1500
1502
|
}, {
|
|
1501
1503
|
default: a(() => [
|
|
1502
1504
|
I("div", Mt, [
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
+
p.value ? (t(), y(L, { key: 1 }, [
|
|
1506
|
+
p.value.queue.sync ? (t(), u(e(_e), {
|
|
1505
1507
|
key: 0,
|
|
1506
1508
|
type: "warning",
|
|
1507
1509
|
description: e(l)("page.sync-queue")
|
|
1508
|
-
}, null, 8, ["description"])) :
|
|
1509
|
-
|
|
1510
|
+
}, null, 8, ["description"])) : S("", !0),
|
|
1511
|
+
p.value.last && p.value.last.status === "failed" ? (t(), u(e(_e), {
|
|
1510
1512
|
key: 1,
|
|
1511
1513
|
type: "danger",
|
|
1512
|
-
description: e(l)("page.last-failed", { error:
|
|
1513
|
-
}, null, 8, ["description"])) :
|
|
1514
|
-
|
|
1514
|
+
description: e(l)("page.last-failed", { error: p.value.last.error ?? "" })
|
|
1515
|
+
}, null, 8, ["description"])) : S("", !0),
|
|
1516
|
+
w.value ? (t(), u(e(ce), {
|
|
1515
1517
|
key: 2,
|
|
1516
1518
|
class: "wx-audit-overview__active"
|
|
1517
1519
|
}, {
|
|
1518
1520
|
default: a(() => [
|
|
1519
|
-
I("div",
|
|
1520
|
-
|
|
1521
|
+
I("div", Gt, [
|
|
1522
|
+
d(e(P), { weight: "semibold" }, {
|
|
1521
1523
|
default: a(() => [
|
|
1522
|
-
n(s(Y(
|
|
1524
|
+
n(s(Y(w.value)), 1)
|
|
1523
1525
|
]),
|
|
1524
1526
|
_: 1
|
|
1525
1527
|
}),
|
|
1526
|
-
|
|
1528
|
+
d(e(P), {
|
|
1527
1529
|
size: "sm",
|
|
1528
1530
|
tone: "muted",
|
|
1529
1531
|
class: "wx-audit-overview__url"
|
|
1530
1532
|
}, {
|
|
1531
1533
|
default: a(() => [
|
|
1532
|
-
n(s(
|
|
1534
|
+
n(s(w.value.base_url), 1)
|
|
1533
1535
|
]),
|
|
1534
1536
|
_: 1
|
|
1535
1537
|
}),
|
|
1536
|
-
e(
|
|
1538
|
+
e(z) ? (t(), u(e(K), {
|
|
1537
1539
|
key: 0,
|
|
1538
1540
|
size: "sm",
|
|
1539
1541
|
class: "wx-audit-overview__end",
|
|
1540
|
-
onClick: F[0] || (F[0] = (V) => U(
|
|
1542
|
+
onClick: F[0] || (F[0] = (V) => U(w.value))
|
|
1541
1543
|
}, {
|
|
1542
1544
|
default: a(() => [
|
|
1543
1545
|
n(s(e(l)("page.cancel")), 1)
|
|
1544
1546
|
]),
|
|
1545
1547
|
_: 1
|
|
1546
|
-
})) :
|
|
1548
|
+
})) : S("", !0)
|
|
1547
1549
|
]),
|
|
1548
|
-
|
|
1550
|
+
d(e(Fe), {
|
|
1549
1551
|
indeterminate: "",
|
|
1550
|
-
"aria-label": Y(
|
|
1552
|
+
"aria-label": Y(w.value)
|
|
1551
1553
|
}, null, 8, ["aria-label"]),
|
|
1552
|
-
|
|
1554
|
+
w.value.progress.resources ? (t(), u(e(P), {
|
|
1553
1555
|
key: 0,
|
|
1554
1556
|
size: "sm",
|
|
1555
1557
|
tone: "muted"
|
|
1556
1558
|
}, {
|
|
1557
1559
|
default: a(() => [
|
|
1558
1560
|
n(s(e(l)("page.resources-progress", {
|
|
1559
|
-
checked:
|
|
1560
|
-
total:
|
|
1561
|
+
checked: w.value.progress.resources.checked,
|
|
1562
|
+
total: w.value.progress.resources.total
|
|
1561
1563
|
})), 1)
|
|
1562
1564
|
]),
|
|
1563
1565
|
_: 1
|
|
1564
|
-
})) :
|
|
1566
|
+
})) : w.value.progress.stage === "crawl" ? (t(), u(e(P), {
|
|
1565
1567
|
key: 1,
|
|
1566
1568
|
size: "sm",
|
|
1567
1569
|
tone: "muted"
|
|
1568
1570
|
}, {
|
|
1569
1571
|
default: a(() => [
|
|
1570
1572
|
n(s(e(l)("page.pages-progress", {
|
|
1571
|
-
crawled:
|
|
1572
|
-
limit:
|
|
1573
|
+
crawled: w.value.progress.pages.crawled,
|
|
1574
|
+
limit: w.value.progress.pages.limit
|
|
1573
1575
|
})), 1)
|
|
1574
1576
|
]),
|
|
1575
1577
|
_: 1
|
|
1576
|
-
})) :
|
|
1578
|
+
})) : S("", !0)
|
|
1577
1579
|
]),
|
|
1578
1580
|
_: 1
|
|
1579
|
-
})) : e(
|
|
1581
|
+
})) : e(z) && !p.value.queue.sync ? (t(), u(e(ce), { key: 3 }, {
|
|
1580
1582
|
default: a(() => [
|
|
1581
|
-
I("div",
|
|
1582
|
-
|
|
1583
|
+
I("div", Jt, [
|
|
1584
|
+
d(e(Xe), {
|
|
1583
1585
|
modelValue: h.value,
|
|
1584
1586
|
"onUpdate:modelValue": F[1] || (F[1] = (V) => h.value = V),
|
|
1585
1587
|
options: i.value,
|
|
1586
1588
|
"aria-label": e(l)("page.scope")
|
|
1587
1589
|
}, null, 8, ["modelValue", "options", "aria-label"]),
|
|
1588
|
-
|
|
1590
|
+
d(e(P), {
|
|
1589
1591
|
size: "sm",
|
|
1590
1592
|
tone: "muted"
|
|
1591
1593
|
}, {
|
|
@@ -1594,12 +1596,12 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1594
1596
|
]),
|
|
1595
1597
|
_: 1
|
|
1596
1598
|
}),
|
|
1597
|
-
|
|
1599
|
+
d(e(K), {
|
|
1598
1600
|
type: "primary",
|
|
1599
1601
|
icon: "refresh",
|
|
1600
|
-
loading:
|
|
1602
|
+
loading: b.value,
|
|
1601
1603
|
class: "wx-audit-overview__end",
|
|
1602
|
-
onClick:
|
|
1604
|
+
onClick: D
|
|
1603
1605
|
}, {
|
|
1604
1606
|
default: a(() => [
|
|
1605
1607
|
n(s(e(l)("page.run")), 1)
|
|
@@ -1609,61 +1611,61 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1609
1611
|
])
|
|
1610
1612
|
]),
|
|
1611
1613
|
_: 1
|
|
1612
|
-
})) :
|
|
1613
|
-
!
|
|
1614
|
+
})) : S("", !0),
|
|
1615
|
+
!A.value && !w.value ? (t(), u(e(ce), { key: 4 }, {
|
|
1614
1616
|
default: a(() => [
|
|
1615
|
-
|
|
1617
|
+
d(e(Le), {
|
|
1616
1618
|
icon: "check-circle",
|
|
1617
1619
|
title: e(l)("page.never"),
|
|
1618
1620
|
description: e(l)("page.never-help")
|
|
1619
1621
|
}, null, 8, ["title", "description"])
|
|
1620
1622
|
]),
|
|
1621
1623
|
_: 1
|
|
1622
|
-
})) :
|
|
1623
|
-
|
|
1624
|
-
|
|
1624
|
+
})) : S("", !0),
|
|
1625
|
+
A.value && O.value ? (t(), y(L, { key: 5 }, [
|
|
1626
|
+
d(e(ce), null, {
|
|
1625
1627
|
default: a(() => [
|
|
1626
1628
|
I("div", Kt, [
|
|
1627
1629
|
I("div", Qt, [
|
|
1628
|
-
|
|
1630
|
+
d(e(Fe), {
|
|
1629
1631
|
type: "circle",
|
|
1630
1632
|
value: O.value.health,
|
|
1631
|
-
status:
|
|
1633
|
+
status: T.value,
|
|
1632
1634
|
"show-value": "",
|
|
1633
1635
|
formatter: (V) => `${V}%`,
|
|
1634
1636
|
"aria-label": e(l)("page.health")
|
|
1635
1637
|
}, null, 8, ["value", "status", "formatter", "aria-label"]),
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
+
_.value ? (t(), y("div", Xt, [
|
|
1639
|
+
_.value.pages > 0 ? (t(), u(e(P), {
|
|
1638
1640
|
key: 0,
|
|
1639
1641
|
size: "sm"
|
|
1640
1642
|
}, {
|
|
1641
1643
|
default: a(() => [
|
|
1642
|
-
n(s(e(l)("page.health-pages", { clean:
|
|
1644
|
+
n(s(e(l)("page.health-pages", { clean: _.value.clean, pages: _.value.pages })), 1)
|
|
1643
1645
|
]),
|
|
1644
1646
|
_: 1
|
|
1645
|
-
})) :
|
|
1646
|
-
|
|
1647
|
+
})) : S("", !0),
|
|
1648
|
+
_.value.site_errors > 0 ? (t(), u(e(P), {
|
|
1647
1649
|
key: 1,
|
|
1648
1650
|
size: "sm",
|
|
1649
1651
|
tone: "danger"
|
|
1650
1652
|
}, {
|
|
1651
1653
|
default: a(() => [
|
|
1652
|
-
n(s(e(l)("page.health-site", { count:
|
|
1654
|
+
n(s(e(l)("page.health-site", { count: _.value.site_errors })), 1)
|
|
1653
1655
|
]),
|
|
1654
1656
|
_: 1
|
|
1655
|
-
})) :
|
|
1656
|
-
|
|
1657
|
+
})) : S("", !0),
|
|
1658
|
+
_.value.warnings > 0 ? (t(), u(e(P), {
|
|
1657
1659
|
key: 2,
|
|
1658
1660
|
size: "sm",
|
|
1659
1661
|
tone: "warning"
|
|
1660
1662
|
}, {
|
|
1661
1663
|
default: a(() => [
|
|
1662
|
-
n(s(e(l)("page.health-warnings", { count:
|
|
1664
|
+
n(s(e(l)("page.health-warnings", { count: _.value.warnings })), 1)
|
|
1663
1665
|
]),
|
|
1664
1666
|
_: 1
|
|
1665
|
-
})) :
|
|
1666
|
-
|
|
1667
|
+
})) : S("", !0),
|
|
1668
|
+
d(e(P), {
|
|
1667
1669
|
size: "xs",
|
|
1668
1670
|
tone: "muted"
|
|
1669
1671
|
}, {
|
|
@@ -1672,20 +1674,20 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1672
1674
|
]),
|
|
1673
1675
|
_: 1
|
|
1674
1676
|
})
|
|
1675
|
-
])) :
|
|
1677
|
+
])) : S("", !0)
|
|
1676
1678
|
]),
|
|
1677
1679
|
I("div", Yt, [
|
|
1678
|
-
(t(),
|
|
1680
|
+
(t(), y(L, null, M(N, (V) => d(e(Oe), {
|
|
1679
1681
|
key: V.key,
|
|
1680
1682
|
title: e(l)(V.label),
|
|
1681
1683
|
value: O.value.severity[V.key] ?? 0,
|
|
1682
1684
|
tone: (O.value.severity[V.key] ?? 0) > 0 ? V.tone : "muted"
|
|
1683
1685
|
}, null, 8, ["title", "value", "tone"])), 64)),
|
|
1684
|
-
|
|
1686
|
+
d(e(Oe), {
|
|
1685
1687
|
title: e(l)("page.new"),
|
|
1686
1688
|
value: O.value.new
|
|
1687
1689
|
}, null, 8, ["title", "value"]),
|
|
1688
|
-
|
|
1690
|
+
d(e(Oe), {
|
|
1689
1691
|
title: e(l)("page.fixed"),
|
|
1690
1692
|
value: O.value.fixed,
|
|
1691
1693
|
tone: "success"
|
|
@@ -1693,26 +1695,26 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1693
1695
|
])
|
|
1694
1696
|
]),
|
|
1695
1697
|
I("div", Zt, [
|
|
1696
|
-
|
|
1698
|
+
d(e(P), {
|
|
1697
1699
|
size: "sm",
|
|
1698
1700
|
tone: "muted"
|
|
1699
1701
|
}, {
|
|
1700
1702
|
default: a(() => [
|
|
1701
1703
|
n(s(e(l)("page.last-run")) + " ", 1),
|
|
1702
|
-
|
|
1703
|
-
value:
|
|
1704
|
+
d(e(ke), {
|
|
1705
|
+
value: A.value.finished_at
|
|
1704
1706
|
}, null, 8, ["value"]),
|
|
1705
|
-
n(" · " + s(e(l)(`page.scope-${
|
|
1707
|
+
n(" · " + s(e(l)(`page.scope-${A.value.scope}`)) + " · ", 1)
|
|
1706
1708
|
]),
|
|
1707
1709
|
_: 1
|
|
1708
1710
|
}),
|
|
1709
|
-
|
|
1711
|
+
d(e(P), {
|
|
1710
1712
|
size: "sm",
|
|
1711
1713
|
tone: "muted",
|
|
1712
1714
|
class: "wx-audit-overview__url"
|
|
1713
1715
|
}, {
|
|
1714
1716
|
default: a(() => [
|
|
1715
|
-
n(s(
|
|
1717
|
+
n(s(A.value.base_url), 1)
|
|
1716
1718
|
]),
|
|
1717
1719
|
_: 1
|
|
1718
1720
|
})
|
|
@@ -1720,23 +1722,23 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1720
1722
|
]),
|
|
1721
1723
|
_: 1
|
|
1722
1724
|
}),
|
|
1723
|
-
|
|
1725
|
+
G.value.length ? (t(), u(e(ce), {
|
|
1724
1726
|
key: 0,
|
|
1725
1727
|
title: e(l)("page.by-group")
|
|
1726
1728
|
}, {
|
|
1727
1729
|
default: a(() => [
|
|
1728
1730
|
I("ul", ea, [
|
|
1729
|
-
(t(!0),
|
|
1731
|
+
(t(!0), y(L, null, M(G.value, (V) => (t(), y("li", {
|
|
1730
1732
|
key: V.id
|
|
1731
1733
|
}, [
|
|
1732
|
-
|
|
1734
|
+
d(e(P), { size: "sm" }, {
|
|
1733
1735
|
default: a(() => [
|
|
1734
1736
|
n(s(V.label), 1)
|
|
1735
1737
|
]),
|
|
1736
1738
|
_: 2
|
|
1737
1739
|
}, 1024),
|
|
1738
1740
|
I("span", ta, [
|
|
1739
|
-
(t(),
|
|
1741
|
+
(t(), y(L, null, M(N, (ue) => (t(), y(L, {
|
|
1740
1742
|
key: ue.key
|
|
1741
1743
|
}, [
|
|
1742
1744
|
(V.bySeverity[ue.key] ?? 0) > 0 ? (t(), u(e(B), {
|
|
@@ -1748,7 +1750,7 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1748
1750
|
n(s(e(l)(ue.label)) + " · " + s(V.bySeverity[ue.key]), 1)
|
|
1749
1751
|
]),
|
|
1750
1752
|
_: 2
|
|
1751
|
-
}, 1032, ["type"])) :
|
|
1753
|
+
}, 1032, ["type"])) : S("", !0)
|
|
1752
1754
|
], 64))), 64))
|
|
1753
1755
|
])
|
|
1754
1756
|
]))), 128))
|
|
@@ -1757,7 +1759,7 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1757
1759
|
_: 1
|
|
1758
1760
|
}, 8, ["title"])) : (t(), u(e(ce), { key: 1 }, {
|
|
1759
1761
|
default: a(() => [
|
|
1760
|
-
|
|
1762
|
+
d(e(Le), {
|
|
1761
1763
|
icon: "check-circle",
|
|
1762
1764
|
title: e(l)("page.clean"),
|
|
1763
1765
|
size: "sm"
|
|
@@ -1765,12 +1767,38 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1765
1767
|
]),
|
|
1766
1768
|
_: 1
|
|
1767
1769
|
})),
|
|
1768
|
-
|
|
1769
|
-
|
|
1770
|
-
|
|
1770
|
+
d(e(ce), null, {
|
|
1771
|
+
header: a(() => [
|
|
1772
|
+
I("span", aa, [
|
|
1773
|
+
n(s(e(l)("page.sources")) + " ", 1),
|
|
1774
|
+
d(e(Te), {
|
|
1775
|
+
title: e(l)("page.sources"),
|
|
1776
|
+
width: 360,
|
|
1777
|
+
teleport: ""
|
|
1778
|
+
}, {
|
|
1779
|
+
trigger: a(() => [
|
|
1780
|
+
d(e(K), {
|
|
1781
|
+
variant: "text",
|
|
1782
|
+
size: "sm",
|
|
1783
|
+
icon: "question",
|
|
1784
|
+
"aria-label": e(l)("page.sources-help-label")
|
|
1785
|
+
}, null, 8, ["aria-label"])
|
|
1786
|
+
]),
|
|
1787
|
+
default: a(() => [
|
|
1788
|
+
d(e(P), { size: "sm" }, {
|
|
1789
|
+
default: a(() => [
|
|
1790
|
+
n(s(e(l)("page.sources-help")), 1)
|
|
1791
|
+
]),
|
|
1792
|
+
_: 1
|
|
1793
|
+
})
|
|
1794
|
+
]),
|
|
1795
|
+
_: 1
|
|
1796
|
+
}, 8, ["title"])
|
|
1797
|
+
])
|
|
1798
|
+
]),
|
|
1771
1799
|
default: a(() => [
|
|
1772
|
-
I("div",
|
|
1773
|
-
(t(!0),
|
|
1800
|
+
I("div", sa, [
|
|
1801
|
+
(t(!0), y(L, null, M(O.value.sources.searched, (V) => (t(), u(e(B), {
|
|
1774
1802
|
key: V,
|
|
1775
1803
|
type: "success"
|
|
1776
1804
|
}, {
|
|
@@ -1780,8 +1808,8 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1780
1808
|
_: 2
|
|
1781
1809
|
}, 1024))), 128))
|
|
1782
1810
|
]),
|
|
1783
|
-
O.value.sources.missing.length ? (t(),
|
|
1784
|
-
|
|
1811
|
+
O.value.sources.missing.length ? (t(), y("div", la, [
|
|
1812
|
+
d(e(P), {
|
|
1785
1813
|
size: "sm",
|
|
1786
1814
|
tone: "warning"
|
|
1787
1815
|
}, {
|
|
@@ -1790,7 +1818,7 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1790
1818
|
]),
|
|
1791
1819
|
_: 1
|
|
1792
1820
|
}),
|
|
1793
|
-
(t(!0),
|
|
1821
|
+
(t(!0), y(L, null, M(O.value.sources.missing, (V) => (t(), u(e(B), {
|
|
1794
1822
|
key: V,
|
|
1795
1823
|
type: "warning"
|
|
1796
1824
|
}, {
|
|
@@ -1799,14 +1827,14 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1799
1827
|
]),
|
|
1800
1828
|
_: 2
|
|
1801
1829
|
}, 1024))), 128))
|
|
1802
|
-
])) :
|
|
1830
|
+
])) : S("", !0)
|
|
1803
1831
|
]),
|
|
1804
1832
|
_: 1
|
|
1805
|
-
}
|
|
1806
|
-
], 64)) :
|
|
1833
|
+
})
|
|
1834
|
+
], 64)) : S("", !0)
|
|
1807
1835
|
], 64)) : (t(), u(e(ce), { key: 0 }, {
|
|
1808
1836
|
default: a(() => [
|
|
1809
|
-
|
|
1837
|
+
d(e(fe), { rows: 4 })
|
|
1810
1838
|
]),
|
|
1811
1839
|
_: 1
|
|
1812
1840
|
}))
|
|
@@ -1815,41 +1843,41 @@ const pt = { class: "wx-audit-places" }, gt = {
|
|
|
1815
1843
|
_: 1
|
|
1816
1844
|
}, 8, ["base"]));
|
|
1817
1845
|
}
|
|
1818
|
-
}),
|
|
1819
|
-
function Ue(
|
|
1820
|
-
return
|
|
1846
|
+
}), ua = /* @__PURE__ */ ie(ia, [["__scopeId", "data-v-5c088ef8"]]);
|
|
1847
|
+
function Ue(f) {
|
|
1848
|
+
return f.checked && f.status !== null && f.status < 400 && f.error === null;
|
|
1821
1849
|
}
|
|
1822
|
-
const
|
|
1850
|
+
const oa = { class: "wx-audit-card__title" }, ra = { class: "wx-audit-card__url" }, da = {
|
|
1823
1851
|
key: 0,
|
|
1824
1852
|
class: "wx-audit-card__extra"
|
|
1825
|
-
},
|
|
1853
|
+
}, ca = {
|
|
1826
1854
|
key: 2,
|
|
1827
1855
|
class: "wx-audit-card"
|
|
1828
|
-
},
|
|
1856
|
+
}, pa = { class: "wx-audit-card__recheck" }, ga = {
|
|
1829
1857
|
key: 0,
|
|
1830
1858
|
class: "wx-audit-card__facts"
|
|
1831
|
-
},
|
|
1859
|
+
}, va = { key: 0 }, ha = {
|
|
1832
1860
|
key: 1,
|
|
1833
1861
|
class: "wx-audit-card__pairs"
|
|
1834
|
-
},
|
|
1862
|
+
}, fa = {
|
|
1835
1863
|
key: 2,
|
|
1836
1864
|
class: "wx-audit-card__tags"
|
|
1837
|
-
},
|
|
1865
|
+
}, _a = { class: "wx-audit-card__section" }, ma = { class: "wx-audit-card__code" }, ya = { class: "wx-audit-card__code" }, ba = {
|
|
1838
1866
|
key: 1,
|
|
1839
1867
|
class: "wx-audit-card__issues"
|
|
1840
|
-
},
|
|
1868
|
+
}, ka = { class: "wx-audit-card__issue-head" }, xa = {
|
|
1841
1869
|
key: 0,
|
|
1842
1870
|
class: "wx-audit-card__picture"
|
|
1843
|
-
},
|
|
1871
|
+
}, wa = { class: "wx-audit-card__url" }, $a = {
|
|
1844
1872
|
key: 1,
|
|
1845
1873
|
class: "wx-audit-card__url"
|
|
1846
|
-
},
|
|
1874
|
+
}, za = {
|
|
1847
1875
|
key: 3,
|
|
1848
1876
|
class: "wx-audit-card__issues"
|
|
1849
|
-
},
|
|
1877
|
+
}, Sa = { class: "wx-audit-card__issue-head" }, Ca = {
|
|
1850
1878
|
key: 1,
|
|
1851
1879
|
class: "wx-audit-card__source"
|
|
1852
|
-
},
|
|
1880
|
+
}, Aa = { class: "wx-audit-card__url" }, Wa = 2e3, Pa = /* @__PURE__ */ se({
|
|
1853
1881
|
__name: "AuditPageCard",
|
|
1854
1882
|
props: {
|
|
1855
1883
|
run: {},
|
|
@@ -1858,58 +1886,58 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
1858
1886
|
titles: {}
|
|
1859
1887
|
},
|
|
1860
1888
|
emits: ["close"],
|
|
1861
|
-
setup(
|
|
1862
|
-
const
|
|
1889
|
+
setup(f, { emit: v }) {
|
|
1890
|
+
const g = f, o = v, l = le(), r = re(l), p = we();
|
|
1863
1891
|
ne();
|
|
1864
|
-
const h = l.can("audit.run") || l.can("audit.manage"),
|
|
1865
|
-
let
|
|
1866
|
-
async function
|
|
1867
|
-
if (
|
|
1868
|
-
|
|
1892
|
+
const h = l.can("audit.run") || l.can("audit.manage"), b = C(null), c = C(!1);
|
|
1893
|
+
let z;
|
|
1894
|
+
async function w() {
|
|
1895
|
+
if (_.value) {
|
|
1896
|
+
c.value = !0, b.value = null;
|
|
1869
1897
|
try {
|
|
1870
|
-
|
|
1871
|
-
} catch (
|
|
1872
|
-
|
|
1898
|
+
A(await r.start("urls", [_.value.page.url]));
|
|
1899
|
+
} catch (x) {
|
|
1900
|
+
c.value = !1, X.danger(N(x));
|
|
1873
1901
|
}
|
|
1874
1902
|
}
|
|
1875
1903
|
}
|
|
1876
|
-
function
|
|
1877
|
-
if (clearTimeout(
|
|
1878
|
-
|
|
1904
|
+
function A(x) {
|
|
1905
|
+
if (clearTimeout(z), x.status === "queued" || x.status === "running") {
|
|
1906
|
+
z = setTimeout(async () => {
|
|
1879
1907
|
try {
|
|
1880
|
-
|
|
1881
|
-
} catch (
|
|
1882
|
-
|
|
1908
|
+
A(await r.run(x.id));
|
|
1909
|
+
} catch (J) {
|
|
1910
|
+
c.value = !1, X.danger(N(J));
|
|
1883
1911
|
}
|
|
1884
|
-
},
|
|
1912
|
+
}, Wa);
|
|
1885
1913
|
return;
|
|
1886
1914
|
}
|
|
1887
|
-
|
|
1915
|
+
c.value = !1, b.value = x;
|
|
1888
1916
|
}
|
|
1889
1917
|
function O() {
|
|
1890
|
-
|
|
1918
|
+
b.value && g.base && p.push({ path: `${g.base}/runs`, query: { to: String(b.value.id) } });
|
|
1891
1919
|
}
|
|
1892
|
-
|
|
1893
|
-
const i = ee("webx-audit"), N = oe(),
|
|
1894
|
-
get: () =>
|
|
1895
|
-
set: (
|
|
1896
|
-
|
|
1920
|
+
Ge(() => clearTimeout(z));
|
|
1921
|
+
const i = ee("webx-audit"), N = oe(), _ = C(null), T = C(null), k = C("overview"), G = C(null), Y = C(!1), R = C(null), D = C(!1), U = ["images", "css", "js"], W = q({
|
|
1922
|
+
get: () => g.pageId !== null,
|
|
1923
|
+
set: (x) => {
|
|
1924
|
+
x || o("close");
|
|
1897
1925
|
}
|
|
1898
|
-
}), F =
|
|
1926
|
+
}), F = q(() => [
|
|
1899
1927
|
{ value: "overview", label: i("page.card-overview") },
|
|
1900
|
-
{ value: "issues", label: i("page.card-issues"), badge:
|
|
1901
|
-
{ value: "in", label: i("page.card-incoming"), badge:
|
|
1902
|
-
{ value: "out", label: i("page.card-outgoing"), badge:
|
|
1903
|
-
{ value: "images", label: i("page.card-images"), badge:
|
|
1904
|
-
{ value: "css", label: i("page.card-css"), badge:
|
|
1905
|
-
{ value: "js", label: i("page.card-js"), badge:
|
|
1928
|
+
{ value: "issues", label: i("page.card-issues"), badge: _.value?.counts.issues || void 0 },
|
|
1929
|
+
{ value: "in", label: i("page.card-incoming"), badge: _.value?.counts.incoming || void 0 },
|
|
1930
|
+
{ value: "out", label: i("page.card-outgoing"), badge: _.value?.counts.outgoing || void 0 },
|
|
1931
|
+
{ value: "images", label: i("page.card-images"), badge: _.value?.counts.images || void 0 },
|
|
1932
|
+
{ value: "css", label: i("page.card-css"), badge: _.value?.counts.css || void 0 },
|
|
1933
|
+
{ value: "js", label: i("page.card-js"), badge: _.value?.counts.js || void 0 },
|
|
1906
1934
|
{
|
|
1907
1935
|
value: "microdata",
|
|
1908
1936
|
label: i("page.card-microdata"),
|
|
1909
|
-
badge:
|
|
1937
|
+
badge: _.value?.counts.microdata || void 0
|
|
1910
1938
|
}
|
|
1911
|
-
]), V =
|
|
1912
|
-
() => U.includes(
|
|
1939
|
+
]), V = q(
|
|
1940
|
+
() => U.includes(k.value) ? k.value : null
|
|
1913
1941
|
), ue = {
|
|
1914
1942
|
error: "danger",
|
|
1915
1943
|
warning: "warning",
|
|
@@ -1919,13 +1947,13 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
1919
1947
|
own_mirror: "warning",
|
|
1920
1948
|
dev: "danger",
|
|
1921
1949
|
external: "info"
|
|
1922
|
-
}, $e =
|
|
1950
|
+
}, $e = q(() => [
|
|
1923
1951
|
{ key: "url", label: i("page.address"), minWidth: 220 },
|
|
1924
1952
|
{ key: "status", label: i("page.field-status"), width: 80 },
|
|
1925
1953
|
{ key: "kind", label: i("page.kind"), width: 90 },
|
|
1926
1954
|
{ key: "anchor", label: i("page.anchor"), minWidth: 140 },
|
|
1927
1955
|
{ key: "host_class", label: i("page.host"), width: 120 }
|
|
1928
|
-
]), ge =
|
|
1956
|
+
]), ge = q(() => [
|
|
1929
1957
|
{ key: "url", label: i("page.address"), minWidth: 220 },
|
|
1930
1958
|
{ key: "status", label: i("page.field-status"), width: 80 },
|
|
1931
1959
|
{ key: "bytes", label: i("page.size"), width: 110 },
|
|
@@ -1934,175 +1962,175 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
1934
1962
|
{ key: "compression", label: i("page.field-compression"), width: 100 }
|
|
1935
1963
|
]
|
|
1936
1964
|
]);
|
|
1937
|
-
function Ce(
|
|
1965
|
+
function Ce(x) {
|
|
1938
1966
|
try {
|
|
1939
|
-
return JSON.stringify(JSON.parse(
|
|
1967
|
+
return JSON.stringify(JSON.parse(x), null, 2);
|
|
1940
1968
|
} catch {
|
|
1941
|
-
return
|
|
1969
|
+
return x;
|
|
1942
1970
|
}
|
|
1943
1971
|
}
|
|
1944
|
-
function Ae(
|
|
1945
|
-
if (
|
|
1946
|
-
const
|
|
1947
|
-
return
|
|
1972
|
+
function Ae(x) {
|
|
1973
|
+
if (x.bytes === null) return "";
|
|
1974
|
+
const J = x.bytes / 1024, m = J >= 1024 ? `${(J / 1024).toFixed(1)} MB` : `${Math.round(J)} KB`;
|
|
1975
|
+
return x.width && x.height ? `${m} · ${x.width}×${x.height}` : m;
|
|
1948
1976
|
}
|
|
1949
|
-
const
|
|
1950
|
-
const
|
|
1951
|
-
return
|
|
1952
|
-
[i("page.field-status"),
|
|
1953
|
-
[i("page.field-final_status"),
|
|
1954
|
-
[i("page.field-redirect_to"),
|
|
1955
|
-
[i("page.error"),
|
|
1956
|
-
[i("page.field-content_type"),
|
|
1957
|
-
[i("page.field-bytes"),
|
|
1958
|
-
[i("page.field-ttfb_ms"),
|
|
1959
|
-
[i("page.field-total_ms"),
|
|
1960
|
-
[i("page.field-compression"),
|
|
1961
|
-
[i("page.field-source"), i(`page.source-${
|
|
1962
|
-
[i("page.field-depth"),
|
|
1963
|
-
[i("page.field-indexable"),
|
|
1964
|
-
[i("page.field-blocked_by_robots"),
|
|
1965
|
-
[i("page.field-title"),
|
|
1966
|
-
[i("page.field-description"),
|
|
1967
|
-
[i("page.field-h1"),
|
|
1968
|
-
[i("page.field-canonical"),
|
|
1969
|
-
[i("page.field-robots_meta"),
|
|
1970
|
-
[i("page.field-x_robots_tag"),
|
|
1971
|
-
[i("page.field-lang"),
|
|
1977
|
+
const We = q(() => {
|
|
1978
|
+
const x = _.value?.page;
|
|
1979
|
+
return x ? [
|
|
1980
|
+
[i("page.field-status"), x.status ?? i("page.status-none")],
|
|
1981
|
+
[i("page.field-final_status"), x.redirect_to ? x.final_status : null],
|
|
1982
|
+
[i("page.field-redirect_to"), x.redirect_to],
|
|
1983
|
+
[i("page.error"), x.error],
|
|
1984
|
+
[i("page.field-content_type"), x.content_type],
|
|
1985
|
+
[i("page.field-bytes"), x.bytes],
|
|
1986
|
+
[i("page.field-ttfb_ms"), x.ttfb_ms],
|
|
1987
|
+
[i("page.field-total_ms"), x.total_ms],
|
|
1988
|
+
[i("page.field-compression"), x.compression],
|
|
1989
|
+
[i("page.field-source"), i(`page.source-${x.source}`)],
|
|
1990
|
+
[i("page.field-depth"), x.depth],
|
|
1991
|
+
[i("page.field-indexable"), x.indexable ? i("page.yes") : i("page.no")],
|
|
1992
|
+
[i("page.field-blocked_by_robots"), x.blocked_by_robots ? i("page.yes") : null],
|
|
1993
|
+
[i("page.field-title"), x.title],
|
|
1994
|
+
[i("page.field-description"), x.description],
|
|
1995
|
+
[i("page.field-h1"), x.h1.join(" · ") || null],
|
|
1996
|
+
[i("page.field-canonical"), x.canonical],
|
|
1997
|
+
[i("page.field-robots_meta"), x.robots_meta],
|
|
1998
|
+
[i("page.field-x_robots_tag"), x.x_robots_tag],
|
|
1999
|
+
[i("page.field-lang"), x.lang],
|
|
1972
2000
|
[
|
|
1973
2001
|
"hreflang",
|
|
1974
|
-
|
|
2002
|
+
x.hreflang.length ? { pairs: x.hreflang.map((m) => [m.lang, m.url]) } : null
|
|
1975
2003
|
],
|
|
1976
2004
|
[
|
|
1977
2005
|
"Open Graph",
|
|
1978
|
-
Object.keys(
|
|
2006
|
+
Object.keys(x.og).length ? { pairs: Object.entries(x.og).map(([m, H]) => [`og:${m}`, String(H)]) } : null
|
|
1979
2007
|
],
|
|
1980
2008
|
[
|
|
1981
2009
|
"Twitter",
|
|
1982
|
-
Object.keys(
|
|
1983
|
-
pairs: Object.entries(
|
|
1984
|
-
`twitter:${
|
|
2010
|
+
Object.keys(x.twitter).length ? {
|
|
2011
|
+
pairs: Object.entries(x.twitter).map(([m, H]) => [
|
|
2012
|
+
`twitter:${m}`,
|
|
1985
2013
|
String(H)
|
|
1986
2014
|
])
|
|
1987
2015
|
} : null
|
|
1988
2016
|
],
|
|
1989
2017
|
[
|
|
1990
2018
|
"JSON-LD",
|
|
1991
|
-
|
|
1992
|
-
tags:
|
|
1993
|
-
error:
|
|
2019
|
+
x.json_ld.length ? {
|
|
2020
|
+
tags: x.json_ld.flatMap((m) => m.types),
|
|
2021
|
+
error: x.json_ld.find((m) => m.error)?.error ?? null
|
|
1994
2022
|
} : null
|
|
1995
2023
|
],
|
|
1996
|
-
[i("page.field-word_count"),
|
|
1997
|
-
[i("page.field-links_in"),
|
|
1998
|
-
[i("page.field-links_out_internal"),
|
|
1999
|
-
[i("page.field-links_out_external"),
|
|
2000
|
-
[i("page.field-images"),
|
|
2001
|
-
[i("page.field-images_without_alt"),
|
|
2002
|
-
].filter(([,
|
|
2024
|
+
[i("page.field-word_count"), x.word_count],
|
|
2025
|
+
[i("page.field-links_in"), x.links_in],
|
|
2026
|
+
[i("page.field-links_out_internal"), x.links_out_internal],
|
|
2027
|
+
[i("page.field-links_out_external"), x.links_out_external],
|
|
2028
|
+
[i("page.field-images"), x.images],
|
|
2029
|
+
[i("page.field-images_without_alt"), x.images_without_alt || null]
|
|
2030
|
+
].filter(([, m]) => m != null && m !== "").map(([m, H]) => [m, typeof H == "object" ? H : String(H)]) : [];
|
|
2003
2031
|
});
|
|
2004
|
-
function be(
|
|
2005
|
-
return
|
|
2032
|
+
function be(x) {
|
|
2033
|
+
return x === null || x >= 500 ? "danger" : x >= 400 ? "warning" : x >= 300 ? "info" : "success";
|
|
2006
2034
|
}
|
|
2007
|
-
async function ze(
|
|
2008
|
-
clearTimeout(
|
|
2035
|
+
async function ze(x) {
|
|
2036
|
+
clearTimeout(z), c.value = !1, b.value = null, _.value = null, T.value = null, G.value = null, R.value = null, k.value = "overview";
|
|
2009
2037
|
try {
|
|
2010
|
-
|
|
2011
|
-
} catch (
|
|
2012
|
-
|
|
2038
|
+
_.value = await r.page(g.run, x);
|
|
2039
|
+
} catch (J) {
|
|
2040
|
+
T.value = N(J);
|
|
2013
2041
|
}
|
|
2014
2042
|
}
|
|
2015
|
-
async function
|
|
2016
|
-
if (!(
|
|
2043
|
+
async function Pe(x) {
|
|
2044
|
+
if (!(g.pageId === null || k.value !== "in" && k.value !== "out")) {
|
|
2017
2045
|
Y.value = !0;
|
|
2018
2046
|
try {
|
|
2019
|
-
|
|
2020
|
-
direction:
|
|
2021
|
-
page:
|
|
2022
|
-
per_page:
|
|
2047
|
+
G.value = await r.links(g.run, g.pageId, {
|
|
2048
|
+
direction: k.value,
|
|
2049
|
+
page: x.page,
|
|
2050
|
+
per_page: x.perPage
|
|
2023
2051
|
});
|
|
2024
|
-
} catch (
|
|
2025
|
-
|
|
2052
|
+
} catch (J) {
|
|
2053
|
+
T.value = N(J);
|
|
2026
2054
|
} finally {
|
|
2027
2055
|
Y.value = !1;
|
|
2028
2056
|
}
|
|
2029
2057
|
}
|
|
2030
2058
|
}
|
|
2031
|
-
async function Ie(
|
|
2032
|
-
const
|
|
2033
|
-
if (!(
|
|
2034
|
-
|
|
2059
|
+
async function Ie(x) {
|
|
2060
|
+
const J = V.value;
|
|
2061
|
+
if (!(g.pageId === null || J === null)) {
|
|
2062
|
+
D.value = !0;
|
|
2035
2063
|
try {
|
|
2036
|
-
R.value = await r.resources(
|
|
2037
|
-
tab:
|
|
2038
|
-
page:
|
|
2039
|
-
per_page:
|
|
2064
|
+
R.value = await r.resources(g.run, g.pageId, {
|
|
2065
|
+
tab: J,
|
|
2066
|
+
page: x.page,
|
|
2067
|
+
per_page: x.perPage
|
|
2040
2068
|
});
|
|
2041
|
-
} catch (
|
|
2042
|
-
|
|
2069
|
+
} catch (m) {
|
|
2070
|
+
T.value = N(m);
|
|
2043
2071
|
} finally {
|
|
2044
|
-
|
|
2072
|
+
D.value = !1;
|
|
2045
2073
|
}
|
|
2046
2074
|
}
|
|
2047
2075
|
}
|
|
2048
2076
|
return de(
|
|
2049
|
-
() =>
|
|
2050
|
-
(
|
|
2051
|
-
|
|
2077
|
+
() => g.pageId,
|
|
2078
|
+
(x) => {
|
|
2079
|
+
x !== null && ze(x);
|
|
2052
2080
|
},
|
|
2053
2081
|
{ immediate: !0 }
|
|
2054
|
-
), de(
|
|
2055
|
-
|
|
2056
|
-
}), (
|
|
2057
|
-
open:
|
|
2058
|
-
"onUpdate:open":
|
|
2082
|
+
), de(k, () => {
|
|
2083
|
+
G.value = null, R.value = null;
|
|
2084
|
+
}), (x, J) => (t(), u(e(nt), {
|
|
2085
|
+
open: W.value,
|
|
2086
|
+
"onUpdate:open": J[1] || (J[1] = (m) => W.value = m),
|
|
2059
2087
|
size: "min(1100px, 75vw)",
|
|
2060
2088
|
"min-size": 480,
|
|
2061
2089
|
resizable: "",
|
|
2062
2090
|
persist: "webx-audit.page-card-wide"
|
|
2063
2091
|
}, {
|
|
2064
2092
|
title: a(() => [
|
|
2065
|
-
I("span",
|
|
2066
|
-
|
|
2093
|
+
I("span", oa, [
|
|
2094
|
+
_.value ? (t(), u(e(B), {
|
|
2067
2095
|
key: 0,
|
|
2068
|
-
type: be(
|
|
2096
|
+
type: be(_.value.page.status),
|
|
2069
2097
|
size: "sm"
|
|
2070
2098
|
}, {
|
|
2071
2099
|
default: a(() => [
|
|
2072
|
-
n(s(
|
|
2100
|
+
n(s(_.value.page.status ?? "—"), 1)
|
|
2073
2101
|
]),
|
|
2074
2102
|
_: 1
|
|
2075
|
-
}, 8, ["type"])) :
|
|
2076
|
-
I("span",
|
|
2103
|
+
}, 8, ["type"])) : S("", !0),
|
|
2104
|
+
I("span", ra, s(_.value?.page.url ?? ""), 1)
|
|
2077
2105
|
])
|
|
2078
2106
|
]),
|
|
2079
2107
|
extra: a(() => [
|
|
2080
|
-
|
|
2081
|
-
e(h) ? (t(), u(e(
|
|
2108
|
+
_.value ? (t(), y("span", da, [
|
|
2109
|
+
e(h) ? (t(), u(e(K), {
|
|
2082
2110
|
key: 0,
|
|
2083
2111
|
size: "sm",
|
|
2084
2112
|
icon: "refresh",
|
|
2085
|
-
loading:
|
|
2086
|
-
onClick:
|
|
2113
|
+
loading: c.value,
|
|
2114
|
+
onClick: w
|
|
2087
2115
|
}, {
|
|
2088
2116
|
default: a(() => [
|
|
2089
2117
|
n(s(e(i)("page.recheck")), 1)
|
|
2090
2118
|
]),
|
|
2091
2119
|
_: 1
|
|
2092
|
-
}, 8, ["loading"])) :
|
|
2093
|
-
|
|
2120
|
+
}, 8, ["loading"])) : S("", !0),
|
|
2121
|
+
d(e(K), {
|
|
2094
2122
|
size: "sm",
|
|
2095
2123
|
variant: "text",
|
|
2096
2124
|
icon: "download",
|
|
2097
|
-
href: e(r).pageFile(
|
|
2125
|
+
href: e(r).pageFile(g.run, _.value.page.id)
|
|
2098
2126
|
}, {
|
|
2099
2127
|
default: a(() => [
|
|
2100
2128
|
n(s(e(i)("page.export-page")), 1)
|
|
2101
2129
|
]),
|
|
2102
2130
|
_: 1
|
|
2103
2131
|
}, 8, ["href"]),
|
|
2104
|
-
|
|
2105
|
-
href:
|
|
2132
|
+
d(e(xe), {
|
|
2133
|
+
href: _.value.page.url,
|
|
2106
2134
|
target: "_blank"
|
|
2107
2135
|
}, {
|
|
2108
2136
|
default: a(() => [
|
|
@@ -2110,31 +2138,31 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2110
2138
|
]),
|
|
2111
2139
|
_: 1
|
|
2112
2140
|
}, 8, ["href"])
|
|
2113
|
-
])) :
|
|
2141
|
+
])) : S("", !0)
|
|
2114
2142
|
]),
|
|
2115
2143
|
default: a(() => [
|
|
2116
|
-
|
|
2144
|
+
T.value ? (t(), u(e(P), {
|
|
2117
2145
|
key: 0,
|
|
2118
2146
|
tone: "danger"
|
|
2119
2147
|
}, {
|
|
2120
2148
|
default: a(() => [
|
|
2121
|
-
n(s(
|
|
2149
|
+
n(s(T.value), 1)
|
|
2122
2150
|
]),
|
|
2123
2151
|
_: 1
|
|
2124
|
-
})) :
|
|
2125
|
-
|
|
2152
|
+
})) : _.value ? (t(), y("div", ca, [
|
|
2153
|
+
c.value ? (t(), u(e(_e), {
|
|
2126
2154
|
key: 0,
|
|
2127
2155
|
type: "info",
|
|
2128
2156
|
description: e(i)("page.recheck-running")
|
|
2129
|
-
}, null, 8, ["description"])) :
|
|
2157
|
+
}, null, 8, ["description"])) : b.value && b.value.status === "done" && b.value.counts ? (t(), u(e(_e), {
|
|
2130
2158
|
key: 1,
|
|
2131
|
-
type:
|
|
2159
|
+
type: b.value.counts.new > 0 ? "warning" : "success"
|
|
2132
2160
|
}, {
|
|
2133
2161
|
default: a(() => [
|
|
2134
|
-
I("div",
|
|
2135
|
-
I("span", null, s(e(i)("page.recheck-fixed", { count:
|
|
2136
|
-
I("span", null, s(e(i)("page.recheck-new", { count:
|
|
2137
|
-
|
|
2162
|
+
I("div", pa, [
|
|
2163
|
+
I("span", null, s(e(i)("page.recheck-fixed", { count: b.value.counts.fixed })), 1),
|
|
2164
|
+
I("span", null, s(e(i)("page.recheck-new", { count: b.value.counts.new })), 1),
|
|
2165
|
+
g.base ? (t(), u(e(K), {
|
|
2138
2166
|
key: 0,
|
|
2139
2167
|
size: "sm",
|
|
2140
2168
|
variant: "text",
|
|
@@ -2144,36 +2172,36 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2144
2172
|
n(s(e(i)("page.recheck-compare")), 1)
|
|
2145
2173
|
]),
|
|
2146
2174
|
_: 1
|
|
2147
|
-
})) :
|
|
2175
|
+
})) : S("", !0)
|
|
2148
2176
|
])
|
|
2149
2177
|
]),
|
|
2150
2178
|
_: 1
|
|
2151
|
-
}, 8, ["type"])) :
|
|
2179
|
+
}, 8, ["type"])) : b.value ? (t(), u(e(_e), {
|
|
2152
2180
|
key: 2,
|
|
2153
2181
|
type: "danger",
|
|
2154
|
-
description:
|
|
2155
|
-
}, null, 8, ["description"])) :
|
|
2156
|
-
|
|
2182
|
+
description: b.value.error ?? e(i)(`page.status-${b.value.status}`)
|
|
2183
|
+
}, null, 8, ["description"])) : S("", !0),
|
|
2184
|
+
_.value.page.title ? (t(), u(e(P), {
|
|
2157
2185
|
key: 3,
|
|
2158
2186
|
weight: "semibold"
|
|
2159
2187
|
}, {
|
|
2160
2188
|
default: a(() => [
|
|
2161
|
-
n(s(
|
|
2189
|
+
n(s(_.value.page.title), 1)
|
|
2162
2190
|
]),
|
|
2163
2191
|
_: 1
|
|
2164
|
-
})) :
|
|
2165
|
-
|
|
2166
|
-
modelValue:
|
|
2167
|
-
"onUpdate:modelValue":
|
|
2192
|
+
})) : S("", !0),
|
|
2193
|
+
d(e(it), {
|
|
2194
|
+
modelValue: k.value,
|
|
2195
|
+
"onUpdate:modelValue": J[0] || (J[0] = (m) => k.value = m),
|
|
2168
2196
|
items: F.value
|
|
2169
2197
|
}, {
|
|
2170
2198
|
default: a(() => [
|
|
2171
|
-
|
|
2172
|
-
(t(!0),
|
|
2173
|
-
I("dt", null, s(
|
|
2174
|
-
typeof H == "string" ? (t(),
|
|
2175
|
-
(t(!0),
|
|
2176
|
-
|
|
2199
|
+
k.value === "overview" ? (t(), y("dl", ga, [
|
|
2200
|
+
(t(!0), y(L, null, M(We.value, ([m, H]) => (t(), y(L, { key: m }, [
|
|
2201
|
+
I("dt", null, s(m), 1),
|
|
2202
|
+
typeof H == "string" ? (t(), y("dd", va, s(H), 1)) : "pairs" in H ? (t(), y("dd", ha, [
|
|
2203
|
+
(t(!0), y(L, null, M(H.pairs, ([Z, $], E) => (t(), y(L, { key: E }, [
|
|
2204
|
+
d(e(B), {
|
|
2177
2205
|
size: "sm",
|
|
2178
2206
|
class: "wx-audit-card__key"
|
|
2179
2207
|
}, {
|
|
@@ -2184,8 +2212,8 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2184
2212
|
}, 1024),
|
|
2185
2213
|
I("span", null, s($), 1)
|
|
2186
2214
|
], 64))), 128))
|
|
2187
|
-
])) : (t(),
|
|
2188
|
-
(t(!0),
|
|
2215
|
+
])) : (t(), y("dd", fa, [
|
|
2216
|
+
(t(!0), y(L, null, M(H.tags, (Z, $) => (t(), u(e(B), {
|
|
2189
2217
|
key: $,
|
|
2190
2218
|
type: "info",
|
|
2191
2219
|
size: "sm"
|
|
@@ -2204,19 +2232,19 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2204
2232
|
n(s(H.error), 1)
|
|
2205
2233
|
]),
|
|
2206
2234
|
_: 2
|
|
2207
|
-
}, 1024)) :
|
|
2235
|
+
}, 1024)) : S("", !0)
|
|
2208
2236
|
]))
|
|
2209
2237
|
], 64))), 128)),
|
|
2210
|
-
Object.keys(
|
|
2211
|
-
I("dt",
|
|
2212
|
-
|
|
2213
|
-
(t(!0),
|
|
2214
|
-
I("dt",
|
|
2215
|
-
I("dd",
|
|
2238
|
+
Object.keys(_.value.page.headers).length ? (t(), y(L, { key: 0 }, [
|
|
2239
|
+
I("dt", _a, s(e(i)("page.headers")), 1),
|
|
2240
|
+
J[2] || (J[2] = I("dd", null, null, -1)),
|
|
2241
|
+
(t(!0), y(L, null, M(_.value.page.headers, (m, H) => (t(), y(L, { key: H }, [
|
|
2242
|
+
I("dt", ma, s(H), 1),
|
|
2243
|
+
I("dd", ya, s(m), 1)
|
|
2216
2244
|
], 64))), 128))
|
|
2217
|
-
], 64)) :
|
|
2218
|
-
])) :
|
|
2219
|
-
|
|
2245
|
+
], 64)) : S("", !0)
|
|
2246
|
+
])) : k.value === "issues" ? (t(), y("div", ba, [
|
|
2247
|
+
_.value.issues.length ? S("", !0) : (t(), u(e(P), {
|
|
2220
2248
|
key: 0,
|
|
2221
2249
|
tone: "muted"
|
|
2222
2250
|
}, {
|
|
@@ -2225,30 +2253,30 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2225
2253
|
]),
|
|
2226
2254
|
_: 1
|
|
2227
2255
|
})),
|
|
2228
|
-
(t(!0),
|
|
2229
|
-
key:
|
|
2256
|
+
(t(!0), y(L, null, M(_.value.issues, (m) => (t(), y("div", {
|
|
2257
|
+
key: m.id,
|
|
2230
2258
|
class: "wx-audit-card__issue"
|
|
2231
2259
|
}, [
|
|
2232
|
-
I("div",
|
|
2233
|
-
|
|
2234
|
-
type: ue[
|
|
2260
|
+
I("div", ka, [
|
|
2261
|
+
d(e(B), {
|
|
2262
|
+
type: ue[m.severity],
|
|
2235
2263
|
dot: ""
|
|
2236
2264
|
}, {
|
|
2237
2265
|
default: a(() => [
|
|
2238
|
-
n(s(e(i)(`page.severity-${
|
|
2266
|
+
n(s(e(i)(`page.severity-${m.severity}`)), 1)
|
|
2239
2267
|
]),
|
|
2240
2268
|
_: 2
|
|
2241
2269
|
}, 1032, ["type"]),
|
|
2242
|
-
|
|
2270
|
+
d(e(P), {
|
|
2243
2271
|
size: "sm",
|
|
2244
2272
|
weight: "semibold"
|
|
2245
2273
|
}, {
|
|
2246
2274
|
default: a(() => [
|
|
2247
|
-
n(s(
|
|
2275
|
+
n(s(g.titles[m.check] ?? m.check), 1)
|
|
2248
2276
|
]),
|
|
2249
2277
|
_: 2
|
|
2250
2278
|
}, 1024),
|
|
2251
|
-
|
|
2279
|
+
m.state === "new" ? (t(), u(e(B), {
|
|
2252
2280
|
key: 0,
|
|
2253
2281
|
type: "primary",
|
|
2254
2282
|
size: "sm"
|
|
@@ -2257,84 +2285,84 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2257
2285
|
n(s(e(i)("page.state-new")), 1)
|
|
2258
2286
|
]),
|
|
2259
2287
|
_: 1
|
|
2260
|
-
})) :
|
|
2288
|
+
})) : S("", !0)
|
|
2261
2289
|
]),
|
|
2262
|
-
|
|
2263
|
-
details:
|
|
2290
|
+
d(je, {
|
|
2291
|
+
details: m.details
|
|
2264
2292
|
}, null, 8, ["details"])
|
|
2265
2293
|
]))), 128))
|
|
2266
2294
|
])) : V.value ? (t(), u(e(he), {
|
|
2267
|
-
key: `resources-${String(
|
|
2295
|
+
key: `resources-${String(k.value)}`,
|
|
2268
2296
|
data: R.value,
|
|
2269
2297
|
columns: ge.value,
|
|
2270
2298
|
"row-key": "id",
|
|
2271
2299
|
flush: "",
|
|
2272
|
-
loading:
|
|
2300
|
+
loading: D.value,
|
|
2273
2301
|
"per-page-options": [],
|
|
2274
2302
|
"empty-text": e(i)("page.no-resources"),
|
|
2275
2303
|
onStateChange: Ie
|
|
2276
2304
|
}, {
|
|
2277
|
-
"cell-url": a(({ row:
|
|
2278
|
-
V.value === "images" ? (t(),
|
|
2279
|
-
|
|
2280
|
-
src: e(Ue)(
|
|
2281
|
-
alt:
|
|
2305
|
+
"cell-url": a(({ row: m }) => [
|
|
2306
|
+
V.value === "images" ? (t(), y("span", xa, [
|
|
2307
|
+
d(e(ut), {
|
|
2308
|
+
src: e(Ue)(m) ? m.url : void 0,
|
|
2309
|
+
alt: m.alt ?? "",
|
|
2282
2310
|
width: 48,
|
|
2283
2311
|
height: 48,
|
|
2284
2312
|
fit: "cover",
|
|
2285
2313
|
radius: "var(--wx-radius-sm)",
|
|
2286
2314
|
preview: "",
|
|
2287
2315
|
"preview-label": e(i)("page.view-full"),
|
|
2288
|
-
class: Ne(["wx-audit-card__thumb", { "is-unviewable": !e(Ue)(
|
|
2316
|
+
class: Ne(["wx-audit-card__thumb", { "is-unviewable": !e(Ue)(m) }])
|
|
2289
2317
|
}, Je({ _: 2 }, [
|
|
2290
|
-
e(Ue)(
|
|
2318
|
+
e(Ue)(m) ? void 0 : {
|
|
2291
2319
|
name: "placeholder",
|
|
2292
2320
|
fn: a(() => [
|
|
2293
|
-
|
|
2321
|
+
d(e(ot), { name: "image" })
|
|
2294
2322
|
]),
|
|
2295
2323
|
key: "0"
|
|
2296
2324
|
}
|
|
2297
2325
|
]), 1032, ["src", "alt", "preview-label", "class"]),
|
|
2298
|
-
I("span",
|
|
2299
|
-
])) : (t(),
|
|
2300
|
-
|
|
2326
|
+
I("span", wa, s(m.url), 1)
|
|
2327
|
+
])) : (t(), y("span", $a, s(m.url), 1)),
|
|
2328
|
+
m.location ? (t(), u(e(P), {
|
|
2301
2329
|
key: 2,
|
|
2302
2330
|
size: "sm",
|
|
2303
2331
|
tone: "muted",
|
|
2304
2332
|
class: "wx-audit-card__url"
|
|
2305
2333
|
}, {
|
|
2306
2334
|
default: a(() => [
|
|
2307
|
-
n(" → " + s(
|
|
2335
|
+
n(" → " + s(m.location), 1)
|
|
2308
2336
|
]),
|
|
2309
2337
|
_: 2
|
|
2310
|
-
}, 1024)) :
|
|
2311
|
-
|
|
2338
|
+
}, 1024)) : S("", !0),
|
|
2339
|
+
m.error ? (t(), u(e(P), {
|
|
2312
2340
|
key: 3,
|
|
2313
2341
|
size: "sm",
|
|
2314
2342
|
tone: "danger"
|
|
2315
2343
|
}, {
|
|
2316
2344
|
default: a(() => [
|
|
2317
|
-
n(s(
|
|
2345
|
+
n(s(m.error), 1)
|
|
2318
2346
|
]),
|
|
2319
2347
|
_: 2
|
|
2320
|
-
}, 1024)) :
|
|
2348
|
+
}, 1024)) : S("", !0)
|
|
2321
2349
|
]),
|
|
2322
|
-
"cell-status": a(({ row:
|
|
2323
|
-
|
|
2350
|
+
"cell-status": a(({ row: m }) => [
|
|
2351
|
+
m.status !== null ? (t(), u(e(B), {
|
|
2324
2352
|
key: 0,
|
|
2325
|
-
type: be(
|
|
2353
|
+
type: be(m.status),
|
|
2326
2354
|
size: "sm"
|
|
2327
2355
|
}, {
|
|
2328
2356
|
default: a(() => [
|
|
2329
|
-
n(s(
|
|
2357
|
+
n(s(m.status), 1)
|
|
2330
2358
|
]),
|
|
2331
2359
|
_: 2
|
|
2332
|
-
}, 1032, ["type"])) :
|
|
2360
|
+
}, 1032, ["type"])) : m.checked ? (t(), u(e(B), {
|
|
2333
2361
|
key: 1,
|
|
2334
2362
|
type: "danger",
|
|
2335
2363
|
size: "sm"
|
|
2336
2364
|
}, {
|
|
2337
|
-
default: a(() => [...
|
|
2365
|
+
default: a(() => [...J[3] || (J[3] = [
|
|
2338
2366
|
n("—", -1)
|
|
2339
2367
|
])]),
|
|
2340
2368
|
_: 1
|
|
@@ -2349,11 +2377,11 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2349
2377
|
_: 1
|
|
2350
2378
|
}))
|
|
2351
2379
|
]),
|
|
2352
|
-
"cell-bytes": a(({ row:
|
|
2353
|
-
n(s(Ae(
|
|
2380
|
+
"cell-bytes": a(({ row: m }) => [
|
|
2381
|
+
n(s(Ae(m)), 1)
|
|
2354
2382
|
]),
|
|
2355
|
-
"cell-alt": a(({ row:
|
|
2356
|
-
|
|
2383
|
+
"cell-alt": a(({ row: m }) => [
|
|
2384
|
+
m.alt === null && m.kind === "img" ? (t(), u(e(P), {
|
|
2357
2385
|
key: 0,
|
|
2358
2386
|
size: "sm",
|
|
2359
2387
|
tone: "danger"
|
|
@@ -2362,13 +2390,13 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2362
2390
|
n(s(e(i)("page.missing")), 1)
|
|
2363
2391
|
]),
|
|
2364
2392
|
_: 1
|
|
2365
|
-
})) : (t(),
|
|
2366
|
-
n(s(
|
|
2393
|
+
})) : (t(), y(L, { key: 1 }, [
|
|
2394
|
+
n(s(m.alt ?? ""), 1)
|
|
2367
2395
|
], 64))
|
|
2368
2396
|
]),
|
|
2369
2397
|
_: 1
|
|
2370
|
-
}, 8, ["data", "columns", "loading", "empty-text"])) :
|
|
2371
|
-
|
|
2398
|
+
}, 8, ["data", "columns", "loading", "empty-text"])) : k.value === "microdata" ? (t(), y("div", za, [
|
|
2399
|
+
_.value.page.json_ld.length ? S("", !0) : (t(), u(e(P), {
|
|
2372
2400
|
key: 0,
|
|
2373
2401
|
tone: "muted"
|
|
2374
2402
|
}, {
|
|
@@ -2377,12 +2405,12 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2377
2405
|
]),
|
|
2378
2406
|
_: 1
|
|
2379
2407
|
})),
|
|
2380
|
-
(t(!0),
|
|
2408
|
+
(t(!0), y(L, null, M(_.value.page.json_ld, (m, H) => (t(), y("div", {
|
|
2381
2409
|
key: H,
|
|
2382
2410
|
class: "wx-audit-card__issue"
|
|
2383
2411
|
}, [
|
|
2384
|
-
I("div",
|
|
2385
|
-
|
|
2412
|
+
I("div", Sa, [
|
|
2413
|
+
d(e(P), {
|
|
2386
2414
|
size: "sm",
|
|
2387
2415
|
weight: "semibold"
|
|
2388
2416
|
}, {
|
|
@@ -2391,7 +2419,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2391
2419
|
]),
|
|
2392
2420
|
_: 2
|
|
2393
2421
|
}, 1024),
|
|
2394
|
-
(t(!0),
|
|
2422
|
+
(t(!0), y(L, null, M(m.types, (Z) => (t(), u(e(B), {
|
|
2395
2423
|
key: Z,
|
|
2396
2424
|
size: "sm"
|
|
2397
2425
|
}, {
|
|
@@ -2401,17 +2429,17 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2401
2429
|
_: 2
|
|
2402
2430
|
}, 1024))), 128))
|
|
2403
2431
|
]),
|
|
2404
|
-
|
|
2432
|
+
m.error ? (t(), u(e(P), {
|
|
2405
2433
|
key: 0,
|
|
2406
2434
|
size: "sm",
|
|
2407
2435
|
tone: "danger"
|
|
2408
2436
|
}, {
|
|
2409
2437
|
default: a(() => [
|
|
2410
|
-
n(s(e(i)("page.jsonld-error")) + " " + s(
|
|
2438
|
+
n(s(e(i)("page.jsonld-error")) + " " + s(m.error), 1)
|
|
2411
2439
|
]),
|
|
2412
2440
|
_: 2
|
|
2413
|
-
}, 1024)) :
|
|
2414
|
-
(t(!0),
|
|
2441
|
+
}, 1024)) : S("", !0),
|
|
2442
|
+
(t(!0), y(L, null, M(m.items ?? [], (Z, $) => (t(), y(L, { key: $ }, [
|
|
2415
2443
|
Z.missing.length ? (t(), u(e(P), {
|
|
2416
2444
|
key: 0,
|
|
2417
2445
|
size: "sm",
|
|
@@ -2421,7 +2449,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2421
2449
|
n(s(Z.type) + " — " + s(e(i)("page.jsonld-required")) + " " + s(Z.missing.join(", ")), 1)
|
|
2422
2450
|
]),
|
|
2423
2451
|
_: 2
|
|
2424
|
-
}, 1024)) :
|
|
2452
|
+
}, 1024)) : S("", !0),
|
|
2425
2453
|
Z.recommended.length ? (t(), u(e(P), {
|
|
2426
2454
|
key: 1,
|
|
2427
2455
|
size: "sm",
|
|
@@ -2431,7 +2459,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2431
2459
|
n(s(Z.type) + " — " + s(e(i)("page.jsonld-recommended")) + " " + s(Z.recommended.join(", ")), 1)
|
|
2432
2460
|
]),
|
|
2433
2461
|
_: 2
|
|
2434
|
-
}, 1024)) :
|
|
2462
|
+
}, 1024)) : S("", !0),
|
|
2435
2463
|
!Z.missing.length && !Z.recommended.length ? (t(), u(e(P), {
|
|
2436
2464
|
key: 2,
|
|
2437
2465
|
size: "sm",
|
|
@@ -2441,47 +2469,47 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2441
2469
|
n(s(Z.type) + " — " + s(e(i)("page.jsonld-complete")), 1)
|
|
2442
2470
|
]),
|
|
2443
2471
|
_: 2
|
|
2444
|
-
}, 1024)) :
|
|
2472
|
+
}, 1024)) : S("", !0)
|
|
2445
2473
|
], 64))), 128)),
|
|
2446
|
-
|
|
2474
|
+
m.source ? (t(), y("pre", Ca, s(Ce(m.source)), 1)) : S("", !0)
|
|
2447
2475
|
]))), 128))
|
|
2448
2476
|
])) : (t(), u(e(he), {
|
|
2449
|
-
key: String(
|
|
2450
|
-
data:
|
|
2477
|
+
key: String(k.value),
|
|
2478
|
+
data: G.value,
|
|
2451
2479
|
columns: $e.value,
|
|
2452
2480
|
"row-key": "id",
|
|
2453
2481
|
flush: "",
|
|
2454
2482
|
loading: Y.value,
|
|
2455
2483
|
"per-page-options": [],
|
|
2456
2484
|
"empty-text": e(i)("page.no-links"),
|
|
2457
|
-
onStateChange:
|
|
2485
|
+
onStateChange: Pe
|
|
2458
2486
|
}, {
|
|
2459
|
-
"cell-url": a(({ row:
|
|
2460
|
-
I("span",
|
|
2487
|
+
"cell-url": a(({ row: m }) => [
|
|
2488
|
+
I("span", Aa, s(m.url ?? "—"), 1)
|
|
2461
2489
|
]),
|
|
2462
|
-
"cell-status": a(({ row:
|
|
2463
|
-
|
|
2490
|
+
"cell-status": a(({ row: m }) => [
|
|
2491
|
+
m.status !== null ? (t(), u(e(B), {
|
|
2464
2492
|
key: 0,
|
|
2465
|
-
type: be(
|
|
2493
|
+
type: be(m.status),
|
|
2466
2494
|
size: "sm"
|
|
2467
2495
|
}, {
|
|
2468
2496
|
default: a(() => [
|
|
2469
|
-
n(s(
|
|
2497
|
+
n(s(m.status), 1)
|
|
2470
2498
|
]),
|
|
2471
2499
|
_: 2
|
|
2472
|
-
}, 1032, ["type"])) :
|
|
2500
|
+
}, 1032, ["type"])) : S("", !0)
|
|
2473
2501
|
]),
|
|
2474
|
-
"cell-host_class": a(({ row:
|
|
2475
|
-
|
|
2502
|
+
"cell-host_class": a(({ row: m }) => [
|
|
2503
|
+
m.host_class ? (t(), u(e(B), {
|
|
2476
2504
|
key: 0,
|
|
2477
|
-
type: ye[
|
|
2505
|
+
type: ye[m.host_class] ?? "info",
|
|
2478
2506
|
size: "sm"
|
|
2479
2507
|
}, {
|
|
2480
2508
|
default: a(() => [
|
|
2481
|
-
n(s(e(i)(`page.host-${
|
|
2509
|
+
n(s(e(i)(`page.host-${m.host_class}`)), 1)
|
|
2482
2510
|
]),
|
|
2483
2511
|
_: 2
|
|
2484
|
-
}, 1032, ["type"])) :
|
|
2512
|
+
}, 1032, ["type"])) : S("", !0)
|
|
2485
2513
|
]),
|
|
2486
2514
|
_: 1
|
|
2487
2515
|
}, 8, ["data", "columns", "loading", "empty-text"]))
|
|
@@ -2496,7 +2524,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2496
2524
|
_: 1
|
|
2497
2525
|
}, 8, ["open"]));
|
|
2498
2526
|
}
|
|
2499
|
-
}),
|
|
2527
|
+
}), Ia = /* @__PURE__ */ ie(Pa, [["__scopeId", "data-v-4cc2906c"]]), ae = {
|
|
2500
2528
|
url: "url",
|
|
2501
2529
|
status: "status",
|
|
2502
2530
|
final_status: "status",
|
|
@@ -2526,7 +2554,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2526
2554
|
in_sitemap: "bool",
|
|
2527
2555
|
in_registry: "bool",
|
|
2528
2556
|
blocked_by_robots: "bool"
|
|
2529
|
-
},
|
|
2557
|
+
}, Oa = [
|
|
2530
2558
|
"url",
|
|
2531
2559
|
"status",
|
|
2532
2560
|
"indexable",
|
|
@@ -2534,71 +2562,71 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2534
2562
|
"word_count",
|
|
2535
2563
|
"links_in",
|
|
2536
2564
|
"issues"
|
|
2537
|
-
],
|
|
2565
|
+
], Ee = ["h1"], Be = {
|
|
2538
2566
|
url: ["contains", "eq", "empty", "filled"],
|
|
2539
2567
|
text: ["contains", "eq", "empty", "filled"],
|
|
2540
2568
|
number: ["gt", "lt", "eq", "empty"],
|
|
2541
2569
|
status: ["eq", "gt", "lt", "empty"],
|
|
2542
2570
|
bool: ["yes", "no"],
|
|
2543
2571
|
source: ["eq"]
|
|
2544
|
-
}, Ve = ["contains", "eq", "gt", "lt"],
|
|
2572
|
+
}, Ve = ["contains", "eq", "gt", "lt"], Ua = ["home", "sitemap", "registry", "link"], Va = { class: "wx-audit-pages__filters" }, He = "webx-audit.pages.columns", Na = /* @__PURE__ */ se({
|
|
2545
2573
|
__name: "AuditPagesPage",
|
|
2546
2574
|
props: {
|
|
2547
2575
|
base: {}
|
|
2548
2576
|
},
|
|
2549
|
-
setup(
|
|
2550
|
-
const v =
|
|
2577
|
+
setup(f) {
|
|
2578
|
+
const v = f, g = re(le());
|
|
2551
2579
|
ne();
|
|
2552
|
-
const o = ee("webx-audit"), l = ee("webx-admin"), r = oe(),
|
|
2553
|
-
let
|
|
2554
|
-
const
|
|
2555
|
-
function
|
|
2580
|
+
const o = ee("webx-audit"), l = ee("webx-admin"), r = oe(), p = at(), h = C(null), b = C(!1), c = C(null), z = C(!1), w = C(null), A = C({}), O = C(null), i = C(null), N = C(null), _ = C([]);
|
|
2581
|
+
let T = { page: 1, perPage: 50, sort: null, search: "" };
|
|
2582
|
+
const k = C(G());
|
|
2583
|
+
function G() {
|
|
2556
2584
|
try {
|
|
2557
|
-
const $ = JSON.parse(window.localStorage.getItem(
|
|
2585
|
+
const $ = JSON.parse(window.localStorage.getItem(He) ?? "null");
|
|
2558
2586
|
if (Array.isArray($)) {
|
|
2559
|
-
const E = $.filter((
|
|
2587
|
+
const E = $.filter((j) => j in ae);
|
|
2560
2588
|
if (E.length) return E;
|
|
2561
2589
|
}
|
|
2562
2590
|
} catch {
|
|
2563
2591
|
}
|
|
2564
|
-
return [...
|
|
2592
|
+
return [...Oa];
|
|
2565
2593
|
}
|
|
2566
|
-
de(
|
|
2594
|
+
de(k, ($) => {
|
|
2567
2595
|
try {
|
|
2568
|
-
window.localStorage.setItem(
|
|
2596
|
+
window.localStorage.setItem(He, JSON.stringify($));
|
|
2569
2597
|
} catch {
|
|
2570
2598
|
}
|
|
2571
2599
|
});
|
|
2572
|
-
const Y = Object.keys(ae), R =
|
|
2600
|
+
const Y = Object.keys(ae), R = q(
|
|
2573
2601
|
() => Y.map(($) => ({ value: $, label: o(`page.field-${$}`) }))
|
|
2574
|
-
),
|
|
2575
|
-
() => Y.filter(($) => !
|
|
2576
|
-
), U =
|
|
2602
|
+
), D = q(
|
|
2603
|
+
() => Y.filter(($) => !Ee.includes($)).map(($) => ({ value: $, label: o(`page.field-${$}`) }))
|
|
2604
|
+
), U = q(
|
|
2577
2605
|
() => (
|
|
2578
2606
|
/* The picker keeps the order things were ticked in; the table keeps the card's order. */
|
|
2579
|
-
Y.filter(($) =>
|
|
2607
|
+
Y.filter(($) => k.value.includes($)).map(($) => ({
|
|
2580
2608
|
key: $,
|
|
2581
2609
|
label: o(`page.field-${$}`),
|
|
2582
|
-
sortable: !
|
|
2610
|
+
sortable: !Ee.includes($),
|
|
2583
2611
|
minWidth: ae[$] === "url" || ae[$] === "text" ? 220 : void 0,
|
|
2584
2612
|
align: ae[$] === "number" ? "right" : void 0
|
|
2585
2613
|
}))
|
|
2586
2614
|
)
|
|
2587
|
-
),
|
|
2615
|
+
), W = q(() => [
|
|
2588
2616
|
...["2xx", "3xx", "4xx", "5xx"].map(($) => ({ value: $, label: $ })),
|
|
2589
2617
|
{ value: "none", label: o("page.status-none") }
|
|
2590
|
-
]), F =
|
|
2618
|
+
]), F = q(() => [
|
|
2591
2619
|
{ value: "1", label: o("page.indexable-yes") },
|
|
2592
2620
|
{ value: "0", label: o("page.indexable-no") }
|
|
2593
|
-
]), V =
|
|
2594
|
-
() => Object.entries(
|
|
2595
|
-
), ue =
|
|
2596
|
-
() => [O.value, i.value, N.value].filter(Boolean).length +
|
|
2597
|
-
), ye =
|
|
2621
|
+
]), V = q(
|
|
2622
|
+
() => Object.entries(A.value).map(([$, E]) => ({ value: $, label: E }))
|
|
2623
|
+
), ue = q(
|
|
2624
|
+
() => [O.value, i.value, N.value].filter(Boolean).length + _.value.filter($e).length
|
|
2625
|
+
), ye = q(() => ({
|
|
2598
2626
|
status: O.value,
|
|
2599
2627
|
indexable: i.value === null ? null : i.value === "1",
|
|
2600
2628
|
check: N.value,
|
|
2601
|
-
filters:
|
|
2629
|
+
filters: _.value.filter($e)
|
|
2602
2630
|
}));
|
|
2603
2631
|
function $e($) {
|
|
2604
2632
|
return !Ve.includes($.op) || ($.value ?? "").trim() !== "";
|
|
@@ -2607,48 +2635,48 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2607
2635
|
return typeof $ == "string" && $ !== "" ? $ : null;
|
|
2608
2636
|
}
|
|
2609
2637
|
function Ce($) {
|
|
2610
|
-
return
|
|
2638
|
+
return Be[ae[$]].map((E) => ({ value: E, label: o(`page.op-${E}`) }));
|
|
2611
2639
|
}
|
|
2612
2640
|
function Ae() {
|
|
2613
|
-
|
|
2641
|
+
_.value = [..._.value, { field: "title", op: "empty" }];
|
|
2614
2642
|
}
|
|
2615
|
-
function
|
|
2616
|
-
const
|
|
2617
|
-
|
|
2618
|
-
(
|
|
2643
|
+
function We($, E) {
|
|
2644
|
+
const j = ge(E);
|
|
2645
|
+
j && (_.value = _.value.map(
|
|
2646
|
+
(Q, te) => te === $ ? { field: j, op: Be[ae[j]][0], value: "" } : Q
|
|
2619
2647
|
));
|
|
2620
2648
|
}
|
|
2621
2649
|
function be($, E) {
|
|
2622
|
-
const
|
|
2623
|
-
|
|
2650
|
+
const j = ge(E);
|
|
2651
|
+
j && (_.value = _.value.map((Q, te) => te === $ ? { ...Q, op: j } : Q));
|
|
2624
2652
|
}
|
|
2625
2653
|
function ze($, E) {
|
|
2626
|
-
|
|
2654
|
+
_.value = _.value.map((j, Q) => Q === $ ? { ...j, value: E } : j);
|
|
2627
2655
|
}
|
|
2628
|
-
function
|
|
2629
|
-
|
|
2656
|
+
function Pe($) {
|
|
2657
|
+
_.value = _.value.filter((E, j) => j !== $);
|
|
2630
2658
|
}
|
|
2631
2659
|
function Ie($) {
|
|
2632
|
-
const E = $.filter((
|
|
2633
|
-
|
|
2660
|
+
const E = $.filter((j) => String(j) in ae);
|
|
2661
|
+
k.value = E.length ? E : ["url"];
|
|
2634
2662
|
}
|
|
2635
|
-
const
|
|
2663
|
+
const x = {
|
|
2636
2664
|
2: "success",
|
|
2637
2665
|
3: "info",
|
|
2638
2666
|
4: "warning",
|
|
2639
2667
|
5: "danger"
|
|
2640
2668
|
};
|
|
2641
|
-
function
|
|
2642
|
-
return
|
|
2669
|
+
function J($) {
|
|
2670
|
+
return x[String($ ?? "").charAt(0)] ?? "danger";
|
|
2643
2671
|
}
|
|
2644
|
-
function
|
|
2672
|
+
function m($) {
|
|
2645
2673
|
return $ == null || $ === "" ? "—" : String($);
|
|
2646
2674
|
}
|
|
2647
|
-
async function H($ =
|
|
2648
|
-
if (
|
|
2649
|
-
|
|
2675
|
+
async function H($ = T) {
|
|
2676
|
+
if (T = $, h.value !== null) {
|
|
2677
|
+
z.value = !0;
|
|
2650
2678
|
try {
|
|
2651
|
-
|
|
2679
|
+
c.value = await g.pages(h.value.id, {
|
|
2652
2680
|
...ye.value,
|
|
2653
2681
|
search: $.search,
|
|
2654
2682
|
sort: $.sort ? `${$.sort.order === "desc" ? "-" : ""}${$.sort.key}` : null,
|
|
@@ -2658,31 +2686,31 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2658
2686
|
} catch (E) {
|
|
2659
2687
|
X.danger(r(E));
|
|
2660
2688
|
} finally {
|
|
2661
|
-
|
|
2689
|
+
z.value = !1;
|
|
2662
2690
|
}
|
|
2663
2691
|
}
|
|
2664
2692
|
}
|
|
2665
2693
|
function Z() {
|
|
2666
2694
|
h.value !== null && window.location.assign(
|
|
2667
|
-
|
|
2695
|
+
g.pagesFile(
|
|
2668
2696
|
h.value.id,
|
|
2669
|
-
{ ...ye.value, search:
|
|
2697
|
+
{ ...ye.value, search: T.search },
|
|
2670
2698
|
U.value.map(($) => $.key)
|
|
2671
2699
|
)
|
|
2672
2700
|
);
|
|
2673
2701
|
}
|
|
2674
2702
|
return de(ye, () => {
|
|
2675
|
-
H({ ...
|
|
2703
|
+
H({ ...T, page: 1 });
|
|
2676
2704
|
}, { deep: !0 }), ve(async () => {
|
|
2677
2705
|
try {
|
|
2678
|
-
if (h.value = (await
|
|
2679
|
-
const $ = await
|
|
2680
|
-
|
|
2706
|
+
if (h.value = (await g.latest()).crawled, h.value !== null) {
|
|
2707
|
+
const $ = await g.checks(h.value.id);
|
|
2708
|
+
A.value = Object.fromEntries($.map((E) => [E.id, E.title]));
|
|
2681
2709
|
}
|
|
2682
2710
|
} catch ($) {
|
|
2683
2711
|
X.danger(r($));
|
|
2684
2712
|
} finally {
|
|
2685
|
-
|
|
2713
|
+
b.value = !0;
|
|
2686
2714
|
}
|
|
2687
2715
|
H();
|
|
2688
2716
|
}), ($, E) => (t(), u(me, {
|
|
@@ -2690,7 +2718,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2690
2718
|
current: "pages"
|
|
2691
2719
|
}, {
|
|
2692
2720
|
default: a(() => [
|
|
2693
|
-
|
|
2721
|
+
b.value && h.value === null ? (t(), u(e(P), {
|
|
2694
2722
|
key: 0,
|
|
2695
2723
|
tone: "muted",
|
|
2696
2724
|
class: "wx-audit-pages__none"
|
|
@@ -2701,14 +2729,14 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2701
2729
|
_: 1
|
|
2702
2730
|
})) : (t(), u(e(he), {
|
|
2703
2731
|
key: 1,
|
|
2704
|
-
data:
|
|
2732
|
+
data: c.value,
|
|
2705
2733
|
columns: U.value,
|
|
2706
2734
|
"row-key": "id",
|
|
2707
2735
|
searchable: "",
|
|
2708
2736
|
clickable: "",
|
|
2709
2737
|
hover: "",
|
|
2710
2738
|
flush: "",
|
|
2711
|
-
loading:
|
|
2739
|
+
loading: z.value || !b.value,
|
|
2712
2740
|
"per-page-options": [50, 100, 200],
|
|
2713
2741
|
"search-placeholder": e(o)("page.search-url"),
|
|
2714
2742
|
"filters-count": ue.value,
|
|
@@ -2716,7 +2744,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2716
2744
|
"filters-width": 420,
|
|
2717
2745
|
"empty-text": e(o)("page.empty"),
|
|
2718
2746
|
onStateChange: H,
|
|
2719
|
-
onRowClick: E[3] || (E[3] = (
|
|
2747
|
+
onRowClick: E[3] || (E[3] = (j) => w.value = j.id)
|
|
2720
2748
|
}, Je({
|
|
2721
2749
|
title: a(() => [
|
|
2722
2750
|
h.value ? (t(), u(e(P), {
|
|
@@ -2725,18 +2753,18 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2725
2753
|
tone: "muted"
|
|
2726
2754
|
}, {
|
|
2727
2755
|
default: a(() => [
|
|
2728
|
-
n(s(e(o)("page.pages-run", { date: e(
|
|
2756
|
+
n(s(e(o)("page.pages-run", { date: e(p).short(h.value.finished_at) })), 1)
|
|
2729
2757
|
]),
|
|
2730
2758
|
_: 1
|
|
2731
|
-
})) :
|
|
2759
|
+
})) : S("", !0)
|
|
2732
2760
|
]),
|
|
2733
2761
|
actions: a(() => [
|
|
2734
|
-
|
|
2762
|
+
d(e(Te), {
|
|
2735
2763
|
title: e(o)("page.columns"),
|
|
2736
2764
|
width: "300"
|
|
2737
2765
|
}, {
|
|
2738
2766
|
trigger: a(() => [
|
|
2739
|
-
|
|
2767
|
+
d(e(K), {
|
|
2740
2768
|
size: "sm",
|
|
2741
2769
|
variant: "text",
|
|
2742
2770
|
icon: "sliders"
|
|
@@ -2748,8 +2776,8 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2748
2776
|
})
|
|
2749
2777
|
]),
|
|
2750
2778
|
default: a(() => [
|
|
2751
|
-
|
|
2752
|
-
"model-value":
|
|
2779
|
+
d(e(rt), {
|
|
2780
|
+
"model-value": k.value,
|
|
2753
2781
|
options: R.value,
|
|
2754
2782
|
size: "sm",
|
|
2755
2783
|
class: "wx-audit-pages__picker",
|
|
@@ -2758,7 +2786,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2758
2786
|
]),
|
|
2759
2787
|
_: 1
|
|
2760
2788
|
}, 8, ["title"]),
|
|
2761
|
-
|
|
2789
|
+
d(e(K), {
|
|
2762
2790
|
size: "sm",
|
|
2763
2791
|
variant: "text",
|
|
2764
2792
|
icon: "download",
|
|
@@ -2772,68 +2800,68 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2772
2800
|
}, 8, ["disabled"])
|
|
2773
2801
|
]),
|
|
2774
2802
|
filters: a(() => [
|
|
2775
|
-
I("div",
|
|
2776
|
-
|
|
2803
|
+
I("div", Va, [
|
|
2804
|
+
d(e(pe), {
|
|
2777
2805
|
"model-value": O.value,
|
|
2778
|
-
options:
|
|
2806
|
+
options: W.value,
|
|
2779
2807
|
placeholder: e(o)("page.any-status"),
|
|
2780
2808
|
clearable: "",
|
|
2781
|
-
"onUpdate:modelValue": E[0] || (E[0] = (
|
|
2809
|
+
"onUpdate:modelValue": E[0] || (E[0] = (j) => O.value = ge(j))
|
|
2782
2810
|
}, null, 8, ["model-value", "options", "placeholder"]),
|
|
2783
|
-
|
|
2811
|
+
d(e(pe), {
|
|
2784
2812
|
"model-value": i.value,
|
|
2785
2813
|
options: F.value,
|
|
2786
2814
|
placeholder: e(o)("page.any-indexable"),
|
|
2787
2815
|
clearable: "",
|
|
2788
|
-
"onUpdate:modelValue": E[1] || (E[1] = (
|
|
2816
|
+
"onUpdate:modelValue": E[1] || (E[1] = (j) => i.value = ge(j))
|
|
2789
2817
|
}, null, 8, ["model-value", "options", "placeholder"]),
|
|
2790
|
-
|
|
2818
|
+
d(e(pe), {
|
|
2791
2819
|
"model-value": N.value,
|
|
2792
2820
|
options: V.value,
|
|
2793
2821
|
placeholder: e(o)("page.any-check"),
|
|
2794
2822
|
clearable: "",
|
|
2795
2823
|
filterable: "",
|
|
2796
|
-
"onUpdate:modelValue": E[2] || (E[2] = (
|
|
2824
|
+
"onUpdate:modelValue": E[2] || (E[2] = (j) => N.value = ge(j))
|
|
2797
2825
|
}, null, 8, ["model-value", "options", "placeholder"]),
|
|
2798
|
-
(t(!0),
|
|
2799
|
-
key:
|
|
2826
|
+
(t(!0), y(L, null, M(_.value, (j, Q) => (t(), y("div", {
|
|
2827
|
+
key: Q,
|
|
2800
2828
|
class: "wx-audit-pages__filter"
|
|
2801
2829
|
}, [
|
|
2802
|
-
|
|
2803
|
-
"model-value":
|
|
2804
|
-
options:
|
|
2830
|
+
d(e(pe), {
|
|
2831
|
+
"model-value": j.field,
|
|
2832
|
+
options: D.value,
|
|
2805
2833
|
filterable: "",
|
|
2806
2834
|
size: "sm",
|
|
2807
|
-
"onUpdate:modelValue": (te) =>
|
|
2835
|
+
"onUpdate:modelValue": (te) => We(Q, te)
|
|
2808
2836
|
}, null, 8, ["model-value", "options", "onUpdate:modelValue"]),
|
|
2809
|
-
|
|
2810
|
-
"model-value":
|
|
2811
|
-
options: Ce(
|
|
2837
|
+
d(e(pe), {
|
|
2838
|
+
"model-value": j.op,
|
|
2839
|
+
options: Ce(j.field),
|
|
2812
2840
|
size: "sm",
|
|
2813
|
-
"onUpdate:modelValue": (te) => be(
|
|
2841
|
+
"onUpdate:modelValue": (te) => be(Q, te)
|
|
2814
2842
|
}, null, 8, ["model-value", "options", "onUpdate:modelValue"]),
|
|
2815
|
-
e(Ve).includes(
|
|
2843
|
+
e(Ve).includes(j.op) && e(ae)[j.field] === "source" ? (t(), u(e(pe), {
|
|
2816
2844
|
key: 0,
|
|
2817
|
-
"model-value":
|
|
2818
|
-
options: e(
|
|
2845
|
+
"model-value": j.value ?? null,
|
|
2846
|
+
options: e(Ua).map((te) => ({ value: te, label: e(o)(`page.source-${te}`) })),
|
|
2819
2847
|
size: "sm",
|
|
2820
|
-
"onUpdate:modelValue": (te) => ze(
|
|
2821
|
-
}, null, 8, ["model-value", "options", "onUpdate:modelValue"])) : e(Ve).includes(
|
|
2848
|
+
"onUpdate:modelValue": (te) => ze(Q, ge(te) ?? "")
|
|
2849
|
+
}, null, 8, ["model-value", "options", "onUpdate:modelValue"])) : e(Ve).includes(j.op) ? (t(), u(e(Qe), {
|
|
2822
2850
|
key: 1,
|
|
2823
|
-
"model-value":
|
|
2851
|
+
"model-value": j.value ?? "",
|
|
2824
2852
|
placeholder: e(o)("page.value"),
|
|
2825
2853
|
size: "sm",
|
|
2826
|
-
"onUpdate:modelValue": (te) => ze(
|
|
2827
|
-
}, null, 8, ["model-value", "placeholder", "onUpdate:modelValue"])) :
|
|
2828
|
-
|
|
2854
|
+
"onUpdate:modelValue": (te) => ze(Q, String(te ?? ""))
|
|
2855
|
+
}, null, 8, ["model-value", "placeholder", "onUpdate:modelValue"])) : S("", !0),
|
|
2856
|
+
d(e(K), {
|
|
2829
2857
|
size: "sm",
|
|
2830
2858
|
variant: "text",
|
|
2831
2859
|
icon: "close",
|
|
2832
2860
|
"aria-label": e(o)("page.remove-filter"),
|
|
2833
|
-
onClick: (te) =>
|
|
2861
|
+
onClick: (te) => Pe(Q)
|
|
2834
2862
|
}, null, 8, ["aria-label", "onClick"])
|
|
2835
2863
|
]))), 128)),
|
|
2836
|
-
|
|
2864
|
+
d(e(K), {
|
|
2837
2865
|
size: "sm",
|
|
2838
2866
|
variant: "text",
|
|
2839
2867
|
icon: "plus",
|
|
@@ -2848,19 +2876,19 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2848
2876
|
]),
|
|
2849
2877
|
_: 2
|
|
2850
2878
|
}, [
|
|
2851
|
-
M(
|
|
2852
|
-
name: `cell-${
|
|
2853
|
-
fn: a(({ row:
|
|
2854
|
-
e(ae)[
|
|
2879
|
+
M(k.value, (j) => ({
|
|
2880
|
+
name: `cell-${j}`,
|
|
2881
|
+
fn: a(({ row: Q }) => [
|
|
2882
|
+
e(ae)[j] === "status" && Q[j] !== null ? (t(), u(e(B), {
|
|
2855
2883
|
key: 0,
|
|
2856
|
-
type:
|
|
2884
|
+
type: J(Q[j]),
|
|
2857
2885
|
size: "sm"
|
|
2858
2886
|
}, {
|
|
2859
2887
|
default: a(() => [
|
|
2860
|
-
n(s(
|
|
2888
|
+
n(s(Q[j]), 1)
|
|
2861
2889
|
]),
|
|
2862
2890
|
_: 2
|
|
2863
|
-
}, 1032, ["type"])) : e(ae)[
|
|
2891
|
+
}, 1032, ["type"])) : e(ae)[j] === "status" ? (t(), u(e(P), {
|
|
2864
2892
|
key: 1,
|
|
2865
2893
|
size: "sm",
|
|
2866
2894
|
tone: "danger"
|
|
@@ -2869,96 +2897,96 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2869
2897
|
n(s(e(o)("page.status-none")), 1)
|
|
2870
2898
|
]),
|
|
2871
2899
|
_: 1
|
|
2872
|
-
})) : e(ae)[
|
|
2873
|
-
n(s(
|
|
2874
|
-
], 64)) : e(ae)[
|
|
2875
|
-
n(s(e(o)(`page.source-${
|
|
2876
|
-
], 64)) :
|
|
2900
|
+
})) : e(ae)[j] === "bool" ? (t(), y(L, { key: 2 }, [
|
|
2901
|
+
n(s(Q[j] ? e(o)("page.yes") : e(o)("page.no")), 1)
|
|
2902
|
+
], 64)) : e(ae)[j] === "source" ? (t(), y(L, { key: 3 }, [
|
|
2903
|
+
n(s(e(o)(`page.source-${Q[j]}`)), 1)
|
|
2904
|
+
], 64)) : j === "issues" && Q.issues > 0 ? (t(), u(e(B), {
|
|
2877
2905
|
key: 4,
|
|
2878
2906
|
type: "warning",
|
|
2879
2907
|
size: "sm"
|
|
2880
2908
|
}, {
|
|
2881
2909
|
default: a(() => [
|
|
2882
|
-
n(s(
|
|
2910
|
+
n(s(Q.issues), 1)
|
|
2883
2911
|
]),
|
|
2884
2912
|
_: 2
|
|
2885
|
-
}, 1024)) : (t(),
|
|
2913
|
+
}, 1024)) : (t(), y("span", {
|
|
2886
2914
|
key: 5,
|
|
2887
|
-
class: Ne({ "wx-audit-pages__long": e(ae)[
|
|
2888
|
-
}, s(
|
|
2915
|
+
class: Ne({ "wx-audit-pages__long": e(ae)[j] === "url" })
|
|
2916
|
+
}, s(m(Q[j])), 3))
|
|
2889
2917
|
])
|
|
2890
2918
|
}))
|
|
2891
2919
|
]), 1032, ["data", "columns", "loading", "search-placeholder", "filters-count", "filters-label", "empty-text"])),
|
|
2892
|
-
h.value ? (t(), u(
|
|
2920
|
+
h.value ? (t(), u(Ia, {
|
|
2893
2921
|
key: 2,
|
|
2894
2922
|
run: h.value.id,
|
|
2895
2923
|
base: v.base,
|
|
2896
|
-
"page-id":
|
|
2897
|
-
titles:
|
|
2898
|
-
onClose: E[4] || (E[4] = (
|
|
2899
|
-
}, null, 8, ["run", "base", "page-id", "titles"])) :
|
|
2924
|
+
"page-id": w.value,
|
|
2925
|
+
titles: A.value,
|
|
2926
|
+
onClose: E[4] || (E[4] = (j) => w.value = null)
|
|
2927
|
+
}, null, 8, ["run", "base", "page-id", "titles"])) : S("", !0)
|
|
2900
2928
|
]),
|
|
2901
2929
|
_: 1
|
|
2902
2930
|
}, 8, ["base"]));
|
|
2903
2931
|
}
|
|
2904
|
-
}),
|
|
2932
|
+
}), Ta = /* @__PURE__ */ ie(Na, [["__scopeId", "data-v-7850735f"]]), ja = { class: "wx-audit-compare" }, Ra = /* @__PURE__ */ se({
|
|
2905
2933
|
__name: "AuditCompareIssues",
|
|
2906
2934
|
props: {
|
|
2907
2935
|
from: {},
|
|
2908
2936
|
to: {},
|
|
2909
2937
|
row: {}
|
|
2910
2938
|
},
|
|
2911
|
-
setup(
|
|
2912
|
-
const v =
|
|
2939
|
+
setup(f) {
|
|
2940
|
+
const v = f, g = re(le());
|
|
2913
2941
|
ne();
|
|
2914
|
-
const o = ee("webx-audit"), l = oe(), r = ["new", "fixed", "persisting"],
|
|
2942
|
+
const o = ee("webx-audit"), l = oe(), r = ["new", "fixed", "persisting"], p = C(r.find((O) => v.row[O] > 0) ?? "new"), h = C(null), b = C(1), c = C(!1), z = C(null), w = q(
|
|
2915
2943
|
() => r.map((O) => ({
|
|
2916
2944
|
value: O,
|
|
2917
2945
|
label: `${o(`page.kind-${O}`)} · ${v.row[O]}`,
|
|
2918
2946
|
disabled: v.row[O] === 0
|
|
2919
2947
|
}))
|
|
2920
2948
|
);
|
|
2921
|
-
async function
|
|
2922
|
-
|
|
2949
|
+
async function A(O = 1) {
|
|
2950
|
+
z.value = null;
|
|
2923
2951
|
try {
|
|
2924
|
-
const i = await
|
|
2952
|
+
const i = await g.compareIssues({
|
|
2925
2953
|
from: v.from,
|
|
2926
2954
|
to: v.to,
|
|
2927
|
-
kind:
|
|
2955
|
+
kind: p.value,
|
|
2928
2956
|
check: v.row.check,
|
|
2929
2957
|
page: O,
|
|
2930
2958
|
per_page: 50
|
|
2931
2959
|
});
|
|
2932
|
-
h.value = O === 1 ? i.data : [...h.value ?? [], ...i.data],
|
|
2960
|
+
h.value = O === 1 ? i.data : [...h.value ?? [], ...i.data], b.value = i.current_page, c.value = i.current_page < i.last_page;
|
|
2933
2961
|
} catch (i) {
|
|
2934
|
-
|
|
2962
|
+
z.value = l(i);
|
|
2935
2963
|
}
|
|
2936
2964
|
}
|
|
2937
2965
|
return de(
|
|
2938
|
-
|
|
2966
|
+
p,
|
|
2939
2967
|
() => {
|
|
2940
|
-
h.value = null,
|
|
2968
|
+
h.value = null, A();
|
|
2941
2969
|
},
|
|
2942
2970
|
{ immediate: !0 }
|
|
2943
|
-
), (O, i) => (t(),
|
|
2944
|
-
|
|
2945
|
-
modelValue:
|
|
2946
|
-
"onUpdate:modelValue": i[0] || (i[0] = (N) =>
|
|
2947
|
-
options:
|
|
2971
|
+
), (O, i) => (t(), y("div", ja, [
|
|
2972
|
+
d(e(Xe), {
|
|
2973
|
+
modelValue: p.value,
|
|
2974
|
+
"onUpdate:modelValue": i[0] || (i[0] = (N) => p.value = N),
|
|
2975
|
+
options: w.value,
|
|
2948
2976
|
size: "sm",
|
|
2949
2977
|
"aria-label": e(o)("page.compare")
|
|
2950
2978
|
}, null, 8, ["modelValue", "options", "aria-label"]),
|
|
2951
|
-
|
|
2979
|
+
z.value ? (t(), u(e(P), {
|
|
2952
2980
|
key: 0,
|
|
2953
2981
|
size: "sm",
|
|
2954
2982
|
tone: "danger"
|
|
2955
2983
|
}, {
|
|
2956
2984
|
default: a(() => [
|
|
2957
|
-
n(s(
|
|
2985
|
+
n(s(z.value), 1)
|
|
2958
2986
|
]),
|
|
2959
2987
|
_: 1
|
|
2960
|
-
})) : h.value ? (t(),
|
|
2961
|
-
(t(!0),
|
|
2988
|
+
})) : h.value ? (t(), y(L, { key: 2 }, [
|
|
2989
|
+
(t(!0), y(L, null, M(h.value, (N) => (t(), y("div", {
|
|
2962
2990
|
key: N.id,
|
|
2963
2991
|
class: "wx-audit-compare__item"
|
|
2964
2992
|
}, [
|
|
@@ -2972,29 +3000,29 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
2972
3000
|
n(s(N.url), 1)
|
|
2973
3001
|
]),
|
|
2974
3002
|
_: 2
|
|
2975
|
-
}, 1032, ["href"])) :
|
|
2976
|
-
|
|
3003
|
+
}, 1032, ["href"])) : S("", !0),
|
|
3004
|
+
d(je, {
|
|
2977
3005
|
details: N.details
|
|
2978
3006
|
}, null, 8, ["details"])
|
|
2979
3007
|
]))), 128)),
|
|
2980
|
-
|
|
3008
|
+
c.value ? (t(), u(e(K), {
|
|
2981
3009
|
key: 0,
|
|
2982
3010
|
size: "sm",
|
|
2983
3011
|
variant: "text",
|
|
2984
|
-
onClick: i[1] || (i[1] = (N) =>
|
|
3012
|
+
onClick: i[1] || (i[1] = (N) => A(b.value + 1))
|
|
2985
3013
|
}, {
|
|
2986
3014
|
default: a(() => [...i[2] || (i[2] = [
|
|
2987
3015
|
n("…", -1)
|
|
2988
3016
|
])]),
|
|
2989
3017
|
_: 1
|
|
2990
|
-
})) :
|
|
3018
|
+
})) : S("", !0)
|
|
2991
3019
|
], 64)) : (t(), u(e(fe), {
|
|
2992
3020
|
key: 1,
|
|
2993
3021
|
rows: 2
|
|
2994
3022
|
}))
|
|
2995
3023
|
]));
|
|
2996
3024
|
}
|
|
2997
|
-
}),
|
|
3025
|
+
}), Fa = /* @__PURE__ */ ie(Ra, [["__scopeId", "data-v-02d42bdb"]]), La = { class: "wx-audit-runs" }, qa = {
|
|
2998
3026
|
key: 0,
|
|
2999
3027
|
class: "wx-audit-runs__counts"
|
|
3000
3028
|
}, Da = /* @__PURE__ */ se({
|
|
@@ -3002,10 +3030,10 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3002
3030
|
props: {
|
|
3003
3031
|
base: {}
|
|
3004
3032
|
},
|
|
3005
|
-
setup(
|
|
3006
|
-
const v =
|
|
3033
|
+
setup(f) {
|
|
3034
|
+
const v = f, g = re(le()), o = Ye();
|
|
3007
3035
|
ne();
|
|
3008
|
-
const l = ee("webx-audit"), r = oe(),
|
|
3036
|
+
const l = ee("webx-audit"), r = oe(), p = C(null), h = C(!1), b = C([]), c = C(null), z = C(!1), w = C([]), A = {
|
|
3009
3037
|
queued: "info",
|
|
3010
3038
|
running: "primary",
|
|
3011
3039
|
done: "success",
|
|
@@ -3015,7 +3043,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3015
3043
|
error: "danger",
|
|
3016
3044
|
warning: "warning",
|
|
3017
3045
|
notice: "info"
|
|
3018
|
-
}, i =
|
|
3046
|
+
}, i = q(() => [
|
|
3019
3047
|
{ key: "id", label: l("page.run-id"), width: 90 },
|
|
3020
3048
|
{ key: "created_at", label: l("page.started-at"), minWidth: 160 },
|
|
3021
3049
|
{ key: "scope", label: l("page.scope"), width: 120 },
|
|
@@ -3023,62 +3051,62 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3023
3051
|
{ key: "health", label: l("page.health"), width: 100, align: "right" },
|
|
3024
3052
|
{ key: "severity", label: l("page.severity"), minWidth: 170, hideBelow: 640 },
|
|
3025
3053
|
{ key: "started_by", label: l("page.started-by"), minWidth: 130, hideBelow: 760 }
|
|
3026
|
-
]), N =
|
|
3054
|
+
]), N = q(() => [
|
|
3027
3055
|
{ key: "severity", label: l("page.severity"), width: 130 },
|
|
3028
3056
|
{ key: "title", label: l("page.check") },
|
|
3029
3057
|
{ key: "new", label: l("page.kind-new"), width: 90, align: "right" },
|
|
3030
3058
|
{ key: "fixed", label: l("page.kind-fixed"), width: 100, align: "right" },
|
|
3031
3059
|
{ key: "persisting", label: l("page.kind-persisting"), width: 120, align: "right" }
|
|
3032
|
-
]),
|
|
3033
|
-
const R =
|
|
3060
|
+
]), _ = q(() => {
|
|
3061
|
+
const R = b.value.map(Number).sort((D, U) => D - U);
|
|
3034
3062
|
return R.length === 0 ? null : R.length === 1 ? { to: R[0], from: null } : { to: R[R.length - 1], from: R[0] };
|
|
3035
|
-
}),
|
|
3036
|
-
() =>
|
|
3063
|
+
}), T = q(
|
|
3064
|
+
() => c.value !== null && c.value.from.scope !== c.value.to.scope
|
|
3037
3065
|
);
|
|
3038
|
-
function
|
|
3066
|
+
function k(R) {
|
|
3039
3067
|
return R.started_by === "schedule" ? l("page.by-schedule") : R.started_by === "mcp" ? l("page.by-mcp") : R.started_by === "console" ? l("page.by-console") : R.started_by ? l("page.by-person") : "";
|
|
3040
3068
|
}
|
|
3041
|
-
async function
|
|
3069
|
+
async function G(R) {
|
|
3042
3070
|
h.value = !0;
|
|
3043
3071
|
try {
|
|
3044
|
-
|
|
3045
|
-
} catch (
|
|
3046
|
-
X.danger(r(
|
|
3072
|
+
p.value = await g.runs({ page: R?.page ?? 1, per_page: R?.perPage ?? 20 });
|
|
3073
|
+
} catch (D) {
|
|
3074
|
+
X.danger(r(D));
|
|
3047
3075
|
} finally {
|
|
3048
3076
|
h.value = !1;
|
|
3049
3077
|
}
|
|
3050
3078
|
}
|
|
3051
3079
|
async function Y() {
|
|
3052
|
-
const R =
|
|
3053
|
-
if (
|
|
3054
|
-
|
|
3080
|
+
const R = _.value;
|
|
3081
|
+
if (c.value = null, w.value = [], !!R) {
|
|
3082
|
+
z.value = !0;
|
|
3055
3083
|
try {
|
|
3056
|
-
|
|
3057
|
-
} catch (
|
|
3058
|
-
X.danger(r(
|
|
3084
|
+
c.value = await g.compare(R.to, R.from);
|
|
3085
|
+
} catch (D) {
|
|
3086
|
+
X.danger(r(D));
|
|
3059
3087
|
} finally {
|
|
3060
|
-
|
|
3088
|
+
z.value = !1;
|
|
3061
3089
|
}
|
|
3062
3090
|
}
|
|
3063
3091
|
}
|
|
3064
3092
|
return ve(() => {
|
|
3065
3093
|
const R = Number(o.query.to);
|
|
3066
|
-
Number.isInteger(R) && R > 0 && (
|
|
3067
|
-
}), de(
|
|
3068
|
-
R.length > 2 ?
|
|
3069
|
-
}), (R,
|
|
3094
|
+
Number.isInteger(R) && R > 0 && (b.value = [R]);
|
|
3095
|
+
}), de(b, (R) => {
|
|
3096
|
+
R.length > 2 ? b.value = R.slice(-2) : Y();
|
|
3097
|
+
}), (R, D) => (t(), u(me, {
|
|
3070
3098
|
base: v.base,
|
|
3071
3099
|
current: "runs",
|
|
3072
3100
|
card: !1
|
|
3073
3101
|
}, {
|
|
3074
3102
|
default: a(() => [
|
|
3075
|
-
I("div",
|
|
3076
|
-
|
|
3103
|
+
I("div", La, [
|
|
3104
|
+
d(e(ce), null, {
|
|
3077
3105
|
default: a(() => [
|
|
3078
|
-
|
|
3079
|
-
selected:
|
|
3080
|
-
"onUpdate:selected":
|
|
3081
|
-
data:
|
|
3106
|
+
d(e(he), {
|
|
3107
|
+
selected: b.value,
|
|
3108
|
+
"onUpdate:selected": D[0] || (D[0] = (U) => b.value = U),
|
|
3109
|
+
data: p.value,
|
|
3082
3110
|
columns: i.value,
|
|
3083
3111
|
"row-key": "id",
|
|
3084
3112
|
selectable: "",
|
|
@@ -3086,10 +3114,10 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3086
3114
|
flush: "",
|
|
3087
3115
|
loading: h.value,
|
|
3088
3116
|
"empty-text": e(l)("page.runs-empty"),
|
|
3089
|
-
onStateChange:
|
|
3117
|
+
onStateChange: G
|
|
3090
3118
|
}, {
|
|
3091
3119
|
"cell-created_at": a(({ row: U }) => [
|
|
3092
|
-
|
|
3120
|
+
d(e(ke), {
|
|
3093
3121
|
value: U.created_at
|
|
3094
3122
|
}, null, 8, ["value"])
|
|
3095
3123
|
]),
|
|
@@ -3097,8 +3125,8 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3097
3125
|
n(s(e(l)(`page.scope-${U.scope}`)), 1)
|
|
3098
3126
|
]),
|
|
3099
3127
|
"cell-status": a(({ row: U }) => [
|
|
3100
|
-
|
|
3101
|
-
type:
|
|
3128
|
+
d(e(B), {
|
|
3129
|
+
type: A[U.status],
|
|
3102
3130
|
dot: ""
|
|
3103
3131
|
}, {
|
|
3104
3132
|
default: a(() => [
|
|
@@ -3111,72 +3139,72 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3111
3139
|
n(s(U.counts ? `${U.counts.health}%` : ""), 1)
|
|
3112
3140
|
]),
|
|
3113
3141
|
"cell-severity": a(({ row: U }) => [
|
|
3114
|
-
U.counts ? (t(),
|
|
3115
|
-
(t(),
|
|
3142
|
+
U.counts ? (t(), y("span", qa, [
|
|
3143
|
+
(t(), y(L, null, M(O, (W, F) => (t(), y(L, { key: F }, [
|
|
3116
3144
|
U.counts.severity[F] ? (t(), u(e(B), {
|
|
3117
3145
|
key: 0,
|
|
3118
|
-
type:
|
|
3146
|
+
type: W,
|
|
3119
3147
|
size: "sm"
|
|
3120
3148
|
}, {
|
|
3121
3149
|
default: a(() => [
|
|
3122
3150
|
n(s(U.counts.severity[F]), 1)
|
|
3123
3151
|
]),
|
|
3124
3152
|
_: 2
|
|
3125
|
-
}, 1032, ["type"])) :
|
|
3153
|
+
}, 1032, ["type"])) : S("", !0)
|
|
3126
3154
|
], 64))), 64))
|
|
3127
|
-
])) :
|
|
3155
|
+
])) : S("", !0)
|
|
3128
3156
|
]),
|
|
3129
3157
|
"cell-started_by": a(({ row: U }) => [
|
|
3130
|
-
n(s(
|
|
3158
|
+
n(s(k(U)), 1)
|
|
3131
3159
|
]),
|
|
3132
3160
|
_: 1
|
|
3133
3161
|
}, 8, ["selected", "data", "columns", "selectable-if", "loading", "empty-text"])
|
|
3134
3162
|
]),
|
|
3135
3163
|
_: 1
|
|
3136
3164
|
}),
|
|
3137
|
-
|
|
3165
|
+
_.value ? (t(), u(e(ce), {
|
|
3138
3166
|
key: 1,
|
|
3139
3167
|
title: e(l)("page.compare")
|
|
3140
3168
|
}, {
|
|
3141
3169
|
default: a(() => [
|
|
3142
|
-
|
|
3170
|
+
c.value ? (t(), u(e(P), {
|
|
3143
3171
|
key: 0,
|
|
3144
3172
|
size: "sm",
|
|
3145
3173
|
tone: "muted",
|
|
3146
3174
|
class: "wx-audit-runs__pair"
|
|
3147
3175
|
}, {
|
|
3148
3176
|
default: a(() => [
|
|
3149
|
-
n(s(e(l)("page.compare-from")) + " #" + s(
|
|
3150
|
-
|
|
3151
|
-
value:
|
|
3177
|
+
n(s(e(l)("page.compare-from")) + " #" + s(c.value.from.id) + " · ", 1),
|
|
3178
|
+
d(e(ke), {
|
|
3179
|
+
value: c.value.from.created_at
|
|
3152
3180
|
}, null, 8, ["value"]),
|
|
3153
|
-
n(" → " + s(e(l)("page.compare-to")) + " #" + s(
|
|
3154
|
-
|
|
3155
|
-
value:
|
|
3181
|
+
n(" → " + s(e(l)("page.compare-to")) + " #" + s(c.value.to.id) + " · ", 1),
|
|
3182
|
+
d(e(ke), {
|
|
3183
|
+
value: c.value.to.created_at
|
|
3156
3184
|
}, null, 8, ["value"])
|
|
3157
3185
|
]),
|
|
3158
3186
|
_: 1
|
|
3159
|
-
})) :
|
|
3160
|
-
|
|
3187
|
+
})) : S("", !0),
|
|
3188
|
+
T.value ? (t(), u(e(_e), {
|
|
3161
3189
|
key: 1,
|
|
3162
3190
|
type: "info",
|
|
3163
3191
|
description: e(l)("page.compare-scopes"),
|
|
3164
3192
|
class: "wx-audit-runs__note"
|
|
3165
|
-
}, null, 8, ["description"])) :
|
|
3166
|
-
|
|
3167
|
-
expanded:
|
|
3168
|
-
"onUpdate:expanded":
|
|
3169
|
-
data:
|
|
3193
|
+
}, null, 8, ["description"])) : S("", !0),
|
|
3194
|
+
d(e(he), {
|
|
3195
|
+
expanded: w.value,
|
|
3196
|
+
"onUpdate:expanded": D[1] || (D[1] = (U) => w.value = U),
|
|
3197
|
+
data: c.value?.checks ?? [],
|
|
3170
3198
|
columns: N.value,
|
|
3171
3199
|
"row-key": "check",
|
|
3172
3200
|
expandable: "",
|
|
3173
3201
|
flush: "",
|
|
3174
3202
|
pagination: !1,
|
|
3175
|
-
loading:
|
|
3203
|
+
loading: z.value,
|
|
3176
3204
|
"empty-text": e(l)("page.compare-none")
|
|
3177
3205
|
}, {
|
|
3178
3206
|
"cell-severity": a(({ row: U }) => [
|
|
3179
|
-
|
|
3207
|
+
d(e(B), {
|
|
3180
3208
|
type: O[U.severity],
|
|
3181
3209
|
dot: ""
|
|
3182
3210
|
}, {
|
|
@@ -3187,7 +3215,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3187
3215
|
}, 1032, ["type"])
|
|
3188
3216
|
]),
|
|
3189
3217
|
"cell-new": a(({ row: U }) => [
|
|
3190
|
-
|
|
3218
|
+
d(e(P), {
|
|
3191
3219
|
tone: U.new ? "danger" : "muted",
|
|
3192
3220
|
size: "sm"
|
|
3193
3221
|
}, {
|
|
@@ -3198,7 +3226,7 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3198
3226
|
}, 1032, ["tone"])
|
|
3199
3227
|
]),
|
|
3200
3228
|
"cell-fixed": a(({ row: U }) => [
|
|
3201
|
-
|
|
3229
|
+
d(e(P), {
|
|
3202
3230
|
tone: U.fixed ? "success" : "muted",
|
|
3203
3231
|
size: "sm"
|
|
3204
3232
|
}, {
|
|
@@ -3209,12 +3237,12 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3209
3237
|
}, 1032, ["tone"])
|
|
3210
3238
|
]),
|
|
3211
3239
|
expanded: a(({ row: U }) => [
|
|
3212
|
-
|
|
3240
|
+
c.value ? (t(), u(Fa, {
|
|
3213
3241
|
key: 0,
|
|
3214
|
-
from:
|
|
3215
|
-
to:
|
|
3242
|
+
from: c.value.from.id,
|
|
3243
|
+
to: c.value.to.id,
|
|
3216
3244
|
row: U
|
|
3217
|
-
}, null, 8, ["from", "to", "row"])) :
|
|
3245
|
+
}, null, 8, ["from", "to", "row"])) : S("", !0)
|
|
3218
3246
|
]),
|
|
3219
3247
|
_: 1
|
|
3220
3248
|
}, 8, ["expanded", "data", "columns", "loading", "empty-text"])
|
|
@@ -3235,59 +3263,59 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3235
3263
|
_: 1
|
|
3236
3264
|
}, 8, ["base"]));
|
|
3237
3265
|
}
|
|
3238
|
-
}),
|
|
3266
|
+
}), Ea = /* @__PURE__ */ ie(Da, [["__scopeId", "data-v-abbed1f9"]]), Ba = { class: "wx-audit-settings" }, Ha = /* @__PURE__ */ se({
|
|
3239
3267
|
__name: "AuditSettingsPage",
|
|
3240
3268
|
props: {
|
|
3241
3269
|
base: {}
|
|
3242
3270
|
},
|
|
3243
|
-
setup(
|
|
3244
|
-
const v =
|
|
3271
|
+
setup(f) {
|
|
3272
|
+
const v = f, g = le(), o = re(g);
|
|
3245
3273
|
ne();
|
|
3246
|
-
const l = ee("webx-audit"), r = oe(),
|
|
3274
|
+
const l = ee("webx-audit"), r = oe(), p = C({}), h = C({}), b = C(!0), c = C(!1), z = g.can("audit.manage");
|
|
3247
3275
|
ve(async () => {
|
|
3248
3276
|
try {
|
|
3249
|
-
|
|
3250
|
-
} catch (
|
|
3251
|
-
X.danger(r(
|
|
3277
|
+
p.value = await o.settings();
|
|
3278
|
+
} catch (A) {
|
|
3279
|
+
X.danger(r(A));
|
|
3252
3280
|
} finally {
|
|
3253
|
-
|
|
3281
|
+
b.value = !1;
|
|
3254
3282
|
}
|
|
3255
3283
|
});
|
|
3256
|
-
async function
|
|
3257
|
-
|
|
3284
|
+
async function w() {
|
|
3285
|
+
c.value = !0, h.value = {};
|
|
3258
3286
|
try {
|
|
3259
|
-
|
|
3260
|
-
} catch (
|
|
3261
|
-
const O =
|
|
3262
|
-
O?.errors && (h.value = O.errors), X.danger(r(
|
|
3287
|
+
p.value = await o.saveSettings(p.value), X.success(l("page.saved"));
|
|
3288
|
+
} catch (A) {
|
|
3289
|
+
const O = A.body;
|
|
3290
|
+
O?.errors && (h.value = O.errors), X.danger(r(A));
|
|
3263
3291
|
} finally {
|
|
3264
|
-
|
|
3292
|
+
c.value = !1;
|
|
3265
3293
|
}
|
|
3266
3294
|
}
|
|
3267
|
-
return (
|
|
3295
|
+
return (A, O) => (t(), u(me, {
|
|
3268
3296
|
base: v.base,
|
|
3269
3297
|
current: "settings",
|
|
3270
3298
|
card: !1
|
|
3271
3299
|
}, {
|
|
3272
3300
|
default: a(() => [
|
|
3273
|
-
I("div",
|
|
3274
|
-
|
|
3301
|
+
I("div", Ba, [
|
|
3302
|
+
b.value ? (t(), u(e(fe), {
|
|
3275
3303
|
key: 0,
|
|
3276
3304
|
rows: 6
|
|
3277
3305
|
})) : (t(), u(e(st), {
|
|
3278
3306
|
key: 1,
|
|
3279
|
-
modelValue:
|
|
3280
|
-
"onUpdate:modelValue": O[0] || (O[0] = (i) =>
|
|
3307
|
+
modelValue: p.value,
|
|
3308
|
+
"onUpdate:modelValue": O[0] || (O[0] = (i) => p.value = i),
|
|
3281
3309
|
name: "audit.settings",
|
|
3282
3310
|
errors: h.value,
|
|
3283
|
-
disabled: !e(
|
|
3311
|
+
disabled: !e(z)
|
|
3284
3312
|
}, null, 8, ["modelValue", "errors", "disabled"])),
|
|
3285
|
-
e(
|
|
3313
|
+
e(z) && !b.value ? (t(), u(e(dt), { key: 2 }, {
|
|
3286
3314
|
default: a(() => [
|
|
3287
|
-
|
|
3315
|
+
d(e(K), {
|
|
3288
3316
|
type: "primary",
|
|
3289
|
-
loading:
|
|
3290
|
-
onClick:
|
|
3317
|
+
loading: c.value,
|
|
3318
|
+
onClick: w
|
|
3291
3319
|
}, {
|
|
3292
3320
|
default: a(() => [
|
|
3293
3321
|
n(s(e(l)("page.save")), 1)
|
|
@@ -3296,48 +3324,48 @@ const ua = { class: "wx-audit-card__title" }, oa = { class: "wx-audit-card__url"
|
|
|
3296
3324
|
}, 8, ["loading"])
|
|
3297
3325
|
]),
|
|
3298
3326
|
_: 1
|
|
3299
|
-
})) :
|
|
3327
|
+
})) : S("", !0)
|
|
3300
3328
|
])
|
|
3301
3329
|
]),
|
|
3302
3330
|
_: 1
|
|
3303
3331
|
}, 8, ["base"]));
|
|
3304
3332
|
}
|
|
3305
|
-
}),
|
|
3306
|
-
function
|
|
3307
|
-
const v =
|
|
3333
|
+
}), Ma = /* @__PURE__ */ ie(Ha, [["__scopeId", "data-v-4b3f5a3f"]]);
|
|
3334
|
+
function Xa(f = {}) {
|
|
3335
|
+
const v = f.path ?? "/audit", g = { base: v };
|
|
3308
3336
|
return {
|
|
3309
3337
|
id: "audit",
|
|
3310
3338
|
path: v,
|
|
3311
3339
|
routes: [
|
|
3312
|
-
{ path: v, name: "webx.audit", component:
|
|
3313
|
-
{ path: `${v}/issues`, name: "webx.audit.issues", component: Ht, props:
|
|
3314
|
-
{ path: `${v}/pages`, name: "webx.audit.pages", component:
|
|
3315
|
-
{ path: `${v}/hosts`, name: "webx.audit.hosts", component: yt, props:
|
|
3316
|
-
{ path: `${v}/runs`, name: "webx.audit.runs", component:
|
|
3340
|
+
{ path: v, name: "webx.audit", component: ua, props: g },
|
|
3341
|
+
{ path: `${v}/issues`, name: "webx.audit.issues", component: Ht, props: g },
|
|
3342
|
+
{ path: `${v}/pages`, name: "webx.audit.pages", component: Ta, props: g },
|
|
3343
|
+
{ path: `${v}/hosts`, name: "webx.audit.hosts", component: yt, props: g },
|
|
3344
|
+
{ path: `${v}/runs`, name: "webx.audit.runs", component: Ea, props: g },
|
|
3317
3345
|
{
|
|
3318
3346
|
path: `${v}/settings`,
|
|
3319
3347
|
name: "webx.audit.settings",
|
|
3320
|
-
component:
|
|
3321
|
-
props:
|
|
3348
|
+
component: Ma,
|
|
3349
|
+
props: g
|
|
3322
3350
|
}
|
|
3323
3351
|
]
|
|
3324
3352
|
};
|
|
3325
3353
|
}
|
|
3326
3354
|
export {
|
|
3327
|
-
|
|
3355
|
+
Oa as DEFAULT_COLUMNS,
|
|
3328
3356
|
ae as PAGE_FIELDS,
|
|
3329
3357
|
je as WxAuditDetails,
|
|
3330
|
-
|
|
3358
|
+
Tt as WxAuditHideDialog,
|
|
3331
3359
|
yt as WxAuditHostsPage,
|
|
3332
3360
|
Ht as WxAuditIssuesPage,
|
|
3333
|
-
|
|
3334
|
-
|
|
3335
|
-
|
|
3336
|
-
|
|
3337
|
-
|
|
3338
|
-
|
|
3361
|
+
ua as WxAuditOverviewPage,
|
|
3362
|
+
Ia as WxAuditPageCard,
|
|
3363
|
+
Ta as WxAuditPagesPage,
|
|
3364
|
+
Ea as WxAuditRunsPage,
|
|
3365
|
+
Ma as WxAuditSettingsPage,
|
|
3366
|
+
Xa as audit,
|
|
3339
3367
|
ct as auditMessages,
|
|
3340
3368
|
re as createAuditApi,
|
|
3341
|
-
|
|
3369
|
+
qe as pageParams
|
|
3342
3370
|
};
|
|
3343
3371
|
//# sourceMappingURL=index.js.map
|