1import{j as e,u as Ue,b as ne}from"./query-vendor-D21EOBPj.js";import{r as k}from"./react-vendor-wzkxw4Be.js";import{P as ke,a as Se,b as Ae}from"./popover-nrVlCTM4.js";import{C as Ge}from"./checkbox-tYhfxKca.js";import{C as ze,a as De,b as Pe,c as Ee,d as Te,e as Le}from"./command-ls_vsnOy.js";import{B as ae}from"./badge-BKiA7n5q.js";import{a as se,X as K,t as L,s as Q}from"./index-D2LQAM4H.js";import{u as ue}from"./usePlaces-hdAmWKUM.js";import{u as Ke}from"./useDestinations-B9XVN1wr.js";import{B as w}from"./button-B86YiuNJ.js";import{I as d}from"./input-CQECCY9r.js";import{L as i}from"./label-D4YhD4aI.js";import{T as I}from"./textarea-fx9IzCVF.js";import{S as Y}from"./switch-DFWRZlfr.js";import{S as z,a as D,b as P,c as E,d as n}from"./select-BDmKCuwP.js";import{D as Qe,a as We,b as Ye,c as Je,d as Xe}from"./dialog-rJDUBHd6.js";import{A as Ze,a as ea,b as aa,c as sa,d as ta,e as ia,f as ra,g as la}from"./alert-dialog-qSw8mZIV.js";import{A as C,a as O,B as na}from"./AdminArrayInput-DAFVqLfw.js";import{u as oa,b as ca,c as da,d as ma,e as ua,f as xa}from"./usePlaceRelated-Dmt30_zg.js";import{C as ha}from"./calendar-days-BE0wBAJ2.js";import{P as V}from"./plus-CFja9yuX.js";import{G as pa}from"./grip-vertical-zF6144pR.js";import{L as de}from"./index-VuPoiv-4.js";import{T as ee}from"./trash-2-B9y24U5G.js";import{S as xe}from"./save-y-7EKlg6.js";import{S as me}from"./search-DC8mLYoW.js";import{u as ja,a as ga,b as va}from"./usePlaceDishes-B4wsukK-.js";import{u as fa}from"./useTypicalDishes-yjmf-KYc.js";import{a as ba,b as _a,c as ya}from"./usePlaceTypicalDishes-BOrMZd3h.js";import{L as Na}from"./link-2-DHoHKkMm.js";import{b as Fe,c as Oe,A as Ca,a as W,I as wa,W as ka,d as Sa,g as fe}from"./Admin-Dn1ALvuP.js";import{a as Aa}from"./usePeopleArticles-COwI164n.js";import{C as za}from"./chevrons-up-down-VR4r4stv.js";import{C as Ie}from"./check-BfrsabcL.js";import{c as Da}from"./imageAttribution-DtBsUZvK.js";import{a as Z}from"./types-vlw-9ynp.js";import{A as oe,g as Pa}from"./amenities-DMjp9LlX.js";import{d as Ea,W as be,b as Ta}from"./openingHours-DC1uWmZT.js";import{C as La}from"./copy-BC7uJpoO.js";import{n as Fa}from"./whatToBring-Baot7DKK.js";import{S as Oa}from"./sliders-horizontal-BjgkM7L6.js";import{m as _e}from"./motion-vendor-BAXfWeLF.js";import{M as Ia}from"./map-pin-N3k91gsM.js";import{C as $a}from"./chevron-down-BPvMgUtW.js";import{S as ye}from"./star-BCMOh4ms.js";import{E as Ra}from"./external-link-U5_WjRXP.js";import{P as qa}from"./pencil-DZMXYg9x.js";import{T as Ba}from"./tag-DG5US6i2.js";import{B as Va}from"./building-2-BoOBujs_.js";import{U as Ma}from"./utensils-D6Akr9KJ.js";import{B as Ha}from"./binoculars-B5rZzHBv.js";import{S as Ua}from"./sparkles-eMjYJsYH.js";import"./radix-vendor-BPyhJHu2.js";import"./seo-vendor-CwGKcEKF.js";import"./supabase-vendor-kR6BuSaZ.js";import"./i18n-vendor-DHTM_nKn.js";import"./chevron-up-Bg9AQ5m7.js";import"./tabs-DPzGfrDb.js";import"./skeleton-CKqgDaBh.js";import"./AdminHeaderSwitcher-CQL7hLWV.js";import"./dropdown-menu-CDQdTKmJ.js";import"./chevron-right-KBDJSA4M.js";import"./store-DmwBAru_.js";import"./useBadgeRarity-Dbiv6Kkw.js";import"./useBadgeProgress-BR_K_CE-.js";import"./image-C9Ex9L6d.js";import"./circle-check-BzW4n38h.js";import"./triangle-alert-CrECR48G.js";import"./upload-CpPtbEax.js";import"./refresh-cw-DQU1_TZh.js";import"./scroll-area-5gghzNEm.js";import"./layout-grid-CUDDvlot.js";import"./chevron-left-B0-0WVss.js";import"./users-BFrzvimV.js";import"./lightbulb-DZmIlTiK.js";import"./usePlacePhotos-BX-UITe3.js";import"./useItemPropertyDefs-Bh9L9lm-.js";import"./useRegions-DoT_8Qao.js";import"./useFestivals-CUn8v1LB.js";import"./useLuggageCatalog-B9thRBGW.js";import"./useIngredients-BkI1tig5.js";import"./accordion-BH104540.js";import"./sortable.esm-BXylrAqm.js";import"./dishVariations-jwbtnj-s.js";import"./flame-D84TeY3T.js";import"./list-Cym17mrh.js";import"./list-ordered-B8KHDqee.js";import"./book-open-DgjXuDZl.js";import"./useArticleBioFacts-JIuQnEAg.js";import"./useInternalLinkSuggestions-D-NDerHB.js";import"./useArticles-B46CGuRO.js";import"./useArticleTaxonomy-Dr45xh5l.js";import"./useArticleItemReferences-DSCl5s5Z.js";import"./settings-CSAbYrcD.js";import"./file-text-DWwKh_rr.js";import"./eye-Cr1nbOdt.js";import"./correctionSections-Cz2U6Hnf.js";import"./filter-71fjO99p.js";import"./circle-alert-BLB2XvpZ.js";import"./circle-x-DGaXXmux.js";import"./useBudgetDefaults-H20QxDxI.js";import"./mail-DH0Bp0OS.js";import"./shield-check-D9Z6_2ZX.js";import"./useLegalDocuments-B66ZynYo.js";import"./calendar-B-eidJzi.js";import"./leaf-DvGi22cd.js";import"./luggage-DoqqUi22.js";import"./share-2-D4a1d99Q.js";import"./list-checks-ChW8VpyH.js";const Ga=[{value:"caminhada",label:"Caminhada"},{value:"carro",label:"Carro"},{value:"van",label:"Van"},{value:"barco",label:"Barco"},{value:"permanencia",label:"Permanência"},{value:"outro",label:"Outro"}];function Ka({draft:l,onChange:x,onSave:v,onCancel:b,isPending:_,attractions:f}){const[h,g]=k.useState(""),m=f.filter(r=>!h||r.name.toLowerCase().includes(h.toLowerCase())||(r.city??"").toLowerCase().includes(h.toLowerCase())),j=l.attraction_id?f.find(r=>r.id===l.attraction_id)?.name??l.attraction_id:null;return e.jsxs("div",{className:"bg-muted/30 border border-border rounded-lg p-3 space-y-3",children:[e.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[e.jsxs("div",{children:[e.jsx(i,{className:"text-xs",children:"Horário"}),e.jsx(d,{value:l.time_label??"",onChange:r=>x({...l,time_label:r.target.value}),placeholder:"09:00"})]}),e.jsxs("div",{children:[e.jsx(i,{className:"text-xs",children:"Dia"}),e.jsx(d,{type:"number",min:1,value:l.day_number??1,onChange:r=>x({...l,day_number:Math.max(1,Number(r.target.value))})})]}),e.jsxs("div",{children:[e.jsx(i,{className:"text-xs",children:"Ordem"}),e.jsx(d,{type:"number",value:l.sort_order??0,onChange:r=>x({...l,sort_order:Number(r.target.value)})})]})]}),e.jsxs("div",{children:[e.jsx(i,{className:"text-xs",children:"TÃtulo *"}),e.jsx(d,{value:l.title,onChange:r=>x({...l,title:r.target.value}),placeholder:"Encontro no ponto inicial"})]}),e.jsxs("div",{children:[e.jsx(i,{className:"text-xs",children:"Descrição"}),e.jsx(I,{rows:2,value:l.description??"",onChange:r=>x({...l,description:r.target.value}),placeholder:"O que acontece nesta etapa"})]}),e.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[e.jsxs("div",{children:[e.jsx(i,{className:"text-xs",children:"Deslocamento"}),e.jsxs(z,{value:l.movement_type??"permanencia",onValueChange:r=>x({...l,movement_type:r}),children:[e.jsx(D,{children:e.jsx(P,{})}),e.jsx(E,{children:Ga.map(r=>e.jsx(n,{value:r.value,children:r.label},r.value))})]})]}),e.jsxs("div",{children:[e.jsx(i,{className:"text-xs",children:"Distância (km)"}),e.jsx(d,{type:"number",step:"0.1",value:l.distance_km??"",onChange:r=>x({...l,distance_km:r.target.value?Number(r.target.value):null})})]}),e.jsxs("div",{children:[e.jsx(i,{className:"text-xs",children:"Duração (min)"}),e.jsx(d,{type:"number",value:l.duration_minutes??"",onChange:r=>x({...l,duration_minutes:r.target.value?Number(r.target.value):null})})]})]}),e.jsxs("div",{children:[e.jsxs(i,{className:"text-xs flex items-center gap-1",children:[e.jsx(de,{size:11})," Atração vinculada"," ",e.jsx("span",{className:"text-muted-foreground font-normal",children:"(opcional)"})]}),j&&e.jsxs("div",{className:"flex items-center gap-2 mb-1.5 mt-1 text-xs text-primary bg-primary/5 border border-primary/20 rounded-lg px-2 py-1",children:[e.jsx(de,{size:11}),e.jsx("span",{className:"flex-1 truncate",children:j}),e.jsx("button",{type:"button","aria-label":"Remover vÃnculo",onClick:()=>x({...l,attraction_id:null}),className:"hover:text-destructive",children:e.jsx(K,{size:11})})]}),e.jsx(d,{placeholder:"Buscar atraçãoâ¦",value:h,onChange:r=>g(r.target.value),className:"mt-1"}),h&&e.jsxs("div",{className:"max-h-32 overflow-y-auto border border-border rounded-lg mt-1",children:[m.slice(0,8).map(r=>e.jsxs("button",{type:"button",onClick:()=>{x({...l,attraction_id:r.id}),g("")},className:"w-full text-left px-3 py-1.5 text-xs hover:bg-muted transition-colors border-b border-border/50 last:border-0",children:[e.jsx("span",{className:"font-medium",children:r.name}),r.city&&e.jsxs("span",{className:"text-muted-foreground ml-1",children:["· ",r.city]})]},r.id)),m.length===0&&e.jsx("p",{className:"text-xs text-muted-foreground px-3 py-2",children:"Nenhuma atração encontrada"})]})]}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsxs(w,{size:"sm",variant:"ghost",onClick:b,className:"gap-1",children:[e.jsx(K,{size:13})," Cancelar"]}),e.jsxs(w,{size:"sm",onClick:v,disabled:_,className:"gap-1",children:[e.jsx(xe,{size:13})," ",_?"Salvandoâ¦":"Salvar"]})]})]})}function Qa({placeId:l}){const{data:x=[],isLoading:v}=oa(l),{data:b=[]}=ue({type:"attraction"}),_=ca(),f=da(),[h,g]=k.useState(null),[m,j]=k.useState(1),r=k.useMemo(()=>[...new Set(x.map(T=>T.day_number??1))].sort((T,c)=>T-c),[x]),S=r.length>0?Math.max(...r):1,A=x.filter(u=>(u.day_number??1)===m);function p(){g({place_id:l,title:"",time_label:"",description:"",movement_type:"permanencia",sort_order:A.length,day_number:m,distance_km:null,duration_minutes:null,attraction_id:null})}function N(){const u=S+1;j(u),g({place_id:l,title:"",time_label:"",description:"",movement_type:"permanencia",sort_order:0,day_number:u,distance_km:null,duration_minutes:null,attraction_id:null})}async function H(){if(!h||!h.title.trim()){L({title:"TÃtulo obrigatório",variant:"destructive"});return}try{const u=await _.mutateAsync(h);
1j(u.day_number??1),L({title:h.id?"Etapa atualizada":"Etapa adicionada"}),g(null)}catch(u){L({title:"Erro ao salvar",description:u.message,variant:"destructive"})}}async function U(u){if(confirm("Remover esta etapa?"))try{await f.mutateAsync({id:u,place_id:l}),L({title:"Etapa removida"})}catch(T){L({title:"Erro",description:T.message,variant:"destructive"})}}const $=u=>u?b.find(T=>T.id===u)?.name??u:null,M=r.length>0?r:[1];return e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs(i,{className:"text-sm font-semibold flex items-center gap-1.5",children:[e.jsx(ha,{size:14})," Linha do tempo da experiência"]}),!h&&e.jsxs("div",{className:"flex gap-1.5",children:[e.jsxs(w,{size:"sm",variant:"outline",onClick:N,className:"gap-1 text-xs",children:[e.jsx(V,{size:13})," Novo dia"]}),e.jsxs(w,{size:"sm",variant:"outline",onClick:p,className:"gap-1 text-xs",children:[e.jsx(V,{size:13})," Etapa"]})]})]}),v&&e.jsx("p",{className:"text-xs text-muted-foreground",children:"Carregandoâ¦"}),!v&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"flex gap-1 border-b border-border/50 overflow-x-auto",children:M.map(u=>{const T=x.filter(c=>(c.day_number??1)===u).length;return e.jsxs("button",{onClick:()=>{j(u),g(null)},className:se("shrink-0 px-3 py-1.5 text-xs font-medium rounded-t-md transition-colors border-b-2 -mb-px",m===u?"border-primary text-primary bg-primary/5":"border-transparent text-muted-foreground hover:text-foreground"),children:["Dia ",u," ",e.jsxs("span",{className:"opacity-60",children:["(",T,")"]})]},u)})}),A.length===0&&!h&&e.jsxs("p",{className:"text-xs text-muted-foreground py-2",children:["Nenhuma etapa no Dia ",m,'. Clique em "Etapa" para adicionar.']}),A.length>0&&!h&&e.jsx("ol",{className:"space-y-2",children:A.map(u=>e.jsxs("li",{className:"flex items-start gap-2 bg-card border border-border rounded-lg p-3",children:[e.jsx(pa,{size:14,className:"text-muted-foreground mt-1 shrink-0"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-baseline gap-2 flex-wrap",children:[u.time_label&&e.jsx("span",{className:"text-sm font-semibold tabular-nums",children:u.time_label}),e.jsx("span",{className:"text-sm font-semibold text-foreground",children:u.title})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-1.5 mt-1 text-xs text-muted-foreground",children:[u.movement_type&&e.jsx("span",{className:"bg-muted px-1.5 py-0.5 rounded",children:u.movement_type}),u.distance_km!=null&&e.jsxs("span",{children:[u.distance_km," km"]}),u.duration_minutes!=null&&e.jsxs("span",{children:[u.duration_minutes," min"]}),u.attraction_id&&e.jsxs("span",{className:"flex items-center gap-1 text-primary",children:[e.jsx(de,{size:10})," ",$(u.attraction_id)]})]}),u.description&&e.jsx("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:u.description})]}),e.jsxs("div",{className:"flex gap-1 shrink-0",children:[e.jsx(w,{size:"sm",variant:"ghost",onClick:()=>g(u),children:"Editar"}),e.jsx(w,{size:"sm",variant:"ghost",onClick:()=>U(u.id),className:"text-destructive","aria-label":"Remover etapa",children:e.jsx(ee,{size:13})})]})]},u.id))}),h&&e.jsx(Ka,{draft:h,onChange:g,onSave:H,onCancel:()=>g(null),isPending:_.isPending,attractions:b})]})]})}function Wa({placeId:l,destinationId:x}){const{data:v=[]}=ma(l),{data:b=[]}=ue({type:"attraction"}),_=ua(),f=xa(),[h,g]=k.useState(""),m=new Set(v.map(p=>p.related_place_id)),j=k.useMemo(()=>{const p=h.trim().toLowerCase();return b.filter(N=>N.id!==l&&!m.has(N.id)).filter(N=>p?N.name.toLowerCase().includes(p)||N.city.toLowerCase().includes(p):x?N.destination_id===x:!0).slice(0,8)},[b,l,m,h,x]),r=v.map(p=>b.find(N=>N.id===p.related_place_id)).filter(Boolean);async function S(p){try{await _.mutateAsync({place_id:l,related_place_id:p,sort_order:v.length}),L({title:"Atração vinculada"}),g("")}catch(N){L({title:"Erro",description:N.message,variant:"destructive"})}}async function A(p){try{await f.mutateAsync({id:p,place_id:l}),L({title:"VÃnculo removido"})}catch(N){L({title:"Erro",description:N.message,variant:"destructive"})}}return e.jsxs("div",{className:"space-y-3",children:[e.jsx(i,{className:"text-sm font-semibold",children:"Atrações relacionadas (visitadas neste tour)"}),r.length>0&&e.jsx("ul",{className:"space-y-1.5",children:v.map(p=>{const N=b.find(H=>H.id===p.related_place_id);return N?e.jsxs("li",{className:"flex items-center justify-between bg-card border border-border rounded-lg px-3 py-2",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-sm font-medium text-foreground truncate",children:N.name}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:[N.city,N.state?`, ${N.state}`:""]})]}),e.jsx(w,{size:"sm",variant:"ghost",onClick:()=>A(p.id),className:"text-destructive",children:e.jsx(ee,{size:13})})]}
1,p.id):null})}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"relative",children:[e.jsx(me,{size:14,className:"absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground"}),e.jsx(d,{value:h,onChange:p=>g(p.target.value),placeholder:"Buscar atração para vincularâ¦",className:"pl-8"})]}),j.length>0?e.jsx("ul",{className:"border border-border rounded-lg divide-y divide-border max-h-64 overflow-y-auto",children:j.map(p=>e.jsxs("li",{className:"flex items-center justify-between px-3 py-2 hover:bg-muted/40",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-sm font-medium text-foreground truncate",children:p.name}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:[p.city,p.state?`, ${p.state}`:""]})]}),e.jsxs(w,{size:"sm",variant:"outline",onClick:()=>S(p.id),className:"gap-1",children:[e.jsx(V,{size:13})," Vincular"]})]},p.id))}):e.jsx("p",{className:"text-xs text-muted-foreground",children:h?"Nenhuma atração encontrada.":"Digite para buscar atrações."})]})]})}const Ne={name:"",description:null,image_url:null,price_symbol:null,sort_order:0};function Ya({placeId:l}){const{data:x=[],isLoading:v}=ja(l),b=ga(),_=va(),[f,h]=k.useState({...Ne,place_id:l}),[g,m]=k.useState(null),{data:j=[]}=ba(l),{data:r=[]}=fa(),S=_a(),A=ya(),[p,N]=k.useState("none"),H=r.filter(c=>!j.includes(c.id)),U=r.filter(c=>j.includes(c.id)),$=()=>{!p||p==="none"||S.mutate({placeId:l,dishId:p},{onSuccess:()=>N("none")})},M=()=>{h({...Ne,place_id:l}),m(null)},u=async()=>{if(!f.name?.trim()){L({title:"Nome do prato é obrigatório",variant:"destructive"});return}try{await b.mutateAsync({...f,sort_order:f.sort_order??x.length}),L({title:g?"Prato atualizado":"Prato adicionado"}),M()}catch(c){L({title:"Erro ao salvar prato",description:c.message,variant:"destructive"})}},T=async(c,q)=>{const J=x.findIndex(X=>X.id===c.id),B=x[J+q];B&&await Promise.all([b.mutateAsync({id:c.id,place_id:l,name:c.name,sort_order:B.sort_order}),b.mutateAsync({id:B.id,place_id:l,name:B.name,sort_order:c.sort_order})])};return e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-1.5",children:[e.jsx(Na,{size:13,className:"text-muted-foreground"}),e.jsx("h3",{className:"font-semibold text-sm text-foreground",children:"Pratos tÃpicos vinculados"})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:'Associe pratos do catálogo de gastronomia para aparecer na seção "Onde comer" de cada prato.'}),U.length>0&&e.jsx("div",{className:"flex flex-wrap gap-1.5",children:U.map(c=>e.jsxs(ae,{variant:"secondary",className:"gap-1 pr-1 text-xs",children:[c.name,e.jsx("button",{onClick:()=>A.mutate({placeId:l,dishId:c.id}),className:"ml-0.5 rounded-sm hover:bg-destructive/20 hover:text-destructive p-0.5 transition-colors","aria-label":`Desvincular ${c.name}`,disabled:A.isPending,children:e.jsx(K,{size:10})})]},c.id))}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(z,{value:p,onValueChange:N,children:[e.jsx(D,{className:"flex-1 h-8 text-xs",children:e.jsx(P,{placeholder:"Escolher prato tÃpicoâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"none",children:"â Selecionar â"}),H.map(c=>e.jsx(n,{value:c.id,children:c.name},c.id))]})]}),e.jsxs(w,{size:"sm",variant:"outline",onClick:$,disabled:!p||p==="none"||S.isPending,className:"gap-1 h-8 text-xs shrink-0",children:[e.jsx(V,{size:11})," Vincular"]})]})]}),e.jsx("div",{className:"border-t border-border/50"}),e.jsxs("div",{children:[e.jsx("h3",{className:"font-semibold text-sm text-foreground",children:"ð½ï¸ Pratos famosos"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"3 a 6 pratos. Imagem opcional. Preço em sÃmbolos $."})]}),v&&e.jsx("p",{className:"text-xs text-muted-foreground",children:"Carregandoâ¦"}),x.length>0&&e.jsx("div",{className:"space-y-2",children:x.map((c,q)=>e.jsxs("div",{className:"flex items-center gap-2 bg-muted/30 border border-border rounded-lg p-2",children:[c.image_url?e.jsx("img",{src:c.image_url,alt:c.name,className:"w-12 h-12 object-cover rounded-md flex-shrink-0"}):e.jsx("div",{className:"w-12 h-12 bg-muted rounded-md flex-shrink-0"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:"font-medium text-sm truncate",children:c.name}),e.jsxs("p",{className:"text-xs text-muted-foreground truncate",children:[c.price_symbol&&e.jsx("span",{className:"mr-2",children:c.price_symbol}),c.description]})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(w,{size:"icon",variant:"ghost",className:"h-7 w-7",disabled:q===0,onClick:()=>T(c,-1),children:e.jsx(Fe,{size:12})}),e.jsx(w,{size:"icon",variant:"ghost",className:"h-7 w-7",disabled:q===x.length-1,onClick:()=>T(c,1),children:e.jsx(Oe,{size:12})}),e.jsx(w,{size:"icon",variant:"ghost",className:"h-7 w-7",onClick:()=>{h({...c,place_id:l}
1),m(c.id)},children:"â"}),e.jsx(w,{size:"icon",variant:"ghost",className:"h-7 w-7 text-destructive",onClick:()=>_.mutate({id:c.id,place_id:l}),children:e.jsx(ee,{size:12})})]})]},c.id))}),e.jsxs("div",{className:"border border-dashed border-border rounded-lg p-3 space-y-2",children:[e.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:g?"Editar prato":"Novo prato"}),e.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[e.jsxs("div",{className:"col-span-2",children:[e.jsx(i,{className:"text-xs",children:"Nome *"}),e.jsx(d,{value:f.name??"",onChange:c=>h({...f,name:c.target.value}),placeholder:"ex: Tambaqui na brasa"})]}),e.jsxs("div",{className:"col-span-2",children:[e.jsx(i,{className:"text-xs",children:"Descrição"}),e.jsx(I,{rows:2,value:f.description??"",onChange:c=>h({...f,description:c.target.value||null}),placeholder:"Breve descrição do prato"})]}),e.jsxs("div",{children:[e.jsx(i,{className:"text-xs",children:"Imagem (URL)"}),e.jsx(d,{value:f.image_url??"",onChange:c=>h({...f,image_url:c.target.value||null}),placeholder:"https://â¦"})]}),e.jsxs("div",{children:[e.jsx(i,{className:"text-xs",children:"Preço"}),e.jsxs(z,{value:f.price_symbol??"",onValueChange:c=>h({...f,price_symbol:c||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"â"})}),e.jsxs(E,{children:[e.jsx(n,{value:"$",children:"$"}),e.jsx(n,{value:"$$",children:"$$"}),e.jsx(n,{value:"$$$",children:"$$$"}),e.jsx(n,{value:"$$$$",children:"$$$$"})]})]})]})]}),e.jsxs("div",{className:"flex gap-2 justify-end",children:[g&&e.jsx(w,{size:"sm",variant:"outline",onClick:M,children:"Cancelar"}),e.jsx(w,{size:"sm",onClick:u,disabled:b.isPending,className:"gap-1",children:g?e.jsxs(e.Fragment,{children:[e.jsx(xe,{size:12})," Salvar"]}):e.jsxs(e.Fragment,{children:[e.jsx(V,{size:12})," Adicionar"]})})]})]})]})}function Ce({chefText:l,chefArticleId:x,onChange:v}){const{data:b=[]}=Aa(),[_,f]=k.useState(!1),h=b.find(g=>g.id===x);return e.jsxs("div",{className:"space-y-2",children:[e.jsx(i,{className:"text-xs",children:"Chef"}),e.jsxs(ke,{open:_,onOpenChange:f,children:[e.jsx(Se,{asChild:!0,children:e.jsxs(w,{type:"button",variant:"outline",role:"combobox","aria-expanded":_,className:"w-full justify-between font-normal",children:[h?e.jsxs("span",{className:"flex items-center gap-2 truncate",children:[h.cover_image&&e.jsx("img",{src:h.cover_image,alt:"",className:"w-5 h-5 rounded-full object-cover"}),e.jsx("span",{className:"truncate",children:h.title})]}):e.jsx("span",{className:"text-muted-foreground",children:"Vincular a um artigo (Biografias)â¦"}),e.jsx(za,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),e.jsx(Ae,{className:"w-[var(--radix-popover-trigger-width)] p-0",align:"start",children:e.jsxs(ze,{children:[e.jsx(De,{placeholder:"Buscar biografiasâ¦"}),e.jsxs(Pe,{children:[e.jsx(Ee,{children:"Nenhuma biografia publicada."}),e.jsx(Te,{children:b.map(g=>e.jsxs(Le,{value:g.title,onSelect:()=>{v({chef:l,chef_article_id:g.id}),f(!1)},children:[e.jsx(Ie,{className:se("mr-2 h-4 w-4",x===g.id?"opacity-100":"opacity-0")}),g.cover_image&&e.jsx("img",{src:g.cover_image,alt:"",className:"w-6 h-6 rounded-full object-cover mr-2"}),e.jsx("span",{className:"truncate",children:g.title})]},g.id))})]})]})})]}),x&&e.jsxs(w,{type:"button",variant:"ghost",size:"sm",className:"h-7 text-xs",onClick:()=>v({chef:l,chef_article_id:null}),children:[e.jsx(K,{size:12})," Remover vÃnculo"]}),e.jsxs("div",{children:[e.jsx(i,{className:"text-[11px] text-muted-foreground",children:"Ou nome do chef (texto livre)"}),e.jsx(d,{value:l??"",onChange:g=>v({chef:g.target.value||null,chef_article_id:x}),placeholder:"Nome do chef"})]})]})}function Ja({value:l,onChange:x}){const v=l??Ea();function b(m,j){x({...v,[m]:{...v[m],...j}})}function _(m){const j=v[m].periods,r=j[j.length-1],S=r?r.to:"09:00";b(m,{periods:[...j,{from:S,to:"18:00"}]})}function f(m,j){b(m,{periods:v[m].periods.filter((r,S)=>S!==j)})}function h(m,j,r,S){const A=v[m].periods.map((p,N)=>N===j?{...p,[r]:S}:p);b(m,{periods:A})}function g(m){const j=v[m],r=Object.fromEntries(be.map(S=>[S,{...j}]));x(r)}return e.jsx("div",{className:"space-y-3",children:be.map(m=>{const j=v[m];return e.jsxs("div",{className:"rounded-xl border border-border p-3 space-y-2",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(Y,{checked:j.open,onCheckedChange:r=>b(m,{open:r,periods:r&&j.periods.length===0?[{from:"09:00",to:"18:00"}]:j.periods})}),e.jsx("span",{className:`text-sm font-medium ${j.open?"text-foreground":"text-muted-foreground"}`,children:Ta[m]}),!j.open&&e.jsx("span",{className:"text-xs text-muted-foreground bg-muted px-2 py-0.5 rounded-full",children:"Fechado"})]}),e.jsxs("button",{type:"button",onClick:()=>g(m),title:"Copiar para todos os dias",className:"text-xs text-muted-foreground hover:text-primary transition-colors flex items-center gap-1 px-2 py-1 rounded-lg hover:bg-muted",children:[e.jsx(La,{size:12})," Copiar para todos"]})]}),j.open&&e.jsxs("div",{className:"space-y-2 pl-10",children:[j.periods.map((r,S)=>e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(d,{type:"time",value:r.from,onChange:A=>h(m,S,"from",A.target.value),className:"w-28 h-8 text-sm rounded-lg"}),e.jsx("span",{className:"text-muted-foreground text-sm",children:"até"}),e.jsx(d,{type:"time",value:r.to,onChange:A=>h(m,S,"to",A.target.value),className:"w-28 h-8 text-sm rounded-lg"}),j.periods.length>1&&e.jsx("button",{type:"button",onClick:()=>f(m,S),className:"text-destructive hover:text-destructive/80 transition-colors p-1 rounded",children:e.jsx(ee,{size:14})})]},S)),j.periods.length<3&&e.jsxs("button",{type:"button",onClick:()=>_(m),className:"text-xs text-primary hover:text-primary/80 flex items-center gap-1 py-1",children:[e.jsx(V,{size:12})," Adicionar intervalo"]})]})]},m)})})}const we={restaurant:"/restaurantes",hotel:"/hoteis",attraction:"/atracoes",experience:"/experiencias"},Xa=[{value:"all",label:"Todos",icon:e.jsx(Ba,{size:14})},{value:"hotel",label:"Hotéis",icon:e.jsx(Va,{size:14})},{value:"restaurant",label:"Restaurantes",icon:e.jsx(Ma,{size:14})},{value:"attraction",label:"Atrações",icon:e.jsx(Ha,{size:14})},{value:"experience",label:"Experiências",icon:e.jsx(Ua,{size:14})}],Za=["praia","cachoeira","trilha","mirante","lago","centro_historico","museu","igreja","parque","caverna","canion","duna","passeio_barco","passeio_buggy","experiencia_gastronomica","feira","observacao_fauna","snorkel","aventura","bate_volta","evento_sazonal","experiencia_cultural"];function ce({awards:l,onChange:x}){const[v,b]=k.useState({name:"",type:"",year:""});return e.jsxs("div",{className:"space-y-2",children:[l.length>0&&e.jsx("div",{className:"space-y-1.5",children:l.map((_,f)=>e.jsxs("div",{className:"flex items-center gap-2 p-2 bg-muted/40 rounded-lg text-sm",children:[e.jsxs("span",{className:"flex-1 truncate",children:["ð ",_.name,_.type?` · ${_.type}`:"",_.year?` (${_.year})`:""]}),e.jsx("button",{type:"button","aria-label":"Remover prêmio",onClick:()=>x(l.filter((h,g)=>g!==f)),className:"text-muted-foreground hover:text-destructive shrink-0",children:e.jsx(K,{size:12})})]},f))}),e.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[e.jsx(d,{placeholder:"Nome do prÃ
1ªmio *",value:v.name,onChange:_=>b(f=>({...f,name:_.target.value}))}),e.jsx(d,{placeholder:"Tipo (ex: Michelin)",value:v.type,onChange:_=>b(f=>({...f,type:_.target.value}))}),e.jsx(d,{type:"number",placeholder:"Ano",value:v.year,onChange:_=>b(f=>({...f,year:_.target.value}))})]}),e.jsxs(w,{type:"button",size:"sm",variant:"outline",className:"gap-1",onClick:()=>{v.name.trim()&&(x([...l,{name:v.name,type:v.type||void 0,year:v.year?Number(v.year):void 0}]),b({name:"",type:"",year:""}))},children:[e.jsx(V,{size:12})," Adicionar prêmio"]})]})}function ai(){const l=Ue(),{data:x=[],isLoading:v}=ue(),{data:b=[]}=Ke(),[_,f]=k.useState(""),[h,g]=k.useState("all"),[m,j]=k.useState([]),[r,S]=k.useState("all"),[A,p]=k.useState("all"),[N,H]=k.useState(!1),[U,$]=k.useState({open:!1,data:Z}),[M,u]=k.useState(null),[T,c]=k.useState(""),[q,J]=k.useState(null),[B,X]=k.useState(""),[te,he]=k.useState(""),{mutate:$e}=Da(),s=U.data,t=a=>$(o=>({...o,data:{...o.data,...a}})),ie=ne({mutationFn:async a=>{if(a.id){const{error:o}=await Q.from("places").update(a).eq("id",a.id);if(o)throw o}else{const{error:o}=await Q.from("places").insert(a);if(o)throw o}},onSuccess:()=>{l.invalidateQueries({queryKey:["admin-places"]}),l.invalidateQueries({queryKey:["places"]}),$({open:!1,data:Z}),L({title:"Item salvo com sucesso!"})},onError:a=>L({title:"Erro ao salvar",description:a.message,variant:"destructive"})}),Re=ne({mutationFn:async a=>{if(a.tags?.includes("home-cover")){const{error:y}=await Q.from("places").update({tags:(a.tags??[]).filter(R=>R!=="home-cover")}).eq("id",a.id);if(y)throw y}else{const y=x.filter(F=>F.type===a.type&&F.tags?.includes("home-cover"));for(const F of y)await Q.from("places").update({tags:(F.tags??[]).filter(le=>le!=="home-cover")}).eq("id",F.id);const{error:R}=await Q.from("places").update({tags:[...a.tags??[],"home-cover"]}).eq("id",a.id);if(R)throw R}},onSuccess:()=>{l.invalidateQueries({queryKey:["admin-places"]}),l.invalidateQueries({queryKey:["places"]}),L({title:"Capa da home atualizada!"})},onError:a=>L({title:"Erro ao atualizar capa",description:a.message,variant:"destructive"})}),qe=ne({mutationFn:async a=>{const{error:o}=await Q.from("places").delete().eq("id",a);if(o)throw o},onSuccess:()=>{l.invalidateQueries({queryKey:["admin-places"]}),l.invalidateQueries({queryKey:["places"]}),u(null),L({title:"Item excluÃdo com sucesso!"})},onError:a=>L({title:"Erro ao excluir",description:a.message,variant:"destructive"})}),re=a=>{const o=a.map(F=>F.url),y=s.photos||[],R=[...o,...y.filter(F=>!o.includes(F))];t({photos:R}),a.forEach(F=>{F.attribution&&s.id&&$e({entity_type:"place",entity_id:s.id,image_url:F.url,attribution:F.attribution})})},Be=a=>t({photos:s.photos.filter(o=>o!==a)}),pe=a=>{const o=s.amenities??[];t({amenities:o.includes(a)?o.filter(y=>y!==a):[...o,a]})},je=()=>{if(!te.trim())return;const a=te.trim().toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_]/g,"");a&&!(s.amenities??[]).includes(a)&&t({amenities:[...s.amenities??[],a]}),he("")},ge=a=>b.find(o=>o.id===a)?.name??"Desconhecido",G={name:s.name,city:s.city,state:s.state,type:s.type,address:s.address,cuisine_type:s.cuisine_type,destination:ge(s.destination_id)},ve=x.filter(a=>{const o=a.name.toLowerCase().includes(_.toLowerCase())||a.city?.toLowerCase().includes(_.toLowerCase())||a.state?.toLowerCase().includes(_.toLowerCase()),y=h==="all"||a.type===h,R=m.length===0||a.destination_id&&m.includes(a.destination_id),F=r==="all"||a.price_range===r,le=A==="all"||(A==="active"?a.active:!a.active);return o&&y&&R&&F&&le}),Ve=Object.entries(oe).filter(([a,o])=>!B||o.toLowerCase().includes(B.toLowerCase())||a.toLowerCase().includes(B.toLowerCase())),Me=()=>{$({open:!0,data:{...Z}}),c(""),X("")},He=a=>{$({open:!0,data:{...a,tags:a.tags??[],photos:a.photos??[],what_to_bring:Fa(a.what_to_bring??[])}}),c(""),X("")};return e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[e.jsxs("div",{className:"flex items-center gap-2 flex-wrap flex-1",children:[e.jsxs("div",{className:"relative flex-1 sm:flex-none",children:[e.jsx(me,{size:14,className:"absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground"}),e.jsx(d,{placeholder:"Buscar itemâ¦",className:"pl-8 w-full sm:w-56 rounded-xl text-sm bg-background/50",value:_,onCh
1ange:a=>f(a.target.value)})]}),e.jsx("div",{className:"flex items-center gap-1 flex-wrap",children:Xa.map(a=>e.jsxs("button",{onClick:()=>g(a.value),className:`flex items-center gap-1 px-3 py-1.5 rounded-lg text-xs font-medium transition-colors ${h===a.value?"bg-primary text-primary-foreground":"bg-muted/50 text-muted-foreground hover:bg-muted/80"}`,children:[a.icon," ",a.label]},a.value))}),e.jsxs(w,{variant:"outline",size:"sm",onClick:()=>H(!N),className:se("rounded-xl gap-2",N&&"bg-primary/10 border-primary/50"),children:[e.jsx(Oa,{size:14}),"Filtros ",(m.length>0||r!=="all"||A!=="all")&&e.jsx(ae,{variant:"secondary",className:"ml-1 h-4 px-1 text-[10px]",children:m.length+(r!=="all"?1:0)+(A!=="all"?1:0)})]})]}),e.jsxs(w,{onClick:Me,className:"rounded-xl gap-2 shadow-button",size:"sm",children:[e.jsx(V,{size:14})," Novo item"]})]}),N&&e.jsx(_e.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},className:"bg-card/30 backdrop-blur-md border border-border/50 rounded-2xl p-4 overflow-hidden",children:e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(i,{className:"text-xs text-muted-foreground ml-1",children:"Destinos"}),e.jsxs(ke,{children:[e.jsx(Se,{asChild:!0,children:e.jsxs(w,{variant:"outline",size:"sm",className:"w-full justify-between rounded-xl h-9 text-xs font-normal",children:[e.jsxs("div",{className:"flex items-center gap-2 truncate",children:[e.jsx(Ia,{size:12,className:"text-muted-foreground"}),m.length===0?"Todos os destinos":`${m.length} selecionado(s)`]}),e.jsx($a,{size:12,className:"text-muted-foreground"})]})}),e.jsx(Ae,{className:"p-0 w-[300px]",align:"start",children:e.jsxs(ze,{children:[e.jsx(De,{placeholder:"Buscar destinoâ¦",className:"h-8 text-xs"}),e.jsxs(Pe,{className:"max-h-[250px]",children:[e.jsx(Ee,{children:"Nenhum destino encontrado."}),e.jsx(Te,{children:b.map(a=>e.jsxs(Le,{onSelect:()=>{j(o=>o.includes(a.id)?o.filter(y=>y!==a.id):[...o,a.id])},className:"flex items-center gap-2",children:[e.jsx(Ge,{checked:m.includes(a.id)}),e.jsxs("div",{className:"flex flex-col",children:[e.jsx("span",{className:"text-xs font-medium",children:a.name}),e.jsxs("span",{className:"text-[10px] text-muted-foreground",children:[a.city,", ",a.state]})]}),m.includes(a.id)&&e.jsx(Ie,{size:12,className:"ml-auto text-primary"})]},a.id))})]}),m.length>0&&e.jsx("div",{className:"border-t p-2",children:e.jsx(w,{variant:"ghost",size:"sm",onClick:()=>j([]),className:"w-full h-7 text-[10px] rounded-md",children:"Limpar seleção"})})]})})]})]}),e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(i,{className:"text-xs text-muted-foreground ml-1",children:"Faixa de preço"}),e.jsxs(z,{value:r,onValueChange:S,children:[e.jsx(D,{className:"h-9 rounded-xl text-xs bg-background/50",children:e.jsx(P,{placeholder:"Preçoâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"all",children:"Todos os preços"}),e.jsx(n,{value:"free",children:"Gratuito"}),e.jsx(n,{value:"budget",children:"Econômico"}),e.jsx(n,{value:"mid",children:"Intermediário"}),e.jsx(n,{value:"premium",children:"Premium / Luxo"})]})]})]}),e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(i,{className:"text-xs text-muted-foreground ml-1",children:"Status"}),e.jsxs(z,{value:A,onValueChange:p,children:[e.jsx(D,{className:"h-9 rounded-xl text-xs bg-background/50",children:e.jsx(P,{placeholder:"Statusâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"all",children:"Todos os status"}),e.jsx(n,{value:"active",children:"Apenas Ativos"}),e.jsx(n,{value:"inactive",children:"Apenas Inativos"})]})]})]})]})}),v?e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3",children:Array.from({length:6}).map((a,o)=>e.jsx("div",{className:"h-24 rounded-xl bg-muted/50 animate-pulse"},o))}):e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3",children:[ve.map(a=>e.jsxs(_e.div,{initial:{opacity:0,y:8},animate:{opacity:1,y:0},className:"bg-card/80 backdrop-blur-md border border-border/50 rounded-xl p-3 flex gap-3 group hover:border-primary/30 hover:shadow-card transition-all",children:[a.photos?.[0]?e.jsx("img",{src:a.photos[0],alt:a.name,className:"w-14 h-14 roun
1ded-lg object-cover flex-shrink-0",loading:"lazy"}):e.jsx("div",{className:"w-14 h-14 rounded-lg bg-muted/50 flex items-center justify-center flex-shrink-0 text-muted-foreground text-xs uppercase font-bold",children:a.type[0]}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-start justify-between gap-1",children:[e.jsx("p",{className:"font-display font-semibold text-sm text-foreground truncate",children:a.name}),e.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0",children:[e.jsx("button",{"aria-label":a.tags?.includes("home-cover")?"Remover capa da home":"Definir como capa da home",onClick:()=>Re.mutate(a),title:a.tags?.includes("home-cover")?"Capa da home (clique para remover)":"Definir como capa da home",className:se("p-1 rounded-md transition-colors",a.tags?.includes("home-cover")?"text-accent bg-accent/10":"opacity-0 group-hover:opacity-100 text-muted-foreground hover:text-accent hover:bg-accent/10"),children:e.jsx(ye,{size:13})}),we[a.type]&&(a.slug||a.id)&&e.jsx("a",{href:`${we[a.type]}/${a.slug||a.id}`,target:"_blank",rel:"noopener noreferrer","aria-label":`Abrir ${a.name} em nova aba`,className:"p-1 rounded-md hover:bg-muted text-muted-foreground hover:text-primary transition-colors opacity-0 group-hover:opacity-100",children:e.jsx(Ra,{size:13})}),e.jsx("button",{"aria-label":"Editar item",onClick:()=>He(a),className:"p-1 rounded-md hover:bg-muted text-muted-foreground hover:text-foreground transition-colors opacity-0 group-hover:opacity-100",children:e.jsx(qa,{size:13})}),e.jsx("button",{"aria-label":"Excluir item",onClick:()=>u(a.id),className:"p-1 rounded-md hover:bg-destructive/10 text-muted-foreground hover:text-destructive transition-colors opacity-0 group-hover:opacity-100",children:e.jsx(ee,{size:13})})]})]}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:[a.city,a.state?`, ${a.state}`:""]}),e.jsxs("div",{className:"flex items-center gap-1.5 mt-1 flex-wrap",children:[e.jsx(ae,{variant:"secondary",className:"text-[10px] py-0 px-1.5 h-4",children:a.type}),a.destination_id&&e.jsxs("span",{className:"text-[10px] text-muted-foreground truncate max-w-[120px]",children:["ð ",ge(a.destination_id)]}),!a.active&&e.jsx(ae,{variant:"destructive",className:"text-[10px] py-0 px-1.5 h-4",children:"Inativo"})]})]})]},a.id)),ve.length===0&&e.jsx("div",{className:"col-span-full text-center py-16 text-muted-foreground",children:"Nenhum item encontrado"})]}),e.jsx(Qe,{open:U.open,onOpenChange:a=>!a&&$({open:!1,data:Z}),children:e.jsxs(We,{className:"w-full sm:max-w-3xl lg:max-w-5xl max-h-[92vh] overflow-y-auto",children:[e.jsx(Ye,{children:e.jsxs("div",{className:"flex items-center justify-between gap-3 flex-wrap",children:[e.jsx(Je,{className:"font-display",children:s.id?"Editar item":"Novo item"}),e.jsx(Ca,{itemType:s.type,context:G,fields:[{key:"description",label:"Descrição curta (1-2 parágrafos)",type:"text_long"},{key:"experience_description",label:"Como é a experiência completa",type:"text_long"},{key:"what_makes_special",label:"O que torna especial",type:"text_long"},{key:"how_to_get_there",label:"Como chegar (instruções práticas)",type:"text_long"},{key:"how_long_to_stay",label:"Quanto tempo ficar",type:"text_short"},{key:"attention_points",label:"Pontos de atenção / cuidados",type:"text_long"},{key:"best_season",label:"Melhor época para visitar",type:"text_short"}].filter(a=>!String(s[a.key]??"").trim()),onResult:a=>t(a)})]})}),e.jsxs("div",{className:"space-y-3 mt-2",children:[e.jsxs(C,{title:"Identificação",emoji:"ð·ï¸",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{className:"col-span-2",children:[e.jsx(i,{children:"Destino *"}),e.jsxs(z,{value:s.destination_id??"",onValueChange:a=>t({destination_id:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecione um destinoâ¦"})}),e.jsx(E,{children:b.map(a=>e.jsxs(n,{value:a.id,children:[a.name," â ",a.city,a.state?`, ${a.state}`:""]},a.id))})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Tipo *"}),e.jsxs(z,{value:s.type,onValueChange:a=>t({type:a}),children:[e.jsx(D,{children:e.jsx(P,{})}),e.jsxs(E,{children:[e.jsx(n,{value:"attraction",children:"Atração"}),e.jsx(n,{value:"experience",children:"Experiência"}),e.jsx(n,{value:"restaurant",children:"Restaurante"}),e.jsx(n,{value:"hotel",children:"Hotel"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Nome *"}),e.jsx(d,{value:s.name,onChange:a=>t({name:a.target.value}),placeholder:"Nome do item"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Cidade"}),e.jsx(d,{value:s.city,onChange:a=>t({city:a.target.value}),placeholder:"ex: Florianópolis"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Estado (UF)"}),e.jsx(d,{value:s.state??"",onChange:a=>t({state:a.target.value||null}),placeholder:"SC",maxLength:2})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Slug (URL)"}),e.jsx(d,{value:s.slug??"",onChange:a=>t({slug:a.target.value||void 0}),placeholder:"gerado automaticamente"})]})]}),e.jsxs("div",{className:"flex flex-wrap gap-4",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Y,{checked:s.active,onCheckedChange:a=>t({active:a}),id:"pl-active"}),e.jsx(i,{htmlFor:"pl-active",className:"cursor-pointer text-sm",children:"Ativo"})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Y,{checked:s.requires_booking,onCheckedChange:a=>t({requires_booking:a}),id:"pl-booking"}),e.jsx(i,{htmlFor:"pl-booking",className:"cursor-pointer text-sm",children:"Exige reserva"})]}),s.type==="attraction"&&e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Y,{checked:s.show_in_destination,onCheckedChange:a=>t({show_in_destination:a}),id:"pl-show"}),e.jsx(i,{htmlFor:"pl-show",className:"cursor-pointer text-sm",children:"Destacar no destino"})]})]})]}),e.jsxs(C,{title:"Conteúdo",emoji:"ð",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(i,{children:"Descrição"}),e.jsx(W,{itemType:s.type,context:G,field:{key:"description",label:"Descrição do item",type:"text_long",hint:"1-2 parágrafos com o que torna o lugar atrativo"},currentValue:s.description??"",onResult:a=>t({description:String(a)})})]}),e.jsx(I,{rows:3,value:s.description??"",onChange:a=>t({description:a.target.value||null}),placeholder:"Descreva o itemâ¦"})]}),e.jsxs(C,{title:"Tags & Categoria",emoji:"ð",defaultOpen:!1,children:[e.jsx(O,{label:"Tags",values:s.tags,onChange:a=>t({tags:a}),placeholder:"ex: natureza, praia, trilhaâ¦"}),s.type==="attraction"&&e.jsxs(e.Fragment,{children:[e.jsx(O,{label:"Tags secundárias",values:s.secondary_tags,onChange:a=>t({secondary_tags:a}),placeholder:"ex: fotografia, aventuraâ¦"}),e.jsxs("div",{children:[e.jsx(i,{children:"Categoria da atração"}),e.jsxs(z,{value:s.attraction_category??"",onValueChange:a=>t({attraction_category:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsx(E,{children:Za.map(a=>e.jsx(n,{value:a,children:a.replace(/_/g," ")},a))})]})]})]})]}),e.jsxs(C,{title:"Fotos",emoji:"ð¸",defaultOpen:!1,children:[e.jsx(i,{children:"Fotos (URLs) â a primeira é a capa"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(d,{className:"flex-1",value:T,onChange:a=>c(a.target.value),onKeyDown:a=>a.key==="Enter"&&(a.preventDefault(),T.trim()&&re([{url:T.trim(),attribution:""}]),c("")),placeholder:"https://â¦",type:"url"}),e.jsx(w,{type:"button",variant:"outline",onClick:()=>{T.trim()&&(re([{url:T.trim(),attribution:""}]),c(""))},children:"Adicionar"}),e.jsx(wa,{initialQuery:s.name,itemType:s.type||"place",onSelect:re,trigger:e.jsxs(w,{type:"button",variant:"outline",className:"gap-2 border-primary/40 text-primary hover:bg-primary/5",children:[e.jsx(me,{size:14})," Buscar Imagens / IA"]})})]}),s.photos.length>0&&e.jsx("div",{className:"flex flex-wrap gap-2 mt-1",children:s.photos.map((a,o)=>e.jsxs("div",{className:"relative group",children:[e.jsx("img",{src:a,alt:"",className:`w-16 h-12 object-cover rounded-lg ${o===0?"ring-2 ring-accent":""}`,loading:"lazy"}),o===0&&e.jsx("span",{className:"absolute top-0 left-0 bg-accent text-accent-foreground text-[8px] px-1 rounded-br-md rounded-tl-md font-bold",children:"CAPA"}
1),e.jsxs("div",{className:"absolute inset-0 bg-foreground/60 opacity-0 group-hover:opacity-100 transition-opacity rounded-lg flex items-center justify-center gap-0.5",children:[o>0&&e.jsx("button",{"aria-label":"Mover para cima",onClick:()=>{const y=[...s.photos];[y[o-1],y[o]]=[y[o],y[o-1]],t({photos:y})},className:"p-0.5 text-white hover:text-accent",children:e.jsx(Fe,{size:11})}),o>0&&e.jsx("button",{"aria-label":"Definir como capa",onClick:()=>{const y=[...s.photos],[R]=y.splice(o,1);y.unshift(R),t({photos:y})},className:"p-0.5 text-white hover:text-accent",children:e.jsx(ye,{size:11})}),o<s.photos.length-1&&e.jsx("button",{"aria-label":"Mover para baixo",onClick:()=>{const y=[...s.photos];[y[o],y[o+1]]=[y[o+1],y[o]],t({photos:y})},className:"p-0.5 text-white hover:text-accent",children:e.jsx(Oe,{size:11})}),e.jsx("button",{"aria-label":"Gerar variação com IA",onClick:()=>J({url:a,idx:o}),className:"p-0.5 text-white hover:text-primary",children:e.jsx(ka,{size:11})}),e.jsx("button",{"aria-label":"Remover foto",onClick:()=>Be(a),className:"p-0.5 text-white hover:text-destructive",children:e.jsx(K,{size:11})})]})]},a))}),e.jsx(Sa,{open:q!==null,onOpenChange:a=>!a&&J(null),currentImageUrl:q?.url??"",onApplied:a=>{if(!q)return;const o=[...s.photos];o[q.idx]=a,t({photos:o}),J(null)},itemType:s.type||"place"})]}),e.jsx(C,{title:"Localização",emoji:"ð",children:e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{className:"col-span-2",children:[e.jsx(i,{children:"Endereço"}),e.jsx(d,{value:s.address??"",onChange:a=>t({address:a.target.value||null}),placeholder:"Rua, número, bairroâ¦"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Latitude"}),e.jsx(d,{type:"number",step:"any",value:s.lat??"",onChange:a=>t({lat:a.target.value?parseFloat(a.target.value):null}),placeholder:"-23.5505"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Longitude"}),e.jsx(d,{type:"number",step:"any",value:s.lng??"",onChange:a=>t({lng:a.target.value?parseFloat(a.target.value):null}),placeholder:"-46.6333"})]})]})}),e.jsxs(C,{title:"Preço & Disponibilidade",emoji:"ð°",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx(i,{children:"Faixa de preço"}),e.jsxs(z,{value:s.price_range??"",onValueChange:a=>t({price_range:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"free",children:"Gratuito"}),e.jsx(n,{value:"budget",children:"Econômico"}),e.jsx(n,{value:"mid",children:"Médio"}),e.jsx(n,{value:"premium",children:"Premium"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Preço a partir de (R$)"}),e.jsx(d,{type:"number",value:s.price_from??"",onChange:a=>t({price_from:a.target.value?parseFloat(a.target.value):null}),placeholder:"0.00"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Duração (minutos)"}),e.jsx(d,{type:"number",value:s.duration_minutes??"",onChange:a=>t({duration_minutes:a.target.value?parseInt(a.target.value):null}),placeholder:"120"})]}),s.type==="hotel"&&e.jsxs("div",{children:[e.jsx(i,{children:"Estrelas"}),e.jsx(d,{type:"number",min:"1",max:"5",step:"0.5",value:s.star_rating??"",onChange:a=>t({star_rating:a.target.value?parseFloat(a.target.value):null}),placeholder:"4.5"})]}),s.type==="restaurant"&&e.jsxs("div",{children:[e.jsx(i,{children:"Tipo de cozinha"}),e.jsx(d,{value:s.cuisine_type??"",onChange:a=>t({cuisine_type:a.target.value||null}),placeholder:"ex: Italiana, Japonesaâ¦"})]}),e.jsxs("div",{className:"col-span-2",children:[e.jsx(i,{children:"Link de reserva (URL)"}),e.jsx(d,{type:"url",value:s.reservation_link??"",onChange:a=>t({reservation_link:a.target.value||null}),placeholder:"https://â¦"})]})]}),e.jsx(na,{value:s.best_season??null,onChange:a=>t({best_season:a})})]}),(s.type==="attraction"||s.type==="restaurant")&&e.jsxs(C,{title:"Horário de Funcionamento",emoji:"ð",defaultOpen:!1,children:[e.jsx("p",{className:"text-xs text-muted-foreground mb-3",children:"Define os horários abertos por dia da semana. Usado para alertar usuários quando uma visita está fora do horário de funcionamento."}),e.jsx(Ja,{value:s.opening_hours??null,onChange:a=>t({opening_hours:a})})]}),s.type==="hotel"&&e.jsxs(e.Fragment,{children:[e.jsxs(C,{title:"Regras & Check-in",emoji:"ð ",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx(i,{children:"Check-in"}),e.jsx(d,{value:s.check_in_time??"",onChange:a=>t({check_in_time:a.target.value||null}),placeholder:"14:00"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Check-out"}),e.jsx(d,{value:s.check_out_time??"",onChange:a=>t({check_out_time:a.target.value||null}),placeholder:"11:00"})]})]}),e.jsx("div",{className:"flex flex-wrap gap-4 pt-1",children:["allows_children","allows_extra_beds","allows_pets","allows_smoking"].map(a=>e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Y,{checked:!!s[a],onCheckedChange:o=>t({[a]:o}),id:`pl-${a}`}),e.jsx(i,{htmlFor:`pl-${a}`,className:"cursor-pointer text-xs",children:a==="allows_children"?"Aceita crianças":a==="allows_extra_beds"?"Cama extra":a==="allows_pets"?"Aceita pets":"Permite fumar"})]},a))})]}),e.jsx(C,{title:"Comodidades",emoji:"ðï¸",defaultOpen:!1,children:e.jsxs("div",{children:[e.jsx(d,{placeholder:"Buscar comodidadeâ¦",value:B,onChange:a=>X(a.target.value),className:"mb-2"}),e.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 gap-1.5 max-h-52 overflow-y-auto pr-1",children:Ve.map(([a,o])=>{const y=(s.amenities??[]).includes(a);return e.jsxs("label",{className:`flex items-center gap-2 p-2 rounded-lg border cursor-pointer transition-colors text-sm select-none ${y?"border-primary bg-primary/5":"border-border hover:bg-muted/40"}`,children:[e.jsx("input",{type:"checkbox",checked:y,onChange:()=>pe(a),className:"accent-primary"}),e.jsx("span",{className:"truncate",children:o})]},a)})}),e.jsx("p",{className:"text-xs text-muted-foreground mt-2 mb-1",children:"Adicionar comodidade personalizada:"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(d,{placeholder:"ex: Piscina aquecida",value:te,onChange:a=>he(a.target.value),onKeyDown:a=>a.key==="Enter"&&(a.preventDefault(),je()),className:"flex-1"}),e.jsxs(w,{type:"button",size:"sm",variant:"outline",onClick:je,className:"gap-1 shrink-0",children:[e.jsx(V,{size:12})," Adicionar"]})]}),(s.amenities??[]).filter(a=>!oe[a]).length>0&&e.jsx("div",{className:"flex flex-wrap gap-1.5 mt-2",children:(s.amenities??[]).filter(a=>!oe[a]).map(a=>e.jsxs("span",{className:"inline-flex items-center gap-1 text-xs px-2.5 py-1 rounded-full bg-muted border border-border",children:[Pa(a),e.jsx("button",{type:"button",onClick:()=>pe(a),"aria-label":"Remover",children:e.jsx(K,{size:10})})]},a))})]})}),e.jsxs(C,{title:"Proprietário & História",emoji:"ð¤",defaultOpen:!1,children:[e.jsx(i,{className:"mb-1 block",children:"Proprietário / Responsável"}),e.jsx(Ce,{chefText:s.chef??null,chefArticleId:s.chef_article_id??null,onChange:a=>t({chef:a.chef,chef_article_id:a.chef_article_id})}),e.jsxs("div",{className:"flex items-center justify-between mt-2",children:[e.jsx(i,{children:"História do hotel"}),e.jsx(W,{itemType:"hotel",context:G,field:{key:"history",label:"História do hotel",type:"text_long",hint:"Origem, tradição e diferenciais históricos"},currentValue:s.history??"",onResult:a=>t({history:String(a)})})]}),e.jsx(I,{rows:3,value:s.history??"",onChange:a=>t({history:a.target.value||null}),placeholder:"Fundação, trajetória, curiosidadesâ¦"})]}),e.jsx(C,{title:"Prêmios",emoji:"ð",defaultOpen:!1,children:e.jsx(ce,{awards:s.awards??[],onChange:a=>t({awards:a})})})]}),s.type==="restaurant"&&e.jsxs(e.Fragment,{children:[e.jsx(C,{title:"Posicionamento",emoji:"ð½ï¸",children:e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx(i,{children:"Posicionamento"}),e.jsxs(z,{value:s.positioning??"",onValueChange:a=>t({positioning:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"alta_gastronomia",children:"Alta gastronomia"}),e.jsx(n,{value:"tradicional",children:"Tradicional"}),e.jsx(n,{value:"casual",children:"Casual"}),e.jsx(n,{value:"bar",children:"Bar"}),e.jsx(n,{value:"experiencia",children:"Experiência gastronômica"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Tipo de experiência"}),e.jsxs(z,{value:s.experience_type??"",onValueChange:a=>t({experience_type:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"casual",children:"Casual"}),e.jsx(n,{value:"sofisticado",children:"Sofisticado"}),e.jsx(n,{value:"bar",children:"Bar"}),e.jsx(n,{value:"gastronomico",children:"Gastronômico"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Melhor horário"}),e.jsxs(z,{value:s.best_time_of_day??"",onValueChange:a=>t({best_time_of_day:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"almoco",children:"Almoço"}),e.jsx(n,{value:"jantar",children:"Jantar"}),e.jsx(n,{value:"ambos",children:"Ambos"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Duração média da refeição (min)"}),e.jsx(d,{type:"number",value:s.average_meal_minutes??"",onChange:a=>t({average_meal_minutes:a.target.value?parseInt(a.target.value):null}),placeholder:"90"})]})]})}),e.jsxs(C,{title:"Chef & História",emoji:"ð¨âð³",defaultOpen:!1,children:[e.jsx(Ce,{chefText:s.chef??null,chefArticleId:s.chef_article_id??null,onChange:a=>t({chef:a.chef,chef_article_id:a.chef_article_id})}),e.jsxs("div",{className:"flex items-center justify-between mt-2",children:[e.jsx(i,{children:"História do restaurante"}),e.jsx(W,{itemType:"restaurant",context:G,field:{key:"history",label:"História do restaurante",type:"text_long",hint:"Origem, tradição, chef e diferenciais"},currentValue:s.history??"",onResult:a=>t({history:String(a)})})]}),e.jsx(I,{rows:3,value:s.history??"",onChange:a=>t({history:a.target.value||null}),placeholder:"Fundação, trajetória, curiosidadesâ¦"})]}),e.jsxs(C,{title:"Cardápio & Ingredientes",emoji:"ð¥",defaultOpen:!1,children:[e.jsxs("div",{children:[e.jsxs(i,{children:["Resumo rápido ",e.jsx("span",{className:"text-xs text-muted-foreground font-normal",children:"(máx. 160 caracteres)"})]}),e.jsx(I,{rows:2,maxLength:160,value:s.smart_summary??"",onChange:a=>t({smart_summary:a.target.value||null}),placeholder:"Restaurante referência da culinária amazônicaâ¦"})]}),e.jsx(O,{label:"Ingredientes-chave",values:s.key_ingredients??[],onChange:a=>t({key_ingredients:a}),placeholder:"ex: camarão, dendê, tapiocaâ¦"}),s.id&&e.jsx(Ya,{placeId:s.id})]}),e.jsx(C,{title:"Prêmios",emoji:"ð",defaultOpen:!1,children:e.jsx(ce,{awards:s.awards??[],onChange:a=>t({awards:a})})}),e.jsxs(C,{title:"Informações práticas",emoji:"ð",defaultOpen:!1,children:[e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(i,{children:"O que saber antes de ir"}),e.jsx(W,{itemType:"restaurant",context:G,field:{key:"what_to_know_before",label:"O que saber antes de ir",type:"text_long",hint:"Reservas, dress code, tempo de espera, dicas práticas"},currentValue:s.what_to_know_before??"",onResult:a=>t({what_to_know_before:String(a)})})]}),e.jsx(I,{rows:2,value:s.what_to_know_before??"",onChange:a=>t({what_to_know_before:a.target.value||null}),placeholder:"Dress code, reservas, tempo de esperaâ¦"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Como encaixa no roteiro"}),e.jsx(I,{rows:2,value:s.fits_in_itinerary??"",onChange:a=>t({fits_in_itinerary:a.target.value||null}),placeholder:"ex: Ideal para jantar após visita ao centro históricoâ¦"})]}),e.jsx(O,{label:"Ideal para",values:s.ideal_for??[],onChange:a=>t({ideal_for:a}),placeholder:"ex: casais, famÃlia, gruposâ¦"}),e.jsx(O,{label:"Não ideal para",values:s.not_ideal_for??[],onChange:a=>t({not_ideal_for:a}),placeholder:"ex: crianças pequenas, quem tem restriçõesâ¦"})]})]}),s.type==="attraction"&&e.jsxs(e.Fragment,{children:[e.jsx(C,{title:"Trilha & Dificuldade",emoji:"ð¥¾",children:e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx(i,{children:"Dificuldade"}),e.jsxs(z,{value:s.difficulty??"",onValueChange:a=>t({difficulty:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"facil",children:"Fácil"}),e.jsx(n,{value:"moderada",children:"Moderada"}),e.jsx(n,{value:"dificil",children:"DifÃcil"}),e.jsx(n,{value:"muito_dificil",children:"Muito difÃcil"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Tipo de rota"}),e.jsxs(z,{value:s.trail_type??"",onValueChange:a=>t({trail_type:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"ida_e_volta",children:"Ida e volta"}),e.jsx(n,{value:"circular",children:"Circular"}),e.jsx(n,{value:"travessia",children:"Travessia"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Exposição ao sol"}
1),e.jsxs(z,{value:s.sun_exposure??"",onValueChange:a=>t({sun_exposure:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"sombra",children:"Sombra"}),e.jsx(n,{value:"parcial",children:"Parcial"}),e.jsx(n,{value:"pleno_sol",children:"Pleno sol"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Condicionamento fÃsico"}),e.jsxs(z,{value:s.fitness_level??"",onValueChange:a=>t({fitness_level:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"baixo",children:"Baixo"}),e.jsx(n,{value:"moderado",children:"Moderado"}),e.jsx(n,{value:"alto",children:"Alto"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Distância da trilha (km)"}),e.jsx(d,{type:"number",step:"0.1",value:s.trail_distance_km??"",onChange:a=>t({trail_distance_km:a.target.value?parseFloat(a.target.value):null}),placeholder:"4.8"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Ganho de altitude (m)"}),e.jsx(d,{type:"number",value:s.altitude_gain_m??"",onChange:a=>t({altitude_gain_m:a.target.value?parseFloat(a.target.value):null}),placeholder:"220"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Duração caminhada (min)"}),e.jsx(d,{type:"number",value:s.walk_duration_minutes??"",onChange:a=>t({walk_duration_minutes:a.target.value?parseInt(a.target.value):null}),placeholder:"80"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Tipo de terreno"}),e.jsx(d,{value:s.terrain_type??"",onChange:a=>t({terrain_type:a.target.value||null}),placeholder:"ex: pedras e terra"})]})]})}),e.jsxs(C,{title:"Facilidades & Público",emoji:"â¿",defaultOpen:!1,children:[e.jsx("div",{className:"flex flex-wrap gap-3",children:["has_parking","has_restroom","needs_guide","kid_friendly","elderly_friendly","pet_friendly","accessible"].map(a=>e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Y,{checked:!!s[a],onCheckedChange:o=>t({[a]:o}),id:`pl-${a}`}),e.jsx(i,{htmlFor:`pl-${a}`,className:"cursor-pointer text-xs",children:a==="has_parking"?"Estacionamento":a==="has_restroom"?"Banheiro":a==="needs_guide"?"Necessita guia":a==="kid_friendly"?"Crianças":a==="elderly_friendly"?"Idosos":a==="pet_friendly"?"Pet friendly":"AcessÃvel"})]},a))}),e.jsx(O,{label:"Ideal para",values:s.ideal_for??[],onChange:a=>t({ideal_for:a}),placeholder:"ex: famÃlia, casais, senioresâ¦"}),e.jsx(O,{label:"Não ideal para",values:s.not_ideal_for??[],onChange:a=>t({not_ideal_for:a}),placeholder:"ex: mobilidade reduzida, crianças pequenasâ¦"})]}),e.jsx(C,{title:`O que levar${(s.what_to_bring?.length??0)>0?` · ${s.what_to_bring.length} item${s.what_to_bring.length!==1?"s":""}`:""}`,emoji:"ð",defaultOpen:!1,children:e.jsx(fe,{selected:s.what_to_bring??[],onChange:a=>t({what_to_bring:a})})}),e.jsx(C,{title:"Acesso & Infraestrutura",emoji:"ð§",defaultOpen:!1,children:e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx(i,{children:"Tipo de estrada"}),e.jsx(d,{value:s.road_type??"",onChange:a=>t({road_type:a.target.value||null}),placeholder:"ex: asfaltada, terra"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"VeÃculo recomendado"}),e.jsx(d,{value:s.recommended_vehicle??"",onChange:a=>t({recommended_vehicle:a.target.value||null}),placeholder:"ex: carro comum, 4x4"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Lat. estacionamento"}),e.jsx(d,{type:"number",step:"any",value:s.parking_lat??"",onChange:a=>t({parking_lat:a.target.value?parseFloat(a.target.value):null})})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Lng. estacionamento"}),e.jsx(d,{type:"number",step:"any",value:s.parking_lng??"",onChange:a=>t({parking_lng:a.target.value?parseFloat(a.target.value):null})})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Lat. inÃcio da trilha"}),e.jsx(d,{type:"number",step:"any",value:s.trail_start_lat??"",onChange:a=>t({trail_start_lat:a.target.value?parseFloat(a.target.value):null})})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Lng. inÃcio da trilha"}),e.jsx(d,{type:"number",step:"any",value:s.trail_start_lng??"",onChange:a=>t({trail_start_lng:a.target.value?parseFloat(a.target.value):null})})]})]})}),e.jsxs(C,{title:"Textos editoriais",emoji:"ð¬",defaultOpen:!1,children:[e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(i,{children:"Como é a experiência"}),e.jsx(W,{itemType:"attraction",context:G,field:{key:"experience_description",label:"Descrição da experiência",type:"text_long",hint:"O que o visitante vai sentir, ver e viver"},currentValue:s.experience_description??"",onResult:a=>t({experience_description:String(a)})})]}),e.jsx(I,{rows:3,value:s.experience_description??"",onChange:a=>t({experience_description:a.target.value||null}),placeholder:"O que o visitante vai sentir e viverâ¦"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"O que torna especial"}),e.jsx(I,{rows:2,value:s.what_makes_special??"",onChange:a=>t({what_makes_special:a.target.value||null}),placeholder:"Diferenciais únicos desta atraçãoâ¦"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Como chegar"}),e.jsx(d,{value:s.how_to_get_there??"",onChange:a=>t({how_to_get_there:a.target.value||null}),placeholder:"Instruções de acessoâ¦"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Quanto tempo ficar"}),e.jsx(d,{value:s.how_long_to_stay??"",onChange:a=>t({how_long_to_stay:a.target.value||null}),placeholder:"ex: 2 a 4 horas"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Pontos de atenção"}),e.jsx(I,{rows:2,value:s.attention_points??"",onChange:a=>t({attention_points:a.target.value||null}),placeholder:"Cuidados, restrições, horáriosâ¦"})]})]})]}),s.type==="experience"&&e.jsxs(e.Fragment,{children:[e.jsxs(C,{title:"Formato & Público",emoji:"ð¥",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx(i,{children:"Formato da experiência"}),e.jsxs(z,{value:s.experience_format??"",onValueChange:a=>t({experience_format:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"guiada",children:"Guiada"}),e.jsx(n,{value:"privada",children:"Privada"}),e.jsx(n,{value:"grupo",children:"Em grupo"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Tamanho do grupo"}),e.jsxs(z,{value:s.group_size??"",onValueChange:a=>t({group_size:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"privativo",children:"Privativo"}),e.jsx(n,{value:"pequenos",children:"Pequenos (2â8)"}),e.jsx(n,{value:"medios",children:"Médios (9â20)"}),e.jsx(n,{value:"grandes",children:"Grandes (21+)"})]})]})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Esforço fÃsico"}),e.jsxs(z,{value:s.physical_effort??"",onValueChange:a=>t({physical_effort:a||null}),children:[e.jsx(D,{children:e.jsx(P,{placeholder:"Selecionarâ¦"})}),e.jsxs(E,{children:[e.jsx(n,{value:"leve",children:"Leve"}),e.jsx(n,{value:"moderado",children:"Moderado"}),e.jsx(n,{value:"intenso",children:"Intenso"})]})]})]})]}),e.jsx(O,{label:"Horários disponÃveis",values:s.start_time_windows??[],onChange:a=>t({start_time_windows:a}),placeholder:"ex: 09:00, 14:00, 18:00",hint:"Cada horário de inÃcio disponÃvel"}),e.jsx(O,{label:"Idiomas disponÃveis",values:s.languages??[],onChange:a=>t({languages:a}),placeholder:"ex: pt, en, es"})]}),e.jsxs(C,{title:"O que inclui",emoji:"â
",defaultOpen:!1,children:[e.jsx(O,{label:"Incluso",values:s.included??[],onChange:a=>t({included:a}),placeholder:"ex: guia, lanche, transporteâ¦"}),e.jsx(O,{label:"Não incluso",values:s.not_included??[],onChange:a=>t({not_included:a}),placeholder:"ex: transporte de volta, ingressosâ¦"})]}),e.jsx(C,{title:`O que levar${(s.what_to_bring?.length??0)>0?` · ${s.what_to_bring.length} item${s.what_to_bring.length!==1?"s":""}`:""}`,emoji:"ð",defaultOpen:!1,children:e.jsx(fe,{selected:s.what_to_bring??[],onChange:a=>t({what_to_bring:a})})}),e.jsxs(C,{title:"Ponto de encontro",emoji:"ð",defaultOpen:!1,children:[e.jsxs("div",{children:[e.jsx(i,{children:"Descrição do ponto"}),e.jsx(d,{value:s.meeting_point??"",onChange:a=>t({meeting_point:a.target.value||null}),placeholder:"Em frente à entrada principalâ¦"})]}),e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx(i,{children:"Latitude"}),e.jsx(d,{type:"number",step:"any",value:s.meeting_point_lat??"",onChange:a=>t({meeting_point_lat:a.target.value?parseFloat(a.target.value):null})})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Longitude"}),e.jsx(d,{type:"number",step:"any",value:s.meeting_point_lng??"",onChange:a=>t({meeting_point_lng:a.target.value?parseFloat(a.target.value):null})})]})]})]}),e.jsxs(C,{title:"Informações práticas",emoji:"ð",defaultOpen:!1,children:[e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(i,{children:"O que saber antes de ir"}),e.jsx(W,{itemType:"experience",context:G,field:{key:"what_to_know_before",label:"O que saber antes de ir",type:"text_long",hint:"Roupas adequadas, documentos, polÃticas de cancelamento"},currentValue:s.what_to_know_before??"",onResult:a=>t({what_to_know_before:String(a)})})]}),e.jsx(I,{rows:2,value:s.what_to_know_before??"",onChange:a=>t({what_to_know_before:a.target.value||null}),placeholder:"Roupas confortáveis, documentos, polÃtica de cancelamentoâ¦"})]}),e.jsxs("div",{children:[e.jsx(i,{children:"Como encaixa no roteiro"}),e.jsx(I,{rows:2,value:s.fits_in_itinerary??"",onChange:a=>t({fits_in_itinerary:a.target.value||null}),placeholder:"ex: Ideal como primeira atividade do diaâ¦"})]}),e.jsx(O,{label:"Ideal para",values:s.ideal_for??[],onChange:a=>t({ideal_for:a}),placeholder:"ex: famÃlia, aventureirosâ¦"}),e.jsx(O,{label:"Não ideal para",values:s.not_ideal_for??[],onChange:a=>t({not_ideal_for:a}),placeholder:"ex: crianças menores de 5 anosâ¦"})]}),e.jsx(C,{title:"Prêmios",emoji:"ð",defaultOpen:!1,children:e.jsx(ce,{awards:s.awards??[],onChange:a=>t({awards:a})})}),s.id&&e.jsxs(e.Fragment,{children:[e.jsx(C,{title:"Timeline da experiência",emoji:"â±ï¸",defaultOpen:!1,children:e.jsx(Qa,{placeId:s.id})}),e.jsx(C,{title:"Itens relacionados",emoji:"ð",defaultOpen:!1,children:e.jsx(Wa,{placeId:s.id,destinationId:s.destination_id})})]})]})]}),e.jsxs(Xe,{className:"gap-2",children:[e.jsx(w,{variant:"outline",onClick:()=>$({open:!1,data:Z}),children:"Cancelar"}),e.jsxs(w,{onClick:()=>ie.mutate(s),disabled:!s.name||!s.destination_id||ie.isPending,className:"gap-2",children:[ie.isPending?e.jsx("div",{className:"animate-spin w-4 h-4 border-2 border-primary-foreground border-t-transparent roun
1ded-full"}):e.jsx(xe,{size:14}),"Salvar"]})]})]})}),e.jsx(Ze,{open:!!M,onOpenChange:a=>!a&&u(null),children:e.jsxs(ea,{children:[e.jsxs(aa,{children:[e.jsx(sa,{children:"Excluir item?"}),e.jsx(ta,{children:"Esta ação não pode ser desfeita."})]}),e.jsxs(ia,{children:[e.jsx(ra,{children:"Cancelar"}),e.jsx(la,{onClick:()=>M&&qe.mutate(M),className:"bg-destructive hover:bg-destructive/90",children:"Excluir"})]})]})})]})}export{ai 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.