Text.js 1.4 KB

1
  1. var _extends=Object.assign||function(a){for(var b,c=1;c<arguments.length;c++)for(var d in b=arguments[c],b)Object.prototype.hasOwnProperty.call(b,d)&&(a[d]=b[d]);return a};import React from'react';import Module from'../Module';class Text extends Module{constructor(a){super(a),this.state={edit:!1},this.input.onUpdate(()=>this.forceUpdate())}edit(){('normal'===this._mode||'admin'===this._mode)&&this.setState({edit:!0})}change(a){this._change('text',a,this.text),this.setState({edit:!1})}render(){return console.log('TEXT',this.text.value),this.state.edit?React.createElement('div',{style:_extends({},this.props.style),className:this.props.className+' Text',style:{fontSize:parseInt(this.size.value),color:this.color.value}},React.createElement('textarea',{onBlur:a=>this.change(a.target.value),defaultValue:this.text.value}),super.render()):React.createElement('div',{onClick:()=>this.edit(),style:_extends({},this.props.style),className:this.props.className+' Text',style:{fontFamily:this.family.value,fontSize:parseInt(this.size.value),color:this.color.value}},this.input.value,this.text.value,super.render())}}Text.Inputs={text:{type:Module.Types.Text,defaultValue:'DefaultText'},size:{type:Module.Types.Number,defaultValue:'14'},family:{type:Module.Types.Text,defaultValue:'Arial'},color:{type:Module.Types.Text,defaultValue:'black'},input:{type:Module.Types.Link}},Text.Category='Basic';export default Text;