50 lines
1.6 KiB
JavaScript
50 lines
1.6 KiB
JavaScript
import { defineComponent, computed, provide, openBlock, createBlock, resolveDynamicComponent, normalizeClass, normalizeStyle, withCtx, renderSlot } from 'vue';
|
|
import { rowContextKey } from './constants.mjs';
|
|
import { rowProps } from './row.mjs';
|
|
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
|
|
const _sfc_main = defineComponent({
|
|
...{
|
|
name: "ElRow"
|
|
},
|
|
__name: "row",
|
|
props: rowProps,
|
|
setup(__props) {
|
|
const props = __props;
|
|
const ns = useNamespace("row");
|
|
const gutter = computed(() => props.gutter);
|
|
provide(rowContextKey, {
|
|
gutter
|
|
});
|
|
const style = computed(() => {
|
|
const styles = {};
|
|
if (!props.gutter) {
|
|
return styles;
|
|
}
|
|
styles.marginRight = styles.marginLeft = `-${props.gutter / 2}px`;
|
|
return styles;
|
|
});
|
|
const rowKls = computed(() => [
|
|
ns.b(),
|
|
ns.is(`justify-${props.justify}`, props.justify !== "start"),
|
|
ns.is(`align-${props.align}`, !!props.align)
|
|
]);
|
|
return (_ctx, _cache) => {
|
|
return openBlock(), createBlock(resolveDynamicComponent(_ctx.tag), {
|
|
class: normalizeClass(rowKls.value),
|
|
style: normalizeStyle(style.value)
|
|
}, {
|
|
default: withCtx(() => [
|
|
renderSlot(_ctx.$slots, "default")
|
|
]),
|
|
_: 3
|
|
}, 8, ["class", "style"]);
|
|
};
|
|
}
|
|
});
|
|
var Row = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/row/src/row.vue"]]);
|
|
|
|
export { Row as default };
|
|
//# sourceMappingURL=row2.mjs.map
|