38 lines
927 B
JavaScript
38 lines
927 B
JavaScript
![]() |
import _mergeJSXProps from "@vue/babel-helper-vue-jsx-merge-props";
|
||
|
// Utils
|
||
|
import { createNamespace } from '../utils';
|
||
|
import { inherit } from '../utils/functional'; // Types
|
||
|
|
||
|
var _createNamespace = createNamespace('divider'),
|
||
|
createComponent = _createNamespace[0],
|
||
|
bem = _createNamespace[1];
|
||
|
|
||
|
function Divider(h, props, slots, ctx) {
|
||
|
var _bem;
|
||
|
|
||
|
return h("div", _mergeJSXProps([{
|
||
|
"attrs": {
|
||
|
"role": "separator"
|
||
|
},
|
||
|
"style": {
|
||
|
borderColor: props.borderColor
|
||
|
},
|
||
|
"class": bem((_bem = {
|
||
|
dashed: props.dashed,
|
||
|
hairline: props.hairline
|
||
|
}, _bem["content-" + props.contentPosition] = slots.default, _bem))
|
||
|
}, inherit(ctx, true)]), [slots.default && slots.default()]);
|
||
|
}
|
||
|
|
||
|
Divider.props = {
|
||
|
dashed: Boolean,
|
||
|
hairline: {
|
||
|
type: Boolean,
|
||
|
default: true
|
||
|
},
|
||
|
contentPosition: {
|
||
|
type: String,
|
||
|
default: 'center'
|
||
|
}
|
||
|
};
|
||
|
export default createComponent(Divider);
|