@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
18 lines • 129 kB
JavaScript
(function(A,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("../notify/index.umd.js"),require("../common/index.umd.js"),require("../capsule/index.umd.js"),require("../locale/index.umd.js"),require("../response-toolbar/index.umd.js"),require("bignumber.js"),require("lodash-es"),require("../section/index.umd.js"),require("../property-panel/index.umd.js"),require("../button-edit/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../list-view/index.umd.js"),require("../loading/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../data-view/index.umd.js"),require("../checkbox/index.umd.js"),require("../popover/index.umd.js"),require("../button/index.umd.js"),require("../field-selector/index.umd.js"),require("../collection-property-editor/index.umd.js/src/use-button-items.designer"),require("../tags/index.umd.js"),require("../common/index.umd.js/text-box/use-input-expand"),require("../drawer/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../notify/index.umd.js","../common/index.umd.js","../capsule/index.umd.js","../locale/index.umd.js","../response-toolbar/index.umd.js","bignumber.js","lodash-es","../section/index.umd.js","../property-panel/index.umd.js","../button-edit/index.umd.js","../dynamic-resolver/index.umd.js","../list-view/index.umd.js","../loading/index.umd.js","../designer-canvas/index.umd.js","../data-view/index.umd.js","../checkbox/index.umd.js","../popover/index.umd.js","../button/index.umd.js","../field-selector/index.umd.js","../collection-property-editor/index.umd.js/src/use-button-items.designer","../tags/index.umd.js","../common/index.umd.js/text-box/use-input-expand","../drawer/index.umd.js"],e):(A=typeof globalThis<"u"?globalThis:A||self,e(A["schema-selector"]={},A.Vue,A.notify,A.common,A.FCapsule,A.locale,A.FResponseToolbar,A.BigNumber,A.LodashES,A.FSection,null,A.FButtonEdit$1,A.dynamicResolver,A.FListView$1,A.FLoading$1,A.designerCanvas,A.dataView,A.checkbox,A.FPopover,null,null,null,A.FTags,A.useInputExpand,A.Drawer))})(this,function(A,e,de,K,yt,X,bt,na,Oe,ze,aa,wt,he,Ct,xt,Ae,G,je,$e,oa,la,ia,Vt,St,Nt){"use strict";var ea=Object.defineProperty;var ta=(A,e,de)=>e in A?ea(A,e,{enumerable:!0,configurable:!0,writable:!0,value:de}):A[e]=de;var ae=(A,e,de)=>ta(A,typeof e!="symbol"?e+"":e,de);const We={injectSymbolToken:{type:Symbol},viewOptions:{type:Array,default:[]},viewType:{type:String,default:"Tabs"},editorParams:{type:Object,default:null},showFooter:{type:Boolean,default:!1},validateFunction:{type:Function,default:null}},Tt={tabType:{type:String,default:"default"},autoTitleWidth:{type:Boolean,default:!1},titleLength:{type:Number,default:7},position:{type:String,default:"top"},showDropdown:{type:Boolean,default:!0},scrollStep:{type:Number,default:10},autoResize:{type:Boolean,default:!1},width:{type:Number},height:{type:Number},searchBoxVisible:{type:Boolean,default:!0},titleWidth:{type:Number,default:0},customClass:{type:String,default:""},activeId:{type:String},fill:{type:Boolean,default:!1},justifyContent:{type:String,default:"left"},visible:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},beforeTabSelect:{type:Function,default:null}};function It(t,n,a){const r=new de.FNotifyService,o=e.ref([]),l=e.ref(t.activeId||"");let s="";const i=e.ref(!0),f=e.ref([]),d=e.ref(!0),c=e.ref(0),m=e.computed(()=>{const y=o.value.find(k=>k.props.id===l.value);return(y==null?void 0:y.props.toolbarPosition)==="inHead"});let C;function x(y){C=y}function v(y,V=!0){const k=y.findIndex(R=>R.props.show!==!1&&!R.props.disabled);if(k!==-1){if(l.value=y[k].props.id,!V)return;f.value=[];const R=y[k];R&&R.props.toolbar&&R.props.toolbar.buttons&&R.props.toolbar.buttons.length&&(f.value=[...R.props.toolbar.buttons],d.value=R.props.toolbarVisible)}}function u(y){l.value=y;const V=o.value.find(k=>k.props.id===y);f.value=[],V&&V.props.toolbar&&V.props.toolbar.buttons&&V.props.toolbar.buttons.length&&(f.value=[...V.props.toolbar.buttons],d.value=V.props.toolbarVisible),n.emit("update:activeId",y),n.emit("tabChange",{prevId:s,nextId:l.value})}async function b(y,V,k,R){var M;const z=await((M=t.beforeTabSelect)==null?void 0:M.call(t,{prevId:y,nextId:V}));(typeof z=="boolean"?z:(z==null?void 0:z.canSelect)??!0)?k&&k():(R&&R(),typeof z!="boolean"&&z.message&&(r==null||r.warning({message:z.message,position:"top-center"})))}function S(y){let V=-1;if(!l.value){if(V=y.findIndex(k=>l.value===k.props.id&&k.props.show!==!1&&!k.props.disabled),V>-1)return;s=l.value}v(y,!1),b(s,l.value,()=>{u(l.value),C&&C()},()=>{l.value=s})}function w(y){let V=!1;if(y){const k=o.value.find(R=>R.props.id===y);V=!k||k.props.show===!1||k.props.disabled===!0}if(V)S(o.value);else if(l.value!==y){const k=l.value;b(k,y,()=>{s=k,l.value=y,u(l.value),C&&C()},()=>{l.value=k,n.emit("update:activeId",k)})}else u(l.value)}e.watch(()=>t.activeId,(y,V)=>{y!==V&&t.activeId!==l.value&&w(y)});function O(y){var k;if(t.autoTitleWidth)return;const V=(k=y.value)==null?void 0:k.querySelectorAll(".st-tab-text");if(!(!V||t.tabType==="pill"))for(let R=0;R<V.length;R++){const z=V[R].parentNode;V[R].scrollWidth>z.offsetWidth?V[R].classList.contains("farris-title-text-custom")||V[R].classList.add("farris-title-text-custom"):V[R].classList.remove("farris-title-text-custom")}}const N=y=>{y.preventDefault(),y.stopPropagation()};function P(y,V,k=!1){const R=o.value.findIndex(z=>z.props.id===V);o.value=o.value.filter(z=>z.props.id!==V),l.value===V&&(s=V,l.value="",v(o.value)),N(y),e.nextTick(()=>{c.value++,O(a),k&&(i.value=!0),n.emit("tabRemove",{removeIndex:R,removeId:V,activeId:l.value})})}function F(y,V=!0){const k=o.value.find(R=>R.props.id===y);k&&(k.props.show===!1&&l.value===y?(l.value="",s=y,w("")):k.props.show===!0&&!l.value&&S(o.value),e.nextTick(()=>{c.value++,V&&(i.value=!0)}))}function T(y){l.value!==y&&b(s,y,()=>{s=l.value,u(y),C&&C()},null)}function p(y){o.value.findIndex(k=>k.props.id===y.props.id)===-1&&o.value.push(y),c.value++}function g(y){o.value.findIndex(k=>k.props.id===y.props.id)!==-1&&(o.value.forEach(k=>{k.props.id===y.props.id&&(k=y)}),y.props.id===l.value&&m.value,e.nextTick(()=>{c.value++,O(a)}))}return{activeId:l,addTab:p,changeTitleStyle:O,removeTab:P,selectTab:T,tabPages:o,updateTab:g,toolbarItems:f,needUpdateNavigationLayout:c,checkActiveIdAndSelect:w,toggleShowTab:F,hasInHeadClass:m,setScrollToSelectedTabFunction:x,toolbarVisible:d}}function Bt(t,n,a,r,o){const{activeId:l,removeTab:s,selectTab:i}=o,f=e.computed(()=>{const w={"st-tab-text":!0,"text-truncate":t.tabType==="pill"&&!t.autoTitleWidth,"farris-title-auto":t.autoTitleWidth};return K.getCustomClass(w,n.customTitleClass)}),d=e.computed(()=>({"nav-item":!0,"d-none":n.show!==void 0?!n.show:!1,"f-state-active":n.id===l.value,"f-state-disabled":n.disabled})),c=e.computed(()=>({width:`${n.tabWidth}px`})),m=e.computed(()=>({"nav-link":!0,"tabs-text-truncate":!0,active:n.id===l.value,disabled:n.disabled})),C=e.reactive({content:n.title,overflowShown:!0});function x(){return t.tabType!=="pill"&&!t.autoTitleWidth?e.withDirectives(e.createVNode("span",{class:f.value,"data-tabid":n.id},[n.title]),[[e.resolveDirective("tooltip"),C]]):e.createVNode("span",{class:f.value,"data-tabid":n.id,title:n.title},[n.title])}const v=e.ref(n.removeable);function u(){return v.value?e.createVNode("span",{class:"st-drop-close",onClick:w=>s(w,n.id)},[e.createVNode("i",{class:"f-icon f-icon-close"},null)]):""}function b(w){i(n.id),t.tabType==="one-page"&&r.scrollToByPaggId(n.id)}function S(){return a.slots.title?e.createVNode("a",{class:m.value,onClick:b,id:`${n.id}-tab-title`},[a.slots.title(a),u()]):n.titleRenderFunction?e.createVNode("a",{class:m.value,onClick:b,id:`${n.id}-tab-title`},[n.titleRenderFunction(),u()]):e.createVNode("a",{class:m.value,onClick:b,id:`${n.id}-tab-title`},[x(),u()])}return e.createVNode("li",{class:d.value,style:c.value},[S()])}function kt(t,n,a,r,o){const{shouldShowNavigationButtons:l}=a,{tabPages:s}=o,i=e.computed(()=>({spacer:!0,"f-utils-fill":!0,"spacer-sides-dropdown":l.value})),f=e.computed(()=>({width:"100%","justify-content":t.justifyContent})),d=e.computed(()=>({nav:!0,"farris-nav-tabs":!0,"flex-nowrap":!0,"nav-fill":t.tabType==="fill","nav-pills":t.tabType==="pills","flex-row":t.position==="top"||t.position==="bottom","flex-column":t.position==="left"||t.position==="right"}));return()=>e.createVNode("div",{class:i.value,style:f.value},[e.createVNode("ul",{class:d.value,ref:n},[s.value.map(c=>Bt(t,c.props,c,r,o))])])}function Ft(t,n,a,r,o){const l=e.ref(),{shouldShowNavigationButtons:s}=a,{activeId:i,tabPages:f,selectTab:d}=o,c=e.ref(i.value),m=e.computed(()=>f.value.map(u=>({name:u.props.title,value:u.props.id,show:u.props.show,disabled:u.props.disabled}))),C=e.computed(()=>({spacer:!0,"f-utils-fill":!0,"spacer-sides-dropdown":s.value})),x=e.computed(()=>({width:"100%",display:"flex","justify-content":t.justifyContent}));e.onMounted(()=>{l.value&&(n.value=l.value.$el)});function v(u){d(u)}return e.watch(()=>i.value,u=>{u!==c.value&&(c.value=u)},{immediate:!0}),()=>e.createVNode("div",{class:C.value,style:x.value},[e.createVNode(yt,{items:m.value,modelValue:c.value,"onUpdate:modelValue":u=>c.value=u,onChange:v,ref:l},null)])}function Mt(t,n,a,r){const o=e.ref(),{activeId:l,removeTab:s,tabPages:i,selectTab:f}=r,{hideDropDown:d,searchTabText:c}=n,m=600;let C=null;const x=e.computed(()=>{var y,V;let g=[];return t.searchBoxVisible?g=(y=i.value)==null?void 0:y.filter(k=>k.props.title.includes(c.value)):g=(V=i.value)==null?void 0:V.slice(),g}),v=e.computed(()=>({"dropdown-menu":!0,"tabs-pt28":t.searchBoxVisible,show:!d.value,"d-none":d.value}));let u;function b(g){u=g}e.watch(d,g=>{if(u.value)if(g)o.value.style.width=null;else{const y=u.value.querySelector(".farris-tabs-header"),V=u.value.clientHeight-y.clientHeight-20,R=y.querySelector(".farris-tabs-title").clientWidth-20;o.value.style.maxWidth=R+"px",o.value.style.maxHeight=V+"px",e.nextTick(()=>{const{width:z}=o.value.getClientRects()[0];o.value.style.width=z?z+"px":null})}});function S(g){return{"dropdown-item":!0,"text-truncate":!0,"px-2":!0,disabled:g.props.disabled,active:g.props.id===l.value,"d-none":g.props.show!==!0}}function w(g){g.preventDefault(),g.stopPropagation()}function O(){C&&clearTimeout(C)}function N(){d.value||(C=setTimeout(()=>{d.value=!0},m))}function P(g,y){g.stopPropagation(),y.disabled||f(y.id),d.value=!0}function F(g,y){g.stopPropagation(),s(g,y,!0)}function T(g){return g.slots.title?e.createVNode("a",{class:"dropdown-title",id:`${g.props.id}-dropdown-item`},[g.slots.title(g)]):g.props.titleRenderFunction?e.createVNode("a",{class:"dropdown-title",id:`${g.props.id}-dropdown-item`},[g.props.titleRenderFunction()]):e.createVNode("a",{class:"dropdown-title",id:`${g.props.id}-dropdown-item`},[g.props.title])}function p(){return e.createVNode("div",{ref:o,class:v.value,onMouseenter:()=>O(),onMouseleave:()=>N()},[t.searchBoxVisible&&e.createVNode("div",{onClick:g=>w(g),class:"pb-1 tabs-li-absolute"},[e.withDirectives(e.createVNode("input",{type:"text",class:"form-control","onUpdate:modelValue":g=>c.value=g},null),[[e.vModelText,c.value]]),e.createVNode("span",{class:"f-icon f-icon-page-title-query tabs-icon-search"},null)]),x.value.length?e.createVNode("ul",{class:"tab-dropdown-menu--items flex-fill"},[x.value.map(g=>e.createVNode("li",{class:S(g),onClick:y=>P(y,g.props)},[g.props.removeable&&g.props.disabled!==!0&&e.createVNode("span",{class:"float-right st-drop-close",onClick:y=>F(y,g.props.id)},[e.createVNode("i",{class:"f-icon f-icon-close"},null)]),T(g)]))]):e.createVNode("div",{class:"dropdown-no-data"},[X.LocaleService.getLocaleValue("tabs.noData")])])}return{renderDropdownMenu:p,setTabsRef:b}}function Ot(t,n,a,r){const{hideDropDown:o}=n,{renderDropdownMenu:l,setTabsRef:s}=Mt(t,n,a,r),i=e.ref(t.showDropdown);function f(){return i.value&&e.createVNode(e.Fragment,null,[e.createVNode("button",{class:"btn dropdown-toggle-split dropdown-toggle",onClick:()=>{o.value=!1}},null),l()])}return{renderMorePagesButtton:f,setTabsRef:s}}function jt(t,n,a,r){const o=e.ref(!1),{selectTab:l,tabPages:s,needUpdateNavigationLayout:i,activeId:f}=r,d=4,c=e.computed(()=>({btn:!0,"sc-nav-btn":!0,"px-1":!0,"sc-nav-lr":!0,"d-none":!o.value})),m=e.computed(()=>({"btn-group":!0,"sc-nav-btn":!0,dropdown:!0,"d-none":!o.value})),C=e.computed(()=>({btn:!0,"sc-nav-rg":!0,"d-none":!o.value}));function x(w,O){if(!n.value)return;const N=n.value.scrollLeft,P=n.value.scrollWidth-n.value.offsetWidth;if(O>0){if(n.value.scrollLeft>=P)return;n.value.scrollLeft=N+t.scrollStep+w}else if(O<0){if(n.value.scrollLeft<=0)return;n.value.scrollLeft=N-t.scrollStep-w}}function v(w=-1){if(!o.value||!n.value)return;w<0&&(w=s.value.findIndex(T=>T.props.id===f.value));const O=t.tabType==="pills"?".f-capsule-item":".nav-item",N=n.value.querySelectorAll(O),{parentElement:P}=n.value,F=N[w];if(F&&P){const T=P.getBoundingClientRect().left,p=P.getBoundingClientRect().right,g=F.getBoundingClientRect().left,y=F.getBoundingClientRect().right;g<T?x(T-g,-1):p<y&&x(y-p,1),t.tabType==="one-page"&&a.scrollTo(w)}}function u(){var N;if(!n.value)return;const w=n.value,O=(N=n.value)==null?void 0:N.parentElement;o.value=O&&w&&O.offsetWidth<w.scrollWidth-d,o.value&&e.nextTick(()=>{v()})}function b(w){w.disabled||l(w.id)}function S(){["default","one-page"].indexOf(t.tabType)>-1&&e.nextTick(()=>{v()})}return e.watch(i,()=>{u()}),{previousButtonClass:c,nextButtonGroupClass:m,nextButtonClass:C,scrollTab:x,selectAndScrollToTab:b,shouldShowNavigationButtons:o,updateNavigationLayout:u,scrollToSelectedTab:S}}function Pt(t,n){const{tabPages:a}=n,r=e.ref(""),o=e.ref(!0),l=e.computed(()=>t.searchBoxVisible),s=e.computed(()=>l.value?a.value.filter(f=>f.props.title.includes(r.value)):a.value.slice());return e.watch(o,i=>{i||(r.value="")}),{searchTabText:r,hideDropDown:o,shouldShowSearchBox:l,tabsInDropdownMenu:s}}function Lt(t,n,a){const r=".farris-tab-page",{tabPages:o}=a;let l=-1;function s(){if(l<0){const d=document.querySelector(".farris-tabs-header");d&&(l=d.clientHeight)}return l}function i(d){const c=n.value;if(c){const m=n.value.querySelectorAll(r);if(m.length>0){const C=m[d],{offsetTop:x}=C,v=x-s();c.scrollTop=v>0?v:0}}}function f(d){const c=o.value.findIndex(m=>m.props.id===d);c>-1&&i(c)}return{scrollTo:i,scrollToByPaggId:f}}const Rt=["moz","ms","webkit"];function Ht(){let t=0;return n=>{const a=new Date().getTime(),r=Math.max(0,16-(a-t)),o=setTimeout(()=>{n(a+r)},r);return t=a+r,o}}function Dt(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const t=Rt.filter(n=>`${n}RequestAnimationFrame`in window)[0];return t?window[`${t}RequestAnimationFrame`]:Ht()}Dt(),e.ref("");function qe(){const t=navigator.userAgent||navigator.vendor||window.opera,n=[/iPhone/i,/iPod/i,/Android.*Mobile/i,/webOS/i,/BlackBerry/i,/IEMobile/i,/Opera Mini/i,/Harmony/i],a=[/iPad/i,/Android(?!.*Mobile)/i,/Tablet/i,/PlayBook/i,/Kindle/i,/Silk/i];for(const i of a)if(i.test(t))return!1;for(const i of n)if(i.test(t))return!0;const r="ontouchstart"in window||navigator.maxTouchPoints>0,o=screen.width,l=screen.height,s=Math.min(o,l);return!!(r&&s<=768)}const Te=e.defineComponent({name:"FTabs",props:Tt,emits:["tabChange","tabRemove","update:activeId","Click"],setup(t,n){const a=e.ref(t.tabType),r=e.shallowRef(),o=qe(),l=e.ref(t.customClass),s=e.shallowRef();e.shallowRef();const i=e.ref(),f=It(t,n,s),{activeId:d,changeTitleStyle:c,tabPages:m,addTab:C,updateTab:x,toolbarItems:v,checkActiveIdAndSelect:u,toggleShowTab:b,hasInHeadClass:S,toolbarVisible:w}=f,O=Lt(t,r,f),N=jt(t,s,O,f),{previousButtonClass:P,nextButtonClass:F,nextButtonGroupClass:T,scrollTab:p,updateNavigationLayout:g,scrollToSelectedTab:y}=N;f.setScrollToSelectedTabFunction(y);const V=Pt(t,f),k=kt(t,s,N,O,f),R=k,z=Ft(t,s,N,O,f),j=new Map([["default",k],["one-page",R],["pills",z]]);e.computed(()=>{const W=m.value.find(Z=>Z.props.id===d.value);return W==null?void 0:W.slots});const M=e.computed(()=>t.fill),H=(W,Z)=>{n.emit("Click",W,Z,d.value)};e.provide("tabs",{activeId:d,addTab:C,updateTab:x,tabPages:m,tabType:a,shouldFillParentContaner:M,toggleShowTab:b,toolbarVisible:w,clickToolbarItemHandler:H});let h=!1;const B=e.computed(()=>({"farris-tabs-header":!0,"farris-tabs-inHead":S.value,"farris-tabs-inContent":!S.value,"farris-tabs-nav-fill":t.tabType==="fill","farris-tabs-nav-pills":t.tabType==="pills","d-none":t.showHeader===!1})),L=e.computed(()=>{const W={width:S.value&&t.titleWidth?`${t.titleWidth}%`:""};return W.width&&(W.flex="unset"),W}),E=e.computed(()=>{const W={"farris-tabs":!0,"f-tabs-content-fill":M.value,"flex-column":t.position==="top","flex-column-reverse":t.position==="bottom","flex-row":t.position==="left","flex-row-reverse":t.position==="right","one-page":t.tabType==="one-page"};return l.value&&l.value.split(" ").reduce((Z,ne)=>(Z[ne]=!0,Z),W),W}),q=new ResizeObserver(W=>{W.length&&g()});function se(){i.value&&!h&&(q.observe(i.value),h=!0)}e.watch(()=>t.visible,W=>{e.nextTick(()=>{m.value.length&&u(t.activeId||m.value[0].props.id),g(),c(s),se()})}),e.watch(()=>t.autoTitleWidth,W=>{e.nextTick(()=>{g(),c(s)})}),e.onMounted(()=>{t.visible&&(m.value.length&&u(t.activeId||m.value[0].props.id),e.nextTick(()=>{g(),c(s)}),se())});function te(){return e.createVNode("button",{title:X.LocaleService.getLocaleValue("tabs.leftButton"),type:"button",class:P.value,onClick:()=>{p(0,-1)}},null)}function be(){return e.createVNode("button",{title:X.LocaleService.getLocaleValue("tabs.rightButton"),type:"button",class:F.value,onClick:()=>{p(0,1)}},null)}const{renderMorePagesButtton:pe,setTabsRef:we}=Ot(t,V,N,f);we(r);function Ce(){return v.value.length?e.createVNode("div",{class:{"farris-tabs-toolbar":!0,"d-none":!w.value}},[e.createVNode(bt,{class:"f-utils-fill",alignment:S.value?"right":"left",items:v.value,visible:w.value,onClick:H},null)]):null}const re=j.get(t.tabType)||j.get("default");function xe(){var W,Z,ne,Se;return e.createVNode("div",{class:B.value},[e.createVNode("div",{class:"farris-tabs-header-pre"},[(Z=(W=n.slots).headerPrefix)==null?void 0:Z.call(W)]),e.createVNode("div",{class:"farris-tabs-title scroll-tabs",style:L.value,ref:i},[!o&&te(),re&&re(),e.createVNode("div",{hidden:o,class:T.value},[be(),pe()])]),Ce(),e.createVNode("div",{class:"farris-tabs-header-post"},[(Se=(ne=n.slots).headerSuffix)==null?void 0:Se.call(ne)])])}e.computed(()=>({"farris-tabs-content":!0,"f-utils-fill-flex-column":M.value}));function Ve(){var W,Z;return(Z=(W=n.slots).default)==null?void 0:Z.call(W)}return()=>t.visible?e.createVNode("div",{class:E.value,ref:r},[xe(),Ve()]):null}}),Et={tabWidth:{type:Number},id:{type:String,default:""},customTitleClass:{type:String,default:""},titleOverflow:{type:Boolean,default:!1},title:{type:String,default:""},selected:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},removeable:{type:Boolean,default:!1},show:{type:Boolean,default:!0},toolbar:{type:Object,default:{}},toolbarPosition:{type:String,default:"inHead"},toolbarVisible:{type:Boolean,default:!0},titleRenderFunction:{type:Function}};function _e(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!e.isVNode(t)}const Pe=e.defineComponent({name:"FTabPage",props:Et,emits:[],setup(t,n){const a=e.inject("tabs");K.isMobilePhone();const r=e.ref(t.show),o={slots:n.slots,props:t},l=e.ref((a==null?void 0:a.tabType.value)||"default");e.onMounted(()=>{const u=a==null?void 0:a.tabPages.value.findIndex(b=>b.props.id===t.id);(!u||u===-1)&&(a==null||a.addTab(o))}),e.onUnmounted(()=>{});const s=e.computed(()=>(t==null?void 0:t.id)===(a==null?void 0:a.activeId.value)),i=e.computed(()=>({display:s.value?"":"none"}));e.watch(()=>t,u=>{a==null||a.updateTab({props:u,slots:n.slots})},{immediate:!0,deep:!0}),e.watch(()=>t.show,u=>{r.value=u,a==null||a.toggleShowTab(t.id)}),e.watch(()=>t.toolbarVisible,u=>{s.value&&a&&(a.toolbarVisible.value=u)});function f(){var b,S;const u=(S=(b=n.slots).default)==null?void 0:S.call(b);return e.createVNode(ze,{"main-title":t.title,class:["farris-tab-page",r.value?"":"f-tab-d-none"]},_e(u)?u:{default:()=>[u]})}function d(u,b){a&&(a.activeId.value=t.id,a.clickToolbarItemHandler&&a.clickToolbarItemHandler(u,b))}function c(){var b,S;const u=(S=(b=n.slots).default)==null?void 0:S.call(b);return e.createVNode(ze,{customClass:"section-in-tab is-mobile",onClick:d,visible:t.show,"main-title":t.title,buttons:t.toolbar.buttons,"button-position":t.toolbar.position||t.toolbarPosition,"buttons-visible":t.toolbarVisible},_e(u)?u:{default:()=>[u]})}const m=e.computed(()=>{var b;return{"farris-tab-page":!0,"f-tab-d-none":!r.value,"f-tab-active":s.value&&a&&((b=a.shouldFillParentContaner)==null?void 0:b.value)}});function C(){var b,S;const u=(S=(b=n.slots).default)==null?void 0:S.call(b);return e.createVNode("div",{class:m.value,style:i.value},[u])}const v=new Map([["default",C],["one-page",f],["mobile",c]]).get(l.value)||C;return()=>v()}});Te.install=t=>{t.component(Te.name,Te),t.component(Pe.name,Pe)};const zt=new Map([["appearance",he.resolveAppearance]]),At={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/search-box.schema.json",title:"search-box",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a search-box",type:"string"},type:{description:"The type string of search-box component",type:"string",default:"search-box"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]};function $t(t,n,a){return n}const Wt={title:"search-box",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Le={buttonContent:{type:String,default:'<i class="f-icon f-icon-search"></i>'},customClass:{type:String,default:""},modelValue:{type:String,default:""},popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},data:{type:Array,default:[]},placeholder:{type:String,default:"请输入关键词"},idField:{default:"id",type:String},textField:{default:"name",type:String},maxHeight:{default:350,type:Number},loading:{default:!1,type:Boolean},disable:{default:!1,type:Boolean},showDropdown:{default:!0,type:Boolean},updateOn:{default:"change",type:String}},Ue=he.createPropsResolver(Le,At,zt,$t,Wt),qt={data:{type:Array,default:[]},onConfirmResult:{type:Function,default:()=>{}},onSearchedValue:{type:Function,default:()=>{}},idField:{default:"id",type:String},textField:{default:"name",type:String},maxHeight:{default:350,type:Number},loading:{default:!1,type:Boolean}},Ge=e.defineComponent({name:"FSearchBoxContainer",props:qt,emits:["confirmResult","searchedValue"],setup(t,n){const a=e.ref(t.data),r=e.ref(),{slots:o}=n,l=e.computed(()=>({"search-box-container":!0,"f-utils-overflow-xhya":!0,"position-relative":!0}));function s(c){var m;(m=r.value)==null||m.search(c)}function i(c){c.length&&(n.emit("confirmResult",c[0][t.textField]),n.emit("searchedValue",c))}function f(c){return o.default?e.createVNode(e.Fragment,null,[o.default(c)]):e.createVNode("span",null,[c.item[t.textField]])}const d=e.computed(()=>{const c={};return c.padding="8px",t.maxHeight!==void 0&&t.maxHeight>0&&(c.maxHeight=`${t.maxHeight}px`),c});return e.watch(()=>t.loading,c=>{}),e.watch(()=>t.data,c=>{c!==a.value&&(a.value=c),r.value.updateDataSource(c)}),n.expose({search:s}),()=>{const c={content:f};return e.createVNode("div",{class:l.value,style:d.value},[e.createVNode(xt,{ref:"loadingInstance",isActive:t.loading},null),e.createVNode(Ct,{ref:r,itemClass:"dropdown-item",data:a.value,view:"ContentView",onClickItem:m=>i(m.data),idField:t.idField,textField:t.textField,titleField:t.textField,valueField:t.idField},c)])}}}),Q=e.defineComponent({name:"FSearchBox",props:Le,emits:["update:modelValue","change","selectedValue","clickButton"],setup(t,n){e.ref(t.data);const a=e.ref(),r=e.ref(),o=e.ref(t.placeholder),l='<i class="f-icon f-icon-clockwise f-icon-spin"></i>',s=e.computed(()=>t.loading?l:t.buttonContent);e.ref(t.editable);const i=e.ref(t.modelValue);e.watch(i,u=>{var b;(b=r.value)==null||b.search(u),n.emit("update:modelValue",u)}),e.watch(()=>t.modelValue,u=>{i.value=u});function f(u){a.value.commitValue(u)}function d(u){const b=i.value;n.emit("change",u,{oldValue:b,newValue:u})}function c(u){n.emit("selectedValue",u)}function m(u){n.emit("clickButton",u)}function C(){var u;(u=a.value)==null||u.togglePopup()}function x(){var u;(u=a.value)==null||u.hidePopup()}function v(){var u;(u=a.value)==null||u.showPopup()}return n.expose({togglePopup:C,hidePopup:x,showPopup:v}),()=>{const u={default:n.slots.default};return e.createVNode(wt,{ref:a,"button-content":s.value,"custom-class":t.customClass,updateOn:t.updateOn,placeholder:o.value,onChange:b=>d(b),onClickButton:b=>m(b),disable:t.disable,"enable-clear":!0,"button-behavior":"Execute",modelValue:i.value,"onUpdate:modelValue":b=>i.value=b,"popup-host":t.popupHost,"popup-right-boundary":t.popupRightBoundary,"popup-offset-x":t.popupOffsetX,"popup-on-input":t.showDropdown,"popup-on-focus":t.showDropdown,limitContentBySpace:!0,placement:"auto"},{default:()=>[t.showDropdown&&e.createVNode(Ge,{ref:r,data:t.data,idField:t.idField,textField:t.textField,onConfirmResult:f,onSearchedValue:b=>c(b),loading:t.loading,maxHeight:t.maxHeight},u)],...n.slots})}}}),_t=e.defineComponent({name:"FSearchBoxDesign",props:Le,emits:["update:modelValue","change"],setup(t,n){const a=e.ref(t.data),r=e.ref(),o=e.ref(),l=e.ref("请输入关键词"),s=e.ref('<i class="f-icon f-icon-search"></i>'),i=e.ref(t.modelValue),f=e.ref(),d=e.inject("design-item-context"),c=Ae.useDesignerComponent(f,d);e.onMounted(()=>{f.value.componentInstance=c}),n.expose(c.value),e.watch(i,x=>{var v;(v=o.value)==null||v.search(x),n.emit("update:modelValue",x)}),e.watch(()=>t.modelValue,x=>{i.value=x});function m(x){r.value.commitValue(x)}function C(x){n.emit("change",x)}return()=>e.createVNode("div",{ref:f},[e.createVNode(e.resolveComponent("f-button-edit"),{ref:r,"button-content":s.value,placeholder:l.value,onChange:C,"enable-clear":!0,"button-behavior":"Execute",modelValue:i.value,"onUpdate:modelValue":x=>i.value=x,"popup-host":t.popupHost,"popup-right-boundary":t.popupRightBoundary,"popup-offset-x":t.popupOffsetX,"popup-on-input":!0,"popup-on-focus":!0},{default:()=>[e.createVNode(Ge,{ref:o,data:a.value,onConfirmResult:m},null)]})])}});Q.install=t=>{t.component(Q.name,Q)},Q.register=(t,n,a,r)=>{t["search-box"]=Q,n["search-box"]=Ue},Q.registerDesigner=(t,n,a)=>{t["search-box"]=_t,n["search-box"]=Ue};const Ye={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:t=>typeof t=="string"||typeof t=="function"},itemStyle:{type:[String,Function],default:"",validator:t=>typeof t=="string"||typeof t=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}},showActiveWhenMultiSelect:{type:Boolean,default:!0},allowDelete:{type:Boolean,default:!0}};function Ut(t,n){function a(l){const s=[];let i=l.nextNode();for(;i;)s.push(i),i=l.nextNode();return s}function r(l,s){const i=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return a(i).map(m=>({textNode:m,text:(m.textContent||"").toLocaleLowerCase()})).map(({textNode:m,text:C})=>{const x=[];let v=0;for(;v<C.length;){const u=C.indexOf(s,v);if(u===-1)break;x.push(u),v=u+s.length}return x.map(u=>{const b=new Range;return b.setStart(m,u),b.setEnd(m,u+s.length),b})}).flat()}function o(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!n))return;const s=r(n.value,l.toLocaleLowerCase()),i=new Highlight(...s);CSS.highlights.set("search-result",i)}return{search:o}}function Xe(t,n,a,r,o,l,s,i,f,d){const c=e.ref(t.size),m=e.ref(t.textField),C=e.ref(t.titleField),x=e.ref(t.disableField),v=e.computed(()=>{var g,y;return((g=t.selection)==null?void 0:g.multiSelect)&&((y=t.selection)==null?void 0:y.showCheckbox)}),{onMouseenterItem:u,onMouseoverItem:b,onMouseoutItem:S}=l,{getKey:w,listViewItemClass:O,listViewItemStyle:N,onCheckItem:P,onClickItem:F}=s,T=e.computed(()=>{const g={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return t.itemClass?g:{margin:c.value==="small"?"0.25rem 0":"8px 0",...g}});function p(g,y,V){return g.checked=i.findIndexInSelectedItems(g)>-1,e.createVNode("li",{class:O(g,y),id:w(g,y),key:w(g,y),style:N(g,y),onClick:k=>F(g,y,k),onMouseenter:k=>u(k,g,y),onMouseover:k=>b(k,g,y),onMouseout:k=>S(k,g,y)},[v.value&&e.createVNode("div",{class:"f-list-select",onClick:k=>k.stopPropagation()},[e.createVNode(je.FCheckbox,{id:"list-"+w(g,y),customClass:"listview-checkbox float-left",disabled:g[x.value],checked:g.checked,"onUpdate:checked":k=>g.checked=k,onChange:k=>{P(g,y,!k.checked)}},null)]),e.createVNode("div",{class:"f-list-content"},[e.createVNode("div",{class:t.itemContentClass,style:T.value,title:g.raw[C.value]||g.raw[m.value]},[g.raw[m.value]])])])}return{renderItem:p}}function Gt(t,n,a,r,o,l,s,i,f,d){const c=e.ref(t.multiSelect),m=e.ref(t.disableField),C=e.ref(t.textField),{onMouseenterItem:x,onMouseoverItem:v,onMouseoutItem:u}=l,{getKey:b,listViewItemClass:S,listViewItemStyle:w,onCheckItem:O,onClickItem:N,updateSelectedItems:P}=s;function F(p,g,y){return t.contentTemplate?e.createVNode(e.Fragment,null,[t.contentTemplate({item:p.raw,index:g,selectedItem:y})]):n.slots.content?e.createVNode(e.Fragment,null,[n.slots.content&&n.slots.content({item:p.raw,index:g,selectedItem:y})]):e.createVNode("div",{style:"margin: 10px 0;"},[p.raw[C.value||"name"]])}function T(p,g,y){return e.createVNode("li",{class:S(p,g),id:b(p,g),key:b(p,g),style:w(p,g),onClick:V=>N(p,g,V),onMouseenter:V=>x(V,p,g),onMouseover:V=>v(V,p,g),onMouseout:V=>u(V,p,g)},[c.value&&e.createVNode("div",{class:"f-list-select",onClick:V=>V.stopPropagation()},[e.createVNode(je.FCheckbox,{id:"list-"+b(p,g),customClass:"listview-checkbox",disabled:p[m.value],checked:p.checked,"onUpdate:checked":V=>p.checked=V,onChange:V=>{O(p,g,!V.checked),P()}},null)]),e.createVNode("div",{class:"f-list-content"},[F(p,g,y)])])}return{renderItem:T}}function Yt(t,n,a,r,o,l,s,i,f,d){const c=e.ref(t.multiSelect),m=e.ref(t.disableField),C=e.ref(t.textField),{onMouseenterItem:x,onMouseoverItem:v,onMouseoutItem:u}=l,{getKey:b,listViewItemClass:S,onCheckItem:w,onClickItem:O}=s,{dragstart:N,dragenter:P,dragover:F,dragend:T}=r,{removeItem:p}=f,g=e.computed(()=>({margin:c.value?"10px 0":"10px 0px 10px 14px"}));function y(j,M=""){const H=j.target;H.title=H.scrollWidth>H.clientWidth?M:""}function V(j){return e.createVNode("div",{style:g.value,onMouseenter:M=>y(M,j.raw[C.value||"name"])},[j.raw[C.value||"name"]])}function k(){return n.slots.itemContent?n.slots.itemContent:V}const R=k();function z(j,M,H){return e.createVNode("li",{class:S(j,M),id:b(j,M),key:b(j,M),onClick:h=>O(j,M,h),onMouseenter:h=>x(h,j,M),onMouseover:h=>v(h,j,M),onMouseout:h=>u(h,j,M),draggable:"true",onDragstart:h=>N(h,j,M),onDragenter:h=>P(h,M),onDragend:h=>T(h,j),onDragover:h=>F(h)},[c.value&&e.createVNode("div",{class:"f-list-select",onClick:h=>h.stopPropagation()},[e.createVNode(je.FCheckbox,{id:"list-"+b(j,M),customClass:"listview-checkbox",disabled:j[m.value],checked:j.checked,"onUpdate:checked":h=>j.checked=h,onChange:h=>w(j,M,!h.checked)},null)]),e.createVNode("div",{class:"f-list-content"},[R(j)]),t.allowDelete&&e.createVNode("div",{class:"f-list-remove",onClick:h=>{h.stopPropagation(),p(M)}},[e.createVNode("div",{class:"f-list-remove-icon"},[e.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),e.createVNode("div",{class:"f-list-handle"},[e.createVNode("div",null,[e.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:z}}function Xt(t,n,a,r,o,l,s,i,f,d){var b;const c=e.ref(((b=t.group)==null?void 0:b.groupFields)||[]),{collpaseGroupIconClass:m}=o,{toggleGroupRow:C}=d;function x(S,w){S.stopPropagation(),w.collapse=!w.collapse,a.value=C(w.collapse?"collapse":"expand",w,a.value)}function v(S,w,O){return n.slots.group?e.createVNode(e.Fragment,null,[n.slots.content&&n.slots.group({item:S.raw,index:w,selectedItem:O})]):e.createVNode("div",{class:"f-navlookup-recentHeader",onClick:N=>x(N,S)},[e.createVNode("div",{class:"fv-grid-group-row-icon"},[e.createVNode("span",{class:m(S)},null)]),e.createVNode("div",{class:"f-navlookup-recommandLabel"},[S.raw[c.value[S.layer]]])])}function u(S,w,O){return S.layer>-1&&v(S,w,O)}return{renderItem:u}}function Kt(t,n,a,r){const{dataView:o}=a,{updateSelectedItems:l}=r;function s(i){if(i>-1&&i<o.value.length){if(t!=null&&t.checkBeforeRemoveItem&&!t.checkBeforeRemoveItem(o.value[i]))return;const f=o.value.splice(i,1);l(),n.emit("removeItem",f[0])}}return{removeItem:s}}function Zt(t,n,a,r,o,l,s,i,f,d){const c=e.ref(t.view),m=e.ref(t.view==="CardView"),C=e.ref({}),x=Kt(t,n,r,f),v=e.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":t.multiSelect,"d-flex":m.value,"flex-wrap":m.value})),u=e.computed(()=>!!a.value&&a.value.length>0),b=e.computed(()=>a.value.length===0);e.computed(()=>b.value&&!n.slots.empty);function S(){return c.value==="SingleView"?Xe:c.value==="DraggableView"?Yt:(c.value==="ContentView"||c.value==="CardView")&&(t.contentTemplate||n.slots.content)?Gt:Xe}const w=S(),{renderItem:O}=w(t,n,a,d,o,l,f,s,x,i),{renderItem:N}=Xt(t,n,a,d,o,l,f,s,x,i),P=[O,N];function F(){return a.value.filter(g=>g.visible!==!1).map((g,y)=>P[g.type](g,y,C))}function T(){return e.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[e.createVNode("p",{class:"f-empty-title"},[t.emptyTemplate?t.emptyTemplate():n.slots.empty?n.slots.empty():X.LocaleService.getLocaleValue("listView.emptyMessage")])])}function p(){return e.createVNode("ul",{class:v.value,style:"list-style: none;"},[u.value&&F(),b.value&&T()])}return{renderListArea:p}}function Jt(t,n,a){function r(){return n.slots.header&&e.createVNode("div",{class:"f-list-view-header"},[n.slots.header()])}return{renderHeader:r}}function Ke(t,n,a){const r=e.ref(t.headerClass),o=e.ref(t.placeholder),l=e.ref(""),s=e.computed(()=>!l.value),i=e.computed(()=>!!l.value);function f(C){l.value=""}e.watch(l,C=>{t.enableHighlightSearch&&a.search(C),n.emit("afterSearch",C)});const d=e.computed(()=>{const C={"form-group":!0,"farris-form-group":!0};return r.value&&r.value.split(" ").reduce((v,u)=>(v[u]=!0,v),C),C});function c(C){}function m(){return e.createVNode("div",{class:"f-list-view-header",onClick:e.withModifiers(()=>c,["prevent","stop"])},[e.createVNode("div",{class:d.value},[e.createVNode("div",{class:"farris-input-wrap"},[e.createVNode("div",{class:"f-cmp-inputgroup"},[e.createVNode("div",{class:"input-group f-state-editable"},[e.withDirectives(e.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":C=>l.value=C,name:"input-group-value",type:"text",placeholder:o.value,autocomplete:"off"},null),[[e.vModelText,l.value]]),e.createVNode("div",{class:"input-group-append"},[i.value&&e.createVNode("span",{class:"input-group-text input-group-clear",onClick:C=>f()},[e.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),s.value&&e.createVNode("span",{class:"input-group-text"},[e.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:m}}function Qt(){const t=e.ref(""),n=e.ref(-1),a=e.ref(""),r=e.ref(-1),o=e.ref(!1);function l(m,C,x){r.value=x}function s(m,C,x){o.value||(r.value=x)}function i(m,C,x){r.value=-1}function f(){o.value=!0}function d(){o.value=!1}function c(){n.value=-1,t.value=""}return{activeIndex:n,focusedItemId:a,hoverIndex:r,clearActiveItem:c,onMouseenterItem:l,onMouseoverItem:s,onMouseoutItem:i,resumeHover:d,suspendHover:f}}function en(t,n,a,r,o){const l=e.ref(t.idField),{dataView:s}=a,i=e.ref(-1),f=e.ref(!1),{activeIndex:d,focusedItemId:c,hoverIndex:m,resumeHover:C,suspendHover:x}=r;let v,u=0,b=0,S=null,w=null;const O=10,N=50;function P(j){if(!j)return null;const{overflowY:M}=getComputedStyle(j);return M==="auto"||M==="scroll"?j:P(j.parentElement)}function F(j,M){w&&clearInterval(w),w=window.setInterval(()=>{M==="up"?j.scrollTop-=O:j.scrollTop+=O},16)}function T(){w&&(clearInterval(w),w=null)}function p(j){const M=j.target;if(S||(S=P(M)),!S){T();return}const H=S.getBoundingClientRect(),h=j.clientY,B=h-H.top,L=H.bottom-h;B<N&&S.scrollTop>0?F(S,"up"):L<N&&S.scrollTop<S.scrollHeight-S.clientHeight?F(S,"down"):T()}function g(j,M){const H=j-u,h=M-b;v.style.left=parseInt(v.style.left)+H+"px",v.style.top=parseInt(v.style.top)+h+"px",u=j,b=M}function y(j){const{left:M,top:H}=j.getBoundingClientRect(),h=j.cloneNode(!0);return h.className=h.className+" f-listview-drag-moving",h.style.cssText=`
position:absolute;
left:${M}px;
top:${document.documentElement.scrollTop?H+document.documentElement.scrollTop:H}px;
z-index: 999999;
pointer-events: none;
border-radius: 10px;
margin: 4px 2px;
display: flex;
align-items: center;
float: none;
text-align: initial;
width:${getComputedStyle(j).width};
height:${getComputedStyle(j).height};
`,h.children[0].style.cssText="padding: 0 0 0 14px",h.children[0].children[0].style.cssText=`
margin: 10px 0px 10px 14px;
overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
`,h.children[1].style.cssText="flex:1 1 auto; width:100%",h.children[2].style.cssText="padding: 0 14px 0 0",h.children[2].children[0].style.cssText="display: initial",document.body.appendChild(h),h}function V(j,M,H){if(j.stopPropagation(),x(),M){if(v=y(j.target),j.dataTransfer){const h=new Image;h.src="",j.dataTransfer.setDragImage(h,0,0)}u=j.pageX,b=j.pageY,setTimeout(()=>{i.value=H,f.value=!0,M.moving=!0})}}function k(j,M){if(j.preventDefault(),i.value!==M&&i.value!==-1){const H=s.value[i.value],h=o.value[i.value];H&&h&&(s.value.splice(i.value,1),s.value.splice(M,0,H),o.value.splice(i.value,1),o.value.splice(M,0,h),o.value.forEach((B,L)=>{B.index=L,B.raw.__fv_index__=L}),i.value=M,g(j.pageX,j.pageY))}}function R(j){j.preventDefault(),j.dataTransfer&&(j.dataTransfer.dropEffect="move"),g(j.pageX,j.pageY),p(j)}function z(j,M){var h,B;T(),S=null,M&&(M.moving=!1,v&&(document.body.removeChild(v),v=null)),s.value.forEach((L,E)=>{L.__fv_index__=E}),o.value.forEach((L,E)=>{L.index=E,L.raw&&(L.raw.__fv_index__=E)}),f.value=!1,C();const H=((h=M.raw)==null?void 0:h.__fv_index__)??0;m.value=H,d.value=H,c.value=(B=M.raw)==null?void 0:B[l.value],n.emit("change",s.value),n.emit("activeChange",[M.raw])}return{dragstart:V,dragenter:k,dragover:R,dragend:z,isDragging:f}}function tn(t,n,a,r,o,l){var z,j;const s=e.ref(t.idField),i=e.ref(t.disableField),f=e.ref(t.draggable);e.ref(t.itemClass);const d=e.ref(((z=t.selection)==null?void 0:z.multiSelect)??!1),c=e.ref(((j=t.selection)==null?void 0:j.multiSelectMode)||"DependOnCheck"),{isDragging:m}=r,{activeIndex:C,focusedItemId:x,hoverIndex:v}=o,{clearSelection:u,getSelectedItems:b,toggleSelectItem:S,currentSelectedDataId:w,multiSelectOnlyOnCheck:O}=l,N=e.ref(b()),P=M=>N.value.length===0?!1:N.value.some(H=>{let h="";return H.data?h=H.data[s.value]:h=H[s.value],h===M});function F(){N.value=b()}function T(M,H){return M.raw[s.value]!=null?M.raw[s.value]+"_"+H:""}function p(M,H){const h={"f-list-view-group-item":!0,"f-list-view-draggable-item":f.value,"f-un-click":!M.checked,"f-un-select":!!M.raw[i.value],"f-listview-active":d.value&&P(T(M,H))&&t.showActiveWhenMultiSelect||!d.value&&M.raw[s.value]===w.value||d.value&&!t.showActiveWhenMultiSelect&&M.raw[s.value]===w.value,"f-listview-hover":!m.value&&H===v.value,moving:!!M.moving};if(typeof t.itemClass=="string")return K.getCustomClass(h,t.itemClass);if(typeof t.itemClass=="function"){const B=t.itemClass(M);return K.getCustomClass(h,B)}return h}function g(M,H){const h={};if(typeof t.itemStyle=="string")return K.getCustomStyle(h,t.itemStyle);if(typeof t.itemStyle=="function"){const B=t.itemStyle(M);return K.getCustomStyle(h,B)}return h}const y=e.computed(()=>!d.value);function V(M,H,h){M.checked=h,!M.raw[i.value]&&(y.value&&(x.value=M.raw[s.value]),S(M))}const k=e.computed(()=>!d.value||d.value&&c.value==="OnCheckAndClick");function R(M,H,h){if(M.raw[i.value]){h==null||h.preventDefault(),h==null||h.stopPropagation();return}w.value=M.raw[s.value],x.value=M.raw[s.value],C.value=H,k.value&&(S(M),F()),n.emit("clickItem",{data:N.value,index:H,dataItem:M.raw}),n.emit("activeChange",N.value)}return{getKey:T,selectedItems:N,listViewItemClass:p,listViewItemStyle:g,updateSelectedItems:F,onCheckItem:V,onClickItem:R}}const ee=e.defineComponent({name:"FListView",props:Ye,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(t,n){var me;const a=e.ref(!1),r=e.ref(),o=e.ref(!0),l=e.ref(((me=t.rowOption)==null?void 0:me.rowHeight)||28),s=e.ref(!1),i=e.ref([]),f=0,d=e.ref(t.columns),c=G.useFilter(t,n),m=G.useIdentify(t),C=G.useHierarchy(t),x=G.useGroupData(t,m),v=G.useDataView(t,new Map,c,C,m),u=G.useSelection(t,v,m,i,n),b=Ut(t,r),S=G.usePagination(t,v),w=e.computed(()=>v.dataView.value.length),O=G.useRow(t,n,u,m),N=G.useEdit(t,n,m,O,i),P=G.useVisualDataBound(t,v,l),F=G.useVisualDataCell(t,{},P),T=G.useVisualDataRow(t,v,N,C,m,P,F,l),p=G.useVisualGroupRow(t,m,F,T),g=G.useVisualSummaryRow(t,m,F,T),y=G.useVisualData(t,d,v,w,f,T,p,g),{getVisualData:V}=y;i.value=V(0,w.value+f-1);const k=e.computed(()=>{const $={"f-list-view":!0,"f-list-view-multiple":t.multiSelect};return t.size!=="default"&&($[`${t.size}-item`]=!0),K.getCustomClass($,t.customClass)}),R=e.computed(()=>!!n.slots.footer||o.value);function z(){return t.header==="SearchBar"?Ke:t.header==="ContentHeader"?Jt:Ke}const j=z(),{renderHeader:M}=j(t,n,b),H=Qt(),h=en(t,n,v,H,i),B=tn(t,n,i,h,H,u),{renderListArea:L}=Zt(t,n,i,v,x,H,u,y,B,h);function E($){b.search($)}function q($){$&&(v.load($),i.value=V(0,w.value+f-1))}function se(){u.clearSelection(),H.clearActiveItem()}function te(){return B.selectedItems.value}function be(){return B.selectedItems.value.map($=>$[m.idField.value])}function pe($){u.selectedValues.value=$,B.updateSelectedItems()}function we(){return u.currentSelectedDataId.value}function Ce($){O.activeRowById($)}function re($){const J=m.idField.value,ce=i.value.find(Ne=>Ne.raw[J]===$),ge=i.value.findIndex(Ne=>Ne.raw[J]===$);ce&&ge>-1&&B.onClickItem(ce,ge)}function xe($){const J=m.idField.value,ce=i.value.find(ge=>ge.raw[J]===$);ce&&O.changeRow(ce)}function Ve($){S.updatePagination($)}function W($){return i.value.filter(J=>$.includes(J.raw[t.idField]))}n.expose({search:E,updateDataSource:q,clearSelection:se,getSelections:te,updateSelectionByIds:pe,getSelectionIds:be,activeRowById:Ce,getCurrentRowId:we,clickRowItemById:re,updatePagination:Ve,getVisibleDataByIds:W,selectRowById:xe}),e.watch(()=>t.selectionValues,($,J)=>{$!==J&&pe($)});const Z=G.useSidebar(t,u),{sidebarWidth:ne,showSidebarCheckBox:Se}=Z,De=G.useColumn(t,n),{applyColumnSorter:Me,columnContext:Ee,updateColumnRenderContext:gt}=De;return G.useVirtualScroll(t,v,i,Ee,y,w,f,ne,l,a,N),()=>e.createVNode("div",{class:k.value},[M(),e.createVNode("div",{ref:r,class:"f-list-view-content",onMouseover:()=>{s.value||(s.value=!0)},onMouseleave:()=>{s.value&&(s.value=!1)}},[L()]),R.value&&e.createVNode("div",{class:"f-list-view-footer"},[t.footerTemplate?t.footerTemplate():n.slots.footer&&n.slots.footer()])])}}),Ze=e.defineComponent({name:"FListViewTable",props:Ye,emits:["outputValue","currentEvent","selectionChanged"],setup(t,n){const a=[{name:"任芳",code:"1.PO20198989001",date:"2024-02-19",desc:"导游1",amount:63.85,avatar:"./assets/avatar1.png"},{name:"戴秀兰",code:"2.PO20198989002",date:"2024-03-17",desc:"导游2",amount:60.13,avatar:"./assets/avatar2.png"},{name:"尹磊",code:"3.PO20198989003",date:"2024-04-09",desc:"导游3",amount:36.54,avatar:"./assets/avatar3.png"},{name:"赵明",code:"4.PO20198989004",date:"2024-03-27",desc:"导游4",amount:52.76,avatar:"./assets/avatar4.png"},{name:"吕洋",code:"5.PO20198989005",date:"2024-11-17",desc:"导游5",amount:84.13,avatar:"./assets/avatar5.png"}],r=e.computed(()=>t.data.length>0?t.data:a);return()=>{var o;return e.createVNode(e.Fragment,null,[(o=r.value)==null?void 0:o.map(l=>e.createVNode("div",{class:"f-template-listview-row"},[e.createVNode("div",{class:"list-view-item-title"},[e.createVNode("div",{class:"item-title-img"},[e.createVNode("img",{src:l.avatar,alt:"",style:"width: 44px;"},null)]),e.createVNode("div",{class:"item-title"},[e.createVNode("p",{class:"item-title-heading"},[l.code]),e.createVNode("p",{class:"item-title-text"},[l.desc])])]),e.createVNode("div",{class:"list-view-item-content"},[e.createVNode("div",{class:"content-message"},[e.createVNode("div",{class:"ower"},[e.createVNode("p",null,[e.createTextVNode("创建人")]),e.createVNode("p",{class:"con"},[l.name])]),e.createVNode("div",{class:"date"},[e.createVNode("p",null,[e.createTextVNode("创建时间")]),e.createVNode("p",{class:"con"},[l.date])])])])]))])}}});ee.install=t=>{t.component(ee.name,ee),t.component(Ze.name,Ze)};const nn=new Map([["appearance",he.resolveAppearance]]),an={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/pagination.schema.json",title:"pagination",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a pagination",type:"string"},type:{description:"The type string of pagination component",type:"string",default:"pagination"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"string",default:""}},required:["id","type"]},on={title:"pagination",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}};function ln(t,n,a){return n}const Re={currentPage:{type:Number,default:1},disabled:{type:Boolean,default:!1},mode:{type:String,default:"default"},pageSize:{type:Number,default:20},totalItems:{type:Number,default:0},showGoButton:{type:Boolean,default:!1},showPageList:{type:Boolean,default:!0},showPageNumbers:{type:Boolean,default:!0},showRedirection:{type:Boolean,default:!0},pageList:{type:Array,default:[20,50,100]},showPageInfo:{type:Boolean,default:!1}},Je=he.createPropsResolver(Re,an,nn,ln,on);function Qe(t,n,a,r){e.computed(()=>X.LocaleService.getLocaleValue("pagination.goto.prefix"));const o=e.ref(""),l=e.ref(t.value);e.watch(t,c=>{l.value!==c&&(l.value=c)});function s(c){return!isNaN(c)&&c>=1&&c<=n.value}function i(c){const m=t.value;l.value=c.target.valueAsNumber,s(l.value)?(t.value=l.value,r.emit("update:currentPage",t.value),r.emit("changed",{pageIndex:t.value,pageSize:a.value}),r.emit("pageIndexChanged",{pageIndex:t.value,pageSize:a.value})):l.value=m}function f(c){c.key==="Enter"&&i(c)}function d(){return e.createVNode("li",{class:"page-goto-input d-flex flex-row",style:"padding-left: 10px; white-space: nowrap;"},[e.