vue-admin-core
Version:
A Component Library for Vue 3
99 lines (94 loc) • 2.58 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var vue$1 = require('vue');
var vue = require('@formily/vue');
var runtime = require('element-plus/es/utils/vue/props/runtime');
require('../../preview-text/index.js');
require('../../form-layout/index.js');
var index = require('../../form-layout/src/index.js');
var index$1 = require('../../preview-text/src/index.js');
const FormProvider = vue.FormProvider;
const formProps = {
...index.formLayoutProps,
...runtime.buildProps({
form: {
type: Object
},
component: {
type: Object
},
previewTextPlaceholder: {
type: [String, Function]
},
onAutoSubmit: {
type: Function
},
onAutoSubmitFailed: {
type: Function
}
})
};
const Form = vue$1.defineComponent({
name: "FForm",
inheritAttrs: false,
props: formProps,
setup(props, { slots }) {
const top = vue.useForm();
return () => {
const {
form,
component = "form",
onAutoSubmit,
onAutoSubmitFailed,
previewTextPlaceholder = slots == null ? void 0 : slots.previewTextPlaceholder,
...other
} = props;
const renderContent = (form2) => {
return vue.h(
index$1.PreviewText.Placeholder,
{
value: previewTextPlaceholder
},
{
default: () => [
vue.h(index.FormLayout, other, {
default: () => [
vue.h(
component,
{
onSubmit: (e) => {
var _a, _b;
(_a = e == null ? void 0 : e.stopPropagation) == null ? void 0 : _a.call(e);
(_b = e == null ? void 0 : e.preventDefault) == null ? void 0 : _b.call(e);
if (onAutoSubmit) {
form2.submit(onAutoSubmit).catch(onAutoSubmitFailed);
}
}
},
slots
)
]
})
]
}
);
};
if (form) {
return vue.h(
FormProvider,
{ form },
{
default: () => renderContent(form)
}
);
}
if (!top.value)
throw new Error("must pass form instance by createForm");
return renderContent(top.value);
};
}
});
exports.Form = Form;
exports.default = Form;
exports.formProps = formProps;
//# sourceMappingURL=index.js.map