PageSourceSearch

https://assets.flourish.se/builds/986349f89b4228566047cd94103d2b60585b4f61/assets/AdminView-BSOeAB9E.js

js flourish.se collected 2026-09-24 13:27:36 UTC 13,393 bytes, 1 lines download raw bytes

1import{_ as H,u as x,q as E}from"./index-CYjA95yB.js";import{G as F}from"./PhCaretRight.vue-DbVQYe6r.js";import{F as T}from"./PhGear.vue-CVlhDftz.js";import{d as B,i as k,o as s,c as a,r as I,a as f,m as O,b as A,e as i,u as Z,k as p,h as l,p as u,P as z,z as R,R as P,S,j as _,n as h,E as U,t as M,L as D,y as V,F as w,g as y,x as K,az as C}from"./vendor.core-C5Mfuc09.js";import{F as N}from"./PhSignOut.vue-Bn2ikV-T.js";import{G}from"./PhUser.vue-5iTH74tx.js";import{_ as L}from"./flourish-logo-DufrcQlk.js";const j=["width","height","fill","transform"],W={key:0},q=i("path",{d:"M196,76a16,16,0,1,1-16-16A16,16,0,0,1,196,76Zm48,22.74A84.3,84.3,0,0,1,160.11,180H160a83.52,83.52,0,0,1-23.65-3.38l-7.86,7.87A12,12,0,0,1,120,188H108v12a12,12,0,0,1-12,12H84v12a12,12,0,0,1-12,12H40a20,20,0,0,1-20-20V187.31a19.86,19.86,0,0,1,5.86-14.14l53.52-53.52A84,84,0,1,1,244,98.74ZM202.43,53.57A59.48,59.48,0,0,0,158,36c-32,1-58,27.89-58,59.89a59.69,59.69,0,0,0,4.2,22.19,12,12,0,0,1-2.55,13.21L44,189v23H60V200a12,12,0,0,1,12-12H84V176a12,12,0,0,1,12-12h19l9.65-9.65a12,12,0,0,1,13.22-2.55A59.58,59.58,0,0,0,160,156h.08c32,0,58.87-26.07,59.89-58A59.55,59.55,0,0,0,202.43,53.57Z"},null,-1),J=[q],Y={key:1},Q=i("path",{d:"M232,98.36C230.73,136.92,198.67,168,160.09,168a71.68,71.68,0,0,1-26.92-5.17h0L120,176H96v24H72v24H40a8,8,0,0,1-8-8V187.31a8,8,0,0,1,2.34-5.65l58.83-58.83h0A71.68,71.68,0,0,1,88,95.91c0-38.58,31.08-70.64,69.64-71.87A72,72,0,0,1,232,98.36Z",opacity:"0.2"},null,-1),X=i("path",{d:"M216.57,39.43A80,80,0,0,0,83.91,120.78L28.69,176A15.86,15.86,0,0,0,24,187.31V216a16,16,0,0,0,16,16H72a8,8,0,0,0,8-8V208H96a8,8,0,0,0,8-8V184h16a8,8,0,0,0,5.66-2.34l9.56-9.57A79.73,79.73,0,0,0,160,176h.1A80,80,0,0,0,216.57,39.43ZM224,98.1c-1.09,34.09-29.75,61.86-63.89,61.9H160a63.7,63.7,0,0,1-23.65-4.51,8,8,0,0,0-8.84,1.68L116.69,168H96a8,8,0,0,0-8,8v16H72a8,8,0,0,0-8,8v16H40V187.31l58.83-58.82a8,8,0,0,0,1.68-8.84A63.72,63.72,0,0,1,96,95.92c0-34.14,27.81-62.8,61.9-63.89A64,64,0,0,1,224,98.1ZM192,76a12,12,0,1,1-12-12A12,12,0,0,1,192,76Z"},null,-1),$=[Q,X],ee={key:2},te=i("path",{d:"M216.57,39.43A80,80,0,0,0,83.91,120.78L28.69,176A15.86,15.86,0,0,0,24,187.31V216a16,16,0,0,0,16,16H72a8,8,0,0,0,8-8V208H96a8,8,0,0,0,8-8V184h16a8,8,0,0,0,5.66-2.34l9.56-9.57A79.73,79.73,0,0,0,160,176h.1A80,80,0,0,0,216.57,39.43ZM180,92a16,16,0,1,1,16-16A16,16,0,0,1,180,92Z"},null,-1),ne=[te],oe={key:3},ie=i("path",{d:"M215.15,40.85A78,78,0,0,0,86.2,121.31l-56.1,56.1a13.94,13.94,0,0,0-4.1,9.9V216a14,14,0,0,0,14,14H72a6,6,0,0,0,6-6V206H96a6,6,0,0,0,6-6V182h18a6,6,0,0,0,4.24-1.76l10.45-10.44A77.59,77.59,0,0,0,160,174h.1A78,78,0,0,0,215.15,40.85ZM226,98.16c-1.12,35.16-30.67,63.8-65.88,63.84a65.93,65.93,0,0,1-24.51-4.67,6,6,0,0,0-6.64,1.26L117.51,170H96a6,6,0,0,0-6,6v18H72a6,6,0,0,0-6,6v18H40a2,2,0,0,1-2-2V187.31a2,2,0,0,1,.58-1.41l58.83-58.83a6,6,0,0,0,1.26-6.64A65.61,65.61,0,0,1,94,95.92C94,60.71,122.68,31.16,157.83,30A66,66,0,0,1,226,98.16ZM190,76a10,10,0,1,1-10-10A10,10,0,0,1,190,76Z"},null,-1),se=[ie],ae={key:4},le=i("path",{d:"M216.57,39.43A80,80,0,0,0,83.91,120.78L28.69,176A15.86,15.86,0,0,0,24,187.31V216a16,16,0,0,0,16,16H72a8,8,0,0,0,8-8V208H96a8,8,0,0,0,8-8V184h16a8,8,0,0,0,5.66-2.34l9.56-9.57A79.73,79.73,0,0,0,160,176h.1A80,80,0,0,0,216.57,39.43ZM224,98.1c-1.09,34.09-29.75,61.86-63.89,61.9H160a63.7,63.7,0,0,1-23.65-4.51,8,8,0,0,0-8.84,1.68L116.69,168H96a8,8,0,0,0-8,8v16H72a8,8,0,0,0-8,8v16H40V187.31l58.83-58.82a8,8,0,0,0,1.68-8.84A63.72,63.72,0,0,1,96,95.92c0-34.14,27.81-62.8,61.9-63.89A64,64,0,0,1,224,98.1ZM192,76a12,12,0,1,1-12-12A12,12,0,0,1,192,76Z"},null,-1),re=[le],ue={key:5},de=i("path",{d:"M213.74,42.26A76,76,0,0,0,88.51,121.84l-57,57A11.93,11.93,0,0,0,28,187.31V216a12,12,0,0,0,12,12H72a4,4,0,0,0,4-4V204H96a4,4,0,0,0,4-4V180h20a4,4,0,0,0,2.83-1.17l11.33-11.34A75.72,75.72,0,0,0,160,172h.1A76,76,0,0,0,213.74,42.26Zm14.22,56c-1.15,36.22-31.6,65.72-67.87,65.77H160a67.52,67.52,0,0,1-25.21-4.83,4,4,0,0,0-4.45.83l-12,12H96a4,4,0,0,0-4,4v20H72a4,4,0,0,0-4,4v20H40a4,4,0,0,1-4-4V187.31a4.06,4.06,0,0,1,1.17-2.83L96,125.66a4,4,0,0,0,.83-4.45A67.51,67.51,0,0,1,92,95.91C92,59.64,121.55,29.19,157.77,28A68,68,0,0,1,228,98.23ZM188,76a8,8,0,1,1-8-8A8,8,0,0,1,188,76Z"},null,-1),ce=[de],me={name:"PhKey"},he=B({...me,props:{weight:{type:String},size:{type:[String,Number]},color:{type:String},mirrored:{type:Boolean}},setup(t){const e=t,b=k("weight","regular"),v=k("size","1em"),n=k("color","currentColor"),r=k("mirrored",!1),c=A(()=>e.weight??b),g=A(()=>e.size??v),o=A(()=>e.color??n),d=A(()=>e.mirrored!==void 0?e.mirrored?"scale(-1, 1)":void 0:r?"scale(-1, 1)":void 0);return(m,Te)=>(s(),a("svg",O({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",width:g.value,height:g.value,fill:o.value,transform:d.value},m.$attrs),[I(m.$slots,"default"),c.value==="bold"?(s(),a("g",W,J)):c.value==="duotone"?(s(),a("g",Y,$)):c.value==="fill"?(s(),a("g",ee,ne)):c.value==="light"?(s(),a("g",oe,se)):c.value==="regular"?(s(),a("g",ae,re)):c.value==="thin"?(s(),a("g",ue,ce)):f("",!0)],16,j))}}),pe={setup(){const t=x(),e=Z(),b=E();return{authStore:t,router:e,toast:b}},name:"ProfileStats",components:{PhUser:G,PhKey:he,PhCaretRight:F,PhSignOut:N,PhGear:T},data(){return{show:!1,isProfileMenuOpen:!1,isMobile:!1,windowWidth:window.innerWidth}},computed:{name(){var t;return(t=this.authStore)==null?void 0:t.name},isAdmin(){var t;return((t=this.authStore)==null?void 0:t.role)==="admin"},adminLogin(){var t;return(t=this.authStore)==null?void 0:t.adminLogin},isCompanyViewer(){var t;return(t=this.authStore)==null?void 0:t.isCompanyViewer}},mounted(){this.checkMobile(),window.addEventListener("resize",this.onResize)},beforeUnmount(){window.removeEventListener("resize",this.onResize)},methods:{checkIfCompanyAdmin(){var t,e;return((t=this.authStore)==null?void 0:t.isCompanyAdmin)||((e=this.authStore)==null?void 0:e.isCompanyViewer)},async handleLogout(){var e;const t=this.authStore.language||"sv";this.toast.success(t==="sv"?"Ses snart!":"See you soon!"),(e=this.authStore)==null||e.logout(),await this.$nextTick(),setTimeout(()=>{window.location.href="/login"},500)},onResize(){this.windowWidth=window.innerWidth,this.checkMobile()},checkMobile(){this.isMobile=window.innerWidth<=600}}},be={class:"profile-container"},ve={class:"icon-name-container"},ge={class:"logged-in-username-team"},fe={key:0,class:"admin-login-team"};function Me(t,e,b,v,n,r){const c=p("PhUser"),g=p("PhCaretRight"),o=p("PhKey"),d=p("PhSignOut");return s(),a("div",be,[l(D,{modelValue:n.isProfileMenuOpen,"onUpdate:modelValue":e[1]||(e[1]=m=>n.isProfileMenuOpen=m),"close-on-content-click":!n.isMobile,"offset-x":!n.isMobile,"offset-y":n.isMobile,bottom:n.isMobile,right:!n.isMobile,"min-width":"180",rounded:"lg",transition:"slide-y-transition","content-class":n.isMobile?"profile-menu-mobile":""},{activator:u(({props:m})=>[l(U,O({variant:"text",class:"profile-menu-btn"},m,{class:{mobile:n.isMobile}}),{default:u(()=>[i("div",ve,[l(c,{class:"user-icon-team"}),i("p",ge,[_(M(r.name||"You")+" ",1),r.adminLogin?(s(),a("span",fe,"A")):f("",!0)])]),l(g,{class:h(["chevron-icon-team-menu",{rotated:n.isProfileMenuOpen&&n.isMobile}])},null,8,["class"])]),_:1},16,["class"])]),default:u(()=>[l(z,{class:"py-2"},{default:u(()=>[r.isAdmin?(s(),R(P,{key:0,onClick:e[0]||(e[0]=m=>v.router.push("/admin/dashboard")),class:"profile-menu-item",ripple:n.isMobile},{prepend:u(()=>[l(o,{class:"mr-2"})]),default:u(()=>[l(S,null,{default:u(()=>[...e[2]||(e[2]=[_("Admin View",-1)])]),_:1})]),_:1},8,["ripple"])):f("",!0),l(P,{onClick:r.handleLogout,class:h(["profile-menu-item",{"logout-mobile":n.isMobile}]),ripple:n.isMobile},{prepend:u(()=>[l(d,{class:"mr-2"})]),default:u(()=>[l(S,null,{default:u(()=>
1[...e[3]||(e[3]=[_("Logout",-1)])]),_:1})]),_:1},8,["onClick","class","ripple"])]),_:1})]),_:1},8,["modelValue","close-on-content-click","offset-x","offset-y","bottom","right","content-class"])])}const _e=H(pe,[["render",Me]]),ke={name:"AdminBanner",components:{ProfileStats:_e},setup(){return{router:Z()}},data(){return{activeMenu:null,mobileMenuOpen:!1,menuItems:[{id:"users",label:"User Management",items:[{label:"Companies",route:"/admin/companies"},{label:"Users",route:"/admin/users"},{label:"Teams",route:"/admin/groups"},{label:"Employees",route:"/admin/employees"},{label:"Integrations",route:"/admin/integrations"}]},{id:"pulse",label:"Pulse & FA",items:[{label:"Pulse",route:"/admin/pulse"},{label:"Surveys",route:"/admin/surveys"},{label:"Benchmarks",route:"/admin/benchmarks"},{label:"Carousel Intro",route:"/admin/carousel-intro"}]},{id:"admin",label:"Administration",items:[{label:"Invoicing",route:"/admin/invoicing"},{label:"Past Invoices",route:"/admin/invoices"},{label:"Facebook Deletion",route:"/admin/facebookdeletionrequests"},{label:"Feature Flags & Packages",route:"/admin/feature-flags"},{label:"Flourish Guide",route:"/admin/guide"}]},{id:"gdpr",label:"GDPR",items:[{label:"Overview",route:"/admin/gdpr"},{label:"Processing Records",route:"/admin/gdpr/processing-records"},{label:"Sub-Processors",route:"/admin/gdpr/sub-processors"},{label:"Data Breaches",route:"/admin/gdpr/breaches"},{label:"Privacy Notice",route:"/admin/gdpr/privacy-notice"}]},{id:"jobs",label:"Jobs",items:[{label:"Upcoming",route:"/admin/upcoming-overview"},{label:"Upcoming Sends",route:"/admin/upcoming-sends"},{label:"Completed",route:"/admin/completed-overview"},{label:"Failed Lambda",route:"/admin/failed-lambda-jobs"},{label:"Orphan SGPs",route:"/admin/orphan-sgps"},{label:"Stats",route:"/admin/jobs-stats"},{label:"Deploy",route:"/admin/deploy"}]},{id:"info",label:"Information",items:[{label:"Docs",route:"/admin/docs"},{label:"Email",route:"/admin/email"},{label:"Incoming SMS",route:"/admin/sms"},{label:"Notifications",route:"/admin/notifications"},{label:"Broadcast",route:"/admin/broadcast"},{label:"Monthly Report Test",route:"/admin/monthly-report-test"}]}]}},methods:{toggleMenu(t){this.activeMenu=this.activeMenu===t?null:t},closeMenu(){this.activeMenu=null},toggleMobileMenu(){this.mobileMenuOpen=!this.mobileMenuOpen,this.mobileMenuOpen||(this.activeMenu=null)},navigateTo(t){this.activeMenu=null,this.mobileMenuOpen=!1,this.router.push(t)},handleClickOutside(t){const e=this.$refs.banner;e&&!e.contains(t.target)&&(this.closeMenu(),this.mobileMenuOpen=!1)},handleEscape(t){t.key==="Escape"&&(this.closeMenu(),this.mobileMenuOpen=!1)}},mounted(){document.addEventListener("click",this.handleClickOutside),document.addEventListener("keydown",this.handleEscape)},beforeUnmount(){document.removeEventListener("click",this.handleClickOutside),document.removeEventListener("keydown",this.handleEscape)}},Ae={ref:"banner",class:"admin-banner"},we={class:"admin-nav desktop-nav"},ye=["aria-expanded","onClick"],Ve={key:0,class:"dropdown-menu",role:"menu"},Ce=["onClick","onKeydown"],He={key:0,class:"mobile-menu"},Pe=["onClick"],Se={key:0,class:"mobile-submenu"},Le=["onClick"];function Oe(t,e,b,v,n,r){const c=p("router-link"),g=p("ProfileStats");return s(),a("header",Ae,[i("button",{class:"hamburger",onClick:e[0]||(e[0]=V((...o)=>r.toggleMobileMenu&&r.toggleMobileMenu(...o),["stop"])),"aria-label":"Toggle menu"},[i("span",{class:h({open:n.mobileMenuOpen})},null,2),i("span",{class:h({open:n.mobileMenuOpen})},null,2),i("span",{class:h({open:n.mobileMenuOpen})},null,2)]),i("nav",we,[l(c,{to:"/",class:"logo-link"},{default:u(()=>[...e[3]||(e[3]=[i("img",{class:"logo",src:L,height:"30",alt:"Flourish"},null,-1)])]),_:1}),i("button",{class:"nav-item",onClick:e[1]||(e[1]=o=>r.navigateTo("/admin/dashboard"))}," Dashboard "),(s(!0),a(w,null,y(n.menuItems,o=>(s(),a("div",{key:o.id,class:"nav-dropdown"},[i("button",{class:h(["nav-item",{active:n.activeMenu===o.id}]),"aria-expanded":n.activeMenu===o.id,"aria-haspopup":!0,onClick:V(d=>r.toggleMenu(o.id),["stop"])},[_(M(o.label)+" ",1),i("span",{class:h(["arrow",{rotated:n.activeMenu===o.id}])},"▾",2)],10,ye),l(C,{name:"dropdown"},{default:u(()=>[n.activeMenu===o.id?(s(),a("ul",Ve,[(s(!0),a(w,null,y(o.items,d=>(s(),a("li",{key:d.route,class:"dropdown-item",role:"menuitem",tabindex:"0",onClick:m=>r.navigateTo(d.route),onKeydown:K(m=>r.navigateTo(d.route),["enter"])},M(d.label),41,Ce))),128))])):f("",!0)]),_:2},1024)]))),128))]),l(c,{to:"/",class:"mobile-logo-link"},{default:u(()=>[...e[4]||(e[4]=[i("img",{class:"logo",src:L,height:"26",alt:"Flourish"},null,-1)])]),_:1}),l(g),l(C,{name:"mobile-menu"},{default:u(()=>[n.mobileMenuOpen?(s(),a("div",He,[i("button",{class:"mobile-nav-item",onClick:e[2]||(e[2]=o=>r.navigateTo("/admin/dashboard"))}," Dashboard "),(s(!0),a(w,null,y(n.menuItems,o=>(s(),a("div",{key:o.id,class:"mobile-nav-group"},[i("button",{class:h(["mobile-nav-item",{active:n.activeMenu===o.id}]),onClick:V(d=>r.toggleMenu(o.id),["stop"])},[_(M(o.label)+" ",1),i("span",{class:h(["arrow",{rotated:n.activeMenu===o.id}])},"▾",2)],10,Pe),l(C,{name:"submenu"},{default:u(()=>[n.activeMenu===o.id?(s(),a("ul",Se,[(s(!0),a(w,null,y(o.items,d=>(s(),a("li",{key:d.route,class:"mobile-submenu-item",onClick:m=>r.navigateTo(d.route)},M(d.label),9,Le))),128))])):f("",!0)]),_:2},1024)]))),128))])):f("",!0)]),_:1})],512)}const Ze=H(ke,[["render",Oe],["__scopeId","data-v-e4458cb0"]]),xe={class:"admin-container"},Ee={class:"admin-router-container"},Fe={__name:"AdminView",setup(t){return(e,b)=>{const v=p("router-view");return s(),a("div",xe,[l(Ze),i("div",Ee,[l(v)])])}}},Ne=H(Fe,[["__scopeId","data-v-fccafbdf"]]);export{Ne 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.