@akiraka/quark-big-screen-ui 0.1.11 → 0.1.12
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/components/BigScreenExternalEmbed.vue.d.ts +10 -0
- package/dist/components/BigScreenExternalEmbed.vue.d.ts.map +1 -0
- package/dist/index.css +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +155 -127
- package/dist/index.umd.cjs +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
url?: string;
|
|
3
|
+
title?: string;
|
|
4
|
+
};
|
|
5
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
6
|
+
title: string;
|
|
7
|
+
url: string;
|
|
8
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
9
|
+
export default _default;
|
|
10
|
+
//# sourceMappingURL=BigScreenExternalEmbed.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BigScreenExternalEmbed.vue.d.ts","sourceRoot":"","sources":["../../src/components/BigScreenExternalEmbed.vue"],"names":[],"mappings":"AAUA,KAAK,WAAW,GAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;;WAAT,MAAM;SAAtB,MAAM;;AA0DjC,wBAOG"}
|
package/dist/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--qbs-surface-top: rgba(13, 24, 39, .92);--qbs-surface-bottom: rgba(8, 16, 28, .96);--qbs-border: rgba(142, 161, 178, .2);--qbs-text: #f6f8fb;--qbs-muted: #9fb2c7;--qbs-radius: 20px;--qbs-shadow: 0 18px 48px rgba(4, 10, 18, .28)}.qbs-panel[data-v-749400b6]{position:relative;display:flex;height:100%;min-height:0;flex-direction:column;border:1px solid oklch(.6 .12 220 / .28);border-radius:10px;background:linear-gradient(160deg,#091b318c,#050f2066);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#c8e4e9}.qbs-panel--overflow-hidden[data-v-749400b6]{overflow:hidden}.qbs-panel--padding-md[data-v-749400b6]{padding:14px 16px}.qbs-panel--padding-compact[data-v-749400b6]{padding:10px 12px}.qbs-panel--padding-tight[data-v-749400b6]{padding:12px 8px}.qbs-panel__corner[data-v-749400b6]{position:absolute;width:12px;height:12px;border:2px solid var(--qbs-accent);pointer-events:none}.qbs-panel__corner--tl[data-v-749400b6]{top:-1px;left:-1px;border-right:0;border-bottom:0}.qbs-panel__corner--tr[data-v-749400b6]{top:-1px;right:-1px;border-left:0;border-bottom:0}.qbs-panel__corner--bl[data-v-749400b6]{bottom:-1px;left:-1px;border-right:0;border-top:0}.qbs-panel__corner--br[data-v-749400b6]{right:-1px;bottom:-1px;border-left:0;border-top:0}.qbs-panel__header[data-v-749400b6]{display:flex;align-items:center;gap:8px;margin:0 0 10px;min-width:0;font-weight:700;letter-spacing:1px}.qbs-panel__header--md[data-v-749400b6]{font-size:14px}.qbs-panel__header--sm[data-v-749400b6]{margin-bottom:8px;font-size:13px}.qbs-panel__bar[data-v-749400b6]{width:4px;height:14px;flex-shrink:0;border-radius:2px;background:var(--qbs-accent);box-shadow:0 0 8px var(--qbs-accent)}.qbs-panel__title[data-v-749400b6]{flex-shrink:0}.qbs-panel__header-prefix[data-v-749400b6]{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.qbs-panel__header-center[data-v-749400b6]{display:inline-flex;flex:1;min-width:0;justify-content:center}.qbs-panel__header-extra[data-v-749400b6]{display:inline-flex;align-items:center;justify-content:flex-end;flex-shrink:0;margin-left:auto}.qbs-panel__live[data-v-749400b6]{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:1px;color:#ff5050;color:oklch(.68 .22 25)}.qbs-panel__live-dot[data-v-749400b6]{width:7px;height:7px;border-radius:50%;background:#ff5050;background:oklch(.68 .22 25);box-shadow:0 0 8px #ff5050;box-shadow:0 0 8px oklch(.68 .22 25);animation:qbs-panel-blink-749400b6 1s steps(1,end) infinite}.qbs-panel__body[data-v-749400b6]{display:flex;flex:1;min-height:0;flex-direction:column}.qbs-panel--layout-metric .qbs-panel__body[data-v-749400b6]{align-items:center;justify-content:center;gap:4px;text-align:center}@keyframes qbs-panel-blink-749400b6{50%{opacity:.25}}.qbs-duty-compact[data-v-f5721bce]{display:flex;align-items:center;gap:12px}.qbs-duty-compact__avatar[data-v-f5721bce]{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:10px;background:#34dde5;box-shadow:0 0 14px #34dde599;color:#050e1a;font-size:18px;font-weight:700}.qbs-duty-compact__info[data-v-f5721bce]{display:flex;flex-direction:column}.qbs-duty-compact__name[data-v-f5721bce]{color:#cfebf0;font-size:15px;font-weight:700}.qbs-duty-compact__phone[data-v-f5721bce]{color:#7d939e;font-family:var(--font-mono,monospace);font-size:12px}.qbs-duty-compact__tag[data-v-f5721bce]{margin-left:auto;padding:4px 10px;border:1px solid oklch(.82 .13 200 / .4);border-radius:20px;background:#34dde51a;color:#34dde5;font-size:11px}.qbs-duty[data-v-f5721bce]{display:flex;height:100%;min-height:0;flex-direction:column;gap:14px}.qbs-duty__summary[data-v-f5721bce]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.qbs-duty__summary-chip[data-v-f5721bce]{padding:10px 12px;border:1px solid rgba(157,176,198,.12);border-radius:14px;background:#0f1927bd}.qbs-duty__summary-chip span[data-v-f5721bce]{display:block;margin-bottom:6px;color:#8ca0b4;font-size:11px}.qbs-duty__summary-chip strong[data-v-f5721bce]{color:#f5f8fc;font-size:15px;line-height:1.2}.qbs-duty__list[data-v-f5721bce]{display:grid;min-height:0;gap:10px;overflow:auto}.qbs-duty__group[data-v-f5721bce]{padding:12px;border:1px solid rgba(157,176,198,.1);border-radius:16px;background:#0d1723c2}.qbs-duty__group-header[data-v-f5721bce]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:#edf3f9;font-size:13px}.qbs-duty__group-header span[data-v-f5721bce]{color:#8ca0b4}.qbs-duty__users[data-v-f5721bce]{display:flex;flex-wrap:wrap;gap:8px}.qbs-duty__user[data-v-f5721bce]{padding:5px 10px;border-radius:999px;background:#19293ed1;color:#bfd0e0;font-size:12px}.qbs-duty__empty[data-v-f5721bce]{display:grid;min-height:140px;place-items:center;border:1px dashed rgba(157,176,198,.14);border-radius:16px;background:#0c162280;color:#7d91a6;font-size:13px}.qbs-alert-row[data-v-83959767]{display:block;box-sizing:border-box;width:100%;margin:0;padding:8px 10px;border:0;border-left:3px solid var(--qbs-alert-accent);border-radius:6px;background:#1c293d66;color:inherit;text-align:left;cursor:pointer}.qbs-alert-row--detail-wide[data-v-83959767]{padding-top:10px;padding-bottom:10px}.qbs-alert-row__main[data-v-83959767]{display:flex;align-items:stretch;gap:12px}.qbs-alert-row__copy[data-v-83959767]{flex:0 0 40%;min-width:0}.qbs-alert-row--detail-wide .qbs-alert-row__copy[data-v-83959767]{flex-basis:36%}.qbs-alert-row__title[data-v-83959767]{overflow:hidden;margin-bottom:5px;color:#d0e2e6;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.qbs-alert-row__meta[data-v-83959767]{display:flex;align-items:center;gap:10px;min-width:0;color:#6e848f;font-size:11px}.qbs-alert-row__group[data-v-83959767]{overflow:hidden;max-width:110px;min-width:0;text-overflow:ellipsis;white-space:nowrap}.qbs-alert-row__owner[data-v-83959767]{color:#64b3c0}.qbs-alert-row__time[data-v-83959767]{font-family:var(--font-mono,monospace)}.qbs-alert-row__tag[data-v-83959767]{margin-left:auto;padding:1px 6px;border:1px solid oklch(.68 .22 25 / .5);border-radius:4px;color:#ff5050;color:oklch(.68 .22 25);font-size:10px}.qbs-alert-row__status[data-v-83959767]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;color:#869ca7;font-size:10px}.qbs-alert-row__aside[data-v-83959767]{flex:1 1 60%;width:60%;align-self:center}.qbs-alert-row--detail-wide .qbs-alert-row__aside[data-v-83959767]{flex-basis:64%;width:64%}.qbs-metric-card--compact[data-v-07353599]{display:flex;min-width:0;flex-direction:column;padding:10px 12px;border:1px solid rgba(157,176,198,.12);border-radius:14px;background:#101a28c7}.qbs-metric-card--compact span[data-v-07353599]{margin-bottom:6px;color:#899eb1;font-size:11px}.qbs-metric-card--compact strong[data-v-07353599]{color:var(--qbs-metric-tone);font-size:18px;line-height:1.2}.qbs-metric-card__value[data-v-07353599]{color:var(--qbs-metric-tone);font-size:28px;font-weight:700;line-height:1}.qbs-metric-card__label[data-v-07353599]{color:#869ca7;font-size:11px;letter-spacing:1px;text-align:center}.qbs-header[data-v-cc041333]{position:relative;height:100%;min-height:0;overflow:hidden;border:1px solid rgba(149,169,189,.24);border-radius:24px;background:linear-gradient(90deg,#07111df0,#0a1825e6 44%,#080f19f2);box-shadow:inset 0 1px #ffffff0f,0 18px 42px #050b1438}.qbs-header__glow[data-v-cc041333]{position:absolute;bottom:-40%;left:-8%;width:42%;height:160%;background:radial-gradient(circle,rgba(98,140,182,.22),transparent 72%)}.qbs-header__body[data-v-cc041333]{position:relative;display:flex;height:100%;align-items:center;justify-content:space-between;gap:20px;padding:0 28px}.qbs-header__brand[data-v-cc041333]{display:flex;min-width:0;align-items:center;gap:16px}.qbs-header__crest[data-v-cc041333]{display:grid;width:42px;height:42px;flex:none;place-items:center;border:1px solid rgba(154,188,222,.26);border-radius:14px;background:linear-gradient(180deg,#172f4ad6,#091422f5)}.qbs-header__crest b[data-v-cc041333]{width:18px;height:18px;border-radius:6px;background:linear-gradient(180deg,#b7d3ef,#6f9cc7);box-shadow:0 0 20px #7ba3c947}.qbs-header p[data-v-cc041333]{margin:0 0 4px;color:#8da4bb;font-size:11px;letter-spacing:.28em}.qbs-header h1[data-v-cc041333]{margin:0;color:#f3f8fd;font-size:clamp(28px,2.2vw,42px);letter-spacing:.06em;line-height:1}.qbs-header__clock[data-v-cc041333]{display:grid;flex:none;justify-items:end;gap:4px}.qbs-header__clock strong[data-v-cc041333]{color:#f4f8fd;font-size:clamp(24px,1.8vw,34px);line-height:1}.qbs-header__clock span[data-v-cc041333]{color:#8ea5bb;font-size:12px;letter-spacing:.08em}.qbs-build-dist[data-v-608b33d9]{display:flex;height:100%;min-height:0;flex-direction:column;gap:12px}.qbs-build-dist article[data-v-608b33d9]{padding:12px;border:1px solid rgba(157,176,198,.1);border-radius:14px;background:#0e1723c2}.qbs-build-dist article>div[data-v-608b33d9]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.qbs-build-dist strong[data-v-608b33d9]{color:#eef4fb;font-size:13px}.qbs-build-dist span[data-v-608b33d9]{color:#9cb0c3;font-size:12px}.qbs-build-dist i[data-v-608b33d9]{display:block;height:8px;overflow:hidden;border-radius:999px;background:#ffffff12}.qbs-build-dist b[data-v-608b33d9]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#617f9b,#9cb7d0)}.qbs-build-dist__empty[data-v-608b33d9]{display:grid;flex:1;place-items:center;border:1px dashed rgba(157,176,198,.14);border-radius:16px;background:#0c162280;color:#7d91a6;font-size:13px}.qbs-build-projects[data-v-6c6f003c]{display:flex;height:100%;min-height:0;flex-direction:column;gap:14px}.qbs-build-projects__summary[data-v-6c6f003c]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.qbs-build-projects__summary>span[data-v-6c6f003c]{padding:10px 12px;border:1px solid rgba(157,176,198,.12);border-radius:14px;background:#101a28c7;color:#899eb1;font-size:11px}.qbs-build-projects__summary strong[data-v-6c6f003c]{display:block;margin-top:6px;color:#f8fbff;font-size:20px}.qbs-build-projects__list[data-v-6c6f003c]{display:grid;min-height:0;gap:10px;overflow:auto}.qbs-build-projects article[data-v-6c6f003c]{padding:12px;border:1px solid rgba(157,176,198,.1);border-radius:14px;background:#0e1723c2}.qbs-build-projects article>div[data-v-6c6f003c],.qbs-build-projects p[data-v-6c6f003c]{display:flex;align-items:center;justify-content:space-between;gap:12px}.qbs-build-projects strong[data-v-6c6f003c]{color:#eef4fb;font-size:13px}.qbs-build-projects article span[data-v-6c6f003c]{color:#859aaf;font-size:11px}.qbs-build-projects p[data-v-6c6f003c]{margin:6px 0 10px}.qbs-build-projects i[data-v-6c6f003c]{display:block;height:6px;overflow:hidden;border-radius:999px;background:#ffffff12}.qbs-build-projects b[data-v-6c6f003c]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6d95b7,#91b5d5)}.qbs-build-projects__empty[data-v-6c6f003c]{display:grid;min-height:140px;place-items:center;border:1px dashed rgba(157,176,198,.14);border-radius:16px;background:#0c162280;color:#7d91a6;font-size:13px}.qbs-robot[data-v-534c73e7]{display:flex;height:100%;min-height:0;flex-direction:column;gap:16px}.qbs-robot__head[data-v-534c73e7]{display:flex;align-items:center;gap:14px}.qbs-robot__head i[data-v-534c73e7]{width:48px;height:48px;border-radius:50%;background:radial-gradient(circle,#b7d3ef 0,#b7d3ef 15%,#315878 20%,#102337 66%);box-shadow:0 0 24px #6fa6cf}.qbs-robot__head strong[data-v-534c73e7],.qbs-robot__head span[data-v-534c73e7]{display:block}.qbs-robot__head strong[data-v-534c73e7]{color:#f4f8fd}.qbs-robot__head span[data-v-534c73e7]{margin-top:5px;color:#8da4bb;font-size:11px}.qbs-robot__metrics[data-v-534c73e7]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.qbs-robot__metrics span[data-v-534c73e7]{padding:10px;border:1px solid rgba(157,176,198,.12);border-radius:12px;background:#0f1927bd;color:#8ca0b4;font-size:11px}.qbs-robot__metrics b[data-v-534c73e7]{display:block;margin-top:5px;color:#f5f8fc;font-size:18px}.qbs-endpoints[data-v-9abd8314]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:auto}.qbs-endpoints article[data-v-9abd8314]{padding:12px;border:1px solid rgba(157,176,198,.1);border-radius:14px;background:#0e1723c2}.qbs-endpoints article>div[data-v-9abd8314]{display:flex;justify-content:space-between;gap:8px}.qbs-endpoints strong[data-v-9abd8314]{color:#eef4fb;font-size:13px}.qbs-endpoints span[data-v-9abd8314]{color:#78d6ae;font-size:11px}.qbs-endpoints span.offline[data-v-9abd8314]{color:#ef7777}.qbs-endpoints small[data-v-9abd8314],.qbs-endpoints p[data-v-9abd8314]{color:#8ca0b4;font-size:11px}.qbs-endpoints p[data-v-9abd8314]{margin:6px 0 0}.qbs-endpoints__empty[data-v-9abd8314]{display:grid;min-height:140px;place-items:center;color:#7d91a6}
|
|
1
|
+
:root{--qbs-surface-top: rgba(13, 24, 39, .92);--qbs-surface-bottom: rgba(8, 16, 28, .96);--qbs-border: rgba(142, 161, 178, .2);--qbs-text: #f6f8fb;--qbs-muted: #9fb2c7;--qbs-radius: 20px;--qbs-shadow: 0 18px 48px rgba(4, 10, 18, .28)}.qbs-panel[data-v-749400b6]{position:relative;display:flex;height:100%;min-height:0;flex-direction:column;border:1px solid oklch(.6 .12 220 / .28);border-radius:10px;background:linear-gradient(160deg,#091b318c,#050f2066);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#c8e4e9}.qbs-panel--overflow-hidden[data-v-749400b6]{overflow:hidden}.qbs-panel--padding-md[data-v-749400b6]{padding:14px 16px}.qbs-panel--padding-compact[data-v-749400b6]{padding:10px 12px}.qbs-panel--padding-tight[data-v-749400b6]{padding:12px 8px}.qbs-panel__corner[data-v-749400b6]{position:absolute;width:12px;height:12px;border:2px solid var(--qbs-accent);pointer-events:none}.qbs-panel__corner--tl[data-v-749400b6]{top:-1px;left:-1px;border-right:0;border-bottom:0}.qbs-panel__corner--tr[data-v-749400b6]{top:-1px;right:-1px;border-left:0;border-bottom:0}.qbs-panel__corner--bl[data-v-749400b6]{bottom:-1px;left:-1px;border-right:0;border-top:0}.qbs-panel__corner--br[data-v-749400b6]{right:-1px;bottom:-1px;border-left:0;border-top:0}.qbs-panel__header[data-v-749400b6]{display:flex;align-items:center;gap:8px;margin:0 0 10px;min-width:0;font-weight:700;letter-spacing:1px}.qbs-panel__header--md[data-v-749400b6]{font-size:14px}.qbs-panel__header--sm[data-v-749400b6]{margin-bottom:8px;font-size:13px}.qbs-panel__bar[data-v-749400b6]{width:4px;height:14px;flex-shrink:0;border-radius:2px;background:var(--qbs-accent);box-shadow:0 0 8px var(--qbs-accent)}.qbs-panel__title[data-v-749400b6]{flex-shrink:0}.qbs-panel__header-prefix[data-v-749400b6]{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.qbs-panel__header-center[data-v-749400b6]{display:inline-flex;flex:1;min-width:0;justify-content:center}.qbs-panel__header-extra[data-v-749400b6]{display:inline-flex;align-items:center;justify-content:flex-end;flex-shrink:0;margin-left:auto}.qbs-panel__live[data-v-749400b6]{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:1px;color:#ff5050;color:oklch(.68 .22 25)}.qbs-panel__live-dot[data-v-749400b6]{width:7px;height:7px;border-radius:50%;background:#ff5050;background:oklch(.68 .22 25);box-shadow:0 0 8px #ff5050;box-shadow:0 0 8px oklch(.68 .22 25);animation:qbs-panel-blink-749400b6 1s steps(1,end) infinite}.qbs-panel__body[data-v-749400b6]{display:flex;flex:1;min-height:0;flex-direction:column}.qbs-panel--layout-metric .qbs-panel__body[data-v-749400b6]{align-items:center;justify-content:center;gap:4px;text-align:center}@keyframes qbs-panel-blink-749400b6{50%{opacity:.25}}.qbs-duty-compact[data-v-f5721bce]{display:flex;align-items:center;gap:12px}.qbs-duty-compact__avatar[data-v-f5721bce]{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:10px;background:#34dde5;box-shadow:0 0 14px #34dde599;color:#050e1a;font-size:18px;font-weight:700}.qbs-duty-compact__info[data-v-f5721bce]{display:flex;flex-direction:column}.qbs-duty-compact__name[data-v-f5721bce]{color:#cfebf0;font-size:15px;font-weight:700}.qbs-duty-compact__phone[data-v-f5721bce]{color:#7d939e;font-family:var(--font-mono,monospace);font-size:12px}.qbs-duty-compact__tag[data-v-f5721bce]{margin-left:auto;padding:4px 10px;border:1px solid oklch(.82 .13 200 / .4);border-radius:20px;background:#34dde51a;color:#34dde5;font-size:11px}.qbs-duty[data-v-f5721bce]{display:flex;height:100%;min-height:0;flex-direction:column;gap:14px}.qbs-duty__summary[data-v-f5721bce]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.qbs-duty__summary-chip[data-v-f5721bce]{padding:10px 12px;border:1px solid rgba(157,176,198,.12);border-radius:14px;background:#0f1927bd}.qbs-duty__summary-chip span[data-v-f5721bce]{display:block;margin-bottom:6px;color:#8ca0b4;font-size:11px}.qbs-duty__summary-chip strong[data-v-f5721bce]{color:#f5f8fc;font-size:15px;line-height:1.2}.qbs-duty__list[data-v-f5721bce]{display:grid;min-height:0;gap:10px;overflow:auto}.qbs-duty__group[data-v-f5721bce]{padding:12px;border:1px solid rgba(157,176,198,.1);border-radius:16px;background:#0d1723c2}.qbs-duty__group-header[data-v-f5721bce]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:#edf3f9;font-size:13px}.qbs-duty__group-header span[data-v-f5721bce]{color:#8ca0b4}.qbs-duty__users[data-v-f5721bce]{display:flex;flex-wrap:wrap;gap:8px}.qbs-duty__user[data-v-f5721bce]{padding:5px 10px;border-radius:999px;background:#19293ed1;color:#bfd0e0;font-size:12px}.qbs-duty__empty[data-v-f5721bce]{display:grid;min-height:140px;place-items:center;border:1px dashed rgba(157,176,198,.14);border-radius:16px;background:#0c162280;color:#7d91a6;font-size:13px}.qbs-alert-row[data-v-83959767]{display:block;box-sizing:border-box;width:100%;margin:0;padding:8px 10px;border:0;border-left:3px solid var(--qbs-alert-accent);border-radius:6px;background:#1c293d66;color:inherit;text-align:left;cursor:pointer}.qbs-alert-row--detail-wide[data-v-83959767]{padding-top:10px;padding-bottom:10px}.qbs-alert-row__main[data-v-83959767]{display:flex;align-items:stretch;gap:12px}.qbs-alert-row__copy[data-v-83959767]{flex:0 0 40%;min-width:0}.qbs-alert-row--detail-wide .qbs-alert-row__copy[data-v-83959767]{flex-basis:36%}.qbs-alert-row__title[data-v-83959767]{overflow:hidden;margin-bottom:5px;color:#d0e2e6;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.qbs-alert-row__meta[data-v-83959767]{display:flex;align-items:center;gap:10px;min-width:0;color:#6e848f;font-size:11px}.qbs-alert-row__group[data-v-83959767]{overflow:hidden;max-width:110px;min-width:0;text-overflow:ellipsis;white-space:nowrap}.qbs-alert-row__owner[data-v-83959767]{color:#64b3c0}.qbs-alert-row__time[data-v-83959767]{font-family:var(--font-mono,monospace)}.qbs-alert-row__tag[data-v-83959767]{margin-left:auto;padding:1px 6px;border:1px solid oklch(.68 .22 25 / .5);border-radius:4px;color:#ff5050;color:oklch(.68 .22 25);font-size:10px}.qbs-alert-row__status[data-v-83959767]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;color:#869ca7;font-size:10px}.qbs-alert-row__aside[data-v-83959767]{flex:1 1 60%;width:60%;align-self:center}.qbs-alert-row--detail-wide .qbs-alert-row__aside[data-v-83959767]{flex-basis:64%;width:64%}.qbs-metric-card--compact[data-v-07353599]{display:flex;min-width:0;flex-direction:column;padding:10px 12px;border:1px solid rgba(157,176,198,.12);border-radius:14px;background:#101a28c7}.qbs-metric-card--compact span[data-v-07353599]{margin-bottom:6px;color:#899eb1;font-size:11px}.qbs-metric-card--compact strong[data-v-07353599]{color:var(--qbs-metric-tone);font-size:18px;line-height:1.2}.qbs-metric-card__value[data-v-07353599]{color:var(--qbs-metric-tone);font-size:28px;font-weight:700;line-height:1}.qbs-metric-card__label[data-v-07353599]{color:#869ca7;font-size:11px;letter-spacing:1px;text-align:center}.qbs-header[data-v-cc041333]{position:relative;height:100%;min-height:0;overflow:hidden;border:1px solid rgba(149,169,189,.24);border-radius:24px;background:linear-gradient(90deg,#07111df0,#0a1825e6 44%,#080f19f2);box-shadow:inset 0 1px #ffffff0f,0 18px 42px #050b1438}.qbs-header__glow[data-v-cc041333]{position:absolute;bottom:-40%;left:-8%;width:42%;height:160%;background:radial-gradient(circle,rgba(98,140,182,.22),transparent 72%)}.qbs-header__body[data-v-cc041333]{position:relative;display:flex;height:100%;align-items:center;justify-content:space-between;gap:20px;padding:0 28px}.qbs-header__brand[data-v-cc041333]{display:flex;min-width:0;align-items:center;gap:16px}.qbs-header__crest[data-v-cc041333]{display:grid;width:42px;height:42px;flex:none;place-items:center;border:1px solid rgba(154,188,222,.26);border-radius:14px;background:linear-gradient(180deg,#172f4ad6,#091422f5)}.qbs-header__crest b[data-v-cc041333]{width:18px;height:18px;border-radius:6px;background:linear-gradient(180deg,#b7d3ef,#6f9cc7);box-shadow:0 0 20px #7ba3c947}.qbs-header p[data-v-cc041333]{margin:0 0 4px;color:#8da4bb;font-size:11px;letter-spacing:.28em}.qbs-header h1[data-v-cc041333]{margin:0;color:#f3f8fd;font-size:clamp(28px,2.2vw,42px);letter-spacing:.06em;line-height:1}.qbs-header__clock[data-v-cc041333]{display:grid;flex:none;justify-items:end;gap:4px}.qbs-header__clock strong[data-v-cc041333]{color:#f4f8fd;font-size:clamp(24px,1.8vw,34px);line-height:1}.qbs-header__clock span[data-v-cc041333]{color:#8ea5bb;font-size:12px;letter-spacing:.08em}.qbs-build-dist[data-v-608b33d9]{display:flex;height:100%;min-height:0;flex-direction:column;gap:12px}.qbs-build-dist article[data-v-608b33d9]{padding:12px;border:1px solid rgba(157,176,198,.1);border-radius:14px;background:#0e1723c2}.qbs-build-dist article>div[data-v-608b33d9]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.qbs-build-dist strong[data-v-608b33d9]{color:#eef4fb;font-size:13px}.qbs-build-dist span[data-v-608b33d9]{color:#9cb0c3;font-size:12px}.qbs-build-dist i[data-v-608b33d9]{display:block;height:8px;overflow:hidden;border-radius:999px;background:#ffffff12}.qbs-build-dist b[data-v-608b33d9]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#617f9b,#9cb7d0)}.qbs-build-dist__empty[data-v-608b33d9]{display:grid;flex:1;place-items:center;border:1px dashed rgba(157,176,198,.14);border-radius:16px;background:#0c162280;color:#7d91a6;font-size:13px}.qbs-build-projects[data-v-6c6f003c]{display:flex;height:100%;min-height:0;flex-direction:column;gap:14px}.qbs-build-projects__summary[data-v-6c6f003c]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.qbs-build-projects__summary>span[data-v-6c6f003c]{padding:10px 12px;border:1px solid rgba(157,176,198,.12);border-radius:14px;background:#101a28c7;color:#899eb1;font-size:11px}.qbs-build-projects__summary strong[data-v-6c6f003c]{display:block;margin-top:6px;color:#f8fbff;font-size:20px}.qbs-build-projects__list[data-v-6c6f003c]{display:grid;min-height:0;gap:10px;overflow:auto}.qbs-build-projects article[data-v-6c6f003c]{padding:12px;border:1px solid rgba(157,176,198,.1);border-radius:14px;background:#0e1723c2}.qbs-build-projects article>div[data-v-6c6f003c],.qbs-build-projects p[data-v-6c6f003c]{display:flex;align-items:center;justify-content:space-between;gap:12px}.qbs-build-projects strong[data-v-6c6f003c]{color:#eef4fb;font-size:13px}.qbs-build-projects article span[data-v-6c6f003c]{color:#859aaf;font-size:11px}.qbs-build-projects p[data-v-6c6f003c]{margin:6px 0 10px}.qbs-build-projects i[data-v-6c6f003c]{display:block;height:6px;overflow:hidden;border-radius:999px;background:#ffffff12}.qbs-build-projects b[data-v-6c6f003c]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6d95b7,#91b5d5)}.qbs-build-projects__empty[data-v-6c6f003c]{display:grid;min-height:140px;place-items:center;border:1px dashed rgba(157,176,198,.14);border-radius:16px;background:#0c162280;color:#7d91a6;font-size:13px}.qbs-robot[data-v-534c73e7]{display:flex;height:100%;min-height:0;flex-direction:column;gap:16px}.qbs-robot__head[data-v-534c73e7]{display:flex;align-items:center;gap:14px}.qbs-robot__head i[data-v-534c73e7]{width:48px;height:48px;border-radius:50%;background:radial-gradient(circle,#b7d3ef 0,#b7d3ef 15%,#315878 20%,#102337 66%);box-shadow:0 0 24px #6fa6cf}.qbs-robot__head strong[data-v-534c73e7],.qbs-robot__head span[data-v-534c73e7]{display:block}.qbs-robot__head strong[data-v-534c73e7]{color:#f4f8fd}.qbs-robot__head span[data-v-534c73e7]{margin-top:5px;color:#8da4bb;font-size:11px}.qbs-robot__metrics[data-v-534c73e7]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.qbs-robot__metrics span[data-v-534c73e7]{padding:10px;border:1px solid rgba(157,176,198,.12);border-radius:12px;background:#0f1927bd;color:#8ca0b4;font-size:11px}.qbs-robot__metrics b[data-v-534c73e7]{display:block;margin-top:5px;color:#f5f8fc;font-size:18px}.qbs-endpoints[data-v-9abd8314]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:auto}.qbs-endpoints article[data-v-9abd8314]{padding:12px;border:1px solid rgba(157,176,198,.1);border-radius:14px;background:#0e1723c2}.qbs-endpoints article>div[data-v-9abd8314]{display:flex;justify-content:space-between;gap:8px}.qbs-endpoints strong[data-v-9abd8314]{color:#eef4fb;font-size:13px}.qbs-endpoints span[data-v-9abd8314]{color:#78d6ae;font-size:11px}.qbs-endpoints span.offline[data-v-9abd8314]{color:#ef7777}.qbs-endpoints small[data-v-9abd8314],.qbs-endpoints p[data-v-9abd8314]{color:#8ca0b4;font-size:11px}.qbs-endpoints p[data-v-9abd8314]{margin:6px 0 0}.qbs-endpoints__empty[data-v-9abd8314]{display:grid;min-height:140px;place-items:center;color:#7d91a6}.qbs-embed[data-v-f20c22f6]{width:100%;height:100%;overflow:hidden;border-radius:20px;background:#fff}.qbs-embed iframe[data-v-f20c22f6]{display:block;width:100%;height:100%;border:0;background:#fff}.qbs-embed div[data-v-f20c22f6]{display:grid;width:100%;height:100%;box-sizing:border-box;place-items:center;padding:20px;background:#101c2a;color:#9fb2c7;font-size:13px;text-align:center}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export { default as BigScreenBuildDistribution } from './components/BigScreenBui
|
|
|
7
7
|
export { default as BigScreenBuildProjects } from './components/BigScreenBuildProjects.vue';
|
|
8
8
|
export { default as BigScreenRobotSummary } from './components/BigScreenRobotSummary.vue';
|
|
9
9
|
export { default as BigScreenEndpointDistribution } from './components/BigScreenEndpointDistribution.vue';
|
|
10
|
+
export { default as BigScreenExternalEmbed } from './components/BigScreenExternalEmbed.vue';
|
|
10
11
|
export type { BigScreenDutyGroup, BigScreenDutyUser } from './components/BigScreenDutyContent.vue';
|
|
11
12
|
export { bigScreenPreviewFixtures, getBigScreenPreviewData } from './fixtures/big-screen';
|
|
12
13
|
export type { BigScreenPreviewWidgetType } from './fixtures/big-screen';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAA;AAE5B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAC3E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,uCAAuC,CAAA;AACvF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AACjF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;AACrF,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAC7E,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,6CAA6C,CAAA;AACnG,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;AAC3F,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,wCAAwC,CAAA;AACzF,OAAO,EAAE,OAAO,IAAI,6BAA6B,EAAE,MAAM,gDAAgD,CAAA;AACzG,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AAClG,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACzF,YAAY,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAA;AACvE,YAAY,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAA;AAE5B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAC3E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,uCAAuC,CAAA;AACvF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AACjF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;AACrF,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAC7E,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,6CAA6C,CAAA;AACnG,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;AAC3F,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,wCAAwC,CAAA;AACzF,OAAO,EAAE,OAAO,IAAI,6BAA6B,EAAE,MAAM,gDAAgD,CAAA;AACzG,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;AAC3F,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AAClG,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACzF,YAAY,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAA;AACvE,YAAY,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { defineComponent as _, openBlock as n, createElementBlock as
|
|
2
|
-
const
|
|
1
|
+
import { defineComponent as _, openBlock as n, createElementBlock as o, normalizeStyle as h, normalizeClass as f, createCommentVNode as u, toDisplayString as a, renderSlot as b, createElementVNode as e, createTextVNode as c, Fragment as y, renderList as g, createBlock as v, withCtx as q, computed as $ } from "vue";
|
|
2
|
+
const k = {
|
|
3
3
|
key: 0,
|
|
4
4
|
class: "qbs-panel__corner qbs-panel__corner--tl"
|
|
5
|
-
},
|
|
5
|
+
}, w = {
|
|
6
6
|
key: 1,
|
|
7
7
|
class: "qbs-panel__corner qbs-panel__corner--tr"
|
|
8
|
-
},
|
|
8
|
+
}, S = {
|
|
9
9
|
key: 2,
|
|
10
10
|
class: "qbs-panel__corner qbs-panel__corner--bl"
|
|
11
|
-
},
|
|
11
|
+
}, B = {
|
|
12
12
|
key: 3,
|
|
13
13
|
class: "qbs-panel__corner qbs-panel__corner--br"
|
|
14
|
-
},
|
|
14
|
+
}, I = {
|
|
15
15
|
key: 0,
|
|
16
16
|
class: "qbs-panel__bar"
|
|
17
|
-
},
|
|
17
|
+
}, x = {
|
|
18
18
|
key: 1,
|
|
19
19
|
class: "qbs-panel__title"
|
|
20
20
|
}, N = {
|
|
21
21
|
key: 2,
|
|
22
22
|
class: "qbs-panel__header-prefix"
|
|
23
|
-
},
|
|
23
|
+
}, T = {
|
|
24
24
|
key: 3,
|
|
25
25
|
class: "qbs-panel__header-center"
|
|
26
|
-
},
|
|
26
|
+
}, C = {
|
|
27
27
|
key: 4,
|
|
28
28
|
class: "qbs-panel__header-extra"
|
|
29
|
-
},
|
|
29
|
+
}, A = {
|
|
30
30
|
key: 0,
|
|
31
31
|
class: "qbs-panel__live"
|
|
32
|
-
},
|
|
32
|
+
}, R = { class: "qbs-panel__body" }, L = /* @__PURE__ */ _({
|
|
33
33
|
__name: "BigScreenPanel",
|
|
34
34
|
props: {
|
|
35
35
|
title: { default: "" },
|
|
@@ -44,10 +44,10 @@ const $ = {
|
|
|
44
44
|
},
|
|
45
45
|
setup(t) {
|
|
46
46
|
const s = t;
|
|
47
|
-
function r(
|
|
48
|
-
return s.corners === "all" ? !0 : s.corners === "none" ? !1 :
|
|
47
|
+
function r(l) {
|
|
48
|
+
return s.corners === "all" ? !0 : s.corners === "none" ? !1 : l === "tl" || l === "br";
|
|
49
49
|
}
|
|
50
|
-
return (
|
|
50
|
+
return (l, d) => (n(), o("section", {
|
|
51
51
|
class: f(["qbs-panel", [
|
|
52
52
|
`qbs-panel--padding-${t.padding}`,
|
|
53
53
|
`qbs-panel--layout-${t.bodyLayout}`,
|
|
@@ -55,54 +55,54 @@ const $ = {
|
|
|
55
55
|
]]),
|
|
56
56
|
style: h({ "--qbs-accent": t.accent })
|
|
57
57
|
}, [
|
|
58
|
-
r("tl") ? (n(),
|
|
59
|
-
r("tr") ? (n(),
|
|
60
|
-
r("bl") ? (n(),
|
|
61
|
-
r("br") ? (n(),
|
|
62
|
-
t.title || t.liveLabel ||
|
|
58
|
+
r("tl") ? (n(), o("span", k)) : u("", !0),
|
|
59
|
+
r("tr") ? (n(), o("span", w)) : u("", !0),
|
|
60
|
+
r("bl") ? (n(), o("span", S)) : u("", !0),
|
|
61
|
+
r("br") ? (n(), o("span", B)) : u("", !0),
|
|
62
|
+
t.title || t.liveLabel || l.$slots["header-center"] || l.$slots["header-extra"] ? (n(), o("header", {
|
|
63
63
|
key: 4,
|
|
64
64
|
class: f(["qbs-panel__header", `qbs-panel__header--${t.titleSize}`])
|
|
65
65
|
}, [
|
|
66
|
-
t.showBar ? (n(),
|
|
67
|
-
t.title ? (n(),
|
|
68
|
-
|
|
69
|
-
b(
|
|
66
|
+
t.showBar ? (n(), o("span", I)) : u("", !0),
|
|
67
|
+
t.title ? (n(), o("span", x, a(t.title), 1)) : u("", !0),
|
|
68
|
+
l.$slots["header-prefix"] ? (n(), o("span", N, [
|
|
69
|
+
b(l.$slots, "header-prefix", {}, void 0, !0)
|
|
70
70
|
])) : u("", !0),
|
|
71
|
-
|
|
72
|
-
b(
|
|
71
|
+
l.$slots["header-center"] ? (n(), o("span", T, [
|
|
72
|
+
b(l.$slots, "header-center", {}, void 0, !0)
|
|
73
73
|
])) : u("", !0),
|
|
74
|
-
|
|
75
|
-
b(
|
|
76
|
-
t.liveLabel ? (n(),
|
|
74
|
+
l.$slots["header-extra"] || t.liveLabel ? (n(), o("span", C, [
|
|
75
|
+
b(l.$slots, "header-extra", {}, () => [
|
|
76
|
+
t.liveLabel ? (n(), o("span", A, [
|
|
77
77
|
d[0] || (d[0] = e("span", { class: "qbs-panel__live-dot" }, null, -1)),
|
|
78
78
|
c(a(t.liveLabel), 1)
|
|
79
79
|
])) : u("", !0)
|
|
80
80
|
], !0)
|
|
81
81
|
])) : u("", !0)
|
|
82
82
|
], 2)) : u("", !0),
|
|
83
|
-
e("div",
|
|
84
|
-
b(
|
|
83
|
+
e("div", R, [
|
|
84
|
+
b(l.$slots, "default", {}, void 0, !0)
|
|
85
85
|
])
|
|
86
86
|
], 6));
|
|
87
87
|
}
|
|
88
88
|
}), p = (t, s) => {
|
|
89
89
|
const r = t.__vccOpts || t;
|
|
90
|
-
for (const [
|
|
91
|
-
r[
|
|
90
|
+
for (const [l, d] of s)
|
|
91
|
+
r[l] = d;
|
|
92
92
|
return r;
|
|
93
|
-
},
|
|
93
|
+
}, P = /* @__PURE__ */ p(L, [["__scopeId", "data-v-749400b6"]]), E = {
|
|
94
94
|
key: 0,
|
|
95
95
|
class: "qbs-duty-compact"
|
|
96
|
-
}, j = { class: "qbs-duty-compact__avatar" },
|
|
96
|
+
}, j = { class: "qbs-duty-compact__avatar" }, U = { class: "qbs-duty-compact__info" }, D = { class: "qbs-duty-compact__name" }, G = { class: "qbs-duty-compact__phone" }, M = {
|
|
97
97
|
key: 0,
|
|
98
98
|
class: "qbs-duty-compact__tag"
|
|
99
|
-
},
|
|
99
|
+
}, z = {
|
|
100
100
|
key: 1,
|
|
101
101
|
class: "qbs-duty"
|
|
102
|
-
}, F = { class: "qbs-duty__summary" },
|
|
102
|
+
}, F = { class: "qbs-duty__summary" }, O = { class: "qbs-duty__summary-chip" }, H = { class: "qbs-duty__summary-chip" }, J = { class: "qbs-duty__summary-chip" }, V = { class: "qbs-duty__list" }, W = { class: "qbs-duty__group-header" }, K = { class: "qbs-duty__users" }, Q = {
|
|
103
103
|
key: 0,
|
|
104
104
|
class: "qbs-duty__empty"
|
|
105
|
-
},
|
|
105
|
+
}, Y = /* @__PURE__ */ _({
|
|
106
106
|
__name: "BigScreenDutyContent",
|
|
107
107
|
props: {
|
|
108
108
|
compact: { type: Boolean, default: !1 },
|
|
@@ -116,32 +116,32 @@ const $ = {
|
|
|
116
116
|
},
|
|
117
117
|
setup(t) {
|
|
118
118
|
const s = t;
|
|
119
|
-
return (r,
|
|
119
|
+
return (r, l) => s.compact ? (n(), o("div", E, [
|
|
120
120
|
e("div", j, a(s.personName.charAt(0) || "-"), 1),
|
|
121
|
-
e("div",
|
|
122
|
-
e("span",
|
|
121
|
+
e("div", U, [
|
|
122
|
+
e("span", D, a(s.personName || "暂未排班"), 1),
|
|
123
123
|
e("span", G, a(s.personPhone || "—"), 1)
|
|
124
124
|
]),
|
|
125
|
-
s.personTag ? (n(),
|
|
126
|
-
])) : (n(),
|
|
125
|
+
s.personTag ? (n(), o("span", M, a(s.personTag), 1)) : u("", !0)
|
|
126
|
+
])) : (n(), o("div", z, [
|
|
127
127
|
e("div", F, [
|
|
128
|
-
e("div",
|
|
129
|
-
|
|
128
|
+
e("div", O, [
|
|
129
|
+
l[0] || (l[0] = e("span", null, "日期", -1)),
|
|
130
130
|
e("strong", null, a(s.date || "未同步"), 1)
|
|
131
131
|
]),
|
|
132
132
|
e("div", H, [
|
|
133
|
-
|
|
133
|
+
l[1] || (l[1] = e("span", null, "值班组", -1)),
|
|
134
134
|
e("strong", null, a(s.totalGroups ?? s.groups.length), 1)
|
|
135
135
|
]),
|
|
136
|
-
e("div",
|
|
137
|
-
|
|
136
|
+
e("div", J, [
|
|
137
|
+
l[2] || (l[2] = e("span", null, "值班人数", -1)),
|
|
138
138
|
e("strong", null, a(s.totalUsers ?? 0), 1)
|
|
139
139
|
])
|
|
140
140
|
]),
|
|
141
141
|
e("div", V, [
|
|
142
|
-
(n(!0),
|
|
142
|
+
(n(!0), o(y, null, g(s.groups, (d) => {
|
|
143
143
|
var i;
|
|
144
|
-
return n(),
|
|
144
|
+
return n(), o("article", {
|
|
145
145
|
key: d.groupId,
|
|
146
146
|
class: "qbs-duty__group"
|
|
147
147
|
}, [
|
|
@@ -149,31 +149,31 @@ const $ = {
|
|
|
149
149
|
e("strong", null, a(d.groupName), 1),
|
|
150
150
|
e("span", null, a(((i = d.users) == null ? void 0 : i.length) || 0) + " 人", 1)
|
|
151
151
|
]),
|
|
152
|
-
e("div",
|
|
153
|
-
(n(!0),
|
|
152
|
+
e("div", K, [
|
|
153
|
+
(n(!0), o(y, null, g(d.users || [], (m) => (n(), o("span", {
|
|
154
154
|
key: m.userId,
|
|
155
155
|
class: "qbs-duty__user"
|
|
156
156
|
}, a(m.nickName || m.username), 1))), 128))
|
|
157
157
|
])
|
|
158
158
|
]);
|
|
159
159
|
}), 128)),
|
|
160
|
-
s.groups.length ? u("", !0) : (n(),
|
|
160
|
+
s.groups.length ? u("", !0) : (n(), o("div", Q, "暂无值班数据"))
|
|
161
161
|
])
|
|
162
162
|
]));
|
|
163
163
|
}
|
|
164
|
-
}),
|
|
164
|
+
}), Ue = /* @__PURE__ */ p(Y, [["__scopeId", "data-v-f5721bce"]]), X = { class: "qbs-alert-row__main" }, Z = { class: "qbs-alert-row__copy" }, ee = ["title"], te = { class: "qbs-alert-row__meta" }, se = { class: "qbs-alert-row__group" }, ae = {
|
|
165
165
|
key: 0,
|
|
166
166
|
class: "qbs-alert-row__owner"
|
|
167
|
-
},
|
|
167
|
+
}, ne = {
|
|
168
168
|
key: 1,
|
|
169
169
|
class: "qbs-alert-row__time"
|
|
170
|
-
},
|
|
170
|
+
}, le = {
|
|
171
171
|
key: 2,
|
|
172
172
|
class: "qbs-alert-row__tag"
|
|
173
|
-
},
|
|
173
|
+
}, oe = { class: "qbs-alert-row__status" }, re = {
|
|
174
174
|
key: 0,
|
|
175
175
|
class: "qbs-alert-row__aside"
|
|
176
|
-
},
|
|
176
|
+
}, de = /* @__PURE__ */ _({
|
|
177
177
|
__name: "BigScreenAlertRow",
|
|
178
178
|
props: {
|
|
179
179
|
title: {},
|
|
@@ -188,37 +188,37 @@ const $ = {
|
|
|
188
188
|
emits: ["select"],
|
|
189
189
|
setup(t) {
|
|
190
190
|
const s = t;
|
|
191
|
-
return (r,
|
|
191
|
+
return (r, l) => (n(), o("button", {
|
|
192
192
|
class: f(["qbs-alert-row", { "qbs-alert-row--detail-wide": s.detailWide }]),
|
|
193
193
|
style: h({ "--qbs-alert-accent": s.accent }),
|
|
194
194
|
type: "button",
|
|
195
|
-
onClick:
|
|
195
|
+
onClick: l[0] || (l[0] = (d) => r.$emit("select"))
|
|
196
196
|
}, [
|
|
197
|
-
e("div",
|
|
198
|
-
e("div",
|
|
197
|
+
e("div", X, [
|
|
198
|
+
e("div", Z, [
|
|
199
199
|
e("div", {
|
|
200
200
|
class: "qbs-alert-row__title",
|
|
201
201
|
title: s.title
|
|
202
|
-
}, a(s.title), 9,
|
|
203
|
-
e("div",
|
|
204
|
-
e("span",
|
|
205
|
-
s.owner ? (n(),
|
|
206
|
-
s.time ? (n(),
|
|
207
|
-
s.tag ? (n(),
|
|
202
|
+
}, a(s.title), 9, ee),
|
|
203
|
+
e("div", te, [
|
|
204
|
+
e("span", se, a(s.group), 1),
|
|
205
|
+
s.owner ? (n(), o("span", ae, a(s.owner), 1)) : u("", !0),
|
|
206
|
+
s.time ? (n(), o("span", ne, a(s.time), 1)) : u("", !0),
|
|
207
|
+
s.tag ? (n(), o("span", le, a(s.tag), 1)) : u("", !0)
|
|
208
208
|
]),
|
|
209
|
-
e("div",
|
|
209
|
+
e("div", oe, [
|
|
210
210
|
b(r.$slots, "status", {}, () => [
|
|
211
211
|
c(a(s.statusText || "待处理"), 1)
|
|
212
212
|
], !0)
|
|
213
213
|
])
|
|
214
214
|
]),
|
|
215
|
-
r.$slots.aside ? (n(),
|
|
215
|
+
r.$slots.aside ? (n(), o("aside", re, [
|
|
216
216
|
b(r.$slots, "aside", {}, void 0, !0)
|
|
217
217
|
])) : u("", !0)
|
|
218
218
|
])
|
|
219
219
|
], 6));
|
|
220
220
|
}
|
|
221
|
-
}),
|
|
221
|
+
}), De = /* @__PURE__ */ p(de, [["__scopeId", "data-v-83959767"]]), ue = { class: "qbs-metric-card__value" }, ie = { class: "qbs-metric-card__label" }, ce = /* @__PURE__ */ _({
|
|
222
222
|
__name: "BigScreenMetricCard",
|
|
223
223
|
props: {
|
|
224
224
|
label: {},
|
|
@@ -228,7 +228,7 @@ const $ = {
|
|
|
228
228
|
},
|
|
229
229
|
setup(t) {
|
|
230
230
|
const s = t;
|
|
231
|
-
return (r,
|
|
231
|
+
return (r, l) => s.compact ? (n(), o("div", {
|
|
232
232
|
key: 0,
|
|
233
233
|
class: "qbs-metric-card qbs-metric-card--compact",
|
|
234
234
|
style: h({ "--qbs-metric-tone": s.tone })
|
|
@@ -239,7 +239,7 @@ const $ = {
|
|
|
239
239
|
c(a(s.value), 1)
|
|
240
240
|
], !0)
|
|
241
241
|
])
|
|
242
|
-
], 4)) : (n(), v(
|
|
242
|
+
], 4)) : (n(), v(P, {
|
|
243
243
|
key: 1,
|
|
244
244
|
class: "qbs-metric-card",
|
|
245
245
|
"body-layout": "metric",
|
|
@@ -248,17 +248,17 @@ const $ = {
|
|
|
248
248
|
}, {
|
|
249
249
|
default: q(() => [
|
|
250
250
|
b(r.$slots, "default", {}, () => [
|
|
251
|
-
e("strong",
|
|
251
|
+
e("strong", ue, a(s.value), 1)
|
|
252
252
|
], !0),
|
|
253
|
-
e("span",
|
|
253
|
+
e("span", ie, a(s.label), 1)
|
|
254
254
|
]),
|
|
255
255
|
_: 3
|
|
256
256
|
}, 8, ["accent"]));
|
|
257
257
|
}
|
|
258
|
-
}),
|
|
258
|
+
}), Ge = /* @__PURE__ */ p(ce, [["__scopeId", "data-v-07353599"]]), _e = { class: "qbs-header" }, pe = { class: "qbs-header__body" }, be = { class: "qbs-header__brand" }, me = {
|
|
259
259
|
key: 0,
|
|
260
260
|
class: "qbs-header__clock"
|
|
261
|
-
},
|
|
261
|
+
}, ye = /* @__PURE__ */ _({
|
|
262
262
|
__name: "BigScreenHeader",
|
|
263
263
|
props: {
|
|
264
264
|
title: { default: "运维监控大屏" },
|
|
@@ -269,10 +269,10 @@ const $ = {
|
|
|
269
269
|
showClock: { type: Boolean, default: !0 }
|
|
270
270
|
},
|
|
271
271
|
setup(t) {
|
|
272
|
-
return (s, r) => (n(),
|
|
272
|
+
return (s, r) => (n(), o("section", _e, [
|
|
273
273
|
r[1] || (r[1] = e("i", { class: "qbs-header__glow" }, null, -1)),
|
|
274
|
-
e("div",
|
|
275
|
-
e("div",
|
|
274
|
+
e("div", pe, [
|
|
275
|
+
e("div", be, [
|
|
276
276
|
r[0] || (r[0] = e("i", { class: "qbs-header__crest" }, [
|
|
277
277
|
e("b")
|
|
278
278
|
], -1)),
|
|
@@ -281,26 +281,26 @@ const $ = {
|
|
|
281
281
|
e("h1", null, a(t.title), 1)
|
|
282
282
|
])
|
|
283
283
|
]),
|
|
284
|
-
t.showClock ? (n(),
|
|
284
|
+
t.showClock ? (n(), o("div", me, [
|
|
285
285
|
e("strong", null, a(t.timeText), 1),
|
|
286
286
|
e("span", null, a(t.dateText) + " " + a(t.weekdayText), 1)
|
|
287
287
|
])) : u("", !0)
|
|
288
288
|
])
|
|
289
289
|
]));
|
|
290
290
|
}
|
|
291
|
-
}),
|
|
291
|
+
}), Me = /* @__PURE__ */ p(ye, [["__scopeId", "data-v-cc041333"]]), ge = { class: "qbs-build-dist" }, fe = {
|
|
292
292
|
key: 0,
|
|
293
293
|
class: "qbs-build-dist__empty"
|
|
294
|
-
},
|
|
294
|
+
}, he = /* @__PURE__ */ _({
|
|
295
295
|
__name: "BigScreenBuildDistribution",
|
|
296
296
|
props: {
|
|
297
297
|
items: { default: () => [] },
|
|
298
298
|
total: { default: 0 }
|
|
299
299
|
},
|
|
300
300
|
setup(t) {
|
|
301
|
-
const s = t, r = (
|
|
302
|
-
return (
|
|
303
|
-
(n(!0),
|
|
301
|
+
const s = t, r = (l) => `${(l / Math.max(1, s.total || s.items.reduce((d, i) => d + i.count, 0)) * 100).toFixed(1)}%`;
|
|
302
|
+
return (l, d) => (n(), o("div", ge, [
|
|
303
|
+
(n(!0), o(y, null, g(s.items.slice(0, 8), (i) => (n(), o("article", {
|
|
304
304
|
key: i.name
|
|
305
305
|
}, [
|
|
306
306
|
e("div", null, [
|
|
@@ -313,13 +313,13 @@ const $ = {
|
|
|
313
313
|
}, null, 4)
|
|
314
314
|
])
|
|
315
315
|
]))), 128)),
|
|
316
|
-
s.items.length ? u("", !0) : (n(),
|
|
316
|
+
s.items.length ? u("", !0) : (n(), o("div", fe, "暂无构建分布数据"))
|
|
317
317
|
]));
|
|
318
318
|
}
|
|
319
|
-
}),
|
|
319
|
+
}), ze = /* @__PURE__ */ p(he, [["__scopeId", "data-v-608b33d9"]]), ve = { class: "qbs-build-projects" }, qe = { class: "qbs-build-projects__summary" }, $e = { class: "qbs-build-projects__list" }, ke = {
|
|
320
320
|
key: 0,
|
|
321
321
|
class: "qbs-build-projects__empty"
|
|
322
|
-
},
|
|
322
|
+
}, we = /* @__PURE__ */ _({
|
|
323
323
|
__name: "BigScreenBuildProjects",
|
|
324
324
|
props: {
|
|
325
325
|
buildingCount: { default: 0 },
|
|
@@ -329,23 +329,23 @@ const $ = {
|
|
|
329
329
|
},
|
|
330
330
|
setup(t) {
|
|
331
331
|
const s = (r) => `${Math.max(0, Math.min(100, r || 0))}%`;
|
|
332
|
-
return (r,
|
|
333
|
-
e("div",
|
|
332
|
+
return (r, l) => (n(), o("div", ve, [
|
|
333
|
+
e("div", qe, [
|
|
334
334
|
e("span", null, [
|
|
335
|
-
|
|
335
|
+
l[0] || (l[0] = c("构建中", -1)),
|
|
336
336
|
e("strong", null, a(t.buildingCount), 1)
|
|
337
337
|
]),
|
|
338
338
|
e("span", null, [
|
|
339
|
-
|
|
339
|
+
l[1] || (l[1] = c("今日构建", -1)),
|
|
340
340
|
e("strong", null, a(t.todayBuilds), 1)
|
|
341
341
|
]),
|
|
342
342
|
e("span", null, [
|
|
343
|
-
|
|
343
|
+
l[2] || (l[2] = c("成功率", -1)),
|
|
344
344
|
e("strong", null, a(Number(t.successRate).toFixed(1)) + "%", 1)
|
|
345
345
|
])
|
|
346
346
|
]),
|
|
347
|
-
e("div",
|
|
348
|
-
(n(!0),
|
|
347
|
+
e("div", $e, [
|
|
348
|
+
(n(!0), o(y, null, g(t.items.slice(0, 8), (d) => (n(), o("article", {
|
|
349
349
|
key: `${d.pipelineId}-${d.buildId}`
|
|
350
350
|
}, [
|
|
351
351
|
e("div", null, [
|
|
@@ -362,11 +362,11 @@ const $ = {
|
|
|
362
362
|
}, null, 4)
|
|
363
363
|
])
|
|
364
364
|
]))), 128)),
|
|
365
|
-
t.items.length ? u("", !0) : (n(),
|
|
365
|
+
t.items.length ? u("", !0) : (n(), o("div", ke, "当前没有在跑的构建项目"))
|
|
366
366
|
])
|
|
367
367
|
]));
|
|
368
368
|
}
|
|
369
|
-
}),
|
|
369
|
+
}), Fe = /* @__PURE__ */ p(we, [["__scopeId", "data-v-6c6f003c"]]), Se = { class: "qbs-robot" }, Be = { class: "qbs-robot__head" }, Ie = { class: "qbs-robot__metrics" }, xe = /* @__PURE__ */ _({
|
|
370
370
|
__name: "BigScreenRobotSummary",
|
|
371
371
|
props: {
|
|
372
372
|
status: { default: "online" },
|
|
@@ -378,8 +378,8 @@ const $ = {
|
|
|
378
378
|
successRate: { default: 0 }
|
|
379
379
|
},
|
|
380
380
|
setup(t) {
|
|
381
|
-
return (s, r) => (n(),
|
|
382
|
-
e("div",
|
|
381
|
+
return (s, r) => (n(), o("div", Se, [
|
|
382
|
+
e("div", Be, [
|
|
383
383
|
e("i", {
|
|
384
384
|
class: f(`is-${t.emotion}`)
|
|
385
385
|
}, null, 2),
|
|
@@ -388,7 +388,7 @@ const $ = {
|
|
|
388
388
|
e("span", null, a(t.mode) + " · " + a(t.generatedAt), 1)
|
|
389
389
|
])
|
|
390
390
|
]),
|
|
391
|
-
e("div",
|
|
391
|
+
e("div", Ie, [
|
|
392
392
|
e("span", null, [
|
|
393
393
|
r[0] || (r[0] = c("值班组", -1)),
|
|
394
394
|
e("b", null, a(t.summary.dutyGroups ?? 0), 1)
|
|
@@ -408,40 +408,67 @@ const $ = {
|
|
|
408
408
|
])
|
|
409
409
|
]));
|
|
410
410
|
}
|
|
411
|
-
}),
|
|
411
|
+
}), Oe = /* @__PURE__ */ p(xe, [["__scopeId", "data-v-534c73e7"]]), Ne = { class: "qbs-endpoints" }, Te = {
|
|
412
412
|
key: 0,
|
|
413
413
|
class: "qbs-endpoints__empty"
|
|
414
|
-
},
|
|
414
|
+
}, Ce = /* @__PURE__ */ _({
|
|
415
415
|
__name: "BigScreenEndpointDistribution",
|
|
416
416
|
props: {
|
|
417
417
|
items: { default: () => [] }
|
|
418
418
|
},
|
|
419
419
|
setup(t) {
|
|
420
|
-
return (s, r) => (n(),
|
|
421
|
-
(n(!0),
|
|
420
|
+
return (s, r) => (n(), o("div", Ne, [
|
|
421
|
+
(n(!0), o(y, null, g(t.items, (l) => {
|
|
422
422
|
var d;
|
|
423
|
-
return n(),
|
|
424
|
-
key:
|
|
423
|
+
return n(), o("article", {
|
|
424
|
+
key: l.id
|
|
425
425
|
}, [
|
|
426
426
|
e("div", null, [
|
|
427
|
-
e("strong", null, a(
|
|
427
|
+
e("strong", null, a(l.nodeName), 1),
|
|
428
428
|
e("span", {
|
|
429
|
-
class: f({ offline: !
|
|
430
|
-
}, a(
|
|
429
|
+
class: f({ offline: !l.nodeStatus })
|
|
430
|
+
}, a(l.nodeStatus ? "在线" : "离线"), 3)
|
|
431
431
|
]),
|
|
432
|
-
e("small", null, a(
|
|
433
|
-
(n(!0),
|
|
432
|
+
e("small", null, a(l.nodeIp), 1),
|
|
433
|
+
(n(!0), o(y, null, g((d = l.heartbeatResults) == null ? void 0 : d.slice(0, 3), (i) => {
|
|
434
434
|
var m;
|
|
435
|
-
return n(),
|
|
435
|
+
return n(), o("p", {
|
|
436
436
|
key: i.targetName
|
|
437
437
|
}, a(i.targetName || i.targetIp) + " · " + a(((m = i.latencyMs) == null ? void 0 : m.toFixed(1)) ?? "—") + " ms", 1);
|
|
438
438
|
}), 128))
|
|
439
439
|
]);
|
|
440
440
|
}), 128)),
|
|
441
|
-
t.items.length ? u("", !0) : (n(),
|
|
441
|
+
t.items.length ? u("", !0) : (n(), o("div", Te, "暂无终端分布数据"))
|
|
442
|
+
]));
|
|
443
|
+
}
|
|
444
|
+
}), He = /* @__PURE__ */ p(Ce, [["__scopeId", "data-v-9abd8314"]]), Ae = { class: "qbs-embed" }, Re = ["src", "title"], Le = { key: 1 }, Pe = /* @__PURE__ */ _({
|
|
445
|
+
__name: "BigScreenExternalEmbed",
|
|
446
|
+
props: {
|
|
447
|
+
url: { default: "" },
|
|
448
|
+
title: { default: "外部仪表盘" }
|
|
449
|
+
},
|
|
450
|
+
setup(t) {
|
|
451
|
+
const s = t, r = $(() => {
|
|
452
|
+
try {
|
|
453
|
+
const l = new URL(s.url);
|
|
454
|
+
return ["http:", "https:"].includes(l.protocol) ? l.toString() : "";
|
|
455
|
+
} catch {
|
|
456
|
+
return "";
|
|
457
|
+
}
|
|
458
|
+
});
|
|
459
|
+
return (l, d) => (n(), o("section", Ae, [
|
|
460
|
+
r.value ? (n(), o("iframe", {
|
|
461
|
+
key: 0,
|
|
462
|
+
src: r.value,
|
|
463
|
+
title: t.title,
|
|
464
|
+
loading: "lazy",
|
|
465
|
+
referrerpolicy: "no-referrer",
|
|
466
|
+
sandbox: "allow-scripts allow-same-origin allow-forms allow-popups",
|
|
467
|
+
allow: "fullscreen"
|
|
468
|
+
}, null, 8, Re)) : (n(), o("div", Le, "请在 Props JSON 中配置 http(s) 外部仪表盘 URL。"))
|
|
442
469
|
]));
|
|
443
470
|
}
|
|
444
|
-
}),
|
|
471
|
+
}), Je = /* @__PURE__ */ p(Pe, [["__scopeId", "data-v-f20c22f6"]]), Ee = {
|
|
445
472
|
screen_header: {
|
|
446
473
|
dateText: "2026-07-27",
|
|
447
474
|
timeText: "14:30",
|
|
@@ -494,19 +521,20 @@ const $ = {
|
|
|
494
521
|
]
|
|
495
522
|
}
|
|
496
523
|
};
|
|
497
|
-
function
|
|
498
|
-
return JSON.parse(JSON.stringify(
|
|
524
|
+
function Ve(t) {
|
|
525
|
+
return JSON.parse(JSON.stringify(Ee[t]));
|
|
499
526
|
}
|
|
500
527
|
export {
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
528
|
+
De as BigScreenAlertRow,
|
|
529
|
+
ze as BigScreenBuildDistribution,
|
|
530
|
+
Fe as BigScreenBuildProjects,
|
|
531
|
+
Ue as BigScreenDutyContent,
|
|
532
|
+
He as BigScreenEndpointDistribution,
|
|
533
|
+
Je as BigScreenExternalEmbed,
|
|
534
|
+
Me as BigScreenHeader,
|
|
535
|
+
Ge as BigScreenMetricCard,
|
|
536
|
+
P as BigScreenPanel,
|
|
537
|
+
Oe as BigScreenRobotSummary,
|
|
538
|
+
Ee as bigScreenPreviewFixtures,
|
|
539
|
+
Ve as getBigScreenPreviewData
|
|
512
540
|
};
|
package/dist/index.umd.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(a,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(a=typeof globalThis<"u"?globalThis:a||self,e(a.QuarkBigScreenUi={},a.Vue))})(this,(function(a,e){"use strict";const p={key:0,class:"qbs-panel__corner qbs-panel__corner--tl"},_={key:1,class:"qbs-panel__corner qbs-panel__corner--tr"},y={key:2,class:"qbs-panel__corner qbs-panel__corner--bl"},g={key:3,class:"qbs-panel__corner qbs-panel__corner--br"},b={key:0,class:"qbs-panel__bar"},N={key:1,class:"qbs-panel__title"},B={key:2,class:"qbs-panel__header-prefix"},k={key:3,class:"qbs-panel__header-center"},E={key:4,class:"qbs-panel__header-extra"},f={key:0,class:"qbs-panel__live"},V={class:"qbs-panel__body"},S=e.defineComponent({__name:"BigScreenPanel",props:{title:{default:""},accent:{default:"oklch(.82 .13 200)"},liveLabel:{default:""},showBar:{type:Boolean,default:!0},corners:{default:"tl-br"},padding:{default:"md"},bodyLayout:{default:"default"},titleSize:{default:"md"},overflowHidden:{type:Boolean,default:!0}},setup(t){const n=t;function l(o){return n.corners==="all"?!0:n.corners==="none"?!1:o==="tl"||o==="br"}return(o,s)=>(e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(["qbs-panel",[`qbs-panel--padding-${t.padding}`,`qbs-panel--layout-${t.bodyLayout}`,{"qbs-panel--overflow-hidden":t.overflowHidden}]]),style:e.normalizeStyle({"--qbs-accent":t.accent})},[l("tl")?(e.openBlock(),e.createElementBlock("span",p)):e.createCommentVNode("",!0),l("tr")?(e.openBlock(),e.createElementBlock("span",_)):e.createCommentVNode("",!0),l("bl")?(e.openBlock(),e.createElementBlock("span",y)):e.createCommentVNode("",!0),l("br")?(e.openBlock(),e.createElementBlock("span",g)):e.createCommentVNode("",!0),t.title||t.liveLabel||o.$slots["header-center"]||o.$slots["header-extra"]?(e.openBlock(),e.createElementBlock("header",{key:4,class:e.normalizeClass(["qbs-panel__header",`qbs-panel__header--${t.titleSize}`])},[t.showBar?(e.openBlock(),e.createElementBlock("span",b)):e.createCommentVNode("",!0),t.title?(e.openBlock(),e.createElementBlock("span",N,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),o.$slots["header-prefix"]?(e.openBlock(),e.createElementBlock("span",B,[e.renderSlot(o.$slots,"header-prefix",{},void 0,!0)])):e.createCommentVNode("",!0),o.$slots["header-center"]?(e.openBlock(),e.createElementBlock("span",k,[e.renderSlot(o.$slots,"header-center",{},void 0,!0)])):e.createCommentVNode("",!0),o.$slots["header-extra"]||t.liveLabel?(e.openBlock(),e.createElementBlock("span",E,[e.renderSlot(o.$slots,"header-extra",{},()=>[t.liveLabel?(e.openBlock(),e.createElementBlock("span",f,[s[0]||(s[0]=e.createElementVNode("span",{class:"qbs-panel__live-dot"},null,-1)),e.createTextVNode(e.toDisplayString(t.liveLabel),1)])):e.createCommentVNode("",!0)],!0)])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),e.createElementVNode("div",V,[e.renderSlot(o.$slots,"default",{},void 0,!0)])],6))}}),c=(t,n)=>{const l=t.__vccOpts||t;for(const[o,s]of n)l[o]=s;return l},i=c(S,[["__scopeId","data-v-749400b6"]]),u={key:0,class:"qbs-duty-compact"},h={class:"qbs-duty-compact__avatar"},q={class:"qbs-duty-compact__info"},$={class:"qbs-duty-compact__name"},C={class:"qbs-duty-compact__phone"},D={key:0,class:"qbs-duty-compact__tag"},w={key:1,class:"qbs-duty"},T={class:"qbs-duty__summary"},I={class:"qbs-duty__summary-chip"},x={class:"qbs-duty__summary-chip"},A={class:"qbs-duty__summary-chip"},L={class:"qbs-duty__list"},P={class:"qbs-duty__group-header"},R={class:"qbs-duty__users"},j={key:0,class:"qbs-duty__empty"},z=c(e.defineComponent({__name:"BigScreenDutyContent",props:{compact:{type:Boolean,default:!1},personName:{default:""},personPhone:{default:""},personTag:{default:""},date:{default:""},totalGroups:{default:void 0},totalUsers:{default:void 0},groups:{default:()=>[]}},setup(t){const n=t;return(l,o)=>n.compact?(e.openBlock(),e.createElementBlock("div",u,[e.createElementVNode("div",h,e.toDisplayString(n.personName.charAt(0)||"-"),1),e.createElementVNode("div",q,[e.createElementVNode("span",$,e.toDisplayString(n.personName||"暂未排班"),1),e.createElementVNode("span",C,e.toDisplayString(n.personPhone||"—"),1)]),n.personTag?(e.openBlock(),e.createElementBlock("span",D,e.toDisplayString(n.personTag),1)):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",w,[e.createElementVNode("div",T,[e.createElementVNode("div",I,[o[0]||(o[0]=e.createElementVNode("span",null,"日期",-1)),e.createElementVNode("strong",null,e.toDisplayString(n.date||"未同步"),1)]),e.createElementVNode("div",x,[o[1]||(o[1]=e.createElementVNode("span",null,"值班组",-1)),e.createElementVNode("strong",null,e.toDisplayString(n.totalGroups??n.groups.length),1)]),e.createElementVNode("div",A,[o[2]||(o[2]=e.createElementVNode("span",null,"值班人数",-1)),e.createElementVNode("strong",null,e.toDisplayString(n.totalUsers??0),1)])]),e.createElementVNode("div",L,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.groups,s=>{var r;return e.openBlock(),e.createElementBlock("article",{key:s.groupId,class:"qbs-duty__group"},[e.createElementVNode("div",P,[e.createElementVNode("strong",null,e.toDisplayString(s.groupName),1),e.createElementVNode("span",null,e.toDisplayString(((r=s.users)==null?void 0:r.length)||0)+" 人",1)]),e.createElementVNode("div",R,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.users||[],d=>(e.openBlock(),e.createElementBlock("span",{key:d.userId,class:"qbs-duty__user"},e.toDisplayString(d.nickName||d.username),1))),128))])])}),128)),n.groups.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",j,"暂无值班数据"))])]))}}),[["__scopeId","data-v-f5721bce"]]),F={class:"qbs-alert-row__main"},M={class:"qbs-alert-row__copy"},G=["title"],U={class:"qbs-alert-row__meta"},H={class:"qbs-alert-row__group"},O={key:0,class:"qbs-alert-row__owner"},W={key:1,class:"qbs-alert-row__time"},J={key:2,class:"qbs-alert-row__tag"},Q={class:"qbs-alert-row__status"},K={key:0,class:"qbs-alert-row__aside"},Y=c(e.defineComponent({__name:"BigScreenAlertRow",props:{title:{},group:{default:""},owner:{default:""},time:{default:""},tag:{default:""},statusText:{default:""},accent:{default:"#f0a35a"},detailWide:{type:Boolean,default:!1}},emits:["select"],setup(t){const n=t;return(l,o)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["qbs-alert-row",{"qbs-alert-row--detail-wide":n.detailWide}]),style:e.normalizeStyle({"--qbs-alert-accent":n.accent}),type:"button",onClick:o[0]||(o[0]=s=>l.$emit("select"))},[e.createElementVNode("div",F,[e.createElementVNode("div",M,[e.createElementVNode("div",{class:"qbs-alert-row__title",title:n.title},e.toDisplayString(n.title),9,G),e.createElementVNode("div",U,[e.createElementVNode("span",H,e.toDisplayString(n.group),1),n.owner?(e.openBlock(),e.createElementBlock("span",O,e.toDisplayString(n.owner),1)):e.createCommentVNode("",!0),n.time?(e.openBlock(),e.createElementBlock("span",W,e.toDisplayString(n.time),1)):e.createCommentVNode("",!0),n.tag?(e.openBlock(),e.createElementBlock("span",J,e.toDisplayString(n.tag),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Q,[e.renderSlot(l.$slots,"status",{},()=>[e.createTextVNode(e.toDisplayString(n.statusText||"待处理"),1)],!0)])]),l.$slots.aside?(e.openBlock(),e.createElementBlock("aside",K,[e.renderSlot(l.$slots,"aside",{},void 0,!0)])):e.createCommentVNode("",!0)])],6))}}),[["__scopeId","data-v-83959767"]]),X={class:"qbs-metric-card__value"},Z={class:"qbs-metric-card__label"},v=c(e.defineComponent({__name:"BigScreenMetricCard",props:{label:{},value:{default:"—"},tone:{default:"#7dd3fc"},compact:{type:Boolean,default:!1}},setup(t){const n=t;return(l,o)=>n.compact?(e.openBlock(),e.createElementBlock("div",{key:0,class:"qbs-metric-card qbs-metric-card--compact",style:e.normalizeStyle({"--qbs-metric-tone":n.tone})},[e.createElementVNode("span",null,e.toDisplayString(n.label),1),e.createElementVNode("strong",null,[e.renderSlot(l.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(n.value),1)],!0)])],4)):(e.openBlock(),e.createBlock(i,{key:1,class:"qbs-metric-card","body-layout":"metric",padding:"tight",accent:n.tone},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"default",{},()=>[e.createElementVNode("strong",X,e.toDisplayString(n.value),1)],!0),e.createElementVNode("span",Z,e.toDisplayString(n.label),1)]),_:3},8,["accent"]))}}),[["__scopeId","data-v-07353599"]]),ee={class:"qbs-header"},te={class:"qbs-header__body"},ne={class:"qbs-header__brand"},oe={key:0,class:"qbs-header__clock"},le=c(e.defineComponent({__name:"BigScreenHeader",props:{title:{default:"运维监控大屏"},subtitle:{default:"QUARK EAGLE EYE"},timeText:{default:"--:--"},dateText:{default:"--"},weekdayText:{default:""},showClock:{type:Boolean,default:!0}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("section",ee,[l[1]||(l[1]=e.createElementVNode("i",{class:"qbs-header__glow"},null,-1)),e.createElementVNode("div",te,[e.createElementVNode("div",ne,[l[0]||(l[0]=e.createElementVNode("i",{class:"qbs-header__crest"},[e.createElementVNode("b")],-1)),e.createElementVNode("div",null,[e.createElementVNode("p",null,e.toDisplayString(t.subtitle),1),e.createElementVNode("h1",null,e.toDisplayString(t.title),1)])]),t.showClock?(e.openBlock(),e.createElementBlock("div",oe,[e.createElementVNode("strong",null,e.toDisplayString(t.timeText),1),e.createElementVNode("span",null,e.toDisplayString(t.dateText)+" "+e.toDisplayString(t.weekdayText),1)])):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-cc041333"]]),se={class:"qbs-build-dist"},ae={key:0,class:"qbs-build-dist__empty"},re=c(e.defineComponent({__name:"BigScreenBuildDistribution",props:{items:{default:()=>[]},total:{default:0}},setup(t){const n=t,l=o=>`${(o/Math.max(1,n.total||n.items.reduce((s,r)=>s+r.count,0))*100).toFixed(1)}%`;return(o,s)=>(e.openBlock(),e.createElementBlock("div",se,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items.slice(0,8),r=>(e.openBlock(),e.createElementBlock("article",{key:r.name},[e.createElementVNode("div",null,[e.createElementVNode("strong",null,e.toDisplayString(r.name),1),e.createElementVNode("span",null,e.toDisplayString(r.count),1)]),e.createElementVNode("i",null,[e.createElementVNode("b",{style:e.normalizeStyle({width:l(r.count)})},null,4)])]))),128)),n.items.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ae,"暂无构建分布数据"))]))}}),[["__scopeId","data-v-608b33d9"]]),ce={class:"qbs-build-projects"},de={class:"qbs-build-projects__summary"},ie={class:"qbs-build-projects__list"},me={key:0,class:"qbs-build-projects__empty"},pe=c(e.defineComponent({__name:"BigScreenBuildProjects",props:{buildingCount:{default:0},todayBuilds:{default:0},successRate:{default:0},items:{default:()=>[]}},setup(t){const n=l=>`${Math.max(0,Math.min(100,l||0))}%`;return(l,o)=>(e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",de,[e.createElementVNode("span",null,[o[0]||(o[0]=e.createTextVNode("构建中",-1)),e.createElementVNode("strong",null,e.toDisplayString(t.buildingCount),1)]),e.createElementVNode("span",null,[o[1]||(o[1]=e.createTextVNode("今日构建",-1)),e.createElementVNode("strong",null,e.toDisplayString(t.todayBuilds),1)]),e.createElementVNode("span",null,[o[2]||(o[2]=e.createTextVNode("成功率",-1)),e.createElementVNode("strong",null,e.toDisplayString(Number(t.successRate).toFixed(1))+"%",1)])]),e.createElementVNode("div",ie,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items.slice(0,8),s=>(e.openBlock(),e.createElementBlock("article",{key:`${s.pipelineId}-${s.buildId}`},[e.createElementVNode("div",null,[e.createElementVNode("strong",null,e.toDisplayString(s.jobName||`Pipeline-${s.pipelineId}`),1),e.createElementVNode("span",null,e.toDisplayString(s.statusText),1)]),e.createElementVNode("p",null,[e.createElementVNode("span",null,e.toDisplayString(s.currentStage||"等待阶段信息"),1),e.createElementVNode("span",null,e.toDisplayString(s.buildUser||"系统触发"),1)]),e.createElementVNode("i",null,[e.createElementVNode("b",{style:e.normalizeStyle({width:n(s.progress)})},null,4)])]))),128)),t.items.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",me,"当前没有在跑的构建项目"))])]))}}),[["__scopeId","data-v-6c6f003c"]]),_e={class:"qbs-robot"},ye={class:"qbs-robot__head"},ge={class:"qbs-robot__metrics"},be=c(e.defineComponent({__name:"BigScreenRobotSummary",props:{status:{default:"online"},mode:{default:"display_only"},emotion:{default:"neutral"},generatedAt:{default:""},summary:{default:()=>({})},alerts:{default:()=>({})},successRate:{default:0}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",_e,[e.createElementVNode("div",ye,[e.createElementVNode("i",{class:e.normalizeClass(`is-${t.emotion}`)},null,2),e.createElementVNode("div",null,[e.createElementVNode("strong",null,e.toDisplayString(t.status),1),e.createElementVNode("span",null,e.toDisplayString(t.mode)+" · "+e.toDisplayString(t.generatedAt),1)])]),e.createElementVNode("div",ge,[e.createElementVNode("span",null,[l[0]||(l[0]=e.createTextVNode("值班组",-1)),e.createElementVNode("b",null,e.toDisplayString(t.summary.dutyGroups??0),1)]),e.createElementVNode("span",null,[l[1]||(l[1]=e.createTextVNode("今日告警",-1)),e.createElementVNode("b",null,e.toDisplayString(t.summary.todayAlerts??0),1)]),e.createElementVNode("span",null,[l[2]||(l[2]=e.createTextVNode("构建中",-1)),e.createElementVNode("b",null,e.toDisplayString(t.summary.buildingCount??0),1)]),e.createElementVNode("span",null,[l[3]||(l[3]=e.createTextVNode("终端节点",-1)),e.createElementVNode("b",null,e.toDisplayString(t.summary.endpointNodes??0),1)])])]))}}),[["__scopeId","data-v-534c73e7"]]),Ne={class:"qbs-endpoints"},Be={key:0,class:"qbs-endpoints__empty"},ke=c(e.defineComponent({__name:"BigScreenEndpointDistribution",props:{items:{default:()=>[]}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",Ne,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,o=>{var s;return e.openBlock(),e.createElementBlock("article",{key:o.id},[e.createElementVNode("div",null,[e.createElementVNode("strong",null,e.toDisplayString(o.nodeName),1),e.createElementVNode("span",{class:e.normalizeClass({offline:!o.nodeStatus})},e.toDisplayString(o.nodeStatus?"在线":"离线"),3)]),e.createElementVNode("small",null,e.toDisplayString(o.nodeIp),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((s=o.heartbeatResults)==null?void 0:s.slice(0,3),r=>{var d;return e.openBlock(),e.createElementBlock("p",{key:r.targetName},e.toDisplayString(r.targetName||r.targetIp)+" · "+e.toDisplayString(((d=r.latencyMs)==null?void 0:d.toFixed(1))??"—")+" ms",1)}),128))])}),128)),t.items.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Be,"暂无终端分布数据"))]))}}),[["__scopeId","data-v-9abd8314"]]),m={screen_header:{dateText:"2026-07-27",timeText:"14:30",weekdayText:"星期一"},robot:{status:"online",mode:"guard",emotion:"neutral",generatedAt:"2026-07-27 14:30:00",summary:{dutyGroups:3,todayAlerts:12,buildingCount:4,endpointNodes:86},alerts:{todayTotal:12,todayPending:3,criticalCount:1,warningCount:5},builds:{buildingCount:4,todayBuilds:28,successRate:98.6}},duty_today:{date:"2026-07-27",totalGroups:3,totalUsers:8,groups:[{groupId:1,groupName:"平台组",users:[{userId:101,nickName:"张工",username:"zhang"},{userId:102,nickName:"李工",username:"li"}]},{groupId:2,groupName:"网络组",users:[{userId:103,nickName:"王工",username:"wang"}]}]},alert_latest:{total:3,stats:{todayTotal:12,todayPending:3,overdueTotal:1,criticalCount:1,warningCount:5,infoCount:6},items:[{id:1,alertId:"AL-20260727-001",title:"边缘节点延迟升高",severity:"WARN",severityText:"警告",status:"pending",statusText:"待处理",source:"edge-01",firedAt:"14:20",groupNames:["网络组"]},{id:2,alertId:"AL-20260727-002",title:"构建队列等待时间过长",severity:"CRITICAL",severityText:"严重",status:"processing",statusText:"处理中",source:"CI/CD",firedAt:"14:08",groupNames:["平台组"]},{id:3,alertId:"AL-20260727-003",title:"磁盘使用率接近阈值",severity:"INFO",severityText:"提示",status:"pending",statusText:"待处理",source:"node-03",firedAt:"13:56",groupNames:["运维组"]}]},build_projects:{summary:{buildingCount:4,todayBuilds:28,successRate:98.6},items:[{pipelineId:1,buildId:101,jobName:"eagle-eye-web",statusText:"构建中",currentStage:"测试",buildUser:"system",progress:68},{pipelineId:2,buildId:102,jobName:"quark-api",statusText:"构建中",currentStage:"镜像打包",buildUser:"李工",progress:42}]},build_distribution:{total:100,items:[{name:"应用构建",count:42},{name:"镜像构建",count:27},{name:"基础设施",count:18},{name:"其他任务",count:13}]},endpoint_distribution:{summary:{total:3},items:[{id:1,nodeName:"edge-01",nodeIp:"10.10.2.11",nodeStatus:!0,heartbeatResults:[{targetName:"API Gateway",targetIp:"10.10.1.10",latencyMs:12.4}]},{id:2,nodeName:"edge-02",nodeIp:"10.10.2.12",nodeStatus:!0,heartbeatResults:[{targetName:"API Gateway",targetIp:"10.10.1.10",latencyMs:18.7}]},{id:3,nodeName:"edge-03",nodeIp:"10.10.2.13",nodeStatus:!1,heartbeatResults:[]}]}};function Ee(t){return JSON.parse(JSON.stringify(m[t]))}a.BigScreenAlertRow=Y,a.BigScreenBuildDistribution=re,a.BigScreenBuildProjects=pe,a.BigScreenDutyContent=z,a.BigScreenEndpointDistribution=ke,a.BigScreenHeader=le,a.BigScreenMetricCard=v,a.BigScreenPanel=i,a.BigScreenRobotSummary=be,a.bigScreenPreviewFixtures=m,a.getBigScreenPreviewData=Ee,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})}));
|
|
1
|
+
(function(a,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(a=typeof globalThis<"u"?globalThis:a||self,e(a.QuarkBigScreenUi={},a.Vue))})(this,(function(a,e){"use strict";const p={key:0,class:"qbs-panel__corner qbs-panel__corner--tl"},_={key:1,class:"qbs-panel__corner qbs-panel__corner--tr"},y={key:2,class:"qbs-panel__corner qbs-panel__corner--bl"},g={key:3,class:"qbs-panel__corner qbs-panel__corner--br"},b={key:0,class:"qbs-panel__bar"},B={key:1,class:"qbs-panel__title"},N={key:2,class:"qbs-panel__header-prefix"},k={key:3,class:"qbs-panel__header-center"},E={key:4,class:"qbs-panel__header-extra"},f={key:0,class:"qbs-panel__live"},S={class:"qbs-panel__body"},u=e.defineComponent({__name:"BigScreenPanel",props:{title:{default:""},accent:{default:"oklch(.82 .13 200)"},liveLabel:{default:""},showBar:{type:Boolean,default:!0},corners:{default:"tl-br"},padding:{default:"md"},bodyLayout:{default:"default"},titleSize:{default:"md"},overflowHidden:{type:Boolean,default:!0}},setup(t){const n=t;function l(o){return n.corners==="all"?!0:n.corners==="none"?!1:o==="tl"||o==="br"}return(o,s)=>(e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(["qbs-panel",[`qbs-panel--padding-${t.padding}`,`qbs-panel--layout-${t.bodyLayout}`,{"qbs-panel--overflow-hidden":t.overflowHidden}]]),style:e.normalizeStyle({"--qbs-accent":t.accent})},[l("tl")?(e.openBlock(),e.createElementBlock("span",p)):e.createCommentVNode("",!0),l("tr")?(e.openBlock(),e.createElementBlock("span",_)):e.createCommentVNode("",!0),l("bl")?(e.openBlock(),e.createElementBlock("span",y)):e.createCommentVNode("",!0),l("br")?(e.openBlock(),e.createElementBlock("span",g)):e.createCommentVNode("",!0),t.title||t.liveLabel||o.$slots["header-center"]||o.$slots["header-extra"]?(e.openBlock(),e.createElementBlock("header",{key:4,class:e.normalizeClass(["qbs-panel__header",`qbs-panel__header--${t.titleSize}`])},[t.showBar?(e.openBlock(),e.createElementBlock("span",b)):e.createCommentVNode("",!0),t.title?(e.openBlock(),e.createElementBlock("span",B,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),o.$slots["header-prefix"]?(e.openBlock(),e.createElementBlock("span",N,[e.renderSlot(o.$slots,"header-prefix",{},void 0,!0)])):e.createCommentVNode("",!0),o.$slots["header-center"]?(e.openBlock(),e.createElementBlock("span",k,[e.renderSlot(o.$slots,"header-center",{},void 0,!0)])):e.createCommentVNode("",!0),o.$slots["header-extra"]||t.liveLabel?(e.openBlock(),e.createElementBlock("span",E,[e.renderSlot(o.$slots,"header-extra",{},()=>[t.liveLabel?(e.openBlock(),e.createElementBlock("span",f,[s[0]||(s[0]=e.createElementVNode("span",{class:"qbs-panel__live-dot"},null,-1)),e.createTextVNode(e.toDisplayString(t.liveLabel),1)])):e.createCommentVNode("",!0)],!0)])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),e.createElementVNode("div",S,[e.renderSlot(o.$slots,"default",{},void 0,!0)])],6))}}),c=(t,n)=>{const l=t.__vccOpts||t;for(const[o,s]of n)l[o]=s;return l},i=c(u,[["__scopeId","data-v-749400b6"]]),V={key:0,class:"qbs-duty-compact"},h={class:"qbs-duty-compact__avatar"},$={class:"qbs-duty-compact__info"},q={class:"qbs-duty-compact__name"},C={class:"qbs-duty-compact__phone"},D={key:0,class:"qbs-duty-compact__tag"},w={key:1,class:"qbs-duty"},I={class:"qbs-duty__summary"},T={class:"qbs-duty__summary-chip"},x={class:"qbs-duty__summary-chip"},A={class:"qbs-duty__summary-chip"},L={class:"qbs-duty__list"},R={class:"qbs-duty__group-header"},P={class:"qbs-duty__users"},z={key:0,class:"qbs-duty__empty"},j=c(e.defineComponent({__name:"BigScreenDutyContent",props:{compact:{type:Boolean,default:!1},personName:{default:""},personPhone:{default:""},personTag:{default:""},date:{default:""},totalGroups:{default:void 0},totalUsers:{default:void 0},groups:{default:()=>[]}},setup(t){const n=t;return(l,o)=>n.compact?(e.openBlock(),e.createElementBlock("div",V,[e.createElementVNode("div",h,e.toDisplayString(n.personName.charAt(0)||"-"),1),e.createElementVNode("div",$,[e.createElementVNode("span",q,e.toDisplayString(n.personName||"暂未排班"),1),e.createElementVNode("span",C,e.toDisplayString(n.personPhone||"—"),1)]),n.personTag?(e.openBlock(),e.createElementBlock("span",D,e.toDisplayString(n.personTag),1)):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",w,[e.createElementVNode("div",I,[e.createElementVNode("div",T,[o[0]||(o[0]=e.createElementVNode("span",null,"日期",-1)),e.createElementVNode("strong",null,e.toDisplayString(n.date||"未同步"),1)]),e.createElementVNode("div",x,[o[1]||(o[1]=e.createElementVNode("span",null,"值班组",-1)),e.createElementVNode("strong",null,e.toDisplayString(n.totalGroups??n.groups.length),1)]),e.createElementVNode("div",A,[o[2]||(o[2]=e.createElementVNode("span",null,"值班人数",-1)),e.createElementVNode("strong",null,e.toDisplayString(n.totalUsers??0),1)])]),e.createElementVNode("div",L,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.groups,s=>{var r;return e.openBlock(),e.createElementBlock("article",{key:s.groupId,class:"qbs-duty__group"},[e.createElementVNode("div",R,[e.createElementVNode("strong",null,e.toDisplayString(s.groupName),1),e.createElementVNode("span",null,e.toDisplayString(((r=s.users)==null?void 0:r.length)||0)+" 人",1)]),e.createElementVNode("div",P,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.users||[],d=>(e.openBlock(),e.createElementBlock("span",{key:d.userId,class:"qbs-duty__user"},e.toDisplayString(d.nickName||d.username),1))),128))])])}),128)),n.groups.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",z,"暂无值班数据"))])]))}}),[["__scopeId","data-v-f5721bce"]]),F={class:"qbs-alert-row__main"},U={class:"qbs-alert-row__copy"},M=["title"],G={class:"qbs-alert-row__meta"},O={class:"qbs-alert-row__group"},H={key:0,class:"qbs-alert-row__owner"},J={key:1,class:"qbs-alert-row__time"},W={key:2,class:"qbs-alert-row__tag"},Q={class:"qbs-alert-row__status"},K={key:0,class:"qbs-alert-row__aside"},Y=c(e.defineComponent({__name:"BigScreenAlertRow",props:{title:{},group:{default:""},owner:{default:""},time:{default:""},tag:{default:""},statusText:{default:""},accent:{default:"#f0a35a"},detailWide:{type:Boolean,default:!1}},emits:["select"],setup(t){const n=t;return(l,o)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["qbs-alert-row",{"qbs-alert-row--detail-wide":n.detailWide}]),style:e.normalizeStyle({"--qbs-alert-accent":n.accent}),type:"button",onClick:o[0]||(o[0]=s=>l.$emit("select"))},[e.createElementVNode("div",F,[e.createElementVNode("div",U,[e.createElementVNode("div",{class:"qbs-alert-row__title",title:n.title},e.toDisplayString(n.title),9,M),e.createElementVNode("div",G,[e.createElementVNode("span",O,e.toDisplayString(n.group),1),n.owner?(e.openBlock(),e.createElementBlock("span",H,e.toDisplayString(n.owner),1)):e.createCommentVNode("",!0),n.time?(e.openBlock(),e.createElementBlock("span",J,e.toDisplayString(n.time),1)):e.createCommentVNode("",!0),n.tag?(e.openBlock(),e.createElementBlock("span",W,e.toDisplayString(n.tag),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Q,[e.renderSlot(l.$slots,"status",{},()=>[e.createTextVNode(e.toDisplayString(n.statusText||"待处理"),1)],!0)])]),l.$slots.aside?(e.openBlock(),e.createElementBlock("aside",K,[e.renderSlot(l.$slots,"aside",{},void 0,!0)])):e.createCommentVNode("",!0)])],6))}}),[["__scopeId","data-v-83959767"]]),X={class:"qbs-metric-card__value"},Z={class:"qbs-metric-card__label"},v=c(e.defineComponent({__name:"BigScreenMetricCard",props:{label:{},value:{default:"—"},tone:{default:"#7dd3fc"},compact:{type:Boolean,default:!1}},setup(t){const n=t;return(l,o)=>n.compact?(e.openBlock(),e.createElementBlock("div",{key:0,class:"qbs-metric-card qbs-metric-card--compact",style:e.normalizeStyle({"--qbs-metric-tone":n.tone})},[e.createElementVNode("span",null,e.toDisplayString(n.label),1),e.createElementVNode("strong",null,[e.renderSlot(l.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(n.value),1)],!0)])],4)):(e.openBlock(),e.createBlock(i,{key:1,class:"qbs-metric-card","body-layout":"metric",padding:"tight",accent:n.tone},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"default",{},()=>[e.createElementVNode("strong",X,e.toDisplayString(n.value),1)],!0),e.createElementVNode("span",Z,e.toDisplayString(n.label),1)]),_:3},8,["accent"]))}}),[["__scopeId","data-v-07353599"]]),ee={class:"qbs-header"},te={class:"qbs-header__body"},ne={class:"qbs-header__brand"},oe={key:0,class:"qbs-header__clock"},le=c(e.defineComponent({__name:"BigScreenHeader",props:{title:{default:"运维监控大屏"},subtitle:{default:"QUARK EAGLE EYE"},timeText:{default:"--:--"},dateText:{default:"--"},weekdayText:{default:""},showClock:{type:Boolean,default:!0}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("section",ee,[l[1]||(l[1]=e.createElementVNode("i",{class:"qbs-header__glow"},null,-1)),e.createElementVNode("div",te,[e.createElementVNode("div",ne,[l[0]||(l[0]=e.createElementVNode("i",{class:"qbs-header__crest"},[e.createElementVNode("b")],-1)),e.createElementVNode("div",null,[e.createElementVNode("p",null,e.toDisplayString(t.subtitle),1),e.createElementVNode("h1",null,e.toDisplayString(t.title),1)])]),t.showClock?(e.openBlock(),e.createElementBlock("div",oe,[e.createElementVNode("strong",null,e.toDisplayString(t.timeText),1),e.createElementVNode("span",null,e.toDisplayString(t.dateText)+" "+e.toDisplayString(t.weekdayText),1)])):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-cc041333"]]),se={class:"qbs-build-dist"},ae={key:0,class:"qbs-build-dist__empty"},re=c(e.defineComponent({__name:"BigScreenBuildDistribution",props:{items:{default:()=>[]},total:{default:0}},setup(t){const n=t,l=o=>`${(o/Math.max(1,n.total||n.items.reduce((s,r)=>s+r.count,0))*100).toFixed(1)}%`;return(o,s)=>(e.openBlock(),e.createElementBlock("div",se,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items.slice(0,8),r=>(e.openBlock(),e.createElementBlock("article",{key:r.name},[e.createElementVNode("div",null,[e.createElementVNode("strong",null,e.toDisplayString(r.name),1),e.createElementVNode("span",null,e.toDisplayString(r.count),1)]),e.createElementVNode("i",null,[e.createElementVNode("b",{style:e.normalizeStyle({width:l(r.count)})},null,4)])]))),128)),n.items.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ae,"暂无构建分布数据"))]))}}),[["__scopeId","data-v-608b33d9"]]),ce={class:"qbs-build-projects"},de={class:"qbs-build-projects__summary"},ie={class:"qbs-build-projects__list"},me={key:0,class:"qbs-build-projects__empty"},pe=c(e.defineComponent({__name:"BigScreenBuildProjects",props:{buildingCount:{default:0},todayBuilds:{default:0},successRate:{default:0},items:{default:()=>[]}},setup(t){const n=l=>`${Math.max(0,Math.min(100,l||0))}%`;return(l,o)=>(e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",de,[e.createElementVNode("span",null,[o[0]||(o[0]=e.createTextVNode("构建中",-1)),e.createElementVNode("strong",null,e.toDisplayString(t.buildingCount),1)]),e.createElementVNode("span",null,[o[1]||(o[1]=e.createTextVNode("今日构建",-1)),e.createElementVNode("strong",null,e.toDisplayString(t.todayBuilds),1)]),e.createElementVNode("span",null,[o[2]||(o[2]=e.createTextVNode("成功率",-1)),e.createElementVNode("strong",null,e.toDisplayString(Number(t.successRate).toFixed(1))+"%",1)])]),e.createElementVNode("div",ie,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items.slice(0,8),s=>(e.openBlock(),e.createElementBlock("article",{key:`${s.pipelineId}-${s.buildId}`},[e.createElementVNode("div",null,[e.createElementVNode("strong",null,e.toDisplayString(s.jobName||`Pipeline-${s.pipelineId}`),1),e.createElementVNode("span",null,e.toDisplayString(s.statusText),1)]),e.createElementVNode("p",null,[e.createElementVNode("span",null,e.toDisplayString(s.currentStage||"等待阶段信息"),1),e.createElementVNode("span",null,e.toDisplayString(s.buildUser||"系统触发"),1)]),e.createElementVNode("i",null,[e.createElementVNode("b",{style:e.normalizeStyle({width:n(s.progress)})},null,4)])]))),128)),t.items.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",me,"当前没有在跑的构建项目"))])]))}}),[["__scopeId","data-v-6c6f003c"]]),_e={class:"qbs-robot"},ye={class:"qbs-robot__head"},ge={class:"qbs-robot__metrics"},be=c(e.defineComponent({__name:"BigScreenRobotSummary",props:{status:{default:"online"},mode:{default:"display_only"},emotion:{default:"neutral"},generatedAt:{default:""},summary:{default:()=>({})},alerts:{default:()=>({})},successRate:{default:0}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",_e,[e.createElementVNode("div",ye,[e.createElementVNode("i",{class:e.normalizeClass(`is-${t.emotion}`)},null,2),e.createElementVNode("div",null,[e.createElementVNode("strong",null,e.toDisplayString(t.status),1),e.createElementVNode("span",null,e.toDisplayString(t.mode)+" · "+e.toDisplayString(t.generatedAt),1)])]),e.createElementVNode("div",ge,[e.createElementVNode("span",null,[l[0]||(l[0]=e.createTextVNode("值班组",-1)),e.createElementVNode("b",null,e.toDisplayString(t.summary.dutyGroups??0),1)]),e.createElementVNode("span",null,[l[1]||(l[1]=e.createTextVNode("今日告警",-1)),e.createElementVNode("b",null,e.toDisplayString(t.summary.todayAlerts??0),1)]),e.createElementVNode("span",null,[l[2]||(l[2]=e.createTextVNode("构建中",-1)),e.createElementVNode("b",null,e.toDisplayString(t.summary.buildingCount??0),1)]),e.createElementVNode("span",null,[l[3]||(l[3]=e.createTextVNode("终端节点",-1)),e.createElementVNode("b",null,e.toDisplayString(t.summary.endpointNodes??0),1)])])]))}}),[["__scopeId","data-v-534c73e7"]]),Be={class:"qbs-endpoints"},Ne={key:0,class:"qbs-endpoints__empty"},ke=c(e.defineComponent({__name:"BigScreenEndpointDistribution",props:{items:{default:()=>[]}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",Be,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,o=>{var s;return e.openBlock(),e.createElementBlock("article",{key:o.id},[e.createElementVNode("div",null,[e.createElementVNode("strong",null,e.toDisplayString(o.nodeName),1),e.createElementVNode("span",{class:e.normalizeClass({offline:!o.nodeStatus})},e.toDisplayString(o.nodeStatus?"在线":"离线"),3)]),e.createElementVNode("small",null,e.toDisplayString(o.nodeIp),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((s=o.heartbeatResults)==null?void 0:s.slice(0,3),r=>{var d;return e.openBlock(),e.createElementBlock("p",{key:r.targetName},e.toDisplayString(r.targetName||r.targetIp)+" · "+e.toDisplayString(((d=r.latencyMs)==null?void 0:d.toFixed(1))??"—")+" ms",1)}),128))])}),128)),t.items.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Ne,"暂无终端分布数据"))]))}}),[["__scopeId","data-v-9abd8314"]]),Ee={class:"qbs-embed"},fe=["src","title"],Se={key:1},ue=c(e.defineComponent({__name:"BigScreenExternalEmbed",props:{url:{default:""},title:{default:"外部仪表盘"}},setup(t){const n=t,l=e.computed(()=>{try{const o=new URL(n.url);return["http:","https:"].includes(o.protocol)?o.toString():""}catch{return""}});return(o,s)=>(e.openBlock(),e.createElementBlock("section",Ee,[l.value?(e.openBlock(),e.createElementBlock("iframe",{key:0,src:l.value,title:t.title,loading:"lazy",referrerpolicy:"no-referrer",sandbox:"allow-scripts allow-same-origin allow-forms allow-popups",allow:"fullscreen"},null,8,fe)):(e.openBlock(),e.createElementBlock("div",Se,"请在 Props JSON 中配置 http(s) 外部仪表盘 URL。"))]))}}),[["__scopeId","data-v-f20c22f6"]]),m={screen_header:{dateText:"2026-07-27",timeText:"14:30",weekdayText:"星期一"},robot:{status:"online",mode:"guard",emotion:"neutral",generatedAt:"2026-07-27 14:30:00",summary:{dutyGroups:3,todayAlerts:12,buildingCount:4,endpointNodes:86},alerts:{todayTotal:12,todayPending:3,criticalCount:1,warningCount:5},builds:{buildingCount:4,todayBuilds:28,successRate:98.6}},duty_today:{date:"2026-07-27",totalGroups:3,totalUsers:8,groups:[{groupId:1,groupName:"平台组",users:[{userId:101,nickName:"张工",username:"zhang"},{userId:102,nickName:"李工",username:"li"}]},{groupId:2,groupName:"网络组",users:[{userId:103,nickName:"王工",username:"wang"}]}]},alert_latest:{total:3,stats:{todayTotal:12,todayPending:3,overdueTotal:1,criticalCount:1,warningCount:5,infoCount:6},items:[{id:1,alertId:"AL-20260727-001",title:"边缘节点延迟升高",severity:"WARN",severityText:"警告",status:"pending",statusText:"待处理",source:"edge-01",firedAt:"14:20",groupNames:["网络组"]},{id:2,alertId:"AL-20260727-002",title:"构建队列等待时间过长",severity:"CRITICAL",severityText:"严重",status:"processing",statusText:"处理中",source:"CI/CD",firedAt:"14:08",groupNames:["平台组"]},{id:3,alertId:"AL-20260727-003",title:"磁盘使用率接近阈值",severity:"INFO",severityText:"提示",status:"pending",statusText:"待处理",source:"node-03",firedAt:"13:56",groupNames:["运维组"]}]},build_projects:{summary:{buildingCount:4,todayBuilds:28,successRate:98.6},items:[{pipelineId:1,buildId:101,jobName:"eagle-eye-web",statusText:"构建中",currentStage:"测试",buildUser:"system",progress:68},{pipelineId:2,buildId:102,jobName:"quark-api",statusText:"构建中",currentStage:"镜像打包",buildUser:"李工",progress:42}]},build_distribution:{total:100,items:[{name:"应用构建",count:42},{name:"镜像构建",count:27},{name:"基础设施",count:18},{name:"其他任务",count:13}]},endpoint_distribution:{summary:{total:3},items:[{id:1,nodeName:"edge-01",nodeIp:"10.10.2.11",nodeStatus:!0,heartbeatResults:[{targetName:"API Gateway",targetIp:"10.10.1.10",latencyMs:12.4}]},{id:2,nodeName:"edge-02",nodeIp:"10.10.2.12",nodeStatus:!0,heartbeatResults:[{targetName:"API Gateway",targetIp:"10.10.1.10",latencyMs:18.7}]},{id:3,nodeName:"edge-03",nodeIp:"10.10.2.13",nodeStatus:!1,heartbeatResults:[]}]}};function Ve(t){return JSON.parse(JSON.stringify(m[t]))}a.BigScreenAlertRow=Y,a.BigScreenBuildDistribution=re,a.BigScreenBuildProjects=pe,a.BigScreenDutyContent=j,a.BigScreenEndpointDistribution=ke,a.BigScreenExternalEmbed=ue,a.BigScreenHeader=le,a.BigScreenMetricCard=v,a.BigScreenPanel=i,a.BigScreenRobotSummary=be,a.bigScreenPreviewFixtures=m,a.getBigScreenPreviewData=Ve,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})}));
|