UNPKG

amis-playground

Version:

amis-playground 是一个amis在线代码编辑器可实时预览运行效果

2 lines (1 loc) 2 kB
import{a as m,b9 as v,cG as l,a3 as y,n as p,f as c,p as S,q as s,R as g,F as _}from"./index-7c288cb3.js";var F=function(r){m(n,r);function n(){var t=r!==null&&r.apply(this,arguments)||this;return t.inited=!1,t}return n.prototype.componentDidMount=function(){var t=this.props,i=t.formInited,o=t.initSet,e=t.addHook;this.unHook=e?e(this.handleFormInit,"init"):void 0,i!==!1&&(this.inited=!0,o===!1||this.initSet())},n.prototype.componentDidUpdate=function(t){var i=this.props,o=i.formInited,e=i.initSet,a=i.autoSet;this.inited?a===!1||this.autoSet(t):typeof o>"u"&&(this.inited=!0,e===!1||this.initSet())},n.prototype.componentWillUnmount=function(){var t;(t=this.unHook)===null||t===void 0||t.call(this)},n.prototype.handleFormInit=function(t){this.inited=!0;var i=this.props,o=i.name,e=i.initSet;if(e!==!1){var a=this.initSet();typeof o=="string"&&typeof a<"u"&&v(t,o,a)}},n.prototype.initSet=function(){var t=this.props,i=t.formula,o=t.data,e=t.setPrinstineValue;t.initSet;var a=t.condition;if(i){if(a&&!~a.indexOf("$")&&!~a.indexOf("<%")&&!l(a,o))return}else return;var f=l(i,o);return f!==null&&(e==null||e(f)),f},n.prototype.autoSet=function(t){var i=this.props,o=t.formula,e=t.data,a=t.onChange,f=t.value,u=t.condition;if(o&&i.formula&&y(e,i.data,!1)&&f===i.value){var d=l(i.formula,i.data);if(u&&i.condition)~u.indexOf("$")||~u.indexOf("<%")?p(u,e)!==p(i.condition,i.data)&&a(d):l(i.condition,i.data)&&a(d);else{var h=l(o,e);JSON.stringify(h)!==JSON.stringify(d)&&a(d??"")}}},n.prototype.doAction=function(){var t=this.props,i=t.formula,o=t.data,e=t.onChange;t.autoSet,t.value;var a=l(i,o);e(a)},n.prototype.render=function(){return null},c([S,s("design:type",Function),s("design:paramtypes",[Object]),s("design:returntype",void 0)],n.prototype,"handleFormInit",null),n}(g.Component),I=function(r){m(n,r);function n(){return r!==null&&r.apply(this,arguments)||this}return n=c([_({type:"formula",wrap:!1,strictMode:!1,sizeMutable:!1})],n),n}(F);export{I as FormulaControlRenderer,F as default};