1import{_ as T}from"./TAlllHut.js";import{_ as N}from"./DlAUqK2U.js";import{c as i,o as n,a as d,e as U,r as P,h as H,m as L,n as V,aa as z,ab as y,j as p,k as r,t as x,d as C,b as f,x as G,s as O,F as A,p as I,i as J,q as Q}from"./C59FrtZ0.js";import{_ as R}from"./C2alnJcx.js";import{d as W}from"./rmOQojX4.js";import{u as X,d as Y}from"./CYscP1_u.js";import{n as Z}from"./vcSNLBTf.js";import{u as _}from"./Cp18l5Mv.js";import{s as ee}from"./AzWOQBOk.js";import{_ as c}from"./Dwp7MH-O.js";import"./DJesTLlK.js";import"./DxJI3Wx7.js";import"./CxQEGuGQ.js";import"./CvU46R2p.js";import"./DhLMLlsU.js";import"./CSola3s5.js";import"./D89nN8OM.js";const oe={},te={fill:"none",height:"24",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",class:"icon icon-tabler icon-tabler-circle-plus"};function le(e,k){return n(),i("svg",te,[...k[0]||(k[0]=[d("path",{d:"M0 0h24v24H0z",fill:"none",stroke:"none"},null,-1),d("circle",{cx:"12",cy:"12",r:"9"},null,-1),d("line",{x1:"9",x2:"15",y1:"12",y2:"12"},null,-1),d("line",{x1:"12",x2:"12",y1:"9",y2:"15"},null,-1)])])}const re=N(oe,[["render",le]]),se={},ne={fill:"none",height:"24",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",class:"icon icon-tabler icon-tabler-dots-vertical"};function ie(e,k){return n(),i("svg",ne,[...k[0]||(k[0]=[d("path",{d:"M0 0h24v24H0z",fill:"none",stroke:"none"},null,-1),d("circle",{cx:"12",cy:"12",r:"1"},null,-1),d("circle",{cx:"12",cy:"19",r:"1"},null,-1),d("circle",{cx:"12",cy:"5",r:"1"},null,-1)])])}const ae=N(se,[["render",ie]]),de={class:"pl-2"},ue=["data-block","title"],ce=["innerHTML"],be={class:"truncate text-sm"},ke={key:0,class:"errors"},me={key:1,class:"errors"},ye={key:2,class:"ml-auto hidden gap-2 parent-hocus:flex"},pe={class:"ml-2 border-l pl-2"},ve={class:"mt-px truncate"},ge=["onClick"],Be=["data-key"],qe=U({__name:"BlockTreeItem",props:{blockData:{type:Object,required:!0},blockKey:{type:String,required:!0},tree:{type:Object,required:!0},errors:{type:Object,required:!0},selectedBlock:{type:String,default:null},blockFocused:{type:Boolean,required:!0},index:{type:Number,required:!0},sortableBlockName:{type:String,required:!0},sortableKey:{type:Number,required:!0},disabled:{type:Boolean,default:!1}},emits:["update:errors","update:selectedBlock","update:sortableBlockName","update:blockFocused","update:sortableKey","updated","openAddBlockPopup","openMoreBlockOptionsPopup","addBlockBefore","clickBlock","highlight","unhighlight","delete","sortEnd"],setup(e,{emit:k}){const u=e,h=k,v=_(),S=v.value.blocks[u.blockData.name].icon,b=Object.keys(v.value.blocks[u.blockData.name].slots),g=P([]),D=P([]),F=H(()=>g.value.every(t=>t!=="blocks")),j=W.BlockTreeItem();return L(()=>{for(const[t,o]of D.value.entries()){const B=X(o,u.blockData.slots[b[t]],{...Y,group:g.value[t]??"blocks",emptyInsertThreshold:0,onStart:a=>{document.body.classList.add("is-sorting"),h("update:sortableBlockName",""),Q(()=>h("update:sortableBlockName",u.tree.blocks[`${a.from.dataset.key}.${a.oldIndex}`].item.block.name))},onUpdate:()=>null,onEnd:a=>h("sortEnd",a),setData:(a,K)=>{ee({dragImageLabel:c("pruvious-dashboard",K.dataset.label)}),a.setDragImage(document.getElementById("pruvious-drag-image"),-16,10),a.effectAllowed="move"}});B.start(),V(()=>u.sortableBlockName,()=>{var a;B&&(g.value[t]=`${u.blockKey}.block.slots.${b[t]}`===((a=u.selectedBlock)==null?void 0:a.split(".").slice(0,-1).join("."))||u.tree.blocks[u.blockKey].slots[b[t]].allowedBlocks.includes(u.sortableBlockName)?"blocks":Z(),B.option("group",u.sortableBlockName?g.value[t]:"blocks"))})}}),(t,o)=>{const B=T,a=re,K=R,q=ae,m=z("pruvious-tooltip");return n(),i("div",de,[d("div",{"data-block":e.blockKey,title:r(c)("pruvious-dashboard",r(v).blocks[e.blockData.name].description??""),onClick:o[4]||(o[4]=s=>(t.$emit("update:selectedBlock",e.blockKey),t.$emit("clickBlock",e.blockKey))),onMousedown:o[5]||(o[5]=s=>{e.selectedBlock!==e.blockKey&&(t.$emit("update:selectedBlock",e.blockKey),t.$emit("update:blockFocused",!0),t.$emit("clickBlock",e.blockKey),s.preventDefault())}),onMouseenter:o[6]||(o[6]=s=>t.$emit("highlight",e.blockKey)),onMouseleave:o[7]||(o[7]=s=>
1t.$emit("unhighlight",e.blockKey)),tabindex:"0",class:O(["relative flex h-9 min-w-[10rem] items-center gap-2 pr-2 outline-none transition",{"cursor-move text-gray-900":e.selectedBlock===e.blockKey,"cursor-pointer text-gray-400":e.selectedBlock!==e.blockKey,"not-sorting:hover:text-primary-700":e.selectedBlock!==e.blockKey,"sorting:opacity-50":r(F)}])},[d("span",{innerHTML:r(S),class:"h-4 w-4 shrink-0"},null,8,ce),d("span",be,x(r(c)("pruvious-dashboard",r(v).blocks[e.blockData.name].label)),1),e.tree.blocks[e.blockKey].errorCount&&!e.tree.blocks[e.blockKey].errorMessage?y((n(),i("span",ke,[C(x(e.tree.blocks[e.blockKey].errorCount),1)])),[[m,r(c)("pruvious-dashboard","$count $errors found",{count:e.tree.blocks[e.blockKey].errorCount}),void 0,{"highlight-apostrophes":!0}]]):p("",!0),e.tree.blocks[e.blockKey].errorMessage?y((n(),i("strong",me,[...o[21]||(o[21]=[C(" ! ",-1)])])),[[m,e.tree.blocks[e.blockKey].errorMessage,void 0,{"highlight-apostrophes":!0}]]):p("",!0),e.disabled?p("",!0):(n(),i("div",ye,[y((n(),i("button",{onClick:o[0]||(o[0]=s=>t.$emit("addBlockBefore")),tabindex:"-1",type:"button",class:"h-4 w-4 text-gray-400 transition hocus:text-primary-700"},[f(B)])),[[m,r(c)("pruvious-dashboard","Add block before")]]),r(b).length===1?y((n(),i("button",{key:0,onClick:o[1]||(o[1]=s=>t.$emit("openAddBlockPopup",{treeOrSlot:e.tree.blocks[e.blockKey].slots[r(b)[0]],slot:r(b)[0]})),tabindex:"-1",type:"button",class:"h-4 w-4 text-gray-400 transition hocus:text-primary-700"},[f(a)])),[[m,r(c)("pruvious-dashboard","Add inner block")]]):p("",!0),y((n(),i("button",{onMousedown:o[2]||(o[2]=G(s=>t.$emit("delete",e.blockKey),["prevent","stop"])),tabindex:"-1",type:"button",class:"h-4 w-4 text-gray-400 transition hocus:text-red-500"},[f(K)],32)),[[m,r(c)("pruvious-dashboard","Delete")]]),y((n(),i("button",{onClick:o[3]||(o[3]=s=>t.$emit("openMoreBlockOptionsPopup")),tabindex:"-1",type:"button",class:"h-4 w-4 text-gray-400 transition hocus:text-primary-700"},[f(q)])),[[m,r(c)("pruvious-dashboard","More options")]])]))],42,ue),(n(!0),i(A,null,I(r(b),(s,E)=>{var M;return n(),i("div",pe,[r(b).length>1?(n(),i("div",{key:0,class:O(["relative ml-2 flex h-9 items-center justify-between gap-2 pr-2 text-xs font-medium uppercase text-gray-400 transition before:absolute before:-left-4 before:top-1/2 before:w-2 before:border-b",{"sorting:opacity-50":r(g)[E]!=="blocks"}])},[d("span",ve,x((M=e.tree.blocks[e.blockKey].slots[s])==null?void 0:M.label),1),e.disabled?p("",!0):y((n(),i("button",{key:0,onClick:w=>t.$emit("openAddBlockPopup",{treeOrSlot:e.tree.blocks[e.blockKey].slots[s],slot:s}),type:"button",class:"hidden h-4 w-4 items-center text-gray-400 transition hocus:text-primary-700 parent-hocus:flex"},[f(a)],8,ge)),[[m,r(c)("pruvious-dashboard","Add inner block")]])],2)):p("",!0),d("div",{"data-key":`${e.blockKey}.block.slots.${s}`,ref_for:!0,ref_key:"sortableEls",ref:D,class:"sortable-area"},[(n(!0),i(A,null,I(e.blockData.slots[s],({block:w},$)=>(n(),J(r(j),{blockData:w,blockFocused:e.blockFocused,blockKey:`${e.blockKey}.block.slots.${s}.${$}`,"data-label":r(c)("pruvious-dashboard",r(v).blocks[w.name].label),disabled:e.disabled,errors:e.errors,index:$,key:`${e.sortableKey}-${e.blockKey}.block.slots.${s}.${$}`,selectedBlock:e.selectedBlock,sortableBlockName:e.sortableBlockName,sortableKey:e.sortableKey,tree:e.tree,onAddBlockBefore:l=>t.$emit("openAddBlockPopup",{treeOrSlot:e.tree.blocks[e.blockKey].slots[s],slot:s,index:$}),onClickBlock:o[8]||(o[8]=l=>t.$emit("clickBlock",l)),onDelete:o[9]||(o[9]=l=>t.$emit("delete",l)),onHighlight:o[10]||(o[10]=l=>t.$emit("highlight",l)),onOpenAddBlockPopup:o[11]||(o[11]=l=>t.$emit("openAddBlockPopup",l)),onOpenMoreBlockOptionsPopup:o[12]||(o[12]=l=>t.$emit("openMoreBlockOptionsPopup")),onSortEnd:o[13]||(o[13]=l=>t.$emit("sortEnd",l)),onUnhighlight:o[14]||(o[14]=l=>t.$emit("unhighlight",l)),"onUpdate:blockFocused":o[15]||(o[15]=l=>t.$emit("update:blockFocused",l)),"onUpdate:errors":o[16]||(o[16]=l=>t.$emit("update:errors",l)),"onUpdate:selectedBlock":o[17]||(o[17]=l=>t.$emit("update:selectedBlock",l)),"onUpdate:sortableBlockName":o[18]||(o[18]=l=>t.$emit("update:sortableBlockName",l)),"onUpdate:sortableKey":o[19]||(o[19]=l=>t.$emit("update:sortableKey",l)),onUpdated:o[20]||(o[20]=l=>t.$emit("updated"))},null,8,["blockData","blockFocused","blockKey","data-label","disabled","errors","index","selectedBlock","sortableBlockName","sortableKey","tree","onAddBlockBefore"]))),128))],8,Be)])}),256))])}}});
1export{qe 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.