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.
70 lines
1.6 KiB
70 lines
1.6 KiB
import Vue from '../../utils/vue';
|
|
import { mergeData } from 'vue-functional-data-merge';
|
|
import { normalizeSlot } from '../../utils/normalize-slot';
|
|
import { BMediaBody } from './media-body';
|
|
import { BMediaAside } from './media-aside';
|
|
export var props = {
|
|
tag: {
|
|
type: String,
|
|
default: 'div'
|
|
},
|
|
rightAlign: {
|
|
type: Boolean,
|
|
default: false
|
|
},
|
|
verticalAlign: {
|
|
type: String,
|
|
default: 'top'
|
|
},
|
|
noBody: {
|
|
type: Boolean,
|
|
default: false
|
|
}
|
|
}; // @vue/component
|
|
|
|
export var BMedia =
|
|
/*#__PURE__*/
|
|
Vue.extend({
|
|
name: 'BMedia',
|
|
functional: true,
|
|
props: props,
|
|
render: function render(h, _ref) {
|
|
var props = _ref.props,
|
|
data = _ref.data,
|
|
slots = _ref.slots,
|
|
scopedSlots = _ref.scopedSlots,
|
|
children = _ref.children;
|
|
var childNodes = props.noBody ? children : [];
|
|
|
|
if (!props.noBody) {
|
|
var $slots = slots();
|
|
var $scopedSlots = scopedSlots || {};
|
|
var $aside = normalizeSlot('aside', {}, $scopedSlots, $slots);
|
|
var $default = normalizeSlot('default', {}, $scopedSlots, $slots);
|
|
|
|
if ($aside && !props.rightAlign) {
|
|
childNodes.push(h(BMediaAside, {
|
|
staticClass: 'mr-3',
|
|
props: {
|
|
verticalAlign: props.verticalAlign
|
|
}
|
|
}, $aside));
|
|
}
|
|
|
|
childNodes.push(h(BMediaBody, $default));
|
|
|
|
if ($aside && props.rightAlign) {
|
|
childNodes.push(h(BMediaAside, {
|
|
staticClass: 'ml-3',
|
|
props: {
|
|
verticalAlign: props.verticalAlign
|
|
}
|
|
}, $aside));
|
|
}
|
|
}
|
|
|
|
return h(props.tag, mergeData(data, {
|
|
staticClass: 'media'
|
|
}), childNodes);
|
|
}
|
|
}); |