Files
FrenoCorp/dist/assets/ProjectDetail-BLiJ5iDs.js

3 lines
5.4 KiB
JavaScript

import{h as z,j as F,u as G,c as _,i as a,b,A as P,e as g,g as p,S as m,m as h,t as c,f as H}from"./main-B-KzsHRi.js";import{c as J}from"./service-DriRc7_Z.js";var K=c("<div class=freno-empty-state><div class=freno-empty-icon>🔍</div><h3>Project not found"),M=c("<div class=freno-project-detail>"),Q=c("<div class=freno-page-header><div><div class=freno-breadcrumb><span> / </span><span></span></div><h1></h1></div><div class=freno-header-actions>"),W=c("<div class=freno-tabs><button>Overview</button><button>Collaborators (<!>)</button><button>Settings"),X=c("<div class=freno-info-card><h3>Description</h3><p>"),Y=c("<div class=freno-info-card><h3>Details</h3><dl class=freno-dl><dt>Status</dt><dd><span></span></dd><dt>Created</dt><dd></dd><dt>Last Updated</dt><dd></dd><dt>Owner</dt><dd>"),ee=c("<div class=freno-section><div class=freno-section-header><h2>Collaborators</h2></div><div class=freno-collaborator-list>"),te=c("<div class=freno-settings><div class=freno-info-card><h3>Danger Zone</h3><p>Permanently delete this project and all its data."),ne=c('<button class="freno-btn freno-btn-primary">+ Add'),re=c('<div class=freno-add-collaborator><input type=text placeholder="User ID"class=freno-input><select class=freno-select><option value=viewer>Viewer</option><option value=editor>Editor</option><option value=admin>Admin</option></select><button class="freno-btn freno-btn-primary">Add</button><button class="freno-btn freno-btn-secondary">Cancel'),le=c("<div class=freno-collaborator-item><span class=freno-user-id></span><span>"),ie=c('<button class="freno-btn freno-btn-warning">Archive Project'),ae=c('<button class="freno-btn freno-btn-danger">Delete Project'),se=c('<div class=freno-modal-overlay><div class=freno-modal><h3>Delete Project?</h3><p>This action cannot be undone.</p><div class=freno-modal-actions><button class="freno-btn freno-btn-secondary">Cancel</button><button class="freno-btn freno-btn-danger">Delete');const de=()=>{const w=z(),U=F(),j=G(),S=J(),[L,x]=_(!1),[O,y]=_(!1),[k,E]=_(""),[I,R]=_("editor"),[v,D]=_("overview"),C=()=>S.projects().find(d=>d.id===w.id),A=()=>{const d=C(),s=j().user;return d?.ownerId===s?.id},T=async()=>{await S.deleteProject(w.id),U("/projects")},B=async()=>{await S.archiveProject(w.id)},V=async()=>{if(!k().trim())return;const d=C();d&&(await S.addCollaborator(d.id,k().trim(),I()),E(""),y(!1))},N=d=>new Date(d).toLocaleDateString("en-US",{weekday:"long",year:"numeric",month:"long",day:"numeric"});return(()=>{var d=M();return a(d,b(m,{get when(){return C()},keyed:!0,children:s=>[(()=>{var e=Q(),n=e.firstChild,r=n.firstChild,l=r.firstChild,t=l.nextSibling,o=r.nextSibling,i=n.nextSibling;return a(r,b(P,{href:"/projects",children:"Projects"}),l),a(t,()=>s.name),a(o,()=>s.name),a(i,b(P,{get href(){return`/projects/${s.id}/edit`},class:"freno-btn freno-btn-secondary",children:"Edit"})),e})(),(()=>{var e=W(),n=e.firstChild,r=n.nextSibling,l=r.firstChild,t=l.nextSibling;t.nextSibling;var o=r.nextSibling;return n.$$click=()=>D("overview"),r.$$click=()=>D("collaborators"),a(r,()=>s.collaborators.length,t),o.$$click=()=>D("settings"),g(i=>{var $=`freno-tab ${v()==="overview"?"freno-tab-active":""}`,u=`freno-tab ${v()==="collaborators"?"freno-tab-active":""}`,f=`freno-tab ${v()==="settings"?"freno-tab-active":""}`;return $!==i.e&&p(n,i.e=$),u!==i.t&&p(r,i.t=u),f!==i.a&&p(o,i.a=f),i},{e:void 0,t:void 0,a:void 0}),e})(),b(m,{get when(){return v()==="overview"},get children(){return[(()=>{var e=X(),n=e.firstChild,r=n.nextSibling;return a(r,()=>s.description||"No description provided."),e})(),(()=>{var e=Y(),n=e.firstChild,r=n.nextSibling,l=r.firstChild,t=l.nextSibling,o=t.firstChild,i=t.nextSibling,$=i.nextSibling,u=$.nextSibling,f=u.nextSibling,Z=f.nextSibling,q=Z.nextSibling;return a(o,()=>s.status),a($,()=>N(s.createdAt)),a(f,()=>N(s.updatedAt)),a(q,()=>j().user?.name),g(()=>p(o,`freno-badge freno-badge-${s.status}`)),e})()]}}),b(m,{get when(){return v()==="collaborators"},get children(){var e=ee(),n=e.firstChild;n.firstChild;var r=n.nextSibling;return a(n,(()=>{var l=h(()=>!!A());return()=>l()&&(()=>{var t=ne();return t.$$click=()=>y(!0),t})()})(),null),a(e,(()=>{var l=h(()=>!!O());return()=>l()&&(()=>{var t=re(),o=t.firstChild,i=o.nextSibling,$=i.nextSibling,u=$.nextSibling;return o.$$input=f=>E(f.target.value),i.addEventListener("change",f=>R(f.target.value)),$.$$click=V,u.$$click=()=>y(!1),g(()=>o.value=k()),g(()=>i.value=I()),t})()})(),r),a(r,()=>s.collaborators.map(l=>(()=>{var t=le(),o=t.firstChild,i=o.nextSibling;return a(o,()=>l.userId),a(i,()=>l.role),g(()=>p(i,`freno-badge freno-badge-${l.role}`)),t})())),e}}),b(m,{get when(){return v()==="settings"},get children(){var e=te(),n=e.firstChild,r=n.firstChild;return r.nextSibling,a(n,(()=>{var l=h(()=>!!(A()&&s.status!=="archived"));return()=>l()&&(()=>{var t=ie();return t.$$click=B,t})()})(),null),a(n,(()=>{var l=h(()=>!!A());return()=>l()&&(()=>{var t=ae();return t.$$click=()=>x(!0),t})()})(),null),e}}),h(()=>h(()=>!!L())()&&(()=>{var e=se(),n=e.firstChild,r=n.firstChild,l=r.nextSibling,t=l.nextSibling,o=t.firstChild,i=o.nextSibling;return e.$$click=()=>x(!1),n.$$click=$=>$.stopPropagation(),o.$$click=()=>x(!1),i.$$click=T,e})())]}),null),a(d,b(m,{get when(){return!C()},get children(){var s=K(),e=s.firstChild;return e.nextSibling,a(s,b(P,{href:"/projects",class:"freno-btn freno-btn-primary",children:"Back to Projects"}),null),s}}),null),d})()};H(["click","input"]);export{de as ProjectDetail};
//# sourceMappingURL=ProjectDetail-BLiJ5iDs.js.map