UNPKG

@farris/ui-vue

Version:

Farris Vue, a Farris Design based Vue3 component library.

2 lines (1 loc) 25.4 kB
(function(E,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("vue"),require("lodash-es"),require("../common/index.umd.js"),require("../dynamic-resolver/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../common/index.umd.js","../dynamic-resolver/index.umd.js"],c):(E=typeof globalThis<"u"?globalThis:E||self,c(E.step={},E.Vue,E.LodashES,E.common,E.dynamicResolver))})(this,function(E,c,_,U,oe){"use strict";function J(e,t){let r;function a(s){const{properties:l,title:y,ignore:o}=s,i=o&&Array.isArray(o),f=Object.keys(l).reduce((h,F)=>((!i||!o.find(k=>k===F))&&(h[F]=l[F].type==="object"&&l[F].properties?a(l[F]):_.cloneDeep(l[F].default)),h),{});if(y&&(!i||!o.find(h=>h==="id"))){const h=y.toLowerCase().replace(/-/g,"_");f.id=`${h}_${Math.random().toString().slice(2,6)}`}return f}function N(s){const{properties:l,title:y,required:o}=s;if(o&&Array.isArray(o)){const i=o.reduce((f,h)=>(f[h]=l[h].type==="object"&&l[h].properties?a(l[h]):_.cloneDeep(l[h].default),f),{});if(y&&o.find(f=>f==="id")){const f=y.toLowerCase().replace(/-/g,"_");i.id=`${f}_${Math.random().toString().slice(2,6)}`}return i}return{type:y}}function D(s,l={},y){const o=e[s];if(o){let i=N(o);const f=t[s];return i=f?f({getSchemaByType:D},i,l,y):i,r!=null&&r.appendIdentifyForNewControl&&r.appendIdentifyForNewControl(i),i}return null}function g(s,l){const y=a(l);return Object.keys(y).reduce((o,i)=>(Object.prototype.hasOwnProperty.call(s,i)&&(o[i]&&_.isPlainObject(o[i])&&_.isPlainObject(s[i]||!s[i])?Object.assign(o[i],s[i]||{}):o[i]=s[i]),o),y),y}function w(s,l){return Object.keys(s).filter(o=>s[o]!=null).reduce((o,i)=>{if(l.has(i)){const f=l.get(i);if(typeof f=="string")o[f]=s[i];else{const h=f(i,s[i],s);Object.assign(o,h)}}else o[i]=s[i];return o},{})}function B(s,l,y=new Map){const o=g(s,l);return w(o,y)}function v(s){var y;const l=s.type;if(l){const o=e[l];if(!o)return s;const i=g(s,o),f=((y=s.editor)==null?void 0:y.type)||"";if(f){const h=e[f],F=g(s.editor,h);i.editor=F}return i}return s}function T(s){r=s}return{getSchemaByType:D,resolveSchemaWithDefaultValue:v,resolveSchemaToProps:B,mappingSchemaToProps:w,setDesignerContext:T}}const Q={},X={},{getSchemaByType:We,resolveSchemaWithDefaultValue:ie,resolveSchemaToProps:se,mappingSchemaToProps:ce,setDesignerContext:Ge}=J(Q,X);function ae(e={}){function t(v,T,s,l){if(typeof s=="number")return l[v].length===s;if(typeof s=="object"){const y=Object.keys(s)[0],o=s[y];if(y==="not")return Number(l[v].length)!==Number(o);if(y==="moreThan")return Number(l[v].length)>=Number(o);if(y==="lessThan")return Number(l[v].length)<=Number(o)}return!1}function r(v,T,s,l){return l[v]&&l[v].propertyValue&&String(l[v].propertyValue.value)===String(s)}const a=new Map([["length",t],["getProperty",r]]);Object.keys(e).reduce((v,T)=>(v.set(T,e[T]),v),a);function N(v,T){const s=v;return typeof T=="number"?[{target:s,operator:"length",param:null,value:Number(T)}]:typeof T=="boolean"?[{target:s,operator:"getProperty",param:v,value:!!T}]:typeof T=="object"?Object.keys(T).map(l=>{if(l==="length")return{target:s,operator:"length",param:null,value:T[l]};const y=l,o=T[l];return{target:s,operator:"getProperty",param:y,value:o}}):[]}function D(v){return Object.keys(v).reduce((s,l)=>{const y=N(l,v[l]);return s.push(...y),s},[])}function g(v,T){if(a.has(v.operator)){const s=a.get(v.operator);return s&&s(v.target,v.param,v.value,T)||!1}return!1}function w(v,T){return D(v).reduce((y,o)=>y&&g(o,T),!0)}function B(v,T){const s=Object.keys(v),l=s.includes("allOf"),y=s.includes("anyOf"),o=l||y,h=(o?v[o?l?"allOf":"anyOf":"allOf"]:[v]).map(k=>w(k,T));return l?!h.includes(!1):h.includes(!0)}return{parseValueSchema:B}}const le={convertTo:(e,t,r,a)=>{e.appearance||(e.appearance={}),e.appearance[t]=r},convertFrom:(e,t,r)=>e.appearance?e.appearance[t]:e[t]},ue={convertFrom:(e,t,r)=>e.buttons&&e.buttons.length?`共 ${e.buttons.length} 项`:"无"},fe={convertTo:(e,t,r,a)=>{e.editor&&(e.editor[t]=r)},convertFrom:(e,t,r)=>e.editor&&Object.prototype.hasOwnProperty.call(e.editor,t)?e.editor[t]:e[t]},Y={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:"多语输入框"}},pe={convertFrom:(e,t,r)=>{var N;const a=e.editor&&e.editor[t]?e.editor[t]:e[t];return((N=Y[a])==null?void 0:N.name)||a}},me={convertTo:(e,t,r,a)=>{e[t]=e[t]},convertFrom:(e,t,r)=>e.editor?r.getRealEditorType(e.editor.type):""},de={convertTo:(e,t,r,a)=>{(e.type==="data-grid-column"||e.type==="tree-grid-column")&&(e.formatter?e.formatter[t]=r:e.formatter={[t]:r})},convertFrom:(e,t,r)=>{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"}},ve={convertTo:(e,t,r,a)=>{e.command?e.command[t]=r:e.command={[t]:r},t==="enable"&&r&&(e.command.commands||(e.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(e,t,r)=>e.command&&t==="enable"?e.command.enable:""},be={convertTo:(e,t,r,a)=>{e.column?e.column[t]=r:e.column={[t]:r},t==="fitColumns"&&r&&(e.column.fitMode||(e.column.fitMode="average"))},convertFrom:(e,t,r)=>{if(e.column){if(t==="fitColumns")return e.column.fitColumns;if(t==="fitMode")return e.column.fitMode}return""}},ge={convertTo:(e,t,r,a)=>{e.summary?e.summary[t]=r:e.summary={[t]:r},t==="enable"&&r&&(e.summary?e.summary.groupFields||(e.summary.groupFields=[]):e.summary={enable:r,groupFields:[]})},convertFrom:(e,t,r)=>e.summary&&t==="enable"?e.summary.enable:e.type==="data-grid-column"?e.enableSummary===void 0?!1:e.enableSummary:""},ye={convertTo:(e,t,r,a)=>{e.group?e.group[t]=r:e.group={[t]:r},t==="enable"&&r&&(e.group?e.group.groupFields||(e.group.groupFields=[]):e.group={enable:r,groupFields:[],showSummary:!1})},convertFrom:(e,t,r)=>{if(e.group){if(t==="enable")return e.group.enable;if(t==="showSummary")return e.group.showSummary}}},he={convertFrom:(e,t)=>e.binding?e.binding.path:"",convertTo:(e,t,r)=>{if(r&&r.length>0){const a=r[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}}},Se={convertTo:(e,t,r,a)=>{e.pagination||(e.pagination={}),e.pagination[t]=r},convertFrom:(e,t,r)=>e.pagination?e.pagination[t]:e[t]},Te={convertTo:(e,t,r,a)=>{e.rowNumber||(e.rowNumber={}),e.rowNumber[t]=r},convertFrom:(e,t,r)=>e.rowNumber?e.rowNumber[t]:e[t]},Oe={convertTo:(e,t,r,a)=>{e.selection||(e.selection={}),e.selection[t]=r},convertFrom:(e,t,r)=>e.selection?e.selection[t]:e[t]},Fe={convertFrom:(e,t,r)=>e[t]&&e[t].length?`共 ${e[t].length} 项`:""},je={convertFrom:(e,t)=>e[t]||"",convertTo:(e,t,r)=>{e[t]=r}},Me={convertTo:(e,t,r,a)=>{e.size||(e.size={}),e.size[t]=r},convertFrom:(e,t,r)=>e.size?e.size[t]:e[t]},Ne={convertFrom:(e,t,r)=>{var a,N;return(a=e.formatter)!=null&&a.data&&t==="formatterEnumData"&&!e.formatterEnumData?(N=e.formatter)==null?void 0:N.data:e.formatterEnumData}},Pe={convertTo:(e,t,r,a)=>{e.sort||(e.sort={}),e.sort[t]=r},convertFrom:(e,t,r)=>{var a,N;if(t==="mode")return((a=e.sort)==null?void 0:a.mode)||"client";if(t==="multiSort")return!!((N=e.sort)!=null&&N.multiSort)}},ke={convertTo:(e,t,r,a)=>{e.filter||(e.filter={}),e.filter[t]=r},convertFrom:(e,t,r)=>{var a;if(t==="mode")return((a=e.filter)==null?void 0:a.mode)||"client"}},De={convertTo:(e,t,r,a)=>{e.rowOption?e.rowOption[t]=r:e.rowOption={[t]:r}},convertFrom:(e,t,r)=>{if(e.rowOption){if(t==="customRowStyle")return e.rowOption.customRowStyle;if(t==="customCellStyle")return e.rowOption.customCellStyle}return""}};function Z(e,t,r){const a=new Map([["/converter/appearance.converter",le],["/converter/buttons.converter",ue],["/converter/property-editor.converter",fe],["/converter/items-count.converter",Fe],["/converter/type.converter",pe],["/converter/change-editor.converter",me],["/converter/change-formatter.converter",de],["/converter/column-command.converter",ve],["/converter/column-option.converter",be],["/converter/summary.converter",ge],["/converter/group.converter",ye],["/converter/form-group-label.converter",je],["/converter/field-selector.converter",he],["/converter/pagination.converter",Se],["/converter/row-number.converter",Te],["/converter/grid-selection.converter",Oe],["/converter/size.converter",Me],["/converter/change-formatter-enum.converter",Ne],["/converter/grid-sort.converter",Pe],["/converter/grid-filter.converter",ke],["/converter/row-option.converter",De]]),N=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}]]),D=ae();function g(o,i){return()=>D.parseValueSchema(o,i)}function w(o,i,f){return o.includes("visible")&&i.visible!==void 0?typeof i.visible=="boolean"?()=>!!i.visible:i.visible===void 0?!0:g(i.visible,f):()=>!0}function B(o,i,f){return o.includes("readonly")&&i.readonly!==void 0?typeof i.readonly=="boolean"?()=>!!i.readonly:g(i.readonly,f):()=>!1}function v(o,i){const f=o.$converter||i;return typeof f=="string"&&f&&a.has(f)?a.get(f)||null:f||null}function T(o,i,f,h,F,k="",d=""){return Object.keys(o).map(b=>{const R=c.ref(1),V=b,n=o[b],m=Object.keys(n),j=n.title,u=n.type,S=N.get(u)||{type:"input-group",enableClear:!1},O=n.editor?Object.assign({},S,n.editor):Object.assign({},S),M=w(m,n,i),P=B(m,n,i);O.readonly=O.readonly===void 0?P():O.readonly;const C=n.type==="cascade"?T(n.properties,i,f,h,F,k,d):[],L=!0;let $=v(n,d);const A=c.computed({get(){if(R.value){if(["class","style"].find(_e=>_e===V)&&!$&&($=a.get("/converter/appearance.converter")||null),$&&$.convertFrom)return $.convertFrom(f,b,F,k);const z=f[b];return Object.prototype.hasOwnProperty.call(n,"defaultValue")&&(z===void 0||typeof z=="string"&&z==="")?n.type==="boolean"?n.defaultValue:n.defaultValue||"":z}return null},set(z){R.value+=1,$&&$.convertTo?($.convertTo(h,b,z,F,k),$.convertTo(f,b,z,F,k)):(h[b]=z,f[b]=z)}}),{refreshPanelAfterChanged:H,description:ze,isExpand:Le,parentPropertyID:He}=n,ne={propertyID:V,propertyName:j,propertyType:u,propertyValue:A,editor:O,visible:M,readonly:P,cascadeConfig:C,hideCascadeTitle:L,refreshPanelAfterChanged:H,description:ze,isExpand:Le,parentPropertyID:He};return i[V]=ne,ne})}function s(o,i,f={}){const h={},F=e[o];return F&&F.categories?Object.keys(F.categories).map(d=>{const p=F.categories[d],b=p==null?void 0:p.title,R=T(p.properties||{},h,{},f,i);return{categoryId:d,categoryName:b,properties:R}}):[]}function l(o,i,f,h,F=""){const k=i.$ref.schema,d=i.$ref.converter,p=f[k],b=p.type,R=r(p),V={},n=e[b];if(n&&n.categories){const m=n.categories[o],j=m==null?void 0:m.title;d&&Object.keys(m.properties).forEach(O=>{m.properties[O].$converter=d});const u=(m==null?void 0:m.properties)||{},S=T(u,V,R,p,h,F);return{categoryId:o,categoryName:j,properties:S}}return{categoryId:o,categoryName:"",properties:[]}}function y(o,i,f,h,F){const k=o.type,d=r(o),p={};let b=F||e[k];if(b&&Object.keys(b).length===0&&f&&f.getPropConfig&&(b=f.getPropConfig(h)),b&&b.categories){const R=[];return Object.keys(b.categories).map(V=>{const n=b.categories[V];if(n.$ref){R.push(l(V,n,o,i,h));return}const m=n==null?void 0:n.title,j=n==null?void 0:n.tabId,u=n==null?void 0:n.tabName,S=n==null?void 0:n.hide,O=n==null?void 0:n.hideTitle,M=T(n.properties||{},p,d,o,i,h,n.$converter),{setPropertyRelates:P}=n,C=n==null?void 0:n.parentPropertyID;R.push({categoryId:V,categoryName:m,tabId:j,tabName:u,hide:S,properties:M,hideTitle:O,setPropertyRelates:P,parentPropertyID:C})}),R}return[]}return{getPropertyConfigBySchema:y,getPropertyConfigByType:s,propertyConverterMap:a}}const x={},K={};Z(x,K,ie);const I={},ee={},{getSchemaByType:Ue,resolveSchemaWithDefaultValue:we,resolveSchemaToProps:Je,mappingSchemaToProps:Qe,setDesignerContext:Xe}=J(I,ee),te={},re={};Z(te,re,we);function $e(e,t,r=new Map,a=(g,w,B,v)=>w,N={},D=g=>g){return Q[t.title]=t,X[t.title]=a,x[t.title]=N,K[t.title]=D,I[t.title]=t,ee[t.title]=a,te[t.title]=N,re[t.title]=D,(g={},w=!0)=>{if(!w)return ce(g,r);const B=se(g,t,r),v=Object.keys(e).reduce((T,s)=>(T[s]=e[s].default,T),{});return Object.assign(v,B)}}function Ee(e,t){return{customClass:t.class,customStyle:t.style}}const Be=new Map([["appearance",Ee]]);function Re(e,t,r){return t}const Ve={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/step.schema.json",title:"step",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for step",type:"string"},type:{description:"The type string of step",type:"string",default:"step"},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"]},Ce={title:"step",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:[]}}}}}},W={direction:{type:String,default:"horizontal"},fill:{type:Boolean,default:!1},height:{type:Number,default:0},clickable:{type:Boolean,default:!0},steps:{type:Array,default:[{id:"1",title:"审批中(示例)",description:"正在审批"},{id:"2",title:"复核中(示例)",description:"等待复核"}]},activeIndex:{type:Number,default:0},onClick:{type:Function,default:()=>{}}},G=$e(W,Ve,Be,Re,Ce),q=c.defineComponent({name:"FStep",props:W,emits:["click"],setup(e,t){const r=c.ref(e.direction),a=c.ref(e.fill),N=c.ref(e.height),D=c.ref(e.steps),g=c.ref(e.activeIndex),w=c.computed(()=>({"f-progress-step-list":r.value==="horizontal","f-progress-step-list-block":r.value==="vertical","f-progress-step-horizontal-fill":r.value==="horizontal"&&a.value,"f-progress-step-vertical-fill":r.value==="vertical"&&a.value})),B=c.computed(()=>({height:r.value==="vertical"?`${N.value}px`:""}));function v(d,p){const b={step:!0,active:p===g.value,clickable:e.clickable,current:p===g.value,finish:p<g.value};return d.status&&(b[d.status]=!0),U.getCustomClass(b,d.class||"")}function T(d,p){if(!e.clickable)return;const b={step:d,stepIndex:p};t.emit("click",b)}function s(d,p){const b={"f-progressstep-row":!0,"step-active":p===g.value,"step-current":p===g.value,"step-finish":p<g.value};return d.status&&(b["step-"+d.status]=!0),b}function l(d,p){const b={"step-icon":!0,"step-success":p,"f-icon":p,"f-icon-check":p};return U.getCustomClass(b,d.icon||"")}function y(d,p){const b=[];return d.icon?b.push(c.createVNode("span",{class:l(d,!1)},null)):p>=g.value?b.push(c.createVNode("span",{class:"step-icon"},[p+1])):b.push(c.createVNode("span",{class:l(d,!0)},null)),b}function o(d,p){return{"step-name":!0,"step-name-success":p<g.value}}function i(d,p){return c.createVNode("div",{class:"f-progress-step-title"},[c.createVNode("p",{class:o(d,p)},[d.title])])}function f(d,p){return{"f-progress-step-line":!0,"f-progress-step-line-success":p===g.value}}function h(d,p){return p!==D.value.length-1}const F=c.computed(()=>({triangle:!0,"":r.value==="vertical"}));function k(){return D.value.map((d,p)=>c.createVNode("li",{class:v(d,p),onClick:b=>T(d,p)},[c.createVNode("div",{class:s(d,p)},[c.createVNode("div",{class:"f-progress-step-content"},[y(d,p),i(d,p)]),h(d,p)&&c.createVNode("div",{class:f(d,p)},[c.createVNode("span",{class:F.value},null)])])]))}return c.watch(()=>e.activeIndex,()=>{e.activeIndex>-1&&e.activeIndex<=D.value.length&&(g.value=e.activeIndex,k())}),()=>c.createVNode("div",{class:"f-progress-step"},[c.createVNode("ul",{class:w.value,style:B.value},[k()])])}});function qe(e,t,r){var j;const a="",N="",D=c.ref();let g;function w(){return(t==null?void 0:t.schema.componentType)!=="frame"}function B(){return!1}function v(){return(t==null?void 0:t.schema.componentType)!=="frame"}function T(){return(t==null?void 0:t.schema.componentType)==="frame"}function s(u){if(!u||!u.value)return null;if(u.value.schema&&u.value.schema.type==="component")return u.value;const S=c.ref(u==null?void 0:u.value.parent),O=s(S);return O||null}function l(u=t){var P;const{componentInstance:S,designerItemElementRef:O}=u;if(!S||!S.value)return null;const{getCustomButtons:M}=S.value;return S.value.canMove||M&&((P=M())!=null&&P.length)?O:l(u.parent)}function y(u){return!!r}function o(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function i(){}function f(u,S){var O;!u||!S||(O=t==null?void 0:t.setupContext)==null||O.emit("dragEnd")}function h(u,S){const{componentType:O}=u;let M=oe.getSchemaByTypeForDesigner(O,u,S);const P=O.toLowerCase().replace(/-/g,"_");return M&&!M.id&&M.type===O&&(M.id=`${P}_${Math.random().toString().slice(2,6)}`),M}function F(u){}function k(...u){}function d(u){if(!u)return;const S=t==null?void 0:t.schema,{formSchemaUtils:O}=u;if(S&&O.getExpressions().length){const M=O.getExpressions().findIndex(P=>P.target===S.id);M>-1&&O.getExpressions().splice(M,1)}}function p(u){if(!u||!(t!=null&&t.schema))return;const S=t.schema,{formSchemaUtils:O}=u;O.removeCommunicationInComponent(S)}function b(u){d(u),p(u),t!=null&&t.schema.contents&&t.schema.contents.map(S=>{let O=S.id;S.type==="component-ref"&&(O=S.component);const M=e.value.querySelectorAll(`#${O}-design-item`);M!=null&&M.length&&Array.from(M).map(P=>{var C;(C=P==null?void 0:P.componentInstance)!=null&&C.value.onRemoveComponent&&P.componentInstance.value.onRemoveComponent(u)})})}function R(){}function V(u){var O,M;if(!((O=t==null?void 0:t.schema)!=null&&O.id))return;!g&&u&&(g=u.formSchemaUtils);let S="";{const{text:P,title:C,label:L,mainTitle:$,name:A,type:H}=t.schema;S=P||C||L||$||A||((M=Y[H])==null?void 0:M.name)}S&&g.getControlBasicInfoMap().set(t.schema.id,{componentTitle:S,parentPathName:S})}function n(u){var P;const{changeObject:S}=u,{propertyID:O,propertyValue:M}=S;if(["text","title","label","name","mainTitle"].includes((P=u==null?void 0:u.changeObject)==null?void 0:P.propertyID)&&O&&M&&(V(),g)){const C=g.getControlBasicInfoMap(),L=C.keys().toArray().filter($=>{var A,H;return((A=C.get($))==null?void 0:A.reliedComponentId)===((H=t==null?void 0:t.schema)==null?void 0:H.id)});L!=null&&L.length&&L.forEach($=>{const A=C.get($).parentPathName.split(" > ");A[0]=M,C.get($).parentPathName=A.join(" > ")})}}function m(u){n(u)}return D.value={canMove:w(),canSelectParent:B(),canDelete:v(),canNested:!T(),contents:t==null?void 0:t.schema.contents,elementRef:e,parent:(j=t==null?void 0:t.parent)==null?void 0:j.componentInstance,schema:t==null?void 0:t.schema,styles:a,designerClass:N,canAccepts:y,getBelongedComponentInstance:s,getDraggableDesignItemElement:l,getDraggingDisplayText:o,getPropConfig:k,getDragScopeElement:i,onAcceptMovedChildElement:f,onChildElementMovedOut:F,addNewChildComponentSchema:h,triggerBelongedComponentToMoveWhenMoved:c.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:c.ref(!1),onRemoveComponent:b,getCustomButtons:R,onPropertyChanged:m,setComponentBasicInfoMap:V,updateContextSchema:t==null?void 0:t.updateContextSchema},D}const Ae=c.defineComponent({name:"FStepDesign",props:W,emits:[],setup(e,t){const r=c.ref(e.direction),a=c.ref(e.fill),N=c.ref(e.height),D=c.ref(e.steps),g=c.ref(0),w=c.ref(e.clickable),B=c.ref(0),v=c.ref(),T=c.inject("design-item-context"),s=qe(v,T);c.onMounted(()=>{v.value.componentInstance=s}),t.expose(s.value);const l=c.computed(()=>({"f-progress-step-list":r.value==="horizontal","f-progress-step-list-block":r.value==="vertical","f-progress-step-horizontal-fill":r.value==="horizontal"&&a.value,"f-progress-step-vertical-fill":r.value==="vertical"&&a.value})),y=c.computed(()=>({height:r.value==="vertical"?`${N.value}px`:""}));function o(n,m){const j={step:!0,active:m===g.value,clickable:w.value,"click-disable":n.disable,current:m===g.value};return m<g.value&&(j.finish=!0),n.status&&(j[n.status]=!0),n.hasOwnProperty("class")&&n.class.split(" ").reduce((u,S)=>(u[S]=!0,u),j),j}function i(n,m){}function f(n,m){const j={"f-progressstep-row":!0,"step-active":m===g.value,"step-current":m===g.value};return m<g.value&&(j["step-finish"]=!0),n.status&&(j["step-"+n.status]=!0),j}function h(n,m){const j={"step-icon":!0,"step-success":m,"k-icon":m,"k-i-check":m};return n.hasOwnProperty("icon")&&n.class.split(" ").reduce((u,S)=>(u[S]=!0,u),j),j}function F(n,m){const j=[];return n.icon?j.push(c.createVNode("span",{class:h(n,!1)},null)):m>=g.value||m===B.value?j.push(c.createVNode("span",{class:"step-icon"},[m+1])):j.push(c.createVNode("span",{class:h(n,!0)},null)),j}function k(n,m){return{"step-name":!0,"step-name-success":m<g.value}}function d(n,m){return c.createVNode("div",{class:"f-progress-step-title"},[c.createVNode("p",{class:k(n,m)},[n.title])])}function p(n,m){return{"f-progress-step-line":!0,"f-progress-step-line-success":m===g.value}}function b(n,m){return m!==D.value.length-1}const R=c.computed(()=>({triangle:!0,"":r.value==="vertical"}));function V(){return D.value.map((n,m)=>c.createVNode("li",{class:o(n,m),onClick:j=>void 0},[c.createVNode("div",{class:f(n,m)},[c.createVNode("div",{class:"f-progress-step-content"},[F(n,m),d(n,m)]),b(n,m)&&c.createVNode("div",{class:p(n,m)},[c.createVNode("span",{class:R.value},null)])])]))}return()=>c.createVNode("div",{ref:v,class:"f-progress-step"},[c.createVNode("ul",{class:l.value,style:y.value},[V()])])}});q.install=e=>{e.component(q.name,q)},q.register=(e,t,r,a)=>{e.step=q,t.step=G},q.registerDesigner=(e,t,r)=>{e.step=Ae,t.step=G},E.FStep=q,E.Step=q,E.default=q,E.propsResolver=G,E.stepProps=W,Object.defineProperties(E,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});