UNPKG

@farris/ui-vue

Version:

Farris Vue, a Farris Design based Vue3 component library.

9 lines (8 loc) 46.7 kB
(function(N,n){typeof exports=="object"&&typeof module<"u"?n(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("../locale/index.umd.js"),require("../common/index.umd.js"),require("../number-spinner/index.umd.js"),require("../common/index.umd.js/text-box/use-input-expand"),require("bignumber.js")):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","../locale/index.umd.js","../common/index.umd.js","../number-spinner/index.umd.js","../common/index.umd.js/text-box/use-input-expand","bignumber.js"],n):(N=typeof globalThis<"u"?globalThis:N||self,n(N["language-textbox"]={},N.Vue,N.designerCanvas,N.propertyPanel,N.FButtonEdit,N.dynamicResolver,N.LodashES,N.inputGroup,N.locale,N.common,N.numberSpinner,N.useInputExpand))})(this,function(N,n,E,ie,le,Q,D,se,A,$,R,ue){"use strict";var mt=Object.defineProperty;var gt=(N,n,E)=>n in N?mt(N,n,{enumerable:!0,configurable:!0,writable:!0,value:E}):N[n]=E;var J=(N,n,E)=>gt(N,typeof n!="symbol"?n+"":n,E);class ce extends ie.InputBaseProperty{constructor(t,o){super(t,o)}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,needValid:!0}}})}}function de(e,t){function o(a,r){const m=e.schema;return new ce(a,t).getPropertyConfig(m,r)}return{getPropsConfig:o}}const fe=n.defineComponent({name:"FLanguageTextboxDesign",props:{placeholder:{type:String,default:""},expandable:{type:Boolean,default:!1},expandMode:{type:String,default:"text"},expandContent:{type:String,default:""},expandDisabled:{type:Boolean,default:!1}},setup(e,t){const o=n.ref(),a=n.inject("design-item-context"),r=n.inject("designer-host-service"),m=de(a,r),l=E.useDesignerComponent(o,a,m);n.onMounted(()=>{o.value.componentInstance=l});const x=n.computed(()=>({"input-group-append input-append-wrapper":!0,"input-append-button":e.expandMode==="button","input-append-text":e.expandMode==="text"}));return t.expose(l.value),()=>n.createVNode("div",{class:"f-button-edit f-cmp-inputgroup f-button-edit-nowrap",ref:o,style:"pointer-events: none;"},[n.createVNode("div",{class:"input-group"},[n.createVNode("input",{autocomplete:"off",class:"text-left form-control f-utils-fill",readonly:"true",type:"text",placeholder:e.placeholder},null),n.createVNode("div",{class:"input-group-append"},[n.createVNode("span",{class:"input-group-text input-group-append-button"},[n.createVNode("i",{class:"f-icon f-icon-yxs_earth"},null)])]),e.expandable&&e.expandContent&&n.createVNode("div",{class:x.value},[n.createVNode("div",{class:"input-group-text",innerHTML:e.expandContent},null)])])])}});function X(e,t){let o;function a(s){const{properties:f,title:y,ignore:i}=s,u=i&&Array.isArray(i),p=Object.keys(f).reduce((C,b)=>((!u||!i.find(S=>S===b))&&(C[b]=f[b].type==="object"&&f[b].properties?a(f[b]):D.cloneDeep(f[b].default)),C),{});if(y&&(!u||!i.find(C=>C==="id"))){const C=y.toLowerCase().replace(/-/g,"_");p.id=`${C}_${Math.random().toString().slice(2,6)}`}return p}function r(s){const{properties:f,title:y,required:i}=s;if(i&&Array.isArray(i)){const u=i.reduce((p,C)=>(p[C]=f[C].type==="object"&&f[C].properties?a(f[C]):D.cloneDeep(f[C].default),p),{});if(y&&i.find(p=>p==="id")){const p=y.toLowerCase().replace(/-/g,"_");u.id=`${p}_${Math.random().toString().slice(2,6)}`}return u}return{type:y}}function m(s,f={},y){const i=e[s];if(i){let u=r(i);const p=t[s];return u=p?p({getSchemaByType:m},u,f,y):u,o!=null&&o.appendIdentifyForNewControl&&o.appendIdentifyForNewControl(u),u}return null}function l(s,f){const y=a(f);return Object.keys(y).reduce((i,u)=>(Object.prototype.hasOwnProperty.call(s,u)&&(i[u]&&D.isPlainObject(i[u])&&D.isPlainObject(s[u]||!s[u])?Object.assign(i[u],s[u]||{}):i[u]=s[u]),i),y),y}function x(s,f){return Object.keys(s).filter(i=>s[i]!=null).reduce((i,u)=>{if(f.has(u)){const p=f.get(u);if(typeof p=="string")i[p]=s[u];else{const C=p(u,s[u],s);Object.assign(i,C)}}else i[u]=s[u];return i},{})}function T(s,f,y=new Map){const i=l(s,f);return x(i,y)}function d(s){var y;const f=s.type;if(f){const i=e[f];if(!i)return s;const u=l(s,i),p=((y=s.editor)==null?void 0:y.type)||"";if(p){const C=e[p],b=l(s.editor,C);u.editor=b}return u}return s}function g(s){o=s}return{getSchemaByType:m,resolveSchemaWithDefaultValue:d,resolveSchemaToProps:T,mappingSchemaToProps:x,setDesignerContext:g}}const pe={},me={},{resolveSchemaWithDefaultValue:ge}=X(pe,me);function be(e={}){function t(d,g,s,f){if(typeof s=="number")return f[d].length===s;if(typeof s=="object"){const y=Object.keys(s)[0],i=s[y];if(y==="not")return Number(f[d].length)!==Number(i);if(y==="moreThan")return Number(f[d].length)>=Number(i);if(y==="lessThan")return Number(f[d].length)<=Number(i)}return!1}function o(d,g,s,f){return f[d]&&f[d].propertyValue&&String(f[d].propertyValue.value)===String(s)}const a=new Map([["length",t],["getProperty",o]]);Object.keys(e).reduce((d,g)=>(d.set(g,e[g]),d),a);function r(d,g){const s=d;return typeof g=="number"?[{target:s,operator:"length",param:null,value:Number(g)}]:typeof g=="boolean"?[{target:s,operator:"getProperty",param:d,value:!!g}]:typeof g=="object"?Object.keys(g).map(f=>{if(f==="length")return{target:s,operator:"length",param:null,value:g[f]};const y=f,i=g[f];return{target:s,operator:"getProperty",param:y,value:i}}):[]}function m(d){return Object.keys(d).reduce((s,f)=>{const y=r(f,d[f]);return s.push(...y),s},[])}function l(d,g){if(a.has(d.operator)){const s=a.get(d.operator);return s&&s(d.target,d.param,d.value,g)||!1}return!1}function x(d,g){return m(d).reduce((y,i)=>y&&l(i,g),!0)}function T(d,g){const s=Object.keys(d),f=s.includes("allOf"),y=s.includes("anyOf"),i=f||y,C=(i?d[i?f?"allOf":"anyOf":"allOf"]:[d]).map(S=>x(S,g));return f?!C.includes(!1):C.includes(!0)}return{parseValueSchema:T}}const ye={convertTo:(e,t,o,a)=>{e.appearance||(e.appearance={}),e.appearance[t]=o},convertFrom:(e,t,o)=>e.appearance?e.appearance[t]:e[t]},ve={convertFrom:(e,t,o)=>e.buttons&&e.buttons.length?`共 ${e.buttons.length} 项`:"无"},xe={convertTo:(e,t,o,a)=>{e.editor&&(e.editor[t]=o)},convertFrom:(e,t,o)=>e.editor&&Object.prototype.hasOwnProperty.call(e.editor,t)?e.editor[t]:e[t]},he={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:"标签页工具栏按钮"},"drawer-toolbar-item":{type:"drawer-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:"标签页工具栏"},"drawer-toolbar":{type:"drawer-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:"列表导航"},nav:{type:"nav",name:"标签类导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"},image:{type:"image",name:"图像"},avatar:{type:"avatar",name:"头像"},"discussion-editor":{type:"discussion-editor",name:"评论编辑区"},"discussion-list":{type:"discussion-list",name:"评论列表"},comment:{type:"comment",name:"评论区"},"approval-logs":{type:"approval-logs",name:"审批记录"},"rich-text-editor":{type:"rich-text-editor",name:"富文本",icon:"rich-text-box"},calendar:{type:"calendar",name:"日历",icon:"date-picker"},wizard:{type:"wizard",name:"向导",icon:"wizard"},"wizard-page":{type:"wizard-page",name:"向导页",icon:"wizard"},"wizard-page-detail":{type:"wizard-page-detail",name:"向导详情",icon:"wizard"},step:{type:"step",name:"步骤条",icon:"step"},"dynamic-form":{type:"dynamic-form",name:"动态表单"}},Ce={convertFrom:(e,t,o)=>{var r;const a=e.editor&&e.editor[t]?e.editor[t]:e[t];return((r=he[a])==null?void 0:r.name)||a}},Te={convertTo:(e,t,o,a)=>{e[t]=e[t]},convertFrom:(e,t,o)=>e.editor?o.getRealEditorType(e.editor.type):""},we={convertTo:(e,t,o,a)=>{(e.type==="data-grid-column"||e.type==="tree-grid-column")&&(e.formatter?e.formatter[t]=o:e.formatter={[t]:o})},convertFrom:(e,t,o)=>{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==="dateFormat")return e.formatter.dateFormat||"yyyy-MM-dd";if(t==="customFormat")return e.formatter.customFormat;if(t==="type")return e.formatter.type||"none"}return"none"}},Se={convertTo:(e,t,o,a)=>{e.command?e.command[t]=o:e.command={[t]:o},t==="enableType"&&o==="default"&&(e.command.enable=!0,e.command.formatter="",e.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]),t==="enableType"&&o==="custom"&&(e.command.enable=!0,e.command.commands=[{value:"add",text:"增加",type:"link"},{value:"edit",text:"编辑",type:"link"},{value:"remove",text:"删除",type:"link"}]),t==="enableType"&&o==="unable"&&(e.command.enable=!1,e.command.formatter="")},convertFrom:(e,t,o)=>{var a,r;if(e.command){if(t==="enableType"){if(e.command.enableType)return e.command.enableType;const m=(r=(a=e.command)==null?void 0:a.commands)==null?void 0:r.find(l=>l.command==="edit"&&l.type==="primary");return e.command.enable?m?"default":"custom":"unable"}if(t==="commands")return e.command.enableType==="custom"?e.command.commands:[];if(t==="formatter")return e.command.formatter;if(t==="count")return e.command.count;if(t==="columnWidth")return e.command.columnWidth||200}return""}},Ne={convertTo:(e,t,o,a)=>{e.column?e.column[t]=o:e.column={[t]:o},t==="fitColumns"&&o&&(e.column.fitMode||(e.column.fitMode="average"))},convertFrom:(e,t,o)=>{if(e.column){if(t==="fitColumns")return e.column.fitColumns;if(t==="fitMode")return e.column.fitMode}return""}},Be={convertTo:(e,t,o,a)=>{e.summary?e.summary[t]=o:e.summary={[t]:o},t==="enable"&&o&&(e.summary?e.summary.groupFields||(e.summary.groupFields=[]):e.summary={enable:o,groupFields:[]})},convertFrom:(e,t,o)=>{var a,r;return t==="customSummaryStyle"?e.summary.customSummaryStyle:t==="position"?((a=e.summary)==null?void 0:a[t])||"bottom":t==="customRender"?((r=e.summary)==null?void 0:r[t])||"":e.summary&&t==="enable"?e.summary.enable:e.type==="data-grid-column"?e.enableSummary===void 0?!1:e.enableSummary:""}},Ve={convertTo:(e,t,o,a)=>{e.group?e.group[t]=o:e.group={[t]:o},t==="enable"&&o&&(e.group?e.group.groupFields||(e.group.groupFields=[]):e.group={enable:o,groupFields:[],showSummary:!1,customRender:""})},convertFrom:(e,t,o)=>{if(e.group){if(t==="enable")return e.group.enable;if(t==="showSummary")return e.group.showSummary;if(t==="customRender")return e.group.customRender;if(t==="groupFields")return e.group.groupFields}}},Pe={convertFrom:(e,t)=>e.binding?e.binding.path:"",convertTo:(e,t,o)=>{if(o&&o.length>0){const a=o[0];e.binding||(e.binding={}),e.binding.type="Form",e.binding.path=a.bindingField,e.binding.field=a.id,e.binding.fullPath=a.path,e.path=a.bindingPath}}},Fe={convertTo:(e,t,o,a)=>{e.pagination||(e.pagination={}),t==="sizeLimits"?e.pagination.sizeLimits=o.split(","):e.pagination[t]=o},convertFrom:(e,t,o)=>{var a;return e.pagination?t==="sizeLimits"?(a=e.pagination.sizeLimits)==null?void 0:a.join(","):e.pagination[t]:e[t]}},Oe={convertTo:(e,t,o,a)=>{e.rowNumber||(e.rowNumber={}),e.rowNumber[t]=o},convertFrom:(e,t,o)=>e.rowNumber?e.rowNumber[t]:e[t]},ke={convertTo:(e,t,o,a)=>{e.selection||(e.selection={}),e.selection[t]=o},convertFrom:(e,t,o)=>{if(!e.selection)return!!e[t];const a=!!e.selection[t];return t==="showCheckbox"&&a==null&&e.selection.multiSelect===!0?!0:a}},Me={convertFrom:(e,t,o)=>e[t]&&e[t].length?`共 ${e[t].length} 项`:""},Le={convertFrom:(e,t)=>e[t]||"",convertTo:(e,t,o)=>{e[t]=o}},je={convertTo:(e,t,o,a)=>{e.size||(e.size={}),e.size[t]=o},convertFrom:(e,t,o)=>e.size?e.size[t]:e[t]},Ie={convertFrom:(e,t,o)=>{var a,r;return(a=e.formatter)!=null&&a.data&&t==="formatterEnumData"&&!e.formatterEnumData?(r=e.formatter)==null?void 0:r.data:e.formatterEnumData}},Ee={convertTo:(e,t,o,a)=>{e.sort||(e.sort={}),e.sort[t]=o},convertFrom:(e,t,o)=>{var a,r;if(t==="mode")return((a=e.sort)==null?void 0:a.mode)||"client";if(t==="multiSort")return!!((r=e.sort)!=null&&r.multiSort)}},Re={convertTo:(e,t,o,a)=>{e.filter||(e.filter={}),e.filter[t]=o,t==="enable"&&(e.enableFilter=!1)},convertFrom:(e,t,o)=>{var a,r,m,l;return t==="mode"?((a=e.filter)==null?void 0:a.mode)||"server":t==="filterStyle"?((r=e.filter)==null?void 0:r.filterStyle)||"filter-column":t==="enable"?((m=e.filter)==null?void 0:m.enable)!==void 0?!!e.filter.enable:!!e.enableFilter:((l=e.filter)==null?void 0:l[t])||void 0}},De={convertTo:(e,t,o,a)=>{e.rowOption?e.rowOption[t]=o:e.rowOption={[t]:o}},convertFrom:(e,t,o)=>{if(e.rowOption){if(t==="customRowStyle")return e.rowOption.customRowStyle;if(t==="customCellStyle")return e.rowOption.customCellStyle;if(t==="height")return e.rowOption.height}return""}},Ae={convertTo:(e,t,o,a)=>{(e.type==="data-grid-column"||e.type==="tree-grid-column")&&(e[t]=o,t==="columnTemplateType"&&o==="hyperlink"&&(e.onClickLinkCommand?e.columnTemplate=` <span class="f-pretend-link f-cursor-pointer" @click="(ctx)=>viewModel.current.${e.onClickLinkCommand||""}({id: rowData.id,context: ctx})"> {{rowData.${e.field}}} </span>`:e.columnTemplate=` <span class="f-pretend-link f-cursor-pointer"> {{rowData.${e.field}}} </span>`),t==="columnTemplateType"&&o==="default"&&(e.columnTemplate=""),t==="columnTemplateType"&&o==="custom"&&(e.columnTemplate=""))},convertFrom:(e,t,o)=>t==="columnTemplate"?e.columnTemplate:t==="columnTemplateType"?e.columnTemplateType?e.columnTemplateType||"default":e.columnTemplate&&!e.onClickLinkCommand?"custom":e.columnTemplate&&e.onClickLinkCommand?"hyperlink":"default":""},$e={convertTo:(e,t,o,a)=>{e.hierarchy||(e.hierarchy={cascadeOption:{}}),e.hierarchy.cascadeOption||(e.hierarchy.cascadeOption={}),e.hierarchy.cascadeOption[t]=o},convertFrom:(e,t,o)=>{var a,r;return!!((r=(a=e.hierarchy)==null?void 0:a.cascadeOption)!=null&&r[t])}};function K(e,t,o){const a=new Map([["/converter/appearance.converter",ye],["/converter/buttons.converter",ve],["/converter/property-editor.converter",xe],["/converter/items-count.converter",Me],["/converter/type.converter",Ce],["/converter/change-editor.converter",Te],["/converter/change-formatter.converter",we],["/converter/column-command.converter",Se],["/converter/column-option.converter",Ne],["/converter/summary.converter",Be],["/converter/group.converter",Ve],["/converter/form-group-label.converter",Le],["/converter/field-selector.converter",Pe],["/converter/pagination.converter",Fe],["/converter/row-number.converter",Oe],["/converter/grid-selection.converter",ke],["/converter/size.converter",je],["/converter/change-formatter-enum.converter",Ie],["/converter/grid-sort.converter",Ee],["/converter/grid-filter.converter",Re],["/converter/row-option.converter",De],["/converter/change-formatter-type.converter",Ae],["/converter/tree-auto-check.converter",$e]]),r=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}],["multiLanguage",{type:"language-textbox"}]]),m=be();function l(i,u){return()=>m.parseValueSchema(i,u)}function x(i,u,p){return i.includes("visible")&&u.visible!==void 0?typeof u.visible=="boolean"?()=>!!u.visible:u.visible===void 0?!0:l(u.visible,p):()=>!0}function T(i,u,p){return i.includes("readonly")&&u.readonly!==void 0?typeof u.readonly=="boolean"?()=>!!u.readonly:l(u.readonly,p):()=>!1}function d(i,u){const p=i.$converter||u;return typeof p=="string"&&p&&a.has(p)?a.get(p)||null:p||null}function g(i,u,p,C,b,S="",B=""){return Object.keys(i).map(w=>{const P=n.ref(1),c=w,h=i[w],v=Object.keys(h),F=h.title,O=h.type,k=r.get(O)||{type:"input-group",enableClear:!1},I=h.editor?Object.assign({},k,h.editor):Object.assign({},k),U=x(v,h,u),H=T(v,h,u);I.readonly=I.readonly===void 0?H():I.readonly;const Y=h.type==="cascade"?g(h.properties,u,p,C,b,S,B):[],Z=!0;let M=d(h,B);const ut=n.computed({get(){if(P.value){if(["class","style"].find(_=>_===c)&&!M&&(M=a.get("/converter/appearance.converter")||null),M&&M.convertFrom){const _=M.convertFrom(p,w,b,S);return _===void 0&&Object.prototype.hasOwnProperty.call(h,"defaultValue")?h.type==="boolean"?h.defaultValue:h.defaultValue||"":_}const L=p[w];return Object.prototype.hasOwnProperty.call(h,"defaultValue")&&(L===void 0||typeof L=="string"&&L==="")?h.type==="boolean"?h.defaultValue:h.defaultValue||"":L}return null},set(L){P.value+=1,M&&M.convertTo?(M.convertTo(C,w,L,b,S),M.convertTo(p,w,L,b,S)):(C[w]=L,p[w]=L)}}),{refreshPanelAfterChanged:ct,description:dt,isExpand:ft,parentPropertyID:pt}=h,re={propertyID:c,propertyName:F,propertyType:O,propertyValue:ut,editor:I,visible:U,readonly:H,cascadeConfig:Y,hideCascadeTitle:Z,refreshPanelAfterChanged:ct,description:dt,isExpand:ft,parentPropertyID:pt};return u[c]=re,re})}function s(i,u,p={}){const C={},b=e[i];return b&&b.categories?Object.keys(b.categories).map(B=>{const V=b.categories[B],w=V==null?void 0:V.title,P=g(V.properties||{},C,{},p,u);return{categoryId:B,categoryName:w,properties:P}}):[]}function f(i,u,p,C,b=""){const S=u.$ref.schema,B=u.$ref.converter,V=p[S],w=V.type,P=o(V),c={},h=e[w];if(h&&h.categories){const v=h.categories[i],F=v==null?void 0:v.title;B&&Object.keys(v.properties).forEach(I=>{v.properties[I].$converter=B});const O=(v==null?void 0:v.properties)||{},k=g(O,c,P,V,C,b);return{categoryId:i,categoryName:F,properties:k}}return{categoryId:i,categoryName:"",properties:[]}}function y(i,u,p,C,b){const S=i.type,B=o(i),V={};let w=b||e[S];if(!(w&&Object.keys(w).length>0)&&p&&p.getPropConfig&&(w=p.getPropConfig(C)),w&&w.categories){const c=[];return Object.keys(w.categories).map(h=>{const v=w.categories[h];if(v.$ref){c.push(f(h,v,i,u,C));return}const F=v==null?void 0:v.title,O=v==null?void 0:v.tabId,k=v==null?void 0:v.tabName,I=v==null?void 0:v.hide,U=v==null?void 0:v.hideTitle,H=g(v.properties||{},V,B,i,u,C,v.$converter),{setPropertyRelates:Y}=v,Z=v==null?void 0:v.parentPropertyID;c.push({categoryId:h,categoryName:F,tabId:O,tabName:k,hide:I,properties:H,hideTitle:U,setPropertyRelates:Y,parentPropertyID:Z})}),c}return[]}return{getPropertyConfigBySchema:y,getPropertyConfigByType:s,propertyConverterMap:a}}K({},{},ge);const qe={},ze={},{resolveSchemaWithDefaultValue:He}=X(qe,ze);K({},{},He);function _e(e,t){return{customClass:t.class,customStyle:t.style}}const ee=new Map([["appearance",_e]]),te={$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:"string",default:""},languages:{description:"语种列表",type:"array",default:[]},modelValue:{description:"绑定值",type:"object",default:{}},enableClear:{description:"",type:"boolean",default:!0},maxWords:{description:"各语种最大字符数",type:"object",default:null},expandable:{description:"",type:"boolean",default:!1},expandMode:{description:"",type:"string",default:"text"},expandContent:{description:"",type:"string",default:""},expandDisabled:{description:"",type:"boolean",default:!1},onExpandClick:{description:"",type:"string",default:""},needConfirm:{description:"是否需要确认",type:"boolean",default:!1},beforeSubmit:{description:"提交前回调",type:"object",default:null}},required:["type"],ignore:["id","appearance","binding","visible"]};function ne(e,t,o){return t}const q={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},enableClear:{type:Boolean,default:!0},enableTitle:{type:Boolean,default:!0},maxLength:{type:Number,default:null},expandable:{type:Boolean,default:!1},expandMode:{type:String,default:"text"},expandContent:{type:String,default:""},expandDisabled:{type:Boolean,default:!1},needConfirm:{type:Boolean,default:!1},beforeSubmit:{type:Function},allowShowLanguage:{type:Boolean,default:!0}},Ge=Q.createPropsResolver(q,te,ee,ne),G=Q.getPropsResolverGenerator(q,te,ee,ne),We=n.defineComponent({name:"LanguageContents",props:{languages:{type:Array,default:[]},modelValue:{type:Object,default:null},id:{type:String,default:""},maxLength:{type:Number,default:void 0},needConfirm:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1}},emits:["update:modelValue","confirm","cancel"],setup(e,t){const o=n.ref(e.languages),a=n.ref(e.modelValue||{}),r=n.ref();n.onMounted(()=>{setTimeout(()=>{var T,d;(d=(T=r.value)==null?void 0:T.querySelector("input"))==null||d.focus()},130),e.needConfirm&&(a.value=D.cloneDeep(e.modelValue||{}))});function m(T,d){a.value[d.code]=T,!e.needConfirm&&t.emit("update:modelValue",a.value)}function l(){t.emit("cancel",e.modelValue)}function x(){t.emit("confirm",a.value)}return()=>{var T;return n.createVNode("ul",{class:"list-group",style:"background: white;",ref:r},[(T=o.value)==null?void 0:T.map(d=>n.createVNode("li",{class:"list-group-item border-0 p-2 px-2"},[n.createVNode("div",{class:"farris-group-wrap form-inline farris-form-inline"},[n.createVNode("div",{class:"form-group farris-form-group"},[n.createVNode("label",{for:"hpinput01",class:"col-form-label"},[n.createVNode("span",{class:"farris-label-text",title:d.name},[d.name])]),n.createVNode("div",{class:"farris-input-wrap"},[n.createVNode(se.FInputGroup,{id:e.id+"_"+d.code,modelValue:a.value[d.code],readonly:e.readonly,"onUpdate:modelValue":g=>{m(g,d)},updateOn:"change",maxLength:e.maxLength},null)])])])])),e.needConfirm&&!e.readonly&&n.createVNode("li",{class:"list-group-item border-0 p-2 px-2",style:"text-align: right;"},[n.createVNode("button",{type:"button",class:"btn btn-secondary mr-3",onClick:l},[n.createTextVNode("取消")]),n.createVNode("button",{type:"button",class:"btn btn-primary",onClick:x},[n.createTextVNode("确定")])])])}}}),Ue={id:{Type:String,default:""},autocomplete:{Type:String,default:"off"},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},editable:{Type:Boolean,default:!0},enableClear:{Type:Boolean,default:!0},enableTitle:{Type:Boolean,default:!0},enableViewPassword:{Type:Boolean,default:!0},forcePlaceholder:{Type:Boolean,default:!1},groupText:{Type:String,default:""},showType:{Type:String,default:"text"},type:{Type:String,default:"text"},max:{type:[Number,String]},min:{type:[Number,String]},maxLength:{Type:Number||void 0,default:void 0},minLength:{Type:Number||void 0,default:void 0},modelValue:{Type:String||Boolean,default:""},showBorder:{Type:Boolean,default:!0},step:{Type:Number,default:1},placeholder:{Type:String,default:""},precision:{Type:Number,default:0},readonly:{Type:Boolean,default:!1},showButtonWhenDisabled:{Type:Boolean,default:!1},tabIndex:{Type:Number,default:0},textAlign:{Type:String,default:"left"},useExtendInfo:{Type:Boolean,default:!1},extendInfo:{Type:String,default:""},value:{Type:String,default:""},autoHeight:{type:Boolean,default:!1},autofocus:{type:Boolean,default:!1},rows:{type:Number,default:2},showCount:{type:Boolean,default:!1},showZero:{type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},updateOn:{type:String,default:"blur"},formatValidation:{type:Object,default:{}},keyboard:{type:Boolean,default:!0},expandable:{type:Boolean,default:!1},expandMode:{type:String,default:"text"},expandContent:{type:String,default:""},expandDisabled:{type:Boolean,default:!1}};function Ye(e,t){const o=n.ref(e.groupText),a=n.computed(()=>e.showButtonWhenDisabled&&(e.readonly||e.disabled)),r=n.computed(()=>e.type==="password"||e.showType==="password"||e.enableClear||!!e.groupText||a.value);return{appendedButtonClass:n.computed(()=>({"input-group-append":!0,"append-force-show":a.value})),appendedContent:o,shouldShowAppendedButton:r}}function Ze(e,t,o,a){const{appendedContent:r}=a,m=n.ref(e.enableViewPassword),l=n.computed(()=>e.type==="password"||e.showType==="password"),x='<span class="f-icon f-icon-eye" style="color: rgb(56, 143, 255);"></span>',T='<span class="f-icon f-icon-eye"></span>',d=n.ref(!1);n.watch(()=>[e.readonly,e.disabled],([f,y])=>{l.value&&(o.value=f||y?"password":o.value,r.value=e.readonly||e.disabled?"":m.value?T:"")});function g(){return d.value=!d.value,o.value=d.value?"text":"password",r.value=d.value?x:T,!1}function s(){o.value=l.value?"password":o.value,l.value&&(r.value=e.readonly||e.disabled?"":m.value?T:"")}return s(),{isPassword:l,onClickAppendedButton:g}}function Je(e,t){const o=R.useNumber(e,t),a=R.useFormat(e,t,o),r=R.useSpinner(e,t,a,o),m=R.useTextBox(e,t,a,o,r),l=R.getSpinnerRender(e,t,r),{displayValue:x,modelValue:T,getRealValue:d}=o,g=R.getNumberTextBoxRender(e,t,m),{format:s}=a,{isFocus:f}=m,y=n.computed(()=>!e.disabled&&!e.readonly);return n.onMounted(()=>{const i=d(e.modelValue);x.value=s(i)}),n.watch(()=>[e.value],([i])=>{const u=d(i);T.value=u,x.value=s(u)}),n.watch(()=>[e.modelValue],([i])=>{i!==T.value&&(T.value=i,!f.value&&(x.value=s(d(i))))}),n.watch(()=>[e.precision,e.useThousands,e.prefix,e.suffix,e.showZero],()=>{x.value=s(T.value)}),()=>n.createVNode("div",{class:"input-group flex-row f-cmp-number-spinner",style:"border:none;"},[g(),y.value&&l()])}function Qe(e){return e?A.LocaleService.getRealPropertyValue(e,"请输入","input-group.placeholder"):""}function Xe(e,t,o,a){const r=n.ref(),{inputGroupClass:m,onBlur:l,onFocus:x}=a,{clearButtonClass:T,clearButtonStyle:d}=o,g=n.computed(()=>e.maxLength?e.maxLength:e.modelValue?e.modelValue.length:0),s=w=>{var P,c;w.stopPropagation(),t.emit("update:modelValue",(P=w.target)==null?void 0:P.value),t.emit("valueChange",(c=w.target)==null?void 0:c.value)},f=n.computed(()=>({"form-control":!0,"h-100":e.autoHeight})),y=n.computed(()=>e.enableClear&&!e.readonly&&!e.disabled),i=Qe(e.placeholder),u=n.computed(()=>e.disabled||e.readonly?"":i),p=n.computed(()=>({...d.value,position:"absolute",right:"5px",top:"50%",transform:"translateY(-50%)","background-color":"rgb(199, 207, 221)","border-radius":"100%",width:"16px",height:"16px"})),C=n.computed(()=>{const w={resize:"none","padding-right":"15px"};return e.rows>2?{height:"auto",...w}:w}),b=w=>{w.stopPropagation(),r.value.value="",t.emit("update:modelValue",""),t.emit("valueChange","")};function S(){return n.withDirectives(n.createVNode("textarea",{class:f.value,id:e.id,"onUpdate:modelValue":w=>e.modelValue=w,ref:r,minlength:e.minLength,maxlength:e.maxLength?e.maxLength:null,tabindex:e.tabIndex,disabled:e.disabled,readonly:e.readonly,autocomplete:e.autocomplete,placeholder:u.value,autofocus:e.autofocus,rows:e.rows,onInput:s,onFocus:x,onBlur:l,style:C.value},null),[[n.vModelText,e.modelValue]])}function B(){return e.showCount&&n.createVNode("span",{style:"position: absolute;bottom: 0;right: 5px;z-index:999;font-size:12px"},[`${e.modelValue?e.modelValue.length:0}/${g.value}`])}function V(){return y.value&&n.createVNode("span",{id:"clearIcon",class:T.value,style:p.value,onClick:w=>b(w)},[n.createVNode("i",{class:"f-icon modal_close",style:"font-size:8px;color:#fff"},null)])}return{renderTextarea:S,renderCount:B,renderClear:V}}function Ke(e,t,o,a){const r=n.ref(),m=n.ref(e.autocomplete),l=n.ref(e.enableTitle),{isPassword:x}=o,T=n.ref(e.minLength),d=n.ref(e.maxLength),g=n.ref(e.tabIndex),{disabled:s,displayText:f,inputType:y,onBlur:i,onFocus:u,onInput:p,onClick:C,onKeydown:b,onKeyup:S,onMousedown:B,onMouseup:V,onTextBoxValueChange:w,readonly:P,placeholder:c,textBoxClass:h,textBoxTitle:v}=a;return n.onMounted(()=>{var F,O;e.selectOnCreated&&((F=r.value)==null||F.select()),e.focusOnCreated&&((O=r.value)==null||O.focus({preventScroll:!0}))}),()=>n.createVNode("input",{id:e.id+"_textbox",ref:r,name:"input-group-value",autocomplete:m.value,class:h.value,disabled:s==null?void 0:s.value,maxlength:d.value,minlength:T.value,placeholder:c.value,readonly:P==null?void 0:P.value,tabindex:g.value,title:l.value&&!x.value?v.value:"",type:y.value,value:f==null?void 0:f.value,onBlur:i,onClick:C,onChange:w,onFocus:u,onInput:p,onKeydown:b,onKeyup:S,onMousedown:B,onMouseup:V},null)}function et(e,t){const o=n.ref(e.extendInfo),a=n.computed(()=>e.useExtendInfo&&!!e.extendInfo),r=n.computed(()=>({content:o.value}));n.watch(()=>e.extendInfo,l=>{o.value=l});function m(){t.emit("updateExtendInfo")}return()=>a.value&&n.withDirectives(n.createVNode("span",{class:"input-group-before-tips",onMouseenter:m},[n.createVNode("i",{class:"f-icon f-icon-info-circle"},null),n.createVNode("b",{class:"tips-arrow"},null)]),[[n.resolveDirective("tooltip"),r.value]])}function tt(e,t,o,a,r){const{appendedButtonClass:m,appendedContent:l}=o,x=n.computed(()=>!e.readonly&&!e.disabled),T=n.computed(()=>l.value&&!t.slots.groupTextTemplate),d=n.computed(()=>!!t.slots.groupTextTemplate),{clearButtonClass:g,clearButtonStyle:s,onClearValue:f,shouldShowClearButton:y}=a,i=n.ref(0);n.watch(l,c=>{i.value++});function u(){return n.createVNode("span",{id:"clearIcon",class:g.value,style:s.value,onClick:c=>f(c)},[n.createVNode("i",{class:"f-icon modal_close"},null)])}function p(c){t.emit("iconMouseEnter",c)}function C(c){t.emit("iconMouseLeave",c)}function b(c){x.value&&t.emit("clickHandle",{originalEvent:c}),c.stopPropagation()}const S=e.type==="password"||e.showType==="password"?r.onClickAppendedButton:b;function B(){const c=l.value;if(!c||!(e.showButtonWhenDisabled||!e.disabled&&!e.readonly))return null;const v={class:"input-group-text",onMouseenter:p,onMouseleave:C,onClick:S};if(typeof c=="string")return n.createVNode("span",n.mergeProps(v,{innerHTML:c}),null);if(typeof c=="function"){const F=c();return n.createVNode("span",v,[typeof F=="string"?n.createVNode("span",{innerHTML:F},null):F])}else return n.createVNode("span",v,[c])}function V(){return t.slots.groupTextTemplate&&t.slots.groupTextTemplate()}function w(){return T.value?B():d.value?V():""}n.watch(()=>e.expandDisabled,(c,h)=>{i.value++});const{renderExpandContent:P}=ue.useInputExpand({...e,skipReadonlyCheck:!0},t);return()=>n.createVNode(n.Fragment,null,[n.createVNode("div",{class:m.value,key:"append-button-"+i.value},[y.value&&u(),w()]),P()])}const oe=n.defineComponent({name:"FInputGroup",props:Ue,emits:["clear","change","blur","click","clickHandle","focus","input","keydown","keyup","iconMouseEnter","iconMouseLeave","update:modelValue","update:value","updateExtendInfo","valueChange","mousedownEvent","mouseupEvent","expandClick"],setup(e,t){const o=n.ref(),a=n.ref(e.modelValue),r=n.ref(e.modelValue),m=$.useTextBox(e,t,a,r,o),{inputGroupClass:l,inputType:x,inputGroupStyle:T,changeTextBoxValue:d}=m,g=Ye(e),{shouldShowAppendedButton:s}=g,f=$.useClear(e,t,m),{onMouseEnter:y,onMouseLeave:i}=f,u=Ze(e,t,x,g),p=Je(e,t),{renderTextarea:C,renderCount:b,renderClear:S}=Xe(e,t,f,m),B=Ke(e,t,u,m),V=tt(e,t,g,f,u),w=et(e,t),P=n.computed(()=>x.value==="number"),c=n.computed(()=>x.value==="textarea");n.watch(()=>[e.value],([v])=>{a.value=v,r.value=v}),n.watch(()=>[e.modelValue],([v])=>{a.value=v,r.value=v}),n.onMounted(()=>{e.value&&(a.value=e.value,r.value=e.value)}),t.expose({clear:()=>{d("",!1),r.value=""},setText:v=>{d(v,!1),r.value=v}});const h=()=>n.createVNode("div",{ref:o,id:e.id,class:l.value,style:T.value,onMouseenter:y,onMouseleave:i},[P.value?p():c.value?C():n.createVNode(n.Fragment,null,[w(),B()]),!c.value&&!P.value&&s.value&&V(),c.value&&S(),c.value&&b()]);return()=>h()}});$.withInstall(oe);const nt={showCloseButton:{type:Boolean,default:!0},position:{type:String,default:"top-center"},timeout:{type:Number,default:3e3},theme:{type:String,default:"bootstrap"},left:{type:Number},right:{type:Number},top:{type:Number},bottom:{type:Number},id:{type:String},animate:{type:String,default:"fadeIn"},options:{type:Object},safeHtml:{type:Boolean,default:!0}},ot={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},W=n.defineComponent({name:"Toast",props:ot,emits:["close","click"],setup:(e,t)=>{const o=n.ref(e.animate),a="fadeOut",r=n.computed(()=>e.options),m=n.ref(!1),l=n.computed(()=>r.value.title&&r.value.message),x=n.computed(()=>!r.value.title&&r.value.message),T=n.computed(()=>{const b={animated:m.value,toast:!0,"toast--only-content":!l.value};return b[e.animate]=!1,b[a]=m.value,b["toasty-type-"+r.value.type]=!0,r.value.theme&&(b[r.value.theme]=!0),b}),d=n.computed(()=>{const B=`f-icon-${r.value&&r.value.type?r.value.type.replace("toasty-type-",""):"default"}`,V={"f-icon":!0};return V[B]=!0,V}),g=n.computed(()=>r.value.title||r.value.message),s=n.computed(()=>e.showCloseButton),f=n.computed(()=>!!r.value.buttons||!!t.slots.default),y=n.computed(()=>A.LocaleService.getLocale()==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});function i(b){b.stopPropagation(),b.preventDefault(),m.value=!1,setTimeout(()=>{t.emit("close",r.value)},200)}function u(b,S){}function p(b){return`f-preten-link ${b.customClass?b.customClass:""}`}n.watch(o,()=>{o.value});const C=()=>{var b;return n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"after-toast-msg text-right"},[!t.slots.default&&((b=r.value.buttons)==null?void 0:b.map(S=>n.createVNode("span",{class:p(S),onClick:B=>void 0},[S.text]))),t.slots.default&&t.slots.default()])])};return()=>n.createVNode("div",{class:T.value,style:"min-height:44px"},[s.value&&n.createVNode("button",{title:A.LocaleService.getLocaleValue("messageBox.close"),class:"toast-close f-btn-icon f-bare",onClick:i},[n.createVNode("span",{class:"f-icon modal_close"},null)]),g.value&&n.createVNode("section",{class:"modal-tips"},[!l.value&&n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:d.value},null)]),n.createVNode("div",{class:"modal-tips-content"},[l.value&&n.createVNode(n.Fragment,null,[n.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:r.value.title},null),n.createVNode("p",{class:"toast-msg",innerHTML:r.value.message,style:y.value},null),f.value&&C()]),x.value&&(r.value.buttons?n.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:y.value,innerHTML:r.value.message},null),n.createVNode("div",{class:"after-toast-title text-right ml-auto"},[C()])]):n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:y.value,innerHTML:r.value.message},null))])])])}}),at=["moz","ms","webkit"];function rt(){let e=0;return t=>{const o=new Date().getTime(),a=Math.max(0,16-(o-e)),r=setTimeout(()=>{t(o+a)},a);return e=o+a,r}}function it(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=at.filter(t=>`${t}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:rt()}it(),n.ref("");function lt(){const e=navigator.userAgent||navigator.vendor||window.opera,t=[/iPhone/i,/iPod/i,/Android.*Mobile/i,/webOS/i,/BlackBerry/i,/IEMobile/i,/Opera Mini/i,/Harmony/i],o=[/iPad/i,/Android(?!.*Mobile)/i,/Tablet/i,/PlayBook/i,/Kindle/i,/Silk/i];for(const x of o)if(x.test(e))return!1;for(const x of t)if(x.test(e))return!0;const a="ontouchstart"in window||navigator.maxTouchPoints>0,r=screen.width,m=screen.height,l=Math.min(r,m);return!!(a&&l<=768)}const z=n.defineComponent({name:"Notify",props:nt,emits:["close","empty"],setup(e,t){var u;const o=lt(),r=`farris-notify-${(u=e.options)!=null&&u.type?e.options.type:"info"}}`,m=n.computed(()=>({"farris-notify":!0,[r]:o})),l={left:12,right:12,top:20,bottom:12},x=n.ref(),T=n.ref(e.options),d=n.ref(e.showCloseButton),g=n.computed(()=>e.position||"bottom-right"),s=n.computed(()=>e.timeout!=null?e.timeout:3e3),f=n.computed(()=>{const p=e.bottom?e.bottom:l.bottom,C=e.top?e.top:l.top,b={transition:"all 0.2s ease",left:g.value.indexOf("left")>-1?`${e.left?e.left:l.left}px`:"",right:g.value.indexOf("right")>-1?`${e.right?e.right:l.right}px`:"",top:g.value.indexOf("top")>-1?`${C}px`:"",bottom:g.value.indexOf("bottom")>-1?`${p}px`:""};return g.value.indexOf("center")>-1&&(b.left="50%",b.marginLeft="calc(-24rem / 2)",g.value==="center-center"&&(b.top="50%",b.transform="translate(-50%, -50%)")),b});function y(p){t.emit("close")}s.value&&setTimeout(()=>{y()},s.value),t.expose({closeToast:y,container:x,notifyPosition:g});function i(p,C){y()}return()=>{var p;return o?n.createVNode("div",{class:m.value,ref:x},[(p=e.options)==null?void 0:p.message]):n.createVNode("div",{class:m.value,style:f.value,ref:x},[n.createVNode(W,{options:T.value,showCloseButton:d.value,animate:e.animate,onClose:C=>i(C,T.value)},null)])}}});class st{constructor(){J(this,"notifyRefs",[]);J(this,"globalConfig",n.reactive({}))}escapeAllHtml(t){if(typeof t!="string"||!t)return"";const o=document.createElement("div");return o.textContent=t||"",o.innerHTML.replace(/\\n/g,"<br>").replace(/\\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;").replace(/\\r/g,"")}createNotifyInstance(t){const o=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...t}),m=document.createElement("div");m.style.display="contents";const l=n.createApp({setup(){var d;const x=n.ref();function T(){x.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(r,x),l.unmount()},220)}if(r.position.indexOf("top")>-1){const g=o.getNotifyInstances(r.position),s=g[g.length-1];if(s){const f=s.value.container.getBoundingClientRect();r.top=f.bottom}}return r.safeHtml&&((d=r.options)!=null&&d.message)&&(r.options.message=o.escapeAllHtml(r.options.message)),n.onUnmounted(()=>{document.body.removeChild(m)}),n.onMounted(()=>{o.updateNotifyPositionForCreate(r,x)}),()=>n.createVNode(n.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[n.createVNode(z,n.mergeProps({ref:x},r,{onClose:T}),null)]})}});return l.provide("NotifyService",this),document.body.appendChild(m),l.use(A.LocaleService.i18n),l.mount(m),l}getNotifyInstances(t){return this.notifyRefs.filter(o=>o.value.notifyPosition===t)}updateNotifyPositionForCreate(t,o){if(this.notifyRefs&&this.notifyRefs.length){const a=window.innerHeight;t.position.indexOf("bottom")>-1&&this.getNotifyInstances(t.position).forEach(r=>{const m=r.value.container.getBoundingClientRect();r.value.container.style.bottom=m.height+a-m.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(t,o){const a=this.notifyRefs.indexOf(o);if(t.position.indexOf("top")>-1){const r=this.getNotifyInstances(t.position),m=r.indexOf(o);r.slice(m+1).forEach(l=>{l.value.container.style.top=l.value.container.offsetTop-l.value.container.offsetHeight+"px"})}a>-1&&this.notifyRefs.splice(a,1)}show(t){return this.createNotifyInstance(t)}buildNotifyProps(t,o){let a="",r="",m,l,x;typeof o=="string"?a=o:o&&(a=o.message||"",r=o.title||"",l=o.position||null,x=o.showCloseButton!=null?o.showCloseButton:null,m=o.timeout!=null?o.timeout:null);const d={options:{type:t,message:a,title:r}};return l!=null&&(d.position=l),x!=null&&(d.showCloseButton=x),m!=null&&(d.timeout=m),d}info(t){const o=this.buildNotifyProps("info",t);return this.show(o)}success(t){const o=this.buildNotifyProps("success",t);return this.show(o)}warning(t){const o=this.buildNotifyProps("warning",t);return this.show(o)}error(t){const o=this.buildNotifyProps("error",t);return this.show(o)}close(t){t&&t.unmount()}closeAll(){this.notifyRefs.forEach(t=>{t==null||t.value.closeToast()}),this.notifyRefs.length=0}}const ae=Symbol("NOTIFY_SERVICE_TOKEN");z.install=e=>{e.component(z.name,z),e.component(W.name,W);const t=new st;e.provide(ae,t),e.provide("FNotifyService",t)};const j=n.defineComponent({name:"FLanguageTextbox",props:q,emits:["update:modelValue","expandClick"],setup(e,t){const o=A.LocaleService.getLocale(),{disabled:a,readonly:r,editable:m,modelValue:l}=n.toRefs(e),x=n.computed(()=>{var c;return(c=l.value)==null?void 0:c[o]}),T=n.ref();n.inject("FMessageBoxService");const d=n.inject(ae);n.watch(()=>e.modelValue,c=>{l.value=c});const g=c=>{if((c==null?void 0:c.length)<=1)return;let h=-1;const v=c.find((F,O)=>{const k=F.code===o;return k&&(h=O),k});if(v){const F=Object.assign({},v);c.splice(h,1),c.unshift(F)}return c},s=n.ref();n.watch(()=>e.languages,c=>{s.value=g(c)||[]});function f(c){l.value=l.value||{},l.value[o]!==c&&(l.value[o]=c,t.emit("update:modelValue",l.value))}const y=n.computed(()=>{var h;const c=(h=T.value)==null?void 0:h.popoverRef;return c&&s.value.length>1?c.shown:!1});n.onMounted(()=>{s.value=g(e.languages)||[]});const i=c=>{l.value=c,t.emit("update:modelValue",l.value)},u=()=>{var c;return!(((c=s.value)==null?void 0:c.length)<=1)},p=()=>{l.value=l.value||{},l.value[o]&&(l.value[o]="",t.emit("update:modelValue",l.value))};function C(c){l.value=l.value||{};const h=c.target.value;l.value[o]!==h&&(l.value[o]=h,t.emit("update:modelValue",l.value))}function b(){return n.createVNode(oe,{disable:a.value,readonly:r.value,modelValue:x.value,"onUpdate:modelValue":c=>x.value=c,onInput:C,onClear:p},null)}function S(){T.value&&T.value.hidePopup()}function B(c){i(c),S()}function V(c){B(c)}function w(c){if(e.beforeSubmit){Promise.resolve(e.beforeSubmit(c)).then(h=>{if(typeof h=="boolean"&&h){B(c);return}if(typeof h=="object"){if(h.isValid){B(c);return}if(h.message){const v=h.messageType||"warning";d[v]({message:h.message,position:"top-center"})}return}});return}else B(c)}const P=()=>{t.emit("expandClick")};return()=>$.isMobilePhone()?b():n.createVNode(le,{ref:T,id:e.id,forcePlaceholder:!1,disable:a.value,readonly:r.value,editable:m.value,buttonContent:e.dropDownIcon,placeholder:e.placeholder,enableClear:e.enableClear,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:!1,inputType:"text",popupOnClick:!0,modelValue:x.value,"onUpdate:modelValue":c=>x.value=c,onChange:f,placement:"auto",popupMinWidth:365,maxLength:e.maxLength,beforeOpen:u,onClear:p,expandable:e.expandable,expandMode:e.expandMode,expandContent:e.expandContent,expandDisabled:e.expandDisabled,showButtonWhenDisabled:e.allowShowLanguage,onExpandClick:P},{default:()=>[y.value&&n.createVNode(We,{id:e.id,languages:s.value,modelValue:l.value,maxLength:e.maxLength,readonly:r.value||a.value,"onUpdate:modelValue":i,needConfirm:e.needConfirm,onConfirm:w,onCancel:V},null)]})}});j.install=e=>{e.component(j.name,j)},j.register=(e,t,o,a,r)=>{e["language-textbox"]=j,t["language-textbox"]=G(r)},j.registerDesigner=(e,t,o,a)=>{e["language-textbox"]=fe,t["language-textbox"]=G(a)},N.FLanguageTextbox=j,N.default=j,N.languageTextBoxProps=q,N.propsResolver=Ge,N.propsResolverGenerator=G,Object.defineProperties(N,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});