tdesign-pro-component
Version:
ProComponents tdesign-vue-next + Vue3 + TS
75 lines (74 loc) • 1.91 kB
JavaScript
import "lodash-es";
import { g as t, w as b } from "./utils-CIySOLoe.js";
import { defineComponent as P, ref as f, watch as d, createVNode as m, mergeProps as g } from "vue";
import { FormItem as k, DatePicker as h } from "tdesign-vue-next";
const s = /* @__PURE__ */ P({
name: "ProFormDatePicker",
props: {
// about form
name: {
required: !0,
type: String
},
label: [String, Function, Object],
rules: Array,
formItemProps: Object,
// about input
modelValue: [String, Array],
placeholder: {
type: String,
default: "请选择日期"
},
readonly: Boolean,
borderless: Boolean,
disabled: Boolean,
enableTimePicker: Boolean,
clearable: Boolean,
multiple: Boolean,
format: {
type: String,
default: "YYYY-MM-DD"
},
datePickerLabel: [String, Function, Object],
prefixIcon: [Function, Object],
datePickerProps: Object
},
setup: (e, {
slots: r,
emit: n
}) => {
const o = t("label", r, e), i = t("datePickerLabel", r, e), c = t("prefixIcon", r, e), a = f(e.modelValue || "");
function u(l) {
n("change", l), a.value = l;
}
return d(() => e.modelValue, (l) => {
a.value = l;
}), d(a, (l) => {
n("update:modelValue", l);
}), () => m(k, g({
rules: e.rules,
name: e.name
}, e.formItemProps), {
default: () => m(h, {
value: a.value,
clearable: e.clearable,
borderless: e.borderless,
format: e.format,
onChange: u,
readonly: e.readonly,
disabled: e.disabled,
enableTimePicker: e.enableTimePicker,
placehoder: e.placeholder,
multiple: e.multiple,
label: i() ? i() : null,
style: "width: 100%"
}, {
prefixIcon: c() ? c() : null
}),
label: o() ? o : null
});
}
}), B = b(s);
export {
B as P
};