@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
2 lines (1 loc) • 22.1 kB
JavaScript
(function(S,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("vue"),require("../designer-canvas/index.umd.js"),require("../property-panel/index.umd.js"),require("../button-edit/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("lodash-es"),require("../input-group/index.umd.js"),require("vue-i18n")):typeof define=="function"&&define.amd?define(["exports","vue","../designer-canvas/index.umd.js","../property-panel/index.umd.js","../button-edit/index.umd.js","../dynamic-resolver/index.umd.js","lodash-es","../input-group/index.umd.js","vue-i18n"],c):(S=typeof globalThis<"u"?globalThis:S||self,c(S["language-textbox"]={},S.Vue,S.designerCanvas,S.propertyPanel,S.FButtonEdit,S.dynamicResolver,S.LodashES,S.inputGroup,S.vueI18n))})(this,function(S,c,z,W,U,J,V,Q,X){"use strict";class Y extends W.InputBaseProperty{constructor(t,n){super(t,n)}getEditorProperties(t){return this.getComponentConfig(t,{type:"language-textbox"},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:t.editor.maxLength}}})}}function Z(e,t){function n(s,b){const x=e.schema;return new Y(s,t).getPropertyConfig(x,b)}return{getPropsConfig:n}}const K=c.defineComponent({name:"FLanguageTextboxDesign",props:{placeholder:{type:String,default:""}},setup(e,t){const n=c.ref(),s=c.inject("design-item-context"),b=c.inject("designer-host-service"),x=Z(s,b),d=z.useDesignerComponent(n,s,x);return c.onMounted(()=>{n.value.componentInstance=d}),t.expose(d.value),()=>c.createVNode("div",{class:"f-button-edit f-cmp-inputgroup f-button-edit-nowrap",ref:n},[c.createVNode("div",{class:"input-group"},[c.createVNode("input",{autocomplete:"off",class:"text-left form-control f-utils-fill",readonly:"true",type:"text",placeholder:e.placeholder},null),c.createVNode("div",{class:"input-group-append"},[c.createVNode("span",{class:"input-group-text input-group-append-button"},[c.createVNode("i",{class:"f-icon f-icon-yxs_earth"},null)])])])])}});function A(e,t){let n;function s(a){const{properties:l,title:m,ignore:o}=a,i=o&&Array.isArray(o),r=Object.keys(l).reduce((p,v)=>((!i||!o.find(T=>T===v))&&(p[v]=l[v].type==="object"&&l[v].properties?s(l[v]):V.cloneDeep(l[v].default)),p),{});if(m&&(!i||!o.find(p=>p==="id"))){const p=m.toLowerCase().replace(/-/g,"_");r.id=`${p}_${Math.random().toString().slice(2,6)}`}return r}function b(a){const{properties:l,title:m,required:o}=a;if(o&&Array.isArray(o)){const i=o.reduce((r,p)=>(r[p]=l[p].type==="object"&&l[p].properties?s(l[p]):V.cloneDeep(l[p].default),r),{});if(m&&o.find(r=>r==="id")){const r=m.toLowerCase().replace(/-/g,"_");i.id=`${r}_${Math.random().toString().slice(2,6)}`}return i}return{type:m}}function x(a,l={},m){const o=e[a];if(o){let i=b(o);const r=t[a];return i=r?r({getSchemaByType:x},i,l,m):i,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(i),i}return null}function d(a,l){const m=s(l);return Object.keys(m).reduce((o,i)=>(Object.prototype.hasOwnProperty.call(a,i)&&(o[i]&&V.isPlainObject(o[i])&&V.isPlainObject(a[i]||!a[i])?Object.assign(o[i],a[i]||{}):o[i]=a[i]),o),m),m}function M(a,l){return Object.keys(a).filter(o=>a[o]!=null).reduce((o,i)=>{if(l.has(i)){const r=l.get(i);if(typeof r=="string")o[r]=a[i];else{const p=r(i,a[i],a);Object.assign(o,p)}}else o[i]=a[i];return o},{})}function D(a,l,m=new Map){const o=d(a,l);return M(o,m)}function f(a){var m;const l=a.type;if(l){const o=e[l];if(!o)return a;const i=d(a,o),r=((m=a.editor)==null?void 0:m.type)||"";if(r){const p=e[r],v=d(a.editor,p);i.editor=v}return i}return a}function g(a){n=a}return{getSchemaByType:x,resolveSchemaWithDefaultValue:f,resolveSchemaToProps:D,mappingSchemaToProps:M,setDesignerContext:g}}const ee={},te={},{getSchemaByType:He,resolveSchemaWithDefaultValue:ne,resolveSchemaToProps:Ae,mappingSchemaToProps:Ge,setDesignerContext:_e}=A(ee,te);function re(e={}){function t(f,g,a,l){if(typeof a=="number")return l[f].length===a;if(typeof a=="object"){const m=Object.keys(a)[0],o=a[m];if(m==="not")return Number(l[f].length)!==Number(o);if(m==="moreThan")return Number(l[f].length)>=Number(o);if(m==="lessThan")return Number(l[f].length)<=Number(o)}return!1}function n(f,g,a,l){return l[f]&&l[f].propertyValue&&String(l[f].propertyValue.value)===String(a)}const s=new Map([["length",t],["getProperty",n]]);Object.keys(e).reduce((f,g)=>(f.set(g,e[g]),f),s);function b(f,g){const a=f;return typeof g=="number"?[{target:a,operator:"length",param:null,value:Number(g)}]:typeof g=="boolean"?[{target:a,operator:"getProperty",param:f,value:!!g}]:typeof g=="object"?Object.keys(g).map(l=>{if(l==="length")return{target:a,operator:"length",param:null,value:g[l]};const m=l,o=g[l];return{target:a,operator:"getProperty",param:m,value:o}}):[]}function x(f){return Object.keys(f).reduce((a,l)=>{const m=b(l,f[l]);return a.push(...m),a},[])}function d(f,g){if(s.has(f.operator)){const a=s.get(f.operator);return a&&a(f.target,f.param,f.value,g)||!1}return!1}function M(f,g){return x(f).reduce((m,o)=>m&&d(o,g),!0)}function D(f,g){const a=Object.keys(f),l=a.includes("allOf"),m=a.includes("anyOf"),o=l||m,p=(o?f[o?l?"allOf":"anyOf":"allOf"]:[f]).map(T=>M(T,g));return l?!p.includes(!1):p.includes(!0)}return{parseValueSchema:D}}const oe={convertTo:(e,t,n,s)=>{e.appearance||(e.appearance={}),e.appearance[t]=n},convertFrom:(e,t,n)=>e.appearance?e.appearance[t]:e[t]},ie={convertFrom:(e,t,n)=>e.buttons&&e.buttons.length?`共 ${e.buttons.length} 项`:"无"},ae={convertTo:(e,t,n,s)=>{e.editor&&(e.editor[t]=n)},convertFrom:(e,t,n)=>e.editor&&Object.prototype.hasOwnProperty.call(e.editor,t)?e.editor[t]:e[t]},se={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}},le={convertFrom:(e,t,n)=>{var b;const s=e.editor&&e.editor[t]?e.editor[t]:e[t];return((b=se[s])==null?void 0:b.name)||s}},ue={convertTo:(e,t,n,s)=>{e[t]=e[t]},convertFrom:(e,t,n)=>e.editor?n.getRealEditorType(e.editor.type):""},ce={convertTo:(e,t,n,s)=>{(e.type==="data-grid-column"||e.type==="tree-grid-column")&&(e.formatter?e.formatter[t]=n:e.formatter={[t]:n})},convertFrom:(e,t,n)=>{if(e.formatter){if(t==="trueText")return e.formatter.trueText;if(t==="falseText")return e.formatter.falseText;if(t==="prefix")return e.formatter.prefix;if(t==="suffix")return e.formatter.suffix;if(t==="precision")return e.formatter.precision;if(t==="decimal")return e.formatter.decimal;if(t==="thousand")return e.formatter.thousand;if(t==="tempDateFormat")return e.formatter.dateFormat==="yyyy年MM月dd日"?"yearMonthDay":e.formatter.dateFormat==="yyyy-MM-dd HH:mm:ss"?"yyyy-MM-ddTHH:mm:ss":e.formatter.dateFormat==="yyyy/MM/dd HH:mm:ss"?"yyyy/MM/ddTHH:mm:ss":e.formatter.dateFormat==="yyyy年MM月dd日 HH时mm分ss秒"?"yearMonthDayHourMinuteSecond":e.formatter.tempDateFormat||e.formatter.dateFormat||"yyyy-MM-dd";if(t==="customFormat")return e.formatter.customFormat;if(t==="type")return e.formatter.type||"none"}return"none"}},de={convertTo:(e,t,n,s)=>{e.command?e.command[t]=n:e.command={[t]:n},t==="enable"&&n&&(e.command.commands||(e.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(e,t,n)=>e.command&&t==="enable"?e.command.enable:""},pe={convertTo:(e,t,n,s)=>{e.column?e.column[t]=n:e.column={[t]:n},t==="fitColumns"&&n&&(e.column.fitMode||(e.column.fitMode="average"))},convertFrom:(e,t,n)=>{if(e.column){if(t==="fitColumns")return e.column.fitColumns;if(t==="fitMode")return e.column.fitMode}return""}},fe={convertTo:(e,t,n,s)=>{e.summary?e.summary[t]=n:e.summary={[t]:n},t==="enable"&&n&&(e.summary?e.summary.groupFields||(e.summary.groupFields=[]):e.summary={enable:n,groupFields:[]})},convertFrom:(e,t,n)=>e.summary&&t==="enable"?e.summary.enable:e.type==="data-grid-column"?e.enableSummary===void 0?!1:e.enableSummary:""},me={convertTo:(e,t,n,s)=>{e.group?e.group[t]=n:e.group={[t]:n},t==="enable"&&n&&(e.group?e.group.groupFields||(e.group.groupFields=[]):e.group={enable:n,groupFields:[],showSummary:!1})},convertFrom:(e,t,n)=>{if(e.group){if(t==="enable")return e.group.enable;if(t==="showSummary")return e.group.showSummary}}},ge={convertFrom:(e,t)=>e.binding?e.binding.path:"",convertTo:(e,t,n)=>{if(n&&n.length>0){const s=n[0];e.binding||(e.binding={}),e.binding.type="Form",e.binding.path=s.bindingField,e.binding.field=s.id,e.binding.fullPath=s.path,e.path=s.bindingPath}}},ve={convertTo:(e,t,n,s)=>{e.pagination||(e.pagination={}),e.pagination[t]=n},convertFrom:(e,t,n)=>e.pagination?e.pagination[t]:e[t]},be={convertTo:(e,t,n,s)=>{e.rowNumber||(e.rowNumber={}),e.rowNumber[t]=n},convertFrom:(e,t,n)=>e.rowNumber?e.rowNumber[t]:e[t]},ye={convertTo:(e,t,n,s)=>{e.selection||(e.selection={}),e.selection[t]=n},convertFrom:(e,t,n)=>e.selection?e.selection[t]:e[t]},xe={convertFrom:(e,t,n)=>e[t]&&e[t].length?`共 ${e[t].length} 项`:""},Se={convertFrom:(e,t)=>e[t]||"",convertTo:(e,t,n)=>{e[t]=n}},Te={convertTo:(e,t,n,s)=>{e.size||(e.size={}),e.size[t]=n},convertFrom:(e,t,n)=>e.size?e.size[t]:e[t]},he={convertFrom:(e,t,n)=>{var s,b;return(s=e.formatter)!=null&&s.data&&t==="formatterEnumData"&&!e.formatterEnumData?(b=e.formatter)==null?void 0:b.data:e.formatterEnumData}},Ce={convertTo:(e,t,n,s)=>{e.sort||(e.sort={}),e.sort[t]=n},convertFrom:(e,t,n)=>{var s,b;if(t==="mode")return((s=e.sort)==null?void 0:s.mode)||"client";if(t==="multiSort")return!!((b=e.sort)!=null&&b.multiSort)}},Fe={convertTo:(e,t,n,s)=>{e.filter||(e.filter={}),e.filter[t]=n},convertFrom:(e,t,n)=>{var s;if(t==="mode")return((s=e.filter)==null?void 0:s.mode)||"client"}},Me={convertTo:(e,t,n,s)=>{e.rowOption?e.rowOption[t]=n:e.rowOption={[t]:n}},convertFrom:(e,t,n)=>{if(e.rowOption){if(t==="customRowStyle")return e.rowOption.customRowStyle;if(t==="customCellStyle")return e.rowOption.customCellStyle}return""}};function G(e,t,n){const s=new Map([["/converter/appearance.converter",oe],["/converter/buttons.converter",ie],["/converter/property-editor.converter",ae],["/converter/items-count.converter",xe],["/converter/type.converter",le],["/converter/change-editor.converter",ue],["/converter/change-formatter.converter",ce],["/converter/column-command.converter",de],["/converter/column-option.converter",pe],["/converter/summary.converter",fe],["/converter/group.converter",me],["/converter/form-group-label.converter",Se],["/converter/field-selector.converter",ge],["/converter/pagination.converter",ve],["/converter/row-number.converter",be],["/converter/grid-selection.converter",ye],["/converter/size.converter",Te],["/converter/change-formatter-enum.converter",he],["/converter/grid-sort.converter",Ce],["/converter/grid-filter.converter",Fe],["/converter/row-option.converter",Me]]),b=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),x=re();function d(o,i){return()=>x.parseValueSchema(o,i)}function M(o,i,r){return o.includes("visible")&&i.visible!==void 0?typeof i.visible=="boolean"?()=>!!i.visible:i.visible===void 0?!0:d(i.visible,r):()=>!0}function D(o,i,r){return o.includes("readonly")&&i.readonly!==void 0?typeof i.readonly=="boolean"?()=>!!i.readonly:d(i.readonly,r):()=>!1}function f(o,i){const r=o.$converter||i;return typeof r=="string"&&r&&s.has(r)?s.get(r)||null:r||null}function g(o,i,r,p,v,T="",F=""){return Object.keys(o).map(y=>{const P=c.ref(1),j=y,u=o[y],C=Object.keys(u),k=u.title,L=u.type,R=b.get(L)||{type:"input-group",enableClear:!1},E=u.editor?Object.assign({},R,u.editor):Object.assign({},R),I=M(C,u,i),$=D(C,u,i);E.readonly=E.readonly===void 0?$():E.readonly;const H=u.type==="cascade"?g(u.properties,i,r,p,v,T,F):[],Re=!0;let O=f(u,F);const ke=c.computed({get(){if(P.value){if(["class","style"].find(Ie=>Ie===j)&&!O&&(O=s.get("/converter/appearance.converter")||null),O&&O.convertFrom)return O.convertFrom(r,y,v,T);const w=r[y];return Object.prototype.hasOwnProperty.call(u,"defaultValue")&&(w===void 0||typeof w=="string"&&w==="")?u.type==="boolean"?u.defaultValue:u.defaultValue||"":w}return null},set(w){P.value+=1,O&&O.convertTo?(O.convertTo(p,y,w,v,T),O.convertTo(r,y,w,v,T)):(p[y]=w,r[y]=w)}}),{refreshPanelAfterChanged:Ve,description:$e,isExpand:Be,parentPropertyID:qe}=u,_={propertyID:j,propertyName:k,propertyType:L,propertyValue:ke,editor:E,visible:I,readonly:$,cascadeConfig:H,hideCascadeTitle:Re,refreshPanelAfterChanged:Ve,description:$e,isExpand:Be,parentPropertyID:qe};return i[j]=_,_})}function a(o,i,r={}){const p={},v=e[o];return v&&v.categories?Object.keys(v.categories).map(F=>{const h=v.categories[F],y=h==null?void 0:h.title,P=g(h.properties||{},p,{},r,i);return{categoryId:F,categoryName:y,properties:P}}):[]}function l(o,i,r,p,v=""){const T=i.$ref.schema,F=i.$ref.converter,h=r[T],y=h.type,P=n(h),j={},u=e[y];if(u&&u.categories){const C=u.categories[o],k=C==null?void 0:C.title;F&&Object.keys(C.properties).forEach(E=>{C.properties[E].$converter=F});const L=(C==null?void 0:C.properties)||{},R=g(L,j,P,h,p,v);return{categoryId:o,categoryName:k,properties:R}}return{categoryId:o,categoryName:"",properties:[]}}function m(o,i,r,p,v){const T=o.type,F=n(o),h={};let y=v||e[T];if(y&&Object.keys(y).length===0&&r&&r.getPropConfig&&(y=r.getPropConfig(p)),y&&y.categories){const P=[];return Object.keys(y.categories).map(j=>{const u=y.categories[j];if(u.$ref){P.push(l(j,u,o,i,p));return}const C=u==null?void 0:u.title,k=u==null?void 0:u.tabId,L=u==null?void 0:u.tabName,R=u==null?void 0:u.hide,E=u==null?void 0:u.hideTitle,I=g(u.properties||{},h,F,o,i,p,u.$converter),{setPropertyRelates:$}=u,H=u==null?void 0:u.parentPropertyID;P.push({categoryId:j,categoryName:C,tabId:k,tabName:L,hide:R,properties:I,hideTitle:E,setPropertyRelates:$,parentPropertyID:H})}),P}return[]}return{getPropertyConfigBySchema:m,getPropertyConfigByType:a,propertyConverterMap:s}}G({},{},ne);const Pe={},je={},{getSchemaByType:Ue,resolveSchemaWithDefaultValue:Oe,resolveSchemaToProps:Je,mappingSchemaToProps:Qe,setDesignerContext:Xe}=A(Pe,je);G({},{},Oe);function we(e,t){return{customClass:t.class,customStyle:t.style}}const Ne=new Map([["appearance",we]]),De={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/input-group.schema.json",title:"language-textbox",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"language-textbox"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},formatValidation:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},labelWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabIndex:{description:"",type:"number",default:-1},maxLength:{description:"",type:"number",default:""},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},languages:{description:"语种列表",type:"array",default:[]},modelValue:{description:"绑定值",type:"object",default:{}},maxWords:{description:"各语种最大字符数",type:"object",default:null}},required:["type"],ignore:["id","appearance","binding","visible"]};function Ee(e,t,n){return t}const B={id:{type:String,required:!0},languages:{type:Array,default:[]},disabled:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},placeholder:{type:String,default:""},maxWords:{type:Object,default:null},modelValue:{type:Object,default:null},dropDownIcon:{type:String,default:'<span class="f-icon f-icon-yxs_earth"></span>'},tabIndex:{type:Number,default:-1},enableTitle:{type:Boolean,default:!0},maxLength:{type:Number,default:null}},q=J.createPropsResolver(B,De,Ne,Ee),Le=c.defineComponent({name:"LanguageContents",props:{languages:{type:Array,default:[]},modelValue:{type:Object,default:null},id:{type:String,default:""},maxLength:{type:Number,default:void 0}},emits:["update:modelValue"],setup(e,t){const n=c.ref(e.languages),s=c.ref(e.modelValue||{}),b=c.ref();return c.onMounted(()=>{setTimeout(()=>{var x,d;(d=(x=b.value)==null?void 0:x.querySelector("input"))==null||d.focus()},130)}),()=>{var x;return c.createVNode("ul",{class:"list-group",style:"background: white;",ref:b},[(x=n.value)==null?void 0:x.map(d=>c.createVNode("li",{class:"list-group-item border-0 p-2 px-2"},[c.createVNode("div",{class:"farris-group-wrap form-inline farris-form-inline"},[c.createVNode("div",{class:"form-group farris-form-group"},[c.createVNode("label",{for:"hpinput01",class:"col-form-label"},[c.createVNode("span",{class:"farris-label-text",title:d.name},[d.name])]),c.createVNode("div",{class:"farris-input-wrap"},[c.createVNode(Q.FInputGroup,{id:e.id+"_"+d.code,modelValue:s.value[d.code],"onUpdate:modelValue":M=>{s.value[d.code]=M,t.emit("update:modelValue",s.value)},updateOn:"change",maxLength:e.maxLength},null)])])])]))])}}}),N=c.defineComponent({name:"FLanguageTextbox",props:B,emits:["update:modelValue"],setup(e,t){const{locale:n}=X.useI18n(),{disabled:s,readonly:b,editable:x,modelValue:d}=c.toRefs(e),M=c.computed(()=>{var r;return(r=d.value)==null?void 0:r[n.value]}),D=c.ref();c.watch(()=>e.modelValue,r=>{d.value=r});const f=r=>{if((r==null?void 0:r.length)<=1)return;let p=-1;const v=r.find((T,F)=>{const h=T.code===n.value;return h&&(p=F),h});if(v){const T=Object.assign({},v);r.splice(p,1),r.unshift(T)}return r},g=c.ref();c.watch(()=>e.languages,r=>{g.value=f(r)||[]});function a(r){d.value=d.value||{},d.value[n.value]!==r&&(d.value[n.value]=r,t.emit("update:modelValue",d.value))}const l=c.computed(()=>{var p;const r=(p=D.value)==null?void 0:p.popoverRef;return r&&g.value.length>1?r.shown:!1});c.onMounted(()=>{g.value=f(e.languages)||[]});const m=r=>{d.value=r,t.emit("update:modelValue",d.value)},o=()=>{var r;return!(((r=g.value)==null?void 0:r.length)<=1)},i=()=>{d.value=d.value||{},d.value[n.value]&&(d.value[n.value]="",t.emit("update:modelValue",d.value))};return()=>c.createVNode(U,{ref:D,id:e.id,forcePlaceholder:!1,disable:s.value,readonly:b.value,editable:x.value,buttonContent:e.dropDownIcon,placeholder:e.placeholder,enableClear:!0,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:!1,inputType:"text",popupOnClick:!0,modelValue:M.value,"onUpdate:modelValue":r=>M.value=r,onChange:a,placement:"auto",popupMinWidth:365,maxLength:e.maxLength,beforeOpen:o,onClear:i},{default:()=>[l.value&&c.createVNode(Le,{id:e.id,languages:g.value,modelValue:d.value,maxLength:e.maxLength,"onUpdate:modelValue":m},null)]})}});N.install=e=>{e.component(N.name,N)},N.register=(e,t,n,s)=>{e["language-textbox"]=N,t["language-textbox"]=q},N.registerDesigner=(e,t,n)=>{e["language-textbox"]=K,t["language-textbox"]=q},S.FLanguageTextbox=N,S.default=N,S.languageTextBoxProps=B,S.propsResolver=q,Object.defineProperties(S,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});