StackGenVis: Alignment of Data, Algorithms, and Models for Stacking Ensemble Learning Using Performance Metrics
https://doi.org/10.1109/TVCG.2020.3030352
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.1 KiB
57 lines
1.1 KiB
4 years ago
|
import { matches, select, isVisible, requestAF } from '../utils/dom';
|
||
|
var SELECTOR = 'input, textarea, select'; // @vue/component
|
||
|
|
||
|
export default {
|
||
|
props: {
|
||
|
name: {
|
||
|
type: String // default: undefined
|
||
|
|
||
|
},
|
||
|
id: {
|
||
|
type: String // default: undefined
|
||
|
|
||
|
},
|
||
|
disabled: {
|
||
|
type: Boolean
|
||
|
},
|
||
|
required: {
|
||
|
type: Boolean,
|
||
|
default: false
|
||
|
},
|
||
|
form: {
|
||
|
type: String,
|
||
|
default: null
|
||
|
},
|
||
|
autofocus: {
|
||
|
type: Boolean,
|
||
|
default: false
|
||
|
}
|
||
|
},
|
||
|
mounted: function mounted() {
|
||
|
this.handleAutofocus();
|
||
|
},
|
||
|
activated: function activated()
|
||
|
/* istanbul ignore next */
|
||
|
{
|
||
|
this.handleAutofocus();
|
||
|
},
|
||
|
methods: {
|
||
|
handleAutofocus: function handleAutofocus() {
|
||
|
var _this = this;
|
||
|
|
||
|
this.$nextTick(function () {
|
||
|
requestAF(function () {
|
||
|
var el = _this.$el;
|
||
|
|
||
|
if (_this.autofocus && isVisible(el)) {
|
||
|
if (!matches(el, SELECTOR)) {
|
||
|
el = select(SELECTOR, el);
|
||
|
}
|
||
|
|
||
|
el && el.focus && el.focus();
|
||
|
}
|
||
|
});
|
||
|
});
|
||
|
}
|
||
|
}
|
||
|
};
|