PageSourceSearch

https://app.teacherstack.com/assets/AdminWorkspaceView-CRUm1psM.js

js teacherstack.com collected 2026-10-02 00:19:56 UTC 5,068 bytes, 1 lines download raw bytes

1import{d as S,m as d,e as V,w as t,f as s,g as e,V as p,h as l,t as u,q as r,k as I,_ as z,o as L,r as N,z as B,p as y,am as R,B as f,F as C,C as A,an as Y,ao as D,A as F,n as x,u as G,j as h,ap as U}from"./index-CBp6Fk2f.js";import{u as $}from"./useImpersonation-C9OXTFYU.js";import{V as O}from"./VCard-BwTJTxPy.js";import{V as W}from"./VDialog-C7IX1Q-r.js";import"./teacher-CPNXO_J6.js";import"./index-hyNd5_tp.js";import"./index-t--hEgTQ.js";import"./dialog-transition-CYM4ydOJ.js";const j={class:"dialog-header"},q={class:"header-icon"},M={class:"dialog-content"},P={class:"confirm-message"},H={class:"dialog-actions"},J=S({__name:"ImpersonateConfirmDialog",setup(T){const{target:c,showConfirm:_,cancel:v,confirm:b}=$();return(w,n)=>(d(),V(W,{"max-width":"min(500px, 90vw)","model-value":r(_),scrim:!1,transition:"dialog-transition","onUpdate:modelValue":n[0]||(n[0]=m=>{m||r(v)()})},{default:t(()=>[s(O,{class:"dialog-wrapper",elevation:"12"},{default:t(()=>{var m,o,a;return[e("div",j,[e("div",q,[s(p,{size:"24",color:"primary"},{default:t(()=>[...n[1]||(n[1]=[l("mdi-account-switch",-1)])]),_:1})]),n[2]||(n[2]=e("h3",{class:"dialog-title"},"Confirm Impersonation",-1))]),e("div",M,[e("p",P,[n[3]||(n[3]=l(" You are about to log in as ",-1)),e("strong",null,u((m=r(c))==null?void 0:m.first_name)+" "+u((o=r(c))==null?void 0:o.last_name),1),l(" ("+u((a=r(c))==null?void 0:a.email)+"). ",1)]),n[4]||(n[4]=e("p",{class:"confirm-message"},' You will see the app exactly as this user sees it. Click the account menu and select "Stop Impersonating" when done. ',-1))]),e("div",H,[s(I,{color:"control",variant:"outlined",class:"action-btn btn-cancel",onClick:r(v)},{default:t(()=>[...n[5]||(n[5]=[l("Cancel",-1)])]),_:1},8,["onClick"]),s(I,{color:"primary",variant:"elevated",class:"action-btn btn-confirm",onClick:r(b)},{default:t(()=>[...n[6]||(n[6]=[l("Start Impersonation",-1)])]),_:1},8,["onClick"])])]}),_:1})]),_:1},8,["model-value"]))}}),K=z(J,[["__scopeId","data-v-8594567e"]]),Q={class:"admin-workspace"},X={class:"admin-sidebar"},Z={class:"sidebar-title"},aa={class:"nav-subgroup"},ta=["onClick"],ea={class:"group-label"},sa={key:0,class:"nav-subgroup nav-tool-group"},na={class:"admin-main"},oa=S({__name:"AdminWorkspaceView",setup(T){const c=G(),{error:_}=$();L(()=>{_.value=""});const v=N({});B(()=>c.params.category,o=>{const a=U(String(o??""));a&&(v.value[a.key]=!0)},{immediate:!0});function b(o){v.value[o]=!v.value[o]}function w(o){return!!v.value[o.key]}function n(o){return o.items.some(a=>a.key===c.params.category)}function m(o,a=!1){return a?c.path===o:c.path.startsWith(o)}return(o,a)=>{const g=x("RouterLink"),E=x("router-view");return d(),y("div",Q,[e("nav",X,[e("div",Z,[s(p,{size:"18"},{default:t(()=>[...a[1]||(a[1]=[l("mdi-shield-account",-1)])]),_:1}),a[2]||(a[2]=e("span",null,"Admin",-1))]),s(g,{class:f(["nav-item",{"nav-active":m("/admin/analytics")}]),to:{name:"admin-analytics",params:{category:r(R)}}},{default:t(()=>[s(p,{size:"18"},{default:t(()=>[...a[3]||(a[3]=[l("mdi-chart-box-outline",-1)])]),_:1}),a[4]||(a[4]=e("span",null,"Analytics",-1))]),_:1},8,["class","to"]),e("div",aa,[(d(!0),y(C,null,A(r(Y),i=>(d(),V(g,{key:i.key,class:f(["nav-subitem",{"nav-active":m(`/admin/analytics/${i.key}`,!0)}]),to:{name:"admin-analytics",params:{category:i.key}}},{default:t(()=>[l(u(i.label),1)]),_:2},1032,["class","to"]))),128)),(d(!0),y(C,null,A(r(D),i=>(d(),y(C,{key:i.key},[e("button",{type:"button",class:f(["nav-subitem nav-group-toggle",{"nav-active":n(i)}]),onClick:k=>b(i.key)},[s(p,{size:"16"},{default:t(()=>[l(u(i.icon),1)]),_:2},1024),e("span",ea,u(i.label),1),s(p,{size:"16",class:"chevron"},{default:t(()=>[l(u(w(i)?"mdi-chevron-down":"mdi-chevron-right"),1)]),_:2},1024)],10,ta),w(i)?(d(),y("div",sa,[(d(!0),y(C,null,A(i.items,k=>(d(),V(g,{key:k.key,class:f(["nav-subitem",{"nav-active":m(`/admin/analytics/${k.key}`,!0)}]),to:{name:"admin-analytics",params:{category:k.key}}},{default:t(()=>[l(u(k.label),1)]),_:2},1032,["class","to"]))),128))])):h("",!0)],64))),128))]),s(g,{class:f(["nav-item",{"nav-active":m("/admin/teachers")}]),to:{name:"admin-teachers"}},{default:t(()=>[s(p,{size:"18"},{default:t(()=>[...a[5]||(a[5]=[l("mdi-account-multiple",-1)])]),_:1}),a[6]||(a[6]=e("span",null,"Teachers",-1))]),_:1},8,["class"]),s(g,{class:f(["nav-item",{"nav-active":m("/admin/feature-flags")}]),to:{name:"admin-feature-flags"}},{default:t(()=>[s(p,{size:"18"},{default:t(()=>[...a[7]||(a[7]=[l("mdi-flag-variant-outline",-1)])]),_:1}),a[8]||(a[8]=e("span",null,"Feature flags",-1))]),_:1},8,["class"]),s(g,{class:f(["nav-item",{"nav-active":m("/admin/system")}]),to:{name:"admin-system"}},{default:t(()=>[s(p,{size:"18"},{default:t(()=>[...a[9]||(a[9]=[l("mdi-cog-outline",-1)])]),_:1}),a[10]||(a[10]=e("span",null,"System",-1))]),_:1},8,["class"])]),e("main",na,[s(E)]),s(K),s(F,{"model-value":!!r(_),color:"error",timeout:"5000","onUpdate:modelValue":a[0]||(a[0]=i=>{i||(_.value="")}
1)},{default:t(()=>[l(u(r(_)),1)]),_:1},8,["model-value"])])}}}),va=z(oa,[["__scopeId","data-v-17e267bb"]]);export{va 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.