1import{_,o as n,c as a,a as d,w as x,e as m,al as o,f as p,q as s,g as k,v as O,r as g,h as y,b as C,n as b,N as M,y as v}from"./DEsNGmzG.js";const B={name:"ContextMenuOption",props:{icon:{type:String,default:""},linkRoute:{type:Object,default:()=>{}},deleteType:{type:String,default:""}},computed:{buttonType(){const e=this.$slots.default&&this.$slots.default()[0].children;return e==="Report"?"report":e==="Delete"&&this.deleteType==="status"?"delete status":"context-menu"}},methods:{handleClick(e){this.$snowplow.trackButtonEvent({data:{type:this.buttonType,text:e.target.textContent.trim(),classes:e.target.classList,id:e.target.id}})}}},A={class:"context-menu-option"},I={class:"context-menu-option__button-text"},w={class:"context-menu-option__button-text"};function $(e,r,t,f,i,u){const c=p,l=k;return n(),a("li",A,[t.linkRoute?(n(),d(l,{key:0,class:"context-menu-option__button",to:t.linkRoute},{default:x(()=>[m("span",I,[o(e.$slots,"default",{},void 0,!0)]),t.icon?(n(),d(c,{key:0,name:t.icon,class:"context-menu-option__button-icon"},null,8,["name"])):s("",!0)]),_:3},8,["to"])):(n(),a("button",{key:1,class:"context-menu-option__button",onClick:r[0]||(r[0]=(...h)=>u.handleClick&&u.handleClick(...h))}
1,[m("span",w,[o(e.$slots,"default",{},void 0,!0)]),t.icon?(n(),d(c,{key:0,name:t.icon,class:"context-menu-option__button-icon"},null,8,["name"])):s("",!0)]))])}const V=Object.assign(_(B,[["render",$],["__scopeId","data-v-55e08142"]]),{__name:"ContextMenuOption"}),T={name:"ContextMenu",directives:{clickOutside:O.directive},props:{isByCurrentUser:{type:Boolean,default:!1}},data(){return{menuOpensAboveButton:!1,contextMenuIsOpen:!1}},computed:{...M(v,["isModeratorOrAdmin","isAdmin"])},methods:{getMenuHeightToViewport(){if(this.$refs.menu.getBoundingClientRect().bottom<=(window.innerHeight||document.documentElement.clientHeight)){this.menuOpensAboveButton=!1;return}this.menuOpensAboveButton=!0},toggleMenu(){this.contextMenuIsOpen=!this.contextMenuIsOpen,this.contextMenuIsOpen&&this.$nextTick(()=>this.getMenuHeightToViewport()),this.contextMenuIsOpen||(this.menuOpensAboveButton=!1)},onClickOutside(){this.contextMenuIsOpen&&this.toggleMenu()}}},S={key:0,id:"context-menu-options",ref:"menu",class:"context-menu__options"};function U(e,r,t,f,i,u){const c=p,l=g("click-outside");return y((n(),a("div",{class:b(["context-menu",{"context-menu--open":i.contextMenuIsOpen,"context-menu__open-up":i.menuOpensAboveButton}])},[C(c,{container:"button",name:"ellipsis",title:"more actions","aria-expanded":i.contextMenuIsOpen?"true":"false","aria-controls":"context-menu-options",class:"context-menu__button",onClick:u.toggleMenu},null,8,["aria-expanded","onClick"]),i.contextMenuIsOpen?(n(),a("ul",S,[e.isAdmin?o(e.$slots,"admin",{key:0},void 0,!0):s("",!0),e.isModeratorOrAdmin?o(e.$slots,"moderator",{key:1},void 0,!0):s("",!0),t.isByCurrentUser&&!e.isAdmin?o(e.$slots,"currentUser",{key:2},void 0,!0):s("",!0),!t.isByCurrentUser&&!e.isModeratorOrAdmin?o(e.$slots,"default",{key:3},void 0,!0):s("",!0),o(e.$slots,"allUsers",{},void 0,!0)],512)):s("",!0)],2)),[[l,u.onClickOutside]])}const H=Object.assign(_(T,[["render",U],["__scopeId","data-v-89e3ec89"]]),{__name:"ContextMenu"});export{V as _,H as a};
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.