@antdv/pro-field
Version:
原子信息组件,统一 ProForm、ProTable、ProList、Filter 等组件里面的字段定义。
94 lines (93 loc) • 3.02 kB
JavaScript
var __defProp = Object.defineProperty;
var __defProps = Object.defineProperties;
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
return a;
};
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
import { Fragment as _Fragment, createVNode as _createVNode } from "vue";
import { proTheme } from "@antdv/pro-provider";
import { isValidElement } from "@antdv/pro-utils";
import { useConfigContextInject } from "ant-design-vue/lib/config-provider/context";
import { computed, defineComponent, h } from "vue";
import { buildProFieldProp } from "../props.mjs";
function addArrayKeys(doms) {
return doms == null ? void 0 : doms.map((dom, index) => {
var _a;
if (!isValidElement(dom)) {
return _createVNode(_Fragment, null, [dom]);
}
return h(dom, __spreadProps(__spreadValues({
key: index
}, dom == null ? void 0 : dom.props), {
style: __spreadValues({}, (_a = dom == null ? void 0 : dom.props) == null ? void 0 : _a.style)
}));
});
}
var stdin_default = defineComponent({
name: "FieldOptions",
inheritAttrs: false,
props: buildProFieldProp({}),
setup(props) {
const {
getPrefixCls
} = useConfigContextInject();
const className = getPrefixCls("pro-field-option");
const {
token
} = proTheme.useToken();
return () => {
const {
text,
mode: type,
render,
fieldProps
} = props;
if (render) {
const doms = render(text, computed(() => __spreadValues({
mode: type
}, fieldProps)), _createVNode(_Fragment, null, null));
if (!doms || (doms == null ? void 0 : doms.length) < 1 || !Array.isArray(doms)) {
return null;
}
return _createVNode("div", {
"style": {
display: "flex",
gap: `${token.value.margin}px`,
alignItems: "center"
},
"class": className
}, [addArrayKeys(doms)]);
}
if (!text || !Array.isArray(text)) {
if (!isValidElement(text)) {
return null;
}
return text;
}
return _createVNode("div", {
"style": {
display: "flex",
gap: `${token.value.margin}px`,
alignItems: "center"
},
"class": className
}, [addArrayKeys(text)]);
};
}
});
export {
stdin_default as default
};