PageSourceSearch

https://bolsa.fenalei.org.br/chunk-7AIGVZU6.js

js fenalei.org.br collected 2026-10-10 00:31:41 UTC 28,378 bytes, 8 lines download raw bytes

1import{a as U}from"./chunk-T6XNMIKL.js";import{A as re,B as oe,C as de,D as le,E as me,F as ce,G as se,I as pe,a as K,b as q,f as G,h as Q,i as X,j as Y,k as W,l as J,m as Z,n as D,q as ee,s as te,x as ie,y as ae,z as ne}from"./chunk-6SFNVIOK.js";import"./chunk-TRXEYKO4.js";import{f as L,g as H,h as O}from"./chunk-S36E75IR.js";import{Ca as P,Eb as B,Fa as o,Fb as V,Gb as b,Hb as r,Ib as c,Jb as u,Kb as j,L as M,R as E,S as y,Ta as R,Vb as h,Wb as k,Xb as A,bb as _,bc as N,ca as f,cb as x,db as z,fb as S,gb as C,hb as m,ib as n,jb as t,kb as p,ob as I,tb as g,vb as l}from"./chunk-KWXGOS2I.js";import{a as T,b as F}from"./chunk-7CGTOI24.js";var xe=(a,i)=>i.adapter,ue=(a,i)=>i.fase,ve=(a,i)=>i.plataforma,$=(a,i)=>i.id;function be(a,i){if(a&1&&(p(0,"fa-icon",10),r(1," processando\u2026 ")),a&2){let e=l();m("icon",e.fa.spinner)}}function fe(a,i){if(a&1&&(p(0,"fa-icon",6),r(1)),a&2){let e=l();m("icon",e.fa.link),o(),u(" Aplicar dedup (",e.dedupSimulado(),") ")}}function ge(a,i){if(a&1&&(p(0,"fa-icon",6),r(1," Dedup entre fontes ")),a&2){let e=l();m("icon",e.fa.link)}}function Se(a,i){if(a&1&&(p(0,"fa-icon",10),r(1," Diagnosticando\u2026 ")),a&2){let e=l(2);m("icon",e.fa.spinner)}}function Ce(a,i){if(a&1&&(p(0,"fa-icon",6),r(1," Diagnosticar piores (IA) ")),a&2){let e=l(2);m("icon",e.fa.doutor)}}function he(a,i){if(a&1){let e=I();n(0,"button",11),g("click",function(){E(e);let s=l();return y(s.diagnosticarPiores())}),_(1,Se,2,1)(2,Ce,2,1),t()}if(a&2){let e=i,d=l();m("disabled",!e.ia_disponivel||d.batchRodando())("title",e.ia_disponivel?"Diagnostica com IA as piores fontes sem veredito recente":"ANTHROPIC_API_KEY n\xE3o configurada no backend"),o(),x(d.batchRodando()?1:2)}}function Ee(a,i){a&1&&(n(0,"div",9)(1,"p",12),r(2,"Carregando\u2026"),t()())}function ye(a,i){if(a&1&&(n(0,"div",13),p(1,"fa-icon",6),r(2," IA-doutora indispon\xEDvel: configure "),n(3,"code",36),r(4,"ANTHROPIC_API_KEY"),t(),r(5," no ambiente do backend. "),t()),a&2){let e=l(2);o(),m("icon",e.fa.alerta)}}function Ae(a,i){a&1&&(n(0,"div",23),r(1,"Ainda sem registros de fase."),t())}function Pe(a,i){if(a&1&&r(0),a&2){let e=l().$implicit,d=l(3);u(" \xB7 ",d.duracao(e.duration_ms)," ")}}function Ie(a,i){if(a&1&&(n(0,"p",18),r(1),t()),a&2){let e=l().$implicit;o(),u("",e.lotes_count," lotes")}}function we(a,i){if(a&1&&(n(0,"p",42),r(1),t()),a&2){let e=l().$implicit;o(),c(e.erro)}}function Te(a,i){if(a&1&&(n(0,"article",37)(1,"div",38)(2,"p",39),r(3),t(),p(4,"fa-icon",40),t(),n(5,"p",41),r(6),h(7,"date"),_(8,Pe,1,1),t(),_(9,Ie,2,1,"p",18),_(10,we,2,1,"p",42),t()),a&2){let e=i.$implicit,d=l(3);m("title",e.erro||""),o(3),c(e.fase),o(),V("text-emerald-400",e.status==="success")("text-red-400",e.status!=="success"),m("icon",e.status==="success"?d.fa.ok:d.fa.erro),o(2),u(" ",A(7,11,e.started_at,"dd/MM HH:mm")," "),o(2),x(e.duration_ms!==null?8:-1),o(),x(e.lotes_count?9:-1),o(),x(e.status!=="success"&&e.erro?10:-1)}}function Fe(a,i){if(a&1&&(n(0,"div",24),S(1,Te,11,14,"article",37,ue),t()),a&2){let e=l();o(),C(e.fases)}}function ke(a,i){if(a&1&&(n(0,"tr")(1,"td",43),r(2),t(),n(3,"td",44),r(4),t(),n(5,"td",45),r(6),t(),n(7,"td",44),r(8),t(),n(9,"td",46),r(10),h(11,"number"),t()()),a&2){let e=i.$implicit;o(2),c(e.adapter),o(2),c(e.fontes),o(2),c(e.ok_24h),o(),b(e.falhando>0?"text-red-400":"text-[var(--bml-text-mute)]"),o(),c(e.falhando),o(2),c(k(11,7,e.lotes_vivos))}}function De(a,i){a&1&&(n(0,"div",23),r(1," Nenhuma detec\xE7\xE3o ainda \u2014 o vigia grava a plataforma de cada fonte a partir da pr\xF3xima rodada do scraper. "),t())}function $e(a,i){if(a&1&&(n(0,"tr")(1,"td")(2,"span",47),r(3),t()(),n(4,"td",44),r(5),t(),n(6,"td",46),r(7),h(8,"number"),t()()),a&2){let e=i.$implicit;o(3),c(e.plataforma),o(2),c(e.fontes),o(2),c(k(8,3,e.lotes_vivos))}}function Me(a,i){if(a&1&&(n(0,"div",26)(1,"table",27)(2,"thead")(3,"tr")(4,"th"),r(5,"Plataforma / SaaS"),t(),n(6,"th",28),r(7,"Fontes"),t(),n(8,"th",28),r(9,"Lotes vivos"),t()()(),n(10,"tbody"),S(11,$e,9,5,"tr",null,ve),t()()()),a&2){let e=l();o(11),C(e.por_plataforma)}}function Re(a,i){if(a&1&&(n(0,"div",23),p(1,"fa-icon",48),r(2," Nenhuma fonte problem\xE1tica."),t()),a&2){let e=l(2);o(),m("icon",e.fa.ok)}}function ze(a,i){if(a&1&&(n(0,"span",54),p(1,"fa-icon",68),r(2," voltou"),t()),a&2){let e=l().$implicit,d=l(3);m("title","Estava triada ("+(e.triagem||"")+") e ALGO MUDOU: plataforma trocou ou lotes reapareceram \u2014 voltou pra revis\xE3o"),o(),m("icon",d.fa.voltar)}}function Be(a,i){if(a&1&&(n(0,"p",56),r(1),t()),a&2){let e=l().$implicit;m("title",e.last_error),o(),c(e.last_error)}}function Ve(a,i){if(a&1&&(n(0,"span",58),r(1),t()),a&2){let e=l().$implicit;o(),c(e.plataforma_detectada)}}function je(a,i){a&1&&(n(0,"span",18),r(1,"\u2014"),t())}function Ne(a,i){if(a&1&&(n(0,"div",53)(1,"span",69),p(2,"fa-icon",6),r(3),t(),n(4,"span",70),r(5),t()(),n(6,"p",71),r(7),t()),a&2){let e=l().$implicit,d=l(3);o(),b(d.corCategoria(e.diag_categoria)),o(),m("icon",d.iconeDiag(e.diag_categoria)),o(),u("",d.labelCategoria(e.diag_categoria)," "),o(2),u("",e.diag_confianca,"%"),o(),m("title",e.diag_resumo||""),o(),c(e.diag_resumo)}}function Le(a,i){a&1&&(n(0,"span",18),r(1,"sem diagn\xF3stico"),t())}function He(a,i){if(a&1&&p(0,"fa-icon",63),a&2){let e=l(4);m("icon",e.fa.spinner)}}function Oe(a,i){if(a&1&&p(0,"fa-icon",64),a&2){let e=l(4);m("icon",e.fa.doutor)}}
1function Ue(a,i){if(a&1&&(p(0,"fa-icon",68),r(1," copiado ")),a&2){let e=l(4);m("icon",e.fa.check)}}function Ke(a,i){if(a&1&&(p(0,"fa-icon",68),r(1," p/ dev ")),a&2){let e=l(4);m("icon",e.fa.clipboard)}}function qe(a,i){if(a&1){let e=I();n(0,"tr")(1,"td",52)(2,"div",53),_(3,ze,3,2,"span",54),n(4,"a",55),r(5),t()(),_(6,Be,2,2,"p",56),t(),n(7,"td",57),r(8),t(),n(9,"td"),_(10,Ve,2,1,"span",58)(11,je,2,0,"span",18),t(),n(12,"td",44),r(13),t(),n(14,"td",44),r(15),t(),n(16,"td",59),r(17),h(18,"date"),t(),n(19,"td",60),_(20,Ne,8,7)(21,Le,2,0,"span",18),t(),n(22,"td",28)(23,"div",61)(24,"button",62),g("click",function(){let s=E(e).$implicit,v=l(3);return y(v.diagnosticar(s))}),_(25,He,1,1,"fa-icon",63)(26,Oe,1,1,"fa-icon",64),t(),n(27,"button",65),g("click",function(){let s=E(e).$implicit,v=l(3);return y(v.editarFonte(s))}),p(28,"fa-icon",64),t(),n(29,"button",66),g("click",function(){let s=E(e).$implicit,v=l(3);return y(v.mandarParaDev(s))}),_(30,Ue,2,1)(31,Ke,2,1),t(),n(32,"button",67),g("click",function(){let s=E(e).$implicit,v=l(3);return y(v.descartar(s))}),p(33,"fa-icon",64),t()()()()}if(a&2){let e=i.$implicit,d=l(2),s=l();o(3),x(e.voltou?3:-1),o(),m("href",e.url_base,P),o(),c(s.hostDe(e.url_base)),o(),x(e.last_error?6:-1),o(),m("title",e.leiloeiro_nome),o(),c(e.leiloeiro_nome),o(2),x(e.plataforma_detectada?10:11),o(2),b(e.consecutive_errors>=10?"text-red-400":e.consecutive_errors>=3?"text-amber-300":"text-[var(--bml-text-mute)]"),o(),u(" ",e.consecutive_errors," "),o(),b(e.lotes_vivos===0?"text-amber-300":"text-[var(--bml-text-dim)]"),o(),c(e.lotes_vivos),o(2),c(e.last_success_at?A(18,20,e.last_success_at,"dd/MM HH:mm"):"nunca"),o(3),x(e.diag_categoria?20:21),o(4),m("disabled",!d.ia_disponivel||s.diagnosticando().has(e.id)),o(),x(s.diagnosticando().has(e.id)?25:26),o(3),m("icon",s.fa.editar),o(2),x(s.copiadoId()===e.id?30:31),o(3),m("icon",s.fa.lixeira)}}function Ge(a,i){if(a&1&&(n(0,"div",30)(1,"table",27)(2,"thead")(3,"tr")(4,"th"),r(5,"Fonte"),t(),n(6,"th",32),r(7,"Leiloeiro"),t(),n(8,"th",49),r(9,"Plataforma"),t(),n(10,"th",50),r(11,"Erros"),t(),n(12,"th",50),r(13,"Lotes"),t(),n(14,"th",51),r(15,"\xDAltimo sucesso"),t(),n(16,"th"),r(17,"Diagn\xF3stico da IA"),t(),p(18,"th",51),t()(),n(19,"tbody"),S(20,qe,34,23,"tr",null,$),t()()()),a&2){let e=l();o(20),C(e.fontes_problematicas)}}function Qe(a,i){a&1&&(r(0," \xB7 "),n(1,"span",79),r(2,"fonte desativada"),t())}function Xe(a,i){if(a&1){let e=I();n(0,"tr")(1,"td",52)(2,"a",55),r(3),t(),n(4,"p",74),r(5),_(6,Qe,3,0),t()(),n(7,"td")(8,"span",75),p(9,"fa-icon",68),r(10),t()(),n(11,"td",76),r(12),t(),n(13,"td",77),r(14),h(15,"date"),p(16,"br"),r(17),t(),n(18,"td",28)(19,"button",78),g("click",function(){let s=E(e).$implicit,v=l(3);return y(v.reabrir(s))}),p(20,"fa-icon",68),r(21," reabrir"),t()()()}if(a&2){let e=i.$implicit,d=l(3);o(2),m("href",e.url_base,P),o(),c(d.hostDe(e.url_base)),o(2),c(e.leiloeiro_nome),o(),x(e.ativa?-1:6),o(2),b(e.triagem==="ajuste_dev"?"bg-amber-500/15 text-amber-300":"bg-zinc-500/15 text-zinc-300"),o(),m("icon",e.triagem==="ajuste_dev"?d.fa.dev:d.fa.lixeira),o(),u("",e.triagem==="ajuste_dev"?" em dev":" descartada"," "),o(),m("title",e.triagem_motivo||""),o(),c(e.triagem_motivo||"\u2014"),o(2),u(" ",A(15,13,e.triagem_em,"dd/MM HH:mm")),o(3),u("",e.triagem_por," "),o(3),m("icon",d.fa.voltar)}}function Ye(a,i){if(a&1&&(n(0,"section",21)(1,"details")(2,"summary",72),r(3),n(4,"span",29),r(5,"\u2014 descartadas/em dev; voltam sozinhas se algo mudar no scraper"),t()(),n(6,"div",73)(7,"table",27)(8,"thead")(9,"tr")(10,"th"),r(11,"Fonte"),t(),n(12,"th",51),r(13,"Situa\xE7\xE3o"),t(),n(14,"th"),r(15,"Motivo"),t(),n(16,"th",34),r(17,"Quando / quem"),t(),p(18,"th",33),t()(),n(19,"tbody"),S(20,Xe,22,16,"tr",null,$),t()()()()()),a&2){let e=l();o(3),u(" Fontes triadas (",e.fontes_triadas.length,") "),o(17),C(e.fontes_triadas)}}function We(a,i){a&1&&(n(0,"div",23),r(1," Nenhum diagn\xF3stico ainda. Use \u201CDiagnosticar piores (IA)\u201D ou o bot\xE3o por fonte acima. "),t())}function Je(a,i){if(a&1&&(n(0,"span",93),r(1),t()),a&2){let e=l().$implicit;o(),u(" plataforma: ",e.plataforma_sugerida," ")}}function Ze(a,i){if(a&1&&(n(0,"span",94),r(1),t()),a&2){let e=l().$implicit;o(),u(" HTTP ",e.http_status," ")}}function et(a,i){if(a&1&&(n(0,"span",95),r(1),t()),a&2){let e=l().$implicit;o(),c(e.modelo)}}function tt(a,i){if(a&1&&(n(0,"article",15)(1,"div",80)(2,"div",81)(3,"span",82),p(4,"fa-icon",6),r(5),t(),n(6,"a",83),r(7),t()(),n(8,"span",18),r(9),h(10,"date"),t()(),n(11,"div",84)(12,"div",85),p(13,"div",86),t(),n(14,"span",70),r(15),t()(),n(16,"p",87),r(17),t(),n(18,"details",88)(19,"summary",89),p(20,"fa-icon",6),r(21," Evid\xEAncia "),t(),n(22,"p",90),r(23),t()(),n(24,"div",91)(25,"span",92),r(26),t(),_(27,Je,2,1,"span",93),_(28,Ze,2,1,"span",94),_(29,et,2,1,"span",95),t()()),a&2){let e=i.$implicit,d=l(3);o(3),b(d.corCategoria(e.categoria)),o(),m("icon",d.iconeDiag(e.categoria)),o(),u("",d.labelCategoria(e.categoria)," "),o(),m("href",e.url_base,P),o(),c(d.hostDe(e.url_base)),o(2),c(A(10,19,e.criado_em,"dd/MM HH:mm")),o(4),b(e.confianca>=70?"bg-emerald-500":e.confianca>=40?"bg-amber-500":"bg-red-500"),B("width",e.confianca,"%"),o(2),u("",e.confianca,"% confian\xE7a"),o(2),c(e.resumo),o(3),m("icon",d.fa.lupa),o(3),c(e.evidencia),o(3),u(" \u2192 ",d.labelAcao(e.acao_sugerida)," "),o(),x(e.plataforma_sugerida?27:-1),o(),x(e.http_status!==null?28:-1),o(),x(e.modelo?29:-1)}}function it(a,i){if(a&1&&(n(0,"div",31),S(1,tt,30,22,"article",15,$),t()),a&2){let e=l(2);o(),C(e.diags())}}function at(a,i){if(a&1&&(n(0,"tr")(1,"td",43),r(2),t(),n(3,"td")(4,"span",96
1),r(5),t()(),n(6,"td",97),r(7),h(8,"date"),t(),n(9,"td",46),r(10),t(),n(11,"td",98),r(12),t()()),a&2){let e=i.$implicit,d=l(2);o(2),c(e.fase),o(2),b(e.status==="success"?"bg-emerald-500/15 text-emerald-300":"bg-red-500/15 text-red-300"),o(),c(e.status),o(2),c(A(8,8,e.started_at,"dd/MM HH:mm:ss")),o(3),c(e.duration_ms!==null?d.duracao(e.duration_ms):"\u2014"),o(),m("title",e.erro||""),o(),c(e.erro||"\u2014")}}function nt(a,i){a&1&&(n(0,"tr")(1,"td",99),r(2,"Sem runs registrados ainda."),t()())}function rt(a,i){if(a&1&&(_(0,ye,6,1,"div",13),n(1,"section",14)(2,"article",15)(3,"p",1),r(4,"Fontes ativas"),t(),n(5,"p",16),r(6),t()(),n(7,"article",15)(8,"p",1),r(9,"OK \xFAltimas 24h"),t(),n(10,"p",17),r(11),t(),n(12,"p",18),r(13),t()(),n(14,"article",15)(15,"p",1),r(16,"Falhando (\u22653)"),t(),n(17,"p",19),r(18),t(),n(19,"p",18),r(20,"erros consecutivos"),t()(),n(21,"article",15)(22,"p",1),r(23,"Rodam mas 0 lotes"),t(),n(24,"p",19),r(25),t(),n(26,"p",18),r(27,"o bucket da IA-doutora"),t()(),n(28,"article",15)(29,"p",1),r(30,"Plataforma detectada"),t(),n(31,"p",20),r(32),t(),n(33,"p",18),r(34,"vigia de migra\xE7\xE3o ativo"),t()()(),n(35,"section",21)(36,"h2",22),r(37,"\xDAltima execu\xE7\xE3o por fase"),t(),_(38,Ae,2,0,"div",23)(39,Fe,3,0,"div",24),t(),n(40,"section",25)(41,"div")(42,"h2",22),r(43,"Por adapter"),t(),n(44,"div",26)(45,"table",27)(46,"thead")(47,"tr")(48,"th"),r(49,"Adapter"),t(),n(50,"th",28),r(51,"Fontes"),t(),n(52,"th",28),r(53,"OK 24h"),t(),n(54,"th",28),r(55,"Falhando"),t(),n(56,"th",28),r(57,"Lotes vivos"),t()()(),n(58,"tbody"),S(59,ke,12,9,"tr",null,xe),t()()()(),n(61,"div")(62,"h2",22),r(63,"Plataformas detectadas (vigia)"),t(),_(64,De,2,0,"div",23)(65,Me,13,0,"div",26),t()(),n(66,"section",21)(67,"h2",22),r(68),n(69,"span",29),r(70),t()(),_(71,Re,3,1,"div",23)(72,Ge,22,0,"div",30),t(),_(73,Ye,22,1,"section",21),n(74,"section",21)(75,"h2",22),r(76),t(),_(77,We,2,0,"div",23)(78,it,3,0,"div",31),t(),n(79,"section")(80,"h2",22),r(81,"Hist\xF3rico de fases (7 dias)"),t(),n(82,"div",26)(83,"table",27)(84,"thead")(85,"tr")(86,"th",32),r(87,"Fase"),t(),n(88,"th",33),r(89,"Status"),t(),n(90,"th",34),r(91,"In\xEDcio"),t(),n(92,"th",35),r(93,"Dura\xE7\xE3o"),t(),n(94,"th"),r(95,"Erro"),t()()(),n(96,"tbody"),S(97,at,13,11,"tr",null,z,!1,nt,3,0,"tr"),t()()()()),a&2){let e=i,d=l();x(e.ia_disponivel?-1:0),o(6),c(e.cards.fontes_ativas),o(5),c(e.cards.ok_24h),o(2),u("",d.pct(e.cards.ok_24h,e.cards.fontes_ativas)," das ativas"),o(4),b(e.cards.falhando>0?"text-red-400":"text-[var(--bml-text)]"),o(),c(e.cards.falhando),o(6),b(e.cards.zero_lotes>0?"text-amber-300":"text-[var(--bml-text)]"),o(),c(e.cards.zero_lotes),o(7),c(e.cards.com_plataforma),o(6),x(e.fases.length===0?38:39),o(21),C(e.por_adapter),o(5),x(e.por_plataforma.length===0?64:65),o(4),u(" Fontes problem\xE1ticas (",e.fontes_problematicas.length,") "),o(2),j("\u2014 falhando ou com 0 lotes vivos apesar de sucesso recente \xB7 ",e.cards.descartadas," descartadas \xB7 ",e.cards.em_dev," em dev"),o(),x(e.fontes_problematicas.length===0?71:72),o(2),x(e.fontes_triadas.length>0?73:-1),o(3),u("Diagn\xF3sticos da IA-doutora (",d.diags().length,")"),o(),x(d.diags().length===0?77:78),o(20),C(d.runs())}}var _e=class a{api=M(U);pollTimer=null;carregando=f(!0);ov=f(null);diags=f([]);historico=f(null);diagnosticando=f(new Set);batchRodando=f(!1);dedupRodando=f(!1);dedupSimulado=f(null);copiadoId=f(null);fa={atualizar:pe,link:J,doutor:X,spinner:re,ok:ie,erro:W,editar:ae,clipboard:Y,lixeira:ee,voltar:de,check:te,lupa:G,dev:se,alerta:oe};runs=N(()=>this.historico()?.runs??[]);constructor(){this.recarregar()}ngOnDestroy(){this.pararPolling()}recarregar(){this.carregando.set(!0),this.api.scraperOverview().subscribe({next:i=>{this.ov.set(i),this.carregando.set(!1)},error:()=>this.carregando.set(!1)}),this.api.listarDiagnosticos().subscribe({next:i=>this.diags.set(i)}),this.api.scraperRuns(7).subscribe({next:i=>this.historico.set(i)})}diagnosticar(i){let e=new Set(this.diagnosticando());e.add(i.id),this.diagnosticando.set(e),this.api.diagnosticarFonte(i.id).subscribe({next:d=>{this.diags.set([d,...this.diags()]);let s=this.ov();if(s){let v=s.fontes_problematicas.map(w=>w.id===i.id?F(T({},w),{diag_categoria:d.categoria,diag_acao:d.acao_sugerida,diag_confianca:d.confianca,diag_resumo:d.resumo,diag_em:d.criado_em}):w);this.ov.set(F(T({},s),{fontes_problematicas:v}))}this.tirarDoSet(i.id)},error:()=>this.tirarDoSet(i.id)})}editarFonte(i){let e=window.prompt("URL da fonte (corrija truncamento/erro de scraper):",i.url_base);if(e===null)return;let d=window.prompt("Adapter ('generic', 'ljb'\u2026):",i.adapter);d!==null&&this.api.editarFonte(i.id,{url_base:e.trim(),adapter:d.trim()}).subscribe({next:()=>this.recarregar(),error:s=>window.alert(`Falha ao editar: ${s?.error?.detail||s.message}`)})}descartar(i){let e=window.prompt(`Descartar ${this.hostDe(i.url_base)} \u2014 sem solu\xE7\xE3o por ora.
2Ela SAI da lista e S\xD3 VOLTA se a plataforma mudar ou lotes reaparecerem.
3
4Motivo (obrigat\xF3rio):`);if(!e||!e.trim())return;let d=window.confirm(`Tamb\xE9m DESATIVAR a fonte (para de raspar de vez)?
5
6OK = desativa (site morto / n\xE3o \xE9 leil\xE3o \u2014 n\xE3o volta sozinha)
7Cancelar = s\xF3 descarta (o scraper continua vigiando mudan\xE7as)`);this.api.triagemFonte(i.id,{acao:"descartar",motivo:e.trim(),desativar:d}).subscribe({next:()=>this.recarregar(),error:s=>window.alert(`Falha ao descartar: ${s?.error?.detail||s.message}`)})}mandarParaDev(i){let e=this.promptDev(i);navigator.clipboard?.writeText(e).catch(()=>{}),this.copiadoId.set(i.id),setTimeout(()=>this.copiadoId.set(null),4e3),this.api.triagemFonte(i.id,{acao:"ajuste_dev",motivo:"Prompt de ajuste gerado e copiado p/ o Claude Code"}).subscribe({next:()=>this.recarregar()})}reabrir(i){this.api.triagemFonte(i.id,{acao:"reabrir"}).subscribe({next:()=>this.recarregar(),error:e=>window.alert(`Falha ao reabrir: ${e?.error?.detail||e.message}`)})}promptDev(i){return["Ajuste de scraper \u2014 Bolsa de Leil\xF5es","Repo backend: ~/Documents/Projeto_Bolsa_Leilao/bolsa-leiloes-back (scraper/ + app/scripts/import_from_manifesto.py)","",`Fonte #${i.id} \u2014 ${i.url_base}`,`Leiloeiro: ${i.leiloeiro_nome}`,`Adapter: ${i.adapter} | Plataforma detectada: ${i.plataforma_detectada??"nenhuma"}`,`Erros consecutivos: ${i.consecutive_errors} | Lotes vivos: ${i.lotes_vivos} | \xDAltimo sucesso: ${i.last_success_at??"nunca"}`,i.last_error?`\xDAltimo erro: ${i.last_error}`:"",i.diag_categoria?`Diagn\xF3stico da IA-doutora: ${i.diag_categoria} (${i.diag_confianca}%) \u2014 ${i.diag_resumo??""} | a\xE7\xE3o sugerida: ${i.diag_acao??""}`:"Sem diagn\xF3stico da IA ainda (rode o diagn\xF3stico na Central se precisar).","","Tarefa: investigue por que esta fonte n\xE3o rende lotes e corrija o scraper","(adapter dedicado, ajuste no generic/fetch, ou corre\xE7\xE3o do cadastro da fonte).","Valide ao vivo contra o site, rode smoke local e siga o fluxo de deploy do repo.",'Ao final, reabra a fonte na Central de Scrapers (se\xE7\xE3o "Fontes triadas") pra ela voltar ao monitoramento normal.'].filter(d=>d!=="").join(`
8`)}dedup(){let i=this.dedupSimulado()!==null;this.dedupRodando.set(!0),this.api.dedupCrossFonte(i).subscribe({next:e=>{this.dedupRodando.set(!1),i?(this.dedupSimulado.set(null),this.recarregar()):this.dedupSimulado.set(e.total_marcados)},error:()=>this.dedupRodando.set(!1)})}diagnosticarPiores(){this.batchRodando.set(!0),this.api.diagnosticarPiores(5).subscribe({next:({agendadas:i})=>{if(i===0){this.batchRodando.set(!1);return}let e=Date.now();this.pollTimer=setInterval(()=>{this.api.listarDiagnosticos().subscribe({next:d=>this.diags.set(d)}),Date.now()-e>18e4&&(this.pararPolling(),this.batchRodando.set(!1),this.recarregar())},15e3)},error:()=>this.batchRodando.set(!1)})}pararPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}tirarDoSet(i){let e=new Set(this.diagnosticando());e.delete(i),this.diagnosticando.set(e)}pct(i,e){return e>0?`${Math.round(i/e*100)}%`:"\u2014"}hostDe(i){try{return new URL(i).host.replace(/^www\./,"")}catch{return i}}duracao(i){if(i<1e3)return`${i}ms`;let e=Math.round(i/1e3);return e<60?`${e}s`:`${Math.floor(e/60)}m${(e%60).toString().padStart(2,"0")}s`}labelCategoria(i){return{site_no_ar_sem_leiloes:"Sem leil\xF5es ativos",inventario_n
8ao_extraido:"Invent\xE1rio n\xE3o extra\xEDdo",possivel_migracao_plataforma:"Migra\xE7\xE3o de plataforma",anti_bot:"Bloqueio anti-bot",site_fora_do_ar:"Site fora do ar",site_nao_e_leilao:"N\xE3o \xE9 site de leil\xE3o",indefinido:"Indefinido"}[i]??i}iconeDiag(i){return{site_no_ar_sem_leiloes:Z,inventario_nao_extraido:me,possivel_migracao_plataforma:ce,anti_bot:le,site_fora_do_ar:ne,site_nao_e_leilao:Q,indefinido:D}[i]??D}corCategoria(i){return{site_no_ar_sem_leiloes:"bg-sky-500/15 text-sky-300",inventario_nao_extraido:"bg-amber-500/15 text-amber-300",possivel_migracao_plataforma:"bg-violet-500/15 text-violet-300",anti_bot:"bg-red-500/15 text-red-300",site_fora_do_ar:"bg-orange-500/15 text-orange-300",site_nao_e_leilao:"bg-zinc-500/15 text-zinc-300",indefinido:"bg-zinc-500/15 text-zinc-400"}[i]??"bg-zinc-500/15 text-zinc-400"}labelAcao(i){return{criar_adapter:"Criar adapter dedicado",tentar_headless:"Tentar headless",verificar_plataforma:"Verificar plataforma/URL",marcar_nao_leiloeiro:"Desativar fonte",aguardar:"Aguardar"}[i]??i}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=R({type:a,selectors:[["bml-admin-scrapers"]],decls:19,vars:7,consts:[[1,"mb-6","flex","flex-wrap","items-end","justify-between","gap-4"],[1,"bml-label"],[1,"bml-display","mt-1","text-2xl","text-[var(--bml-text)]"],[1,"mt-1","text-sm","text-[var(--bml-text-dim)]"],[1,"flex","items-center","gap-2"],[1,"rounded-md","border","border-[var(--bml-border)]","px-3","py-1.5","text-xs","text-[var(--bml-text-dim)]","transition","hover:text-[var(--bml-text)]",3,"click","disabled"],[1,"mr-1",3,"icon"],[1,"rounded-md","border","border-sky-500/40","px-3","py-1.5","text-xs","text-sky-300","transition","hover:bg-sky-500/10","disabled:opacity-40",3,"click","disabled","title"],[1,"rounded-md","bg-gradient-to-r","from-violet-600","to-indigo-600","px-3.5","py-1.5","text-xs","font-semibold","text-white","shadow-sm","transition","hover:brightness-110","disabled:opacity-40",3,"disabled","title"],[1,"bml-card","flex","h-48","items-center","justify-center"],["animation","spin",1,"mr-1",3,"icon"],[1,"rounded-md","bg-gradient-to-r","from-violet-600","to-indigo-600","px-3.5","py-1.5","text-xs","font-semibold","text-white","shadow-sm","transition","hover:brightness-110","disabled:opacity-40",3,"click","disabled","title"],[1,"text-sm","text-[var(--bml-text-dim)]"],[1,"mb-6","rounded-md","border","border-amber-500/30","bg-amber-500/10","px-4","py-3","text-xs","text-amber-300"],[1,"mb-8","grid","grid-cols-2","gap-3","sm:grid-cols-3","lg:grid-cols-5"],[1,"bml-card","p-4"],[1,"bml-mono","mt-1","text-2xl","text-[var(--bml-text)]"],[1,"bml-mono","mt-1","text-2xl","text-emerald-400"],[1,"text-[0.625rem]","text-[var(--bml-text-mute)]"],[1,"bml-mono","mt-1","text-2xl"],[1,"bml-mono","mt-1","text-2xl","text-sky-300"],[1,"mb-8"],[1,"bml-label","mb-3"],[1,"bml-card","p-6","text-sm","text-[var(--bml-text-dim)]"],[1,"grid","grid-cols-2","gap-px","overflow-hidden","rounded-md","border","border-[var(--bml-border)]","bg-[var(--bml-border)]","sm:grid-cols-4","lg:grid-cols-8"],[1,"mb-8","grid","gap-6","lg:grid-cols-2"],[1,"bml-card","overflow-hidden"],[1,"bml-table"],[1,"text-right"],[1,"ml-1","font-normal","normal-case","text-[var(--bml-text-mute)]"],[1,"bml-card","overflow-x-auto"],[1,"grid","gap-3","lg:grid-cols-2"],[1,"w-40"],[1,"w-20"],[1,"w-36"],[1,"w-24","text-right"],[1,"bml-mono"],[1,"min-w-0","bg-[var(--bml-surface)]","p-3",3,"title"],[1,"flex","items-center","justify-between"],[1,"bml-mono","truncate","text-[0.6875rem]","text-[var(--bml-text-dim)]"],[1,"text-xs",3,"icon"],[1,"mt-1.5","text-[0.625rem]","text-[var(--bml-text-mute)]"],[1,"mt-1","truncate","text-[0.625rem]","text-red-300"],[1,"bml-mono","text-xs","text-[var(--bml-text)]"],[1,"bml-mono","text-right","text-xs"],[1,"bml-mono","text-right","text-xs","text-emerald-400"],[1,"bml-mono","text-right","text-xs","text-[var(--bml-text-dim)]"],[1,"rounded","bg-sky-500/10","px-1.5","py-0.5","text-xs","text-sky-300"],[1,"mr-1","text-emerald-400",3,"icon"],[1,"w-24"],[1,"w-16","text-right"],[1,"w-28"],[1,"max-w-[16rem]"],[1,"flex","items-center","gap-1.5"],[1,"whitespace-nowrap","rounded","bg-fuchsia-500/15","px-1.5","py-0.5","text-[0.625rem]","text-fuchsia-300",3,"title"],["target","_blank","rel","noopener",1,"block","truncate","text-[var(--bml-text)]","hover:underline",3,"href"],[1,"truncate","text-[0.625rem]","text-[var(--bml-text-mute)]",3,"title"],[1,"max-w-[10rem]","truncate","text-xs","text-[var(--bml-text-dim)]",3,"title"],[1,"rounded","bg-sky-500/10","px-1.5","py-0.5","text-[0.625rem]","text-sky-300"],[1,"text-[0.6875rem]","text-[var(--bml-text-dim)]"],[1,"max-w-[18rem]"],[1,"flex","flex-wrap","justify-end","gap-1"],[1,"rounded","border","border-violet-500/40","px-2","py-1","text-[0.6875rem]","text-violet-300","transition","hover:bg-violet-500/10","disabled:opacity-40",3,"click","disabled"],["animation","spin",3,"icon"],[3,"icon"],["title","Editar a fonte (URL truncada/errada, adapter)",1,"rounded","border","border-[var(--bml-border)]","px-2","py-1","text-[0.6875rem]","text-[var(--bml-text-dim)]","transition","hover:text-[var(--bml-text)]",3,"click"],["title","Copiar prompt de ajuste pro Claude Code e marcar como 'em dev'",1,"rounded","border","border-amber-500/40","px-2","py-1","text-[0.6875rem]","text-amber-300","transition","hover:bg-amber-500/10",3,"click"],["title","Descartar: sem solu\xE7\xE3o por ora. Sai da lista e S\xD3 volta se a plataforma mudar ou lotes reaparecerem.",1,"rounded","border","border-red-500/40","px-2","py-1","text-[0.6875rem]","text-red-300","transition","hover:bg-red-500/10",3,"click"],[1,"mr-0.5",3,"icon"],[1,"whitespace-nowrap","rounded","px-1.5","py-0.5","text-[0.625rem]"],[1,"bml-mono","text-[0.625rem]","text-[var(--bml-text-mute)]"],[1,"mt-0.5","truncate","text-[0.625rem]","text-[var(--bml-text-mute)]",3,"title"],[1,"bml-label","mb-3","cursor-pointer","select-none"],[1,"bml-card","mt-2","overflow-x-auto"],[1,"truncate","text-[0.625rem]","text-[var(--bml-text-mute)]"],[1,"rounded","px-1.5","py-0.5","text-[0.625rem]"],[1,"max-w-[20rem]","truncate","text-xs","text-[var(--bml-text-dim)]",3,"title"],[1,"text-[0.6875rem]","text-[var(--bml-text-mute)]"],["title","Volta pra lista de problem\xE1ticas (e religa a fonte se estava desativada)",1,"rounded","border","border-[var(--bml-border)]","px-2","py-1","text-[0.6875rem]","text-[var(--bml-text-dim)]","transition","hover:text-[var(--bml-text)]",3,"click"],[1,"text-red-300"],[1,"flex","flex-wrap","items-center","justify-between","gap-2"],[1,"flex","min-w-0","items-center","gap-2"],[1,"whitespace-nowrap","rounded","px-2","py-0.5","text-[0.6875rem]"],["target","_blank","rel","noopener",1,"bml-mono","truncate","text-xs","text-[var(--bml-text)]","hover:underline",3,"href"],[1,"mt-2.5","flex","items-center","gap-2"],[1,"h-1.5","flex-1","overflow-hidden","rounded-full","bg-[var(--bml-border)]"],[1,"h-full","rounded-full","transition-all"],[1,"mt-2.5","text-sm","leading-relaxed","text-[var(--bml-text-dim)]"],[1,"mt-2","group"],[1,"curs
8or-pointer","select-none","text-[0.6875rem]","text-[var(--bml-text-mute)]","transition","hover:text-[var(--bml-text-dim)]"],[1,"bml-mono","mt-1.5","whitespace-pre-wrap","rounded","bg-[var(--bml-bg)]","p-2.5","text-[0.6875rem]","leading-relaxed","text-[var(--bml-text-mute)]"],[1,"mt-3","flex","flex-wrap","items-center","gap-1.5"],[1,"rounded-full","border","border-violet-500/40","px-2","py-0.5","text-[0.625rem]","text-violet-300"],[1,"rounded-full","border","border-sky-500/40","px-2","py-0.5","text-[0.625rem]","text-sky-300"],[1,"bml-mono","rounded-full","border","border-[var(--bml-border)]","px-2","py-0.5","text-[0.625rem]","text-[var(--bml-text-mute)]"],[1,"bml-mono","ml-auto","text-[0.5625rem]","text-[var(--bml-text-mute)]"],[1,"rounded","px-1.5","py-0.5","text-[0.625rem]","uppercase","tracking-wider"],[1,"text-xs","text-[var(--bml-text-dim)]"],[1,"max-w-[24rem]","truncate","text-xs","text-[var(--bml-text-mute)]",3,"title"],["colspan","5",1,"py-6","text-center","text-sm","text-[var(--bml-text-mute)]"]],template:function(e,d){if(e&1&&(n(0,"header",0)(1,"div")(2,"p",1),r(3,"Pipeline di\xE1rio \xB7 vigia de plataformas \xB7 IA-doutora"),t(),n(4,"h1",2),r(5,"Central de Scrapers"),t(),n(6,"p",3),r(7," Sa\xFAde de cada fase e fonte, plataformas detectadas e diagn\xF3stico por IA das fontes problem\xE1ticas. "),t()(),n(8,"div",4)(9,"button",5),g("click",function(){return d.recarregar()}),p(10,"fa-icon",6),r(11," Atualizar "),t(),n(12,"button",7),g("click",function(){return d.dedup()}),_(13,be,2,1)(14,fe,2,2)(15,ge,2,1),t(),_(16,he,3,3,"button",8),t()(),_(17,Ee,3,0,"div",9)(18,rt,100,21)),e&2){let s,v;o(9),m("disabled",d.carregando()),o(),m("icon",d.fa.atualizar),o(2),m("disabled",d.dedupRodando())("title","Marca o mesmo bem visto por 2+ fontes como duplicata do can\xF4nico (sai dos n\xFAmeros e do site). 1\xBA clique simula; 2\xBA aplica."),o(),x(d.dedupRodando()?13:d.dedupSimulado()!==null?14:15),o(3),x((s=d.ov())?16:-1,s),o(),x(d.carregando()?17:(v=d.ov())?18:-1,v)}},dependencies:[O,q,K,H,L],encapsulation:2})};export{_e as ScrapersAdminPage};

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