@appscode/ui-builder
Version:
## Motivation
1 lines • 1.62 kB
JavaScript
import"./wrapper-5d451278.js";import"./web.immediate-b3534d9e.js";var e={components:{InfoButton:function(){return import("./InfoButton-52cfb7a1.js")}},props:{label:{type:Object,default:function(){return{}}},schema:{type:Object,default:function(){return{}}},value:{type:null,default:""},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},errors:{type:Array,default:function(){return[]}},hideValue:{type:Boolean,default:!1}},data:function(){return{modelValue:"",originalModelValue:"",isOriginalUpdated:!1,isLabelHoisted:!1,isValueEmitting:!1}},computed:{type:function(){var e=this.schema.type,t=this.schema.format;return"integer"===e||"number"===e?"number":t&&"date"===t?"date":t&&"password"===t||this.hideValue?"password":t&&"email"===t?"email":this.schema.format||"text"},typeConvertedValue:function(){return"number"===this.type&&this.modelValue?parseInt(this.modelValue):this.modelValue},labelText:function(){return this.label.text||"label"}},methods:{onFocusInput:function(){this.isLabelHoisted=!0,this.$emit("focus")},onFocusOutInput:function(){"number"==typeof this.modelValue&&""===this.modelValue?this.isLabelHoisted=!1:"number"===this.type?this.isLabelHoisted=!0:this.modelValue||(this.isLabelHoisted=!1),this.$emit("focusout")}},watch:{typeConvertedValue:{deep:!0,handler:function(e){var t=this;this.isValueEmitting=!0,setImmediate((function(){t.$emit("input",e),t.isValueEmitting=!1}))}},value:{deep:!0,immediate:!0,handler:function(e){this.modelValue!==e&&(this.modelValue=e,this.isOriginalUpdated||(this.originalModelValue=this.modelValue,this.isOriginalUpdated=!0))}}}};export{e as f};