UNPKG

vxe-pc-ui

Version:
1 lines 2.97 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.FormDesignWidgetInfo=void 0,exports.configToWidget=configToWidget,exports.getWidgetConfig=void 0,exports.getWidgetConfigCustomGroup=getWidgetConfigCustomGroup,exports.getWidgetConfigTitle=getWidgetConfigTitle;var _vue=require("vue"),_core=require("@vxe-ui/core"),_util=require("./util"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const refWidgetReactConfigMaps=(0,_vue.ref)({}),getWidgetConfig=e=>{return refWidgetReactConfigMaps.value[e]||{}};function getWidgetConfigTitle(e,i){var t=getWidgetConfig(e);return t?(t=t.title,i={name:e,$formDesign:i},_xeUtils.default.toValueString(_xeUtils.default.isFunction(t)?t(i):t)):e}function getWidgetConfigCustomGroup(e,i){var t=getWidgetConfig(e);return t?(t=t.customGroup,i={name:e,$formDesign:i},_xeUtils.default.toValueString(_xeUtils.default.isFunction(t)?t(i):t)):e}exports.getWidgetConfig=getWidgetConfig;const validWidgetUniqueField=(i,e)=>!_xeUtils.default.findTree(e,e=>e.field===i,{children:"children"});class FormDesignWidgetInfo{constructor(e,i,t){Object.defineProperty(this,"id",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"field",{enumerable:!0,configurable:!0,writable:!0,value:""}),Object.defineProperty(this,"title",{enumerable:!0,configurable:!0,writable:!0,value:""}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:""}),Object.defineProperty(this,"required",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"hidden",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"children",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"model",{enumerable:!0,configurable:!0,writable:!0,value:{update:!1,value:""}});let r="";i&&(g=_core.renderer.get(i)||{})&&(n=refWidgetReactConfigMaps.value,g=g.createFormDesignWidgetConfig)&&(l=(o=g(g={name:i,$formDesign:e})||{}).title,u=o.field,this.title=_xeUtils.default.toValueString(_xeUtils.default.isFunction(l)?l(g):l),this.options=o.options||{},this.children=o.children||[],u&&(r=_xeUtils.default.isFunction(u)?u({name:i,$formDesign:e}):u),n[i]||(n[i]=Object.assign({},o),refWidgetReactConfigMaps.value=Object.assign({},n)));var n,o,l,u,g=(0,_util.getNewWidgetId)(t);r&&!validWidgetUniqueField(r,t)&&(0,_log.errLog)("vxe.error.uniField",[r]),this.id=g,this.field=r||""+i+g,this.name=i}}function configToWidget(e){var i=new FormDesignWidgetInfo(null,e.name,[]);return i.id=e.id,i.title=e.title||"",i.field=e.field||"",i.required=e.required||!1,i.hidden=e.hidden||!1,i.options=Object.assign({},i.options,e.options),i.children=e.children?e.children.map(e=>configToWidget(e)):[],i}exports.FormDesignWidgetInfo=FormDesignWidgetInfo;