Add agent_incidents dedup, overview/incidents/timeline API, mission board UI with fleet rail, kanban, context panel, mobile tabs, poll and keyboard shortcuts. Co-authored-by: Cursor <cursoragent@cursor.com>
450 lines
25 KiB
HTML
450 lines
25 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="pt-BR">
|
|
<head>
|
|
<meta charset="UTF-8"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>Ligbox Ops — Support Desk</title>
|
|
<link rel="stylesheet" href="/assets/styles.css?v=20260619tickets2"/>
|
|
<link rel="stylesheet" href="/assets/tickets-workspace.css?v=20260619tickets2"/>
|
|
<link rel="stylesheet" href="/assets/agentic-ops.css?v=20260620v2"/>
|
|
</head>
|
|
<body>
|
|
<svg width="0" height="0" style="position:absolute;visibility:hidden" aria-hidden="true" focusable="false">
|
|
<defs>
|
|
<linearGradient id="lg-dashboard" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
<stop offset="0%" stop-color="#f6f6f8"/>
|
|
<stop offset="100%" stop-color="#d8d6dc"/>
|
|
</linearGradient>
|
|
<linearGradient id="lg-overview" x1="0%" y1="0%" x2="0%" y2="100%">
|
|
<stop offset="0%" stop-color="#ff9fb5"/>
|
|
<stop offset="100%" stop-color="#8d233d"/>
|
|
</linearGradient>
|
|
<linearGradient id="lg-ticket" x1="0%" y1="0%" x2="0%" y2="100%">
|
|
<stop offset="0%" stop-color="#ffd36d"/>
|
|
<stop offset="100%" stop-color="#e29b20"/>
|
|
</linearGradient>
|
|
<linearGradient id="lg-target" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
<stop offset="0%" stop-color="#ff9aa4"/>
|
|
<stop offset="100%" stop-color="#d11f42"/>
|
|
</linearGradient>
|
|
<linearGradient id="lg-calendar" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
<stop offset="0%" stop-color="#b38dff"/>
|
|
<stop offset="100%" stop-color="#6b42c9"/>
|
|
</linearGradient>
|
|
<linearGradient id="lg-building" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
<stop offset="0%" stop-color="#b9dbff"/>
|
|
<stop offset="100%" stop-color="#4c8fd5"/>
|
|
</linearGradient>
|
|
<linearGradient id="lg-server" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
<stop offset="0%" stop-color="#8b929e"/>
|
|
<stop offset="100%" stop-color="#4b4f58"/>
|
|
</linearGradient>
|
|
<linearGradient id="lg-gear" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
<stop offset="0%" stop-color="#f2f3f7"/>
|
|
<stop offset="100%" stop-color="#9aa0ab"/>
|
|
</linearGradient>
|
|
<linearGradient id="lg-chat" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
<stop offset="0%" stop-color="#6fc1ff"/>
|
|
<stop offset="100%" stop-color="#2f6ef0"/>
|
|
</linearGradient>
|
|
<linearGradient id="lg-admin" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
<stop offset="0%" stop-color="#c07aff"/>
|
|
<stop offset="100%" stop-color="#6c2eb9"/>
|
|
</linearGradient>
|
|
|
|
<filter id="nav-shadow" x="-25%" y="-25%" width="150%" height="150%">
|
|
<feDropShadow dx="0" dy="3" stdDeviation="2.5" flood-color="#000000" flood-opacity="0.28"/>
|
|
</filter>
|
|
|
|
<symbol id="icon-dashboard" viewBox="0 0 64 64">
|
|
<rect x="8" y="6" width="48" height="52" rx="10" fill="url(#lg-dashboard)" stroke="#b8b3bf" stroke-width="2"/>
|
|
<rect x="14" y="12" width="36" height="40" rx="6" fill="#f7fbff" stroke="#c9d2db"/>
|
|
<rect x="18" y="32" width="8" height="16" rx="2" fill="#2dc7b7"/>
|
|
<rect x="29" y="22" width="8" height="26" rx="2" fill="#57b5ff"/>
|
|
<rect x="40" y="16" width="8" height="32" rx="2" fill="#ef6179"/>
|
|
<rect x="12" y="8" width="44" height="6" rx="3" fill="#ffffff" opacity="0.55"/>
|
|
</symbol>
|
|
|
|
<symbol id="icon-overview" viewBox="0 0 64 64">
|
|
<path d="M32 6 51 13v15c0 14-8.9 23.7-19 29-10.1-5.3-19-15-19-29V13L32 6Z" fill="url(#lg-overview)" stroke="#f1c2cf" stroke-width="2.2"/>
|
|
<path d="M32 13 45 18v10c0 9.5-5.8 16.5-13 20.8-7.2-4.3-13-11.3-13-20.8V18L32 13Z" fill="#fff3f6" opacity="0.85"/>
|
|
<path d="M20 18h24v10c0 8.6-5.2 14.9-12 18.9-6.8-4-12-10.3-12-18.9V18Z" fill="#8e1f3a"/>
|
|
</symbol>
|
|
|
|
<symbol id="icon-tickets" viewBox="0 0 64 64">
|
|
<path d="M10 18a6 6 0 0 0 6-6h32a6 6 0 0 0 6 6v8a6 6 0 0 0 0 12v8a6 6 0 0 0-6 6H16a6 6 0 0 0-6-6v-8a6 6 0 0 0 0-12v-8Z" fill="url(#lg-ticket)" stroke="#d38b1a" stroke-width="2"/>
|
|
<path d="M24 18v28" stroke="#f9e0a9" stroke-width="2" stroke-dasharray="3 3"/>
|
|
<path d="m39 22 2.8 5.6 6.2.9-4.5 4.4 1.1 6.2-5.6-2.9-5.6 2.9 1.1-6.2-4.5-4.4 6.2-.9L39 22Z" fill="#7d4510"/>
|
|
</symbol>
|
|
|
|
<symbol id="icon-leads" viewBox="0 0 64 64">
|
|
<circle cx="30" cy="34" r="20" fill="url(#lg-target)" stroke="#f1a5b1" stroke-width="2"/>
|
|
<circle cx="30" cy="34" r="13" fill="#ffd9df" opacity="0.88"/>
|
|
<circle cx="30" cy="34" r="7" fill="#fff"/>
|
|
<circle cx="30" cy="34" r="3.8" fill="#df2d51"/>
|
|
<path d="m37 27 13-9 4 4-9 13-1.6-6.5L37 27Z" fill="#4ba3ff" stroke="#2d6fd1" stroke-width="1.4" stroke-linejoin="round"/>
|
|
</symbol>
|
|
|
|
<symbol id="icon-events" viewBox="0 0 64 64">
|
|
<rect x="10" y="14" width="44" height="38" rx="9" fill="url(#lg-calendar)" stroke="#cdb8ff" stroke-width="2"/>
|
|
<rect x="10" y="14" width="44" height="10" rx="9" fill="#f7efff" opacity="0.9"/>
|
|
<path d="M20 10v10M44 10v10" stroke="#7c52dd" stroke-width="4" stroke-linecap="round"/>
|
|
<g fill="#efe7ff">
|
|
<rect x="18" y="28" width="6" height="6" rx="1.2"/>
|
|
<rect x="28" y="28" width="6" height="6" rx="1.2"/>
|
|
<rect x="38" y="28" width="6" height="6" rx="1.2"/>
|
|
<rect x="18" y="38" width="6" height="6" rx="1.2"/>
|
|
<rect x="28" y="38" width="6" height="6" rx="1.2"/>
|
|
</g>
|
|
<circle cx="47" cy="46" r="9" fill="#8a57da" stroke="#e6d8ff" stroke-width="1.8"/>
|
|
<path d="m47 40 1.7 3.5 3.8.6-2.7 2.6.6 3.8-3.4-1.8-3.4 1.8.6-3.8-2.7-2.6 3.8-.6L47 40Z" fill="#fff3a7"/>
|
|
</symbol>
|
|
|
|
<symbol id="icon-tenants" viewBox="0 0 64 64">
|
|
<rect x="14" y="10" width="28" height="42" rx="4" fill="url(#lg-building)" stroke="#7ab3ea" stroke-width="2"/>
|
|
<rect x="28" y="18" width="22" height="34" rx="4" fill="#98cbf7" stroke="#5f9ed8" stroke-width="2"/>
|
|
<g fill="#eaf6ff">
|
|
<rect x="19" y="16" width="5" height="5" rx="1"/>
|
|
<rect x="27" y="16" width="5" height="5" rx="1"/>
|
|
<rect x="19" y="25" width="5" height="5" rx="1"/>
|
|
<rect x="27" y="25" width="5" height="5" rx="1"/>
|
|
<rect x="19" y="34" width="5" height="5" rx="1"/>
|
|
<rect x="27" y="34" width="5" height="5" rx="1"/>
|
|
<rect x="33" y="23" width="5" height="5" rx="1"/>
|
|
<rect x="41" y="23" width="5" height="5" rx="1"/>
|
|
<rect x="33" y="32" width="5" height="5" rx="1"/>
|
|
<rect x="41" y="32" width="5" height="5" rx="1"/>
|
|
</g>
|
|
<rect x="29" y="42" width="8" height="10" rx="1.5" fill="#5a7ca0"/>
|
|
</symbol>
|
|
|
|
<symbol id="icon-infra" viewBox="0 0 64 64">
|
|
<rect x="16" y="8" width="32" height="48" rx="6" fill="url(#lg-server)" stroke="#969daa" stroke-width="2"/>
|
|
<g fill="#2a2f38" stroke="#6c727d" stroke-width="1">
|
|
<rect x="20" y="14" width="24" height="10" rx="2"/>
|
|
<rect x="20" y="28" width="24" height="10" rx="2"/>
|
|
<rect x="20" y="42" width="24" height="8" rx="2"/>
|
|
</g>
|
|
<g>
|
|
<circle cx="25" cy="19" r="1.8" fill="#ff5f72"/>
|
|
<circle cx="25" cy="33" r="1.8" fill="#ff5f72"/>
|
|
<circle cx="25" cy="46" r="1.6" fill="#ff5f72"/>
|
|
<rect x="30" y="18" width="10" height="2" rx="1" fill="#d9dde5"/>
|
|
<rect x="30" y="32" width="10" height="2" rx="1" fill="#d9dde5"/>
|
|
<rect x="30" y="45" width="10" height="2" rx="1" fill="#d9dde5"/>
|
|
</g>
|
|
</symbol>
|
|
|
|
<symbol id="icon-account" viewBox="0 0 64 64">
|
|
<circle cx="32" cy="32" r="10" fill="#872338"/>
|
|
<path d="M32 10 36.5 14.1 42.7 13.3 45 19.1 50.9 21.4 50.1 27.6 54.2 32 50.1 36.4 50.9 42.6 45 44.9 42.7 50.7 36.5 49.9 32 54 27.5 49.9 21.3 50.7 19 44.9 13.1 42.6 13.9 36.4 9.8 32 13.9 27.6 13.1 21.4 19 19.1 21.3 13.3 27.5 14.1Z" fill="url(#lg-gear)" stroke="#b9bec8" stroke-width="2" stroke-linejoin="round"/>
|
|
<circle cx="32" cy="32" r="11.5" fill="none" stroke="#dfe2e8" stroke-width="2"/>
|
|
</symbol>
|
|
|
|
<symbol id="icon-messages" viewBox="0 0 64 64">
|
|
<path d="M15 14h26c6.1 0 11 4.9 11 11v9c0 6.1-4.9 11-11 11H31l-10 8v-8h-6c-6.1 0-11-4.9-11-11v-9c0-6.1 4.9-11 11-11Z" fill="url(#lg-chat)" stroke="#7fccff" stroke-width="2"/>
|
|
<rect x="16" y="24" width="20" height="3.4" rx="1.7" fill="#eef7ff"/>
|
|
<rect x="16" y="31" width="24" height="3.4" rx="1.7" fill="#eef7ff"/>
|
|
<rect x="16" y="38" width="17" height="3.4" rx="1.7" fill="#eef7ff"/>
|
|
<circle cx="48" cy="18" r="7" fill="#ff6d85" stroke="#ffb1be" stroke-width="2"/>
|
|
</symbol>
|
|
|
|
<symbol id="icon-admin" viewBox="0 0 64 64">
|
|
<circle cx="24" cy="25" r="11" fill="url(#lg-admin)" stroke="#d8b7ff" stroke-width="2"/>
|
|
<circle cx="41" cy="26" r="10" fill="#8a45dd" stroke="#d8b7ff" stroke-width="2"/>
|
|
<path d="M10 51c0-8.3 6.7-15 15-15h1c8.3 0 15 6.7 15 15v3H10v-3Z" fill="#7a34cb"/>
|
|
<path d="M30 52c0-7.2 5.8-13 13-13s13 5.8 13 13v2H30v-2Z" fill="#5c27a3"/>
|
|
</symbol>
|
|
|
|
<symbol id="icon-overview-home" viewBox="0 0 64 64">
|
|
<rect x="8" y="10" width="48" height="44" rx="8" fill="#eef4ff" stroke="#9bbcff" stroke-width="2"/>
|
|
<rect x="14" y="16" width="14" height="12" rx="3" fill="#2f6fed" opacity="0.9"/>
|
|
<rect x="32" y="16" width="18" height="12" rx="3" fill="#dbeafe"/>
|
|
<rect x="14" y="32" width="36" height="16" rx="3" fill="#fff" stroke="#c7d7fe"/>
|
|
<path d="M14 32h36" stroke="#c7d7fe"/>
|
|
<rect x="18" y="36" width="10" height="2.5" rx="1" fill="#64748b"/>
|
|
<rect x="32" y="36" width="14" height="2.5" rx="1" fill="#64748b"/>
|
|
</symbol>
|
|
|
|
<symbol id="icon-infra2" viewBox="0 0 64 64">
|
|
<rect x="6" y="8" width="52" height="48" rx="8" fill="#0f172a" stroke="#38bdf8" stroke-width="2"/>
|
|
<circle cx="32" cy="32" r="14" fill="none" stroke="#22d3ee" stroke-width="2" opacity="0.5"/>
|
|
<circle cx="32" cy="32" r="8" fill="none" stroke="#38bdf8" stroke-width="1.5" opacity="0.7"/>
|
|
<path d="M32 18v28M18 32h28" stroke="#38bdf8" stroke-width="1" opacity="0.35"/>
|
|
<circle cx="32" cy="32" r="3" fill="#22d3ee"/>
|
|
<circle cx="44" cy="22" r="4" fill="#ef4444" stroke="#fecaca" stroke-width="1.2"/>
|
|
<path d="M36 28 L41 24" stroke="#f87171" stroke-width="2" stroke-linecap="round"/>
|
|
<rect x="12" y="12" width="8" height="3" rx="1" fill="#22c55e" opacity="0.9"/>
|
|
<rect x="12" y="49" width="14" height="3" rx="1" fill="#64748b"/>
|
|
</symbol>
|
|
</defs>
|
|
</svg>
|
|
<div class="shell">
|
|
<aside class="sidebar">
|
|
<div class="brand">
|
|
<h1>Ligbox <span class="brand-ops">Ops</span></h1>
|
|
<p>Support Desk · Ibytera</p>
|
|
</div>
|
|
<nav class="nav">
|
|
<button type="button" data-view="dashboard" data-module="core" class="active nav-item nav-item-dashboard">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-dashboard"/></svg></span>
|
|
<span class="nav-label">Dashboard</span>
|
|
</button>
|
|
<button type="button" data-view="overview" data-module="overview" id="nav-overview" class="nav-item nav-item-overview">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-overview"/></svg></span>
|
|
<span class="nav-label">Overview</span>
|
|
</button>
|
|
<button type="button" data-view="overview-home" data-module="overview-home" id="nav-overview-home" class="nav-item nav-item-overview-home">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-overview-home"/></svg></span>
|
|
<span class="nav-label">Serviços IaaS</span>
|
|
</button>
|
|
<button type="button" data-view="tickets" data-module="core" class="nav-item nav-item-tickets">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-tickets"/></svg></span>
|
|
<span class="nav-label">Tickets</span>
|
|
</button>
|
|
<button type="button" data-view="leads" data-module="leads" id="nav-leads" hidden class="nav-item nav-item-leads">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-leads"/></svg></span>
|
|
<span class="nav-label">Leads</span>
|
|
</button>
|
|
<button type="button" data-view="events" data-module="events" id="nav-events" class="nav-item nav-item-events">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-events"/></svg></span>
|
|
<span class="nav-label">Eventos</span>
|
|
</button>
|
|
<button type="button" data-view="tenants" data-module="tenants" id="nav-tenants" class="nav-item nav-item-tenants">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-tenants"/></svg></span>
|
|
<span class="nav-label">Tenants</span>
|
|
</button>
|
|
<button type="button" data-view="email-migration" data-module="email-migration" id="nav-email-migration" class="nav-item nav-item-email-migration">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-events"/></svg></span>
|
|
<span class="nav-label">Migração E-mail</span>
|
|
</button>
|
|
<button type="button" data-view="infra" data-module="infra" class="nav-item nav-item-infra">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-infra"/></svg></span>
|
|
<span class="nav-label">INFRA CODE</span>
|
|
</button>
|
|
<button type="button" data-view="infra2" data-module="infra2-soc" class="nav-item nav-item-infra2">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-infra2"/></svg></span>
|
|
<span class="nav-label">Infra 2 <span class="nav-badge-new">SOC</span></span>
|
|
</button>
|
|
<button type="button" data-view="agentic-ops" data-module="agentic-ops" id="nav-agentic-ops" class="nav-item nav-item-agentic">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-infra"/></svg></span>
|
|
<span class="nav-label">Agentic Ops</span>
|
|
</button>
|
|
<button type="button" data-view="account" data-module="core" id="nav-account" class="nav-item nav-item-account">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-account"/></svg></span>
|
|
<span class="nav-label">Minha conta</span>
|
|
</button>
|
|
<button type="button" data-view="messages" data-module="messages" id="nav-messages" hidden class="nav-item nav-item-messages">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-messages"/></svg></span>
|
|
<span class="nav-label">Mensagens</span>
|
|
</button>
|
|
<button type="button" data-view="admin" data-module="admin-users" id="nav-admin" hidden class="nav-item nav-item-admin">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-admin"/></svg></span>
|
|
<span class="nav-label">Administradores</span>
|
|
</button>
|
|
<button type="button" data-view="modules" data-module="modules-admin" id="nav-modules" hidden class="nav-item nav-item-modules">
|
|
<span class="nav-icon-wrap" aria-hidden="true"><svg class="nav-icon-svg"><use href="#icon-admin"/></svg></span>
|
|
<span class="nav-label">Módulos</span>
|
|
</button>
|
|
</nav>
|
|
<div class="sidebar-user" id="sidebar-user"></div>
|
|
<div class="sidebar-footer">VM122 · ligbox-ops · v0.9.3</div>
|
|
</aside>
|
|
|
|
<main class="main">
|
|
<header class="page-header">
|
|
<div>
|
|
<h2 id="page-title">Dashboard</h2>
|
|
<p id="page-subtitle">Operações Ligbox — onboarding, tickets e monitoramento</p>
|
|
</div>
|
|
<div class="page-toolbar" id="page-toolbar">
|
|
<span id="header-user" class="header-user" hidden></span>
|
|
<span id="global-health" class="status-pill">…</span>
|
|
<button type="button" class="btn btn-ghost btn-sm" id="btn-logout" hidden>Sair</button>
|
|
<button type="button" class="btn btn-ghost" id="btn-refresh">Atualizar</button>
|
|
</div>
|
|
</header>
|
|
|
|
<section id="view-dashboard" class="view active">
|
|
<div id="dashboard-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
|
|
<section id="view-overview" class="view">
|
|
<div id="overview-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
|
|
<section id="view-overview-home" class="view">
|
|
<div id="overview-home-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
|
|
<section id="view-leads" class="view">
|
|
<div id="leads-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
|
|
<section id="view-tickets" class="view">
|
|
<div class="toolbar">
|
|
<button type="button" class="filter-btn active" data-filter="all">Todos</button>
|
|
<button type="button" class="filter-btn" data-filter="active">Activos</button>
|
|
<button type="button" class="filter-btn" data-filter="escalated">Escalados</button>
|
|
<button type="button" class="filter-btn" data-filter="assisting">Assistindo</button>
|
|
<button type="button" class="filter-btn" data-filter="closed">Fechados</button>
|
|
<button type="button" class="filter-btn" data-filter="leads" id="filter-leads" hidden>Leads</button>
|
|
<span class="toolbar-sep">|</span>
|
|
<button type="button" class="filter-btn active" data-source="all" data-kind="ticket">Todas origens</button>
|
|
<button type="button" class="filter-btn" data-source="vm112-onboard" data-kind="ticket">Onboard</button>
|
|
<button type="button" class="filter-btn" data-source="wazuh" data-kind="ticket">Wazuh</button>
|
|
</div>
|
|
<div class="grid-2">
|
|
<div id="ticket-list"><p class="loading">Carregando…</p></div>
|
|
<div id="ticket-detail">
|
|
<div class="card detail-panel"><p class="empty">Selecione um ticket para ver detalhes</p></div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<section id="view-events" class="view">
|
|
<div class="toolbar" id="events-toolbar">
|
|
<button type="button" class="filter-btn active" data-events-tab="webhooks">Webhooks</button>
|
|
<button type="button" class="filter-btn" data-events-tab="purges" id="events-tab-purges" hidden>Histórico de purges</button>
|
|
<button type="button" class="filter-btn" data-events-tab="security" id="events-tab-security" hidden>Segurança wizard</button>
|
|
<button type="button" class="filter-btn" data-events-tab="carbonio" id="events-tab-carbonio" data-module="carbonio-release" hidden>Bloqueios Carbonio</button>
|
|
<span class="toolbar-sep events-webhooks-only">|</span>
|
|
<button type="button" class="filter-btn active events-webhooks-only" data-source="all" data-kind="event">Todas origens</button>
|
|
<button type="button" class="filter-btn events-webhooks-only" data-source="vm112-onboard" data-kind="event">Onboard</button>
|
|
<button type="button" class="filter-btn events-webhooks-only" data-source="wazuh" data-kind="event">Wazuh</button>
|
|
</div>
|
|
<div id="events-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
|
|
<section id="view-tenants" class="view">
|
|
<div id="tenants-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
|
|
<section id="view-email-migration" class="view" hidden>
|
|
<div id="email-migration-content"></div>
|
|
</section>
|
|
<section id="view-infra" class="view">
|
|
<div id="infra-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
|
|
<section id="view-infra2" class="view">
|
|
<div id="infra2-content"><p class="loading">Carregando SOC…</p></div>
|
|
</section>
|
|
|
|
<section id="view-agentic-ops" class="view">
|
|
<div id="agentic-ops-content"><p class="loading">Carregando Agentic Ops…</p></div>
|
|
</section>
|
|
|
|
<section id="view-account" class="view">
|
|
<div id="account-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
|
|
<section id="view-messages" class="view">
|
|
<div id="messages-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
|
|
<section id="view-admin" class="view">
|
|
<div id="admin-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
|
|
<section id="view-modules" class="view">
|
|
<div id="modules-content"><p class="loading">Carregando…</p></div>
|
|
</section>
|
|
</main>
|
|
</div>
|
|
<div id="team-drawer" class="team-drawer hidden" aria-hidden="true">
|
|
<div class="team-drawer-backdrop" data-close-team-drawer></div>
|
|
<aside class="team-drawer-panel" role="dialog" aria-modal="true" aria-labelledby="team-drawer-title">
|
|
<div class="team-drawer-header">
|
|
<h3 id="team-drawer-title">Editar membro</h3>
|
|
<button type="button" class="btn btn-ghost btn-sm" data-close-team-drawer>Fechar</button>
|
|
</div>
|
|
<div id="team-drawer-body" class="team-drawer-body"></div>
|
|
</aside>
|
|
</div>
|
|
<div id="soc-test-modal" class="modal hidden" aria-hidden="true">
|
|
<div class="modal-backdrop" data-close-soc-test-modal></div>
|
|
<div class="modal-panel soc-test-modal-panel" role="dialog" aria-modal="true" aria-labelledby="soc-test-modal-title">
|
|
<div class="modal-header">
|
|
<div>
|
|
<h3 id="soc-test-modal-title">Teste de webhook</h3>
|
|
<p id="soc-test-modal-sub" class="ticket-meta"></p>
|
|
</div>
|
|
<button type="button" class="btn btn-ghost btn-sm" data-close-soc-test-modal>Fechar</button>
|
|
</div>
|
|
<div id="soc-test-modal-body" class="modal-body"></div>
|
|
</div>
|
|
</div>
|
|
<div id="overview-modal" class="modal hidden" aria-hidden="true">
|
|
<div class="modal-backdrop" data-close-overview-modal></div>
|
|
<div class="modal-panel modal-panel-lg" role="dialog" aria-modal="true" aria-labelledby="overview-modal-title">
|
|
<div class="modal-header">
|
|
<div>
|
|
<h3 id="overview-modal-title">Detalhes do tenant</h3>
|
|
<p id="overview-modal-sub" class="ticket-meta"></p>
|
|
</div>
|
|
<button type="button" class="btn btn-ghost btn-sm" data-close-overview-modal>Fechar</button>
|
|
</div>
|
|
<div id="overview-modal-body" class="modal-body"></div>
|
|
</div>
|
|
</div>
|
|
<div id="purge-history-modal" class="modal hidden" aria-hidden="true">
|
|
<div class="modal-backdrop" data-close-purge-history-modal></div>
|
|
<div class="modal-panel modal-panel-lg" role="dialog" aria-modal="true" aria-labelledby="purge-history-modal-title">
|
|
<div class="modal-header">
|
|
<div>
|
|
<h3 id="purge-history-modal-title">Detalhe do purge</h3>
|
|
<p id="purge-history-modal-sub" class="ticket-meta"></p>
|
|
</div>
|
|
<button type="button" class="btn btn-ghost btn-sm" data-close-purge-history-modal>Fechar</button>
|
|
</div>
|
|
<div id="purge-history-modal-body" class="modal-body"></div>
|
|
</div>
|
|
</div>
|
|
<div id="vm112-domain-modal" class="modal hidden" aria-hidden="true">
|
|
<div class="modal-backdrop" data-close-vm112-modal></div>
|
|
<div class="vm112-modal-shell" id="vm112-modal-shell">
|
|
<div class="modal-panel modal-panel-lg" role="dialog" aria-modal="true" aria-labelledby="vm112-domain-modal-title">
|
|
<div class="modal-header">
|
|
<div>
|
|
<h3 id="vm112-domain-modal-title">Domínio VM112</h3>
|
|
<p id="vm112-domain-modal-sub" class="ticket-meta"></p>
|
|
</div>
|
|
<button type="button" class="btn btn-ghost btn-sm" data-close-vm112-modal>Fechar</button>
|
|
</div>
|
|
<div id="vm112-domain-modal-body" class="modal-body"></div>
|
|
</div>
|
|
<aside id="vm112-purge-drawer" class="vm112-purge-drawer" aria-hidden="true" aria-label="Timeline purge">
|
|
<div class="vm112-purge-drawer-head">
|
|
<h4>Execução purge</h4>
|
|
<span id="vm112-purge-elapsed" class="vm112-purge-elapsed">—</span>
|
|
</div>
|
|
<ol id="vm112-purge-timeline" class="vm112-purge-timeline"></ol>
|
|
</aside>
|
|
</div>
|
|
</div>
|
|
<div id="infra-process-modal" class="modal hidden" aria-hidden="true">
|
|
<div class="modal-backdrop" data-close-infra-process-modal></div>
|
|
<div class="modal-panel modal-panel-lg" role="dialog" aria-modal="true" aria-labelledby="infra-process-modal-title">
|
|
<div class="modal-header">
|
|
<div>
|
|
<h3 id="infra-process-modal-title">Processo</h3>
|
|
<p id="infra-process-modal-sub" class="ticket-meta"></p>
|
|
</div>
|
|
<button type="button" class="btn btn-ghost btn-sm" data-close-infra-process-modal>Fechar</button>
|
|
</div>
|
|
<div id="infra-process-modal-body" class="modal-body"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="/assets/auth.js?v=20260619tickets2"></script>
|
|
<script src="/assets/modules.js?v=20260619tickets2"></script>
|
|
<script src="/assets/billing-ui.js?v=20260619tickets2"></script>
|
|
<script src="/assets/desk-live-stub.js?v=20260619tickets2"></script>
|
|
<script src="/assets/tickets-workspace.js?v=20260619tickets2"></script>
|
|
<script src="/assets/tickets-detail-panel.js?v=20260619tickets2"></script>
|
|
<script src="/assets/servicos.js?v=20260620agentic"></script>
|
|
<script src="/assets/agentic-ops.js?v=20260620v2"></script>
|
|
<script src="/assets/app.js?v=20260620v2"></script>
|
|
</body>
|
|
</html>
|