@@ -26,19 +26,26 @@ export default {
2626 let tooltipSlot = 'append-outer'
2727
2828 if ( this . fullSchema . type === 'string' ) {
29- tag = 'v-text-field'
30- if ( this . display === 'password' ) props . type = 'password'
3129 if ( this . display === 'textarea' || ( this . fullSchema . maxLength && this . fullSchema . maxLength > 1000 && this . display !== 'single-line' ) ) {
3230 tag = 'v-textarea'
33- props . filled = true
31+ Object . assign ( props , this . fullOptions . textareaProps )
3432 domProps . class = 'v-text-field--box v-text-field--enclosed'
33+ } else {
34+ tag = 'v-text-field'
35+ Object . assign ( props , this . fullOptions . textFieldProps )
36+ if ( this . display === 'password' ) props . type = 'password'
3537 }
3638 }
3739
3840 if ( [ 'number' , 'integer' ] . includes ( this . fullSchema . type ) ) {
39- tag = 'v-text-field'
40- if ( this . display === 'slider' ) tag = 'v-slider'
41-
41+ if ( this . display === 'slider' ) {
42+ tag = 'v-slider'
43+ Object . assign ( props , this . fullOptions . sliderProps )
44+ } else {
45+ tag = 'v-text-field'
46+ Object . assign ( props , this . fullOptions . textFieldProps )
47+ Object . assign ( props , this . fullOptions . numberProps )
48+ }
4249 props . type = 'number'
4350 if ( this . fullSchema . minimum !== undefined ) props . min = this . fullSchema . minimum
4451 if ( this . fullSchema . maximum !== undefined ) props . max = this . fullSchema . maximum
@@ -48,9 +55,14 @@ export default {
4855 }
4956
5057 if ( this . fullSchema . type === 'boolean' ) {
51- tag = 'v-checkbox'
5258 tooltipSlot = 'append'
53- if ( this . display === 'switch' ) tag = 'v-switch'
59+ if ( this . display === 'switch' ) {
60+ tag = 'v-switch'
61+ Object . assign ( props , this . fullOptions . switchProps )
62+ } else {
63+ tag = 'v-checkbox'
64+ Object . assign ( props , this . fullOptions . checkboxProps )
65+ }
5466 on . change = value => {
5567 this . input ( value || false )
5668 this . change ( value || false )
@@ -59,7 +71,7 @@ export default {
5971
6072 if ( this . fullSchema . type === 'array' && [ 'string' , 'number' , 'integer' ] . includes ( this . fullSchema . items . type ) ) {
6173 tag = 'v-combobox'
62-
74+ Object . assign ( props , this . fullOptions . comboboxProps )
6375 props . chips = true
6476 props . multiple = true
6577 props . appendIcon = ''
0 commit comments