yanzhen-design-vue
Version:
42 lines (41 loc) • 1.22 kB
JavaScript
import { apiProviderBaseProps } from "@yanzhen-lowcode/core";
import { propsSeparate, buildProps, definePropType, buildEmits } from "@yanzhen-libs/utils-vue";
import { cascaderProps as cascaderProps$1 } from "ant-design-vue/es/cascader";
import { omit } from "lodash-es";
import "../../../hooks/index.mjs";
import { cascaderOptionsProps } from "./hooks/use-cascader-options.mjs";
import { useNamespace } from "../../../hooks/use-namespace/index.mjs";
const ns = useNamespace("cascader");
const triggerTypes = ["click", "hover"];
const cascaderOptions = {
ns,
class: ns.b(),
name: ns.defineVNodeName(),
triggerTypes
};
const cascaderName = cascaderOptions.name;
const AntCascader = propsSeparate(cascaderProps$1());
const cascaderProps = buildProps({
...apiProviderBaseProps,
...omit(AntCascader.props, "fieldNames"),
...cascaderOptionsProps(),
mode: String,
// 扩展 Props
subMenuTrigger: {
type: definePropType([String]),
values: triggerTypes,
default: triggerTypes[0]
},
placeholder: {
type: String,
default: "请选择"
}
});
const cascaderEmits = buildEmits(AntCascader.emits);
export {
AntCascader,
cascaderEmits,
cascaderName,
cascaderOptions,
cascaderProps
};