foggy-data-viewer 1.0.1-beta.37 → 1.0.1-beta.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +7 -5
- package/dist/index.umd +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2014,16 +2014,18 @@ async function Ca(e) {
|
|
|
2014
2014
|
return l;
|
|
2015
2015
|
}
|
|
2016
2016
|
function xa(e) {
|
|
2017
|
-
|
|
2018
|
-
|
|
2019
|
-
|
|
2020
|
-
|
|
2017
|
+
if (!e) return [];
|
|
2018
|
+
const n = /* @__PURE__ */ new Set();
|
|
2019
|
+
return e.flatMap((t) => {
|
|
2020
|
+
const l = t.trim();
|
|
2021
|
+
return !l || l === "_actions" || n.has(l) ? [] : (n.add(l), [l]);
|
|
2022
|
+
});
|
|
2021
2023
|
}
|
|
2022
2024
|
async function Ss(e, n) {
|
|
2023
2025
|
var a;
|
|
2024
2026
|
const t = xa(n.columns);
|
|
2025
2027
|
if (t.length === 0)
|
|
2026
|
-
throw new Error(
|
|
2028
|
+
throw new Error(`${e} direct query requires non-empty business columns`);
|
|
2027
2029
|
const l = await Je.post(
|
|
2028
2030
|
`/query/direct/${encodeURIComponent(e)}`,
|
|
2029
2031
|
{ ...n, columns: t }
|
package/dist/index.umd
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(T,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("element-plus"),require("axios")):typeof define=="function"&&define.amd?define(["exports","vue","element-plus","axios"],e):(T=typeof globalThis<"u"?globalThis:T||self,e(T.FoggyDataViewer={},T.Vue,T.ElementPlus,T.axios))})(this,function(T,e,X,Ze){"use strict";var _i=Object.defineProperty;var Ni=(T,e,X)=>e in T?_i(T,e,{enumerable:!0,configurable:!0,writable:!0,value:X}):T[e]=X;var gn=(T,e,X)=>Ni(T,typeof e!="symbol"?e+"":e,X);const yn=["placeholder"],wn=["onClick","onMouseenter"],bn=e.defineComponent({__name:"TextFilter",props:{field:{},modelValue:{},placeholder:{default:"搜索..."}},emits:["update:modelValue","commit"],setup(t,{emit:a}){const n=t,l=a,o=e.ref(""),i=e.ref(!1),h=e.ref(),r=e.ref(),c=e.ref(),m=e.ref(0),y=e.ref(!1),p=e.ref({});function b(){if(!r.value)return;const x=r.value.getBoundingClientRect();p.value={position:"fixed",top:`${x.bottom+4}px`,left:`${x.left}px`,width:`${x.width}px`,zIndex:"9999"}}e.watch(()=>n.modelValue,x=>{if(!x||x.length===0){o.value="";return}const O=x[0];O.op==="in"&&Array.isArray(O.value)?o.value=O.value.join(", "):o.value=String(O.value||"").replace(/%/g,"")},{immediate:!0});const k=e.computed(()=>{const x=o.value.trim();return x?[{op:"right_like",label:`左匹配:${x}***`},{op:"=",label:`等于:${x}`},{op:"in",label:`批量查找:${x}`}]:[]});function d(x){const O=o.value.trim();if(!O)return null;if(x==="in"){const I=O.split(/[,,\s]+/).filter(W=>W.trim());return I.length===1?{field:n.field,op:"=",value:I[0]}:{field:n.field,op:"in",value:I}}return{field:n.field,op:x,value:O}}function V(){const x=d("right_like");l("update:modelValue",x?[x]:null)}function C(){o.value.trim()?(b(),i.value=!0,m.value=0,V()):(i.value=!1,l("update:modelValue",null))}function R(x){const O=d(x);O&&(l("update:modelValue",[O]),l("commit",[O]),i.value=!1)}function H(x){if(!(y.value||x.isComposing)){if(!i.value||k.value.length===0){x.key==="Enter"&&o.value.trim()&&(x.preventDefault(),R("right_like"));return}switch(x.key){case"ArrowDown":x.preventDefault(),m.value=(m.value+1)%k.value.length;break;case"ArrowUp":x.preventDefault(),m.value=(m.value-1+k.value.length)%k.value.length;break;case"Enter":x.preventDefault(),R(k.value[m.value].op);break;case"Escape":i.value=!1;break}}}function N(){o.value="",i.value=!1,l("update:modelValue",null),l("commit",null)}function D(){y.value=!0}function K(){y.value=!1,C()}function M(x){var Z,ie;const O=x.target,I=(Z=h.value)==null?void 0:Z.contains(O),W=(ie=c.value)==null?void 0:ie.contains(O);!I&&!W&&(i.value=!1)}return e.onMounted(()=>{document.addEventListener("click",M)}),e.onUnmounted(()=>{document.removeEventListener("click",M)}),(x,O)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:h,class:"filter-text"},[e.createElementVNode("div",{ref_key:"inputWrapperRef",ref:r,class:"input-wrapper"},[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":O[0]||(O[0]=I=>o.value=I),type:"text",placeholder:t.placeholder,onInput:C,onKeydown:H,onCompositionstart:D,onCompositionend:K,onFocus:O[1]||(O[1]=()=>{o.value.trim()&&(b(),i.value=!0)})},null,40,yn),[[e.vModelText,o.value]]),o.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"clear-btn",onClick:e.withModifiers(N,["stop"])},"×")):e.createCommentVNode("",!0)],512),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[i.value&&k.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:c,class:"filter-dropdown",style:e.normalizeStyle(p.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,(I,W)=>(e.openBlock(),e.createElementBlock("div",{key:I.op,class:e.normalizeClass(["filter-option",{highlighted:W===m.value}]),onClick:Z=>R(I.op),onMouseenter:Z=>m.value=W},e.toDisplayString(I.label),43,wn))),128))],4)):e.createCommentVNode("",!0)]))],512))}}),re=(t,a)=>{const n=t.__vccOpts||t;for(const[l,o]of a)n[l]=o;return n},Re=re(bn,[["__scopeId","data-v-c47bcc50"]]),Vn={class:"filter-number-range"},kn=["placeholder"],Cn=["placeholder"],et=re(e.defineComponent({__name:"NumberRangeFilter",props:{field:{},modelValue:{},placeholderMin:{default:"最小"},placeholderMax:{default:"最大"}},emits:["update:modelValue","commit"],setup(t,{emit:a}){const n=t,l=a,o=e.ref(""),i=e.ref("");e.watch(()=>n.modelValue,c=>{if(!c||c.length===0){o.value="",i.value="";return}const m=c.find(y=>y.op==="[]"||y.op==="[)");if(m&&Array.isArray(m.value)){const[y,p]=m.value;o.value=y!=null?String(y):"",i.value=p!=null?String(p):""}else{const y=c.find(b=>b.op===">="),p=c.find(b=>b.op==="<=");o.value=(y==null?void 0:y.value)!=null?String(y.value):"",i.value=(p==null?void 0:p.value)!=null?String(p.value):""}},{immediate:!0});function h(){const c=o.value.trim(),m=i.value.trim();if(!c&&!m){l("update:modelValue",null),l("commit",null);return}const y=c?parseFloat(c):null,p=m?parseFloat(m):null;if(!(c&&isNaN(y))&&!(m&&isNaN(p))){if(y!==null&&p!==null){const b=[{field:n.field,op:"[]",value:[y,p]}];l("update:modelValue",b),l("commit",b)}else if(y!==null){const b=[{field:n.field,op:">=",value:y}];l("update:modelValue",b),l("commit",b)}else if(p!==null){const b=[{field:n.field,op:"<=",value:p}];l("update:modelValue",b),l("commit",b)}}}function r(){o.value="",i.value="",l("update:modelValue",null),l("commit",null)}return(c,m)=>(e.openBlock(),e.createElementBlock("div",Vn,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":m[0]||(m[0]=y=>o.value=y),type:"text",placeholder:t.placeholderMin,onChange:h,onKeyup:e.withKeys(h,["enter"])},null,40,kn),[[e.vModelText,o.value]]),m[2]||(m[2]=e.createElementVNode("span",{class:"separator"},"-",-1)),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":m[1]||(m[1]=y=>i.value=y),type:"text",placeholder:t.placeholderMax,onChange:h,onKeyup:e.withKeys(h,["enter"])},null,40,Cn),[[e.vModelText,i.value]]),o.value||i.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"clear-btn",onClick:r},"×")):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-09db1027"]]),_n={class:"filter-date-range"},Qe=re(e.defineComponent({__name:"DateRangeFilter",props:{field:{},modelValue:{},format:{default:"YYYY-MM-DD"},showTime:{type:Boolean,default:!1}},emits:["update:modelValue","commit"],setup(t,{emit:a}){const n=t,l=a,o=e.ref(null),i=e.computed(()=>{var m;return n.showTime||((m=n.format)==null?void 0:m.includes("HH"))}),h=e.computed(()=>i.value?"YYYY-MM-DD HH:mm":"YYYY-MM-DD");e.watch(()=>n.modelValue,m=>{if(!m||m.length===0){o.value=null;return}const y=m.find(p=>p.op==="[)"||p.op==="[]");if(y&&Array.isArray(y.value)){const[p,b]=y.value;o.value=[new Date(p.replace(" ","T")),new Date(b.replace(" ","T"))]}else{const p=m.find(k=>k.op===">="),b=m.find(k=>k.op==="<="||k.op==="<");if(p||b){const k=p?new Date(String(p.value).replace(" ","T")):null,d=b?new Date(String(b.value).replace(" ","T")):null;k&&d?o.value=[k,d]:k?o.value=[k,k]:d&&(o.value=[d,d])}else o.value=null}},{immediate:!0});function r(m){const y=m.getFullYear(),p=String(m.getMonth()+1).padStart(2,"0"),b=String(m.getDate()).padStart(2,"0");if(i.value){const k=String(m.getHours()).padStart(2,"0"),d=String(m.getMinutes()).padStart(2,"0"),V=String(m.getSeconds()).padStart(2,"0");return`${y}-${p}-${b} ${k}:${d}:${V}`}return`${y}-${p}-${b}`}function c(m){if(!m||m.length!==2){l("update:modelValue",null),l("commit",null);return}const[y,p]=m,b=r(y);let k;if(i.value)k=r(p);else{const V=new Date(p);V.setDate(V.getDate()+1),k=r(V)}const d=[{field:n.field,op:"[)",value:[b,k]}];l("update:modelValue",d),l("commit",d)}return(m,y)=>{const p=e.resolveComponent("el-date-picker");return e.openBlock(),e.createElementBlock("div",_n,[e.createVNode(p,{modelValue:o.value,"onUpdate:modelValue":y[0]||(y[0]=b=>o.value=b),type:i.value?"datetimerange":"daterange",format:h.value,"range-separator":"~","start-placeholder":"开始","end-placeholder":"结束",size:"small",clearable:!0,editable:!1,onChange:c},null,8,["modelValue","type","format"])])}}}),[["__scopeId","data-v-0027bb33"]]),Nn={key:0,class:"selected-text"},xn={key:1,class:"placeholder-text"},En=["title"],Sn={class:"search-box"},Bn=["placeholder"],Mn={class:"options-container"},Dn={key:0,class:"loading-hint"},vn=["onClick","onMouseenter"],Tn=["checked","onClick"],$n={class:"option-label"},Pn={key:0,class:"no-data"},Fn={key:0,class:"more-hint"},Ln={key:1,class:"confirm-bar"},An={class:"selected-count"},Le=re(e.defineComponent({__name:"SelectFilter",props:{field:{},selectionField:{},modelValue:{},options:{default:()=>[]},placeholder:{default:"请选择..."},loading:{type:Boolean,default:!1},maxDisplayItems:{default:100},remoteLoader:{},qmModel:{}},emits:["update:modelValue","commit"],setup(t,{emit:a}){const n=t,l=a,o=e.ref(!1),i=e.ref(!1),h=e.ref(""),r=e.ref(new Set),c=e.ref(),m=e.ref(),y=e.ref(0),p=e.ref(),b=e.ref({}),k=e.ref([]),d=e.ref(!1),V=e.ref(0),C=e.ref(!1),R=e.ref(new Map);let H=null;const N=e.computed(()=>!!n.remoteLoader&&!!n.qmModel),D=e.computed(()=>n.selectionField||n.field);e.watch(()=>n.modelValue,w=>{if(r.value.clear(),!w||w.length===0)return;const f=w[0];f.op==="in"&&Array.isArray(f.value)?(i.value=!0,f.value.forEach(v=>r.value.add(v))):f.op==="="&&(i.value=!1,r.value.add(f.value))},{immediate:!0});const K=e.computed(()=>N.value?k.value:n.options),M=e.computed(()=>{if(N.value||!h.value.trim())return K.value;const w=h.value.toLowerCase();return K.value.filter(f=>f.label.toLowerCase().includes(w)||String(f.value).toLowerCase().includes(w))}),x=e.computed(()=>M.value.slice(0,n.maxDisplayItems)),O=e.computed(()=>N.value?C.value:M.value.length>n.maxDisplayItems),I=e.computed(()=>N.value?d.value:n.loading),W=e.computed(()=>{if(r.value.size===0)return"";if(N.value){const f=[];for(const v of r.value){const $=R.value.get(v);$?f.push($):f.push(String(v))}return f.length<=2?f.join(", "):`已选 ${f.length} 项`}const w=n.options.filter(f=>r.value.has(f.value));return w.length===0?Array.from(r.value).join(", "):w.length<=2?w.map(f=>f.label).join(", "):`已选 ${w.length} 项`});async function Z(w){if(!(!n.remoteLoader||!n.qmModel)){d.value=!0;try{const f=await n.remoteLoader({qmModel:n.qmModel,fieldName:n.field,keyword:w||void 0,start:0,limit:n.maxDisplayItems,selectedValues:r.value.size>0?Array.from(r.value):void 0});if(k.value=f.items.map(ie),V.value=f.total,C.value=f.hasMore??!1,f.selectedItems)for(const v of f.selectedItems)R.value.set(v.value,v.label);for(const v of f.items)R.value.set(v.value,v.label)}catch(f){console.error("远程成员加载失败:",f),k.value=[]}finally{d.value=!1}}}function ie(w){return{value:w.value,label:w.label}}function ue(){y.value=0,N.value&&(H&&clearTimeout(H),H=setTimeout(()=>{Z(h.value)},250))}function de(){if(!m.value)return;const w=m.value.getBoundingClientRect();b.value={position:"fixed",top:`${w.bottom+4}px`,left:`${w.left}px`,width:`${w.width}px`,zIndex:"9999"}}function P(){o.value=!o.value,o.value&&(h.value="",y.value=0,de(),setTimeout(()=>{var w;return(w=p.value)==null?void 0:w.focus()},0),N.value&&k.value.length===0&&Z(""))}function S(){if(i.value=!i.value,!i.value&&r.value.size>1){const w=r.value.values().next().value;r.value.clear(),w!==void 0&&r.value.add(w),we()}}function z(w){return r.value.has(w.value)}function ne(w){R.value.set(w.value,w.label),i.value?r.value.has(w.value)?r.value.delete(w.value):r.value.add(w.value):(r.value.clear(),r.value.add(w.value),we(),o.value=!1)}function se(){we(),o.value=!1}function we(){if(r.value.size===0){l("update:modelValue",null),l("commit",null);return}let w;i.value||r.value.size>1?w=[{field:D.value,op:"in",value:Array.from(r.value)}]:w=[{field:D.value,op:"=",value:r.value.values().next().value}],l("update:modelValue",w),l("commit",w)}function te(){r.value.clear(),h.value="",o.value=!1,l("update:modelValue",null),l("commit",null)}function me(w){if(!o.value)return;const f=x.value;if(f.length!==0)switch(w.key){case"ArrowDown":w.preventDefault(),y.value=(y.value+1)%f.length;break;case"ArrowUp":w.preventDefault(),y.value=(y.value-1+f.length)%f.length;break;case"Enter":w.preventDefault(),f[y.value]&&ne(f[y.value]);break;case"Escape":o.value=!1;break}}const Me=e.ref();function be(w){var q,Q;const f=w.target,v=(q=c.value)==null?void 0:q.contains(f),$=(Q=Me.value)==null?void 0:Q.contains(f);!v&&!$&&(o.value&&i.value&&we(),o.value=!1)}return e.onMounted(()=>document.addEventListener("click",be)),e.onUnmounted(()=>{document.removeEventListener("click",be),H&&clearTimeout(H)}),(w,f)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:c,class:"filter-select"},[e.createElementVNode("div",{ref_key:"inputRef",ref:m,class:"select-input",onClick:P},[W.value?(e.openBlock(),e.createElementBlock("span",Nn,e.toDisplayString(W.value),1)):(e.openBlock(),e.createElementBlock("span",xn,e.toDisplayString(t.placeholder),1)),e.createElementVNode("span",{class:"toggle-multi",onClick:e.withModifiers(S,["stop"]),title:i.value?"切换单选":"切换多选"},e.toDisplayString(i.value?"多":"单"),9,En),W.value?(e.openBlock(),e.createElementBlock("span",{key:2,class:"clear-btn",onClick:e.withModifiers(te,["stop"])},"×")):e.createCommentVNode("",!0)],512),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:Me,class:"filter-dropdown",style:e.normalizeStyle(b.value)},[e.createElementVNode("div",Sn,[e.withDirectives(e.createElementVNode("input",{ref_key:"searchInputRef",ref:p,"onUpdate:modelValue":f[0]||(f[0]=v=>h.value=v),type:"text",placeholder:N.value?"输入关键词搜索...":"搜索...",onClick:f[1]||(f[1]=e.withModifiers(()=>{},["stop"])),onInput:ue,onKeydown:me},null,40,Bn),[[e.vModelText,h.value]])]),e.createElementVNode("div",Mn,[I.value?(e.openBlock(),e.createElementBlock("div",Dn," 加载中... ")):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,(v,$)=>(e.openBlock(),e.createElementBlock("div",{key:String(v.value),class:e.normalizeClass(["filter-option",{selected:z(v),highlighted:$===y.value}]),onClick:q=>ne(v),onMouseenter:q=>y.value=$},[i.value?(e.openBlock(),e.createElementBlock("input",{key:0,type:"checkbox",checked:z(v),onClick:e.withModifiers(q=>ne(v),["stop"])},null,8,Tn)):e.createCommentVNode("",!0),e.createElementVNode("span",$n,e.toDisplayString(v.label),1)],42,vn))),128)),x.value.length===0?(e.openBlock(),e.createElementBlock("div",Pn,e.toDisplayString(N.value&&!h.value?"打开后自动加载":"无匹配数据"),1)):e.createCommentVNode("",!0)],64))]),O.value?(e.openBlock(),e.createElementBlock("div",Fn,[N.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" 共 "+e.toDisplayString(V.value)+" 条,请输入关键词缩小范围 ",1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" 还有 "+e.toDisplayString(M.value.length-t.maxDisplayItems)+" 条,请输入关键词搜索 ",1)],64))])):e.createCommentVNode("",!0),i.value?(e.openBlock(),e.createElementBlock("div",Ln,[e.createElementVNode("span",An,"已选 "+e.toDisplayString(r.value.size)+" 项",1),e.createElementVNode("button",{class:"confirm-btn",onClick:se},"确定")])):e.createCommentVNode("",!0)],4)):e.createCommentVNode("",!0)]))],512))}}),[["__scopeId","data-v-7502da10"]]),In={class:"filter-bool"},tt=re(e.defineComponent({__name:"BoolFilter",props:{field:{},modelValue:{},trueLabel:{default:"是"},falseLabel:{default:"否"}},emits:["update:modelValue","commit"],setup(t,{emit:a}){const n=t,l=a,o=e.ref(null);e.watch(()=>n.modelValue,h=>{if(!h||h.length===0){o.value=null;return}const r=h[0];r.op==="="?o.value=r.value===!0||r.value==="true"||r.value===1:o.value=null},{immediate:!0});function i(h){if(o.value=h,h===null)l("update:modelValue",null),l("commit",null);else{const r=[{field:n.field,op:"=",value:h}];l("update:modelValue",r),l("commit",r)}}return(h,r)=>(e.openBlock(),e.createElementBlock("div",In,[e.createElementVNode("button",{class:e.normalizeClass({active:o.value===null}),title:"全部","aria-label":"全部",onClick:r[0]||(r[0]=c=>i(null))}," 全 ",2),e.createElementVNode("button",{class:e.normalizeClass({active:o.value===!0}),onClick:r[1]||(r[1]=c=>i(!0))},e.toDisplayString(t.trueLabel),3),e.createElementVNode("button",{class:e.normalizeClass({active:o.value===!1}),onClick:r[2]||(r[2]=c=>i(!1))},e.toDisplayString(t.falseLabel),3)]))}}),[["__scopeId","data-v-421747f5"]]);function Ct(){const t=e.ref([]);function a({records:i}){t.value=i}function n({records:i}){t.value=i}function l(){t.value=[]}function o(){return t.value.length}return{selectedRows:t,onCheckboxChange:a,onCheckboxAll:n,clearSelection:l,getSelectedCount:o}}const zn=["NUMBER","MONEY","BIGDECIMAL","INTEGER","BIGINT","LONG"];function Rn(t){return zn.includes((t==null?void 0:t.toUpperCase())||"")}function _t(t){return!!t&&(t.measure===!0||t.aggregatable===!0)&&Rn(t.type)}function dt(t){if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"&&t.trim()){const a=Number(t);return Number.isFinite(a)?a:null}return null}function Nt(t){const a=e.ref(null),n=e.computed(()=>t.value.filter(_t));function l(r){const c={_count:r.length};if(r.length===0)return c;for(const m of n.value)c[m.name]=r.reduce((y,p)=>{const b=p[m.name];return y+(typeof b=="number"?b:0)},0);return c}function o(r,c){if(r==null)return"";if(typeof r!="number")return String(r);const m=c==null?void 0:c.toUpperCase();return m==="MONEY"||m==="NUMBER"||m==="BIGDECIMAL"?r.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2}):r.toLocaleString("zh-CN")}function i(r,c,m=0){var b,k,d;const y=[],p=[];for(let V=0;V<r.length;V++){const R=r[V].field;if(V===0){y.push("选中"),p.push("合计");continue}if(V===1){const H=dt(c._count)??0,N=dt((b=a.value)==null?void 0:b.total)??dt((k=a.value)==null?void 0:k._count)??m;y.push(`${H} 条`),p.push(`${N} 条`);continue}if(R){const H=t.value.find(N=>N.name===R);if(_t(H)){const N=c[R],D=(d=a.value)==null?void 0:d[R];y.push(o(N,H==null?void 0:H.type)),p.push(o(D,H==null?void 0:H.type))}else y.push(null),p.push(null)}else y.push(null),p.push(null)}return[y,p]}function h(r){a.value=r}return{serverSummary:a,measureColumns:n,calculateSelectedSummary:l,generateFooterData:i,setServerSummary:h,formatValue:o}}class nt{constructor(){gn(this,"hooks",new Map)}add(a,n){return this.hooks.has(a)||this.hooks.set(a,new Set),this.hooks.get(a).add(n),()=>{var l;return(l=this.hooks.get(a))==null?void 0:l.delete(n)}}remove(a,n){var l;(l=this.hooks.get(a))==null||l.delete(n)}size(a){var n;return((n=this.hooks.get(a))==null?void 0:n.size)??0}clear(){this.hooks.clear()}async runBefore(a){const n=this.hooks.get("onBeforeQuery");if(n)for(const l of n){const o=await l(a);if(o===!1)return!1;o&&typeof o=="object"&&"page"in o&&(a.params=o)}}async runAfter(a,n){const l=this.hooks.get("onAfterQuery");if(!l)return n;let o=n;for(const i of l){const h=await i(a,o);h&&typeof h=="object"&&"items"in h&&(o=h)}return o}async runError(a,n){const l=this.hooks.get("onQueryError");if(!l)return!1;let o=!1;for(const i of l)await i(a,n)===!0&&(o=!0);return o}}const Oe=new nt,xt={add(t,a){return Oe.add(t,a)},remove(t,a){Oe.remove(t,a)},register(t){const a=[];return t.onBeforeQuery&&a.push(Oe.add("onBeforeQuery",t.onBeforeQuery)),t.onAfterQuery&&a.push(Oe.add("onAfterQuery",t.onAfterQuery)),t.onQueryError&&a.push(Oe.add("onQueryError",t.onQueryError)),()=>a.forEach(n=>n())},clear(){Oe.clear()},_getRegistry(){return Oe}};function On(t){return t.flatMap(a=>{const n=a.dir??a.order,l=typeof n=="string"?n.toLowerCase():n;if(!a.field||l!=="asc"&&l!=="desc")return[];const o={field:a.field,dir:l};return a.nullFirst&&(o.nullFirst=!0),a.nullLast&&(o.nullLast=!0),[o]})}function Wn(t){return t.flatMap(a=>{const n=a.trim();return n?[n]:[]})}function Et(t,a={}){const n=e.ref([]),l=e.ref(0),o=e.ref(!1),i=e.ref(null),h=e.ref(null),r=e.ref(null),c=e.ref(1),m=e.ref(a.pageSize??50),y=e.ref([]),p=e.ref([]),b=e.ref([]),k=new nt,d=xt._getRegistry();function V(){const I=new nt,W=a.hooks;return W&&(W.onBeforeQuery&&I.add("onBeforeQuery",W.onBeforeQuery),W.onAfterQuery&&I.add("onAfterQuery",W.onAfterQuery),W.onQueryError&&I.add("onQueryError",W.onQueryError)),I}async function C(I="refresh"){const W={params:{page:c.value,pageSize:m.value,columns:[...b.value],slice:[...p.value],orderBy:[...y.value]},trigger:I},Z=V();if(!(await d.runBefore(W)===!1||await Z.runBefore(W)===!1||await k.runBefore(W)===!1)){o.value=!0,i.value=I,h.value=null;try{let P=await t(W.params);P=await k.runAfter(W,P),P=await Z.runAfter(W,P),P=await d.runAfter(W,P),n.value=P.items,l.value=P.total,r.value=P.totalData??null}catch(P){const S=P instanceof Error?P:new Error(String(P));h.value=S;const z=await k.runError(W,S),ne=await Z.runError(W,S),se=await d.runError(W,S);if(!z&&!ne&&!se)throw console.error("数据加载失败:",S),S}finally{o.value=!1,i.value=null}}}async function R(){await C("refresh")}async function H(){c.value=1,await C("reload")}function N(I,W){c.value=I,W!==void 0&&(m.value=W)}function D(I){y.value=On(I)}function K(I){p.value=I}function M(I){b.value=Wn(I)}function x(I,W){return k.add(I,W)}function O(I,W){k.remove(I,W)}return{data:n,total:l,loading:o,activeTrigger:i,lastError:h,serverSummary:r,currentPage:c,currentPageSize:m,currentOrderBy:y,currentSlice:p,currentColumns:b,loadData:C,refresh:R,reload:H,setPage:N,setSort:D,setSlice:K,setColumns:M,addHook:x,removeHook:O}}const Qn=150,Un=250,Hn=160;function ut(t,a={}){const n=a.delayMs??Qn,l=a.minVisibleMs??Un,o=a.fadeMs??Hn,i=e.ref(!1),h=e.ref(!1);let r=0,c,m,y,p;function b(R){R!==void 0&&clearTimeout(R)}function k(){b(c),b(m),c=void 0,m=void 0}function d(){b(y),b(p),y=void 0,p=void 0}function V(){d(),!h.value&&(i.value||(i.value=!0),m=setTimeout(()=>{h.value=!0,r=Date.now(),m=void 0},0))}function C(){if(k(),!i.value){h.value=!1;return}const R=r>0?Date.now()-r:0,H=Math.max(0,l-R);y=setTimeout(()=>{h.value=!1,r=0,y=void 0,p=setTimeout(()=>{i.value=!1,p=void 0},o)},H)}return e.watch(t,R=>{R?(k(),d(),c=setTimeout(()=>{V(),c=void 0},n)):C()},{immediate:!0}),e.onBeforeUnmount(()=>{k(),d()}),{shouldRender:i,visible:h}}function qn(t){const a=e.ref({}),n=e.ref({});function l(c,m){if(m==null||m===""){const y={...a.value};delete y[c],a.value=y}else a.value={...a.value,[c]:m}}function o(){return n.value={...a.value},h(n.value)}function i(){a.value={},n.value={}}function h(c){var y;const m=[];for(const[p,b]of Object.entries(c)){if(b==null||b==="")continue;if(Array.isArray(b)&&b.length>0&&((y=b[0])!=null&&y.field)){m.push(...b);continue}const k=t==null?void 0:t.find(C=>C.key===p);if(!k)continue;const d=k.sourceField,V=k.defaultOperator||"=";if(V==="[]"&&Array.isArray(b)&&b.length===2){const[C,R]=b;(C!=null||R!=null)&&m.push({field:d,op:"[]",value:[C,R]});continue}if(Array.isArray(b)){b.length>0&&m.push({field:d,op:"in",value:b});continue}m.push({field:d,op:V,value:b})}return m}const r=e.computed(()=>h(n.value));return{draft:a,applied:n,commitDraft:o,resetAll:i,patchDraft:l,appliedSlices:r}}const jn={key:0,class:"data-table-toolbar"},Yn={class:"toolbar-left"},Gn={key:0,class:"toolbar-right"},Kn={key:0,class:"data-table-query-spinner","aria-hidden":"true"},Xn={class:"data-table-query-status-text"},Jn={class:"table-wrapper"},Zn={key:1,class:"data-table-footer"},ea=88,mt=re(e.defineComponent({inheritAttrs:!1,__name:"DataTable",props:{columns:{},data:{},total:{},loading:{type:Boolean},backgroundLoading:{type:Boolean,default:!1},backgroundLoadingText:{default:""},backgroundLoadingError:{default:null},pageSize:{default:50},showFilters:{type:Boolean,default:!0},showPager:{type:Boolean,default:!0},initialSlice:{},localFilter:{type:Boolean,default:!0},serverSummary:{},filterOptionsLoader:{},filterMemberLoader:{},qmModel:{},customFilterComponents:{},cellCopy:{},density:{default:"compact"}},emits:["page-change","sort-change","filter-change","filter-commit","row-click","row-dblclick","checkbox-change","checkbox-all"],setup(t,{expose:a,emit:n}){const l=e.useAttrs(),o=t,i=n,h=e.useSlots(),r=e.ref(),c=e.ref(null),m=e.computed(()=>["data-table",o.density==="compact"?"data-table--compact":""]),y=ut(e.computed(()=>o.loading)),p=ut(e.computed(()=>o.backgroundLoading??!1)),b=e.computed(()=>o.backgroundLoadingError?o.backgroundLoadingError:o.backgroundLoadingText||""),k=e.computed(()=>!!o.backgroundLoadingError&&!o.backgroundLoading),d=e.computed(()=>o.showPager||!!h["toolbar-right"]),V=e.computed(()=>!b.value||!d.value?!1:p.shouldRender.value||k.value),C=e.computed(()=>k.value?!0:p.visible.value),R=e.computed(()=>p.shouldRender.value),H=e.computed(()=>p.visible.value);function N(s){return s&&typeof s=="object"&&!Array.isArray(s)?s:void 0}function D(s,g){if(!s)return null;for(const E of g){const B=s[E];if(typeof B=="string"&&B.trim())return B.trim()}return null}function K(s){const g=s,E=D(g,["description","descrip","describe","desc","comment","remark","tooltip","helpText"]);if(E)return E;const B=D(N(s.uiConfig),["description","descrip","describe","desc","comment","remark","tooltip","helpText"]);return B||D(N(g.uiHints),["description","descrip","describe","desc","comment","remark","tooltip","helpText"])}const M=e.ref({currentPage:1,pageSize:o.pageSize,total:o.total}),x=e.ref({field:null,order:null}),O=e.ref({}),I=e.ref({}),W=e.ref({}),Z=e.computed(()=>o.columns),{selectedRows:ie,onCheckboxChange:ue,onCheckboxAll:de,clearSelection:P,getSelectedCount:S}=Ct(),{serverSummary:z,calculateSelectedSummary:ne,generateFooterData:se,setServerSummary:we}=Nt(Z);e.watch(()=>o.serverSummary,s=>{we(s??null)},{immediate:!0});const te=e.computed(()=>{var E;const s=ne(ie.value),g=((E=ye.value)==null?void 0:E.map(B=>{var L;return{field:B.field,type:(L=o.columns.find(j=>j.name===B.field))==null?void 0:L.type}}))||[];return se(g,s,o.total)});function me(s={}){var B,L;const g=ie.value.length>0;P();const E=r.value;(B=E==null?void 0:E.clearCheckboxRow)==null||B.call(E),(L=E==null?void 0:E.clearCheckboxReserve)==null||L.call(E),s.emitChange!==!1&&g&&i("checkbox-change",[])}e.watch(()=>o.total,s=>{M.value.total=s}),e.watch(()=>o.data,(s,g)=>{g&&s!==g&&ie.value.length>0&&me()}),e.watch(()=>o.pageSize,s=>{s&&s>0&&(M.value.pageSize=s)}),e.watch(()=>o.initialSlice,s=>{if(!s||s.length===0){O.value={};return}const g={};for(const E of s)E.field&&(g[E.field]||(g[E.field]=[]),g[E.field].push(E));O.value=g},{immediate:!0});async function Me(s){if(I.value[s])return I.value[s];if(!o.filterOptionsLoader)return[];W.value[s]=!0;try{const g=await o.filterOptionsLoader(s);return I.value[s]=g,g}catch(g){return console.error("Failed to load dimension options:",g),[]}finally{W.value[s]=!1}}function be(s){var E;const g=(E=s.type)==null?void 0:E.toUpperCase();switch(g){case"DAY":case"DATE":return"date";case"DATETIME":return"datetime"}if(s.dictId)return"dict";if(s.filterType)return s.filterType;switch(g){case"NUMBER":case"MONEY":case"BIGDECIMAL":case"INTEGER":case"BIGINT":case"LONG":return"number";case"BOOL":case"BOOLEAN":return"bool";case"DICT":return"dict";default:return"text"}}function w(s){if(s.customFilterComponent)return s.customFilterComponent;const g=be(s);if(o.customFilterComponents&&o.customFilterComponents[g])return o.customFilterComponents[g];switch(g){case"text":return Re;case"number":return et;case"date":return Qe;case"datetime":return Qe;case"dict":return Le;case"dimension":return Le;case"bool":return tt;default:return Re}}function f(s){return s.endsWith("$id")?s:s.includes("$")?`${s.substring(0,s.indexOf("$"))}$id`:`${s}$id`}function v(s){const g=be(s),E={field:s.name,modelValue:O.value[s.name]||null,"onUpdate:modelValue":B=>fe(s.name,B),onCommit:B=>le(s.name,B)};switch(g){case"datetime":return{...E,showTime:!0,format:s.format};case"date":return{...E,format:s.format};case"dict":return{...E,options:s.dictItems||[],placeholder:s.title||"请选择"};case"dimension":{const B=s.memberLookup,L=!!o.filterMemberLoader&&!!o.qmModel&&(B==null?void 0:B.enabled),j=(B==null?void 0:B.selectionFieldName)||f(s.name);return L?{...E,field:s.name,selectionField:j,modelValue:O.value[j]||O.value[s.name]||null,"onUpdate:modelValue":Y=>fe(j,Y),onCommit:Y=>le(j,Y),remoteLoader:o.filterMemberLoader,qmModel:o.qmModel,options:[],loading:!1,placeholder:s.title||"请选择"}:(I.value[s.name]||Me(s.name),{...E,field:j,modelValue:O.value[j]||O.value[s.name]||null,"onUpdate:modelValue":Y=>fe(j,Y),onCommit:Y=>le(j,Y),options:I.value[s.name]||[],loading:W.value[s.name],placeholder:s.title||"请选择"})}default:return E}}function $(){const s=[];for(const g of Object.values(O.value))g&&g.length>0&&s.push(...g);return s}function q(s){return s.minWidth!=null?s.minWidth:be(s)==="bool"?ea:120}function Q(s){return s&&s.length>0?s:null}function oe(s,g){return JSON.stringify(s??null)===JSON.stringify(g??null)}function J(s,g){const E=Q(g),B=O.value[s]??null;return oe(B,E)?!1:(E===null?delete O.value[s]:O.value[s]=E,!0)}function fe(s,g){J(s,g)&&De()}function le(s,g){J(s,g)&&De(),pe()}function De(){i("filter-change",$())}function pe(){i("filter-commit",$())}function Ve(s){return s==null||s===""}function ke(s){return String(s??"").trim().toLowerCase()}function F(s){return ke(s).replace(/^%+|%+$/g,"")}function Ce(s){if(typeof s=="number")return Number.isFinite(s)?s:null;if(typeof s=="string"){const g=s.replace(/,/g,"").trim();if(!g)return null;const E=Number(g);return Number.isFinite(E)?E:null}return null}function G(s){if(s instanceof Date){const g=s.getTime();return Number.isFinite(g)?g:null}if(typeof s=="string"&&/\d{4}-\d{1,2}-\d{1,2}/.test(s)){const g=Date.parse(s.replace(" ","T"));return Number.isFinite(g)?g:null}return null}function he(s,g){const E=Ce(s),B=Ce(g);if(E!==null&&B!==null)return E-B;const L=G(s),j=G(g);return L!==null&&j!==null?L-j:ke(s).localeCompare(ke(g),"zh-CN",{numeric:!0,sensitivity:"base"})}function Ge(s,g){const E=Array.isArray(g.value)?g.value:[],[B,L]=E,j=g.op;if(!Ve(B)){const Y=he(s,B);if(j==="()"||j==="(]"?Y<=0:Y<0)return!1}if(!Ve(L)){const Y=he(s,L);if(j==="[]"||j==="(]"?Y>0:Y>=0)return!1}return!0}function Ie(s,g){if(!g.field||Ve(g.value)||!(g.field in s))return!0;const E=s[g.field];if(Ve(E))return!1;switch(g.op){case"=":return he(E,g.value)===0;case"!=":case"<>":return he(E,g.value)!==0;case">":return he(E,g.value)>0;case">=":return he(E,g.value)>=0;case"<":return he(E,g.value)<0;case"<=":return he(E,g.value)<=0;case"[]":case"[)":case"(]":case"()":return Ge(E,g);case"in":return(Array.isArray(g.value)?g.value:[g.value]).some(L=>he(E,L)===0);case"right_like":return ke(E).startsWith(F(g.value));case"left_like":return ke(E).endsWith(F(g.value));case"like":default:return ke(E).includes(F(g.value))}}const Ke=e.computed(()=>{if(!o.localFilter)return o.data;const s=$();return s.length===0?o.data:o.data.filter(g=>s.every(E=>Ie(g,E)))});function He(s,g){var B;if(s.customFormatter)return s.customFormatter(g);if(s.dictItems&&s.dictItems.length>0){const L=new Map(s.dictItems.map(j=>[String(j.value),j.label]));return g==null?"":L.get(String(g))??String(g)}switch((B=s.type)==null?void 0:B.toUpperCase()){case"MONEY":case"NUMBER":case"BIGDECIMAL":return g==null?"":typeof g=="number"?g.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2}):String(g);case"INTEGER":case"BIGINT":case"LONG":return g==null?"":typeof g=="number"?g.toLocaleString("zh-CN"):String(g);case"DAY":case"DATE":return g?String(g).split("T")[0]:"";case"DATETIME":return g?String(g).replace("T"," ").substring(0,19):"";case"BOOL":case"BOOLEAN":return g===!0?"是":g===!1?"否":"";default:return g==null?"":String(g)}}function A(s){var B;const g=({cellValue:L})=>He(s,L),E=(B=s.type)==null?void 0:B.toUpperCase();if(E==="DATETIME")return{minWidth:160,formatter:g};if(s.customFormatter||s.dictItems&&s.dictItems.length>0)return{formatter:g};switch(E){case"MONEY":case"NUMBER":case"BIGDECIMAL":case"INTEGER":case"BIGINT":case"LONG":case"DAY":case"DATE":case"BOOL":case"BOOLEAN":return{formatter:g};default:return{}}}function _e(s){return s==null?"":["string","number","boolean","bigint"].includes(typeof s)?String(s):""}function ge(s,g){var B;return s.name==="_actions"||!(s.copyable??((B=o.cellCopy)==null?void 0:B.enabled)!==!1)?!1:_e(g)!==""}function ve(s,g){var E;return((E=c.value)==null?void 0:E.row)===s&&c.value.field===g}function Ne(s){s.preventDefault(),s.stopPropagation()}async function ze(s){var E;if((E=navigator.clipboard)!=null&&E.writeText){await navigator.clipboard.writeText(s);return}const g=document.createElement("textarea");g.value=s,g.setAttribute("readonly","readonly"),g.style.position="fixed",g.style.top="0",g.style.left="-9999px",g.style.opacity="0",document.body.appendChild(g),g.select();try{if(!document.execCommand("copy"))throw new Error("document.execCommand copy returned false")}finally{document.body.removeChild(g)}}async function ct(s,g){Ne(s);const E=_e(g);if(E)try{await ze(E)}catch(B){console.warn("Failed to copy cell value:",B),X.ElMessage.warning("复制失败,请手动复制")}}function Vt(){return e.h("svg",{class:"cell-copy-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},[e.h("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),e.h("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})])}function kt(){return e.h("svg",{class:"column-help-svg",style:{display:"block",width:"14px",height:"14px"},viewBox:"0 0 16 16",width:"14",height:"14",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},[e.h("circle",{cx:"8",cy:"8",r:"7",fill:"#18a058"}),e.h("path",{d:"M5.85 6.15A2.2 2.2 0 0 1 8.1 4.2c1.25 0 2.15.76 2.15 1.86 0 .8-.43 1.25-1.14 1.78-.65.48-.86.77-.86 1.46",stroke:"#fff","stroke-width":"1.35","stroke-linecap":"round","stroke-linejoin":"round"}),e.h("circle",{cx:"8.25",cy:"11.55",r:"0.72",fill:"#fff"})])}function qe(s){s.preventDefault(),s.stopPropagation()}function u(s,g){const E=x.value.field===s&&x.value.order===g;x.value.field=E?null:s,x.value.order=E?null:g,i("sort-change",x.value.field,x.value.order)}function _(s,g,E,B){const L="#409eff",j="#909399",Y=B==="asc",Ee=E===B,Xe=Y?0:12,Ci=Y?"M6 4 1 10h10L6 4z":"M18 10 13 4h10L18 10z";return e.h("g",{class:["sort-arrow-control",`sort-arrow-control-${B}`,Ee?"active":""],role:"button",tabindex:0,"aria-label":`${g}${Y?"升序":"降序"}排序`,style:{cursor:"pointer"},onClick:Je=>{qe(Je),u(s,B)},onMousedown:qe,onKeydown:Je=>{(Je.key==="Enter"||Je.key===" ")&&(qe(Je),u(s,B))}},[e.h("rect",{class:["sort-arrow-hitbox",`sort-arrow-hitbox-${B}`],x:Xe,y:0,width:12,height:14,fill:"transparent"}),e.h("path",{class:["sort-arrow",`sort-arrow-${B}`,Ee?"active":""],d:Ci,fill:Ee?L:j,"pointer-events":"none"})])}function U(s,g,E){return e.h("span",{class:["sort-icon","sort-icon-horizontal",E?`sort-${E}`:"sort-none"],style:{display:"inline-flex",flex:"0 0 auto",alignItems:"center",justifyContent:"center",width:"26px",height:"16px",marginLeft:"auto",lineHeight:"1"},"aria-hidden":"true"},[e.h("svg",{class:"sort-icon-svg",style:{display:"block",width:"24px",height:"14px",overflow:"visible"},viewBox:"0 0 24 14",width:"24",height:"14",xmlns:"http://www.w3.org/2000/svg",focusable:"false"},[_(s,g,E,"asc"),_(s,g,E,"desc")])])}function ae(s,g){const E=g[s.name],B=He(s,E),L=B||void 0;return ge(s,E)?e.h("div",{class:"data-table-copyable-cell",title:L,style:{position:"relative",display:"flex",alignItems:"center",width:"100%",minWidth:"0",maxWidth:"100%",boxSizing:"border-box",paddingRight:"24px"},onMouseenter:()=>{c.value={row:g,field:s.name}},onMouseleave:()=>{ve(g,s.name)&&(c.value=null)}},[e.h("span",{class:"data-table-cell-text"},B),ve(g,s.name)&&e.h("button",{type:"button",class:"cell-copy-button",title:"复制","aria-label":"复制单元格内容",style:{position:"absolute",top:"50%",right:"2px",zIndex:"2",display:"inline-flex",alignItems:"center",justifyContent:"center",width:"18px",height:"18px",minWidth:"18px",maxWidth:"18px",padding:"0",lineHeight:"1",boxSizing:"border-box",transform:"translateY(-50%)"},onMousedown:Ne,onPointerdown:Ne,onClick:Y=>ct(Y,E)},[Vt()])]):e.h("span",{class:"data-table-cell-text",title:L},B)}const ye=e.computed(()=>{const s=x.value,g={type:"checkbox",width:50,fixed:"left"},E=o.columns.map(B=>{const L={field:B.name,title:B.title||B.name,width:B.width,minWidth:q(B),fixed:B.fixed,sortable:!1,...A(B),slots:{header:()=>{const Y=s.field===B.name?s.order:null,Ee=K(B);return e.h("div",{class:"column-header-wrapper",style:{display:"flex",flexDirection:"column",width:"100%",padding:o.density==="compact"?"1px 0":"2px 0",height:o.density==="compact"?"45px":"46px",maxHeight:o.density==="compact"?"45px":"46px",overflow:"hidden"}},[e.h("div",{class:"column-title",style:{display:"flex",alignItems:"center",width:"100%",boxSizing:"border-box",fontWeight:"600",marginBottom:o.density==="compact"?"2px":"3px",cursor:"default",userSelect:"none",lineHeight:"1.2",minHeight:o.density==="compact"?"15px":"16px",minWidth:"0",gap:"3px"}},[e.h("span",{class:"title-text",style:{flex:"0 1 auto",minWidth:"0",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:"13px"}},B.title||B.name),Ee&&e.h(X.ElTooltip,{content:Ee,placement:"top",showAfter:120,teleported:!0},{default:()=>e.h("span",{class:"column-help-icon",style:{display:"inline-flex",flex:"0 0 auto",alignItems:"center",justifyContent:"center",width:"14px",height:"14px",lineHeight:"1",cursor:"help"},title:Ee,"aria-label":Ee,role:"img",onClick:Xe=>Xe.stopPropagation(),onMousedown:Xe=>Xe.stopPropagation()},[kt()])}),U(B.name,B.title||B.name,Y)]),o.showFilters&&e.h("div",{class:"column-filter"},[Fe(B)])])}}},j=`column-${B.name}`;return h[j]?L.slots={...L.slots,default:({row:Y})=>h[j]({row:Y,column:B,value:Y[B.name]})}:B.customRender?L.slots={...L.slots,default:({row:Y})=>B.customRender({row:Y,value:Y[B.name],column:B})}:L.slots={...L.slots,default:({row:Y})=>ae(B,Y)},L});return[g,...E]});function Fe(s){const g=`filter-${s.name}`;if(h[g])return h[g]({column:s,field:s.name,modelValue:O.value[s.name]||null,onChange:L=>fe(s.name,L),onCommit:L=>le(s.name,L)});const E=w(s),B=v(s);return e.h(E,B)}const Te=e.computed(()=>{const s=Object.keys(l).filter(E=>!E.startsWith("on")).reduce((E,B)=>({...E,[B]:l[B]}),{});return{...{size:"small",border:!0,stripe:!0,showOverflow:!0,height:"100%",loading:y.visible.value,columnConfig:{resizable:!0},rowConfig:{isHover:!0},checkboxConfig:{highlight:!0,trigger:"cell"},showFooter:!0,footerData:te.value,headerRowClassName:o.showFilters?"header-with-filter":"",pagerConfig:{enabled:!1},sortConfig:{remote:!0},columns:ye.value,data:Ke.value},...s}}),je=e.computed(()=>{const s={};Object.keys(l).forEach(L=>{if(L.startsWith("on")){const j=L.slice(2,3).toLowerCase()+L.slice(3);s[j]=l[L]}});const g=(L,j)=>(...Y)=>{L(...Y),s[j]&&s[j](...Y)},B={...{pageChange:g(({currentPage:L,pageSize:j})=>{M.value.currentPage=L,M.value.pageSize=j,i("page-change",L,j)},"pageChange"),cellClick:g(({row:L,column:j})=>{const Y=o.columns.find(Ee=>Ee.name===j.field);Y&&i("row-click",L,Y)},"cellClick"),cellDblclick:g(({row:L,column:j})=>{const Y=o.columns.find(Ee=>Ee.name===j.field);Y&&i("row-dblclick",L,Y)},"cellDblclick"),checkboxChange:g(L=>{ue(L),i("checkbox-change",L.records)},"checkboxChange"),checkboxAll:g(L=>{de(L),i("checkbox-all",L.records)},"checkboxAll")}};return Object.keys(s).forEach(L=>{B[L]||(B[L]=s[L])}),B});function Ye({currentPage:s,pageSize:g}){M.value.currentPage=s,M.value.pageSize=g,i("page-change",s,g)}function ee(){M.value.currentPage=1}function xe(){O.value={},De(),pe()}return a({resetPagination:ee,clearFilters:xe,getFilters:$,setFilter:fe,getGridInstance:()=>r.value,getSelectedRows:()=>ie.value,getSelectedCount:()=>S(),clearSelection:me}),e.provide("dataTableContext",{columns:e.computed(()=>o.columns),filters:O,updateFilter:fe,commitFilter:le}),(s,g)=>{const E=e.resolveComponent("vxe-pager"),B=e.resolveComponent("vxe-grid");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(m.value)},[o.showPager||s.$slots.toolbar||s.$slots["toolbar-right"]?(e.openBlock(),e.createElementBlock("div",jn,[e.createElementVNode("div",Yn,[e.renderSlot(s.$slots,"toolbar",{},void 0,!0)]),o.showPager||s.$slots["toolbar-right"]?(e.openBlock(),e.createElementBlock("div",Gn,[e.renderSlot(s.$slots,"toolbar-right",{},void 0,!0),V.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["data-table-query-status",{"is-visible":C.value,"is-error":k.value}]),"aria-live":"polite"},[k.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",Kn)),e.createElementVNode("span",Xn,e.toDisplayString(b.value),1)],2)):e.createCommentVNode("",!0),o.showPager?(e.openBlock(),e.createBlock(E,{key:1,"current-page":M.value.currentPage,"page-size":M.value.pageSize,total:M.value.total,"page-sizes":[20,50,100,200],layouts:["PrevPage","JumpNumber","NextPage","Sizes","Total"],onPageChange:Ye},null,8,["current-page","page-size","total"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Jn,[R.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["data-table-progress-line",{"is-visible":H.value}]),"aria-hidden":"true"},null,2)):e.createCommentVNode("",!0),e.createVNode(B,e.mergeProps({ref_key:"gridRef",ref:r},Te.value,e.toHandlers(je.value)),{empty:e.withCtx(()=>[e.renderSlot(s.$slots,"empty",{},()=>[g[0]||(g[0]=e.createElementVNode("div",{class:"empty-data"},"暂无数据",-1))],!0)]),_:3},16)]),s.$slots.footer?(e.openBlock(),e.createElementBlock("div",Zn,[e.renderSlot(s.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2)}}}),[["__scopeId","data-v-0ae47cd3"]]),$e=Ze.create({baseURL:"/data-viewer/api",timeout:3e4,headers:{"Content-Type":"application/json"}});async function ta(t){var n,l;const a=await $e.post("/query/create",t);if(!a.data||a.data.code!==200){if((n=a.data)!=null&&n.data)return a.data.data;throw new Error(((l=a.data)==null?void 0:l.msg)||"创建查询失败")}return a.data.data}async function St(t,a){var l;const n=await $e.get(`/query/${encodeURIComponent(t)}/${a}/meta`);if(!n.data||n.data.code!==200)throw new Error(((l=n.data)==null?void 0:l.msg)||"获取查询元数据失败");return n.data.data}async function Bt(t,a,n){var o,i,h;const l=await $e.post(`/query/${encodeURIComponent(t)}/${a}/data`,n);if(!l.data||l.data.code!==200){if((i=(o=l.data)==null?void 0:o.data)!=null&&i.expired)return l.data.data;throw new Error(((h=l.data)==null?void 0:h.msg)||"查询数据失败")}return l.data.data}async function Mt(t,a,n){return(await $e.get(`/query/${encodeURIComponent(t)}/${a}/filter-options/${encodeURIComponent(n)}`)).data}async function Dt(t){var o;const a=await $e.get(`/schema/${encodeURIComponent(t)}`);if(!a.data||a.data.code!==200)throw new Error(((o=a.data)==null?void 0:o.msg)||"获取 QM Schema 失败");const n=a.data.data;if(!n||!n.fields)return[];const l=[];for(const[i,h]of Object.entries(n.fields)){const r=h;l.push({name:i,title:r.name||i,type:r.type||"TEXT",filterable:r.filterable!==!1,aggregatable:r.aggregatable||!1,measure:r.measure||!1,filterType:r.filterType,dictId:r.dictId,dictItems:r.dictItems,format:r.format})}return l}function na(t){return t?t.flatMap(a=>{const n=a.trim();return n?[n]:[]}):[]}async function aa(t,a){var o;const n=na(a.columns);if(n.length===0)throw new Error("columns 不能为空,直连查询必须显式指定输出列");const l=await $e.post(`/query/direct/${encodeURIComponent(t)}`,{...a,columns:n});if(!l.data||l.data.code!==200)throw new Error(((o=l.data)==null?void 0:o.msg)||"查询数据失败");return l.data.data}async function oa(t){var n;const a=await $e.get(`/frontend-meta/${encodeURIComponent(t)}`);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"获取前端元数据失败");return a.data.data}async function la(t){var n;const a=await $e.post("/members/query",t);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"查询维度成员失败");return a.data.data}$e.interceptors.response.use(t=>t,t=>{var a,n;return((a=t.response)==null?void 0:a.status)===410?Promise.reject(new Error("查询链接已过期,请重新获取")):((n=t.response)==null?void 0:n.status)===404?Promise.reject(new Error("查询不存在")):Promise.reject(t)});function vt(t,a){const h=t.length*14+30+24;return Math.max(h,{INTEGER:100,LONG:120,MONEY:120,NUMBER:120,DATETIME:180,DAY:120,TEXT:150,STRING:150,BOOL:88,BOOLEAN:88,DICT:120}[a]||120)}function Tt(t,a){var h;const n=new Map(t.map(r=>[r.name,r])),l=new Map(((h=a.customizations)==null?void 0:h.map(r=>[r.name,r]))||[]);return(a.showAll||!a.visibleColumns||a.visibleColumns.length===0?t.map(r=>r.name):a.visibleColumns).map(r=>{var b;const c=n.get(r);if(!c)return console.warn(`Column "${r}" not found in QM schema`),null;const m=l.get(r),y=(m==null?void 0:m.width)||c.width||vt(c.title||c.name,c.type);return{...c,width:y,minWidth:(m==null?void 0:m.minWidth)??(["BOOL","BOOLEAN"].includes((b=c.type)==null?void 0:b.toUpperCase())?88:120),fixed:m==null?void 0:m.fixed,filterable:c.filterable??!0,customRender:m==null?void 0:m.render,customFilterComponent:m==null?void 0:m.filterComponent,customFormatter:m==null?void 0:m.formatter}}).filter(r=>r!==null)}const ra={class:"data-viewer"},ia={class:"viewer-header"},sa={class:"viewer-title"},ca={class:"viewer-info"},da={key:0,class:"info-item"},ua={key:1,class:"info-item"},ma={key:2,class:"info-item"},fa=["disabled"],pa={key:0,class:"viewer-expired"},ha={key:1,class:"viewer-error"},ga={class:"error-content"},ya={key:2,class:"viewer-main"},wa=re(e.defineComponent({__name:"DataViewer",props:{queryId:{},model:{}},setup(t){const a=t,n=e.ref(!1),l=e.ref(null),o=e.ref(!1),i=e.ref(null),h=e.ref([]),r=e.ref([]),c=e.ref([]),m=e.ref(0),y=e.ref(null),p=e.ref({start:0,limit:50,slice:[],orderBy:[]}),b=e.ref(),k=e.computed(()=>{var M;return((M=i.value)==null?void 0:M.title)||"数据浏览器"}),d=e.computed(()=>{var M;return(M=i.value)!=null&&M.expiresAt?new Date(i.value.expiresAt).toLocaleString("zh-CN"):""});async function V(){try{n.value=!0,l.value=null,i.value=await St(a.model,a.queryId),i.value.tableConfig.qmModel&&(h.value=await Dt(i.value.tableConfig.qmModel),r.value=Tt(h.value,i.value.tableConfig))}catch(M){l.value=M instanceof Error?M.message:"加载元数据失败"}finally{n.value=!1}}async function C(){if(i.value)try{n.value=!0,l.value=null;const M=await Bt(a.model,a.queryId,p.value);if(M.expired){o.value=!0,l.value=M.errorMessage||"查询已过期";return}if(!M.success){l.value=M.errorMessage||"查询失败";return}c.value=M.items,m.value=M.total,y.value=M.totalData??null}catch(M){l.value=M instanceof Error?M.message:"加载数据失败"}finally{n.value=!1}}function R(M,x){p.value.start=(M-1)*x,p.value.limit=x,C()}function H(M,x){M&&x?p.value.orderBy=[{field:M,dir:x}]:p.value.orderBy=[],C()}function N(M){var x;p.value.slice=M,p.value.start=0,(x=b.value)==null||x.resetPagination(),C()}async function D(M){try{return(await Mt(a.model,a.queryId,M)).options||[]}catch(x){return console.error("Failed to load filter options:",x),[]}}function K(){C()}return e.onMounted(async()=>{await V(),i.value&&(i.value.initialSlice&&i.value.initialSlice.length>0&&(p.value.slice=i.value.initialSlice),await C())}),(M,x)=>{var O,I,W,Z;return e.openBlock(),e.createElementBlock("div",ra,[e.createElementVNode("header",ia,[e.createElementVNode("h1",sa,e.toDisplayString(k.value),1),e.createElementVNode("div",ca,[(I=(O=i.value)==null?void 0:O.tableConfig)!=null&&I.qmModel?(e.openBlock(),e.createElementBlock("span",da,[x[0]||(x[0]=e.createTextVNode(" 模型: ",-1)),e.createElementVNode("strong",null,e.toDisplayString(i.value.tableConfig.qmModel),1)])):e.createCommentVNode("",!0),(W=i.value)!=null&&W.estimatedRowCount?(e.openBlock(),e.createElementBlock("span",ua,[x[1]||(x[1]=e.createTextVNode(" 预估行数: ",-1)),e.createElementVNode("strong",null,e.toDisplayString(i.value.estimatedRowCount.toLocaleString()),1)])):e.createCommentVNode("",!0),d.value?(e.openBlock(),e.createElementBlock("span",ma,[x[2]||(x[2]=e.createTextVNode(" 过期时间: ",-1)),e.createElementVNode("strong",null,e.toDisplayString(d.value),1)])):e.createCommentVNode("",!0),e.createElementVNode("button",{class:"refresh-btn",onClick:K,disabled:n.value}," 刷新 ",8,fa)])]),o.value?(e.openBlock(),e.createElementBlock("div",pa,[...x[3]||(x[3]=[e.createElementVNode("div",{class:"expired-content"},[e.createElementVNode("h2",null,"链接已过期"),e.createElementVNode("p",null,"请联系AI助手重新生成查询链接")],-1)])])):l.value&&!c.value.length?(e.openBlock(),e.createElementBlock("div",ha,[e.createElementVNode("div",ga,[x[4]||(x[4]=e.createElementVNode("h2",null,"加载失败",-1)),e.createElementVNode("p",null,e.toDisplayString(l.value),1),e.createElementVNode("button",{onClick:C},"重试")])])):(e.openBlock(),e.createElementBlock("main",ya,[e.createVNode(mt,{ref_key:"dataTableRef",ref:b,columns:r.value,data:c.value,total:m.value,loading:n.value,"initial-slice":(Z=i.value)==null?void 0:Z.initialSlice,"filter-options-loader":D,"server-summary":y.value,onPageChange:R,onSortChange:H,onFilterChange:N},null,8,["columns","data","total","loading","initial-slice","server-summary"])])),x[5]||(x[5]=e.createElementVNode("footer",{class:"viewer-footer"},[e.createElementVNode("span",null,"Foggy Data Viewer")],-1))])}}}),[["__scopeId","data-v-93bc84c9"]]),ba={class:"search-fields"},Va={class:"field-label"},ka={class:"field-filter"},Ca={key:0,class:"search-actions"},$t=re(e.defineComponent({__name:"SearchToolbar",props:{columns:{},searchableFields:{},modelValue:{},layout:{default:"horizontal"},showActions:{type:Boolean,default:!0},filterOptionsLoader:{},filterMemberLoader:{},qmModel:{}},emits:["update:modelValue","search","reset"],setup(t,{expose:a,emit:n}){const l=t,o=n,i=e.ref({}),h=e.computed(()=>{let d=l.columns.filter(V=>V.filterable!==!1);return l.searchableFields&&l.searchableFields.length>0&&(d=d.filter(V=>l.searchableFields.includes(V.name))),d});e.watch(()=>l.modelValue,d=>{if(!d||d.length===0){i.value={};return}const V={};for(const C of d)C.field&&(V[C.field]||(V[C.field]=[]),V[C.field].push(C));i.value=V},{immediate:!0});function r(d){var C;const V=(C=d.type)==null?void 0:C.toUpperCase();switch(V){case"DAY":case"DATE":return"date";case"DATETIME":return"datetime"}if(d.dictId)return"dict";if(d.filterType)return d.filterType;switch(V){case"NUMBER":case"MONEY":case"BIGDECIMAL":case"INTEGER":case"BIGINT":case"LONG":return"number";case"BOOL":case"BOOLEAN":return"bool";case"DICT":return"dict";default:return"text"}}function c(d){if(d.customFilterComponent)return d.customFilterComponent;switch(r(d)){case"text":return Re;case"number":return et;case"date":return Qe;case"datetime":return Qe;case"dict":return Le;case"dimension":return Le;case"bool":return tt;default:return Re}}function m(d){const V=r(d),C={field:d.name,modelValue:i.value[d.name]||null,"onUpdate:modelValue":R=>y(d.name,R)};switch(V){case"datetime":return{...C,showTime:!0,format:d.format};case"date":return{...C,format:d.format};case"dict":return{...C,options:d.dictItems||[],placeholder:`请选择${d.title||d.name}`};case"dimension":{const R=!!l.filterMemberLoader&&!!l.qmModel,H=d.memberLookup,N=H==null?void 0:H.selectionFieldName;return R&&(H!=null&&H.enabled)?{...C,selectionField:N||d.name,remoteLoader:l.filterMemberLoader,qmModel:l.qmModel,options:[],placeholder:`请选择${d.title||d.name}`}:{...C,options:[],loading:!1,placeholder:`请选择${d.title||d.name}`}}default:return{...C,placeholder:`搜索${d.title||d.name}...`}}}function y(d,V){V===null||V.length===0?delete i.value[d]:i.value[d]=V,p()}function p(){const d=[];for(const V of Object.values(i.value))V&&V.length>0&&d.push(...V);o("update:modelValue",d)}function b(){p(),o("search")}function k(){i.value={},o("update:modelValue",[]),o("reset")}return a({clearFilters:k,getFilters:()=>{const d=[];for(const V of Object.values(i.value))V&&V.length>0&&d.push(...V);return d}}),(d,V)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["search-toolbar",`layout-${t.layout}`])},[e.createElementVNode("div",ba,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,C=>(e.openBlock(),e.createElementBlock("div",{key:C.name,class:"search-field-item"},[e.createElementVNode("label",Va,e.toDisplayString(C.title||C.name),1),e.createElementVNode("div",ka,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c(C)),e.mergeProps({ref_for:!0},m(C)),null,16))])]))),128))]),t.showActions?(e.openBlock(),e.createElementBlock("div",Ca,[e.createElementVNode("button",{class:"btn btn-primary",onClick:b},[...V[0]||(V[0]=[e.createElementVNode("span",{class:"btn-icon"},"🔍",-1),e.createTextVNode(" 搜索 ",-1)])]),e.createElementVNode("button",{class:"btn btn-default",onClick:k},[...V[1]||(V[1]=[e.createElementVNode("span",{class:"btn-icon"},"↻",-1),e.createTextVNode(" 重置 ",-1)])])])):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-0969ff1d"]]),_a={class:"query-panel"},Na={class:"field-control"},Pt=re(e.defineComponent({__name:"QueryPanel",props:{schema:{},modelValue:{},filterMemberLoader:{},qmModel:{}},emits:["update:modelValue","search","reset"],setup(t,{expose:a,emit:n}){const l=t,o=n,i=e.ref({}),h=e.computed(()=>l.schema.fields.filter(N=>N.placement==="form"&&N.visible!==!1).sort((N,D)=>(N.order??99)-(D.order??99))),r=e.computed(()=>l.schema.layout??{}),c=e.computed(()=>r.value.columns??{xs:1,sm:2,md:3,lg:4,xl:4}),m=e.computed(()=>r.value.labelWidth??100),y=e.computed(()=>r.value.gutter??16),p=e.computed(()=>h.value);e.watch(()=>l.modelValue,N=>{if(!N||N.length===0){i.value={};return}const D={};for(const K of N){if(!K.field)continue;const M=h.value.find(x=>x.sourceField===K.field||x.key===K.field);M&&(D[M.key]||(D[M.key]=[]),D[M.key].push(K))}i.value=D},{immediate:!0});function b(N){switch(N.component){case"text":return Re;case"numberRange":return et;case"dateRange":return Qe;case"dictSelect":return Le;case"memberSelect":return Le;case"qmLookupSelect":return Le;case"bool":return tt;default:return Re}}function k(N){return N.sourceField||N.key}function d(N){return N.lookupRef||N.key}function V(N){const D={field:k(N),modelValue:i.value[N.key]||null,"onUpdate:modelValue":K=>C(N.key,K)};switch(N.component){case"dateRange":return{...D,showTime:!0};case"dictSelect":return{...D,options:[],dictId:N.dictId,placeholder:`请选择${N.label}`};case"memberSelect":case"qmLookupSelect":return{...D,field:d(N),selectionField:k(N),remoteLoader:l.filterMemberLoader,qmModel:l.qmModel,options:[],placeholder:`请选择${N.label}`};default:return{...D,placeholder:`请输入${N.label}`}}}function C(N,D){D===null||D.length===0?delete i.value[N]:i.value[N]=D}function R(){const N=[];for(const D of Object.values(i.value))D&&D.length>0&&N.push(...D);o("update:modelValue",N),o("search")}function H(){i.value={},o("update:modelValue",[]),o("reset")}return a({search:R,reset:H,getSlices:()=>{const N=[];for(const D of Object.values(i.value))D&&D.length>0&&N.push(...D);return N}}),(N,D)=>(e.openBlock(),e.createElementBlock("div",_a,[e.createElementVNode("div",{class:"query-fields",style:e.normalizeStyle({display:"grid",gridTemplateColumns:`repeat(${c.value.lg}, 1fr)`,gap:`${y.value}px`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,K=>(e.openBlock(),e.createElementBlock("div",{key:K.key,class:"query-field-item",style:e.normalizeStyle({gridColumn:`span ${K.span||1}`})},[e.createElementVNode("label",{class:"field-label",style:e.normalizeStyle({width:`${m.value}px`})},e.toDisplayString(K.label),5),e.createElementVNode("div",Na,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b(K)),e.mergeProps({ref_for:!0},V(K)),null,16))])],4))),128)),e.createElementVNode("div",{class:"query-actions"},[e.createElementVNode("button",{class:"btn btn-primary",onClick:R},"查询"),e.createElementVNode("button",{class:"btn btn-default",onClick:H},"重置")])],4)]))}}),[["__scopeId","data-v-2f1dbbcc"]]);/*! Element Plus Icons Vue v2.3.2 */var xa=e.defineComponent({name:"Delete",__name:"delete",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32zm448-64v-64H416v64zM224 896h576V256H224zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32m192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32"})]))}}),at=xa,Ea=e.defineComponent({name:"DocumentAdd",__name:"document-add",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640zm-26.496-64L640 154.496V320zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32m320 512V448h64v128h128v64H544v128h-64V640H352v-64z"})]))}}),Sa=Ea,Ba=e.defineComponent({name:"Filter",__name:"filter",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M384 523.392V928a32 32 0 0 0 46.336 28.608l192-96A32 32 0 0 0 640 832V523.392l280.768-343.104a32 32 0 1 0-49.536-40.576l-288 352A32 32 0 0 0 576 512v300.224l-128 64V512a32 32 0 0 0-7.232-20.288L195.52 192H704a32 32 0 1 0 0-64H128a32 32 0 0 0-24.768 52.288z"})]))}}),Ft=Ba,Ma=e.defineComponent({name:"FolderOpened",__name:"folder-opened",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M878.08 448H241.92l-96 384h636.16zM832 384v-64H485.76L357.504 192H128v448l57.92-231.744A32 32 0 0 1 216.96 384zm-24.96 512H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h287.872l128.384 128H864a32 32 0 0 1 32 32v96h23.04a32 32 0 0 1 31.04 39.744l-112 448A32 32 0 0 1 807.04 896"})]))}}),Da=Ma,va=e.defineComponent({name:"Grid",__name:"grid",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M640 384v256H384V384zm64 0h192v256H704zm-64 512H384V704h256zm64 0V704h192v192zm-64-768v192H384V128zm64 0h192v192H704zM320 384v256H128V384zm0 512H128V704h192zm0-768v192H128V128z"})]))}}),Lt=va,Ta=e.defineComponent({name:"Histogram",__name:"histogram",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M416 896V128h192v768zm-288 0V448h192v448zm576 0V320h192v576z"})]))}}),ft=Ta,$a=e.defineComponent({name:"Loading",__name:"loading",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32m0 640a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V736a32 32 0 0 1 32-32m448-192a32 32 0 0 1-32 32H736a32 32 0 1 1 0-64h192a32 32 0 0 1 32 32m-640 0a32 32 0 0 1-32 32H96a32 32 0 0 1 0-64h192a32 32 0 0 1 32 32M195.2 195.2a32 32 0 0 1 45.248 0L376.32 331.008a32 32 0 0 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248m452.544 452.544a32 32 0 0 1 45.248 0L828.8 783.552a32 32 0 0 1-45.248 45.248L647.744 692.992a32 32 0 0 1 0-45.248M828.8 195.264a32 32 0 0 1 0 45.184L692.992 376.32a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0m-452.544 452.48a32 32 0 0 1 0 45.248L240.448 828.8a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0"})]))}}),pt=$a,Pa=e.defineComponent({name:"Lock",__name:"lock",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96"}),e.createElementVNode("path",{fill:"currentColor",d:"M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32m192-160v-64a192 192 0 1 0-384 0v64zM512 64a256 256 0 0 1 256 256v128H256V320A256 256 0 0 1 512 64"})]))}}),Fa=Pa,La=e.defineComponent({name:"MoreFilled",__name:"more-filled",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M176 416a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224"})]))}}),At=La,Aa=e.defineComponent({name:"OfficeBuilding",__name:"office-building",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M192 128v704h384V128zm-32-64h448a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32"}),e.createElementVNode("path",{fill:"currentColor",d:"M256 256h256v64H256zm0 192h256v64H256zm0 192h256v64H256zm384-128h128v64H640zm0 128h128v64H640zM64 832h896v64H64z"}),e.createElementVNode("path",{fill:"currentColor",d:"M640 384v448h192V384zm-32-64h256a32 32 0 0 1 32 32v512a32 32 0 0 1-32 32H608a32 32 0 0 1-32-32V352a32 32 0 0 1 32-32"})]))}}),ht=Aa,Ia=e.defineComponent({name:"Operation",__name:"operation",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M389.44 768a96.064 96.064 0 0 1 181.12 0H896v64H570.56a96.064 96.064 0 0 1-181.12 0H128v-64zm192-288a96.064 96.064 0 0 1 181.12 0H896v64H762.56a96.064 96.064 0 0 1-181.12 0H128v-64zm-320-288a96.064 96.064 0 0 1 181.12 0H896v64H442.56a96.064 96.064 0 0 1-181.12 0H128v-64z"})]))}}),za=Ia,Ra=e.defineComponent({name:"Plus",__name:"plus",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64z"})]))}}),It=Ra,Oa=e.defineComponent({name:"Refresh",__name:"refresh",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M771.776 794.88A384 384 0 0 1 128 512h64a320 320 0 0 0 555.712 216.448H654.72a32 32 0 1 1 0-64h149.056a32 32 0 0 1 32 32v148.928a32 32 0 1 1-64 0v-50.56zM276.288 295.616h92.992a32 32 0 0 1 0 64H220.16a32 32 0 0 1-32-32V178.56a32 32 0 0 1 64 0v50.56A384 384 0 0 1 896.128 512h-64a320 320 0 0 0-555.776-216.384z"})]))}}),Wa=Oa,Qa=e.defineComponent({name:"Search",__name:"search",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704"})]))}}),gt=Qa,Ua=e.defineComponent({name:"Setting",__name:"setting",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M600.704 64a32 32 0 0 1 30.464 22.208l35.2 109.376c14.784 7.232 28.928 15.36 42.432 24.512l112.384-24.192a32 32 0 0 1 34.432 15.36L944.32 364.8a32 32 0 0 1-4.032 37.504l-77.12 85.12a357 357 0 0 1 0 49.024l77.12 85.248a32 32 0 0 1 4.032 37.504l-88.704 153.6a32 32 0 0 1-34.432 15.296L708.8 803.904c-13.44 9.088-27.648 17.28-42.368 24.512l-35.264 109.376A32 32 0 0 1 600.704 960H423.296a32 32 0 0 1-30.464-22.208L357.696 828.48a352 352 0 0 1-42.56-24.64l-112.32 24.256a32 32 0 0 1-34.432-15.36L79.68 659.2a32 32 0 0 1 4.032-37.504l77.12-85.248a357 357 0 0 1 0-48.896l-77.12-85.248A32 32 0 0 1 79.68 364.8l88.704-153.6a32 32 0 0 1 34.432-15.296l112.32 24.256c13.568-9.152 27.776-17.408 42.56-24.64l35.2-109.312A32 32 0 0 1 423.232 64H600.64zm-23.424 64H446.72l-36.352 113.088-24.512 11.968a294 294 0 0 0-34.816 20.096l-22.656 15.36-116.224-25.088-65.28 113.152 79.68 88.192-1.92 27.136a293 293 0 0 0 0 40.192l1.92 27.136-79.808 88.192 65.344 113.152 116.224-25.024 22.656 15.296a294 294 0 0 0 34.816 20.096l24.512 11.968L446.72 896h130.688l36.48-113.152 24.448-11.904a288 288 0 0 0 34.752-20.096l22.592-15.296 116.288 25.024 65.28-113.152-79.744-88.192 1.92-27.136a293 293 0 0 0 0-40.256l-1.92-27.136 79.808-88.128-65.344-113.152-116.288 24.96-22.592-15.232a288 288 0 0 0-34.752-20.096l-24.448-11.904L577.344 128zM512 320a192 192 0 1 1 0 384 192 192 0 0 1 0-384m0 64a128 128 0 1 0 0 256 128 128 0 0 0 0-256"})]))}}),Ha=Ua,qa=e.defineComponent({name:"Share",__name:"share",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"m679.872 348.8-301.76 188.608a127.8 127.8 0 0 1 5.12 52.16l279.936 104.96a128 128 0 1 1-22.464 59.904l-279.872-104.96a128 128 0 1 1-16.64-166.272l301.696-188.608a128 128 0 1 1 33.92 54.272z"})]))}}),ja=qa,Ya=e.defineComponent({name:"Star",__name:"star",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"m512 747.84 228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"})]))}}),Ga=Ya,Ka=e.defineComponent({name:"User",__name:"user",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M512 512a192 192 0 1 0 0-384 192 192 0 0 0 0 384m0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512m320 320v-96a96 96 0 0 0-96-96H288a96 96 0 0 0-96 96v96a32 32 0 1 1-64 0v-96a160 160 0 0 1 160-160h448a160 160 0 0 1 160 160v96a32 32 0 1 1-64 0"})]))}}),zt=Ka,Xa=e.defineComponent({name:"View",__name:"view",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M512 160c320 0 512 352 512 352S832 864 512 864 0 512 0 512s192-352 512-352m0 64c-225.28 0-384.128 208.064-436.8 288 52.608 79.872 211.456 288 436.8 288 225.28 0 384.128-208.064 436.8-288-52.608-79.872-211.456-288-436.8-288m0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448m0 64a160.19 160.19 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160"})]))}}),Ja=Xa;const Pe=Ze.create({baseURL:"/data-viewer/api/list-preset",timeout:3e4,headers:{"Content-Type":"application/json"}});function Ae(t,a){if(!t||t.code!==200)throw new Error((t==null?void 0:t.msg)||a);return t.data}function ot(t){return t.businessKey?{businessKey:t.businessKey}:{}}function Rt(t){return`/users/${encodeURIComponent(t)}`}function lt(t){return`${Rt(t.userId)}/models/${encodeURIComponent(t.model)}`}function rt(t,a){return`${Rt(t)}/presets/${encodeURIComponent(a)}`}async function Ot(t){const a=await Pe.get(lt(t),{params:ot(t)});return Ae(a.data,"获取自定义列表失败")}async function Wt(t){const a=await Pe.get(`${lt(t)}/default`,{params:ot(t)});return Ae(a.data,"获取默认自定义列表失败")}async function Qt(t,a){const n=await Pe.post(lt(t),a,{params:ot(t)});return Ae(n.data,"保存自定义列表失败")}async function Za(t,a){const n=await Pe.get(rt(t,a));return Ae(n.data,"获取自定义列表详情失败")}async function yt(t,a,n){const l=await Pe.put(rt(t,a),n);return Ae(l.data,"更新自定义列表失败")}async function Ut(t,a){const n=await Pe.delete(rt(t,a));Ae(n.data,"删除自定义列表失败")}async function Ht(t,a){const n=await Pe.post(`${rt(t,a)}/default`);return Ae(n.data,"设置默认自定义列表失败")}async function eo(t){const a=await Pe.delete(`${lt(t)}/default`,{params:ot(t)});Ae(a.data,"清除默认自定义列表失败")}Pe.interceptors.response.use(t=>t,t=>{var a;return Ze.isAxiosError(t)&&((a=t.response)==null?void 0:a.status)===404?Promise.reject(new Error("自定义列表不存在")):Promise.reject(t)});const to={class:"list-preset-manager"},no={class:"preset-layout","data-testid":"list-preset-dialog"},ao={class:"preset-list-section"},oo={class:"preset-toolbar"},lo={key:0,class:"preset-status-bar"},ro={key:0},io={key:1},so={key:0,class:"preset-state"},co={class:"preset-item-main"},uo={class:"preset-title-row"},mo={class:"preset-title"},fo={key:0,class:"preset-description"},po={class:"preset-meta"},ho={class:"preset-actions"},go={class:"preset-save-section"},yo={class:"save-section-header"},wo={"data-testid":"list-preset-title",class:"preset-input-wrapper"},bo={"data-testid":"list-preset-description",class:"preset-input-wrapper"},Vo={class:"column-config-panel"},ko={class:"column-config-header"},Co=["title"],_o={class:"column-order-actions"},No={class:"current-state-summary"},xo={class:"query-summary"},Eo={class:"query-summary"},So={class:"dialog-footer"},wt=re(e.defineComponent({__name:"ListPresetManager",props:{config:{},getState:{type:Function},applyState:{type:Function},reload:{type:Function},availableColumns:{}},setup(t,{expose:a}){const n=t,l=e.ref(!1),o=e.ref(!1),i=e.ref(!1),h=e.ref(""),r=e.ref([]),c=e.ref([]),m=e.ref(null),y=e.ref(null),p=e.ref({title:"",description:"",visibility:"PRIVATE",isDefault:!1,saveQueryConditions:!0}),b=e.computed(()=>n.config.buttonText||"自定义列表"),k=e.computed(()=>n.getState()),d=e.computed(()=>c.value.filter(w=>w.visible)),V=e.computed(()=>r.value.find(w=>w.id===y.value)),C=e.computed(()=>r.value.find(w=>w.isDefault)),R=e.computed(()=>p.value.saveQueryConditions?k.value.slice.slice(0,3).map(w=>{const f=Array.isArray(w.value)?w.value.join(","):w.value;return`${w.field} ${w.op} ${f??""}`.trim()}):[]),H=e.computed(()=>p.value.saveQueryConditions?k.value.orderBy.slice(0,3).map(w=>`${w.field} ${w.dir??w.order}`):[]),N=e.computed(()=>{const w=h.value.trim().toLowerCase();return w?r.value.filter(f=>{var v;return f.title.toLowerCase().includes(w)||((v=f.description)==null?void 0:v.toLowerCase().includes(w))}):r.value});function D(w,f){return w instanceof Error?w.message:f}function K(){M(),l.value=!0}function M(){c.value=x(k.value)}function x(w){const f=n.availableColumns&&n.availableColumns.length>0?n.availableColumns:w.columns.map(Q=>({name:Q,type:"TEXT",title:Q})),v=new Map((w.columnSettings||[]).map(Q=>[Q.name,Q])),$=new Set(w.columns||[]),q=$.size>0;return f.map((Q,oe)=>{const J=v.get(Q.name);return{name:Q.name,title:Q.title,visible:(J==null?void 0:J.visible)??(!q||$.has(Q.name)),width:(J==null?void 0:J.width)??Q.width,minWidth:(J==null?void 0:J.minWidth)??Q.minWidth,fixed:(J==null?void 0:J.fixed)??Q.fixed,order:(J==null?void 0:J.order)??oe}}).sort((Q,oe)=>Q.order-oe.order).map(Q=>({name:Q.name,title:Q.title,visible:Q.visible,width:Q.width,minWidth:Q.minWidth,fixed:Q.fixed}))}function O(w){const f=c.value.length>0?c.value:x(w),v=p.value.saveQueryConditions;return{columns:f.filter($=>$.visible).map($=>$.name),columnSettings:f.map(($,q)=>({name:$.name,visible:$.visible,width:$.width,minWidth:$.minWidth,fixed:$.fixed,order:q})),slice:v?w.slice:[],orderBy:v?w.orderBy:[],pageSize:w.pageSize}}function I(){return!n.availableColumns||n.availableColumns.length===0?null:new Set(n.availableColumns.map(w=>w.name))}function W(w){const f=I();return f?[...new Set([...w.columns,...(w.columnSettings||[]).map($=>$.name)])].filter($=>!f.has($)):[]}function Z(w){return w.columns.length>0?!0:(X.ElMessage.warning("请至少保留一个显示字段"),!1)}function ie(w,f){const v=w+f;if(v<0||v>=c.value.length)return;const $=c.value.slice(),q=$[w],Q=$[v];!q||!Q||($[w]=Q,$[v]=q,c.value=$)}function ue(){m.value=null,p.value={title:"",description:"",visibility:"PRIVATE",isDefault:!1,saveQueryConditions:!0}}async function de(){o.value=!0;try{r.value=await Ot({userId:n.config.userId,model:n.config.model,businessKey:n.config.businessKey})}catch(w){X.ElMessage.error(D(w,"加载自定义列表失败"))}finally{o.value=!1}}async function P(w){var v,$,q;const f=W(w);y.value=w.id,n.applyState({columns:w.columns,columnSettings:w.columnSettings,slice:((v=w.query)==null?void 0:v.slice)||[],orderBy:(($=w.query)==null?void 0:$.orderBy)||[],pageSize:w.pageSize}),await((q=n.reload)==null?void 0:q.call(n)),l.value=!1,f.length>0&&X.ElMessage.warning(`已忽略失效字段: ${f.slice(0,3).join("、")}${f.length>3?"...":""}`),X.ElMessage.success(`已应用: ${w.title}`)}function S(w){m.value=w.id,p.value={title:w.title,description:w.description||"",visibility:w.visibility,isDefault:!!w.isDefault,saveQueryConditions:!0}}function z(){ue()}async function ne(){const w=p.value.title.trim();if(!w){X.ElMessage.warning("请输入列表名称");return}const f=O(k.value);if(Z(f)){i.value=!0;try{const v=!!m.value,$={title:w,description:p.value.description.trim()||void 0,columns:f.columns,columnSettings:f.columnSettings,query:{slice:f.slice,orderBy:f.orderBy},pageSize:f.pageSize,visibility:p.value.visibility,isDefault:p.value.isDefault},q=v&&m.value?await yt(n.config.userId,m.value,$):await Qt({userId:n.config.userId,model:n.config.model,businessKey:n.config.businessKey},$);r.value=[q,...r.value.filter(Q=>Q.id!==q.id)],q.isDefault&&(r.value=r.value.map(Q=>({...Q,isDefault:Q.id===q.id}))),ue(),X.ElMessage.success(v?"自定义列表已更新":"自定义列表已保存")}catch(v){X.ElMessage.error(D(v,m.value?"更新自定义列表失败":"保存自定义列表失败"))}finally{i.value=!1}}}async function se(w){const f=O(k.value);if(Z(f)){i.value=!0;try{const v=await yt(n.config.userId,w.id,{title:w.title,description:w.description,columns:f.columns,columnSettings:f.columnSettings,query:{slice:f.slice,orderBy:f.orderBy},pageSize:f.pageSize,visibility:w.visibility,isDefault:w.isDefault});r.value=r.value.map($=>$.id===v.id?v:$),v.isDefault&&(r.value=r.value.map($=>({...$,isDefault:$.id===v.id}))),X.ElMessage.success("已覆盖自定义列表")}catch(v){X.ElMessage.error(D(v,"覆盖自定义列表失败"))}finally{i.value=!1}}}async function we(w){try{const f=await Ht(n.config.userId,w.id);r.value=r.value.map(v=>({...v,isDefault:v.id===f.id})),X.ElMessage.success("默认列表已更新")}catch(f){X.ElMessage.error(D(f,"设置默认列表失败"))}}async function te(w){try{await X.ElMessageBox.confirm(`确定删除"${w.title}"吗?`,"删除确认",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning",confirmButtonClass:"el-button--danger"}),await Ut(n.config.userId,w.id),r.value=r.value.filter(f=>f.id!==w.id),m.value===w.id&&ue(),y.value===w.id&&(y.value=null),X.ElMessage.success("自定义列表已删除")}catch(f){f!=="cancel"&&X.ElMessage.error(D(f,"删除自定义列表失败"))}}function me(w){switch(w){case"DEPARTMENT":return"部门";case"TENANT":return"租户";case"PRIVATE":default:return"仅自己"}}function Me(w){switch(w){case"DEPARTMENT":return"warning";case"TENANT":return"success";case"PRIVATE":default:return"info"}}function be(w){if(!w)return"";const f=new Date(w);return Number.isNaN(f.getTime())?w:f.toLocaleString()}return a({applyPreset:P,cancelEdit:z,loadPresets:de,openDialog:K,overwritePreset:se,saveCurrentPreset:ne,startEditPreset:S,setDraft:w=>{p.value={...p.value,...w}},getDraft:()=>p.value,getPresets:()=>r.value,getColumnDraft:()=>c.value,syncColumnDraftFromState:M}),(w,f)=>{const v=e.resolveComponent("el-button"),$=e.resolveComponent("el-input"),q=e.resolveComponent("el-icon"),Q=e.resolveComponent("el-empty"),oe=e.resolveComponent("el-tag"),J=e.resolveComponent("el-dropdown-item"),fe=e.resolveComponent("el-dropdown-menu"),le=e.resolveComponent("el-dropdown"),De=e.resolveComponent("el-scrollbar"),pe=e.resolveComponent("el-form-item"),Ve=e.resolveComponent("el-radio"),ke=e.resolveComponent("el-radio-group"),F=e.resolveComponent("el-checkbox"),Ce=e.resolveComponent("el-form"),G=e.resolveComponent("el-input-number"),he=e.resolveComponent("el-option"),Ge=e.resolveComponent("el-select"),Ie=e.resolveComponent("el-descriptions-item"),Ke=e.resolveComponent("el-descriptions"),He=e.resolveComponent("el-dialog");return e.openBlock(),e.createElementBlock("div",to,[e.createVNode(v,{"data-testid":"list-preset-open",size:"small",icon:e.unref(za),onClick:K},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b.value),1)]),_:1},8,["icon"]),e.createVNode(He,{modelValue:l.value,"onUpdate:modelValue":f[7]||(f[7]=A=>l.value=A),title:"自定义列表",width:"920px","close-on-click-modal":!1,onOpen:de},{footer:e.withCtx(()=>[e.createElementVNode("div",So,[e.createVNode(v,{onClick:f[6]||(f[6]=A=>l.value=!1)},{default:e.withCtx(()=>[...f[26]||(f[26]=[e.createTextVNode("关闭",-1)])]),_:1}),m.value?(e.openBlock(),e.createBlock(v,{key:0,onClick:z},{default:e.withCtx(()=>[...f[27]||(f[27]=[e.createTextVNode("取消编辑",-1)])]),_:1})):e.createCommentVNode("",!0),e.createVNode(v,{"data-testid":"list-preset-save",type:"primary",loading:i.value,onClick:ne},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.value?"更新方案":"保存当前"),1)]),_:1},8,["loading"])])]),default:e.withCtx(()=>[e.createElementVNode("div",no,[e.createElementVNode("section",ao,[e.createElementVNode("div",oo,[e.createVNode($,{modelValue:h.value,"onUpdate:modelValue":f[0]||(f[0]=A=>h.value=A),placeholder:"搜索列表","prefix-icon":e.unref(gt),clearable:""},null,8,["modelValue","prefix-icon"]),e.createVNode(v,{icon:e.unref(Wa),loading:o.value,onClick:de},null,8,["icon","loading"])]),V.value||C.value?(e.openBlock(),e.createElementBlock("div",lo,[V.value?(e.openBlock(),e.createElementBlock("span",ro,"当前已应用:"+e.toDisplayString(V.value.title),1)):e.createCommentVNode("",!0),C.value?(e.openBlock(),e.createElementBlock("span",io,"默认方案:"+e.toDisplayString(C.value.title),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createVNode(De,{height:"430px"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",so,[e.createVNode(q,{class:"is-loading"},{default:e.withCtx(()=>[e.createVNode(e.unref(pt))]),_:1}),f[8]||(f[8]=e.createElementVNode("span",null,"加载中",-1))])):N.value.length===0?(e.openBlock(),e.createBlock(Q,{key:1,description:"暂无自定义列表"})):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(N.value,A=>{var _e,ge,ve,Ne;return e.openBlock(),e.createElementBlock("article",{key:A.id,class:e.normalizeClass(["preset-item",{"is-active":A.id===y.value}]),"data-testid":"list-preset-item"},[e.createElementVNode("div",co,[e.createElementVNode("div",uo,[e.createElementVNode("span",mo,e.toDisplayString(A.title),1),A.isDefault?(e.openBlock(),e.createBlock(oe,{key:0,size:"small",type:"success"},{default:e.withCtx(()=>[...f[9]||(f[9]=[e.createTextVNode("默认",-1)])]),_:1})):e.createCommentVNode("",!0),A.id===y.value?(e.openBlock(),e.createBlock(oe,{key:1,size:"small"},{default:e.withCtx(()=>[...f[10]||(f[10]=[e.createTextVNode("已应用",-1)])]),_:1})):e.createCommentVNode("",!0),e.createVNode(oe,{size:"small",type:Me(A.visibility)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(me(A.visibility)),1)]),_:2},1032,["type"])]),A.description?(e.openBlock(),e.createElementBlock("p",fo,e.toDisplayString(A.description),1)):e.createCommentVNode("",!0),e.createElementVNode("div",po,[e.createElementVNode("span",null,e.toDisplayString(A.columns.length)+" 列",1),e.createElementVNode("span",null,e.toDisplayString(((ge=(_e=A.query)==null?void 0:_e.slice)==null?void 0:ge.length)||0)+" 条件",1),e.createElementVNode("span",null,e.toDisplayString(((Ne=(ve=A.query)==null?void 0:ve.orderBy)==null?void 0:Ne.length)||0)+" 排序",1),e.createElementVNode("span",null,e.toDisplayString(be(A.updatedAt)),1)])]),e.createElementVNode("div",ho,[e.createVNode(v,{"data-testid":"list-preset-apply",link:"",type:"primary",onClick:ze=>P(A)},{default:e.withCtx(()=>[...f[11]||(f[11]=[e.createTextVNode("应用",-1)])]),_:1},8,["onClick"]),e.createVNode(le,{trigger:"click"},{dropdown:e.withCtx(()=>[e.createVNode(fe,null,{default:e.withCtx(()=>[e.createVNode(J,{onClick:ze=>S(A)},{default:e.withCtx(()=>[...f[12]||(f[12]=[e.createTextVNode(" 编辑信息 ",-1)])]),_:1},8,["onClick"]),e.createVNode(J,{onClick:ze=>se(A)},{default:e.withCtx(()=>[...f[13]||(f[13]=[e.createTextVNode(" 覆盖当前 ",-1)])]),_:1},8,["onClick"]),e.createVNode(J,{onClick:ze=>we(A)},{default:e.withCtx(()=>[e.createVNode(q,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Ga))]),_:1}),f[14]||(f[14]=e.createTextVNode(" 设为默认 ",-1))]),_:1},8,["onClick"]),e.createVNode(J,{divided:"",class:"danger-item",onClick:ze=>te(A)},{default:e.withCtx(()=>[e.createVNode(q,null,{default:e.withCtx(()=>[e.createVNode(e.unref(at))]),_:1}),f[15]||(f[15]=e.createTextVNode(" 删除 ",-1))]),_:1},8,["onClick"])]),_:2},1024)]),default:e.withCtx(()=>[e.createVNode(v,{"data-testid":"list-preset-more",link:"",icon:e.unref(At)},null,8,["icon"])]),_:2},1024)])],2)}),128))]),_:1})]),e.createElementVNode("section",go,[e.createElementVNode("div",yo,[e.createElementVNode("h4",null,e.toDisplayString(m.value?"编辑当前方案":"保存当前列表"),1),m.value?(e.openBlock(),e.createBlock(v,{key:0,link:"",type:"primary",onClick:z},{default:e.withCtx(()=>[...f[16]||(f[16]=[e.createTextVNode(" 取消编辑 ",-1)])]),_:1})):e.createCommentVNode("",!0)]),e.createVNode(Ce,{"label-position":"top",model:p.value},{default:e.withCtx(()=>[e.createVNode(pe,{label:"名称",required:""},{default:e.withCtx(()=>[e.createElementVNode("div",wo,[e.createVNode($,{modelValue:p.value.title,"onUpdate:modelValue":f[1]||(f[1]=A=>p.value.title=A),maxlength:"50","show-word-limit":""},null,8,["modelValue"])])]),_:1}),e.createVNode(pe,{label:"描述"},{default:e.withCtx(()=>[e.createElementVNode("div",bo,[e.createVNode($,{modelValue:p.value.description,"onUpdate:modelValue":f[2]||(f[2]=A=>p.value.description=A),type:"textarea",rows:3,maxlength:"200","show-word-limit":""},null,8,["modelValue"])])]),_:1}),e.createVNode(pe,{label:"可见范围"},{default:e.withCtx(()=>[e.createVNode(ke,{modelValue:p.value.visibility,"onUpdate:modelValue":f[3]||(f[3]=A=>p.value.visibility=A)},{default:e.withCtx(()=>[e.createVNode(Ve,{label:"PRIVATE"},{default:e.withCtx(()=>[...f[17]||(f[17]=[e.createTextVNode("仅自己",-1)])]),_:1}),t.config.allowShared?(e.openBlock(),e.createBlock(Ve,{key:0,label:"DEPARTMENT"},{default:e.withCtx(()=>[...f[18]||(f[18]=[e.createTextVNode("部门",-1)])]),_:1})):e.createCommentVNode("",!0),t.config.allowTenantShared?(e.openBlock(),e.createBlock(Ve,{key:1,label:"TENANT"},{default:e.withCtx(()=>[...f[19]||(f[19]=[e.createTextVNode("租户",-1)])]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])]),_:1}),e.createVNode(pe,null,{default:e.withCtx(()=>[e.createVNode(F,{modelValue:p.value.isDefault,"onUpdate:modelValue":f[4]||(f[4]=A=>p.value.isDefault=A)},{default:e.withCtx(()=>[...f[20]||(f[20]=[e.createTextVNode("设为默认",-1)])]),_:1},8,["modelValue"])]),_:1}),e.createVNode(pe,null,{default:e.withCtx(()=>[e.createVNode(F,{modelValue:p.value.saveQueryConditions,"onUpdate:modelValue":f[5]||(f[5]=A=>p.value.saveQueryConditions=A)},{default:e.withCtx(()=>[...f[21]||(f[21]=[e.createTextVNode("保存当前筛选和排序",-1)])]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"]),e.createElementVNode("div",Vo,[e.createElementVNode("div",ko,[f[23]||(f[23]=e.createElementVNode("span",null,"字段配置",-1)),e.createVNode(v,{link:"",type:"primary",onClick:M},{default:e.withCtx(()=>[...f[22]||(f[22]=[e.createTextVNode("恢复当前",-1)])]),_:1})]),e.createVNode(De,{height:"220px"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(A,_e)=>(e.openBlock(),e.createElementBlock("div",{key:A.name,class:"column-config-row"},[e.createVNode(F,{modelValue:A.visible,"onUpdate:modelValue":ge=>A.visible=ge,class:"column-visible"},null,8,["modelValue","onUpdate:modelValue"]),e.createElementVNode("span",{class:"column-name",title:A.name},e.toDisplayString(A.title||A.name),9,Co),e.createVNode(G,{modelValue:A.width,"onUpdate:modelValue":ge=>A.width=ge,size:"small",min:40,step:10,"controls-position":"right",placeholder:"宽"},null,8,["modelValue","onUpdate:modelValue"]),e.createVNode(Ge,{modelValue:A.fixed,"onUpdate:modelValue":ge=>A.fixed=ge,size:"small",placeholder:"固定",clearable:""},{default:e.withCtx(()=>[e.createVNode(he,{label:"左",value:"left"}),e.createVNode(he,{label:"右",value:"right"})]),_:1},8,["modelValue","onUpdate:modelValue"]),e.createElementVNode("div",_o,[e.createVNode(v,{link:"",disabled:_e===0,onClick:ge=>ie(_e,-1)},{default:e.withCtx(()=>[...f[24]||(f[24]=[e.createTextVNode("上",-1)])]),_:1},8,["disabled","onClick"]),e.createVNode(v,{link:"",disabled:_e===c.value.length-1,onClick:ge=>ie(_e,1)},{default:e.withCtx(()=>[...f[25]||(f[25]=[e.createTextVNode("下",-1)])]),_:1},8,["disabled","onClick"])])]))),128))]),_:1})]),e.createElementVNode("div",No,[e.createVNode(Ke,{column:1,size:"small",border:""},{default:e.withCtx(()=>[e.createVNode(Ie,{label:"当前列数"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.value.length),1)]),_:1}),e.createVNode(Ie,{label:"筛选条件"},{default:e.withCtx(()=>[e.createElementVNode("div",xo,[e.createElementVNode("span",null,e.toDisplayString(p.value.saveQueryConditions?k.value.slice.length:0)+" 条",1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(R.value,A=>(e.openBlock(),e.createElementBlock("span",{key:A,class:"query-summary-item"},e.toDisplayString(A),1))),128))])]),_:1}),e.createVNode(Ie,{label:"排序规则"},{default:e.withCtx(()=>[e.createElementVNode("div",Eo,[e.createElementVNode("span",null,e.toDisplayString(p.value.saveQueryConditions?k.value.orderBy.length:0)+" 条",1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(H.value,A=>(e.openBlock(),e.createElementBlock("span",{key:A,class:"query-summary-item"},e.toDisplayString(A),1))),128))])]),_:1}),e.createVNode(Ie,{label:"分页大小"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k.value.pageSize||"-"),1)]),_:1})]),_:1})])])])]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-ef8e2b00"]]),Bo={class:"data-table-with-search"},Mo={key:0,class:"query-panel-wrapper"},Do={key:1,class:"search-toolbar-wrapper"},vo={class:"data-table-wrapper"},To=re(e.defineComponent({inheritAttrs:!1,__name:"DataTableWithSearch",props:{schema:{},fetchData:{},columns:{},data:{},total:{},loading:{type:Boolean},pageSize:{default:50},showFilters:{type:Boolean,default:!0},showPager:{type:Boolean,default:!0},initialSlice:{},localFilter:{type:Boolean,default:void 0},serverSummary:{},filterOptionsLoader:{},customFilterComponents:{},cellCopy:{},queryMode:{},density:{},searchableFields:{},searchLayout:{default:"horizontal"},showSearchActions:{type:Boolean,default:!0},filterMergeMode:{default:"merge"},queryHooks:{},querySchema:{},showQueryPanel:{type:Boolean,default:!1},qmModel:{},filterMemberLoader:{},enableSavedQuery:{type:Boolean},listPreset:{type:[Boolean,Object]}},emits:["page-change","sort-change","filter-change","filter-commit","row-click","row-dblclick","checkbox-change","checkbox-all","search","reset","load-success","load-error"],setup(t,{expose:a,emit:n}){var qe;const l=e.useAttrs(),o=t,i=n,h=e.useSlots(),r=e.computed(()=>!!o.schema&&!!o.fetchData),c=Et(o.fetchData??(async()=>({items:[],total:0})),{pageSize:((qe=o.schema)==null?void 0:qe.pageSize)??o.pageSize,hooks:o.queryHooks}),m=e.ref(null),y=e.ref(void 0),p=e.computed(()=>r.value&&o.schema?o.schema.columns:o.columns||[]);function b(u,_){return _?{...u,width:_.width??u.width,minWidth:_.minWidth??u.minWidth,fixed:_.fixed??u.fixed}:u}function k(u,_){if(!_)return u;const U=new Map(u.map(ee=>[ee.name,ee])),ae=new Map((_.columnSettings||[]).map(ee=>[ee.name,ee])),ye=new Set(_.columns||[]),Fe=ye.size>0,Te=[];_.columnSettings&&_.columnSettings.length>0&&Te.push(..._.columnSettings.slice().sort((ee,xe)=>ee.order-xe.order).map(ee=>ee.name));for(const ee of _.columns||[])Te.includes(ee)||Te.push(ee);const je=[],Ye=new Set;for(const ee of Te){const xe=U.get(ee);if(!xe||Ye.has(ee)){xe||console.warn(`[DataTableWithSearch] Ignore unknown list preset column: ${ee}`);continue}const s=ae.get(ee);(s==null?void 0:s.visible)!==!1&&(!Fe||ye.has(ee))&&(je.push(b(xe,s)),Ye.add(ee))}if(!Fe)for(const ee of u){if(Ye.has(ee.name))continue;const xe=ae.get(ee.name);(xe==null?void 0:xe.visible)!==!1&&(je.push(b(ee,xe)),Ye.add(ee.name))}return je.length>0?je:u}const d=e.computed(()=>{const u=k(p.value,m.value);if(h["row-actions"]&&!u.some(_=>_.name==="_actions")){const _={name:"_actions",type:"TEXT",title:"操作",width:120,fixed:"right",filterable:!1};return[...u,_]}return u}),V=e.computed(()=>{const u=new Set;return d.value.flatMap(_=>{const U=_.name.trim();return!U||U==="_actions"||u.has(U)?[]:(u.add(U),[U])})}),C=e.computed(()=>r.value?c.data.value:o.data||[]),R=e.computed(()=>r.value?c.total.value:o.total||0),H=e.computed(()=>r.value?c.loading.value&&c.data.value.length===0:o.loading||!1),N=e.computed(()=>r.value?c.loading.value&&c.data.value.length>0:!1);function D(u){return u==="filter"?"正在筛选...":u==="sort"?"正在排序...":u==="page"&&de.value?`正在加载第 ${c.currentPage.value} 页...`:"正在刷新..."}const K=e.computed(()=>N.value?D(c.activeTrigger.value):""),M=e.computed(()=>!r.value||c.loading.value||c.data.value.length===0?null:c.lastError.value?"查询失败":null),x=e.computed(()=>r.value?c.serverSummary.value:o.serverSummary||null),O=e.computed(()=>{var u;return y.value&&y.value>0?y.value:r.value&&((u=o.schema)!=null&&u.pageSize)?o.schema.pageSize:o.pageSize}),I=e.computed(()=>{var u;return r.value&&((u=o.schema)==null?void 0:u.queryMode)!==void 0?o.schema.queryMode:o.queryMode}),W=e.computed(()=>I.value!==void 0),Z=e.computed(()=>I.value==="panel"||I.value==="combined"),ie=e.computed(()=>W.value?Z.value&&!!o.querySchema:!!o.showQueryPanel&&!!o.querySchema),ue=e.computed(()=>{var u;return W.value?I.value==="column"||I.value==="combined":r.value&&((u=o.schema)==null?void 0:u.showFilters)!==void 0?o.schema.showFilters:o.showFilters}),de=e.computed(()=>{var u;return r.value&&((u=o.schema)==null?void 0:u.showPager)!==void 0?o.schema.showPager:o.showPager}),P=e.computed(()=>W.value?Z.value&&!o.querySchema:!1),S=e.computed(()=>{var u;return r.value&&((u=o.schema)!=null&&u.cellCopy)?o.schema.cellCopy:o.cellCopy}),z=e.computed(()=>{var u;return r.value&&((u=o.schema)!=null&&u.density)?o.schema.density:o.density??"compact"}),ne=e.computed(()=>m.value?m.value.slice||[]:o.initialSlice),se=e.computed(()=>{var u;return o.localFilter!==void 0?o.localFilter:r.value?((u=o.schema)==null?void 0:u.localFilter)??!1:!0}),we=e.computed(()=>{var u;return r.value&&((u=o.schema)!=null&&u.searchLayout)?o.schema.searchLayout:o.searchLayout}),te=e.computed(()=>{const u=o.listPreset;return u?u===!0?(console.warn("[DataTableWithSearch] listPreset=true requires object config with userId and model"),null):u.enabled===!1?null:!u.userId||!u.model?(console.warn("[DataTableWithSearch] listPreset requires userId and model"),null):{autoLoadDefault:!0,placement:"toolbar-right",...u,enabled:!0}:null}),me=e.computed(()=>{const u=te.value;return!!u&&u.placement!=="external"}),Me=e.computed(()=>{var _;if(o.searchableFields&&o.searchableFields.length>0)return o.searchableFields;if(r.value&&((_=o.schema)!=null&&_.searchableFields))return o.schema.searchableFields;const u=d.value.filter(U=>{var ae;return((ae=U.uiConfig)==null?void 0:ae.showInToolbar)===!0}).map(U=>U.name);return u.length>0?u:void 0}),be=new Set(["toolbar","toolbar-right","footer","empty","row-actions"]),w=e.computed(()=>{const u={};for(const _ of Object.keys(h))!be.has(_)&&(_.startsWith("column-")||_.startsWith("filter-"))&&(u[_]=h[_]);return u}),f=e.ref(),v=e.ref(),$=e.ref(),q=e.ref([]),Q=e.ref([]),oe=e.ref([]),J=e.computed(()=>{const u=[...oe.value],_=new Set(u.map(U=>U.field));if(o.filterMergeMode==="replace"){const U=q.value.length>0?q.value:Q.value;for(const ae of U)_.has(ae.field)||(u.push(ae),_.add(ae.field))}else{for(const U of q.value)_.has(U.field)||(u.push(U),_.add(U.field));for(const U of Q.value)_.has(U.field)||(u.push(U),_.add(U.field))}return u});function fe(u={}){var _,U;(U=(_=$.value)==null?void 0:_.clearSelection)==null||U.call(_,u)}async function le(u="refresh"){if(!(!r.value||!o.fetchData)){u!=="mount"&&fe(),c.setColumns(V.value),c.setSlice(J.value);try{await c.loadData(u),i("load-success",{items:c.data.value,total:c.total.value,totalData:c.serverSummary.value??void 0})}catch(_){i("load-error",_)}}}function De(u){var _,U;return{columns:u.columns,columnSettings:u.columnSettings,slice:((_=u.query)==null?void 0:_.slice)||[],orderBy:((U=u.query)==null?void 0:U.orderBy)||[],pageSize:u.pageSize}}async function pe(){const u=te.value;if(!(!u||u.autoLoadDefault===!1))try{const _=await Wt({userId:u.userId,model:u.model,businessKey:u.businessKey});_&&Ne(De(_))}catch(_){console.warn("[DataTableWithSearch] Failed to load default list preset:",_)}}e.onMounted(async()=>{await pe(),r.value&&le("mount")});function Ve(u){oe.value=u}function ke(){A()}function F(){oe.value=[],A()}function Ce(){var u;(u=v.value)==null||u.search()}function G(){var u;(u=v.value)==null||u.reset()}function he(u){q.value=u,o.showSearchActions||A()}function Ge(){i("search",q.value),A()}function Ie(){q.value=[],i("reset"),A()}function Ke(u){Q.value=u,i("filter-change",J.value)}function He(u){Q.value=u,i("filter-commit",J.value),A()}function A(){i("filter-change",J.value),r.value&&(c.currentPage.value=1,le("filter"))}function _e(u,_){i("page-change",u,_),y.value=_,r.value&&(c.setPage(u,_),le("page"))}function ge(u,_){i("sort-change",u,_),r.value&&(u&&_?c.setSort([{field:u,dir:_}]):c.setSort([]),le("sort"))}function ve(){const u=d.value.filter(ae=>ae.name!=="_actions"),_=u.map(ae=>ae.name),U=u.map((ae,ye)=>({name:ae.name,visible:!0,width:ae.width,minWidth:ae.minWidth,fixed:ae.fixed,order:ye}));return{columns:_,columnSettings:U,slice:J.value,orderBy:c.currentOrderBy.value??[],pageSize:O.value}}function Ne(u,_={}){m.value={columns:u.columns||[],columnSettings:u.columnSettings,slice:u.slice||[],orderBy:u.orderBy||[],pageSize:u.pageSize},y.value=u.pageSize&&u.pageSize>0?u.pageSize:void 0,q.value=[],oe.value=[],Q.value=u.slice||[],c.setSort(u.orderBy||[]),r.value&&(c.setPage(1,O.value),_.reload&&le("reload"))}function ze(u={}){m.value=null,y.value=void 0,q.value=[],oe.value=[],Q.value=[],c.setSort([]),r.value&&(c.setPage(1,O.value),u.reload&&le("reload"))}async function ct(){r.value&&(c.currentPage.value=1,await le("reload"))}const Vt=e.computed(()=>{const u=Object.keys(l).filter(_=>!_.startsWith("on")).reduce((_,U)=>({..._,[U]:l[U]}),{});return{columns:d.value,data:C.value,total:R.value,loading:H.value,backgroundLoading:N.value,backgroundLoadingText:K.value,backgroundLoadingError:M.value,pageSize:O.value,showFilters:ue.value,showPager:de.value,initialSlice:ne.value,localFilter:se.value,serverSummary:x.value,filterOptionsLoader:o.filterOptionsLoader,filterMemberLoader:o.filterMemberLoader,qmModel:o.qmModel,customFilterComponents:o.customFilterComponents,cellCopy:S.value,density:z.value,...u}}),kt=e.computed(()=>{const u={};return Object.keys(l).forEach(_=>{if(_.startsWith("on")){const U=_.slice(2,3).toLowerCase()+_.slice(3);u[U]=l[_]}}),{"page-change":(_,U)=>{_e(_,U),u.pageChange&&u.pageChange(_,U)},"sort-change":(_,U)=>{ge(_,U),u.sortChange&&u.sortChange(_,U)},"filter-change":Ke,"filter-commit":He,"row-click":(..._)=>{i("row-click",..._),u.rowClick&&u.rowClick(..._)},"row-dblclick":(..._)=>{i("row-dblclick",..._),u.rowDblclick&&u.rowDblclick(..._)},"checkbox-change":_=>{i("checkbox-change",_),u.checkboxChange&&u.checkboxChange(_)},"checkbox-all":_=>{i("checkbox-all",_),u.checkboxAll&&u.checkboxAll(_)}}});return a({getSearchToolbar:()=>f.value,getQueryPanel:()=>v.value,getDataTable:()=>$.value,clearSearchFilters:()=>{var u;return(u=f.value)==null?void 0:u.clearFilters()},clearTableFilters:()=>{var u;return(u=$.value)==null?void 0:u.clearFilters()},searchQueryPanel:Ce,resetQueryPanel:G,clearAllFilters:()=>{var u,_;oe.value=[],G(),(u=f.value)==null||u.clearFilters(),(_=$.value)==null||_.clearFilters()},getMergedFilters:()=>J.value,resetPagination:()=>{var u;return(u=$.value)==null?void 0:u.resetPagination()},refresh:()=>{if(r.value)return le("refresh")},reload:()=>{if(r.value)return c.currentPage.value=1,le("reload")},addQueryHook:c.addHook,removeQueryHook:c.removeHook,getSelectedRows:()=>{var u,_;return((_=(u=$.value)==null?void 0:u.getSelectedRows)==null?void 0:_.call(u))??[]},getSelectedCount:()=>{var u,_;return((_=(u=$.value)==null?void 0:u.getSelectedCount)==null?void 0:_.call(u))??0},clearSelection:fe,getQuery:()=>c,getListViewState:ve,applyListViewState:Ne,resetListViewState:ze,getQueryState:ve,applyQueryState:u=>{Ne(u)},getSchema:()=>d.value}),(u,_)=>{var U,ae;return e.openBlock(),e.createElementBlock("div",Bo,[ie.value?(e.openBlock(),e.createElementBlock("div",Mo,[e.createVNode(Pt,{ref_key:"queryPanelRef",ref:v,schema:t.querySchema,"filter-member-loader":t.filterMemberLoader,"qm-model":t.qmModel,modelValue:oe.value,"onUpdate:modelValue":[_[0]||(_[0]=ye=>oe.value=ye),Ve],onSearch:ke,onReset:F},null,8,["schema","filter-member-loader","qm-model","modelValue"])])):e.createCommentVNode("",!0),P.value?(e.openBlock(),e.createElementBlock("div",Do,[e.createVNode($t,{ref_key:"searchToolbarRef",ref:f,columns:d.value,"searchable-fields":Me.value,layout:we.value,"show-actions":t.showSearchActions,"filter-options-loader":t.filterOptionsLoader,"filter-member-loader":t.filterMemberLoader,"qm-model":t.qmModel,modelValue:q.value,"onUpdate:modelValue":[_[1]||(_[1]=ye=>q.value=ye),he],onSearch:Ge,onReset:Ie},null,8,["columns","searchable-fields","layout","show-actions","filter-options-loader","filter-member-loader","qm-model","modelValue"])])):e.createCommentVNode("",!0),e.createElementVNode("div",vo,[e.createVNode(mt,e.mergeProps({ref_key:"dataTableRef",ref:$},Vt.value,e.toHandlers(kt.value)),e.createSlots({_:2},[u.$slots.toolbar||me.value&&((U=te.value)==null?void 0:U.placement)!=="toolbar-right"?{name:"toolbar",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"toolbar",{},void 0,!0),me.value&&te.value&&te.value.placement!=="toolbar-right"?(e.openBlock(),e.createBlock(wt,{key:0,config:te.value,"get-state":ve,"apply-state":Ne,"available-columns":p.value,reload:ct},null,8,["config","available-columns"])):e.createCommentVNode("",!0)]),key:"0"}:void 0,u.$slots["toolbar-right"]||me.value&&((ae=te.value)==null?void 0:ae.placement)==="toolbar-right"?{name:"toolbar-right",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"toolbar-right",{},void 0,!0),me.value&&te.value&&te.value.placement==="toolbar-right"?(e.openBlock(),e.createBlock(wt,{key:0,config:te.value,"get-state":ve,"apply-state":Ne,"available-columns":p.value,reload:ct},null,8,["config","available-columns"])):e.createCommentVNode("",!0)]),key:"1"}:void 0,u.$slots.footer?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"footer",{},void 0,!0)]),key:"2"}:void 0,u.$slots.empty?{name:"empty",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"empty",{},void 0,!0)]),key:"3"}:void 0,u.$slots["row-actions"]?{name:"column-_actions",fn:e.withCtx(({row:ye,column:Fe,value:Te})=>[e.renderSlot(u.$slots,"row-actions",{row:ye,column:Fe,value:Te},void 0,!0)]),key:"4"}:void 0,e.renderList(w.value,(ye,Fe)=>({name:Fe,fn:e.withCtx(Te=>[e.renderSlot(u.$slots,Fe,e.normalizeProps(e.guardReactiveProps(Te||{})),void 0,!0)])}))]),1040)])])}}}),[["__scopeId","data-v-c0f5d3b0"]]),$o={key:0,class:"pivot-axis-pager","aria-label":"Pivot axis pages"},Po=["data-axis","data-field"],Fo={class:"pivot-axis-page-axis"},Lo={class:"pivot-axis-page-title"},Ao={class:"pivot-axis-page-range"},Io={class:"pivot-axis-page-scope"},zo={key:0,class:"pivot-axis-page-more"},qt=re(e.defineComponent({__name:"PivotAxisPager",props:{rowAxes:{default:()=>[]},columnAxes:{default:()=>[]},rowPages:{default:()=>[]},columnPages:{default:()=>[]}},setup(t){const a=t,n=e.computed(()=>[...l("rows",a.rowPages,a.rowAxes),...l("columns",a.columnPages,a.columnAxes)]);function l(h,r,c){return r.map(m=>{const y=c.find(p=>p.field===m.field);return{...m,axis:h,title:(y==null?void 0:y.title)??m.field}})}function o(h){const r=h.offset,c=h.offset+h.limit,m=h.total===void 0?"?":String(h.total);return`${r}-${c} / ${m}`}function i(h){return h.pageScope==="perParent"?"父级内分页":"全局轴分页"}return(h,r)=>n.value.length?(e.openBlock(),e.createElementBlock("section",$o,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,c=>(e.openBlock(),e.createElementBlock("div",{key:`${c.axis}:${c.field}`,class:"pivot-axis-page","data-axis":c.axis,"data-field":c.field},[e.createElementVNode("span",Fo,e.toDisplayString(c.axis==="rows"?"行轴":"列轴"),1),e.createElementVNode("span",Lo,e.toDisplayString(c.title),1),e.createElementVNode("span",Ao,e.toDisplayString(o(c)),1),e.createElementVNode("span",Io,e.toDisplayString(i(c)),1),c.hasMore?(e.openBlock(),e.createElementBlock("span",zo,"还有更多")):e.createCommentVNode("",!0)],8,Po))),128))])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-d60c9e6a"]]),Ro={class:"pivot-evidence-panel","aria-label":"Pivot evidence"},Oo={key:0,class:"pivot-evidence-section"},Wo={class:"pivot-evidence-list"},Qo={key:1,class:"pivot-evidence-section"},Uo={class:"pivot-evidence-list"},Ho={key:2,class:"pivot-evidence-section"},qo={class:"pivot-evidence-list"},jt=re(e.defineComponent({__name:"PivotEvidencePanel",props:{evidence:{default:()=>({})},rowAxes:{default:()=>[]},columnAxes:{default:()=>[]}},setup(t){const a=t,n=e.computed(()=>[...i("行轴",a.rowAxes),...i("列轴",a.columnAxes)]),l=e.computed(()=>[...r(a.evidence.parentShareEvidence),...c(a.evidence.baselineRatioEvidence)]),o=e.computed(()=>Object.entries(a.evidence).filter(([d])=>d!=="parentShareEvidence"&&d!=="baselineRatioEvidence").filter(([,d])=>d!=null).map(([d,V])=>({label:d,value:k(V)})));function i(d,V){return V.map(C=>({label:`${d} ${C.title??C.field}`,value:h(C)}))}function h(d){var C;return[`field=${d.field}`,d.start===void 0?void 0:`start=${d.start}`,d.offset===void 0?void 0:`offset=${d.offset}`,d.limit===void 0?void 0:`limit=${d.limit}`,(C=d.orderBy)!=null&&C.length?`orderBy=${d.orderBy.join(",")}`:void 0,d.domainSliceEnabled?"domainSlice":void 0,d.havingEnabled?"having":void 0].filter(R=>!!R).join(" | ")}function r(d){return m(d).map((V,C)=>({label:`parentShare ${p(V.metric,C+1)}`,value:b([["of",V.of],["scope",V.denominatorScope],["axis",V.axis],["level",V.level],["parentLevel",V.parentLevel],["prePageRows",V.prePageRows],["parentGroups",V.parentGroups],["source",V.source]])}))}function c(d){return m(d).map((V,C)=>({label:`baselineRatio ${p(V.metric,C+1)}`,value:b([["of",V.of],["scope",V.baselineScope],["axis",V.axis],["baseline",V.baseline],["columnField",V.columnField],["baselineColumnKey",V.baselineColumnKey],["baselineColumnVisible",V.baselineColumnVisible],["prePageAxisDomainSize",V.prePageAxisDomainSize],["visibleAxisDomainSize",V.visibleAxisDomainSize],["baselineRows",V.baselineRows],["source",V.source]])}))}function m(d){return Array.isArray(d)?d.filter(y):[]}function y(d){return typeof d=="object"&&d!==null&&!Array.isArray(d)}function p(d,V){return typeof d=="string"&&d.length>0?d:`#${V}`}function b(d){return d.filter(([,V])=>V!=null).map(([V,C])=>`${V}=${k(C)}`).join(" | ")}function k(d){return typeof d=="string"?d:typeof d=="number"||typeof d=="boolean"?String(d):JSON.stringify(d)}return(d,V)=>(e.openBlock(),e.createElementBlock("section",Ro,[n.value.length?(e.openBlock(),e.createElementBlock("div",Oo,[V[0]||(V[0]=e.createElementVNode("div",{class:"pivot-evidence-heading"},"轴域范围",-1)),e.createElementVNode("dl",Wo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,C=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:C.label},[e.createElementVNode("dt",null,e.toDisplayString(C.label),1),e.createElementVNode("dd",null,e.toDisplayString(C.value),1)],64))),128))])])):e.createCommentVNode("",!0),l.value.length?(e.openBlock(),e.createElementBlock("div",Qo,[V[1]||(V[1]=e.createElementVNode("div",{class:"pivot-evidence-heading"},"派生指标证据",-1)),e.createElementVNode("dl",Uo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,C=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:C.label},[e.createElementVNode("dt",null,e.toDisplayString(C.label),1),e.createElementVNode("dd",null,e.toDisplayString(C.value),1)],64))),128))])])):e.createCommentVNode("",!0),o.value.length?(e.openBlock(),e.createElementBlock("div",Ho,[V[2]||(V[2]=e.createElementVNode("div",{class:"pivot-evidence-heading"},"计算证据",-1)),e.createElementVNode("dl",qo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,C=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:C.label},[e.createElementVNode("dt",null,e.toDisplayString(C.label),1),e.createElementVNode("dd",null,e.toDisplayString(C.value),1)],64))),128))])])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-1eb54a90"]]),jo=120;function Yt(t){const a=[],n=new Set;if(!Array.isArray(t)||t.length===0)return{valid:!1,errors:["headerTree must contain at least one node"]};const l=(o,i)=>{if(!o||typeof o!="object"){a.push(`${i}: node must be an object`);return}if((!o.title||typeof o.title!="string")&&a.push(`${i}: title is required`),o.role||a.push(`${i}: role is required`),o.children!==void 0){if(!Array.isArray(o.children)||o.children.length===0){a.push(`${i}: children must contain at least one node`);return}o.children.forEach((h,r)=>{l(h,`${i}.children[${r}]`)});return}if(!o.field||typeof o.field!="string"){a.push(`${i}: leaf node field is required`);return}if(n.has(o.field)){a.push(`${i}: duplicate leaf field "${o.field}"`);return}n.add(o.field)};return t.forEach((o,i)=>l(o,`headerTree[${i}]`)),{valid:a.length===0,errors:a}}function Gt(t){const a=[],n=l=>{var o;if((o=l.children)!=null&&o.length){l.children.forEach(n);return}a.push(l)};return t.forEach(n),a}function Kt(t,a={}){const n=Yt(t);if(!n.valid)throw new Error(`Invalid pivot header tree: ${n.errors.join("; ")}`);const l=a.defaultMinWidth??jo,o=a.defaultRowAxisFixed??"left",i=a.metricAlign??"right",h=a.rowAxisAlign??"left",r=(c,m)=>{var b;const y=c.fixed??m;if((b=c.children)!=null&&b.length)return{title:c.title,fixed:y,children:c.children.map(k=>r(k,y)),meta:Xt(c)};const p=y??(c.role==="rowAxis"&&o?o:void 0);return{field:c.field,title:c.title,width:c.width,minWidth:c.minWidth??l,fixed:p,align:c.role==="rowAxis"?h:i,headerAlign:"center",meta:Xt(c)}};return t.map(c=>r(c))}function Xt(t){return{role:t.role,key:t.key,axisValue:t.axisValue,metricField:t.metricField}}const Yo={class:"pivot-grid"},Go={class:"pivot-grid-empty"},Jt=re(e.defineComponent({inheritAttrs:!1,__name:"PivotGrid",props:{viewModel:{},loading:{type:Boolean,default:!1},height:{default:"100%"},emptyText:{default:"暂无透视数据"},emptyCellText:{default:"-"}},setup(t){const a=t,n=e.useAttrs(),l=e.computed(()=>new Map(a.viewModel.metrics.map(p=>[p.field,p]))),o=e.computed(()=>{const p=Gt(a.viewModel.headerTree).filter(b=>!!b.field).map(b=>[b.field,b]);return new Map(p)}),i=e.computed(()=>Kt(a.viewModel.headerTree)),h=e.computed(()=>i.value.map(p=>c(p))),r=e.computed(()=>{const p=Object.keys(n).filter(k=>!k.startsWith("on")).reduce((k,d)=>({...k,[d]:n[d]}),{});return{...{border:!0,stripe:!0,showOverflow:!0,height:a.height,loading:a.loading,columnConfig:{resizable:!0},rowConfig:{isHover:!0},pagerConfig:{enabled:!1},columns:h.value,data:a.viewModel.items},...p}});function c(p){var b;return(b=p.children)!=null&&b.length?{...p,children:p.children.map(k=>c(k))}:p.field?{...p,slots:{default:({row:k})=>{var d;return e.h("span",{class:["pivot-grid-cell",`pivot-grid-cell-${((d=p.meta)==null?void 0:d.role)??"unknown"}`]},m(p,k[p.field]))}}}:p}function m(p,b){var C;if(b==null||b==="")return a.emptyCellText;const k=p.field?o.value.get(p.field):void 0,d=y(p,k),V=(C=d==null?void 0:d.format)==null?void 0:C.toLowerCase();return typeof b=="number"?V==="money"||V==="number"?b.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2}):b.toLocaleString("zh-CN"):String(b)}function y(p,b){var d;const k=((d=p.meta)==null?void 0:d.metricField)??(b==null?void 0:b.metricField);return k?l.value.get(k):void 0}return(p,b)=>{const k=e.resolveComponent("vxe-grid");return e.openBlock(),e.createElementBlock("div",Yo,[e.createVNode(k,e.normalizeProps(e.guardReactiveProps(r.value)),{empty:e.withCtx(()=>[e.renderSlot(p.$slots,"empty",{},()=>[e.createElementVNode("div",Go,e.toDisplayString(t.emptyText),1)],!0)]),_:3},16)])}}}),[["__scopeId","data-v-32be6c19"]]),Ko={class:"pivot-viewer","data-view-mode":"pivotTable"},Xo={class:"pivot-viewer-header"},Jo={key:0,class:"pivot-viewer-state pivot-viewer-error"},Zo={key:1,class:"pivot-viewer-state pivot-viewer-unsupported"},el={key:2,class:"pivot-viewer-main"},tl={class:"pivot-viewer-empty"},Zt=re(e.defineComponent({__name:"PivotViewer",props:{viewModel:{},loading:{type:Boolean,default:!1},error:{default:null},height:{default:"100%"},emptyText:{default:"暂无透视数据"},emptyCellText:{default:"-"},showAxisPager:{type:Boolean,default:!0},showEvidence:{type:Boolean,default:!0}},setup(t){const a=t,n=e.computed(()=>a.viewModel.shape==="grid"),l=e.computed(()=>`暂不支持 ${a.viewModel.shape} 透视视图`);return(o,i)=>{var h,r;return e.openBlock(),e.createElementBlock("section",Ko,[e.createElementVNode("header",Xo,[i[0]||(i[0]=e.createElementVNode("div",{class:"pivot-viewer-title"},"透视表",-1)),t.showAxisPager?(e.openBlock(),e.createBlock(qt,{key:0,"row-axes":t.viewModel.rowAxes,"column-axes":t.viewModel.columnAxes,"row-pages":(h=t.viewModel.axisPages)==null?void 0:h.rows,"column-pages":(r=t.viewModel.axisPages)==null?void 0:r.columns},null,8,["row-axes","column-axes","row-pages","column-pages"])):e.createCommentVNode("",!0)]),t.error?(e.openBlock(),e.createElementBlock("div",Jo,e.toDisplayString(t.error),1)):n.value?(e.openBlock(),e.createElementBlock("div",el,[e.createVNode(Jt,{"view-model":t.viewModel,loading:t.loading,height:t.height,"empty-text":t.emptyText,"empty-cell-text":t.emptyCellText},{empty:e.withCtx(()=>[e.renderSlot(o.$slots,"empty",{},()=>[e.createElementVNode("div",tl,e.toDisplayString(t.emptyText),1)],!0)]),_:3},8,["view-model","loading","height","empty-text","empty-cell-text"])])):(e.openBlock(),e.createElementBlock("div",Zo,e.toDisplayString(l.value),1)),t.showEvidence&&!t.error&&n.value?(e.openBlock(),e.createBlock(jt,{key:3,"row-axes":t.viewModel.rowAxes,"column-axes":t.viewModel.columnAxes,evidence:t.viewModel.evidence},null,8,["row-axes","column-axes","evidence"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-8f9e39f7"]]),nl="__";function en(t){ll(t);const a=new Map(t.rowMembers.map(h=>[h.key,h])),n=new Map(t.columnMembers.map(h=>[h.key,h])),l=new Set(t.metrics.map(h=>h.field)),o=new Map(t.rowMembers.map(h=>[h.key,{...h.values}])),i=[...al(t),...ol(t)];for(const h of t.cells){rl(h,a,n,l);const r=o.get(h.rowKey);r&&(r[bt(h.columnKey,h.metricField)]=h.value)}return{viewMode:t.viewMode,shape:t.shape,rowAxes:t.rowAxes,columnAxes:t.columnAxes,metrics:t.metrics,headerTree:i,items:t.rowMembers.map(h=>o.get(h.key)??{...h.values}),axisPages:t.axisPages,evidence:t.evidence}}function bt(t,a){return[tn(t),tn(a)].join(nl)}function al(t){return t.rowAxes.map(a=>({field:a.field,title:a.title??a.field,role:"rowAxis"}))}function ol(t){const a=new Set;return t.columnMembers.map(n=>({key:n.key,title:il(n),role:"columnAxisMember",axisValue:n.axisValue,children:t.metrics.map(l=>{const o=bt(n.key,l.field);if(a.has(o))throw new Error(`Duplicate pivot cell field "${o}"`);return a.add(o),{field:o,title:l.title??l.field,role:"metric",metricField:l.field}})}))}function ll(t){if(t.viewMode!=="pivotTable")throw new Error(`Unsupported pivot viewMode "${t.viewMode}"`);if(t.shape!=="grid")throw new Error(`Unsupported pivot shape "${t.shape}"`)}function rl(t,a,n,l){if(!a.has(t.rowKey))throw new Error(`Pivot cell references unknown row member "${t.rowKey}"`);if(!n.has(t.columnKey))throw new Error(`Pivot cell references unknown column member "${t.columnKey}"`);if(!l.has(t.metricField))throw new Error(`Pivot cell references unknown metric "${t.metricField}"`)}function il(t){return t.title?t.title:t.axisValue!==void 0&&t.axisValue!==null?String(t.axisValue):t.key}function tn(t){return t.trim().replace(/[^\w]+/g,"_").replace(/^_+|_+$/g,"")||"empty"}const sl={key:1,class:"pivot-raw-viewer-error","data-view-mode":"pivotTable"},cl=re(e.defineComponent({__name:"PivotRawViewer",props:{rawPayload:{},loading:{type:Boolean,default:!1},error:{default:null},height:{default:"100%"},emptyText:{default:"暂无透视数据"},emptyCellText:{default:"-"},showAxisPager:{type:Boolean,default:!0},showEvidence:{type:Boolean,default:!0}},setup(t){const a=t,n=e.computed(()=>{try{return{viewModel:en(a.rawPayload),error:null}}catch(o){return{viewModel:null,error:o instanceof Error?o.message:"透视数据转换失败"}}}),l=e.computed(()=>a.error??n.value.error);return(o,i)=>n.value.viewModel?(e.openBlock(),e.createBlock(Zt,{key:0,"view-model":n.value.viewModel,loading:t.loading,error:l.value,height:t.height,"empty-text":t.emptyText,"empty-cell-text":t.emptyCellText,"show-axis-pager":t.showAxisPager,"show-evidence":t.showEvidence},{empty:e.withCtx(()=>[e.renderSlot(o.$slots,"empty",{},void 0,!0)]),_:3},8,["view-model","loading","error","height","empty-text","empty-cell-text","show-axis-pager","show-evidence"])):(e.openBlock(),e.createElementBlock("section",sl,e.toDisplayString(l.value),1))}}),[["__scopeId","data-v-d32e5d1c"]]),We=Ze.create({baseURL:"/data-viewer/api/saved-query",timeout:3e4,headers:{"Content-Type":"application/json"}});async function nn(t){var n;const a=await We.post("",t);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"保存查询失败");return a.data.data}async function an(t,a){var o;const n={};a&&(n.businessId=a);const l=await We.get(`/list/${encodeURIComponent(t)}`,{params:n});if(!l.data||l.data.code!==200)throw new Error(((o=l.data)==null?void 0:o.msg)||"获取查询列表失败");return l.data.data}async function dl(t){var n;const a=await We.get(`/${t}`);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"获取查询详情失败");return a.data.data}async function ul(t,a){var l;const n=await We.put(`/${t}`,a);if(!n.data||n.data.code!==200)throw new Error(((l=n.data)==null?void 0:l.msg)||"更新查询失败");return n.data.data}async function on(t){var n;const a=await We.delete(`/${t}`);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"删除查询失败")}async function ln(t){var n;const a=await We.post(`/${t}/apply`);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"应用查询失败");return a.data.data}We.interceptors.response.use(t=>t,t=>{var a,n;return((a=t.response)==null?void 0:a.status)===503?Promise.reject(new Error("保存查询功能未启用,请配置 SecurityIdentityResolver")):((n=t.response)==null?void 0:n.status)===404?Promise.reject(new Error("查询不存在")):Promise.reject(t)});const ml={class:"option-manager"},rn=re(e.defineComponent({__name:"OptionManagerDialog",props:{modelValue:{type:Boolean},condition:{}},emits:["update:modelValue","save"],setup(t,{emit:a}){const n=t,l=a,o=e.computed({get:()=>n.modelValue,set:m=>l("update:modelValue",m)}),i=e.ref([]);e.watch(()=>n.condition,m=>{m!=null&&m.options?i.value=JSON.parse(JSON.stringify(m.options)):i.value=[]},{immediate:!0});function h(){i.value.push({label:"",value:""})}function r(m){i.value.splice(m,1)}function c(){l("save",i.value.filter(m=>m.label&&m.value)),o.value=!1}return(m,y)=>{const p=e.resolveComponent("el-button"),b=e.resolveComponent("el-input"),k=e.resolveComponent("el-table-column"),d=e.resolveComponent("el-table"),V=e.resolveComponent("el-dialog");return e.openBlock(),e.createBlock(V,{modelValue:o.value,"onUpdate:modelValue":y[1]||(y[1]=C=>o.value=C),title:"配置选项",width:"500px"},{footer:e.withCtx(()=>[e.createVNode(p,{onClick:y[0]||(y[0]=C=>o.value=!1)},{default:e.withCtx(()=>[...y[3]||(y[3]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(p,{type:"primary",onClick:c},{default:e.withCtx(()=>[...y[4]||(y[4]=[e.createTextVNode("确定",-1)])]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",ml,[e.createVNode(p,{icon:e.unref(It),onClick:h,class:"mb-3"},{default:e.withCtx(()=>[...y[2]||(y[2]=[e.createTextVNode(" 添加选项 ",-1)])]),_:1},8,["icon"]),e.createVNode(d,{data:i.value,border:""},{default:e.withCtx(()=>[e.createVNode(k,{label:"显示文本",width:"200"},{default:e.withCtx(({row:C})=>[e.createVNode(b,{modelValue:C.label,"onUpdate:modelValue":R=>C.label=R,placeholder:"显示文本"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e.createVNode(k,{label:"值"},{default:e.withCtx(({row:C})=>[e.createVNode(b,{modelValue:C.value,"onUpdate:modelValue":R=>C.value=R,placeholder:"实际值"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e.createVNode(k,{label:"操作",width:"80",align:"center"},{default:e.withCtx(({$index:C})=>[e.createVNode(p,{icon:e.unref(at),link:"",type:"danger",onClick:R=>r(C)},null,8,["icon","onClick"])]),_:1})]),_:1},8,["data"])])]),_:1},8,["modelValue"])}}}),[["__scopeId","data-v-70240ac8"]]),fl={class:"step-content"},pl={class:"step-panel"},hl={class:"column-selector"},gl={class:"selection-actions mb-3"},yl={class:"column-info"},wl={class:"column-title"},bl={class:"step-panel"},Vl={class:"condition-config"},kl={key:0,class:"empty-hint"},Cl={class:"condition-header"},_l={class:"condition-index"},Nl={key:1,class:"param-options"},xl={class:"step-panel"},El={class:"visibility-hint"},Sl={class:"query-preview"},Bl={key:0,class:"preview-section mt-3"},Ml={key:1,class:"preview-section mt-3"},Dl={class:"dialog-footer"},sn=re(e.defineComponent({__name:"SaveQueryDialog",props:{modelValue:{type:Boolean},model:{},businessId:{},availableColumns:{},currentColumns:{default:()=>[]},currentSlice:{default:()=>[]},orderBy:{default:()=>[]}},emits:["update:modelValue","saved"],setup(t,{emit:a}){const n=t,l=a,o=e.computed({get:()=>n.modelValue,set:P=>l("update:modelValue",P)}),i=e.ref(0),h=e.ref(!1),r=e.ref(""),c=e.ref([]),m=e.ref(!1),y=e.computed(()=>{if(!r.value)return n.availableColumns;const P=r.value.toLowerCase();return n.availableColumns.filter(S=>{var z;return S.name.toLowerCase().includes(P)||((z=S.title)==null?void 0:z.toLowerCase().includes(P))})}),p=e.computed(()=>{const P=c.value.length;return P>0&&P<n.availableColumns.length});function b(P){P?c.value=n.availableColumns.map(S=>S.name):c.value=[]}function k(){const P=new Set(n.availableColumns.map(z=>z.name)),S=new Set(c.value);c.value=Array.from(P).filter(z=>!S.has(z))}e.watch(c,P=>{m.value=P.length===n.availableColumns.length});const d=e.ref([]),V=e.ref(!1),C=e.ref(null);function R(){d.value.push({field:"",op:"=",value:void 0,paramType:"fixed",options:[]})}function H(P){d.value.splice(P,1)}function N(P){P.value=void 0,P.defaultValue=void 0,P.options=[]}function D(P){C.value=P,V.value=!0}function K(P){C.value&&(C.value.options=P)}const M=e.ref(),x=e.ref({title:"",description:"",visibility:"PRIVATE"}),O={title:[{required:!0,message:"请输入查询名称",trigger:"blur"},{min:2,max:50,message:"长度在 2 到 50 个字符",trigger:"blur"}]};function I(P){const S=n.availableColumns.find(z=>z.name===P);return(S==null?void 0:S.title)||P}const W=e.computed(()=>i.value===0?c.value.length>0:i.value===1?d.value.every(P=>P.field&&P.op&&(P.paramType==="fixed"?!0:P.options&&P.options.length>0)):!0);function Z(){if(!W.value){X.ElMessage.warning("请完成当前步骤的必填项");return}i.value<2&&i.value++}function ie(){i.value>0&&i.value--}async function ue(){if(M.value){await M.value.validate(),h.value=!0;try{const P=d.value.map(ne=>({field:ne.field,op:ne.op,value:ne.defaultValue})),S={businessId:n.businessId,model:n.model,title:x.value.title,description:x.value.description,columns:c.value,slice:P,orderBy:n.orderBy,visibility:x.value.visibility},z=await nn(S);X.ElMessage.success("查询保存成功"),l("saved",z),o.value=!1,de()}catch(P){X.ElMessage.error(P.message||"保存失败")}finally{h.value=!1}}}function de(){var P;i.value=0,c.value=[],d.value=[],x.value={title:"",description:"",visibility:"PRIVATE"},(P=M.value)==null||P.clearValidate()}return e.watch(o,P=>{P&&n.currentColumns.length>0&&(c.value=[...n.currentColumns]),P&&n.currentSlice.length>0&&(d.value=n.currentSlice.map(S=>({...S,paramType:"fixed",defaultValue:S.value,options:[]})))}),(P,S)=>{const z=e.resolveComponent("el-step"),ne=e.resolveComponent("el-steps"),se=e.resolveComponent("el-input"),we=e.resolveComponent("el-checkbox"),te=e.resolveComponent("el-button"),me=e.resolveComponent("el-tag"),Me=e.resolveComponent("el-checkbox-group"),be=e.resolveComponent("el-scrollbar"),w=e.resolveComponent("el-empty"),f=e.resolveComponent("el-option"),v=e.resolveComponent("el-select"),$=e.resolveComponent("el-form-item"),q=e.resolveComponent("el-radio"),Q=e.resolveComponent("el-radio-group"),oe=e.resolveComponent("el-form"),J=e.resolveComponent("el-card"),fe=e.resolveComponent("el-icon"),le=e.resolveComponent("el-alert"),De=e.resolveComponent("el-divider"),pe=e.resolveComponent("el-descriptions-item"),Ve=e.resolveComponent("el-descriptions"),ke=e.resolveComponent("el-dialog");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(ke,{modelValue:o.value,"onUpdate:modelValue":S[7]||(S[7]=F=>o.value=F),title:"保存查询",width:"800px","close-on-click-modal":!1,onClose:de},{footer:e.withCtx(()=>[e.createElementVNode("div",Dl,[e.createVNode(te,{onClick:S[6]||(S[6]=F=>o.value=!1)},{default:e.withCtx(()=>[...S[26]||(S[26]=[e.createTextVNode("取消",-1)])]),_:1}),i.value>0?(e.openBlock(),e.createBlock(te,{key:0,onClick:ie},{default:e.withCtx(()=>[...S[27]||(S[27]=[e.createTextVNode(" 上一步 ",-1)])]),_:1})):e.createCommentVNode("",!0),i.value<2?(e.openBlock(),e.createBlock(te,{key:1,type:"primary",onClick:Z,disabled:!W.value},{default:e.withCtx(()=>[...S[28]||(S[28]=[e.createTextVNode(" 下一步 ",-1)])]),_:1},8,["disabled"])):e.createCommentVNode("",!0),i.value===2?(e.openBlock(),e.createBlock(te,{key:2,type:"primary",onClick:ue,loading:h.value},{default:e.withCtx(()=>[...S[29]||(S[29]=[e.createTextVNode(" 保存查询 ",-1)])]),_:1},8,["loading"])):e.createCommentVNode("",!0)])]),default:e.withCtx(()=>[e.createVNode(ne,{active:i.value,"finish-status":"success","align-center":"",class:"mb-6"},{default:e.withCtx(()=>[e.createVNode(z,{title:"选择列",icon:"Grid"}),e.createVNode(z,{title:"设置查询条件",icon:"Filter"}),e.createVNode(z,{title:"命名和确认",icon:"CircleCheck"})]),_:1},8,["active"]),e.createElementVNode("div",fl,[e.withDirectives(e.createElementVNode("div",pl,[S[10]||(S[10]=e.createElementVNode("div",{class:"step-title"},[e.createElementVNode("h3",null,"选择要保存的字段"),e.createElementVNode("p",{class:"step-desc"},"从所有可用字段中选择需要保存在查询中的列")],-1)),e.createElementVNode("div",hl,[e.createVNode(se,{modelValue:r.value,"onUpdate:modelValue":S[0]||(S[0]=F=>r.value=F),placeholder:"搜索字段...","prefix-icon":e.unref(gt),clearable:"",class:"mb-3"},null,8,["modelValue","prefix-icon"]),e.createElementVNode("div",gl,[e.createVNode(we,{modelValue:m.value,"onUpdate:modelValue":S[1]||(S[1]=F=>m.value=F),indeterminate:p.value,onChange:b},{default:e.withCtx(()=>[e.createTextVNode(" 全选 ("+e.toDisplayString(c.value.length)+"/"+e.toDisplayString(t.availableColumns.length)+") ",1)]),_:1},8,["modelValue","indeterminate"]),e.createVNode(te,{link:"",onClick:k},{default:e.withCtx(()=>[...S[9]||(S[9]=[e.createTextVNode("反选",-1)])]),_:1})]),e.createVNode(be,{height:"350px"},{default:e.withCtx(()=>[e.createVNode(Me,{modelValue:c.value,"onUpdate:modelValue":S[2]||(S[2]=F=>c.value=F),class:"column-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,F=>(e.openBlock(),e.createElementBlock("div",{key:F.name,class:"column-item"},[e.createVNode(we,{label:F.name},{default:e.withCtx(()=>[e.createElementVNode("div",yl,[e.createElementVNode("span",wl,e.toDisplayString(F.title||F.name),1),F.type?(e.openBlock(),e.createBlock(me,{key:0,size:"small",type:"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(F.type),1)]),_:2},1024)):e.createCommentVNode("",!0)])]),_:2},1032,["label"])]))),128))]),_:1},8,["modelValue"])]),_:1})])],512),[[e.vShow,i.value===0]]),e.withDirectives(e.createElementVNode("div",bl,[S[16]||(S[16]=e.createElementVNode("div",{class:"step-title"},[e.createElementVNode("h3",null,"配置查询条件"),e.createElementVNode("p",{class:"step-desc"},"设置筛选条件的参数(单选/多选/默认值)")],-1)),e.createElementVNode("div",Vl,[e.createVNode(te,{icon:e.unref(It),onClick:R,class:"mb-3"},{default:e.withCtx(()=>[...S[11]||(S[11]=[e.createTextVNode(" 添加筛选条件 ",-1)])]),_:1},8,["icon"]),d.value.length===0?(e.openBlock(),e.createElementBlock("div",kl,[e.createVNode(w,{description:"暂无筛选条件,点击上方按钮添加"})])):(e.openBlock(),e.createBlock(be,{key:1,height:"400px"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(F,Ce)=>(e.openBlock(),e.createBlock(J,{key:Ce,class:"condition-card mb-3",shadow:"hover"},{default:e.withCtx(()=>[e.createElementVNode("div",Cl,[e.createElementVNode("span",_l,"#"+e.toDisplayString(Ce+1),1),e.createVNode(te,{icon:e.unref(at),text:"",type:"danger",onClick:G=>H(Ce)},null,8,["icon","onClick"])]),e.createVNode(oe,{"label-width":"100px",class:"condition-form"},{default:e.withCtx(()=>[e.createVNode($,{label:"筛选字段"},{default:e.withCtx(()=>[e.createVNode(v,{modelValue:F.field,"onUpdate:modelValue":G=>F.field=G,placeholder:"选择字段",filterable:"",onChange:G=>N(F)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.availableColumns,G=>(e.openBlock(),e.createBlock(f,{key:G.name,label:G.title||G.name,value:G.name},null,8,["label","value"]))),128))]),_:1},8,["modelValue","onUpdate:modelValue","onChange"])]),_:2},1024),e.createVNode($,{label:"操作符"},{default:e.withCtx(()=>[e.createVNode(v,{modelValue:F.op,"onUpdate:modelValue":G=>F.op=G,placeholder:"选择操作符"},{default:e.withCtx(()=>[e.createVNode(f,{label:"等于 (=)",value:"="}),e.createVNode(f,{label:"不等于 (!=)",value:"!="}),e.createVNode(f,{label:"大于 (>)",value:">"}),e.createVNode(f,{label:"大于等于 (>=)",value:">="}),e.createVNode(f,{label:"小于 (<)",value:"<"}),e.createVNode(f,{label:"小于等于 (<=)",value:"<="}),e.createVNode(f,{label:"包含 (IN)",value:"in"}),e.createVNode(f,{label:"不包含 (NOT IN)",value:"not in"}),e.createVNode(f,{label:"范围 (BETWEEN)",value:"between"}),e.createVNode(f,{label:"模糊匹配 (LIKE)",value:"like"}),e.createVNode(f,{label:"为空 (IS NULL)",value:"is null"}),e.createVNode(f,{label:"不为空 (IS NOT NULL)",value:"is not null"})]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e.createVNode($,{label:"参数类型"},{default:e.withCtx(()=>[e.createVNode(Q,{modelValue:F.paramType,"onUpdate:modelValue":G=>F.paramType=G},{default:e.withCtx(()=>[e.createVNode(q,{label:"fixed"},{default:e.withCtx(()=>[...S[12]||(S[12]=[e.createTextVNode("固定值",-1)])]),_:1}),e.createVNode(q,{label:"single"},{default:e.withCtx(()=>[...S[13]||(S[13]=[e.createTextVNode("单选",-1)])]),_:1}),e.createVNode(q,{label:"multiple"},{default:e.withCtx(()=>[...S[14]||(S[14]=[e.createTextVNode("多选",-1)])]),_:1})]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024),["is null","is not null"].includes(F.op)?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock($,{key:0,label:"默认值"},{default:e.withCtx(()=>[F.paramType==="fixed"?(e.openBlock(),e.createBlock(se,{key:0,modelValue:F.defaultValue,"onUpdate:modelValue":G=>F.defaultValue=G,placeholder:"输入默认值"},null,8,["modelValue","onUpdate:modelValue"])):(e.openBlock(),e.createElementBlock("div",Nl,[F.paramType==="single"?(e.openBlock(),e.createBlock(v,{key:0,modelValue:F.defaultValue,"onUpdate:modelValue":G=>F.defaultValue=G,placeholder:"选择默认值",clearable:""},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(F.options,G=>(e.openBlock(),e.createBlock(f,{key:G.value,label:G.label,value:G.value},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])):F.paramType==="multiple"?(e.openBlock(),e.createBlock(v,{key:1,modelValue:F.defaultValue,"onUpdate:modelValue":G=>F.defaultValue=G,placeholder:"选择默认值",multiple:"",clearable:""},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(F.options,G=>(e.openBlock(),e.createBlock(f,{key:G.value,label:G.label,value:G.value},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0),e.createVNode(te,{icon:e.unref(Ha),onClick:G=>D(F),class:"ml-2"},{default:e.withCtx(()=>[...S[15]||(S[15]=[e.createTextVNode(" 配置选项 ",-1)])]),_:1},8,["icon","onClick"])]))]),_:2},1024)),e.createVNode($,{label:"显示名称"},{default:e.withCtx(()=>[e.createVNode(se,{modelValue:F.label,"onUpdate:modelValue":G=>F.label=G,placeholder:"可选,在查询界面显示的名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1}))])],512),[[e.vShow,i.value===1]]),e.withDirectives(e.createElementVNode("div",xl,[S[25]||(S[25]=e.createElementVNode("div",{class:"step-title"},[e.createElementVNode("h3",null,"填写查询信息"),e.createElementVNode("p",{class:"step-desc"},"为查询命名并选择可见范围")],-1)),e.createVNode(oe,{ref_key:"formRef",ref:M,model:x.value,rules:O,"label-width":"100px",class:"naming-form"},{default:e.withCtx(()=>[e.createVNode($,{label:"查询名称",prop:"title"},{default:e.withCtx(()=>[e.createVNode(se,{modelValue:x.value.title,"onUpdate:modelValue":S[3]||(S[3]=F=>x.value.title=F),placeholder:"请输入查询名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),e.createVNode($,{label:"描述",prop:"description"},{default:e.withCtx(()=>[e.createVNode(se,{modelValue:x.value.description,"onUpdate:modelValue":S[4]||(S[4]=F=>x.value.description=F),type:"textarea",rows:3,placeholder:"可选,描述查询用途",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),e.createVNode($,{label:"可见性",prop:"visibility"},{default:e.withCtx(()=>[e.createVNode(Q,{modelValue:x.value.visibility,"onUpdate:modelValue":S[5]||(S[5]=F=>x.value.visibility=F)},{default:e.withCtx(()=>[e.createVNode(q,{label:"PRIVATE"},{default:e.withCtx(()=>[e.createVNode(fe,null,{default:e.withCtx(()=>[e.createVNode(e.unref(zt))]),_:1}),S[17]||(S[17]=e.createTextVNode(" 仅自己可见 ",-1))]),_:1}),e.createVNode(q,{label:"DEPARTMENT"},{default:e.withCtx(()=>[e.createVNode(fe,null,{default:e.withCtx(()=>[e.createVNode(e.unref(ht))]),_:1}),S[18]||(S[18]=e.createTextVNode(" 部门内共享 ",-1))]),_:1}),e.createVNode(q,{label:"TENANT"},{default:e.withCtx(()=>[e.createVNode(fe,null,{default:e.withCtx(()=>[e.createVNode(e.unref(ft))]),_:1}),S[19]||(S[19]=e.createTextVNode(" 全公司共享 ",-1))]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",El,[x.value.visibility==="PRIVATE"?(e.openBlock(),e.createBlock(le,{key:0,type:"info",closable:!1,"show-icon":""},{default:e.withCtx(()=>[...S[20]||(S[20]=[e.createTextVNode(" 只有您自己可以查看和使用此查询 ",-1)])]),_:1})):x.value.visibility==="DEPARTMENT"?(e.openBlock(),e.createBlock(le,{key:1,type:"warning",closable:!1,"show-icon":""},{default:e.withCtx(()=>[...S[21]||(S[21]=[e.createTextVNode(" 您所在部门的所有成员都可以查看和使用此查询 ",-1)])]),_:1})):(e.openBlock(),e.createBlock(le,{key:2,type:"success",closable:!1,"show-icon":""},{default:e.withCtx(()=>[...S[22]||(S[22]=[e.createTextVNode(" 公司内所有成员都可以查看和使用此查询 ",-1)])]),_:1}))])]),_:1}),e.createVNode(De),e.createVNode($,{label:"查询预览"},{default:e.withCtx(()=>[e.createElementVNode("div",Sl,[e.createVNode(Ve,{column:2,border:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(pe,{label:"包含字段"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.value.length)+" 个 ",1)]),_:1}),e.createVNode(pe,{label:"筛选条件"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.value.length)+" 个 ",1)]),_:1}),e.createVNode(pe,{label:"排序规则",span:2},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.orderBy.length)+" 个 ",1)]),_:1})]),_:1}),c.value.length>0?(e.openBlock(),e.createElementBlock("div",Bl,[S[23]||(S[23]=e.createElementVNode("h5",null,"选中的字段:",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,F=>(e.openBlock(),e.createBlock(me,{key:F,size:"small",class:"mr-1 mb-1"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(I(F)),1)]),_:2},1024))),128))])):e.createCommentVNode("",!0),d.value.length>0?(e.openBlock(),e.createElementBlock("div",Ml,[S[24]||(S[24]=e.createElementVNode("h5",null,"筛选条件:",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(F,Ce)=>(e.openBlock(),e.createElementBlock("div",{key:Ce,class:"condition-preview"},[e.createVNode(me,{type:"warning",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(I(F.field))+" "+e.toDisplayString(F.op)+" ",1),F.defaultValue?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(F.defaultValue),1)],64)):e.createCommentVNode("",!0),e.createTextVNode(" ("+e.toDisplayString(F.paramType==="fixed"?"固定":F.paramType==="single"?"单选":"多选")+") ",1)]),_:2},1024)]))),128))])):e.createCommentVNode("",!0)])]),_:1})]),_:1},8,["model"])],512),[[e.vShow,i.value===2]])])]),_:1},8,["modelValue"]),e.createVNode(rn,{modelValue:V.value,"onUpdate:modelValue":S[8]||(S[8]=F=>V.value=F),condition:C.value,onSave:K},null,8,["modelValue","condition"])],64)}}}),[["__scopeId","data-v-3bc95ece"]]);function ce(t){const a=Object.prototype.toString.call(t);return t instanceof Date||typeof t=="object"&&a==="[object Date]"?new t.constructor(+t):typeof t=="number"||a==="[object Number]"||typeof t=="string"||a==="[object String]"?new Date(t):new Date(NaN)}function vl(t,a){return t instanceof Date?new t.constructor(a):new Date(a)}const it=43200,cn=1440;let Tl={};function dn(){return Tl}function un(t,a){var r,c,m,y;const n=dn(),l=(a==null?void 0:a.weekStartsOn)??((c=(r=a==null?void 0:a.locale)==null?void 0:r.options)==null?void 0:c.weekStartsOn)??n.weekStartsOn??((y=(m=n.locale)==null?void 0:m.options)==null?void 0:y.weekStartsOn)??0,o=ce(t),i=o.getDay(),h=(i<l?7:0)+i-l;return o.setDate(o.getDate()-h),o.setHours(0,0,0,0),o}function mn(t){const a=ce(t),n=new Date(Date.UTC(a.getFullYear(),a.getMonth(),a.getDate(),a.getHours(),a.getMinutes(),a.getSeconds(),a.getMilliseconds()));return n.setUTCFullYear(a.getFullYear()),+t-+n}function st(t,a){const n=ce(t),l=ce(a),o=n.getTime()-l.getTime();return o<0?-1:o>0?1:o}function $l(t){return vl(t,Date.now())}function Pl(t,a){const n=ce(t),l=ce(a),o=n.getFullYear()-l.getFullYear(),i=n.getMonth()-l.getMonth();return o*12+i}function Fl(t){return a=>{const l=(t?Math[t]:Math.trunc)(a);return l===0?0:l}}function Ll(t,a){return+ce(t)-+ce(a)}function Al(t){const a=ce(t);return a.setHours(23,59,59,999),a}function Il(t){const a=ce(t),n=a.getMonth();return a.setFullYear(a.getFullYear(),n+1,0),a.setHours(23,59,59,999),a}function zl(t){const a=ce(t);return+Al(a)==+Il(a)}function Rl(t,a){const n=ce(t),l=ce(a),o=st(n,l),i=Math.abs(Pl(n,l));let h;if(i<1)h=0;else{n.getMonth()===1&&n.getDate()>27&&n.setDate(30),n.setMonth(n.getMonth()-o*i);let r=st(n,l)===-o;zl(ce(t))&&i===1&&st(t,l)===1&&(r=!1),h=o*(i-Number(r))}return h===0?0:h}function Ol(t,a,n){const l=Ll(t,a)/1e3;return Fl(n==null?void 0:n.roundingMethod)(l)}const Wl={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Ql=(t,a,n)=>{let l;const o=Wl[t];return typeof o=="string"?l=o:a===1?l=o.one:l=o.other.replace("{{count}}",a.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+l:l+" ago":l};function Ue(t){return(a={})=>{const n=a.width?String(a.width):t.defaultWidth;return t.formats[n]||t.formats[t.defaultWidth]}}const Ul={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Hl={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},ql={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},jl={date:Ue({formats:Ul,defaultWidth:"full"}),time:Ue({formats:Hl,defaultWidth:"full"}),dateTime:Ue({formats:ql,defaultWidth:"full"})},Yl={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Gl=(t,a,n,l)=>Yl[t];function Se(t){return(a,n)=>{const l=n!=null&&n.context?String(n.context):"standalone";let o;if(l==="formatting"&&t.formattingValues){const h=t.defaultFormattingWidth||t.defaultWidth,r=n!=null&&n.width?String(n.width):h;o=t.formattingValues[r]||t.formattingValues[h]}else{const h=t.defaultWidth,r=n!=null&&n.width?String(n.width):t.defaultWidth;o=t.values[r]||t.values[h]}const i=t.argumentCallback?t.argumentCallback(a):a;return o[i]}}const Kl={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Xl={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Jl={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Zl={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},er={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},tr={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},nr={ordinalNumber:(t,a)=>{const n=Number(t),l=n%100;if(l>20||l<10)switch(l%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:Se({values:Kl,defaultWidth:"wide"}),quarter:Se({values:Xl,defaultWidth:"wide",argumentCallback:t=>t-1}),month:Se({values:Jl,defaultWidth:"wide"}),day:Se({values:Zl,defaultWidth:"wide"}),dayPeriod:Se({values:er,defaultWidth:"wide",formattingValues:tr,defaultFormattingWidth:"wide"})};function Be(t){return(a,n={})=>{const l=n.width,o=l&&t.matchPatterns[l]||t.matchPatterns[t.defaultMatchWidth],i=a.match(o);if(!i)return null;const h=i[0],r=l&&t.parsePatterns[l]||t.parsePatterns[t.defaultParseWidth],c=Array.isArray(r)?or(r,p=>p.test(h)):ar(r,p=>p.test(h));let m;m=t.valueCallback?t.valueCallback(c):c,m=n.valueCallback?n.valueCallback(m):m;const y=a.slice(h.length);return{value:m,rest:y}}}function ar(t,a){for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&a(t[n]))return n}function or(t,a){for(let n=0;n<t.length;n++)if(a(t[n]))return n}function fn(t){return(a,n={})=>{const l=a.match(t.matchPattern);if(!l)return null;const o=l[0],i=a.match(t.parsePattern);if(!i)return null;let h=t.valueCallback?t.valueCallback(i[0]):i[0];h=n.valueCallback?n.valueCallback(h):h;const r=a.slice(o.length);return{value:h,rest:r}}}const lr=/^(\d+)(th|st|nd|rd)?/i,rr=/\d+/i,ir={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},sr={any:[/^b/i,/^(a|c)/i]},cr={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},dr={any:[/1/i,/2/i,/3/i,/4/i]},ur={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},mr={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},fr={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},pr={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},hr={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},gr={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},yr={ordinalNumber:fn({matchPattern:lr,parsePattern:rr,valueCallback:t=>parseInt(t,10)}),era:Be({matchPatterns:ir,defaultMatchWidth:"wide",parsePatterns:sr,defaultParseWidth:"any"}),quarter:Be({matchPatterns:cr,defaultMatchWidth:"wide",parsePatterns:dr,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Be({matchPatterns:ur,defaultMatchWidth:"wide",parsePatterns:mr,defaultParseWidth:"any"}),day:Be({matchPatterns:fr,defaultMatchWidth:"wide",parsePatterns:pr,defaultParseWidth:"any"}),dayPeriod:Be({matchPatterns:hr,defaultMatchWidth:"any",parsePatterns:gr,defaultParseWidth:"any"})},wr={code:"en-US",formatDistance:Ql,formatLong:jl,formatRelative:Gl,localize:nr,match:yr,options:{weekStartsOn:0,firstWeekContainsDate:1}};function br(t,a,n){const l=dn(),o=(n==null?void 0:n.locale)??l.locale??wr,i=2520,h=st(t,a);if(isNaN(h))throw new RangeError("Invalid time value");const r=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:h});let c,m;h>0?(c=ce(a),m=ce(t)):(c=ce(t),m=ce(a));const y=Ol(m,c),p=(mn(m)-mn(c))/1e3,b=Math.round((y-p)/60);let k;if(b<2)return n!=null&&n.includeSeconds?y<5?o.formatDistance("lessThanXSeconds",5,r):y<10?o.formatDistance("lessThanXSeconds",10,r):y<20?o.formatDistance("lessThanXSeconds",20,r):y<40?o.formatDistance("halfAMinute",0,r):y<60?o.formatDistance("lessThanXMinutes",1,r):o.formatDistance("xMinutes",1,r):b===0?o.formatDistance("lessThanXMinutes",1,r):o.formatDistance("xMinutes",b,r);if(b<45)return o.formatDistance("xMinutes",b,r);if(b<90)return o.formatDistance("aboutXHours",1,r);if(b<cn){const d=Math.round(b/60);return o.formatDistance("aboutXHours",d,r)}else{if(b<i)return o.formatDistance("xDays",1,r);if(b<it){const d=Math.round(b/cn);return o.formatDistance("xDays",d,r)}else if(b<it*2)return k=Math.round(b/it),o.formatDistance("aboutXMonths",k,r)}if(k=Rl(m,c),k<12){const d=Math.round(b/it);return o.formatDistance("xMonths",d,r)}else{const d=k%12,V=Math.trunc(k/12);return d<3?o.formatDistance("aboutXYears",V,r):d<9?o.formatDistance("overXYears",V,r):o.formatDistance("almostXYears",V+1,r)}}function Vr(t,a){return br(t,$l(t),a)}function kr(t,a,n){const l=un(t,n),o=un(a,n);return+l==+o}const Cr={lessThanXSeconds:{one:"不到 1 秒",other:"不到 {{count}} 秒"},xSeconds:{one:"1 秒",other:"{{count}} 秒"},halfAMinute:"半分钟",lessThanXMinutes:{one:"不到 1 分钟",other:"不到 {{count}} 分钟"},xMinutes:{one:"1 分钟",other:"{{count}} 分钟"},xHours:{one:"1 小时",other:"{{count}} 小时"},aboutXHours:{one:"大约 1 小时",other:"大约 {{count}} 小时"},xDays:{one:"1 天",other:"{{count}} 天"},aboutXWeeks:{one:"大约 1 个星期",other:"大约 {{count}} 个星期"},xWeeks:{one:"1 个星期",other:"{{count}} 个星期"},aboutXMonths:{one:"大约 1 个月",other:"大约 {{count}} 个月"},xMonths:{one:"1 个月",other:"{{count}} 个月"},aboutXYears:{one:"大约 1 年",other:"大约 {{count}} 年"},xYears:{one:"1 年",other:"{{count}} 年"},overXYears:{one:"超过 1 年",other:"超过 {{count}} 年"},almostXYears:{one:"将近 1 年",other:"将近 {{count}} 年"}},_r=(t,a,n)=>{let l;const o=Cr[t];return typeof o=="string"?l=o:a===1?l=o.one:l=o.other.replace("{{count}}",String(a)),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?l+"内":l+"前":l},Nr={full:"y'年'M'月'd'日' EEEE",long:"y'年'M'月'd'日'",medium:"yyyy-MM-dd",short:"yy-MM-dd"},xr={full:"zzzz a h:mm:ss",long:"z a h:mm:ss",medium:"a h:mm:ss",short:"a h:mm"},Er={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Sr={date:Ue({formats:Nr,defaultWidth:"full"}),time:Ue({formats:xr,defaultWidth:"full"}),dateTime:Ue({formats:Er,defaultWidth:"full"})};function pn(t,a,n){const l="eeee p";return kr(t,a,n)?l:t.getTime()>a.getTime()?"'下个'"+l:"'上个'"+l}const Br={lastWeek:pn,yesterday:"'昨天' p",today:"'今天' p",tomorrow:"'明天' p",nextWeek:pn,other:"PP p"},Mr=(t,a,n,l)=>{const o=Br[t];return typeof o=="function"?o(a,n,l):o},Dr={narrow:["前","公元"],abbreviated:["前","公元"],wide:["公元前","公元"]},vr={narrow:["1","2","3","4"],abbreviated:["第一季","第二季","第三季","第四季"],wide:["第一季度","第二季度","第三季度","第四季度"]},Tr={narrow:["一","二","三","四","五","六","七","八","九","十","十一","十二"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},$r={narrow:["日","一","二","三","四","五","六"],short:["日","一","二","三","四","五","六"],abbreviated:["周日","周一","周二","周三","周四","周五","周六"],wide:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},Pr={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},Fr={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},Lr={ordinalNumber:(t,a)=>{const n=Number(t);switch(a==null?void 0:a.unit){case"date":return n.toString()+"日";case"hour":return n.toString()+"时";case"minute":return n.toString()+"分";case"second":return n.toString()+"秒";default:return"第 "+n.toString()}},era:Se({values:Dr,defaultWidth:"wide"}),quarter:Se({values:vr,defaultWidth:"wide",argumentCallback:t=>t-1}),month:Se({values:Tr,defaultWidth:"wide"}),day:Se({values:$r,defaultWidth:"wide"}),dayPeriod:Se({values:Pr,defaultWidth:"wide",formattingValues:Fr,defaultFormattingWidth:"wide"})},Ar=/^(第\s*)?\d+(日|时|分|秒)?/i,Ir=/\d+/i,zr={narrow:/^(前)/i,abbreviated:/^(前)/i,wide:/^(公元前|公元)/i},Rr={any:[/^(前)/i,/^(公元)/i]},Or={narrow:/^[1234]/i,abbreviated:/^第[一二三四]刻/i,wide:/^第[一二三四]刻钟/i},Wr={any:[/(1|一)/i,/(2|二)/i,/(3|三)/i,/(4|四)/i]},Qr={narrow:/^(一|二|三|四|五|六|七|八|九|十[二一])/i,abbreviated:/^(一|二|三|四|五|六|七|八|九|十[二一]|\d|1[12])月/i,wide:/^(一|二|三|四|五|六|七|八|九|十[二一])月/i},Ur={narrow:[/^一/i,/^二/i,/^三/i,/^四/i,/^五/i,/^六/i,/^七/i,/^八/i,/^九/i,/^十(?!(一|二))/i,/^十一/i,/^十二/i],any:[/^一|1/i,/^二|2/i,/^三|3/i,/^四|4/i,/^五|5/i,/^六|6/i,/^七|7/i,/^八|8/i,/^九|9/i,/^十(?!(一|二))|10/i,/^十一|11/i,/^十二|12/i]},Hr={narrow:/^[一二三四五六日]/i,short:/^[一二三四五六日]/i,abbreviated:/^周[一二三四五六日]/i,wide:/^星期[一二三四五六日]/i},qr={any:[/日/i,/一/i,/二/i,/三/i,/四/i,/五/i,/六/i]},jr={any:/^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨|)/i},Yr={any:{am:/^上午?/i,pm:/^下午?/i,midnight:/^午夜/i,noon:/^[中正]午/i,morning:/^早上/i,afternoon:/^下午/i,evening:/^晚上?/i,night:/^凌晨/i}},Gr={ordinalNumber:fn({matchPattern:Ar,parsePattern:Ir,valueCallback:t=>parseInt(t,10)}),era:Be({matchPatterns:zr,defaultMatchWidth:"wide",parsePatterns:Rr,defaultParseWidth:"any"}),quarter:Be({matchPatterns:Or,defaultMatchWidth:"wide",parsePatterns:Wr,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Be({matchPatterns:Qr,defaultMatchWidth:"wide",parsePatterns:Ur,defaultParseWidth:"any"}),day:Be({matchPatterns:Hr,defaultMatchWidth:"wide",parsePatterns:qr,defaultParseWidth:"any"}),dayPeriod:Be({matchPatterns:jr,defaultMatchWidth:"any",parsePatterns:Yr,defaultParseWidth:"any"})},Kr={code:"zh-CN",formatDistance:_r,formatLong:Sr,formatRelative:Mr,localize:Lr,match:Gr,options:{weekStartsOn:1,firstWeekContainsDate:4}},Xr={class:"query-search mb-4"},Jr={class:"query-container"},Zr={class:"query-section"},ei={class:"section-header"},ti={key:0,class:"loading-container"},ni={key:1,class:"empty-hint"},ai={class:"query-header"},oi={class:"query-title"},li={key:0,class:"query-desc"},ri={class:"query-meta"},ii={class:"query-date"},si={class:"query-stats"},ci={class:"query-section"},di={class:"section-header"},ui={key:0,class:"loading-container"},mi={key:1,class:"empty-hint"},fi={class:"query-header"},pi={class:"query-title"},hi={key:0,class:"query-desc"},gi={class:"query-meta"},yi={class:"query-owner"},wi={class:"query-date"},bi={class:"query-stats"},hn=re(e.defineComponent({__name:"QueryListDialog",props:{modelValue:{type:Boolean},model:{},businessId:{},currentUserId:{}},emits:["update:modelValue","apply"],setup(t,{emit:a}){const n=t,l=a,o=e.computed({get:()=>n.modelValue,set:N=>l("update:modelValue",N)}),i=e.ref([]),h=e.ref(!1),r=e.ref(""),c=e.computed(()=>i.value.filter(N=>N.ownerId===n.currentUserId)),m=e.computed(()=>i.value.filter(N=>N.ownerId!==n.currentUserId)),y=e.computed(()=>b(c.value,r.value)),p=e.computed(()=>b(m.value,r.value));function b(N,D){if(!D.trim())return N;const K=D.toLowerCase();return N.filter(M=>{var x;return M.title.toLowerCase().includes(K)||((x=M.description)==null?void 0:x.toLowerCase().includes(K))})}async function k(){h.value=!0;try{i.value=await an(n.model,n.businessId)}catch(N){X.ElMessage.error(N.message||"加载查询列表失败")}finally{h.value=!1}}async function d(N){try{const D=await ln(N.id);X.ElMessage.success(`已应用查询: ${N.title}`),l("apply",N,D.queryId),o.value=!1}catch(D){X.ElMessage.error(D.message||"应用查询失败")}}async function V(N){try{await X.ElMessageBox.confirm(`确定要删除查询"${N.title}"吗?此操作不可恢复。`,"删除确认",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning",confirmButtonClass:"el-button--danger"}),await on(N.id),X.ElMessage.success("删除成功"),i.value=i.value.filter(D=>D.id!==N.id)}catch(D){D!=="cancel"&&X.ElMessage.error(D.message||"删除失败")}}function C(N){return{PRIVATE:"仅自己",DEPARTMENT:"部门",TENANT:"全公司"}[N]||N}function R(N){return{PRIVATE:"info",DEPARTMENT:"warning",TENANT:"success"}[N]||"info"}function H(N){return Vr(new Date(N),{addSuffix:!0,locale:Kr})}return(N,D)=>{const K=e.resolveComponent("el-input"),M=e.resolveComponent("el-icon"),x=e.resolveComponent("el-tag"),O=e.resolveComponent("el-empty"),I=e.resolveComponent("el-dropdown-item"),W=e.resolveComponent("el-dropdown-menu"),Z=e.resolveComponent("el-dropdown"),ie=e.resolveComponent("el-divider"),ue=e.resolveComponent("el-card"),de=e.resolveComponent("el-scrollbar"),P=e.resolveComponent("el-button"),S=e.resolveComponent("el-dialog");return e.openBlock(),e.createBlock(S,{modelValue:o.value,"onUpdate:modelValue":D[1]||(D[1]=z=>o.value=z),title:"保存的查询",width:"900px","close-on-click-modal":!1,onOpen:k},{default:e.withCtx(()=>[e.createElementVNode("div",Xr,[e.createVNode(K,{modelValue:r.value,"onUpdate:modelValue":D[0]||(D[0]=z=>r.value=z),placeholder:"搜索查询名称或描述...","prefix-icon":e.unref(gt),clearable:""},null,8,["modelValue","prefix-icon"])]),e.createElementVNode("div",Jr,[e.createElementVNode("div",Zr,[e.createElementVNode("div",ei,[e.createElementVNode("h4",null,[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(zt))]),_:1}),D[2]||(D[2]=e.createTextVNode(" 我的查询",-1))]),e.createVNode(x,{type:"info",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.value.length),1)]),_:1})]),e.createVNode(de,{height:"450px"},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createElementBlock("div",ti,[e.createVNode(M,{class:"is-loading"},{default:e.withCtx(()=>[e.createVNode(e.unref(pt))]),_:1}),D[3]||(D[3]=e.createElementVNode("span",null,"加载中...",-1))])):c.value.length===0?(e.openBlock(),e.createElementBlock("div",ni,[e.createVNode(O,{description:"暂无保存的查询"})])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,z=>(e.openBlock(),e.createBlock(ue,{key:z.id,class:"query-card",shadow:"hover"},{default:e.withCtx(()=>{var ne;return[e.createElementVNode("div",ai,[e.createElementVNode("div",oi,[z.visibility==="PRIVATE"?(e.openBlock(),e.createBlock(M,{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(Fa))]),_:1})):z.visibility==="DEPARTMENT"?(e.openBlock(),e.createBlock(M,{key:1},{default:e.withCtx(()=>[e.createVNode(e.unref(ht))]),_:1})):(e.openBlock(),e.createBlock(M,{key:2},{default:e.withCtx(()=>[e.createVNode(e.unref(ft))]),_:1})),e.createElementVNode("span",null,e.toDisplayString(z.title),1)]),e.createVNode(Z,{trigger:"click"},{dropdown:e.withCtx(()=>[e.createVNode(W,null,{default:e.withCtx(()=>[e.createVNode(I,{onClick:se=>d(z)},{default:e.withCtx(()=>[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Ja))]),_:1}),D[4]||(D[4]=e.createTextVNode(" 应用 ",-1))]),_:1},8,["onClick"]),e.createVNode(I,{onClick:se=>V(z),divided:"",class:"danger-item"},{default:e.withCtx(()=>[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(at))]),_:1}),D[5]||(D[5]=e.createTextVNode(" 删除 ",-1))]),_:1},8,["onClick"])]),_:2},1024)]),default:e.withCtx(()=>[e.createVNode(M,{class:"more-icon"},{default:e.withCtx(()=>[e.createVNode(e.unref(At))]),_:1})]),_:2},1024)]),z.description?(e.openBlock(),e.createElementBlock("p",li,e.toDisplayString(z.description),1)):e.createCommentVNode("",!0),e.createElementVNode("div",ri,[e.createVNode(x,{size:"small",type:R(z.visibility)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C(z.visibility)),1)]),_:2},1032,["type"]),e.createElementVNode("span",ii,e.toDisplayString(H(z.createdAt)),1)]),e.createElementVNode("div",si,[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Lt))]),_:1}),e.createElementVNode("span",null,e.toDisplayString(z.columns.length)+" 字段",1),e.createVNode(ie,{direction:"vertical"}),e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Ft))]),_:1}),e.createElementVNode("span",null,e.toDisplayString(((ne=z.slice)==null?void 0:ne.length)||0)+" 筛选",1)])]}),_:2},1024))),128))]),_:1})]),e.createElementVNode("div",ci,[e.createElementVNode("div",di,[e.createElementVNode("h4",null,[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(ja))]),_:1}),D[6]||(D[6]=e.createTextVNode(" 共享查询",-1))]),e.createVNode(x,{type:"success",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.value.length),1)]),_:1})]),e.createVNode(de,{height:"450px"},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createElementBlock("div",ui,[e.createVNode(M,{class:"is-loading"},{default:e.withCtx(()=>[e.createVNode(e.unref(pt))]),_:1}),D[7]||(D[7]=e.createElementVNode("span",null,"加载中...",-1))])):m.value.length===0?(e.openBlock(),e.createElementBlock("div",mi,[e.createVNode(O,{description:"暂无共享查询"})])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,z=>(e.openBlock(),e.createBlock(ue,{key:z.id,class:"query-card",shadow:"hover"},{default:e.withCtx(()=>{var ne;return[e.createElementVNode("div",fi,[e.createElementVNode("div",pi,[z.visibility==="DEPARTMENT"?(e.openBlock(),e.createBlock(M,{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(ht))]),_:1})):(e.openBlock(),e.createBlock(M,{key:1},{default:e.withCtx(()=>[e.createVNode(e.unref(ft))]),_:1})),e.createElementVNode("span",null,e.toDisplayString(z.title),1)]),e.createVNode(P,{type:"primary",size:"small",onClick:se=>d(z)},{default:e.withCtx(()=>[...D[8]||(D[8]=[e.createTextVNode(" 应用 ",-1)])]),_:1},8,["onClick"])]),z.description?(e.openBlock(),e.createElementBlock("p",hi,e.toDisplayString(z.description),1)):e.createCommentVNode("",!0),e.createElementVNode("div",gi,[e.createVNode(x,{size:"small",type:R(z.visibility)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C(z.visibility)),1)]),_:2},1032,["type"]),e.createElementVNode("span",yi,"创建者: "+e.toDisplayString(z.ownerId),1),e.createElementVNode("span",wi,e.toDisplayString(H(z.createdAt)),1)]),e.createElementVNode("div",bi,[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Lt))]),_:1}),e.createElementVNode("span",null,e.toDisplayString(z.columns.length)+" 字段",1),e.createVNode(ie,{direction:"vertical"}),e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Ft))]),_:1}),e.createElementVNode("span",null,e.toDisplayString(((ne=z.slice)==null?void 0:ne.length)||0)+" 筛选",1)])]}),_:2},1024))),128))]),_:1})])])]),_:1},8,["modelValue"])}}}),[["__scopeId","data-v-71649b94"]]),Vi={class:"saved-query-manager"},ki=re(e.defineComponent({__name:"SavedQueryManager",props:{tableRef:{},model:{},businessId:{},currentUserId:{},position:{default:"top"}},setup(t){const a=t,n=e.ref(!1),l=e.ref(!1),o=e.computed(()=>{var y;return(y=a.tableRef)!=null&&y.value?a.tableRef.value.getQueryState():null}),i=e.computed(()=>{var y,p,b;return(y=a.tableRef)!=null&&y.value?((b=(p=a.tableRef.value).getSchema)==null?void 0:b.call(p))||[]:[]});function h(){if(!o.value){X.ElMessage.warning("无法获取表格状态");return}n.value=!0}function r(){l.value=!0}async function c(y,p){var b;(b=a.tableRef)!=null&&b.value&&(a.tableRef.value.applyQueryState({columns:y.columns,slice:y.slice,orderBy:y.orderBy}),await a.tableRef.value.reload(),X.ElMessage.success(`已应用查询: ${y.title}`))}function m(y){X.ElMessage.success("查询保存成功")}return(y,p)=>{var d,V,C;const b=e.resolveComponent("el-button"),k=e.resolveComponent("el-button-group");return e.openBlock(),e.createElementBlock("div",Vi,[e.createVNode(k,{size:"small"},{default:e.withCtx(()=>[e.createVNode(b,{icon:e.unref(Da),onClick:r},{default:e.withCtx(()=>[...p[2]||(p[2]=[e.createTextVNode(" 加载查询 ",-1)])]),_:1},8,["icon"]),e.createVNode(b,{icon:e.unref(Sa),onClick:h},{default:e.withCtx(()=>[...p[3]||(p[3]=[e.createTextVNode(" 保存查询 ",-1)])]),_:1},8,["icon"])]),_:1}),e.createVNode(sn,{modelValue:n.value,"onUpdate:modelValue":p[0]||(p[0]=R=>n.value=R),model:t.model,"business-id":t.businessId,"available-columns":i.value,"current-columns":(d=o.value)==null?void 0:d.columns,"current-slice":(V=o.value)==null?void 0:V.slice,"order-by":(C=o.value)==null?void 0:C.orderBy,onSaved:m},null,8,["modelValue","model","business-id","available-columns","current-columns","current-slice","order-by"]),e.createVNode(hn,{modelValue:l.value,"onUpdate:modelValue":p[1]||(p[1]=R=>l.value=R),model:t.model,"business-id":t.businessId,"current-user-id":t.currentUserId,onApply:c},null,8,["modelValue","model","business-id","current-user-id"])])}}}),[["__scopeId","data-v-2fca52e0"]]);T.BoolFilter=tt,T.DataTable=mt,T.DataTableWithSearch=To,T.DataViewer=wa,T.DateRangeFilter=Qe,T.HookRegistry=nt,T.ListPresetManager=wt,T.NumberRangeFilter=et,T.OptionManagerDialog=rn,T.PivotAxisPager=qt,T.PivotEvidencePanel=jt,T.PivotGrid=Jt,T.PivotRawViewer=cl,T.PivotViewer=Zt,T.QueryListDialog=hn,T.QueryPanel=Pt,T.SaveQueryDialog=sn,T.SavedQueryManager=ki,T.SearchToolbar=$t,T.SelectFilter=Le,T.TextFilter=Re,T.applySavedQuery=ln,T.buildPivotCellField=bt,T.buildPivotGridColumns=Kt,T.buildTableColumns=Tt,T.calculateColumnWidth=vt,T.clearDefaultListPreset=eo,T.createListPreset=Qt,T.createQuery=ta,T.deleteListPreset=Ut,T.deleteSavedQuery=on,T.fetchFilterOptions=Mt,T.fetchFrontendMeta=oa,T.fetchMemberOptions=la,T.fetchQmSchema=Dt,T.fetchQueryData=Bt,T.fetchQueryDataDirect=aa,T.fetchQueryMeta=St,T.flattenPivotLeafNodes=Gt,T.getDefaultListPreset=Wt,T.getListPreset=Za,T.getSavedQuery=dl,T.globalQueryHooks=xt,T.listPresets=Ot,T.listSavedQueries=an,T.saveQuery=nn,T.setDefaultListPreset=Ht,T.toPivotViewModel=en,T.updateListPreset=yt,T.updateSavedQuery=ul,T.useDeferredVisibility=ut,T.useQueryState=qn,T.useTableQuery=Et,T.useTableSelection=Ct,T.useTableSummary=Nt,T.validatePivotHeaderTree=Yt,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
(function(T,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("element-plus"),require("axios")):typeof define=="function"&&define.amd?define(["exports","vue","element-plus","axios"],e):(T=typeof globalThis<"u"?globalThis:T||self,e(T.FoggyDataViewer={},T.Vue,T.ElementPlus,T.axios))})(this,function(T,e,X,Ze){"use strict";var _i=Object.defineProperty;var Ni=(T,e,X)=>e in T?_i(T,e,{enumerable:!0,configurable:!0,writable:!0,value:X}):T[e]=X;var gn=(T,e,X)=>Ni(T,typeof e!="symbol"?e+"":e,X);const yn=["placeholder"],wn=["onClick","onMouseenter"],bn=e.defineComponent({__name:"TextFilter",props:{field:{},modelValue:{},placeholder:{default:"搜索..."}},emits:["update:modelValue","commit"],setup(t,{emit:a}){const n=t,l=a,o=e.ref(""),i=e.ref(!1),h=e.ref(),r=e.ref(),c=e.ref(),m=e.ref(0),y=e.ref(!1),p=e.ref({});function b(){if(!r.value)return;const x=r.value.getBoundingClientRect();p.value={position:"fixed",top:`${x.bottom+4}px`,left:`${x.left}px`,width:`${x.width}px`,zIndex:"9999"}}e.watch(()=>n.modelValue,x=>{if(!x||x.length===0){o.value="";return}const O=x[0];O.op==="in"&&Array.isArray(O.value)?o.value=O.value.join(", "):o.value=String(O.value||"").replace(/%/g,"")},{immediate:!0});const k=e.computed(()=>{const x=o.value.trim();return x?[{op:"right_like",label:`左匹配:${x}***`},{op:"=",label:`等于:${x}`},{op:"in",label:`批量查找:${x}`}]:[]});function d(x){const O=o.value.trim();if(!O)return null;if(x==="in"){const I=O.split(/[,,\s]+/).filter(W=>W.trim());return I.length===1?{field:n.field,op:"=",value:I[0]}:{field:n.field,op:"in",value:I}}return{field:n.field,op:x,value:O}}function V(){const x=d("right_like");l("update:modelValue",x?[x]:null)}function C(){o.value.trim()?(b(),i.value=!0,m.value=0,V()):(i.value=!1,l("update:modelValue",null))}function R(x){const O=d(x);O&&(l("update:modelValue",[O]),l("commit",[O]),i.value=!1)}function H(x){if(!(y.value||x.isComposing)){if(!i.value||k.value.length===0){x.key==="Enter"&&o.value.trim()&&(x.preventDefault(),R("right_like"));return}switch(x.key){case"ArrowDown":x.preventDefault(),m.value=(m.value+1)%k.value.length;break;case"ArrowUp":x.preventDefault(),m.value=(m.value-1+k.value.length)%k.value.length;break;case"Enter":x.preventDefault(),R(k.value[m.value].op);break;case"Escape":i.value=!1;break}}}function N(){o.value="",i.value=!1,l("update:modelValue",null),l("commit",null)}function D(){y.value=!0}function K(){y.value=!1,C()}function M(x){var Z,ie;const O=x.target,I=(Z=h.value)==null?void 0:Z.contains(O),W=(ie=c.value)==null?void 0:ie.contains(O);!I&&!W&&(i.value=!1)}return e.onMounted(()=>{document.addEventListener("click",M)}),e.onUnmounted(()=>{document.removeEventListener("click",M)}),(x,O)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:h,class:"filter-text"},[e.createElementVNode("div",{ref_key:"inputWrapperRef",ref:r,class:"input-wrapper"},[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":O[0]||(O[0]=I=>o.value=I),type:"text",placeholder:t.placeholder,onInput:C,onKeydown:H,onCompositionstart:D,onCompositionend:K,onFocus:O[1]||(O[1]=()=>{o.value.trim()&&(b(),i.value=!0)})},null,40,yn),[[e.vModelText,o.value]]),o.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"clear-btn",onClick:e.withModifiers(N,["stop"])},"×")):e.createCommentVNode("",!0)],512),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[i.value&&k.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:c,class:"filter-dropdown",style:e.normalizeStyle(p.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,(I,W)=>(e.openBlock(),e.createElementBlock("div",{key:I.op,class:e.normalizeClass(["filter-option",{highlighted:W===m.value}]),onClick:Z=>R(I.op),onMouseenter:Z=>m.value=W},e.toDisplayString(I.label),43,wn))),128))],4)):e.createCommentVNode("",!0)]))],512))}}),re=(t,a)=>{const n=t.__vccOpts||t;for(const[l,o]of a)n[l]=o;return n},Re=re(bn,[["__scopeId","data-v-c47bcc50"]]),Vn={class:"filter-number-range"},kn=["placeholder"],Cn=["placeholder"],et=re(e.defineComponent({__name:"NumberRangeFilter",props:{field:{},modelValue:{},placeholderMin:{default:"最小"},placeholderMax:{default:"最大"}},emits:["update:modelValue","commit"],setup(t,{emit:a}){const n=t,l=a,o=e.ref(""),i=e.ref("");e.watch(()=>n.modelValue,c=>{if(!c||c.length===0){o.value="",i.value="";return}const m=c.find(y=>y.op==="[]"||y.op==="[)");if(m&&Array.isArray(m.value)){const[y,p]=m.value;o.value=y!=null?String(y):"",i.value=p!=null?String(p):""}else{const y=c.find(b=>b.op===">="),p=c.find(b=>b.op==="<=");o.value=(y==null?void 0:y.value)!=null?String(y.value):"",i.value=(p==null?void 0:p.value)!=null?String(p.value):""}},{immediate:!0});function h(){const c=o.value.trim(),m=i.value.trim();if(!c&&!m){l("update:modelValue",null),l("commit",null);return}const y=c?parseFloat(c):null,p=m?parseFloat(m):null;if(!(c&&isNaN(y))&&!(m&&isNaN(p))){if(y!==null&&p!==null){const b=[{field:n.field,op:"[]",value:[y,p]}];l("update:modelValue",b),l("commit",b)}else if(y!==null){const b=[{field:n.field,op:">=",value:y}];l("update:modelValue",b),l("commit",b)}else if(p!==null){const b=[{field:n.field,op:"<=",value:p}];l("update:modelValue",b),l("commit",b)}}}function r(){o.value="",i.value="",l("update:modelValue",null),l("commit",null)}return(c,m)=>(e.openBlock(),e.createElementBlock("div",Vn,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":m[0]||(m[0]=y=>o.value=y),type:"text",placeholder:t.placeholderMin,onChange:h,onKeyup:e.withKeys(h,["enter"])},null,40,kn),[[e.vModelText,o.value]]),m[2]||(m[2]=e.createElementVNode("span",{class:"separator"},"-",-1)),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":m[1]||(m[1]=y=>i.value=y),type:"text",placeholder:t.placeholderMax,onChange:h,onKeyup:e.withKeys(h,["enter"])},null,40,Cn),[[e.vModelText,i.value]]),o.value||i.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"clear-btn",onClick:r},"×")):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-09db1027"]]),_n={class:"filter-date-range"},Qe=re(e.defineComponent({__name:"DateRangeFilter",props:{field:{},modelValue:{},format:{default:"YYYY-MM-DD"},showTime:{type:Boolean,default:!1}},emits:["update:modelValue","commit"],setup(t,{emit:a}){const n=t,l=a,o=e.ref(null),i=e.computed(()=>{var m;return n.showTime||((m=n.format)==null?void 0:m.includes("HH"))}),h=e.computed(()=>i.value?"YYYY-MM-DD HH:mm":"YYYY-MM-DD");e.watch(()=>n.modelValue,m=>{if(!m||m.length===0){o.value=null;return}const y=m.find(p=>p.op==="[)"||p.op==="[]");if(y&&Array.isArray(y.value)){const[p,b]=y.value;o.value=[new Date(p.replace(" ","T")),new Date(b.replace(" ","T"))]}else{const p=m.find(k=>k.op===">="),b=m.find(k=>k.op==="<="||k.op==="<");if(p||b){const k=p?new Date(String(p.value).replace(" ","T")):null,d=b?new Date(String(b.value).replace(" ","T")):null;k&&d?o.value=[k,d]:k?o.value=[k,k]:d&&(o.value=[d,d])}else o.value=null}},{immediate:!0});function r(m){const y=m.getFullYear(),p=String(m.getMonth()+1).padStart(2,"0"),b=String(m.getDate()).padStart(2,"0");if(i.value){const k=String(m.getHours()).padStart(2,"0"),d=String(m.getMinutes()).padStart(2,"0"),V=String(m.getSeconds()).padStart(2,"0");return`${y}-${p}-${b} ${k}:${d}:${V}`}return`${y}-${p}-${b}`}function c(m){if(!m||m.length!==2){l("update:modelValue",null),l("commit",null);return}const[y,p]=m,b=r(y);let k;if(i.value)k=r(p);else{const V=new Date(p);V.setDate(V.getDate()+1),k=r(V)}const d=[{field:n.field,op:"[)",value:[b,k]}];l("update:modelValue",d),l("commit",d)}return(m,y)=>{const p=e.resolveComponent("el-date-picker");return e.openBlock(),e.createElementBlock("div",_n,[e.createVNode(p,{modelValue:o.value,"onUpdate:modelValue":y[0]||(y[0]=b=>o.value=b),type:i.value?"datetimerange":"daterange",format:h.value,"range-separator":"~","start-placeholder":"开始","end-placeholder":"结束",size:"small",clearable:!0,editable:!1,onChange:c},null,8,["modelValue","type","format"])])}}}),[["__scopeId","data-v-0027bb33"]]),Nn={key:0,class:"selected-text"},xn={key:1,class:"placeholder-text"},En=["title"],Sn={class:"search-box"},Bn=["placeholder"],Mn={class:"options-container"},Dn={key:0,class:"loading-hint"},vn=["onClick","onMouseenter"],Tn=["checked","onClick"],$n={class:"option-label"},Pn={key:0,class:"no-data"},Fn={key:0,class:"more-hint"},Ln={key:1,class:"confirm-bar"},An={class:"selected-count"},Le=re(e.defineComponent({__name:"SelectFilter",props:{field:{},selectionField:{},modelValue:{},options:{default:()=>[]},placeholder:{default:"请选择..."},loading:{type:Boolean,default:!1},maxDisplayItems:{default:100},remoteLoader:{},qmModel:{}},emits:["update:modelValue","commit"],setup(t,{emit:a}){const n=t,l=a,o=e.ref(!1),i=e.ref(!1),h=e.ref(""),r=e.ref(new Set),c=e.ref(),m=e.ref(),y=e.ref(0),p=e.ref(),b=e.ref({}),k=e.ref([]),d=e.ref(!1),V=e.ref(0),C=e.ref(!1),R=e.ref(new Map);let H=null;const N=e.computed(()=>!!n.remoteLoader&&!!n.qmModel),D=e.computed(()=>n.selectionField||n.field);e.watch(()=>n.modelValue,w=>{if(r.value.clear(),!w||w.length===0)return;const f=w[0];f.op==="in"&&Array.isArray(f.value)?(i.value=!0,f.value.forEach(v=>r.value.add(v))):f.op==="="&&(i.value=!1,r.value.add(f.value))},{immediate:!0});const K=e.computed(()=>N.value?k.value:n.options),M=e.computed(()=>{if(N.value||!h.value.trim())return K.value;const w=h.value.toLowerCase();return K.value.filter(f=>f.label.toLowerCase().includes(w)||String(f.value).toLowerCase().includes(w))}),x=e.computed(()=>M.value.slice(0,n.maxDisplayItems)),O=e.computed(()=>N.value?C.value:M.value.length>n.maxDisplayItems),I=e.computed(()=>N.value?d.value:n.loading),W=e.computed(()=>{if(r.value.size===0)return"";if(N.value){const f=[];for(const v of r.value){const $=R.value.get(v);$?f.push($):f.push(String(v))}return f.length<=2?f.join(", "):`已选 ${f.length} 项`}const w=n.options.filter(f=>r.value.has(f.value));return w.length===0?Array.from(r.value).join(", "):w.length<=2?w.map(f=>f.label).join(", "):`已选 ${w.length} 项`});async function Z(w){if(!(!n.remoteLoader||!n.qmModel)){d.value=!0;try{const f=await n.remoteLoader({qmModel:n.qmModel,fieldName:n.field,keyword:w||void 0,start:0,limit:n.maxDisplayItems,selectedValues:r.value.size>0?Array.from(r.value):void 0});if(k.value=f.items.map(ie),V.value=f.total,C.value=f.hasMore??!1,f.selectedItems)for(const v of f.selectedItems)R.value.set(v.value,v.label);for(const v of f.items)R.value.set(v.value,v.label)}catch(f){console.error("远程成员加载失败:",f),k.value=[]}finally{d.value=!1}}}function ie(w){return{value:w.value,label:w.label}}function ue(){y.value=0,N.value&&(H&&clearTimeout(H),H=setTimeout(()=>{Z(h.value)},250))}function de(){if(!m.value)return;const w=m.value.getBoundingClientRect();b.value={position:"fixed",top:`${w.bottom+4}px`,left:`${w.left}px`,width:`${w.width}px`,zIndex:"9999"}}function P(){o.value=!o.value,o.value&&(h.value="",y.value=0,de(),setTimeout(()=>{var w;return(w=p.value)==null?void 0:w.focus()},0),N.value&&k.value.length===0&&Z(""))}function S(){if(i.value=!i.value,!i.value&&r.value.size>1){const w=r.value.values().next().value;r.value.clear(),w!==void 0&&r.value.add(w),we()}}function z(w){return r.value.has(w.value)}function ne(w){R.value.set(w.value,w.label),i.value?r.value.has(w.value)?r.value.delete(w.value):r.value.add(w.value):(r.value.clear(),r.value.add(w.value),we(),o.value=!1)}function se(){we(),o.value=!1}function we(){if(r.value.size===0){l("update:modelValue",null),l("commit",null);return}let w;i.value||r.value.size>1?w=[{field:D.value,op:"in",value:Array.from(r.value)}]:w=[{field:D.value,op:"=",value:r.value.values().next().value}],l("update:modelValue",w),l("commit",w)}function te(){r.value.clear(),h.value="",o.value=!1,l("update:modelValue",null),l("commit",null)}function me(w){if(!o.value)return;const f=x.value;if(f.length!==0)switch(w.key){case"ArrowDown":w.preventDefault(),y.value=(y.value+1)%f.length;break;case"ArrowUp":w.preventDefault(),y.value=(y.value-1+f.length)%f.length;break;case"Enter":w.preventDefault(),f[y.value]&&ne(f[y.value]);break;case"Escape":o.value=!1;break}}const Me=e.ref();function be(w){var q,Q;const f=w.target,v=(q=c.value)==null?void 0:q.contains(f),$=(Q=Me.value)==null?void 0:Q.contains(f);!v&&!$&&(o.value&&i.value&&we(),o.value=!1)}return e.onMounted(()=>document.addEventListener("click",be)),e.onUnmounted(()=>{document.removeEventListener("click",be),H&&clearTimeout(H)}),(w,f)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:c,class:"filter-select"},[e.createElementVNode("div",{ref_key:"inputRef",ref:m,class:"select-input",onClick:P},[W.value?(e.openBlock(),e.createElementBlock("span",Nn,e.toDisplayString(W.value),1)):(e.openBlock(),e.createElementBlock("span",xn,e.toDisplayString(t.placeholder),1)),e.createElementVNode("span",{class:"toggle-multi",onClick:e.withModifiers(S,["stop"]),title:i.value?"切换单选":"切换多选"},e.toDisplayString(i.value?"多":"单"),9,En),W.value?(e.openBlock(),e.createElementBlock("span",{key:2,class:"clear-btn",onClick:e.withModifiers(te,["stop"])},"×")):e.createCommentVNode("",!0)],512),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:Me,class:"filter-dropdown",style:e.normalizeStyle(b.value)},[e.createElementVNode("div",Sn,[e.withDirectives(e.createElementVNode("input",{ref_key:"searchInputRef",ref:p,"onUpdate:modelValue":f[0]||(f[0]=v=>h.value=v),type:"text",placeholder:N.value?"输入关键词搜索...":"搜索...",onClick:f[1]||(f[1]=e.withModifiers(()=>{},["stop"])),onInput:ue,onKeydown:me},null,40,Bn),[[e.vModelText,h.value]])]),e.createElementVNode("div",Mn,[I.value?(e.openBlock(),e.createElementBlock("div",Dn," 加载中... ")):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,(v,$)=>(e.openBlock(),e.createElementBlock("div",{key:String(v.value),class:e.normalizeClass(["filter-option",{selected:z(v),highlighted:$===y.value}]),onClick:q=>ne(v),onMouseenter:q=>y.value=$},[i.value?(e.openBlock(),e.createElementBlock("input",{key:0,type:"checkbox",checked:z(v),onClick:e.withModifiers(q=>ne(v),["stop"])},null,8,Tn)):e.createCommentVNode("",!0),e.createElementVNode("span",$n,e.toDisplayString(v.label),1)],42,vn))),128)),x.value.length===0?(e.openBlock(),e.createElementBlock("div",Pn,e.toDisplayString(N.value&&!h.value?"打开后自动加载":"无匹配数据"),1)):e.createCommentVNode("",!0)],64))]),O.value?(e.openBlock(),e.createElementBlock("div",Fn,[N.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" 共 "+e.toDisplayString(V.value)+" 条,请输入关键词缩小范围 ",1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" 还有 "+e.toDisplayString(M.value.length-t.maxDisplayItems)+" 条,请输入关键词搜索 ",1)],64))])):e.createCommentVNode("",!0),i.value?(e.openBlock(),e.createElementBlock("div",Ln,[e.createElementVNode("span",An,"已选 "+e.toDisplayString(r.value.size)+" 项",1),e.createElementVNode("button",{class:"confirm-btn",onClick:se},"确定")])):e.createCommentVNode("",!0)],4)):e.createCommentVNode("",!0)]))],512))}}),[["__scopeId","data-v-7502da10"]]),In={class:"filter-bool"},tt=re(e.defineComponent({__name:"BoolFilter",props:{field:{},modelValue:{},trueLabel:{default:"是"},falseLabel:{default:"否"}},emits:["update:modelValue","commit"],setup(t,{emit:a}){const n=t,l=a,o=e.ref(null);e.watch(()=>n.modelValue,h=>{if(!h||h.length===0){o.value=null;return}const r=h[0];r.op==="="?o.value=r.value===!0||r.value==="true"||r.value===1:o.value=null},{immediate:!0});function i(h){if(o.value=h,h===null)l("update:modelValue",null),l("commit",null);else{const r=[{field:n.field,op:"=",value:h}];l("update:modelValue",r),l("commit",r)}}return(h,r)=>(e.openBlock(),e.createElementBlock("div",In,[e.createElementVNode("button",{class:e.normalizeClass({active:o.value===null}),title:"全部","aria-label":"全部",onClick:r[0]||(r[0]=c=>i(null))}," 全 ",2),e.createElementVNode("button",{class:e.normalizeClass({active:o.value===!0}),onClick:r[1]||(r[1]=c=>i(!0))},e.toDisplayString(t.trueLabel),3),e.createElementVNode("button",{class:e.normalizeClass({active:o.value===!1}),onClick:r[2]||(r[2]=c=>i(!1))},e.toDisplayString(t.falseLabel),3)]))}}),[["__scopeId","data-v-421747f5"]]);function Ct(){const t=e.ref([]);function a({records:i}){t.value=i}function n({records:i}){t.value=i}function l(){t.value=[]}function o(){return t.value.length}return{selectedRows:t,onCheckboxChange:a,onCheckboxAll:n,clearSelection:l,getSelectedCount:o}}const zn=["NUMBER","MONEY","BIGDECIMAL","INTEGER","BIGINT","LONG"];function Rn(t){return zn.includes((t==null?void 0:t.toUpperCase())||"")}function _t(t){return!!t&&(t.measure===!0||t.aggregatable===!0)&&Rn(t.type)}function dt(t){if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"&&t.trim()){const a=Number(t);return Number.isFinite(a)?a:null}return null}function Nt(t){const a=e.ref(null),n=e.computed(()=>t.value.filter(_t));function l(r){const c={_count:r.length};if(r.length===0)return c;for(const m of n.value)c[m.name]=r.reduce((y,p)=>{const b=p[m.name];return y+(typeof b=="number"?b:0)},0);return c}function o(r,c){if(r==null)return"";if(typeof r!="number")return String(r);const m=c==null?void 0:c.toUpperCase();return m==="MONEY"||m==="NUMBER"||m==="BIGDECIMAL"?r.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2}):r.toLocaleString("zh-CN")}function i(r,c,m=0){var b,k,d;const y=[],p=[];for(let V=0;V<r.length;V++){const R=r[V].field;if(V===0){y.push("选中"),p.push("合计");continue}if(V===1){const H=dt(c._count)??0,N=dt((b=a.value)==null?void 0:b.total)??dt((k=a.value)==null?void 0:k._count)??m;y.push(`${H} 条`),p.push(`${N} 条`);continue}if(R){const H=t.value.find(N=>N.name===R);if(_t(H)){const N=c[R],D=(d=a.value)==null?void 0:d[R];y.push(o(N,H==null?void 0:H.type)),p.push(o(D,H==null?void 0:H.type))}else y.push(null),p.push(null)}else y.push(null),p.push(null)}return[y,p]}function h(r){a.value=r}return{serverSummary:a,measureColumns:n,calculateSelectedSummary:l,generateFooterData:i,setServerSummary:h,formatValue:o}}class nt{constructor(){gn(this,"hooks",new Map)}add(a,n){return this.hooks.has(a)||this.hooks.set(a,new Set),this.hooks.get(a).add(n),()=>{var l;return(l=this.hooks.get(a))==null?void 0:l.delete(n)}}remove(a,n){var l;(l=this.hooks.get(a))==null||l.delete(n)}size(a){var n;return((n=this.hooks.get(a))==null?void 0:n.size)??0}clear(){this.hooks.clear()}async runBefore(a){const n=this.hooks.get("onBeforeQuery");if(n)for(const l of n){const o=await l(a);if(o===!1)return!1;o&&typeof o=="object"&&"page"in o&&(a.params=o)}}async runAfter(a,n){const l=this.hooks.get("onAfterQuery");if(!l)return n;let o=n;for(const i of l){const h=await i(a,o);h&&typeof h=="object"&&"items"in h&&(o=h)}return o}async runError(a,n){const l=this.hooks.get("onQueryError");if(!l)return!1;let o=!1;for(const i of l)await i(a,n)===!0&&(o=!0);return o}}const Oe=new nt,xt={add(t,a){return Oe.add(t,a)},remove(t,a){Oe.remove(t,a)},register(t){const a=[];return t.onBeforeQuery&&a.push(Oe.add("onBeforeQuery",t.onBeforeQuery)),t.onAfterQuery&&a.push(Oe.add("onAfterQuery",t.onAfterQuery)),t.onQueryError&&a.push(Oe.add("onQueryError",t.onQueryError)),()=>a.forEach(n=>n())},clear(){Oe.clear()},_getRegistry(){return Oe}};function On(t){return t.flatMap(a=>{const n=a.dir??a.order,l=typeof n=="string"?n.toLowerCase():n;if(!a.field||l!=="asc"&&l!=="desc")return[];const o={field:a.field,dir:l};return a.nullFirst&&(o.nullFirst=!0),a.nullLast&&(o.nullLast=!0),[o]})}function Wn(t){return t.flatMap(a=>{const n=a.trim();return n?[n]:[]})}function Et(t,a={}){const n=e.ref([]),l=e.ref(0),o=e.ref(!1),i=e.ref(null),h=e.ref(null),r=e.ref(null),c=e.ref(1),m=e.ref(a.pageSize??50),y=e.ref([]),p=e.ref([]),b=e.ref([]),k=new nt,d=xt._getRegistry();function V(){const I=new nt,W=a.hooks;return W&&(W.onBeforeQuery&&I.add("onBeforeQuery",W.onBeforeQuery),W.onAfterQuery&&I.add("onAfterQuery",W.onAfterQuery),W.onQueryError&&I.add("onQueryError",W.onQueryError)),I}async function C(I="refresh"){const W={params:{page:c.value,pageSize:m.value,columns:[...b.value],slice:[...p.value],orderBy:[...y.value]},trigger:I},Z=V();if(!(await d.runBefore(W)===!1||await Z.runBefore(W)===!1||await k.runBefore(W)===!1)){o.value=!0,i.value=I,h.value=null;try{let P=await t(W.params);P=await k.runAfter(W,P),P=await Z.runAfter(W,P),P=await d.runAfter(W,P),n.value=P.items,l.value=P.total,r.value=P.totalData??null}catch(P){const S=P instanceof Error?P:new Error(String(P));h.value=S;const z=await k.runError(W,S),ne=await Z.runError(W,S),se=await d.runError(W,S);if(!z&&!ne&&!se)throw console.error("数据加载失败:",S),S}finally{o.value=!1,i.value=null}}}async function R(){await C("refresh")}async function H(){c.value=1,await C("reload")}function N(I,W){c.value=I,W!==void 0&&(m.value=W)}function D(I){y.value=On(I)}function K(I){p.value=I}function M(I){b.value=Wn(I)}function x(I,W){return k.add(I,W)}function O(I,W){k.remove(I,W)}return{data:n,total:l,loading:o,activeTrigger:i,lastError:h,serverSummary:r,currentPage:c,currentPageSize:m,currentOrderBy:y,currentSlice:p,currentColumns:b,loadData:C,refresh:R,reload:H,setPage:N,setSort:D,setSlice:K,setColumns:M,addHook:x,removeHook:O}}const Qn=150,Un=250,Hn=160;function ut(t,a={}){const n=a.delayMs??Qn,l=a.minVisibleMs??Un,o=a.fadeMs??Hn,i=e.ref(!1),h=e.ref(!1);let r=0,c,m,y,p;function b(R){R!==void 0&&clearTimeout(R)}function k(){b(c),b(m),c=void 0,m=void 0}function d(){b(y),b(p),y=void 0,p=void 0}function V(){d(),!h.value&&(i.value||(i.value=!0),m=setTimeout(()=>{h.value=!0,r=Date.now(),m=void 0},0))}function C(){if(k(),!i.value){h.value=!1;return}const R=r>0?Date.now()-r:0,H=Math.max(0,l-R);y=setTimeout(()=>{h.value=!1,r=0,y=void 0,p=setTimeout(()=>{i.value=!1,p=void 0},o)},H)}return e.watch(t,R=>{R?(k(),d(),c=setTimeout(()=>{V(),c=void 0},n)):C()},{immediate:!0}),e.onBeforeUnmount(()=>{k(),d()}),{shouldRender:i,visible:h}}function qn(t){const a=e.ref({}),n=e.ref({});function l(c,m){if(m==null||m===""){const y={...a.value};delete y[c],a.value=y}else a.value={...a.value,[c]:m}}function o(){return n.value={...a.value},h(n.value)}function i(){a.value={},n.value={}}function h(c){var y;const m=[];for(const[p,b]of Object.entries(c)){if(b==null||b==="")continue;if(Array.isArray(b)&&b.length>0&&((y=b[0])!=null&&y.field)){m.push(...b);continue}const k=t==null?void 0:t.find(C=>C.key===p);if(!k)continue;const d=k.sourceField,V=k.defaultOperator||"=";if(V==="[]"&&Array.isArray(b)&&b.length===2){const[C,R]=b;(C!=null||R!=null)&&m.push({field:d,op:"[]",value:[C,R]});continue}if(Array.isArray(b)){b.length>0&&m.push({field:d,op:"in",value:b});continue}m.push({field:d,op:V,value:b})}return m}const r=e.computed(()=>h(n.value));return{draft:a,applied:n,commitDraft:o,resetAll:i,patchDraft:l,appliedSlices:r}}const jn={key:0,class:"data-table-toolbar"},Yn={class:"toolbar-left"},Gn={key:0,class:"toolbar-right"},Kn={key:0,class:"data-table-query-spinner","aria-hidden":"true"},Xn={class:"data-table-query-status-text"},Jn={class:"table-wrapper"},Zn={key:1,class:"data-table-footer"},ea=88,mt=re(e.defineComponent({inheritAttrs:!1,__name:"DataTable",props:{columns:{},data:{},total:{},loading:{type:Boolean},backgroundLoading:{type:Boolean,default:!1},backgroundLoadingText:{default:""},backgroundLoadingError:{default:null},pageSize:{default:50},showFilters:{type:Boolean,default:!0},showPager:{type:Boolean,default:!0},initialSlice:{},localFilter:{type:Boolean,default:!0},serverSummary:{},filterOptionsLoader:{},filterMemberLoader:{},qmModel:{},customFilterComponents:{},cellCopy:{},density:{default:"compact"}},emits:["page-change","sort-change","filter-change","filter-commit","row-click","row-dblclick","checkbox-change","checkbox-all"],setup(t,{expose:a,emit:n}){const l=e.useAttrs(),o=t,i=n,h=e.useSlots(),r=e.ref(),c=e.ref(null),m=e.computed(()=>["data-table",o.density==="compact"?"data-table--compact":""]),y=ut(e.computed(()=>o.loading)),p=ut(e.computed(()=>o.backgroundLoading??!1)),b=e.computed(()=>o.backgroundLoadingError?o.backgroundLoadingError:o.backgroundLoadingText||""),k=e.computed(()=>!!o.backgroundLoadingError&&!o.backgroundLoading),d=e.computed(()=>o.showPager||!!h["toolbar-right"]),V=e.computed(()=>!b.value||!d.value?!1:p.shouldRender.value||k.value),C=e.computed(()=>k.value?!0:p.visible.value),R=e.computed(()=>p.shouldRender.value),H=e.computed(()=>p.visible.value);function N(s){return s&&typeof s=="object"&&!Array.isArray(s)?s:void 0}function D(s,g){if(!s)return null;for(const E of g){const B=s[E];if(typeof B=="string"&&B.trim())return B.trim()}return null}function K(s){const g=s,E=D(g,["description","descrip","describe","desc","comment","remark","tooltip","helpText"]);if(E)return E;const B=D(N(s.uiConfig),["description","descrip","describe","desc","comment","remark","tooltip","helpText"]);return B||D(N(g.uiHints),["description","descrip","describe","desc","comment","remark","tooltip","helpText"])}const M=e.ref({currentPage:1,pageSize:o.pageSize,total:o.total}),x=e.ref({field:null,order:null}),O=e.ref({}),I=e.ref({}),W=e.ref({}),Z=e.computed(()=>o.columns),{selectedRows:ie,onCheckboxChange:ue,onCheckboxAll:de,clearSelection:P,getSelectedCount:S}=Ct(),{serverSummary:z,calculateSelectedSummary:ne,generateFooterData:se,setServerSummary:we}=Nt(Z);e.watch(()=>o.serverSummary,s=>{we(s??null)},{immediate:!0});const te=e.computed(()=>{var E;const s=ne(ie.value),g=((E=ye.value)==null?void 0:E.map(B=>{var L;return{field:B.field,type:(L=o.columns.find(j=>j.name===B.field))==null?void 0:L.type}}))||[];return se(g,s,o.total)});function me(s={}){var B,L;const g=ie.value.length>0;P();const E=r.value;(B=E==null?void 0:E.clearCheckboxRow)==null||B.call(E),(L=E==null?void 0:E.clearCheckboxReserve)==null||L.call(E),s.emitChange!==!1&&g&&i("checkbox-change",[])}e.watch(()=>o.total,s=>{M.value.total=s}),e.watch(()=>o.data,(s,g)=>{g&&s!==g&&ie.value.length>0&&me()}),e.watch(()=>o.pageSize,s=>{s&&s>0&&(M.value.pageSize=s)}),e.watch(()=>o.initialSlice,s=>{if(!s||s.length===0){O.value={};return}const g={};for(const E of s)E.field&&(g[E.field]||(g[E.field]=[]),g[E.field].push(E));O.value=g},{immediate:!0});async function Me(s){if(I.value[s])return I.value[s];if(!o.filterOptionsLoader)return[];W.value[s]=!0;try{const g=await o.filterOptionsLoader(s);return I.value[s]=g,g}catch(g){return console.error("Failed to load dimension options:",g),[]}finally{W.value[s]=!1}}function be(s){var E;const g=(E=s.type)==null?void 0:E.toUpperCase();switch(g){case"DAY":case"DATE":return"date";case"DATETIME":return"datetime"}if(s.dictId)return"dict";if(s.filterType)return s.filterType;switch(g){case"NUMBER":case"MONEY":case"BIGDECIMAL":case"INTEGER":case"BIGINT":case"LONG":return"number";case"BOOL":case"BOOLEAN":return"bool";case"DICT":return"dict";default:return"text"}}function w(s){if(s.customFilterComponent)return s.customFilterComponent;const g=be(s);if(o.customFilterComponents&&o.customFilterComponents[g])return o.customFilterComponents[g];switch(g){case"text":return Re;case"number":return et;case"date":return Qe;case"datetime":return Qe;case"dict":return Le;case"dimension":return Le;case"bool":return tt;default:return Re}}function f(s){return s.endsWith("$id")?s:s.includes("$")?`${s.substring(0,s.indexOf("$"))}$id`:`${s}$id`}function v(s){const g=be(s),E={field:s.name,modelValue:O.value[s.name]||null,"onUpdate:modelValue":B=>fe(s.name,B),onCommit:B=>le(s.name,B)};switch(g){case"datetime":return{...E,showTime:!0,format:s.format};case"date":return{...E,format:s.format};case"dict":return{...E,options:s.dictItems||[],placeholder:s.title||"请选择"};case"dimension":{const B=s.memberLookup,L=!!o.filterMemberLoader&&!!o.qmModel&&(B==null?void 0:B.enabled),j=(B==null?void 0:B.selectionFieldName)||f(s.name);return L?{...E,field:s.name,selectionField:j,modelValue:O.value[j]||O.value[s.name]||null,"onUpdate:modelValue":Y=>fe(j,Y),onCommit:Y=>le(j,Y),remoteLoader:o.filterMemberLoader,qmModel:o.qmModel,options:[],loading:!1,placeholder:s.title||"请选择"}:(I.value[s.name]||Me(s.name),{...E,field:j,modelValue:O.value[j]||O.value[s.name]||null,"onUpdate:modelValue":Y=>fe(j,Y),onCommit:Y=>le(j,Y),options:I.value[s.name]||[],loading:W.value[s.name],placeholder:s.title||"请选择"})}default:return E}}function $(){const s=[];for(const g of Object.values(O.value))g&&g.length>0&&s.push(...g);return s}function q(s){return s.minWidth!=null?s.minWidth:be(s)==="bool"?ea:120}function Q(s){return s&&s.length>0?s:null}function oe(s,g){return JSON.stringify(s??null)===JSON.stringify(g??null)}function J(s,g){const E=Q(g),B=O.value[s]??null;return oe(B,E)?!1:(E===null?delete O.value[s]:O.value[s]=E,!0)}function fe(s,g){J(s,g)&&De()}function le(s,g){J(s,g)&&De(),pe()}function De(){i("filter-change",$())}function pe(){i("filter-commit",$())}function Ve(s){return s==null||s===""}function ke(s){return String(s??"").trim().toLowerCase()}function F(s){return ke(s).replace(/^%+|%+$/g,"")}function Ce(s){if(typeof s=="number")return Number.isFinite(s)?s:null;if(typeof s=="string"){const g=s.replace(/,/g,"").trim();if(!g)return null;const E=Number(g);return Number.isFinite(E)?E:null}return null}function G(s){if(s instanceof Date){const g=s.getTime();return Number.isFinite(g)?g:null}if(typeof s=="string"&&/\d{4}-\d{1,2}-\d{1,2}/.test(s)){const g=Date.parse(s.replace(" ","T"));return Number.isFinite(g)?g:null}return null}function he(s,g){const E=Ce(s),B=Ce(g);if(E!==null&&B!==null)return E-B;const L=G(s),j=G(g);return L!==null&&j!==null?L-j:ke(s).localeCompare(ke(g),"zh-CN",{numeric:!0,sensitivity:"base"})}function Ge(s,g){const E=Array.isArray(g.value)?g.value:[],[B,L]=E,j=g.op;if(!Ve(B)){const Y=he(s,B);if(j==="()"||j==="(]"?Y<=0:Y<0)return!1}if(!Ve(L)){const Y=he(s,L);if(j==="[]"||j==="(]"?Y>0:Y>=0)return!1}return!0}function Ie(s,g){if(!g.field||Ve(g.value)||!(g.field in s))return!0;const E=s[g.field];if(Ve(E))return!1;switch(g.op){case"=":return he(E,g.value)===0;case"!=":case"<>":return he(E,g.value)!==0;case">":return he(E,g.value)>0;case">=":return he(E,g.value)>=0;case"<":return he(E,g.value)<0;case"<=":return he(E,g.value)<=0;case"[]":case"[)":case"(]":case"()":return Ge(E,g);case"in":return(Array.isArray(g.value)?g.value:[g.value]).some(L=>he(E,L)===0);case"right_like":return ke(E).startsWith(F(g.value));case"left_like":return ke(E).endsWith(F(g.value));case"like":default:return ke(E).includes(F(g.value))}}const Ke=e.computed(()=>{if(!o.localFilter)return o.data;const s=$();return s.length===0?o.data:o.data.filter(g=>s.every(E=>Ie(g,E)))});function He(s,g){var B;if(s.customFormatter)return s.customFormatter(g);if(s.dictItems&&s.dictItems.length>0){const L=new Map(s.dictItems.map(j=>[String(j.value),j.label]));return g==null?"":L.get(String(g))??String(g)}switch((B=s.type)==null?void 0:B.toUpperCase()){case"MONEY":case"NUMBER":case"BIGDECIMAL":return g==null?"":typeof g=="number"?g.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2}):String(g);case"INTEGER":case"BIGINT":case"LONG":return g==null?"":typeof g=="number"?g.toLocaleString("zh-CN"):String(g);case"DAY":case"DATE":return g?String(g).split("T")[0]:"";case"DATETIME":return g?String(g).replace("T"," ").substring(0,19):"";case"BOOL":case"BOOLEAN":return g===!0?"是":g===!1?"否":"";default:return g==null?"":String(g)}}function A(s){var B;const g=({cellValue:L})=>He(s,L),E=(B=s.type)==null?void 0:B.toUpperCase();if(E==="DATETIME")return{minWidth:160,formatter:g};if(s.customFormatter||s.dictItems&&s.dictItems.length>0)return{formatter:g};switch(E){case"MONEY":case"NUMBER":case"BIGDECIMAL":case"INTEGER":case"BIGINT":case"LONG":case"DAY":case"DATE":case"BOOL":case"BOOLEAN":return{formatter:g};default:return{}}}function _e(s){return s==null?"":["string","number","boolean","bigint"].includes(typeof s)?String(s):""}function ge(s,g){var B;return s.name==="_actions"||!(s.copyable??((B=o.cellCopy)==null?void 0:B.enabled)!==!1)?!1:_e(g)!==""}function ve(s,g){var E;return((E=c.value)==null?void 0:E.row)===s&&c.value.field===g}function Ne(s){s.preventDefault(),s.stopPropagation()}async function ze(s){var E;if((E=navigator.clipboard)!=null&&E.writeText){await navigator.clipboard.writeText(s);return}const g=document.createElement("textarea");g.value=s,g.setAttribute("readonly","readonly"),g.style.position="fixed",g.style.top="0",g.style.left="-9999px",g.style.opacity="0",document.body.appendChild(g),g.select();try{if(!document.execCommand("copy"))throw new Error("document.execCommand copy returned false")}finally{document.body.removeChild(g)}}async function ct(s,g){Ne(s);const E=_e(g);if(E)try{await ze(E)}catch(B){console.warn("Failed to copy cell value:",B),X.ElMessage.warning("复制失败,请手动复制")}}function Vt(){return e.h("svg",{class:"cell-copy-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},[e.h("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),e.h("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})])}function kt(){return e.h("svg",{class:"column-help-svg",style:{display:"block",width:"14px",height:"14px"},viewBox:"0 0 16 16",width:"14",height:"14",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},[e.h("circle",{cx:"8",cy:"8",r:"7",fill:"#18a058"}),e.h("path",{d:"M5.85 6.15A2.2 2.2 0 0 1 8.1 4.2c1.25 0 2.15.76 2.15 1.86 0 .8-.43 1.25-1.14 1.78-.65.48-.86.77-.86 1.46",stroke:"#fff","stroke-width":"1.35","stroke-linecap":"round","stroke-linejoin":"round"}),e.h("circle",{cx:"8.25",cy:"11.55",r:"0.72",fill:"#fff"})])}function qe(s){s.preventDefault(),s.stopPropagation()}function u(s,g){const E=x.value.field===s&&x.value.order===g;x.value.field=E?null:s,x.value.order=E?null:g,i("sort-change",x.value.field,x.value.order)}function _(s,g,E,B){const L="#409eff",j="#909399",Y=B==="asc",Ee=E===B,Xe=Y?0:12,Ci=Y?"M6 4 1 10h10L6 4z":"M18 10 13 4h10L18 10z";return e.h("g",{class:["sort-arrow-control",`sort-arrow-control-${B}`,Ee?"active":""],role:"button",tabindex:0,"aria-label":`${g}${Y?"升序":"降序"}排序`,style:{cursor:"pointer"},onClick:Je=>{qe(Je),u(s,B)},onMousedown:qe,onKeydown:Je=>{(Je.key==="Enter"||Je.key===" ")&&(qe(Je),u(s,B))}},[e.h("rect",{class:["sort-arrow-hitbox",`sort-arrow-hitbox-${B}`],x:Xe,y:0,width:12,height:14,fill:"transparent"}),e.h("path",{class:["sort-arrow",`sort-arrow-${B}`,Ee?"active":""],d:Ci,fill:Ee?L:j,"pointer-events":"none"})])}function U(s,g,E){return e.h("span",{class:["sort-icon","sort-icon-horizontal",E?`sort-${E}`:"sort-none"],style:{display:"inline-flex",flex:"0 0 auto",alignItems:"center",justifyContent:"center",width:"26px",height:"16px",marginLeft:"auto",lineHeight:"1"},"aria-hidden":"true"},[e.h("svg",{class:"sort-icon-svg",style:{display:"block",width:"24px",height:"14px",overflow:"visible"},viewBox:"0 0 24 14",width:"24",height:"14",xmlns:"http://www.w3.org/2000/svg",focusable:"false"},[_(s,g,E,"asc"),_(s,g,E,"desc")])])}function ae(s,g){const E=g[s.name],B=He(s,E),L=B||void 0;return ge(s,E)?e.h("div",{class:"data-table-copyable-cell",title:L,style:{position:"relative",display:"flex",alignItems:"center",width:"100%",minWidth:"0",maxWidth:"100%",boxSizing:"border-box",paddingRight:"24px"},onMouseenter:()=>{c.value={row:g,field:s.name}},onMouseleave:()=>{ve(g,s.name)&&(c.value=null)}},[e.h("span",{class:"data-table-cell-text"},B),ve(g,s.name)&&e.h("button",{type:"button",class:"cell-copy-button",title:"复制","aria-label":"复制单元格内容",style:{position:"absolute",top:"50%",right:"2px",zIndex:"2",display:"inline-flex",alignItems:"center",justifyContent:"center",width:"18px",height:"18px",minWidth:"18px",maxWidth:"18px",padding:"0",lineHeight:"1",boxSizing:"border-box",transform:"translateY(-50%)"},onMousedown:Ne,onPointerdown:Ne,onClick:Y=>ct(Y,E)},[Vt()])]):e.h("span",{class:"data-table-cell-text",title:L},B)}const ye=e.computed(()=>{const s=x.value,g={type:"checkbox",width:50,fixed:"left"},E=o.columns.map(B=>{const L={field:B.name,title:B.title||B.name,width:B.width,minWidth:q(B),fixed:B.fixed,sortable:!1,...A(B),slots:{header:()=>{const Y=s.field===B.name?s.order:null,Ee=K(B);return e.h("div",{class:"column-header-wrapper",style:{display:"flex",flexDirection:"column",width:"100%",padding:o.density==="compact"?"1px 0":"2px 0",height:o.density==="compact"?"45px":"46px",maxHeight:o.density==="compact"?"45px":"46px",overflow:"hidden"}},[e.h("div",{class:"column-title",style:{display:"flex",alignItems:"center",width:"100%",boxSizing:"border-box",fontWeight:"600",marginBottom:o.density==="compact"?"2px":"3px",cursor:"default",userSelect:"none",lineHeight:"1.2",minHeight:o.density==="compact"?"15px":"16px",minWidth:"0",gap:"3px"}},[e.h("span",{class:"title-text",style:{flex:"0 1 auto",minWidth:"0",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:"13px"}},B.title||B.name),Ee&&e.h(X.ElTooltip,{content:Ee,placement:"top",showAfter:120,teleported:!0},{default:()=>e.h("span",{class:"column-help-icon",style:{display:"inline-flex",flex:"0 0 auto",alignItems:"center",justifyContent:"center",width:"14px",height:"14px",lineHeight:"1",cursor:"help"},title:Ee,"aria-label":Ee,role:"img",onClick:Xe=>Xe.stopPropagation(),onMousedown:Xe=>Xe.stopPropagation()},[kt()])}),U(B.name,B.title||B.name,Y)]),o.showFilters&&e.h("div",{class:"column-filter"},[Fe(B)])])}}},j=`column-${B.name}`;return h[j]?L.slots={...L.slots,default:({row:Y})=>h[j]({row:Y,column:B,value:Y[B.name]})}:B.customRender?L.slots={...L.slots,default:({row:Y})=>B.customRender({row:Y,value:Y[B.name],column:B})}:L.slots={...L.slots,default:({row:Y})=>ae(B,Y)},L});return[g,...E]});function Fe(s){const g=`filter-${s.name}`;if(h[g])return h[g]({column:s,field:s.name,modelValue:O.value[s.name]||null,onChange:L=>fe(s.name,L),onCommit:L=>le(s.name,L)});const E=w(s),B=v(s);return e.h(E,B)}const Te=e.computed(()=>{const s=Object.keys(l).filter(E=>!E.startsWith("on")).reduce((E,B)=>({...E,[B]:l[B]}),{});return{...{size:"small",border:!0,stripe:!0,showOverflow:!0,height:"100%",loading:y.visible.value,columnConfig:{resizable:!0},rowConfig:{isHover:!0},checkboxConfig:{highlight:!0,trigger:"cell"},showFooter:!0,footerData:te.value,headerRowClassName:o.showFilters?"header-with-filter":"",pagerConfig:{enabled:!1},sortConfig:{remote:!0},columns:ye.value,data:Ke.value},...s}}),je=e.computed(()=>{const s={};Object.keys(l).forEach(L=>{if(L.startsWith("on")){const j=L.slice(2,3).toLowerCase()+L.slice(3);s[j]=l[L]}});const g=(L,j)=>(...Y)=>{L(...Y),s[j]&&s[j](...Y)},B={...{pageChange:g(({currentPage:L,pageSize:j})=>{M.value.currentPage=L,M.value.pageSize=j,i("page-change",L,j)},"pageChange"),cellClick:g(({row:L,column:j})=>{const Y=o.columns.find(Ee=>Ee.name===j.field);Y&&i("row-click",L,Y)},"cellClick"),cellDblclick:g(({row:L,column:j})=>{const Y=o.columns.find(Ee=>Ee.name===j.field);Y&&i("row-dblclick",L,Y)},"cellDblclick"),checkboxChange:g(L=>{ue(L),i("checkbox-change",L.records)},"checkboxChange"),checkboxAll:g(L=>{de(L),i("checkbox-all",L.records)},"checkboxAll")}};return Object.keys(s).forEach(L=>{B[L]||(B[L]=s[L])}),B});function Ye({currentPage:s,pageSize:g}){M.value.currentPage=s,M.value.pageSize=g,i("page-change",s,g)}function ee(){M.value.currentPage=1}function xe(){O.value={},De(),pe()}return a({resetPagination:ee,clearFilters:xe,getFilters:$,setFilter:fe,getGridInstance:()=>r.value,getSelectedRows:()=>ie.value,getSelectedCount:()=>S(),clearSelection:me}),e.provide("dataTableContext",{columns:e.computed(()=>o.columns),filters:O,updateFilter:fe,commitFilter:le}),(s,g)=>{const E=e.resolveComponent("vxe-pager"),B=e.resolveComponent("vxe-grid");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(m.value)},[o.showPager||s.$slots.toolbar||s.$slots["toolbar-right"]?(e.openBlock(),e.createElementBlock("div",jn,[e.createElementVNode("div",Yn,[e.renderSlot(s.$slots,"toolbar",{},void 0,!0)]),o.showPager||s.$slots["toolbar-right"]?(e.openBlock(),e.createElementBlock("div",Gn,[e.renderSlot(s.$slots,"toolbar-right",{},void 0,!0),V.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["data-table-query-status",{"is-visible":C.value,"is-error":k.value}]),"aria-live":"polite"},[k.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",Kn)),e.createElementVNode("span",Xn,e.toDisplayString(b.value),1)],2)):e.createCommentVNode("",!0),o.showPager?(e.openBlock(),e.createBlock(E,{key:1,"current-page":M.value.currentPage,"page-size":M.value.pageSize,total:M.value.total,"page-sizes":[20,50,100,200],layouts:["PrevPage","JumpNumber","NextPage","Sizes","Total"],onPageChange:Ye},null,8,["current-page","page-size","total"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Jn,[R.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["data-table-progress-line",{"is-visible":H.value}]),"aria-hidden":"true"},null,2)):e.createCommentVNode("",!0),e.createVNode(B,e.mergeProps({ref_key:"gridRef",ref:r},Te.value,e.toHandlers(je.value)),{empty:e.withCtx(()=>[e.renderSlot(s.$slots,"empty",{},()=>[g[0]||(g[0]=e.createElementVNode("div",{class:"empty-data"},"暂无数据",-1))],!0)]),_:3},16)]),s.$slots.footer?(e.openBlock(),e.createElementBlock("div",Zn,[e.renderSlot(s.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2)}}}),[["__scopeId","data-v-0ae47cd3"]]),$e=Ze.create({baseURL:"/data-viewer/api",timeout:3e4,headers:{"Content-Type":"application/json"}});async function ta(t){var n,l;const a=await $e.post("/query/create",t);if(!a.data||a.data.code!==200){if((n=a.data)!=null&&n.data)return a.data.data;throw new Error(((l=a.data)==null?void 0:l.msg)||"创建查询失败")}return a.data.data}async function St(t,a){var l;const n=await $e.get(`/query/${encodeURIComponent(t)}/${a}/meta`);if(!n.data||n.data.code!==200)throw new Error(((l=n.data)==null?void 0:l.msg)||"获取查询元数据失败");return n.data.data}async function Bt(t,a,n){var o,i,h;const l=await $e.post(`/query/${encodeURIComponent(t)}/${a}/data`,n);if(!l.data||l.data.code!==200){if((i=(o=l.data)==null?void 0:o.data)!=null&&i.expired)return l.data.data;throw new Error(((h=l.data)==null?void 0:h.msg)||"查询数据失败")}return l.data.data}async function Mt(t,a,n){return(await $e.get(`/query/${encodeURIComponent(t)}/${a}/filter-options/${encodeURIComponent(n)}`)).data}async function Dt(t){var o;const a=await $e.get(`/schema/${encodeURIComponent(t)}`);if(!a.data||a.data.code!==200)throw new Error(((o=a.data)==null?void 0:o.msg)||"获取 QM Schema 失败");const n=a.data.data;if(!n||!n.fields)return[];const l=[];for(const[i,h]of Object.entries(n.fields)){const r=h;l.push({name:i,title:r.name||i,type:r.type||"TEXT",filterable:r.filterable!==!1,aggregatable:r.aggregatable||!1,measure:r.measure||!1,filterType:r.filterType,dictId:r.dictId,dictItems:r.dictItems,format:r.format})}return l}function na(t){if(!t)return[];const a=new Set;return t.flatMap(n=>{const l=n.trim();return!l||l==="_actions"||a.has(l)?[]:(a.add(l),[l])})}async function aa(t,a){var o;const n=na(a.columns);if(n.length===0)throw new Error(`${t} direct query requires non-empty business columns`);const l=await $e.post(`/query/direct/${encodeURIComponent(t)}`,{...a,columns:n});if(!l.data||l.data.code!==200)throw new Error(((o=l.data)==null?void 0:o.msg)||"查询数据失败");return l.data.data}async function oa(t){var n;const a=await $e.get(`/frontend-meta/${encodeURIComponent(t)}`);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"获取前端元数据失败");return a.data.data}async function la(t){var n;const a=await $e.post("/members/query",t);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"查询维度成员失败");return a.data.data}$e.interceptors.response.use(t=>t,t=>{var a,n;return((a=t.response)==null?void 0:a.status)===410?Promise.reject(new Error("查询链接已过期,请重新获取")):((n=t.response)==null?void 0:n.status)===404?Promise.reject(new Error("查询不存在")):Promise.reject(t)});function vt(t,a){const h=t.length*14+30+24;return Math.max(h,{INTEGER:100,LONG:120,MONEY:120,NUMBER:120,DATETIME:180,DAY:120,TEXT:150,STRING:150,BOOL:88,BOOLEAN:88,DICT:120}[a]||120)}function Tt(t,a){var h;const n=new Map(t.map(r=>[r.name,r])),l=new Map(((h=a.customizations)==null?void 0:h.map(r=>[r.name,r]))||[]);return(a.showAll||!a.visibleColumns||a.visibleColumns.length===0?t.map(r=>r.name):a.visibleColumns).map(r=>{var b;const c=n.get(r);if(!c)return console.warn(`Column "${r}" not found in QM schema`),null;const m=l.get(r),y=(m==null?void 0:m.width)||c.width||vt(c.title||c.name,c.type);return{...c,width:y,minWidth:(m==null?void 0:m.minWidth)??(["BOOL","BOOLEAN"].includes((b=c.type)==null?void 0:b.toUpperCase())?88:120),fixed:m==null?void 0:m.fixed,filterable:c.filterable??!0,customRender:m==null?void 0:m.render,customFilterComponent:m==null?void 0:m.filterComponent,customFormatter:m==null?void 0:m.formatter}}).filter(r=>r!==null)}const ra={class:"data-viewer"},ia={class:"viewer-header"},sa={class:"viewer-title"},ca={class:"viewer-info"},da={key:0,class:"info-item"},ua={key:1,class:"info-item"},ma={key:2,class:"info-item"},fa=["disabled"],pa={key:0,class:"viewer-expired"},ha={key:1,class:"viewer-error"},ga={class:"error-content"},ya={key:2,class:"viewer-main"},wa=re(e.defineComponent({__name:"DataViewer",props:{queryId:{},model:{}},setup(t){const a=t,n=e.ref(!1),l=e.ref(null),o=e.ref(!1),i=e.ref(null),h=e.ref([]),r=e.ref([]),c=e.ref([]),m=e.ref(0),y=e.ref(null),p=e.ref({start:0,limit:50,slice:[],orderBy:[]}),b=e.ref(),k=e.computed(()=>{var M;return((M=i.value)==null?void 0:M.title)||"数据浏览器"}),d=e.computed(()=>{var M;return(M=i.value)!=null&&M.expiresAt?new Date(i.value.expiresAt).toLocaleString("zh-CN"):""});async function V(){try{n.value=!0,l.value=null,i.value=await St(a.model,a.queryId),i.value.tableConfig.qmModel&&(h.value=await Dt(i.value.tableConfig.qmModel),r.value=Tt(h.value,i.value.tableConfig))}catch(M){l.value=M instanceof Error?M.message:"加载元数据失败"}finally{n.value=!1}}async function C(){if(i.value)try{n.value=!0,l.value=null;const M=await Bt(a.model,a.queryId,p.value);if(M.expired){o.value=!0,l.value=M.errorMessage||"查询已过期";return}if(!M.success){l.value=M.errorMessage||"查询失败";return}c.value=M.items,m.value=M.total,y.value=M.totalData??null}catch(M){l.value=M instanceof Error?M.message:"加载数据失败"}finally{n.value=!1}}function R(M,x){p.value.start=(M-1)*x,p.value.limit=x,C()}function H(M,x){M&&x?p.value.orderBy=[{field:M,dir:x}]:p.value.orderBy=[],C()}function N(M){var x;p.value.slice=M,p.value.start=0,(x=b.value)==null||x.resetPagination(),C()}async function D(M){try{return(await Mt(a.model,a.queryId,M)).options||[]}catch(x){return console.error("Failed to load filter options:",x),[]}}function K(){C()}return e.onMounted(async()=>{await V(),i.value&&(i.value.initialSlice&&i.value.initialSlice.length>0&&(p.value.slice=i.value.initialSlice),await C())}),(M,x)=>{var O,I,W,Z;return e.openBlock(),e.createElementBlock("div",ra,[e.createElementVNode("header",ia,[e.createElementVNode("h1",sa,e.toDisplayString(k.value),1),e.createElementVNode("div",ca,[(I=(O=i.value)==null?void 0:O.tableConfig)!=null&&I.qmModel?(e.openBlock(),e.createElementBlock("span",da,[x[0]||(x[0]=e.createTextVNode(" 模型: ",-1)),e.createElementVNode("strong",null,e.toDisplayString(i.value.tableConfig.qmModel),1)])):e.createCommentVNode("",!0),(W=i.value)!=null&&W.estimatedRowCount?(e.openBlock(),e.createElementBlock("span",ua,[x[1]||(x[1]=e.createTextVNode(" 预估行数: ",-1)),e.createElementVNode("strong",null,e.toDisplayString(i.value.estimatedRowCount.toLocaleString()),1)])):e.createCommentVNode("",!0),d.value?(e.openBlock(),e.createElementBlock("span",ma,[x[2]||(x[2]=e.createTextVNode(" 过期时间: ",-1)),e.createElementVNode("strong",null,e.toDisplayString(d.value),1)])):e.createCommentVNode("",!0),e.createElementVNode("button",{class:"refresh-btn",onClick:K,disabled:n.value}," 刷新 ",8,fa)])]),o.value?(e.openBlock(),e.createElementBlock("div",pa,[...x[3]||(x[3]=[e.createElementVNode("div",{class:"expired-content"},[e.createElementVNode("h2",null,"链接已过期"),e.createElementVNode("p",null,"请联系AI助手重新生成查询链接")],-1)])])):l.value&&!c.value.length?(e.openBlock(),e.createElementBlock("div",ha,[e.createElementVNode("div",ga,[x[4]||(x[4]=e.createElementVNode("h2",null,"加载失败",-1)),e.createElementVNode("p",null,e.toDisplayString(l.value),1),e.createElementVNode("button",{onClick:C},"重试")])])):(e.openBlock(),e.createElementBlock("main",ya,[e.createVNode(mt,{ref_key:"dataTableRef",ref:b,columns:r.value,data:c.value,total:m.value,loading:n.value,"initial-slice":(Z=i.value)==null?void 0:Z.initialSlice,"filter-options-loader":D,"server-summary":y.value,onPageChange:R,onSortChange:H,onFilterChange:N},null,8,["columns","data","total","loading","initial-slice","server-summary"])])),x[5]||(x[5]=e.createElementVNode("footer",{class:"viewer-footer"},[e.createElementVNode("span",null,"Foggy Data Viewer")],-1))])}}}),[["__scopeId","data-v-93bc84c9"]]),ba={class:"search-fields"},Va={class:"field-label"},ka={class:"field-filter"},Ca={key:0,class:"search-actions"},$t=re(e.defineComponent({__name:"SearchToolbar",props:{columns:{},searchableFields:{},modelValue:{},layout:{default:"horizontal"},showActions:{type:Boolean,default:!0},filterOptionsLoader:{},filterMemberLoader:{},qmModel:{}},emits:["update:modelValue","search","reset"],setup(t,{expose:a,emit:n}){const l=t,o=n,i=e.ref({}),h=e.computed(()=>{let d=l.columns.filter(V=>V.filterable!==!1);return l.searchableFields&&l.searchableFields.length>0&&(d=d.filter(V=>l.searchableFields.includes(V.name))),d});e.watch(()=>l.modelValue,d=>{if(!d||d.length===0){i.value={};return}const V={};for(const C of d)C.field&&(V[C.field]||(V[C.field]=[]),V[C.field].push(C));i.value=V},{immediate:!0});function r(d){var C;const V=(C=d.type)==null?void 0:C.toUpperCase();switch(V){case"DAY":case"DATE":return"date";case"DATETIME":return"datetime"}if(d.dictId)return"dict";if(d.filterType)return d.filterType;switch(V){case"NUMBER":case"MONEY":case"BIGDECIMAL":case"INTEGER":case"BIGINT":case"LONG":return"number";case"BOOL":case"BOOLEAN":return"bool";case"DICT":return"dict";default:return"text"}}function c(d){if(d.customFilterComponent)return d.customFilterComponent;switch(r(d)){case"text":return Re;case"number":return et;case"date":return Qe;case"datetime":return Qe;case"dict":return Le;case"dimension":return Le;case"bool":return tt;default:return Re}}function m(d){const V=r(d),C={field:d.name,modelValue:i.value[d.name]||null,"onUpdate:modelValue":R=>y(d.name,R)};switch(V){case"datetime":return{...C,showTime:!0,format:d.format};case"date":return{...C,format:d.format};case"dict":return{...C,options:d.dictItems||[],placeholder:`请选择${d.title||d.name}`};case"dimension":{const R=!!l.filterMemberLoader&&!!l.qmModel,H=d.memberLookup,N=H==null?void 0:H.selectionFieldName;return R&&(H!=null&&H.enabled)?{...C,selectionField:N||d.name,remoteLoader:l.filterMemberLoader,qmModel:l.qmModel,options:[],placeholder:`请选择${d.title||d.name}`}:{...C,options:[],loading:!1,placeholder:`请选择${d.title||d.name}`}}default:return{...C,placeholder:`搜索${d.title||d.name}...`}}}function y(d,V){V===null||V.length===0?delete i.value[d]:i.value[d]=V,p()}function p(){const d=[];for(const V of Object.values(i.value))V&&V.length>0&&d.push(...V);o("update:modelValue",d)}function b(){p(),o("search")}function k(){i.value={},o("update:modelValue",[]),o("reset")}return a({clearFilters:k,getFilters:()=>{const d=[];for(const V of Object.values(i.value))V&&V.length>0&&d.push(...V);return d}}),(d,V)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["search-toolbar",`layout-${t.layout}`])},[e.createElementVNode("div",ba,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,C=>(e.openBlock(),e.createElementBlock("div",{key:C.name,class:"search-field-item"},[e.createElementVNode("label",Va,e.toDisplayString(C.title||C.name),1),e.createElementVNode("div",ka,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c(C)),e.mergeProps({ref_for:!0},m(C)),null,16))])]))),128))]),t.showActions?(e.openBlock(),e.createElementBlock("div",Ca,[e.createElementVNode("button",{class:"btn btn-primary",onClick:b},[...V[0]||(V[0]=[e.createElementVNode("span",{class:"btn-icon"},"🔍",-1),e.createTextVNode(" 搜索 ",-1)])]),e.createElementVNode("button",{class:"btn btn-default",onClick:k},[...V[1]||(V[1]=[e.createElementVNode("span",{class:"btn-icon"},"↻",-1),e.createTextVNode(" 重置 ",-1)])])])):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-0969ff1d"]]),_a={class:"query-panel"},Na={class:"field-control"},Pt=re(e.defineComponent({__name:"QueryPanel",props:{schema:{},modelValue:{},filterMemberLoader:{},qmModel:{}},emits:["update:modelValue","search","reset"],setup(t,{expose:a,emit:n}){const l=t,o=n,i=e.ref({}),h=e.computed(()=>l.schema.fields.filter(N=>N.placement==="form"&&N.visible!==!1).sort((N,D)=>(N.order??99)-(D.order??99))),r=e.computed(()=>l.schema.layout??{}),c=e.computed(()=>r.value.columns??{xs:1,sm:2,md:3,lg:4,xl:4}),m=e.computed(()=>r.value.labelWidth??100),y=e.computed(()=>r.value.gutter??16),p=e.computed(()=>h.value);e.watch(()=>l.modelValue,N=>{if(!N||N.length===0){i.value={};return}const D={};for(const K of N){if(!K.field)continue;const M=h.value.find(x=>x.sourceField===K.field||x.key===K.field);M&&(D[M.key]||(D[M.key]=[]),D[M.key].push(K))}i.value=D},{immediate:!0});function b(N){switch(N.component){case"text":return Re;case"numberRange":return et;case"dateRange":return Qe;case"dictSelect":return Le;case"memberSelect":return Le;case"qmLookupSelect":return Le;case"bool":return tt;default:return Re}}function k(N){return N.sourceField||N.key}function d(N){return N.lookupRef||N.key}function V(N){const D={field:k(N),modelValue:i.value[N.key]||null,"onUpdate:modelValue":K=>C(N.key,K)};switch(N.component){case"dateRange":return{...D,showTime:!0};case"dictSelect":return{...D,options:[],dictId:N.dictId,placeholder:`请选择${N.label}`};case"memberSelect":case"qmLookupSelect":return{...D,field:d(N),selectionField:k(N),remoteLoader:l.filterMemberLoader,qmModel:l.qmModel,options:[],placeholder:`请选择${N.label}`};default:return{...D,placeholder:`请输入${N.label}`}}}function C(N,D){D===null||D.length===0?delete i.value[N]:i.value[N]=D}function R(){const N=[];for(const D of Object.values(i.value))D&&D.length>0&&N.push(...D);o("update:modelValue",N),o("search")}function H(){i.value={},o("update:modelValue",[]),o("reset")}return a({search:R,reset:H,getSlices:()=>{const N=[];for(const D of Object.values(i.value))D&&D.length>0&&N.push(...D);return N}}),(N,D)=>(e.openBlock(),e.createElementBlock("div",_a,[e.createElementVNode("div",{class:"query-fields",style:e.normalizeStyle({display:"grid",gridTemplateColumns:`repeat(${c.value.lg}, 1fr)`,gap:`${y.value}px`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,K=>(e.openBlock(),e.createElementBlock("div",{key:K.key,class:"query-field-item",style:e.normalizeStyle({gridColumn:`span ${K.span||1}`})},[e.createElementVNode("label",{class:"field-label",style:e.normalizeStyle({width:`${m.value}px`})},e.toDisplayString(K.label),5),e.createElementVNode("div",Na,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b(K)),e.mergeProps({ref_for:!0},V(K)),null,16))])],4))),128)),e.createElementVNode("div",{class:"query-actions"},[e.createElementVNode("button",{class:"btn btn-primary",onClick:R},"查询"),e.createElementVNode("button",{class:"btn btn-default",onClick:H},"重置")])],4)]))}}),[["__scopeId","data-v-2f1dbbcc"]]);/*! Element Plus Icons Vue v2.3.2 */var xa=e.defineComponent({name:"Delete",__name:"delete",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32zm448-64v-64H416v64zM224 896h576V256H224zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32m192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32"})]))}}),at=xa,Ea=e.defineComponent({name:"DocumentAdd",__name:"document-add",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640zm-26.496-64L640 154.496V320zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32m320 512V448h64v128h128v64H544v128h-64V640H352v-64z"})]))}}),Sa=Ea,Ba=e.defineComponent({name:"Filter",__name:"filter",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M384 523.392V928a32 32 0 0 0 46.336 28.608l192-96A32 32 0 0 0 640 832V523.392l280.768-343.104a32 32 0 1 0-49.536-40.576l-288 352A32 32 0 0 0 576 512v300.224l-128 64V512a32 32 0 0 0-7.232-20.288L195.52 192H704a32 32 0 1 0 0-64H128a32 32 0 0 0-24.768 52.288z"})]))}}),Ft=Ba,Ma=e.defineComponent({name:"FolderOpened",__name:"folder-opened",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M878.08 448H241.92l-96 384h636.16zM832 384v-64H485.76L357.504 192H128v448l57.92-231.744A32 32 0 0 1 216.96 384zm-24.96 512H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h287.872l128.384 128H864a32 32 0 0 1 32 32v96h23.04a32 32 0 0 1 31.04 39.744l-112 448A32 32 0 0 1 807.04 896"})]))}}),Da=Ma,va=e.defineComponent({name:"Grid",__name:"grid",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M640 384v256H384V384zm64 0h192v256H704zm-64 512H384V704h256zm64 0V704h192v192zm-64-768v192H384V128zm64 0h192v192H704zM320 384v256H128V384zm0 512H128V704h192zm0-768v192H128V128z"})]))}}),Lt=va,Ta=e.defineComponent({name:"Histogram",__name:"histogram",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M416 896V128h192v768zm-288 0V448h192v448zm576 0V320h192v576z"})]))}}),ft=Ta,$a=e.defineComponent({name:"Loading",__name:"loading",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32m0 640a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V736a32 32 0 0 1 32-32m448-192a32 32 0 0 1-32 32H736a32 32 0 1 1 0-64h192a32 32 0 0 1 32 32m-640 0a32 32 0 0 1-32 32H96a32 32 0 0 1 0-64h192a32 32 0 0 1 32 32M195.2 195.2a32 32 0 0 1 45.248 0L376.32 331.008a32 32 0 0 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248m452.544 452.544a32 32 0 0 1 45.248 0L828.8 783.552a32 32 0 0 1-45.248 45.248L647.744 692.992a32 32 0 0 1 0-45.248M828.8 195.264a32 32 0 0 1 0 45.184L692.992 376.32a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0m-452.544 452.48a32 32 0 0 1 0 45.248L240.448 828.8a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0"})]))}}),pt=$a,Pa=e.defineComponent({name:"Lock",__name:"lock",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96"}),e.createElementVNode("path",{fill:"currentColor",d:"M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32m192-160v-64a192 192 0 1 0-384 0v64zM512 64a256 256 0 0 1 256 256v128H256V320A256 256 0 0 1 512 64"})]))}}),Fa=Pa,La=e.defineComponent({name:"MoreFilled",__name:"more-filled",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M176 416a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224"})]))}}),At=La,Aa=e.defineComponent({name:"OfficeBuilding",__name:"office-building",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M192 128v704h384V128zm-32-64h448a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32"}),e.createElementVNode("path",{fill:"currentColor",d:"M256 256h256v64H256zm0 192h256v64H256zm0 192h256v64H256zm384-128h128v64H640zm0 128h128v64H640zM64 832h896v64H64z"}),e.createElementVNode("path",{fill:"currentColor",d:"M640 384v448h192V384zm-32-64h256a32 32 0 0 1 32 32v512a32 32 0 0 1-32 32H608a32 32 0 0 1-32-32V352a32 32 0 0 1 32-32"})]))}}),ht=Aa,Ia=e.defineComponent({name:"Operation",__name:"operation",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M389.44 768a96.064 96.064 0 0 1 181.12 0H896v64H570.56a96.064 96.064 0 0 1-181.12 0H128v-64zm192-288a96.064 96.064 0 0 1 181.12 0H896v64H762.56a96.064 96.064 0 0 1-181.12 0H128v-64zm-320-288a96.064 96.064 0 0 1 181.12 0H896v64H442.56a96.064 96.064 0 0 1-181.12 0H128v-64z"})]))}}),za=Ia,Ra=e.defineComponent({name:"Plus",__name:"plus",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64z"})]))}}),It=Ra,Oa=e.defineComponent({name:"Refresh",__name:"refresh",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M771.776 794.88A384 384 0 0 1 128 512h64a320 320 0 0 0 555.712 216.448H654.72a32 32 0 1 1 0-64h149.056a32 32 0 0 1 32 32v148.928a32 32 0 1 1-64 0v-50.56zM276.288 295.616h92.992a32 32 0 0 1 0 64H220.16a32 32 0 0 1-32-32V178.56a32 32 0 0 1 64 0v50.56A384 384 0 0 1 896.128 512h-64a320 320 0 0 0-555.776-216.384z"})]))}}),Wa=Oa,Qa=e.defineComponent({name:"Search",__name:"search",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704"})]))}}),gt=Qa,Ua=e.defineComponent({name:"Setting",__name:"setting",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M600.704 64a32 32 0 0 1 30.464 22.208l35.2 109.376c14.784 7.232 28.928 15.36 42.432 24.512l112.384-24.192a32 32 0 0 1 34.432 15.36L944.32 364.8a32 32 0 0 1-4.032 37.504l-77.12 85.12a357 357 0 0 1 0 49.024l77.12 85.248a32 32 0 0 1 4.032 37.504l-88.704 153.6a32 32 0 0 1-34.432 15.296L708.8 803.904c-13.44 9.088-27.648 17.28-42.368 24.512l-35.264 109.376A32 32 0 0 1 600.704 960H423.296a32 32 0 0 1-30.464-22.208L357.696 828.48a352 352 0 0 1-42.56-24.64l-112.32 24.256a32 32 0 0 1-34.432-15.36L79.68 659.2a32 32 0 0 1 4.032-37.504l77.12-85.248a357 357 0 0 1 0-48.896l-77.12-85.248A32 32 0 0 1 79.68 364.8l88.704-153.6a32 32 0 0 1 34.432-15.296l112.32 24.256c13.568-9.152 27.776-17.408 42.56-24.64l35.2-109.312A32 32 0 0 1 423.232 64H600.64zm-23.424 64H446.72l-36.352 113.088-24.512 11.968a294 294 0 0 0-34.816 20.096l-22.656 15.36-116.224-25.088-65.28 113.152 79.68 88.192-1.92 27.136a293 293 0 0 0 0 40.192l1.92 27.136-79.808 88.192 65.344 113.152 116.224-25.024 22.656 15.296a294 294 0 0 0 34.816 20.096l24.512 11.968L446.72 896h130.688l36.48-113.152 24.448-11.904a288 288 0 0 0 34.752-20.096l22.592-15.296 116.288 25.024 65.28-113.152-79.744-88.192 1.92-27.136a293 293 0 0 0 0-40.256l-1.92-27.136 79.808-88.128-65.344-113.152-116.288 24.96-22.592-15.232a288 288 0 0 0-34.752-20.096l-24.448-11.904L577.344 128zM512 320a192 192 0 1 1 0 384 192 192 0 0 1 0-384m0 64a128 128 0 1 0 0 256 128 128 0 0 0 0-256"})]))}}),Ha=Ua,qa=e.defineComponent({name:"Share",__name:"share",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"m679.872 348.8-301.76 188.608a127.8 127.8 0 0 1 5.12 52.16l279.936 104.96a128 128 0 1 1-22.464 59.904l-279.872-104.96a128 128 0 1 1-16.64-166.272l301.696-188.608a128 128 0 1 1 33.92 54.272z"})]))}}),ja=qa,Ya=e.defineComponent({name:"Star",__name:"star",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"m512 747.84 228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"})]))}}),Ga=Ya,Ka=e.defineComponent({name:"User",__name:"user",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M512 512a192 192 0 1 0 0-384 192 192 0 0 0 0 384m0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512m320 320v-96a96 96 0 0 0-96-96H288a96 96 0 0 0-96 96v96a32 32 0 1 1-64 0v-96a160 160 0 0 1 160-160h448a160 160 0 0 1 160 160v96a32 32 0 1 1-64 0"})]))}}),zt=Ka,Xa=e.defineComponent({name:"View",__name:"view",setup(t){return(a,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M512 160c320 0 512 352 512 352S832 864 512 864 0 512 0 512s192-352 512-352m0 64c-225.28 0-384.128 208.064-436.8 288 52.608 79.872 211.456 288 436.8 288 225.28 0 384.128-208.064 436.8-288-52.608-79.872-211.456-288-436.8-288m0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448m0 64a160.19 160.19 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160"})]))}}),Ja=Xa;const Pe=Ze.create({baseURL:"/data-viewer/api/list-preset",timeout:3e4,headers:{"Content-Type":"application/json"}});function Ae(t,a){if(!t||t.code!==200)throw new Error((t==null?void 0:t.msg)||a);return t.data}function ot(t){return t.businessKey?{businessKey:t.businessKey}:{}}function Rt(t){return`/users/${encodeURIComponent(t)}`}function lt(t){return`${Rt(t.userId)}/models/${encodeURIComponent(t.model)}`}function rt(t,a){return`${Rt(t)}/presets/${encodeURIComponent(a)}`}async function Ot(t){const a=await Pe.get(lt(t),{params:ot(t)});return Ae(a.data,"获取自定义列表失败")}async function Wt(t){const a=await Pe.get(`${lt(t)}/default`,{params:ot(t)});return Ae(a.data,"获取默认自定义列表失败")}async function Qt(t,a){const n=await Pe.post(lt(t),a,{params:ot(t)});return Ae(n.data,"保存自定义列表失败")}async function Za(t,a){const n=await Pe.get(rt(t,a));return Ae(n.data,"获取自定义列表详情失败")}async function yt(t,a,n){const l=await Pe.put(rt(t,a),n);return Ae(l.data,"更新自定义列表失败")}async function Ut(t,a){const n=await Pe.delete(rt(t,a));Ae(n.data,"删除自定义列表失败")}async function Ht(t,a){const n=await Pe.post(`${rt(t,a)}/default`);return Ae(n.data,"设置默认自定义列表失败")}async function eo(t){const a=await Pe.delete(`${lt(t)}/default`,{params:ot(t)});Ae(a.data,"清除默认自定义列表失败")}Pe.interceptors.response.use(t=>t,t=>{var a;return Ze.isAxiosError(t)&&((a=t.response)==null?void 0:a.status)===404?Promise.reject(new Error("自定义列表不存在")):Promise.reject(t)});const to={class:"list-preset-manager"},no={class:"preset-layout","data-testid":"list-preset-dialog"},ao={class:"preset-list-section"},oo={class:"preset-toolbar"},lo={key:0,class:"preset-status-bar"},ro={key:0},io={key:1},so={key:0,class:"preset-state"},co={class:"preset-item-main"},uo={class:"preset-title-row"},mo={class:"preset-title"},fo={key:0,class:"preset-description"},po={class:"preset-meta"},ho={class:"preset-actions"},go={class:"preset-save-section"},yo={class:"save-section-header"},wo={"data-testid":"list-preset-title",class:"preset-input-wrapper"},bo={"data-testid":"list-preset-description",class:"preset-input-wrapper"},Vo={class:"column-config-panel"},ko={class:"column-config-header"},Co=["title"],_o={class:"column-order-actions"},No={class:"current-state-summary"},xo={class:"query-summary"},Eo={class:"query-summary"},So={class:"dialog-footer"},wt=re(e.defineComponent({__name:"ListPresetManager",props:{config:{},getState:{type:Function},applyState:{type:Function},reload:{type:Function},availableColumns:{}},setup(t,{expose:a}){const n=t,l=e.ref(!1),o=e.ref(!1),i=e.ref(!1),h=e.ref(""),r=e.ref([]),c=e.ref([]),m=e.ref(null),y=e.ref(null),p=e.ref({title:"",description:"",visibility:"PRIVATE",isDefault:!1,saveQueryConditions:!0}),b=e.computed(()=>n.config.buttonText||"自定义列表"),k=e.computed(()=>n.getState()),d=e.computed(()=>c.value.filter(w=>w.visible)),V=e.computed(()=>r.value.find(w=>w.id===y.value)),C=e.computed(()=>r.value.find(w=>w.isDefault)),R=e.computed(()=>p.value.saveQueryConditions?k.value.slice.slice(0,3).map(w=>{const f=Array.isArray(w.value)?w.value.join(","):w.value;return`${w.field} ${w.op} ${f??""}`.trim()}):[]),H=e.computed(()=>p.value.saveQueryConditions?k.value.orderBy.slice(0,3).map(w=>`${w.field} ${w.dir??w.order}`):[]),N=e.computed(()=>{const w=h.value.trim().toLowerCase();return w?r.value.filter(f=>{var v;return f.title.toLowerCase().includes(w)||((v=f.description)==null?void 0:v.toLowerCase().includes(w))}):r.value});function D(w,f){return w instanceof Error?w.message:f}function K(){M(),l.value=!0}function M(){c.value=x(k.value)}function x(w){const f=n.availableColumns&&n.availableColumns.length>0?n.availableColumns:w.columns.map(Q=>({name:Q,type:"TEXT",title:Q})),v=new Map((w.columnSettings||[]).map(Q=>[Q.name,Q])),$=new Set(w.columns||[]),q=$.size>0;return f.map((Q,oe)=>{const J=v.get(Q.name);return{name:Q.name,title:Q.title,visible:(J==null?void 0:J.visible)??(!q||$.has(Q.name)),width:(J==null?void 0:J.width)??Q.width,minWidth:(J==null?void 0:J.minWidth)??Q.minWidth,fixed:(J==null?void 0:J.fixed)??Q.fixed,order:(J==null?void 0:J.order)??oe}}).sort((Q,oe)=>Q.order-oe.order).map(Q=>({name:Q.name,title:Q.title,visible:Q.visible,width:Q.width,minWidth:Q.minWidth,fixed:Q.fixed}))}function O(w){const f=c.value.length>0?c.value:x(w),v=p.value.saveQueryConditions;return{columns:f.filter($=>$.visible).map($=>$.name),columnSettings:f.map(($,q)=>({name:$.name,visible:$.visible,width:$.width,minWidth:$.minWidth,fixed:$.fixed,order:q})),slice:v?w.slice:[],orderBy:v?w.orderBy:[],pageSize:w.pageSize}}function I(){return!n.availableColumns||n.availableColumns.length===0?null:new Set(n.availableColumns.map(w=>w.name))}function W(w){const f=I();return f?[...new Set([...w.columns,...(w.columnSettings||[]).map($=>$.name)])].filter($=>!f.has($)):[]}function Z(w){return w.columns.length>0?!0:(X.ElMessage.warning("请至少保留一个显示字段"),!1)}function ie(w,f){const v=w+f;if(v<0||v>=c.value.length)return;const $=c.value.slice(),q=$[w],Q=$[v];!q||!Q||($[w]=Q,$[v]=q,c.value=$)}function ue(){m.value=null,p.value={title:"",description:"",visibility:"PRIVATE",isDefault:!1,saveQueryConditions:!0}}async function de(){o.value=!0;try{r.value=await Ot({userId:n.config.userId,model:n.config.model,businessKey:n.config.businessKey})}catch(w){X.ElMessage.error(D(w,"加载自定义列表失败"))}finally{o.value=!1}}async function P(w){var v,$,q;const f=W(w);y.value=w.id,n.applyState({columns:w.columns,columnSettings:w.columnSettings,slice:((v=w.query)==null?void 0:v.slice)||[],orderBy:(($=w.query)==null?void 0:$.orderBy)||[],pageSize:w.pageSize}),await((q=n.reload)==null?void 0:q.call(n)),l.value=!1,f.length>0&&X.ElMessage.warning(`已忽略失效字段: ${f.slice(0,3).join("、")}${f.length>3?"...":""}`),X.ElMessage.success(`已应用: ${w.title}`)}function S(w){m.value=w.id,p.value={title:w.title,description:w.description||"",visibility:w.visibility,isDefault:!!w.isDefault,saveQueryConditions:!0}}function z(){ue()}async function ne(){const w=p.value.title.trim();if(!w){X.ElMessage.warning("请输入列表名称");return}const f=O(k.value);if(Z(f)){i.value=!0;try{const v=!!m.value,$={title:w,description:p.value.description.trim()||void 0,columns:f.columns,columnSettings:f.columnSettings,query:{slice:f.slice,orderBy:f.orderBy},pageSize:f.pageSize,visibility:p.value.visibility,isDefault:p.value.isDefault},q=v&&m.value?await yt(n.config.userId,m.value,$):await Qt({userId:n.config.userId,model:n.config.model,businessKey:n.config.businessKey},$);r.value=[q,...r.value.filter(Q=>Q.id!==q.id)],q.isDefault&&(r.value=r.value.map(Q=>({...Q,isDefault:Q.id===q.id}))),ue(),X.ElMessage.success(v?"自定义列表已更新":"自定义列表已保存")}catch(v){X.ElMessage.error(D(v,m.value?"更新自定义列表失败":"保存自定义列表失败"))}finally{i.value=!1}}}async function se(w){const f=O(k.value);if(Z(f)){i.value=!0;try{const v=await yt(n.config.userId,w.id,{title:w.title,description:w.description,columns:f.columns,columnSettings:f.columnSettings,query:{slice:f.slice,orderBy:f.orderBy},pageSize:f.pageSize,visibility:w.visibility,isDefault:w.isDefault});r.value=r.value.map($=>$.id===v.id?v:$),v.isDefault&&(r.value=r.value.map($=>({...$,isDefault:$.id===v.id}))),X.ElMessage.success("已覆盖自定义列表")}catch(v){X.ElMessage.error(D(v,"覆盖自定义列表失败"))}finally{i.value=!1}}}async function we(w){try{const f=await Ht(n.config.userId,w.id);r.value=r.value.map(v=>({...v,isDefault:v.id===f.id})),X.ElMessage.success("默认列表已更新")}catch(f){X.ElMessage.error(D(f,"设置默认列表失败"))}}async function te(w){try{await X.ElMessageBox.confirm(`确定删除"${w.title}"吗?`,"删除确认",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning",confirmButtonClass:"el-button--danger"}),await Ut(n.config.userId,w.id),r.value=r.value.filter(f=>f.id!==w.id),m.value===w.id&&ue(),y.value===w.id&&(y.value=null),X.ElMessage.success("自定义列表已删除")}catch(f){f!=="cancel"&&X.ElMessage.error(D(f,"删除自定义列表失败"))}}function me(w){switch(w){case"DEPARTMENT":return"部门";case"TENANT":return"租户";case"PRIVATE":default:return"仅自己"}}function Me(w){switch(w){case"DEPARTMENT":return"warning";case"TENANT":return"success";case"PRIVATE":default:return"info"}}function be(w){if(!w)return"";const f=new Date(w);return Number.isNaN(f.getTime())?w:f.toLocaleString()}return a({applyPreset:P,cancelEdit:z,loadPresets:de,openDialog:K,overwritePreset:se,saveCurrentPreset:ne,startEditPreset:S,setDraft:w=>{p.value={...p.value,...w}},getDraft:()=>p.value,getPresets:()=>r.value,getColumnDraft:()=>c.value,syncColumnDraftFromState:M}),(w,f)=>{const v=e.resolveComponent("el-button"),$=e.resolveComponent("el-input"),q=e.resolveComponent("el-icon"),Q=e.resolveComponent("el-empty"),oe=e.resolveComponent("el-tag"),J=e.resolveComponent("el-dropdown-item"),fe=e.resolveComponent("el-dropdown-menu"),le=e.resolveComponent("el-dropdown"),De=e.resolveComponent("el-scrollbar"),pe=e.resolveComponent("el-form-item"),Ve=e.resolveComponent("el-radio"),ke=e.resolveComponent("el-radio-group"),F=e.resolveComponent("el-checkbox"),Ce=e.resolveComponent("el-form"),G=e.resolveComponent("el-input-number"),he=e.resolveComponent("el-option"),Ge=e.resolveComponent("el-select"),Ie=e.resolveComponent("el-descriptions-item"),Ke=e.resolveComponent("el-descriptions"),He=e.resolveComponent("el-dialog");return e.openBlock(),e.createElementBlock("div",to,[e.createVNode(v,{"data-testid":"list-preset-open",size:"small",icon:e.unref(za),onClick:K},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b.value),1)]),_:1},8,["icon"]),e.createVNode(He,{modelValue:l.value,"onUpdate:modelValue":f[7]||(f[7]=A=>l.value=A),title:"自定义列表",width:"920px","close-on-click-modal":!1,onOpen:de},{footer:e.withCtx(()=>[e.createElementVNode("div",So,[e.createVNode(v,{onClick:f[6]||(f[6]=A=>l.value=!1)},{default:e.withCtx(()=>[...f[26]||(f[26]=[e.createTextVNode("关闭",-1)])]),_:1}),m.value?(e.openBlock(),e.createBlock(v,{key:0,onClick:z},{default:e.withCtx(()=>[...f[27]||(f[27]=[e.createTextVNode("取消编辑",-1)])]),_:1})):e.createCommentVNode("",!0),e.createVNode(v,{"data-testid":"list-preset-save",type:"primary",loading:i.value,onClick:ne},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.value?"更新方案":"保存当前"),1)]),_:1},8,["loading"])])]),default:e.withCtx(()=>[e.createElementVNode("div",no,[e.createElementVNode("section",ao,[e.createElementVNode("div",oo,[e.createVNode($,{modelValue:h.value,"onUpdate:modelValue":f[0]||(f[0]=A=>h.value=A),placeholder:"搜索列表","prefix-icon":e.unref(gt),clearable:""},null,8,["modelValue","prefix-icon"]),e.createVNode(v,{icon:e.unref(Wa),loading:o.value,onClick:de},null,8,["icon","loading"])]),V.value||C.value?(e.openBlock(),e.createElementBlock("div",lo,[V.value?(e.openBlock(),e.createElementBlock("span",ro,"当前已应用:"+e.toDisplayString(V.value.title),1)):e.createCommentVNode("",!0),C.value?(e.openBlock(),e.createElementBlock("span",io,"默认方案:"+e.toDisplayString(C.value.title),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createVNode(De,{height:"430px"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",so,[e.createVNode(q,{class:"is-loading"},{default:e.withCtx(()=>[e.createVNode(e.unref(pt))]),_:1}),f[8]||(f[8]=e.createElementVNode("span",null,"加载中",-1))])):N.value.length===0?(e.openBlock(),e.createBlock(Q,{key:1,description:"暂无自定义列表"})):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(N.value,A=>{var _e,ge,ve,Ne;return e.openBlock(),e.createElementBlock("article",{key:A.id,class:e.normalizeClass(["preset-item",{"is-active":A.id===y.value}]),"data-testid":"list-preset-item"},[e.createElementVNode("div",co,[e.createElementVNode("div",uo,[e.createElementVNode("span",mo,e.toDisplayString(A.title),1),A.isDefault?(e.openBlock(),e.createBlock(oe,{key:0,size:"small",type:"success"},{default:e.withCtx(()=>[...f[9]||(f[9]=[e.createTextVNode("默认",-1)])]),_:1})):e.createCommentVNode("",!0),A.id===y.value?(e.openBlock(),e.createBlock(oe,{key:1,size:"small"},{default:e.withCtx(()=>[...f[10]||(f[10]=[e.createTextVNode("已应用",-1)])]),_:1})):e.createCommentVNode("",!0),e.createVNode(oe,{size:"small",type:Me(A.visibility)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(me(A.visibility)),1)]),_:2},1032,["type"])]),A.description?(e.openBlock(),e.createElementBlock("p",fo,e.toDisplayString(A.description),1)):e.createCommentVNode("",!0),e.createElementVNode("div",po,[e.createElementVNode("span",null,e.toDisplayString(A.columns.length)+" 列",1),e.createElementVNode("span",null,e.toDisplayString(((ge=(_e=A.query)==null?void 0:_e.slice)==null?void 0:ge.length)||0)+" 条件",1),e.createElementVNode("span",null,e.toDisplayString(((Ne=(ve=A.query)==null?void 0:ve.orderBy)==null?void 0:Ne.length)||0)+" 排序",1),e.createElementVNode("span",null,e.toDisplayString(be(A.updatedAt)),1)])]),e.createElementVNode("div",ho,[e.createVNode(v,{"data-testid":"list-preset-apply",link:"",type:"primary",onClick:ze=>P(A)},{default:e.withCtx(()=>[...f[11]||(f[11]=[e.createTextVNode("应用",-1)])]),_:1},8,["onClick"]),e.createVNode(le,{trigger:"click"},{dropdown:e.withCtx(()=>[e.createVNode(fe,null,{default:e.withCtx(()=>[e.createVNode(J,{onClick:ze=>S(A)},{default:e.withCtx(()=>[...f[12]||(f[12]=[e.createTextVNode(" 编辑信息 ",-1)])]),_:1},8,["onClick"]),e.createVNode(J,{onClick:ze=>se(A)},{default:e.withCtx(()=>[...f[13]||(f[13]=[e.createTextVNode(" 覆盖当前 ",-1)])]),_:1},8,["onClick"]),e.createVNode(J,{onClick:ze=>we(A)},{default:e.withCtx(()=>[e.createVNode(q,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Ga))]),_:1}),f[14]||(f[14]=e.createTextVNode(" 设为默认 ",-1))]),_:1},8,["onClick"]),e.createVNode(J,{divided:"",class:"danger-item",onClick:ze=>te(A)},{default:e.withCtx(()=>[e.createVNode(q,null,{default:e.withCtx(()=>[e.createVNode(e.unref(at))]),_:1}),f[15]||(f[15]=e.createTextVNode(" 删除 ",-1))]),_:1},8,["onClick"])]),_:2},1024)]),default:e.withCtx(()=>[e.createVNode(v,{"data-testid":"list-preset-more",link:"",icon:e.unref(At)},null,8,["icon"])]),_:2},1024)])],2)}),128))]),_:1})]),e.createElementVNode("section",go,[e.createElementVNode("div",yo,[e.createElementVNode("h4",null,e.toDisplayString(m.value?"编辑当前方案":"保存当前列表"),1),m.value?(e.openBlock(),e.createBlock(v,{key:0,link:"",type:"primary",onClick:z},{default:e.withCtx(()=>[...f[16]||(f[16]=[e.createTextVNode(" 取消编辑 ",-1)])]),_:1})):e.createCommentVNode("",!0)]),e.createVNode(Ce,{"label-position":"top",model:p.value},{default:e.withCtx(()=>[e.createVNode(pe,{label:"名称",required:""},{default:e.withCtx(()=>[e.createElementVNode("div",wo,[e.createVNode($,{modelValue:p.value.title,"onUpdate:modelValue":f[1]||(f[1]=A=>p.value.title=A),maxlength:"50","show-word-limit":""},null,8,["modelValue"])])]),_:1}),e.createVNode(pe,{label:"描述"},{default:e.withCtx(()=>[e.createElementVNode("div",bo,[e.createVNode($,{modelValue:p.value.description,"onUpdate:modelValue":f[2]||(f[2]=A=>p.value.description=A),type:"textarea",rows:3,maxlength:"200","show-word-limit":""},null,8,["modelValue"])])]),_:1}),e.createVNode(pe,{label:"可见范围"},{default:e.withCtx(()=>[e.createVNode(ke,{modelValue:p.value.visibility,"onUpdate:modelValue":f[3]||(f[3]=A=>p.value.visibility=A)},{default:e.withCtx(()=>[e.createVNode(Ve,{label:"PRIVATE"},{default:e.withCtx(()=>[...f[17]||(f[17]=[e.createTextVNode("仅自己",-1)])]),_:1}),t.config.allowShared?(e.openBlock(),e.createBlock(Ve,{key:0,label:"DEPARTMENT"},{default:e.withCtx(()=>[...f[18]||(f[18]=[e.createTextVNode("部门",-1)])]),_:1})):e.createCommentVNode("",!0),t.config.allowTenantShared?(e.openBlock(),e.createBlock(Ve,{key:1,label:"TENANT"},{default:e.withCtx(()=>[...f[19]||(f[19]=[e.createTextVNode("租户",-1)])]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])]),_:1}),e.createVNode(pe,null,{default:e.withCtx(()=>[e.createVNode(F,{modelValue:p.value.isDefault,"onUpdate:modelValue":f[4]||(f[4]=A=>p.value.isDefault=A)},{default:e.withCtx(()=>[...f[20]||(f[20]=[e.createTextVNode("设为默认",-1)])]),_:1},8,["modelValue"])]),_:1}),e.createVNode(pe,null,{default:e.withCtx(()=>[e.createVNode(F,{modelValue:p.value.saveQueryConditions,"onUpdate:modelValue":f[5]||(f[5]=A=>p.value.saveQueryConditions=A)},{default:e.withCtx(()=>[...f[21]||(f[21]=[e.createTextVNode("保存当前筛选和排序",-1)])]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"]),e.createElementVNode("div",Vo,[e.createElementVNode("div",ko,[f[23]||(f[23]=e.createElementVNode("span",null,"字段配置",-1)),e.createVNode(v,{link:"",type:"primary",onClick:M},{default:e.withCtx(()=>[...f[22]||(f[22]=[e.createTextVNode("恢复当前",-1)])]),_:1})]),e.createVNode(De,{height:"220px"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(A,_e)=>(e.openBlock(),e.createElementBlock("div",{key:A.name,class:"column-config-row"},[e.createVNode(F,{modelValue:A.visible,"onUpdate:modelValue":ge=>A.visible=ge,class:"column-visible"},null,8,["modelValue","onUpdate:modelValue"]),e.createElementVNode("span",{class:"column-name",title:A.name},e.toDisplayString(A.title||A.name),9,Co),e.createVNode(G,{modelValue:A.width,"onUpdate:modelValue":ge=>A.width=ge,size:"small",min:40,step:10,"controls-position":"right",placeholder:"宽"},null,8,["modelValue","onUpdate:modelValue"]),e.createVNode(Ge,{modelValue:A.fixed,"onUpdate:modelValue":ge=>A.fixed=ge,size:"small",placeholder:"固定",clearable:""},{default:e.withCtx(()=>[e.createVNode(he,{label:"左",value:"left"}),e.createVNode(he,{label:"右",value:"right"})]),_:1},8,["modelValue","onUpdate:modelValue"]),e.createElementVNode("div",_o,[e.createVNode(v,{link:"",disabled:_e===0,onClick:ge=>ie(_e,-1)},{default:e.withCtx(()=>[...f[24]||(f[24]=[e.createTextVNode("上",-1)])]),_:1},8,["disabled","onClick"]),e.createVNode(v,{link:"",disabled:_e===c.value.length-1,onClick:ge=>ie(_e,1)},{default:e.withCtx(()=>[...f[25]||(f[25]=[e.createTextVNode("下",-1)])]),_:1},8,["disabled","onClick"])])]))),128))]),_:1})]),e.createElementVNode("div",No,[e.createVNode(Ke,{column:1,size:"small",border:""},{default:e.withCtx(()=>[e.createVNode(Ie,{label:"当前列数"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.value.length),1)]),_:1}),e.createVNode(Ie,{label:"筛选条件"},{default:e.withCtx(()=>[e.createElementVNode("div",xo,[e.createElementVNode("span",null,e.toDisplayString(p.value.saveQueryConditions?k.value.slice.length:0)+" 条",1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(R.value,A=>(e.openBlock(),e.createElementBlock("span",{key:A,class:"query-summary-item"},e.toDisplayString(A),1))),128))])]),_:1}),e.createVNode(Ie,{label:"排序规则"},{default:e.withCtx(()=>[e.createElementVNode("div",Eo,[e.createElementVNode("span",null,e.toDisplayString(p.value.saveQueryConditions?k.value.orderBy.length:0)+" 条",1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(H.value,A=>(e.openBlock(),e.createElementBlock("span",{key:A,class:"query-summary-item"},e.toDisplayString(A),1))),128))])]),_:1}),e.createVNode(Ie,{label:"分页大小"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k.value.pageSize||"-"),1)]),_:1})]),_:1})])])])]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-ef8e2b00"]]),Bo={class:"data-table-with-search"},Mo={key:0,class:"query-panel-wrapper"},Do={key:1,class:"search-toolbar-wrapper"},vo={class:"data-table-wrapper"},To=re(e.defineComponent({inheritAttrs:!1,__name:"DataTableWithSearch",props:{schema:{},fetchData:{},columns:{},data:{},total:{},loading:{type:Boolean},pageSize:{default:50},showFilters:{type:Boolean,default:!0},showPager:{type:Boolean,default:!0},initialSlice:{},localFilter:{type:Boolean,default:void 0},serverSummary:{},filterOptionsLoader:{},customFilterComponents:{},cellCopy:{},queryMode:{},density:{},searchableFields:{},searchLayout:{default:"horizontal"},showSearchActions:{type:Boolean,default:!0},filterMergeMode:{default:"merge"},queryHooks:{},querySchema:{},showQueryPanel:{type:Boolean,default:!1},qmModel:{},filterMemberLoader:{},enableSavedQuery:{type:Boolean},listPreset:{type:[Boolean,Object]}},emits:["page-change","sort-change","filter-change","filter-commit","row-click","row-dblclick","checkbox-change","checkbox-all","search","reset","load-success","load-error"],setup(t,{expose:a,emit:n}){var qe;const l=e.useAttrs(),o=t,i=n,h=e.useSlots(),r=e.computed(()=>!!o.schema&&!!o.fetchData),c=Et(o.fetchData??(async()=>({items:[],total:0})),{pageSize:((qe=o.schema)==null?void 0:qe.pageSize)??o.pageSize,hooks:o.queryHooks}),m=e.ref(null),y=e.ref(void 0),p=e.computed(()=>r.value&&o.schema?o.schema.columns:o.columns||[]);function b(u,_){return _?{...u,width:_.width??u.width,minWidth:_.minWidth??u.minWidth,fixed:_.fixed??u.fixed}:u}function k(u,_){if(!_)return u;const U=new Map(u.map(ee=>[ee.name,ee])),ae=new Map((_.columnSettings||[]).map(ee=>[ee.name,ee])),ye=new Set(_.columns||[]),Fe=ye.size>0,Te=[];_.columnSettings&&_.columnSettings.length>0&&Te.push(..._.columnSettings.slice().sort((ee,xe)=>ee.order-xe.order).map(ee=>ee.name));for(const ee of _.columns||[])Te.includes(ee)||Te.push(ee);const je=[],Ye=new Set;for(const ee of Te){const xe=U.get(ee);if(!xe||Ye.has(ee)){xe||console.warn(`[DataTableWithSearch] Ignore unknown list preset column: ${ee}`);continue}const s=ae.get(ee);(s==null?void 0:s.visible)!==!1&&(!Fe||ye.has(ee))&&(je.push(b(xe,s)),Ye.add(ee))}if(!Fe)for(const ee of u){if(Ye.has(ee.name))continue;const xe=ae.get(ee.name);(xe==null?void 0:xe.visible)!==!1&&(je.push(b(ee,xe)),Ye.add(ee.name))}return je.length>0?je:u}const d=e.computed(()=>{const u=k(p.value,m.value);if(h["row-actions"]&&!u.some(_=>_.name==="_actions")){const _={name:"_actions",type:"TEXT",title:"操作",width:120,fixed:"right",filterable:!1};return[...u,_]}return u}),V=e.computed(()=>{const u=new Set;return d.value.flatMap(_=>{const U=_.name.trim();return!U||U==="_actions"||u.has(U)?[]:(u.add(U),[U])})}),C=e.computed(()=>r.value?c.data.value:o.data||[]),R=e.computed(()=>r.value?c.total.value:o.total||0),H=e.computed(()=>r.value?c.loading.value&&c.data.value.length===0:o.loading||!1),N=e.computed(()=>r.value?c.loading.value&&c.data.value.length>0:!1);function D(u){return u==="filter"?"正在筛选...":u==="sort"?"正在排序...":u==="page"&&de.value?`正在加载第 ${c.currentPage.value} 页...`:"正在刷新..."}const K=e.computed(()=>N.value?D(c.activeTrigger.value):""),M=e.computed(()=>!r.value||c.loading.value||c.data.value.length===0?null:c.lastError.value?"查询失败":null),x=e.computed(()=>r.value?c.serverSummary.value:o.serverSummary||null),O=e.computed(()=>{var u;return y.value&&y.value>0?y.value:r.value&&((u=o.schema)!=null&&u.pageSize)?o.schema.pageSize:o.pageSize}),I=e.computed(()=>{var u;return r.value&&((u=o.schema)==null?void 0:u.queryMode)!==void 0?o.schema.queryMode:o.queryMode}),W=e.computed(()=>I.value!==void 0),Z=e.computed(()=>I.value==="panel"||I.value==="combined"),ie=e.computed(()=>W.value?Z.value&&!!o.querySchema:!!o.showQueryPanel&&!!o.querySchema),ue=e.computed(()=>{var u;return W.value?I.value==="column"||I.value==="combined":r.value&&((u=o.schema)==null?void 0:u.showFilters)!==void 0?o.schema.showFilters:o.showFilters}),de=e.computed(()=>{var u;return r.value&&((u=o.schema)==null?void 0:u.showPager)!==void 0?o.schema.showPager:o.showPager}),P=e.computed(()=>W.value?Z.value&&!o.querySchema:!1),S=e.computed(()=>{var u;return r.value&&((u=o.schema)!=null&&u.cellCopy)?o.schema.cellCopy:o.cellCopy}),z=e.computed(()=>{var u;return r.value&&((u=o.schema)!=null&&u.density)?o.schema.density:o.density??"compact"}),ne=e.computed(()=>m.value?m.value.slice||[]:o.initialSlice),se=e.computed(()=>{var u;return o.localFilter!==void 0?o.localFilter:r.value?((u=o.schema)==null?void 0:u.localFilter)??!1:!0}),we=e.computed(()=>{var u;return r.value&&((u=o.schema)!=null&&u.searchLayout)?o.schema.searchLayout:o.searchLayout}),te=e.computed(()=>{const u=o.listPreset;return u?u===!0?(console.warn("[DataTableWithSearch] listPreset=true requires object config with userId and model"),null):u.enabled===!1?null:!u.userId||!u.model?(console.warn("[DataTableWithSearch] listPreset requires userId and model"),null):{autoLoadDefault:!0,placement:"toolbar-right",...u,enabled:!0}:null}),me=e.computed(()=>{const u=te.value;return!!u&&u.placement!=="external"}),Me=e.computed(()=>{var _;if(o.searchableFields&&o.searchableFields.length>0)return o.searchableFields;if(r.value&&((_=o.schema)!=null&&_.searchableFields))return o.schema.searchableFields;const u=d.value.filter(U=>{var ae;return((ae=U.uiConfig)==null?void 0:ae.showInToolbar)===!0}).map(U=>U.name);return u.length>0?u:void 0}),be=new Set(["toolbar","toolbar-right","footer","empty","row-actions"]),w=e.computed(()=>{const u={};for(const _ of Object.keys(h))!be.has(_)&&(_.startsWith("column-")||_.startsWith("filter-"))&&(u[_]=h[_]);return u}),f=e.ref(),v=e.ref(),$=e.ref(),q=e.ref([]),Q=e.ref([]),oe=e.ref([]),J=e.computed(()=>{const u=[...oe.value],_=new Set(u.map(U=>U.field));if(o.filterMergeMode==="replace"){const U=q.value.length>0?q.value:Q.value;for(const ae of U)_.has(ae.field)||(u.push(ae),_.add(ae.field))}else{for(const U of q.value)_.has(U.field)||(u.push(U),_.add(U.field));for(const U of Q.value)_.has(U.field)||(u.push(U),_.add(U.field))}return u});function fe(u={}){var _,U;(U=(_=$.value)==null?void 0:_.clearSelection)==null||U.call(_,u)}async function le(u="refresh"){if(!(!r.value||!o.fetchData)){u!=="mount"&&fe(),c.setColumns(V.value),c.setSlice(J.value);try{await c.loadData(u),i("load-success",{items:c.data.value,total:c.total.value,totalData:c.serverSummary.value??void 0})}catch(_){i("load-error",_)}}}function De(u){var _,U;return{columns:u.columns,columnSettings:u.columnSettings,slice:((_=u.query)==null?void 0:_.slice)||[],orderBy:((U=u.query)==null?void 0:U.orderBy)||[],pageSize:u.pageSize}}async function pe(){const u=te.value;if(!(!u||u.autoLoadDefault===!1))try{const _=await Wt({userId:u.userId,model:u.model,businessKey:u.businessKey});_&&Ne(De(_))}catch(_){console.warn("[DataTableWithSearch] Failed to load default list preset:",_)}}e.onMounted(async()=>{await pe(),r.value&&le("mount")});function Ve(u){oe.value=u}function ke(){A()}function F(){oe.value=[],A()}function Ce(){var u;(u=v.value)==null||u.search()}function G(){var u;(u=v.value)==null||u.reset()}function he(u){q.value=u,o.showSearchActions||A()}function Ge(){i("search",q.value),A()}function Ie(){q.value=[],i("reset"),A()}function Ke(u){Q.value=u,i("filter-change",J.value)}function He(u){Q.value=u,i("filter-commit",J.value),A()}function A(){i("filter-change",J.value),r.value&&(c.currentPage.value=1,le("filter"))}function _e(u,_){i("page-change",u,_),y.value=_,r.value&&(c.setPage(u,_),le("page"))}function ge(u,_){i("sort-change",u,_),r.value&&(u&&_?c.setSort([{field:u,dir:_}]):c.setSort([]),le("sort"))}function ve(){const u=d.value.filter(ae=>ae.name!=="_actions"),_=u.map(ae=>ae.name),U=u.map((ae,ye)=>({name:ae.name,visible:!0,width:ae.width,minWidth:ae.minWidth,fixed:ae.fixed,order:ye}));return{columns:_,columnSettings:U,slice:J.value,orderBy:c.currentOrderBy.value??[],pageSize:O.value}}function Ne(u,_={}){m.value={columns:u.columns||[],columnSettings:u.columnSettings,slice:u.slice||[],orderBy:u.orderBy||[],pageSize:u.pageSize},y.value=u.pageSize&&u.pageSize>0?u.pageSize:void 0,q.value=[],oe.value=[],Q.value=u.slice||[],c.setSort(u.orderBy||[]),r.value&&(c.setPage(1,O.value),_.reload&&le("reload"))}function ze(u={}){m.value=null,y.value=void 0,q.value=[],oe.value=[],Q.value=[],c.setSort([]),r.value&&(c.setPage(1,O.value),u.reload&&le("reload"))}async function ct(){r.value&&(c.currentPage.value=1,await le("reload"))}const Vt=e.computed(()=>{const u=Object.keys(l).filter(_=>!_.startsWith("on")).reduce((_,U)=>({..._,[U]:l[U]}),{});return{columns:d.value,data:C.value,total:R.value,loading:H.value,backgroundLoading:N.value,backgroundLoadingText:K.value,backgroundLoadingError:M.value,pageSize:O.value,showFilters:ue.value,showPager:de.value,initialSlice:ne.value,localFilter:se.value,serverSummary:x.value,filterOptionsLoader:o.filterOptionsLoader,filterMemberLoader:o.filterMemberLoader,qmModel:o.qmModel,customFilterComponents:o.customFilterComponents,cellCopy:S.value,density:z.value,...u}}),kt=e.computed(()=>{const u={};return Object.keys(l).forEach(_=>{if(_.startsWith("on")){const U=_.slice(2,3).toLowerCase()+_.slice(3);u[U]=l[_]}}),{"page-change":(_,U)=>{_e(_,U),u.pageChange&&u.pageChange(_,U)},"sort-change":(_,U)=>{ge(_,U),u.sortChange&&u.sortChange(_,U)},"filter-change":Ke,"filter-commit":He,"row-click":(..._)=>{i("row-click",..._),u.rowClick&&u.rowClick(..._)},"row-dblclick":(..._)=>{i("row-dblclick",..._),u.rowDblclick&&u.rowDblclick(..._)},"checkbox-change":_=>{i("checkbox-change",_),u.checkboxChange&&u.checkboxChange(_)},"checkbox-all":_=>{i("checkbox-all",_),u.checkboxAll&&u.checkboxAll(_)}}});return a({getSearchToolbar:()=>f.value,getQueryPanel:()=>v.value,getDataTable:()=>$.value,clearSearchFilters:()=>{var u;return(u=f.value)==null?void 0:u.clearFilters()},clearTableFilters:()=>{var u;return(u=$.value)==null?void 0:u.clearFilters()},searchQueryPanel:Ce,resetQueryPanel:G,clearAllFilters:()=>{var u,_;oe.value=[],G(),(u=f.value)==null||u.clearFilters(),(_=$.value)==null||_.clearFilters()},getMergedFilters:()=>J.value,resetPagination:()=>{var u;return(u=$.value)==null?void 0:u.resetPagination()},refresh:()=>{if(r.value)return le("refresh")},reload:()=>{if(r.value)return c.currentPage.value=1,le("reload")},addQueryHook:c.addHook,removeQueryHook:c.removeHook,getSelectedRows:()=>{var u,_;return((_=(u=$.value)==null?void 0:u.getSelectedRows)==null?void 0:_.call(u))??[]},getSelectedCount:()=>{var u,_;return((_=(u=$.value)==null?void 0:u.getSelectedCount)==null?void 0:_.call(u))??0},clearSelection:fe,getQuery:()=>c,getListViewState:ve,applyListViewState:Ne,resetListViewState:ze,getQueryState:ve,applyQueryState:u=>{Ne(u)},getSchema:()=>d.value}),(u,_)=>{var U,ae;return e.openBlock(),e.createElementBlock("div",Bo,[ie.value?(e.openBlock(),e.createElementBlock("div",Mo,[e.createVNode(Pt,{ref_key:"queryPanelRef",ref:v,schema:t.querySchema,"filter-member-loader":t.filterMemberLoader,"qm-model":t.qmModel,modelValue:oe.value,"onUpdate:modelValue":[_[0]||(_[0]=ye=>oe.value=ye),Ve],onSearch:ke,onReset:F},null,8,["schema","filter-member-loader","qm-model","modelValue"])])):e.createCommentVNode("",!0),P.value?(e.openBlock(),e.createElementBlock("div",Do,[e.createVNode($t,{ref_key:"searchToolbarRef",ref:f,columns:d.value,"searchable-fields":Me.value,layout:we.value,"show-actions":t.showSearchActions,"filter-options-loader":t.filterOptionsLoader,"filter-member-loader":t.filterMemberLoader,"qm-model":t.qmModel,modelValue:q.value,"onUpdate:modelValue":[_[1]||(_[1]=ye=>q.value=ye),he],onSearch:Ge,onReset:Ie},null,8,["columns","searchable-fields","layout","show-actions","filter-options-loader","filter-member-loader","qm-model","modelValue"])])):e.createCommentVNode("",!0),e.createElementVNode("div",vo,[e.createVNode(mt,e.mergeProps({ref_key:"dataTableRef",ref:$},Vt.value,e.toHandlers(kt.value)),e.createSlots({_:2},[u.$slots.toolbar||me.value&&((U=te.value)==null?void 0:U.placement)!=="toolbar-right"?{name:"toolbar",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"toolbar",{},void 0,!0),me.value&&te.value&&te.value.placement!=="toolbar-right"?(e.openBlock(),e.createBlock(wt,{key:0,config:te.value,"get-state":ve,"apply-state":Ne,"available-columns":p.value,reload:ct},null,8,["config","available-columns"])):e.createCommentVNode("",!0)]),key:"0"}:void 0,u.$slots["toolbar-right"]||me.value&&((ae=te.value)==null?void 0:ae.placement)==="toolbar-right"?{name:"toolbar-right",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"toolbar-right",{},void 0,!0),me.value&&te.value&&te.value.placement==="toolbar-right"?(e.openBlock(),e.createBlock(wt,{key:0,config:te.value,"get-state":ve,"apply-state":Ne,"available-columns":p.value,reload:ct},null,8,["config","available-columns"])):e.createCommentVNode("",!0)]),key:"1"}:void 0,u.$slots.footer?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"footer",{},void 0,!0)]),key:"2"}:void 0,u.$slots.empty?{name:"empty",fn:e.withCtx(()=>[e.renderSlot(u.$slots,"empty",{},void 0,!0)]),key:"3"}:void 0,u.$slots["row-actions"]?{name:"column-_actions",fn:e.withCtx(({row:ye,column:Fe,value:Te})=>[e.renderSlot(u.$slots,"row-actions",{row:ye,column:Fe,value:Te},void 0,!0)]),key:"4"}:void 0,e.renderList(w.value,(ye,Fe)=>({name:Fe,fn:e.withCtx(Te=>[e.renderSlot(u.$slots,Fe,e.normalizeProps(e.guardReactiveProps(Te||{})),void 0,!0)])}))]),1040)])])}}}),[["__scopeId","data-v-c0f5d3b0"]]),$o={key:0,class:"pivot-axis-pager","aria-label":"Pivot axis pages"},Po=["data-axis","data-field"],Fo={class:"pivot-axis-page-axis"},Lo={class:"pivot-axis-page-title"},Ao={class:"pivot-axis-page-range"},Io={class:"pivot-axis-page-scope"},zo={key:0,class:"pivot-axis-page-more"},qt=re(e.defineComponent({__name:"PivotAxisPager",props:{rowAxes:{default:()=>[]},columnAxes:{default:()=>[]},rowPages:{default:()=>[]},columnPages:{default:()=>[]}},setup(t){const a=t,n=e.computed(()=>[...l("rows",a.rowPages,a.rowAxes),...l("columns",a.columnPages,a.columnAxes)]);function l(h,r,c){return r.map(m=>{const y=c.find(p=>p.field===m.field);return{...m,axis:h,title:(y==null?void 0:y.title)??m.field}})}function o(h){const r=h.offset,c=h.offset+h.limit,m=h.total===void 0?"?":String(h.total);return`${r}-${c} / ${m}`}function i(h){return h.pageScope==="perParent"?"父级内分页":"全局轴分页"}return(h,r)=>n.value.length?(e.openBlock(),e.createElementBlock("section",$o,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,c=>(e.openBlock(),e.createElementBlock("div",{key:`${c.axis}:${c.field}`,class:"pivot-axis-page","data-axis":c.axis,"data-field":c.field},[e.createElementVNode("span",Fo,e.toDisplayString(c.axis==="rows"?"行轴":"列轴"),1),e.createElementVNode("span",Lo,e.toDisplayString(c.title),1),e.createElementVNode("span",Ao,e.toDisplayString(o(c)),1),e.createElementVNode("span",Io,e.toDisplayString(i(c)),1),c.hasMore?(e.openBlock(),e.createElementBlock("span",zo,"还有更多")):e.createCommentVNode("",!0)],8,Po))),128))])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-d60c9e6a"]]),Ro={class:"pivot-evidence-panel","aria-label":"Pivot evidence"},Oo={key:0,class:"pivot-evidence-section"},Wo={class:"pivot-evidence-list"},Qo={key:1,class:"pivot-evidence-section"},Uo={class:"pivot-evidence-list"},Ho={key:2,class:"pivot-evidence-section"},qo={class:"pivot-evidence-list"},jt=re(e.defineComponent({__name:"PivotEvidencePanel",props:{evidence:{default:()=>({})},rowAxes:{default:()=>[]},columnAxes:{default:()=>[]}},setup(t){const a=t,n=e.computed(()=>[...i("行轴",a.rowAxes),...i("列轴",a.columnAxes)]),l=e.computed(()=>[...r(a.evidence.parentShareEvidence),...c(a.evidence.baselineRatioEvidence)]),o=e.computed(()=>Object.entries(a.evidence).filter(([d])=>d!=="parentShareEvidence"&&d!=="baselineRatioEvidence").filter(([,d])=>d!=null).map(([d,V])=>({label:d,value:k(V)})));function i(d,V){return V.map(C=>({label:`${d} ${C.title??C.field}`,value:h(C)}))}function h(d){var C;return[`field=${d.field}`,d.start===void 0?void 0:`start=${d.start}`,d.offset===void 0?void 0:`offset=${d.offset}`,d.limit===void 0?void 0:`limit=${d.limit}`,(C=d.orderBy)!=null&&C.length?`orderBy=${d.orderBy.join(",")}`:void 0,d.domainSliceEnabled?"domainSlice":void 0,d.havingEnabled?"having":void 0].filter(R=>!!R).join(" | ")}function r(d){return m(d).map((V,C)=>({label:`parentShare ${p(V.metric,C+1)}`,value:b([["of",V.of],["scope",V.denominatorScope],["axis",V.axis],["level",V.level],["parentLevel",V.parentLevel],["prePageRows",V.prePageRows],["parentGroups",V.parentGroups],["source",V.source]])}))}function c(d){return m(d).map((V,C)=>({label:`baselineRatio ${p(V.metric,C+1)}`,value:b([["of",V.of],["scope",V.baselineScope],["axis",V.axis],["baseline",V.baseline],["columnField",V.columnField],["baselineColumnKey",V.baselineColumnKey],["baselineColumnVisible",V.baselineColumnVisible],["prePageAxisDomainSize",V.prePageAxisDomainSize],["visibleAxisDomainSize",V.visibleAxisDomainSize],["baselineRows",V.baselineRows],["source",V.source]])}))}function m(d){return Array.isArray(d)?d.filter(y):[]}function y(d){return typeof d=="object"&&d!==null&&!Array.isArray(d)}function p(d,V){return typeof d=="string"&&d.length>0?d:`#${V}`}function b(d){return d.filter(([,V])=>V!=null).map(([V,C])=>`${V}=${k(C)}`).join(" | ")}function k(d){return typeof d=="string"?d:typeof d=="number"||typeof d=="boolean"?String(d):JSON.stringify(d)}return(d,V)=>(e.openBlock(),e.createElementBlock("section",Ro,[n.value.length?(e.openBlock(),e.createElementBlock("div",Oo,[V[0]||(V[0]=e.createElementVNode("div",{class:"pivot-evidence-heading"},"轴域范围",-1)),e.createElementVNode("dl",Wo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,C=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:C.label},[e.createElementVNode("dt",null,e.toDisplayString(C.label),1),e.createElementVNode("dd",null,e.toDisplayString(C.value),1)],64))),128))])])):e.createCommentVNode("",!0),l.value.length?(e.openBlock(),e.createElementBlock("div",Qo,[V[1]||(V[1]=e.createElementVNode("div",{class:"pivot-evidence-heading"},"派生指标证据",-1)),e.createElementVNode("dl",Uo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,C=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:C.label},[e.createElementVNode("dt",null,e.toDisplayString(C.label),1),e.createElementVNode("dd",null,e.toDisplayString(C.value),1)],64))),128))])])):e.createCommentVNode("",!0),o.value.length?(e.openBlock(),e.createElementBlock("div",Ho,[V[2]||(V[2]=e.createElementVNode("div",{class:"pivot-evidence-heading"},"计算证据",-1)),e.createElementVNode("dl",qo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,C=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:C.label},[e.createElementVNode("dt",null,e.toDisplayString(C.label),1),e.createElementVNode("dd",null,e.toDisplayString(C.value),1)],64))),128))])])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-1eb54a90"]]),jo=120;function Yt(t){const a=[],n=new Set;if(!Array.isArray(t)||t.length===0)return{valid:!1,errors:["headerTree must contain at least one node"]};const l=(o,i)=>{if(!o||typeof o!="object"){a.push(`${i}: node must be an object`);return}if((!o.title||typeof o.title!="string")&&a.push(`${i}: title is required`),o.role||a.push(`${i}: role is required`),o.children!==void 0){if(!Array.isArray(o.children)||o.children.length===0){a.push(`${i}: children must contain at least one node`);return}o.children.forEach((h,r)=>{l(h,`${i}.children[${r}]`)});return}if(!o.field||typeof o.field!="string"){a.push(`${i}: leaf node field is required`);return}if(n.has(o.field)){a.push(`${i}: duplicate leaf field "${o.field}"`);return}n.add(o.field)};return t.forEach((o,i)=>l(o,`headerTree[${i}]`)),{valid:a.length===0,errors:a}}function Gt(t){const a=[],n=l=>{var o;if((o=l.children)!=null&&o.length){l.children.forEach(n);return}a.push(l)};return t.forEach(n),a}function Kt(t,a={}){const n=Yt(t);if(!n.valid)throw new Error(`Invalid pivot header tree: ${n.errors.join("; ")}`);const l=a.defaultMinWidth??jo,o=a.defaultRowAxisFixed??"left",i=a.metricAlign??"right",h=a.rowAxisAlign??"left",r=(c,m)=>{var b;const y=c.fixed??m;if((b=c.children)!=null&&b.length)return{title:c.title,fixed:y,children:c.children.map(k=>r(k,y)),meta:Xt(c)};const p=y??(c.role==="rowAxis"&&o?o:void 0);return{field:c.field,title:c.title,width:c.width,minWidth:c.minWidth??l,fixed:p,align:c.role==="rowAxis"?h:i,headerAlign:"center",meta:Xt(c)}};return t.map(c=>r(c))}function Xt(t){return{role:t.role,key:t.key,axisValue:t.axisValue,metricField:t.metricField}}const Yo={class:"pivot-grid"},Go={class:"pivot-grid-empty"},Jt=re(e.defineComponent({inheritAttrs:!1,__name:"PivotGrid",props:{viewModel:{},loading:{type:Boolean,default:!1},height:{default:"100%"},emptyText:{default:"暂无透视数据"},emptyCellText:{default:"-"}},setup(t){const a=t,n=e.useAttrs(),l=e.computed(()=>new Map(a.viewModel.metrics.map(p=>[p.field,p]))),o=e.computed(()=>{const p=Gt(a.viewModel.headerTree).filter(b=>!!b.field).map(b=>[b.field,b]);return new Map(p)}),i=e.computed(()=>Kt(a.viewModel.headerTree)),h=e.computed(()=>i.value.map(p=>c(p))),r=e.computed(()=>{const p=Object.keys(n).filter(k=>!k.startsWith("on")).reduce((k,d)=>({...k,[d]:n[d]}),{});return{...{border:!0,stripe:!0,showOverflow:!0,height:a.height,loading:a.loading,columnConfig:{resizable:!0},rowConfig:{isHover:!0},pagerConfig:{enabled:!1},columns:h.value,data:a.viewModel.items},...p}});function c(p){var b;return(b=p.children)!=null&&b.length?{...p,children:p.children.map(k=>c(k))}:p.field?{...p,slots:{default:({row:k})=>{var d;return e.h("span",{class:["pivot-grid-cell",`pivot-grid-cell-${((d=p.meta)==null?void 0:d.role)??"unknown"}`]},m(p,k[p.field]))}}}:p}function m(p,b){var C;if(b==null||b==="")return a.emptyCellText;const k=p.field?o.value.get(p.field):void 0,d=y(p,k),V=(C=d==null?void 0:d.format)==null?void 0:C.toLowerCase();return typeof b=="number"?V==="money"||V==="number"?b.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2}):b.toLocaleString("zh-CN"):String(b)}function y(p,b){var d;const k=((d=p.meta)==null?void 0:d.metricField)??(b==null?void 0:b.metricField);return k?l.value.get(k):void 0}return(p,b)=>{const k=e.resolveComponent("vxe-grid");return e.openBlock(),e.createElementBlock("div",Yo,[e.createVNode(k,e.normalizeProps(e.guardReactiveProps(r.value)),{empty:e.withCtx(()=>[e.renderSlot(p.$slots,"empty",{},()=>[e.createElementVNode("div",Go,e.toDisplayString(t.emptyText),1)],!0)]),_:3},16)])}}}),[["__scopeId","data-v-32be6c19"]]),Ko={class:"pivot-viewer","data-view-mode":"pivotTable"},Xo={class:"pivot-viewer-header"},Jo={key:0,class:"pivot-viewer-state pivot-viewer-error"},Zo={key:1,class:"pivot-viewer-state pivot-viewer-unsupported"},el={key:2,class:"pivot-viewer-main"},tl={class:"pivot-viewer-empty"},Zt=re(e.defineComponent({__name:"PivotViewer",props:{viewModel:{},loading:{type:Boolean,default:!1},error:{default:null},height:{default:"100%"},emptyText:{default:"暂无透视数据"},emptyCellText:{default:"-"},showAxisPager:{type:Boolean,default:!0},showEvidence:{type:Boolean,default:!0}},setup(t){const a=t,n=e.computed(()=>a.viewModel.shape==="grid"),l=e.computed(()=>`暂不支持 ${a.viewModel.shape} 透视视图`);return(o,i)=>{var h,r;return e.openBlock(),e.createElementBlock("section",Ko,[e.createElementVNode("header",Xo,[i[0]||(i[0]=e.createElementVNode("div",{class:"pivot-viewer-title"},"透视表",-1)),t.showAxisPager?(e.openBlock(),e.createBlock(qt,{key:0,"row-axes":t.viewModel.rowAxes,"column-axes":t.viewModel.columnAxes,"row-pages":(h=t.viewModel.axisPages)==null?void 0:h.rows,"column-pages":(r=t.viewModel.axisPages)==null?void 0:r.columns},null,8,["row-axes","column-axes","row-pages","column-pages"])):e.createCommentVNode("",!0)]),t.error?(e.openBlock(),e.createElementBlock("div",Jo,e.toDisplayString(t.error),1)):n.value?(e.openBlock(),e.createElementBlock("div",el,[e.createVNode(Jt,{"view-model":t.viewModel,loading:t.loading,height:t.height,"empty-text":t.emptyText,"empty-cell-text":t.emptyCellText},{empty:e.withCtx(()=>[e.renderSlot(o.$slots,"empty",{},()=>[e.createElementVNode("div",tl,e.toDisplayString(t.emptyText),1)],!0)]),_:3},8,["view-model","loading","height","empty-text","empty-cell-text"])])):(e.openBlock(),e.createElementBlock("div",Zo,e.toDisplayString(l.value),1)),t.showEvidence&&!t.error&&n.value?(e.openBlock(),e.createBlock(jt,{key:3,"row-axes":t.viewModel.rowAxes,"column-axes":t.viewModel.columnAxes,evidence:t.viewModel.evidence},null,8,["row-axes","column-axes","evidence"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-8f9e39f7"]]),nl="__";function en(t){ll(t);const a=new Map(t.rowMembers.map(h=>[h.key,h])),n=new Map(t.columnMembers.map(h=>[h.key,h])),l=new Set(t.metrics.map(h=>h.field)),o=new Map(t.rowMembers.map(h=>[h.key,{...h.values}])),i=[...al(t),...ol(t)];for(const h of t.cells){rl(h,a,n,l);const r=o.get(h.rowKey);r&&(r[bt(h.columnKey,h.metricField)]=h.value)}return{viewMode:t.viewMode,shape:t.shape,rowAxes:t.rowAxes,columnAxes:t.columnAxes,metrics:t.metrics,headerTree:i,items:t.rowMembers.map(h=>o.get(h.key)??{...h.values}),axisPages:t.axisPages,evidence:t.evidence}}function bt(t,a){return[tn(t),tn(a)].join(nl)}function al(t){return t.rowAxes.map(a=>({field:a.field,title:a.title??a.field,role:"rowAxis"}))}function ol(t){const a=new Set;return t.columnMembers.map(n=>({key:n.key,title:il(n),role:"columnAxisMember",axisValue:n.axisValue,children:t.metrics.map(l=>{const o=bt(n.key,l.field);if(a.has(o))throw new Error(`Duplicate pivot cell field "${o}"`);return a.add(o),{field:o,title:l.title??l.field,role:"metric",metricField:l.field}})}))}function ll(t){if(t.viewMode!=="pivotTable")throw new Error(`Unsupported pivot viewMode "${t.viewMode}"`);if(t.shape!=="grid")throw new Error(`Unsupported pivot shape "${t.shape}"`)}function rl(t,a,n,l){if(!a.has(t.rowKey))throw new Error(`Pivot cell references unknown row member "${t.rowKey}"`);if(!n.has(t.columnKey))throw new Error(`Pivot cell references unknown column member "${t.columnKey}"`);if(!l.has(t.metricField))throw new Error(`Pivot cell references unknown metric "${t.metricField}"`)}function il(t){return t.title?t.title:t.axisValue!==void 0&&t.axisValue!==null?String(t.axisValue):t.key}function tn(t){return t.trim().replace(/[^\w]+/g,"_").replace(/^_+|_+$/g,"")||"empty"}const sl={key:1,class:"pivot-raw-viewer-error","data-view-mode":"pivotTable"},cl=re(e.defineComponent({__name:"PivotRawViewer",props:{rawPayload:{},loading:{type:Boolean,default:!1},error:{default:null},height:{default:"100%"},emptyText:{default:"暂无透视数据"},emptyCellText:{default:"-"},showAxisPager:{type:Boolean,default:!0},showEvidence:{type:Boolean,default:!0}},setup(t){const a=t,n=e.computed(()=>{try{return{viewModel:en(a.rawPayload),error:null}}catch(o){return{viewModel:null,error:o instanceof Error?o.message:"透视数据转换失败"}}}),l=e.computed(()=>a.error??n.value.error);return(o,i)=>n.value.viewModel?(e.openBlock(),e.createBlock(Zt,{key:0,"view-model":n.value.viewModel,loading:t.loading,error:l.value,height:t.height,"empty-text":t.emptyText,"empty-cell-text":t.emptyCellText,"show-axis-pager":t.showAxisPager,"show-evidence":t.showEvidence},{empty:e.withCtx(()=>[e.renderSlot(o.$slots,"empty",{},void 0,!0)]),_:3},8,["view-model","loading","error","height","empty-text","empty-cell-text","show-axis-pager","show-evidence"])):(e.openBlock(),e.createElementBlock("section",sl,e.toDisplayString(l.value),1))}}),[["__scopeId","data-v-d32e5d1c"]]),We=Ze.create({baseURL:"/data-viewer/api/saved-query",timeout:3e4,headers:{"Content-Type":"application/json"}});async function nn(t){var n;const a=await We.post("",t);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"保存查询失败");return a.data.data}async function an(t,a){var o;const n={};a&&(n.businessId=a);const l=await We.get(`/list/${encodeURIComponent(t)}`,{params:n});if(!l.data||l.data.code!==200)throw new Error(((o=l.data)==null?void 0:o.msg)||"获取查询列表失败");return l.data.data}async function dl(t){var n;const a=await We.get(`/${t}`);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"获取查询详情失败");return a.data.data}async function ul(t,a){var l;const n=await We.put(`/${t}`,a);if(!n.data||n.data.code!==200)throw new Error(((l=n.data)==null?void 0:l.msg)||"更新查询失败");return n.data.data}async function on(t){var n;const a=await We.delete(`/${t}`);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"删除查询失败")}async function ln(t){var n;const a=await We.post(`/${t}/apply`);if(!a.data||a.data.code!==200)throw new Error(((n=a.data)==null?void 0:n.msg)||"应用查询失败");return a.data.data}We.interceptors.response.use(t=>t,t=>{var a,n;return((a=t.response)==null?void 0:a.status)===503?Promise.reject(new Error("保存查询功能未启用,请配置 SecurityIdentityResolver")):((n=t.response)==null?void 0:n.status)===404?Promise.reject(new Error("查询不存在")):Promise.reject(t)});const ml={class:"option-manager"},rn=re(e.defineComponent({__name:"OptionManagerDialog",props:{modelValue:{type:Boolean},condition:{}},emits:["update:modelValue","save"],setup(t,{emit:a}){const n=t,l=a,o=e.computed({get:()=>n.modelValue,set:m=>l("update:modelValue",m)}),i=e.ref([]);e.watch(()=>n.condition,m=>{m!=null&&m.options?i.value=JSON.parse(JSON.stringify(m.options)):i.value=[]},{immediate:!0});function h(){i.value.push({label:"",value:""})}function r(m){i.value.splice(m,1)}function c(){l("save",i.value.filter(m=>m.label&&m.value)),o.value=!1}return(m,y)=>{const p=e.resolveComponent("el-button"),b=e.resolveComponent("el-input"),k=e.resolveComponent("el-table-column"),d=e.resolveComponent("el-table"),V=e.resolveComponent("el-dialog");return e.openBlock(),e.createBlock(V,{modelValue:o.value,"onUpdate:modelValue":y[1]||(y[1]=C=>o.value=C),title:"配置选项",width:"500px"},{footer:e.withCtx(()=>[e.createVNode(p,{onClick:y[0]||(y[0]=C=>o.value=!1)},{default:e.withCtx(()=>[...y[3]||(y[3]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(p,{type:"primary",onClick:c},{default:e.withCtx(()=>[...y[4]||(y[4]=[e.createTextVNode("确定",-1)])]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",ml,[e.createVNode(p,{icon:e.unref(It),onClick:h,class:"mb-3"},{default:e.withCtx(()=>[...y[2]||(y[2]=[e.createTextVNode(" 添加选项 ",-1)])]),_:1},8,["icon"]),e.createVNode(d,{data:i.value,border:""},{default:e.withCtx(()=>[e.createVNode(k,{label:"显示文本",width:"200"},{default:e.withCtx(({row:C})=>[e.createVNode(b,{modelValue:C.label,"onUpdate:modelValue":R=>C.label=R,placeholder:"显示文本"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e.createVNode(k,{label:"值"},{default:e.withCtx(({row:C})=>[e.createVNode(b,{modelValue:C.value,"onUpdate:modelValue":R=>C.value=R,placeholder:"实际值"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e.createVNode(k,{label:"操作",width:"80",align:"center"},{default:e.withCtx(({$index:C})=>[e.createVNode(p,{icon:e.unref(at),link:"",type:"danger",onClick:R=>r(C)},null,8,["icon","onClick"])]),_:1})]),_:1},8,["data"])])]),_:1},8,["modelValue"])}}}),[["__scopeId","data-v-70240ac8"]]),fl={class:"step-content"},pl={class:"step-panel"},hl={class:"column-selector"},gl={class:"selection-actions mb-3"},yl={class:"column-info"},wl={class:"column-title"},bl={class:"step-panel"},Vl={class:"condition-config"},kl={key:0,class:"empty-hint"},Cl={class:"condition-header"},_l={class:"condition-index"},Nl={key:1,class:"param-options"},xl={class:"step-panel"},El={class:"visibility-hint"},Sl={class:"query-preview"},Bl={key:0,class:"preview-section mt-3"},Ml={key:1,class:"preview-section mt-3"},Dl={class:"dialog-footer"},sn=re(e.defineComponent({__name:"SaveQueryDialog",props:{modelValue:{type:Boolean},model:{},businessId:{},availableColumns:{},currentColumns:{default:()=>[]},currentSlice:{default:()=>[]},orderBy:{default:()=>[]}},emits:["update:modelValue","saved"],setup(t,{emit:a}){const n=t,l=a,o=e.computed({get:()=>n.modelValue,set:P=>l("update:modelValue",P)}),i=e.ref(0),h=e.ref(!1),r=e.ref(""),c=e.ref([]),m=e.ref(!1),y=e.computed(()=>{if(!r.value)return n.availableColumns;const P=r.value.toLowerCase();return n.availableColumns.filter(S=>{var z;return S.name.toLowerCase().includes(P)||((z=S.title)==null?void 0:z.toLowerCase().includes(P))})}),p=e.computed(()=>{const P=c.value.length;return P>0&&P<n.availableColumns.length});function b(P){P?c.value=n.availableColumns.map(S=>S.name):c.value=[]}function k(){const P=new Set(n.availableColumns.map(z=>z.name)),S=new Set(c.value);c.value=Array.from(P).filter(z=>!S.has(z))}e.watch(c,P=>{m.value=P.length===n.availableColumns.length});const d=e.ref([]),V=e.ref(!1),C=e.ref(null);function R(){d.value.push({field:"",op:"=",value:void 0,paramType:"fixed",options:[]})}function H(P){d.value.splice(P,1)}function N(P){P.value=void 0,P.defaultValue=void 0,P.options=[]}function D(P){C.value=P,V.value=!0}function K(P){C.value&&(C.value.options=P)}const M=e.ref(),x=e.ref({title:"",description:"",visibility:"PRIVATE"}),O={title:[{required:!0,message:"请输入查询名称",trigger:"blur"},{min:2,max:50,message:"长度在 2 到 50 个字符",trigger:"blur"}]};function I(P){const S=n.availableColumns.find(z=>z.name===P);return(S==null?void 0:S.title)||P}const W=e.computed(()=>i.value===0?c.value.length>0:i.value===1?d.value.every(P=>P.field&&P.op&&(P.paramType==="fixed"?!0:P.options&&P.options.length>0)):!0);function Z(){if(!W.value){X.ElMessage.warning("请完成当前步骤的必填项");return}i.value<2&&i.value++}function ie(){i.value>0&&i.value--}async function ue(){if(M.value){await M.value.validate(),h.value=!0;try{const P=d.value.map(ne=>({field:ne.field,op:ne.op,value:ne.defaultValue})),S={businessId:n.businessId,model:n.model,title:x.value.title,description:x.value.description,columns:c.value,slice:P,orderBy:n.orderBy,visibility:x.value.visibility},z=await nn(S);X.ElMessage.success("查询保存成功"),l("saved",z),o.value=!1,de()}catch(P){X.ElMessage.error(P.message||"保存失败")}finally{h.value=!1}}}function de(){var P;i.value=0,c.value=[],d.value=[],x.value={title:"",description:"",visibility:"PRIVATE"},(P=M.value)==null||P.clearValidate()}return e.watch(o,P=>{P&&n.currentColumns.length>0&&(c.value=[...n.currentColumns]),P&&n.currentSlice.length>0&&(d.value=n.currentSlice.map(S=>({...S,paramType:"fixed",defaultValue:S.value,options:[]})))}),(P,S)=>{const z=e.resolveComponent("el-step"),ne=e.resolveComponent("el-steps"),se=e.resolveComponent("el-input"),we=e.resolveComponent("el-checkbox"),te=e.resolveComponent("el-button"),me=e.resolveComponent("el-tag"),Me=e.resolveComponent("el-checkbox-group"),be=e.resolveComponent("el-scrollbar"),w=e.resolveComponent("el-empty"),f=e.resolveComponent("el-option"),v=e.resolveComponent("el-select"),$=e.resolveComponent("el-form-item"),q=e.resolveComponent("el-radio"),Q=e.resolveComponent("el-radio-group"),oe=e.resolveComponent("el-form"),J=e.resolveComponent("el-card"),fe=e.resolveComponent("el-icon"),le=e.resolveComponent("el-alert"),De=e.resolveComponent("el-divider"),pe=e.resolveComponent("el-descriptions-item"),Ve=e.resolveComponent("el-descriptions"),ke=e.resolveComponent("el-dialog");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(ke,{modelValue:o.value,"onUpdate:modelValue":S[7]||(S[7]=F=>o.value=F),title:"保存查询",width:"800px","close-on-click-modal":!1,onClose:de},{footer:e.withCtx(()=>[e.createElementVNode("div",Dl,[e.createVNode(te,{onClick:S[6]||(S[6]=F=>o.value=!1)},{default:e.withCtx(()=>[...S[26]||(S[26]=[e.createTextVNode("取消",-1)])]),_:1}),i.value>0?(e.openBlock(),e.createBlock(te,{key:0,onClick:ie},{default:e.withCtx(()=>[...S[27]||(S[27]=[e.createTextVNode(" 上一步 ",-1)])]),_:1})):e.createCommentVNode("",!0),i.value<2?(e.openBlock(),e.createBlock(te,{key:1,type:"primary",onClick:Z,disabled:!W.value},{default:e.withCtx(()=>[...S[28]||(S[28]=[e.createTextVNode(" 下一步 ",-1)])]),_:1},8,["disabled"])):e.createCommentVNode("",!0),i.value===2?(e.openBlock(),e.createBlock(te,{key:2,type:"primary",onClick:ue,loading:h.value},{default:e.withCtx(()=>[...S[29]||(S[29]=[e.createTextVNode(" 保存查询 ",-1)])]),_:1},8,["loading"])):e.createCommentVNode("",!0)])]),default:e.withCtx(()=>[e.createVNode(ne,{active:i.value,"finish-status":"success","align-center":"",class:"mb-6"},{default:e.withCtx(()=>[e.createVNode(z,{title:"选择列",icon:"Grid"}),e.createVNode(z,{title:"设置查询条件",icon:"Filter"}),e.createVNode(z,{title:"命名和确认",icon:"CircleCheck"})]),_:1},8,["active"]),e.createElementVNode("div",fl,[e.withDirectives(e.createElementVNode("div",pl,[S[10]||(S[10]=e.createElementVNode("div",{class:"step-title"},[e.createElementVNode("h3",null,"选择要保存的字段"),e.createElementVNode("p",{class:"step-desc"},"从所有可用字段中选择需要保存在查询中的列")],-1)),e.createElementVNode("div",hl,[e.createVNode(se,{modelValue:r.value,"onUpdate:modelValue":S[0]||(S[0]=F=>r.value=F),placeholder:"搜索字段...","prefix-icon":e.unref(gt),clearable:"",class:"mb-3"},null,8,["modelValue","prefix-icon"]),e.createElementVNode("div",gl,[e.createVNode(we,{modelValue:m.value,"onUpdate:modelValue":S[1]||(S[1]=F=>m.value=F),indeterminate:p.value,onChange:b},{default:e.withCtx(()=>[e.createTextVNode(" 全选 ("+e.toDisplayString(c.value.length)+"/"+e.toDisplayString(t.availableColumns.length)+") ",1)]),_:1},8,["modelValue","indeterminate"]),e.createVNode(te,{link:"",onClick:k},{default:e.withCtx(()=>[...S[9]||(S[9]=[e.createTextVNode("反选",-1)])]),_:1})]),e.createVNode(be,{height:"350px"},{default:e.withCtx(()=>[e.createVNode(Me,{modelValue:c.value,"onUpdate:modelValue":S[2]||(S[2]=F=>c.value=F),class:"column-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,F=>(e.openBlock(),e.createElementBlock("div",{key:F.name,class:"column-item"},[e.createVNode(we,{label:F.name},{default:e.withCtx(()=>[e.createElementVNode("div",yl,[e.createElementVNode("span",wl,e.toDisplayString(F.title||F.name),1),F.type?(e.openBlock(),e.createBlock(me,{key:0,size:"small",type:"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(F.type),1)]),_:2},1024)):e.createCommentVNode("",!0)])]),_:2},1032,["label"])]))),128))]),_:1},8,["modelValue"])]),_:1})])],512),[[e.vShow,i.value===0]]),e.withDirectives(e.createElementVNode("div",bl,[S[16]||(S[16]=e.createElementVNode("div",{class:"step-title"},[e.createElementVNode("h3",null,"配置查询条件"),e.createElementVNode("p",{class:"step-desc"},"设置筛选条件的参数(单选/多选/默认值)")],-1)),e.createElementVNode("div",Vl,[e.createVNode(te,{icon:e.unref(It),onClick:R,class:"mb-3"},{default:e.withCtx(()=>[...S[11]||(S[11]=[e.createTextVNode(" 添加筛选条件 ",-1)])]),_:1},8,["icon"]),d.value.length===0?(e.openBlock(),e.createElementBlock("div",kl,[e.createVNode(w,{description:"暂无筛选条件,点击上方按钮添加"})])):(e.openBlock(),e.createBlock(be,{key:1,height:"400px"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(F,Ce)=>(e.openBlock(),e.createBlock(J,{key:Ce,class:"condition-card mb-3",shadow:"hover"},{default:e.withCtx(()=>[e.createElementVNode("div",Cl,[e.createElementVNode("span",_l,"#"+e.toDisplayString(Ce+1),1),e.createVNode(te,{icon:e.unref(at),text:"",type:"danger",onClick:G=>H(Ce)},null,8,["icon","onClick"])]),e.createVNode(oe,{"label-width":"100px",class:"condition-form"},{default:e.withCtx(()=>[e.createVNode($,{label:"筛选字段"},{default:e.withCtx(()=>[e.createVNode(v,{modelValue:F.field,"onUpdate:modelValue":G=>F.field=G,placeholder:"选择字段",filterable:"",onChange:G=>N(F)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.availableColumns,G=>(e.openBlock(),e.createBlock(f,{key:G.name,label:G.title||G.name,value:G.name},null,8,["label","value"]))),128))]),_:1},8,["modelValue","onUpdate:modelValue","onChange"])]),_:2},1024),e.createVNode($,{label:"操作符"},{default:e.withCtx(()=>[e.createVNode(v,{modelValue:F.op,"onUpdate:modelValue":G=>F.op=G,placeholder:"选择操作符"},{default:e.withCtx(()=>[e.createVNode(f,{label:"等于 (=)",value:"="}),e.createVNode(f,{label:"不等于 (!=)",value:"!="}),e.createVNode(f,{label:"大于 (>)",value:">"}),e.createVNode(f,{label:"大于等于 (>=)",value:">="}),e.createVNode(f,{label:"小于 (<)",value:"<"}),e.createVNode(f,{label:"小于等于 (<=)",value:"<="}),e.createVNode(f,{label:"包含 (IN)",value:"in"}),e.createVNode(f,{label:"不包含 (NOT IN)",value:"not in"}),e.createVNode(f,{label:"范围 (BETWEEN)",value:"between"}),e.createVNode(f,{label:"模糊匹配 (LIKE)",value:"like"}),e.createVNode(f,{label:"为空 (IS NULL)",value:"is null"}),e.createVNode(f,{label:"不为空 (IS NOT NULL)",value:"is not null"})]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e.createVNode($,{label:"参数类型"},{default:e.withCtx(()=>[e.createVNode(Q,{modelValue:F.paramType,"onUpdate:modelValue":G=>F.paramType=G},{default:e.withCtx(()=>[e.createVNode(q,{label:"fixed"},{default:e.withCtx(()=>[...S[12]||(S[12]=[e.createTextVNode("固定值",-1)])]),_:1}),e.createVNode(q,{label:"single"},{default:e.withCtx(()=>[...S[13]||(S[13]=[e.createTextVNode("单选",-1)])]),_:1}),e.createVNode(q,{label:"multiple"},{default:e.withCtx(()=>[...S[14]||(S[14]=[e.createTextVNode("多选",-1)])]),_:1})]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024),["is null","is not null"].includes(F.op)?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock($,{key:0,label:"默认值"},{default:e.withCtx(()=>[F.paramType==="fixed"?(e.openBlock(),e.createBlock(se,{key:0,modelValue:F.defaultValue,"onUpdate:modelValue":G=>F.defaultValue=G,placeholder:"输入默认值"},null,8,["modelValue","onUpdate:modelValue"])):(e.openBlock(),e.createElementBlock("div",Nl,[F.paramType==="single"?(e.openBlock(),e.createBlock(v,{key:0,modelValue:F.defaultValue,"onUpdate:modelValue":G=>F.defaultValue=G,placeholder:"选择默认值",clearable:""},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(F.options,G=>(e.openBlock(),e.createBlock(f,{key:G.value,label:G.label,value:G.value},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])):F.paramType==="multiple"?(e.openBlock(),e.createBlock(v,{key:1,modelValue:F.defaultValue,"onUpdate:modelValue":G=>F.defaultValue=G,placeholder:"选择默认值",multiple:"",clearable:""},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(F.options,G=>(e.openBlock(),e.createBlock(f,{key:G.value,label:G.label,value:G.value},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0),e.createVNode(te,{icon:e.unref(Ha),onClick:G=>D(F),class:"ml-2"},{default:e.withCtx(()=>[...S[15]||(S[15]=[e.createTextVNode(" 配置选项 ",-1)])]),_:1},8,["icon","onClick"])]))]),_:2},1024)),e.createVNode($,{label:"显示名称"},{default:e.withCtx(()=>[e.createVNode(se,{modelValue:F.label,"onUpdate:modelValue":G=>F.label=G,placeholder:"可选,在查询界面显示的名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1}))])],512),[[e.vShow,i.value===1]]),e.withDirectives(e.createElementVNode("div",xl,[S[25]||(S[25]=e.createElementVNode("div",{class:"step-title"},[e.createElementVNode("h3",null,"填写查询信息"),e.createElementVNode("p",{class:"step-desc"},"为查询命名并选择可见范围")],-1)),e.createVNode(oe,{ref_key:"formRef",ref:M,model:x.value,rules:O,"label-width":"100px",class:"naming-form"},{default:e.withCtx(()=>[e.createVNode($,{label:"查询名称",prop:"title"},{default:e.withCtx(()=>[e.createVNode(se,{modelValue:x.value.title,"onUpdate:modelValue":S[3]||(S[3]=F=>x.value.title=F),placeholder:"请输入查询名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),e.createVNode($,{label:"描述",prop:"description"},{default:e.withCtx(()=>[e.createVNode(se,{modelValue:x.value.description,"onUpdate:modelValue":S[4]||(S[4]=F=>x.value.description=F),type:"textarea",rows:3,placeholder:"可选,描述查询用途",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),e.createVNode($,{label:"可见性",prop:"visibility"},{default:e.withCtx(()=>[e.createVNode(Q,{modelValue:x.value.visibility,"onUpdate:modelValue":S[5]||(S[5]=F=>x.value.visibility=F)},{default:e.withCtx(()=>[e.createVNode(q,{label:"PRIVATE"},{default:e.withCtx(()=>[e.createVNode(fe,null,{default:e.withCtx(()=>[e.createVNode(e.unref(zt))]),_:1}),S[17]||(S[17]=e.createTextVNode(" 仅自己可见 ",-1))]),_:1}),e.createVNode(q,{label:"DEPARTMENT"},{default:e.withCtx(()=>[e.createVNode(fe,null,{default:e.withCtx(()=>[e.createVNode(e.unref(ht))]),_:1}),S[18]||(S[18]=e.createTextVNode(" 部门内共享 ",-1))]),_:1}),e.createVNode(q,{label:"TENANT"},{default:e.withCtx(()=>[e.createVNode(fe,null,{default:e.withCtx(()=>[e.createVNode(e.unref(ft))]),_:1}),S[19]||(S[19]=e.createTextVNode(" 全公司共享 ",-1))]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",El,[x.value.visibility==="PRIVATE"?(e.openBlock(),e.createBlock(le,{key:0,type:"info",closable:!1,"show-icon":""},{default:e.withCtx(()=>[...S[20]||(S[20]=[e.createTextVNode(" 只有您自己可以查看和使用此查询 ",-1)])]),_:1})):x.value.visibility==="DEPARTMENT"?(e.openBlock(),e.createBlock(le,{key:1,type:"warning",closable:!1,"show-icon":""},{default:e.withCtx(()=>[...S[21]||(S[21]=[e.createTextVNode(" 您所在部门的所有成员都可以查看和使用此查询 ",-1)])]),_:1})):(e.openBlock(),e.createBlock(le,{key:2,type:"success",closable:!1,"show-icon":""},{default:e.withCtx(()=>[...S[22]||(S[22]=[e.createTextVNode(" 公司内所有成员都可以查看和使用此查询 ",-1)])]),_:1}))])]),_:1}),e.createVNode(De),e.createVNode($,{label:"查询预览"},{default:e.withCtx(()=>[e.createElementVNode("div",Sl,[e.createVNode(Ve,{column:2,border:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(pe,{label:"包含字段"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.value.length)+" 个 ",1)]),_:1}),e.createVNode(pe,{label:"筛选条件"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.value.length)+" 个 ",1)]),_:1}),e.createVNode(pe,{label:"排序规则",span:2},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.orderBy.length)+" 个 ",1)]),_:1})]),_:1}),c.value.length>0?(e.openBlock(),e.createElementBlock("div",Bl,[S[23]||(S[23]=e.createElementVNode("h5",null,"选中的字段:",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,F=>(e.openBlock(),e.createBlock(me,{key:F,size:"small",class:"mr-1 mb-1"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(I(F)),1)]),_:2},1024))),128))])):e.createCommentVNode("",!0),d.value.length>0?(e.openBlock(),e.createElementBlock("div",Ml,[S[24]||(S[24]=e.createElementVNode("h5",null,"筛选条件:",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(F,Ce)=>(e.openBlock(),e.createElementBlock("div",{key:Ce,class:"condition-preview"},[e.createVNode(me,{type:"warning",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(I(F.field))+" "+e.toDisplayString(F.op)+" ",1),F.defaultValue?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(F.defaultValue),1)],64)):e.createCommentVNode("",!0),e.createTextVNode(" ("+e.toDisplayString(F.paramType==="fixed"?"固定":F.paramType==="single"?"单选":"多选")+") ",1)]),_:2},1024)]))),128))])):e.createCommentVNode("",!0)])]),_:1})]),_:1},8,["model"])],512),[[e.vShow,i.value===2]])])]),_:1},8,["modelValue"]),e.createVNode(rn,{modelValue:V.value,"onUpdate:modelValue":S[8]||(S[8]=F=>V.value=F),condition:C.value,onSave:K},null,8,["modelValue","condition"])],64)}}}),[["__scopeId","data-v-3bc95ece"]]);function ce(t){const a=Object.prototype.toString.call(t);return t instanceof Date||typeof t=="object"&&a==="[object Date]"?new t.constructor(+t):typeof t=="number"||a==="[object Number]"||typeof t=="string"||a==="[object String]"?new Date(t):new Date(NaN)}function vl(t,a){return t instanceof Date?new t.constructor(a):new Date(a)}const it=43200,cn=1440;let Tl={};function dn(){return Tl}function un(t,a){var r,c,m,y;const n=dn(),l=(a==null?void 0:a.weekStartsOn)??((c=(r=a==null?void 0:a.locale)==null?void 0:r.options)==null?void 0:c.weekStartsOn)??n.weekStartsOn??((y=(m=n.locale)==null?void 0:m.options)==null?void 0:y.weekStartsOn)??0,o=ce(t),i=o.getDay(),h=(i<l?7:0)+i-l;return o.setDate(o.getDate()-h),o.setHours(0,0,0,0),o}function mn(t){const a=ce(t),n=new Date(Date.UTC(a.getFullYear(),a.getMonth(),a.getDate(),a.getHours(),a.getMinutes(),a.getSeconds(),a.getMilliseconds()));return n.setUTCFullYear(a.getFullYear()),+t-+n}function st(t,a){const n=ce(t),l=ce(a),o=n.getTime()-l.getTime();return o<0?-1:o>0?1:o}function $l(t){return vl(t,Date.now())}function Pl(t,a){const n=ce(t),l=ce(a),o=n.getFullYear()-l.getFullYear(),i=n.getMonth()-l.getMonth();return o*12+i}function Fl(t){return a=>{const l=(t?Math[t]:Math.trunc)(a);return l===0?0:l}}function Ll(t,a){return+ce(t)-+ce(a)}function Al(t){const a=ce(t);return a.setHours(23,59,59,999),a}function Il(t){const a=ce(t),n=a.getMonth();return a.setFullYear(a.getFullYear(),n+1,0),a.setHours(23,59,59,999),a}function zl(t){const a=ce(t);return+Al(a)==+Il(a)}function Rl(t,a){const n=ce(t),l=ce(a),o=st(n,l),i=Math.abs(Pl(n,l));let h;if(i<1)h=0;else{n.getMonth()===1&&n.getDate()>27&&n.setDate(30),n.setMonth(n.getMonth()-o*i);let r=st(n,l)===-o;zl(ce(t))&&i===1&&st(t,l)===1&&(r=!1),h=o*(i-Number(r))}return h===0?0:h}function Ol(t,a,n){const l=Ll(t,a)/1e3;return Fl(n==null?void 0:n.roundingMethod)(l)}const Wl={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Ql=(t,a,n)=>{let l;const o=Wl[t];return typeof o=="string"?l=o:a===1?l=o.one:l=o.other.replace("{{count}}",a.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+l:l+" ago":l};function Ue(t){return(a={})=>{const n=a.width?String(a.width):t.defaultWidth;return t.formats[n]||t.formats[t.defaultWidth]}}const Ul={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Hl={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},ql={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},jl={date:Ue({formats:Ul,defaultWidth:"full"}),time:Ue({formats:Hl,defaultWidth:"full"}),dateTime:Ue({formats:ql,defaultWidth:"full"})},Yl={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Gl=(t,a,n,l)=>Yl[t];function Se(t){return(a,n)=>{const l=n!=null&&n.context?String(n.context):"standalone";let o;if(l==="formatting"&&t.formattingValues){const h=t.defaultFormattingWidth||t.defaultWidth,r=n!=null&&n.width?String(n.width):h;o=t.formattingValues[r]||t.formattingValues[h]}else{const h=t.defaultWidth,r=n!=null&&n.width?String(n.width):t.defaultWidth;o=t.values[r]||t.values[h]}const i=t.argumentCallback?t.argumentCallback(a):a;return o[i]}}const Kl={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Xl={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Jl={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Zl={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},er={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},tr={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},nr={ordinalNumber:(t,a)=>{const n=Number(t),l=n%100;if(l>20||l<10)switch(l%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:Se({values:Kl,defaultWidth:"wide"}),quarter:Se({values:Xl,defaultWidth:"wide",argumentCallback:t=>t-1}),month:Se({values:Jl,defaultWidth:"wide"}),day:Se({values:Zl,defaultWidth:"wide"}),dayPeriod:Se({values:er,defaultWidth:"wide",formattingValues:tr,defaultFormattingWidth:"wide"})};function Be(t){return(a,n={})=>{const l=n.width,o=l&&t.matchPatterns[l]||t.matchPatterns[t.defaultMatchWidth],i=a.match(o);if(!i)return null;const h=i[0],r=l&&t.parsePatterns[l]||t.parsePatterns[t.defaultParseWidth],c=Array.isArray(r)?or(r,p=>p.test(h)):ar(r,p=>p.test(h));let m;m=t.valueCallback?t.valueCallback(c):c,m=n.valueCallback?n.valueCallback(m):m;const y=a.slice(h.length);return{value:m,rest:y}}}function ar(t,a){for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&a(t[n]))return n}function or(t,a){for(let n=0;n<t.length;n++)if(a(t[n]))return n}function fn(t){return(a,n={})=>{const l=a.match(t.matchPattern);if(!l)return null;const o=l[0],i=a.match(t.parsePattern);if(!i)return null;let h=t.valueCallback?t.valueCallback(i[0]):i[0];h=n.valueCallback?n.valueCallback(h):h;const r=a.slice(o.length);return{value:h,rest:r}}}const lr=/^(\d+)(th|st|nd|rd)?/i,rr=/\d+/i,ir={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},sr={any:[/^b/i,/^(a|c)/i]},cr={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},dr={any:[/1/i,/2/i,/3/i,/4/i]},ur={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},mr={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},fr={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},pr={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},hr={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},gr={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},yr={ordinalNumber:fn({matchPattern:lr,parsePattern:rr,valueCallback:t=>parseInt(t,10)}),era:Be({matchPatterns:ir,defaultMatchWidth:"wide",parsePatterns:sr,defaultParseWidth:"any"}),quarter:Be({matchPatterns:cr,defaultMatchWidth:"wide",parsePatterns:dr,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Be({matchPatterns:ur,defaultMatchWidth:"wide",parsePatterns:mr,defaultParseWidth:"any"}),day:Be({matchPatterns:fr,defaultMatchWidth:"wide",parsePatterns:pr,defaultParseWidth:"any"}),dayPeriod:Be({matchPatterns:hr,defaultMatchWidth:"any",parsePatterns:gr,defaultParseWidth:"any"})},wr={code:"en-US",formatDistance:Ql,formatLong:jl,formatRelative:Gl,localize:nr,match:yr,options:{weekStartsOn:0,firstWeekContainsDate:1}};function br(t,a,n){const l=dn(),o=(n==null?void 0:n.locale)??l.locale??wr,i=2520,h=st(t,a);if(isNaN(h))throw new RangeError("Invalid time value");const r=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:h});let c,m;h>0?(c=ce(a),m=ce(t)):(c=ce(t),m=ce(a));const y=Ol(m,c),p=(mn(m)-mn(c))/1e3,b=Math.round((y-p)/60);let k;if(b<2)return n!=null&&n.includeSeconds?y<5?o.formatDistance("lessThanXSeconds",5,r):y<10?o.formatDistance("lessThanXSeconds",10,r):y<20?o.formatDistance("lessThanXSeconds",20,r):y<40?o.formatDistance("halfAMinute",0,r):y<60?o.formatDistance("lessThanXMinutes",1,r):o.formatDistance("xMinutes",1,r):b===0?o.formatDistance("lessThanXMinutes",1,r):o.formatDistance("xMinutes",b,r);if(b<45)return o.formatDistance("xMinutes",b,r);if(b<90)return o.formatDistance("aboutXHours",1,r);if(b<cn){const d=Math.round(b/60);return o.formatDistance("aboutXHours",d,r)}else{if(b<i)return o.formatDistance("xDays",1,r);if(b<it){const d=Math.round(b/cn);return o.formatDistance("xDays",d,r)}else if(b<it*2)return k=Math.round(b/it),o.formatDistance("aboutXMonths",k,r)}if(k=Rl(m,c),k<12){const d=Math.round(b/it);return o.formatDistance("xMonths",d,r)}else{const d=k%12,V=Math.trunc(k/12);return d<3?o.formatDistance("aboutXYears",V,r):d<9?o.formatDistance("overXYears",V,r):o.formatDistance("almostXYears",V+1,r)}}function Vr(t,a){return br(t,$l(t),a)}function kr(t,a,n){const l=un(t,n),o=un(a,n);return+l==+o}const Cr={lessThanXSeconds:{one:"不到 1 秒",other:"不到 {{count}} 秒"},xSeconds:{one:"1 秒",other:"{{count}} 秒"},halfAMinute:"半分钟",lessThanXMinutes:{one:"不到 1 分钟",other:"不到 {{count}} 分钟"},xMinutes:{one:"1 分钟",other:"{{count}} 分钟"},xHours:{one:"1 小时",other:"{{count}} 小时"},aboutXHours:{one:"大约 1 小时",other:"大约 {{count}} 小时"},xDays:{one:"1 天",other:"{{count}} 天"},aboutXWeeks:{one:"大约 1 个星期",other:"大约 {{count}} 个星期"},xWeeks:{one:"1 个星期",other:"{{count}} 个星期"},aboutXMonths:{one:"大约 1 个月",other:"大约 {{count}} 个月"},xMonths:{one:"1 个月",other:"{{count}} 个月"},aboutXYears:{one:"大约 1 年",other:"大约 {{count}} 年"},xYears:{one:"1 年",other:"{{count}} 年"},overXYears:{one:"超过 1 年",other:"超过 {{count}} 年"},almostXYears:{one:"将近 1 年",other:"将近 {{count}} 年"}},_r=(t,a,n)=>{let l;const o=Cr[t];return typeof o=="string"?l=o:a===1?l=o.one:l=o.other.replace("{{count}}",String(a)),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?l+"内":l+"前":l},Nr={full:"y'年'M'月'd'日' EEEE",long:"y'年'M'月'd'日'",medium:"yyyy-MM-dd",short:"yy-MM-dd"},xr={full:"zzzz a h:mm:ss",long:"z a h:mm:ss",medium:"a h:mm:ss",short:"a h:mm"},Er={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Sr={date:Ue({formats:Nr,defaultWidth:"full"}),time:Ue({formats:xr,defaultWidth:"full"}),dateTime:Ue({formats:Er,defaultWidth:"full"})};function pn(t,a,n){const l="eeee p";return kr(t,a,n)?l:t.getTime()>a.getTime()?"'下个'"+l:"'上个'"+l}const Br={lastWeek:pn,yesterday:"'昨天' p",today:"'今天' p",tomorrow:"'明天' p",nextWeek:pn,other:"PP p"},Mr=(t,a,n,l)=>{const o=Br[t];return typeof o=="function"?o(a,n,l):o},Dr={narrow:["前","公元"],abbreviated:["前","公元"],wide:["公元前","公元"]},vr={narrow:["1","2","3","4"],abbreviated:["第一季","第二季","第三季","第四季"],wide:["第一季度","第二季度","第三季度","第四季度"]},Tr={narrow:["一","二","三","四","五","六","七","八","九","十","十一","十二"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},$r={narrow:["日","一","二","三","四","五","六"],short:["日","一","二","三","四","五","六"],abbreviated:["周日","周一","周二","周三","周四","周五","周六"],wide:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},Pr={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},Fr={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},Lr={ordinalNumber:(t,a)=>{const n=Number(t);switch(a==null?void 0:a.unit){case"date":return n.toString()+"日";case"hour":return n.toString()+"时";case"minute":return n.toString()+"分";case"second":return n.toString()+"秒";default:return"第 "+n.toString()}},era:Se({values:Dr,defaultWidth:"wide"}),quarter:Se({values:vr,defaultWidth:"wide",argumentCallback:t=>t-1}),month:Se({values:Tr,defaultWidth:"wide"}),day:Se({values:$r,defaultWidth:"wide"}),dayPeriod:Se({values:Pr,defaultWidth:"wide",formattingValues:Fr,defaultFormattingWidth:"wide"})},Ar=/^(第\s*)?\d+(日|时|分|秒)?/i,Ir=/\d+/i,zr={narrow:/^(前)/i,abbreviated:/^(前)/i,wide:/^(公元前|公元)/i},Rr={any:[/^(前)/i,/^(公元)/i]},Or={narrow:/^[1234]/i,abbreviated:/^第[一二三四]刻/i,wide:/^第[一二三四]刻钟/i},Wr={any:[/(1|一)/i,/(2|二)/i,/(3|三)/i,/(4|四)/i]},Qr={narrow:/^(一|二|三|四|五|六|七|八|九|十[二一])/i,abbreviated:/^(一|二|三|四|五|六|七|八|九|十[二一]|\d|1[12])月/i,wide:/^(一|二|三|四|五|六|七|八|九|十[二一])月/i},Ur={narrow:[/^一/i,/^二/i,/^三/i,/^四/i,/^五/i,/^六/i,/^七/i,/^八/i,/^九/i,/^十(?!(一|二))/i,/^十一/i,/^十二/i],any:[/^一|1/i,/^二|2/i,/^三|3/i,/^四|4/i,/^五|5/i,/^六|6/i,/^七|7/i,/^八|8/i,/^九|9/i,/^十(?!(一|二))|10/i,/^十一|11/i,/^十二|12/i]},Hr={narrow:/^[一二三四五六日]/i,short:/^[一二三四五六日]/i,abbreviated:/^周[一二三四五六日]/i,wide:/^星期[一二三四五六日]/i},qr={any:[/日/i,/一/i,/二/i,/三/i,/四/i,/五/i,/六/i]},jr={any:/^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨|)/i},Yr={any:{am:/^上午?/i,pm:/^下午?/i,midnight:/^午夜/i,noon:/^[中正]午/i,morning:/^早上/i,afternoon:/^下午/i,evening:/^晚上?/i,night:/^凌晨/i}},Gr={ordinalNumber:fn({matchPattern:Ar,parsePattern:Ir,valueCallback:t=>parseInt(t,10)}),era:Be({matchPatterns:zr,defaultMatchWidth:"wide",parsePatterns:Rr,defaultParseWidth:"any"}),quarter:Be({matchPatterns:Or,defaultMatchWidth:"wide",parsePatterns:Wr,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Be({matchPatterns:Qr,defaultMatchWidth:"wide",parsePatterns:Ur,defaultParseWidth:"any"}),day:Be({matchPatterns:Hr,defaultMatchWidth:"wide",parsePatterns:qr,defaultParseWidth:"any"}),dayPeriod:Be({matchPatterns:jr,defaultMatchWidth:"any",parsePatterns:Yr,defaultParseWidth:"any"})},Kr={code:"zh-CN",formatDistance:_r,formatLong:Sr,formatRelative:Mr,localize:Lr,match:Gr,options:{weekStartsOn:1,firstWeekContainsDate:4}},Xr={class:"query-search mb-4"},Jr={class:"query-container"},Zr={class:"query-section"},ei={class:"section-header"},ti={key:0,class:"loading-container"},ni={key:1,class:"empty-hint"},ai={class:"query-header"},oi={class:"query-title"},li={key:0,class:"query-desc"},ri={class:"query-meta"},ii={class:"query-date"},si={class:"query-stats"},ci={class:"query-section"},di={class:"section-header"},ui={key:0,class:"loading-container"},mi={key:1,class:"empty-hint"},fi={class:"query-header"},pi={class:"query-title"},hi={key:0,class:"query-desc"},gi={class:"query-meta"},yi={class:"query-owner"},wi={class:"query-date"},bi={class:"query-stats"},hn=re(e.defineComponent({__name:"QueryListDialog",props:{modelValue:{type:Boolean},model:{},businessId:{},currentUserId:{}},emits:["update:modelValue","apply"],setup(t,{emit:a}){const n=t,l=a,o=e.computed({get:()=>n.modelValue,set:N=>l("update:modelValue",N)}),i=e.ref([]),h=e.ref(!1),r=e.ref(""),c=e.computed(()=>i.value.filter(N=>N.ownerId===n.currentUserId)),m=e.computed(()=>i.value.filter(N=>N.ownerId!==n.currentUserId)),y=e.computed(()=>b(c.value,r.value)),p=e.computed(()=>b(m.value,r.value));function b(N,D){if(!D.trim())return N;const K=D.toLowerCase();return N.filter(M=>{var x;return M.title.toLowerCase().includes(K)||((x=M.description)==null?void 0:x.toLowerCase().includes(K))})}async function k(){h.value=!0;try{i.value=await an(n.model,n.businessId)}catch(N){X.ElMessage.error(N.message||"加载查询列表失败")}finally{h.value=!1}}async function d(N){try{const D=await ln(N.id);X.ElMessage.success(`已应用查询: ${N.title}`),l("apply",N,D.queryId),o.value=!1}catch(D){X.ElMessage.error(D.message||"应用查询失败")}}async function V(N){try{await X.ElMessageBox.confirm(`确定要删除查询"${N.title}"吗?此操作不可恢复。`,"删除确认",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning",confirmButtonClass:"el-button--danger"}),await on(N.id),X.ElMessage.success("删除成功"),i.value=i.value.filter(D=>D.id!==N.id)}catch(D){D!=="cancel"&&X.ElMessage.error(D.message||"删除失败")}}function C(N){return{PRIVATE:"仅自己",DEPARTMENT:"部门",TENANT:"全公司"}[N]||N}function R(N){return{PRIVATE:"info",DEPARTMENT:"warning",TENANT:"success"}[N]||"info"}function H(N){return Vr(new Date(N),{addSuffix:!0,locale:Kr})}return(N,D)=>{const K=e.resolveComponent("el-input"),M=e.resolveComponent("el-icon"),x=e.resolveComponent("el-tag"),O=e.resolveComponent("el-empty"),I=e.resolveComponent("el-dropdown-item"),W=e.resolveComponent("el-dropdown-menu"),Z=e.resolveComponent("el-dropdown"),ie=e.resolveComponent("el-divider"),ue=e.resolveComponent("el-card"),de=e.resolveComponent("el-scrollbar"),P=e.resolveComponent("el-button"),S=e.resolveComponent("el-dialog");return e.openBlock(),e.createBlock(S,{modelValue:o.value,"onUpdate:modelValue":D[1]||(D[1]=z=>o.value=z),title:"保存的查询",width:"900px","close-on-click-modal":!1,onOpen:k},{default:e.withCtx(()=>[e.createElementVNode("div",Xr,[e.createVNode(K,{modelValue:r.value,"onUpdate:modelValue":D[0]||(D[0]=z=>r.value=z),placeholder:"搜索查询名称或描述...","prefix-icon":e.unref(gt),clearable:""},null,8,["modelValue","prefix-icon"])]),e.createElementVNode("div",Jr,[e.createElementVNode("div",Zr,[e.createElementVNode("div",ei,[e.createElementVNode("h4",null,[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(zt))]),_:1}),D[2]||(D[2]=e.createTextVNode(" 我的查询",-1))]),e.createVNode(x,{type:"info",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.value.length),1)]),_:1})]),e.createVNode(de,{height:"450px"},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createElementBlock("div",ti,[e.createVNode(M,{class:"is-loading"},{default:e.withCtx(()=>[e.createVNode(e.unref(pt))]),_:1}),D[3]||(D[3]=e.createElementVNode("span",null,"加载中...",-1))])):c.value.length===0?(e.openBlock(),e.createElementBlock("div",ni,[e.createVNode(O,{description:"暂无保存的查询"})])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,z=>(e.openBlock(),e.createBlock(ue,{key:z.id,class:"query-card",shadow:"hover"},{default:e.withCtx(()=>{var ne;return[e.createElementVNode("div",ai,[e.createElementVNode("div",oi,[z.visibility==="PRIVATE"?(e.openBlock(),e.createBlock(M,{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(Fa))]),_:1})):z.visibility==="DEPARTMENT"?(e.openBlock(),e.createBlock(M,{key:1},{default:e.withCtx(()=>[e.createVNode(e.unref(ht))]),_:1})):(e.openBlock(),e.createBlock(M,{key:2},{default:e.withCtx(()=>[e.createVNode(e.unref(ft))]),_:1})),e.createElementVNode("span",null,e.toDisplayString(z.title),1)]),e.createVNode(Z,{trigger:"click"},{dropdown:e.withCtx(()=>[e.createVNode(W,null,{default:e.withCtx(()=>[e.createVNode(I,{onClick:se=>d(z)},{default:e.withCtx(()=>[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Ja))]),_:1}),D[4]||(D[4]=e.createTextVNode(" 应用 ",-1))]),_:1},8,["onClick"]),e.createVNode(I,{onClick:se=>V(z),divided:"",class:"danger-item"},{default:e.withCtx(()=>[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(at))]),_:1}),D[5]||(D[5]=e.createTextVNode(" 删除 ",-1))]),_:1},8,["onClick"])]),_:2},1024)]),default:e.withCtx(()=>[e.createVNode(M,{class:"more-icon"},{default:e.withCtx(()=>[e.createVNode(e.unref(At))]),_:1})]),_:2},1024)]),z.description?(e.openBlock(),e.createElementBlock("p",li,e.toDisplayString(z.description),1)):e.createCommentVNode("",!0),e.createElementVNode("div",ri,[e.createVNode(x,{size:"small",type:R(z.visibility)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C(z.visibility)),1)]),_:2},1032,["type"]),e.createElementVNode("span",ii,e.toDisplayString(H(z.createdAt)),1)]),e.createElementVNode("div",si,[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Lt))]),_:1}),e.createElementVNode("span",null,e.toDisplayString(z.columns.length)+" 字段",1),e.createVNode(ie,{direction:"vertical"}),e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Ft))]),_:1}),e.createElementVNode("span",null,e.toDisplayString(((ne=z.slice)==null?void 0:ne.length)||0)+" 筛选",1)])]}),_:2},1024))),128))]),_:1})]),e.createElementVNode("div",ci,[e.createElementVNode("div",di,[e.createElementVNode("h4",null,[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(ja))]),_:1}),D[6]||(D[6]=e.createTextVNode(" 共享查询",-1))]),e.createVNode(x,{type:"success",size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.value.length),1)]),_:1})]),e.createVNode(de,{height:"450px"},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createElementBlock("div",ui,[e.createVNode(M,{class:"is-loading"},{default:e.withCtx(()=>[e.createVNode(e.unref(pt))]),_:1}),D[7]||(D[7]=e.createElementVNode("span",null,"加载中...",-1))])):m.value.length===0?(e.openBlock(),e.createElementBlock("div",mi,[e.createVNode(O,{description:"暂无共享查询"})])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,z=>(e.openBlock(),e.createBlock(ue,{key:z.id,class:"query-card",shadow:"hover"},{default:e.withCtx(()=>{var ne;return[e.createElementVNode("div",fi,[e.createElementVNode("div",pi,[z.visibility==="DEPARTMENT"?(e.openBlock(),e.createBlock(M,{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(ht))]),_:1})):(e.openBlock(),e.createBlock(M,{key:1},{default:e.withCtx(()=>[e.createVNode(e.unref(ft))]),_:1})),e.createElementVNode("span",null,e.toDisplayString(z.title),1)]),e.createVNode(P,{type:"primary",size:"small",onClick:se=>d(z)},{default:e.withCtx(()=>[...D[8]||(D[8]=[e.createTextVNode(" 应用 ",-1)])]),_:1},8,["onClick"])]),z.description?(e.openBlock(),e.createElementBlock("p",hi,e.toDisplayString(z.description),1)):e.createCommentVNode("",!0),e.createElementVNode("div",gi,[e.createVNode(x,{size:"small",type:R(z.visibility)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C(z.visibility)),1)]),_:2},1032,["type"]),e.createElementVNode("span",yi,"创建者: "+e.toDisplayString(z.ownerId),1),e.createElementVNode("span",wi,e.toDisplayString(H(z.createdAt)),1)]),e.createElementVNode("div",bi,[e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Lt))]),_:1}),e.createElementVNode("span",null,e.toDisplayString(z.columns.length)+" 字段",1),e.createVNode(ie,{direction:"vertical"}),e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(e.unref(Ft))]),_:1}),e.createElementVNode("span",null,e.toDisplayString(((ne=z.slice)==null?void 0:ne.length)||0)+" 筛选",1)])]}),_:2},1024))),128))]),_:1})])])]),_:1},8,["modelValue"])}}}),[["__scopeId","data-v-71649b94"]]),Vi={class:"saved-query-manager"},ki=re(e.defineComponent({__name:"SavedQueryManager",props:{tableRef:{},model:{},businessId:{},currentUserId:{},position:{default:"top"}},setup(t){const a=t,n=e.ref(!1),l=e.ref(!1),o=e.computed(()=>{var y;return(y=a.tableRef)!=null&&y.value?a.tableRef.value.getQueryState():null}),i=e.computed(()=>{var y,p,b;return(y=a.tableRef)!=null&&y.value?((b=(p=a.tableRef.value).getSchema)==null?void 0:b.call(p))||[]:[]});function h(){if(!o.value){X.ElMessage.warning("无法获取表格状态");return}n.value=!0}function r(){l.value=!0}async function c(y,p){var b;(b=a.tableRef)!=null&&b.value&&(a.tableRef.value.applyQueryState({columns:y.columns,slice:y.slice,orderBy:y.orderBy}),await a.tableRef.value.reload(),X.ElMessage.success(`已应用查询: ${y.title}`))}function m(y){X.ElMessage.success("查询保存成功")}return(y,p)=>{var d,V,C;const b=e.resolveComponent("el-button"),k=e.resolveComponent("el-button-group");return e.openBlock(),e.createElementBlock("div",Vi,[e.createVNode(k,{size:"small"},{default:e.withCtx(()=>[e.createVNode(b,{icon:e.unref(Da),onClick:r},{default:e.withCtx(()=>[...p[2]||(p[2]=[e.createTextVNode(" 加载查询 ",-1)])]),_:1},8,["icon"]),e.createVNode(b,{icon:e.unref(Sa),onClick:h},{default:e.withCtx(()=>[...p[3]||(p[3]=[e.createTextVNode(" 保存查询 ",-1)])]),_:1},8,["icon"])]),_:1}),e.createVNode(sn,{modelValue:n.value,"onUpdate:modelValue":p[0]||(p[0]=R=>n.value=R),model:t.model,"business-id":t.businessId,"available-columns":i.value,"current-columns":(d=o.value)==null?void 0:d.columns,"current-slice":(V=o.value)==null?void 0:V.slice,"order-by":(C=o.value)==null?void 0:C.orderBy,onSaved:m},null,8,["modelValue","model","business-id","available-columns","current-columns","current-slice","order-by"]),e.createVNode(hn,{modelValue:l.value,"onUpdate:modelValue":p[1]||(p[1]=R=>l.value=R),model:t.model,"business-id":t.businessId,"current-user-id":t.currentUserId,onApply:c},null,8,["modelValue","model","business-id","current-user-id"])])}}}),[["__scopeId","data-v-2fca52e0"]]);T.BoolFilter=tt,T.DataTable=mt,T.DataTableWithSearch=To,T.DataViewer=wa,T.DateRangeFilter=Qe,T.HookRegistry=nt,T.ListPresetManager=wt,T.NumberRangeFilter=et,T.OptionManagerDialog=rn,T.PivotAxisPager=qt,T.PivotEvidencePanel=jt,T.PivotGrid=Jt,T.PivotRawViewer=cl,T.PivotViewer=Zt,T.QueryListDialog=hn,T.QueryPanel=Pt,T.SaveQueryDialog=sn,T.SavedQueryManager=ki,T.SearchToolbar=$t,T.SelectFilter=Le,T.TextFilter=Re,T.applySavedQuery=ln,T.buildPivotCellField=bt,T.buildPivotGridColumns=Kt,T.buildTableColumns=Tt,T.calculateColumnWidth=vt,T.clearDefaultListPreset=eo,T.createListPreset=Qt,T.createQuery=ta,T.deleteListPreset=Ut,T.deleteSavedQuery=on,T.fetchFilterOptions=Mt,T.fetchFrontendMeta=oa,T.fetchMemberOptions=la,T.fetchQmSchema=Dt,T.fetchQueryData=Bt,T.fetchQueryDataDirect=aa,T.fetchQueryMeta=St,T.flattenPivotLeafNodes=Gt,T.getDefaultListPreset=Wt,T.getListPreset=Za,T.getSavedQuery=dl,T.globalQueryHooks=xt,T.listPresets=Ot,T.listSavedQueries=an,T.saveQuery=nn,T.setDefaultListPreset=Ht,T.toPivotViewModel=en,T.updateListPreset=yt,T.updateSavedQuery=ul,T.useDeferredVisibility=ut,T.useQueryState=qn,T.useTableQuery=Et,T.useTableSelection=Ct,T.useTableSummary=Nt,T.validatePivotHeaderTree=Yt,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})});
|