PageSourceSearch

https://sinal-8a571.web.app/assets/AdminPublicacoesView-DmcwkoOu.js

js sinal-8a571.web.app collected 2026-10-03 12:35:54 UTC 6,446 bytes, 1 lines download raw bytes

1import{r as c,aM as S,H as N,a8 as k,a9 as F,aa as u,d as t,aC as B,ac as w,aL as E,k as g,ab as A,ai as $,a6 as M,j as D,ag as h,ad as P,af as j,x as z}from"./index-B2bOC4VY.js";import{a as L,b as O,d as _}from"./VCard-BBBk4-rK.js";import{V as I}from"./VForm-Df9ls9Kz.js";import{V as Y}from"./VFileInput-BOGdTzpp.js";import{V as H}from"./VDialog-ncUizTDM.js";import{V as R,_ as G}from"./VDataTable-CPGdk88y.js";import{p as q}from"./publicacoesService-Bpt36TT1.js";import{V as J}from"./VContainer-C-_ueET4.js";import"./VSelect-DCci_0qs.js";import"./VList-CHHaQhBA.js";import"./VCheckboxBtn-DFJVIycJ.js";const K={__name:"CreatePublicacaoForm",props:{isVisible:{type:Boolean,default:!1},createPublicacao:{type:Function,required:!0}},emits:["update:isVisible","close"],setup(p,{emit:r}){const d=p,V=r,f=c(null),s=c(!1),i=c([]),a=S({titulo:"",autores:"",ano:new Date().getFullYear()}),b=()=>{a.titulo="",a.autores="",a.ano=new Date().getFullYear(),i.value=[],f.value&&f.value.resetValidation()},m=()=>{b(),V("update:isVisible",!1),V("close")},x=async()=>{const{valid:v}=await f.value.validate();if(!v)return;const l=i.value instanceof Array?i.value[0]:i.value;if(l){s.value=!0;try{await d.createPublicacao({titulo:a.titulo,autores:a.autores,ano:a.ano},l)&&m()}finally{s.value=!1}}};return N(()=>d.isVisible,v=>{v||b()}),(v,l)=>(k(),F(H,{"model-value":p.isVisible,"max-width":"550px",persistent:"","onUpdate:modelValue":l[4]||(l[4]=e=>v.$emit("update:isVisible",e))},{default:u(()=>[t(L,{title:"Nova publicação","append-icon":"mdi-book-plus-outline"},{default:u(()=>[t(O,null,{default:u(()=>[t(I,{ref_key:"form",ref:f,onSubmit:B(x,["prevent"])},{default:u(()=>[t(w,{modelValue:a.titulo,"onUpdate:modelValue":l[0]||(l[0]=e=>a.titulo=e),label:"Título",variant:"outlined",density:"compact",class:"mb-3",rules:[e=>!!e||"Título é obrigatório"],required:""},null,8,["modelValue","rules"]),t(w,{modelValue:a.autores,"onUpdate:modelValue":l[1]||(l[1]=e=>a.autores=e),label:"Autores/as",variant:"outlined",density:"compact",class:"mb-3",rules:[e=>!!e||"Autores/as é obrigatório"],required:""},null,8,["modelValue","rules"]),t(w,{modelValue:a.ano,"onUpdate:modelValue":l[2]||(l[2]=e=>a.ano=e),label:"Ano de publicação",variant:"outlined",density:"compact",class:"mb-3",type:"number",rules:[e=>!!e||"Ano é obrigatório",e=>e>=1900&&e<=2100||"Ano inválido"],required:""},null,8,["modelValue","rules"]),t(Y,{modelValue:i.value,"onUpdate:modelValue":l[3]||(l[3]=e=>i.value=e),label:"Arquivo PDF",accept:".pdf",variant:"outlined",density:"compact","prepend-icon":"mdi-file-pdf-box",rules:[e=>!!(e&&(!Array.isArray(e)||e.length>0))||"PDF é obrigatório"],required:""},null,8,["modelValue","rules"])]),_:1},512)]),_:1}),t(_,null,{default:u(()=>[t(E),t(g,{text:"",disabled:s.value,onClick:m},{default:u(()=>[...l[5]||(l[5]=[A("Cancelar",-1)])]),_:1},8,["disabled"]),t(g,{color:"primary",loading:s.value,"prepend-icon":"mdi-cloud-upload-outline",onClick:x},{default:u(()=>[...l[6]||(l[6]=[A(" Confirmar ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}},{showSuccess:U,showError:C}=$();function Q(){const p=c([]),r=c(!1),d=async()=>{r.value=!0;try{p.value=await q.getPublicacoes()}catch(s){console.error("Erro ao carregar publicações:",s),C("Erro ao carregar publicações. Tente novamente mais tarde."),p.value=[]}finally{r.value=!1}};return{publicacoes:p,isLoading:r,fetchPublicacoes:d,createPublicacao:async(s,i)=>{r.value=!0;try{const a=await q.addPublicacao(s,i);return a?(U("Publicação adicionada com sucesso!"),await d(),a):(C("Erro ao adicionar publicação."),null)}catch(a){return console.error("Erro ao criar publicação:",a),C("Erro ao adicionar publicação. Verifique os dados e tente novamente."),null}finally{r.value=!1}},deletePublicacao:async(s,i)=>{r.value=!0;try{return await q.deletePublicacao(s,i),U("Publicação removida com sucesso!"),await d(),!0}catch(a){return console.error("Erro ao excluir publicação:",a),C("Erro ao excluir publicação. Tente novamente."),!1}finally{r.value=!1}}}}const W={class:"text-grey"},X={class:"d-flex mt-3 justify-end"},Z={key:1,class:"text-grey text-caption"},me={__name:"AdminPublicacoesView",setup(p){const{publicacoes:r,isLoading:d,fetchPublicacoes:V,createPublicacao:f,deletePublicacao:s}=Q(),i=c(""),a=c(!1),b=c(!1),m=c(null),x=[{title:"Título",key:"titulo",sortable:!0},{title:"Autores/as",key:"autores",sortable:!0},{title:"Ano",key:"ano",sortable:!0,align:"center"},{title:"PDF",key:"pdfUrl",sortable:!1,align:"center"},{key:"actions",sortable:!1,align:"end"}],v=async()=>{i.value="",await V()},l=y=>{m.value=y,b.value=!0},e=()=>{m.value=null,b.value=!1},T=async()=>{var y;(y=m.value)!=null&&y.id&&(await s(m.value.id,m.value.pdfNome),e())};return M(()=>{V()}),(y,o)=>(k(),F(J,null,{default:u(()=>[o[7]||(o[7]=D("h2",{class:"mb-n2"},"Publicações",-1)),D("small",W,h(P(r).length)+" publicações encontradas",1),D("div",X,[t(g,{color:"primary","prepe
1nd-icon":"mdi-plus",onClick:o[0]||(o[0]=n=>a.value=!0)},{default:u(()=>[...o[5]||(o[5]=[A(" Nova publicação ",-1)])]),_:1}),t(E),t(w,{modelValue:i.value,"onUpdate:modelValue":o[1]||(o[1]=n=>i.value=n),label:"Pesquisar","append-inner-icon":"mdi-magnify",variant:"outlined",density:"compact",clearable:""},null,8,["modelValue"]),t(g,{class:"mt-n1 ml-2",icon:"mdi-refresh",variant:"text",onClick:v})]),t(R,{headers:x,search:i.value,items:P(r),loading:P(d),"no-data-text":"Nenhuma publicação encontrada.","loading-text":"Carregando publicações..."},{"item.pdfUrl":u(({item:n})=>[n.pdfUrl?(k(),F(g,{key:0,href:n.pdfUrl,target:"_blank",icon:"mdi-file-pdf-box",variant:"text",color:"error",size:"small",title:"Abrir PDF"},null,8,["href"])):(k(),j("span",Z,"Sem arquivo"))]),"item.actions":u(({item:n})=>[t(z,{size:"small",class:"me-2",title:"Excluir",onClick:ee=>l(n)},{default:u(()=>[...o[6]||(o[6]=[A(" mdi-delete ",-1)])]),_:1},8,["onClick"])]),_:1},8,["search","items","loading"]),t(K,{"is-visible":a.value,"onUpdate:isVisible":o[2]||(o[2]=n=>a.value=n),"create-publicacao":P(f),onClose:o[3]||(o[3]=n=>a.value=!1)},null,8,["is-visible","create-publicacao"]),t(G,{"is-visible":b.value,"onUpdate:isVisible":o[4]||(o[4]=n=>b.value=n),onConfirm:T,onCancel:e,title:"Excluir publicação",icon:"mdi-delete",message:"Tem certeza que deseja excluir esta publicação permanentemente? O arquivo PDF também será removido.","confirm-button-text":"Excluir"},null,8,["is-visible"])]),_:1}))}};export{me as default};

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.