@silver-formily/element-plus 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/README.en-US.md +32 -32
  2. package/README.md +32 -32
  3. package/esm/__builtins__/index.mjs +19 -23
  4. package/esm/__builtins__/index.mjs.map +1 -1
  5. package/esm/__builtins__/shared/index.d.ts +0 -1
  6. package/esm/__builtins__/shared/index.mjs +17 -21
  7. package/esm/__builtins__/shared/index.mjs.map +1 -1
  8. package/esm/__builtins__/shared/loading.mjs +5 -5
  9. package/esm/__builtins__/shared/loading.mjs.map +1 -1
  10. package/esm/__builtins__/shared/use-enter-submit.d.ts +9 -0
  11. package/esm/__builtins__/shared/use-enter-submit.mjs +25 -0
  12. package/esm/__builtins__/shared/use-enter-submit.mjs.map +1 -0
  13. package/esm/autocomplete/autocomplete.d.ts +1222 -0
  14. package/esm/autocomplete/index.d.ts +639 -0
  15. package/esm/autocomplete/index.mjs +110 -0
  16. package/esm/autocomplete/index.mjs.map +1 -0
  17. package/esm/checkbox/index.d.ts +42 -42
  18. package/esm/color-picker/index.d.ts +210 -0
  19. package/esm/color-picker/index.mjs +14 -0
  20. package/esm/color-picker/index.mjs.map +1 -0
  21. package/esm/color-picker-panel/index.d.ts +129 -0
  22. package/esm/color-picker-panel/index.mjs +22 -0
  23. package/esm/color-picker-panel/index.mjs.map +1 -0
  24. package/esm/date-picker/index.mjs +12 -34
  25. package/esm/date-picker/index.mjs.map +1 -1
  26. package/esm/date-picker/utils.d.ts +4 -0
  27. package/esm/date-picker/utils.mjs +27 -0
  28. package/esm/date-picker/utils.mjs.map +1 -0
  29. package/esm/date-picker-panel/index.d.ts +143 -0
  30. package/esm/date-picker-panel/index.mjs +27 -0
  31. package/esm/date-picker-panel/index.mjs.map +1 -0
  32. package/esm/env.d.mjs +2 -0
  33. package/esm/env.d.mjs.map +1 -0
  34. package/esm/form-button-group/form-button-group.d.ts +1 -1
  35. package/esm/form-button-group/index.d.ts +3 -3
  36. package/esm/form-dialog/dialog-content.d.ts +789 -3
  37. package/esm/form-dialog/index.mjs +98 -87
  38. package/esm/form-dialog/index.mjs.map +1 -1
  39. package/esm/form-dialog/types.d.ts +1 -0
  40. package/esm/form-drawer/drawer-content.d.ts +919 -3
  41. package/esm/form-drawer/index.mjs +91 -81
  42. package/esm/form-drawer/index.mjs.map +1 -1
  43. package/esm/form-drawer/types.d.ts +1 -0
  44. package/esm/form-item/index.mjs +17 -17
  45. package/esm/form-item/index.mjs.map +1 -1
  46. package/esm/form-layout/form-layout.mjs +10 -10
  47. package/esm/form-layout/form-layout.mjs.map +1 -1
  48. package/esm/form-layout/utils.mjs +1 -1
  49. package/esm/form-layout/utils.mjs.map +1 -1
  50. package/esm/index.d.ts +6 -0
  51. package/esm/index.mjs +90 -78
  52. package/esm/index.mjs.map +1 -1
  53. package/esm/input-number/index.d.ts +21 -21
  54. package/esm/input-tag/index.d.ts +32 -0
  55. package/esm/input-tag/index.mjs +46 -0
  56. package/esm/input-tag/index.mjs.map +1 -0
  57. package/esm/input-tag/input-tag.d.ts +32 -0
  58. package/esm/mention/index.d.ts +50 -0
  59. package/esm/mention/index.mjs +93 -0
  60. package/esm/mention/index.mjs.map +1 -0
  61. package/esm/mention/mention.d.ts +51 -0
  62. package/esm/pagination/pagination.mjs.map +1 -1
  63. package/esm/preview-text/color-picker.d.ts +5 -0
  64. package/esm/preview-text/index.d.ts +5 -0
  65. package/esm/preview-text/index.mjs +180 -145
  66. package/esm/preview-text/index.mjs.map +1 -1
  67. package/esm/radio/index.d.ts +36 -36
  68. package/esm/rate/index.mjs.map +1 -1
  69. package/esm/segmented/index.mjs.map +1 -1
  70. package/esm/shared/overlay-elements.d.ts +6 -0
  71. package/esm/shared/overlay-elements.mjs +16 -0
  72. package/esm/shared/overlay-elements.mjs.map +1 -0
  73. package/esm/slider/index.mjs.map +1 -1
  74. package/esm/styles/preview-text/index.css +1 -1
  75. package/esm/switch/index.d.ts +12 -12
  76. package/esm/upload/index.d.ts +1 -1
  77. package/esm/upload/upload.d.ts +2 -2
  78. package/package.json +3 -1
  79. package/esm/__builtins__/shared/hooks.d.ts +0 -7
  80. package/esm/__builtins__/shared/hooks.mjs +0 -59
  81. package/esm/__builtins__/shared/hooks.mjs.map +0 -1
@@ -1,16 +1,18 @@
1
- import { createForm as T } from "@formily/core";
2
- import { toJS as V } from "@formily/reactive";
3
- import { isFn as u, isArr as $, isStr as h, pascalCase as j, applyMiddleware as g, isValid as q } from "@formily/shared";
4
- import { observer as z } from "@silver-formily/reactive-vue";
5
- import { defineComponent as N, useSlots as O, createBlock as A, openBlock as k, unref as n, mergeProps as C, createSlots as I, withCtx as f, createElementVNode as J, normalizeClass as R, renderSlot as w, createElementBlock as U, Fragment as G, createVNode as b, createTextVNode as x, toDisplayString as M, normalizeProps as H, guardReactiveProps as K, ref as L, h as D, createApp as Q } from "vue";
6
- import { FormProvider as W } from "@silver-formily/vue";
7
- import { ElDialog as X, ElButton as E, ElConfigProvider as Y } from "element-plus";
8
- import { loadElConfigProvider as Z } from "../__builtins__/shared/load-config-provider.mjs";
9
- import { o as _, c as F } from "../vendor/lodash.mjs";
10
- import { useDebonceSubmitting as ee, loading as S, getTransitionDuration as oe } from "../__builtins__/shared/loading.mjs";
11
- import { stylePrefix as re } from "../__builtins__/configs/index.mjs";
12
- import { isVueOptions as te } from "../__builtins__/shared/utils.mjs";
13
- const ne = /* @__PURE__ */ N({
1
+ import { createForm as q } from "@formily/core";
2
+ import { toJS as z } from "@formily/reactive";
3
+ import { isFn as p, isArr as E, isStr as S, pascalCase as $, applyMiddleware as g, isValid as N } from "@formily/shared";
4
+ import { observer as O } from "@silver-formily/reactive-vue";
5
+ import { defineComponent as R, useSlots as A, ref as T, computed as k, createBlock as I, openBlock as h, unref as i, mergeProps as C, createSlots as J, withCtx as c, createElementVNode as U, normalizeClass as G, renderSlot as w, createElementBlock as H, Fragment as K, createVNode as b, createTextVNode as j, toDisplayString as x, normalizeProps as L, guardReactiveProps as Q, h as D, createApp as W } from "vue";
6
+ import { FormProvider as X } from "@silver-formily/vue";
7
+ import { ElDialog as Y, ElButton as M, ElConfigProvider as Z } from "element-plus";
8
+ import { useEnterSubmit as _ } from "../__builtins__/shared/use-enter-submit.mjs";
9
+ import { resolveDialogElement as ee } from "../shared/overlay-elements.mjs";
10
+ import { loadElConfigProvider as oe } from "../__builtins__/shared/load-config-provider.mjs";
11
+ import { o as re, c as F } from "../vendor/lodash.mjs";
12
+ import { useDebonceSubmitting as te, loading as B, getTransitionDuration as ne } from "../__builtins__/shared/loading.mjs";
13
+ import { stylePrefix as ie } from "../__builtins__/configs/index.mjs";
14
+ import { isVueOptions as le } from "../__builtins__/shared/utils.mjs";
15
+ const se = /* @__PURE__ */ R({
14
16
  name: "FormDialogContent",
15
17
  __name: "dialog-content",
16
18
  props: {
@@ -36,28 +38,37 @@ const ne = /* @__PURE__ */ N({
36
38
  }
37
39
  },
38
40
  setup(r) {
39
- const l = r, a = O(), e = `${re}-form-dialog`, c = Z(), s = _(l.dialogProps, [
41
+ const t = r, f = A(), e = `${ie}-form-dialog`, u = oe(), m = re(t.dialogProps, [
40
42
  "modelValue",
41
43
  "onUpdate:modelValue",
42
- "beforeClose"
43
- ]), { internalSubmitting: p } = ee(l.form);
44
- return (i, o) => (k(), A(n(X), C({
44
+ "beforeClose",
45
+ "enterSubmit"
46
+ ]), { internalSubmitting: d } = te(t.form), s = T(null), o = k(() => t.dialogProps.enterSubmit !== !1);
47
+ return _({
48
+ visible: k(() => t.visible),
49
+ resolve: () => t.resolve(),
50
+ submitting: d,
51
+ getContainer: () => ee(s.value),
52
+ enabled: o
53
+ }), (n, l) => (h(), I(i(Y), C({
54
+ ref_key: "dialogRef",
55
+ ref: s,
45
56
  class: e,
46
- "z-index": n(c).zIndex
47
- }, n(s), {
57
+ "z-index": i(u).zIndex
58
+ }, i(m), {
48
59
  "model-value": r.visible,
49
- "before-close": (t) => {
50
- r.reject(), n(u)(l.dialogProps.beforeClose) ? l.dialogProps.beforeClose(t) : t();
60
+ "before-close": (a) => {
61
+ r.reject(), i(p)(t.dialogProps.beforeClose) ? t.dialogProps.beforeClose(a) : a();
51
62
  }
52
- }), I({
53
- default: f(() => [
54
- b(n(W), {
55
- form: l.form
63
+ }), J({
64
+ default: c(() => [
65
+ b(i(X), {
66
+ form: t.form
56
67
  }, {
57
- default: f(() => [
58
- b(n(Y), H(K(n(c))), {
59
- default: f(() => [
60
- w(i.$slots, "default", {
68
+ default: c(() => [
69
+ b(i(Z), L(Q(i(u))), {
70
+ default: c(() => [
71
+ w(n.$slots, "default", {
61
72
  resolve: r.resolve,
62
73
  reject: r.reject,
63
74
  form: r.form
@@ -69,30 +80,30 @@ const ne = /* @__PURE__ */ N({
69
80
  _: 3
70
81
  }, 8, ["form"])
71
82
  ]),
72
- footer: f(() => [
73
- J("div", {
74
- class: R(`${e}-footer`)
83
+ footer: c(() => [
84
+ U("div", {
85
+ class: G(`${e}-footer`)
75
86
  }, [
76
- a.footer ? w(i.$slots, "footer", {
87
+ f.footer ? w(n.$slots, "footer", {
77
88
  key: 0,
78
89
  resolve: r.resolve,
79
90
  reject: r.reject,
80
91
  form: r.form
81
- }) : (k(), U(G, { key: 1 }, [
82
- b(n(E), C(n(s).cancelButtonProps, {
83
- onClick: o[0] || (o[0] = (t) => l.reject())
92
+ }) : (h(), H(K, { key: 1 }, [
93
+ b(i(M), C(i(m).cancelButtonProps, {
94
+ onClick: l[0] || (l[0] = (a) => t.reject())
84
95
  }), {
85
- default: f(() => [
86
- x(M(n(s).cancelText || "取消"), 1)
96
+ default: c(() => [
97
+ j(x(i(m).cancelText || "取消"), 1)
87
98
  ]),
88
99
  _: 1
89
100
  }, 16),
90
- b(n(E), C({ type: "primary" }, n(s).okButtonProps, {
91
- loading: n(p),
92
- onClick: o[1] || (o[1] = (t) => l.resolve())
101
+ b(i(M), C({ type: "primary" }, i(m).okButtonProps, {
102
+ loading: i(d),
103
+ onClick: l[1] || (l[1] = (a) => t.resolve())
93
104
  }), {
94
- default: f(() => [
95
- x(M(n(s).okText || "确定"), 1)
105
+ default: c(() => [
106
+ j(x(i(m).okText || "确定"), 1)
96
107
  ]),
97
108
  _: 1
98
109
  }, 16, ["loading"])
@@ -101,10 +112,10 @@ const ne = /* @__PURE__ */ N({
101
112
  ]),
102
113
  _: 2
103
114
  }, [
104
- a.header ? {
115
+ f.header ? {
105
116
  name: "header",
106
- fn: f(() => [
107
- w(i.$slots, "header", {
117
+ fn: c(() => [
118
+ w(n.$slots, "header", {
108
119
  resolve: r.resolve,
109
120
  reject: r.reject,
110
121
  form: r.form
@@ -115,7 +126,7 @@ const ne = /* @__PURE__ */ N({
115
126
  ]), 1040, ["z-index", "model-value", "before-close"]));
116
127
  }
117
128
  });
118
- function be(r, l, a) {
129
+ function Ee(r, t, f) {
119
130
  const e = {
120
131
  root: document.createElement("div"),
121
132
  form: null,
@@ -126,83 +137,83 @@ function be(r, l, a) {
126
137
  confirmMiddlewares: [],
127
138
  cancelMiddlewares: []
128
139
  };
129
- if ($(a))
130
- for (const o of a) {
140
+ if (E(f))
141
+ for (const o of f) {
131
142
  /* istanbul ignore if -- @preserve */
132
- if (!h(o))
143
+ if (!S(o))
133
144
  return;
134
- const t = F(o);
145
+ const n = F(o);
135
146
  /* istanbul ignore if -- @preserve */
136
- if (["open", "cancel", "confirm"].includes(t))
137
- throw new Error(`for${j(t)} is presved`);
138
- e[`${t}Middlewares`] = [];
147
+ if (["open", "cancel", "confirm"].includes(n))
148
+ throw new Error(`for${$(n)} is presved`);
149
+ e[`${n}Middlewares`] = [];
139
150
  }
140
151
  document.body.append(e.root);
141
- const c = h(r) ? { title: r } : r;
142
- function s(o, t, m) {
143
- const d = te(l) ? { default: () => D(l) } : l;
152
+ const u = S(r) ? { title: r } : r;
153
+ function m(o, n, l) {
154
+ const a = le(t) ? { default: () => D(t) } : t;
144
155
  if (!e.instance) {
145
- const v = z({
146
- setup(P, { expose: B }) {
147
- const y = L(!1);
148
- return B({
156
+ const v = O({
157
+ setup(P, { expose: V }) {
158
+ const y = T(!1);
159
+ return V({
149
160
  visible: y
150
- }), () => D(ne, {
151
- dialogProps: c,
161
+ }), () => D(se, {
162
+ dialogProps: u,
152
163
  form: e.form,
153
- resolve: t,
154
- reject: m,
164
+ resolve: n,
165
+ reject: l,
155
166
  visible: y.value
156
- }, d);
167
+ }, a);
157
168
  }
158
169
  });
159
- e.app = Q(v), e.instance = e.app.mount(e.root);
170
+ e.app = W(v), e.instance = e.app.mount(e.root);
160
171
  }
161
172
  e.instance.visible = o;
162
173
  }
163
- function p() {
164
- const o = oe();
174
+ function d() {
175
+ const o = ne();
165
176
  setTimeout(() => {
166
177
  e.app?.unmount?.(), e.app = null, e.instance = null, e.root?.remove(), e.root = void 0;
167
178
  }, o);
168
179
  }
169
- const i = {
170
- forOpen: (o) => (u(o) && e.openMiddlewares.push(o), i),
171
- forConfirm: (o) => (u(o) && e.confirmMiddlewares.push(o), i),
172
- forCancel: (o) => (u(o) && e.cancelMiddlewares.push(o), i),
180
+ const s = {
181
+ forOpen: (o) => (p(o) && e.openMiddlewares.push(o), s),
182
+ forConfirm: (o) => (p(o) && e.confirmMiddlewares.push(o), s),
183
+ forCancel: (o) => (p(o) && e.cancelMiddlewares.push(o), s),
173
184
  open: (o) => {
174
185
  /* istanbul ignore if -- @preserve */
175
- return e.promise || (e.promise = new Promise((t, m) => {
176
- S(c.loadingText, () => g(o, e.openMiddlewares)).then((d) => {
177
- e.form = e.form || T(d), s(!0, (v) => {
186
+ return e.promise || (e.promise = new Promise((n, l) => {
187
+ B(u.loadingText, () => g(o, e.openMiddlewares)).then((a) => {
188
+ e.form = e.form || q(a), m(!0, (v) => {
178
189
  e.form.submit(async () => {
179
- await (q(v) ? g(e.form, e[`${v}Middlewares`]) : g(e.form, e.confirmMiddlewares)), t(V(e.form.values)), i.close(), p();
190
+ await (N(v) ? g(e.form, e[`${v}Middlewares`]) : g(e.form, e.confirmMiddlewares)), n(z(e.form.values)), s.close(), d();
180
191
  }).catch((P) => {
181
192
  console.warn(P);
182
193
  });
183
194
  }, async () => {
184
- await S(c.loadingText, () => g(e.form, e.cancelMiddlewares)), i.close(), p(), m(new Error("cancel"));
195
+ await B(u.loadingText, () => g(e.form, e.cancelMiddlewares)), s.close(), d(), l(new Error("cancel"));
185
196
  });
186
197
  }).catch(
187
198
  /* istanbul ignore next -- @preserve */
188
- (d) => m(d)
199
+ (a) => l(a)
189
200
  );
190
201
  })), e.promise;
191
202
  },
192
203
  close: () => {
193
204
  /* istanbul ignore if -- @preserve */
194
- e.root && s(!1);
205
+ e.root && m(!1);
195
206
  }
196
207
  };
197
- if ($(a))
198
- for (const o of a) {
199
- const t = F(o);
200
- i[`for${j(t)}`] = (m) => (u(m) && e[`${t}Middlewares`].push(m), i);
208
+ if (E(f))
209
+ for (const o of f) {
210
+ const n = F(o);
211
+ s[`for${$(n)}`] = (l) => (p(l) && e[`${n}Middlewares`].push(l), s);
201
212
  }
202
- return i;
213
+ return s;
203
214
  }
204
215
  export {
205
- be as FormDialog,
206
- be as default
216
+ Ee as FormDialog,
217
+ Ee as default
207
218
  };
208
219
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/form-dialog/dialog-content.vue","../../src/form-dialog/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport type { Form } from '@formily/core'\r\nimport type { PropType } from 'vue'\r\nimport type { FormDialogSlots, IFormDialogProps } from './types'\r\nimport { isFn } from '@formily/shared'\r\nimport { FormProvider } from '@silver-formily/vue'\r\nimport { ElButton, ElConfigProvider, ElDialog } from 'element-plus'\r\nimport { omit } from 'lodash-es'\r\nimport { loadElConfigProvider, stylePrefix, useDebonceSubmitting } from '../__builtins__'\r\n\r\ndefineOptions({\r\n name: 'FormDialogContent',\r\n})\r\nconst props = defineProps({\r\n dialogProps: {\r\n type: Object as PropType<IFormDialogProps>,\r\n required: true,\r\n },\r\n visible: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n form: {\r\n type: Object as PropType<Form>,\r\n required: true,\r\n },\r\n resolve: {\r\n type: Function as PropType<() => void>,\r\n required: true,\r\n },\r\n reject: {\r\n type: Function as PropType<() => void>,\r\n required: true,\r\n },\r\n})\r\n\r\nconst slots = defineSlots<FormDialogSlots>()\r\nconst prefixCls = `${stylePrefix}-form-dialog`\r\nconst elConfig = loadElConfigProvider()\r\nconst _dialogProps = omit(props.dialogProps, [\r\n 'modelValue',\r\n 'onUpdate:modelValue',\r\n 'beforeClose',\r\n])\r\nconst { internalSubmitting } = useDebonceSubmitting(props.form)\r\n</script>\r\n\r\n<template>\r\n <ElDialog\r\n :class=\"prefixCls\"\r\n :z-index=\"elConfig.zIndex\"\r\n v-bind=\"_dialogProps\"\r\n :model-value=\"visible\"\r\n :before-close=\"(done) => {\r\n reject()\r\n if (isFn(props.dialogProps.beforeClose)) {\r\n props.dialogProps.beforeClose(done)\r\n }\r\n else {\r\n done()\r\n }\r\n }\"\r\n >\r\n <template v-if=\"slots.header\" #header>\r\n <slot name=\"header\" :resolve=\"resolve\" :reject=\"reject\" :form=\"form\" />\r\n </template>\r\n\r\n <template #default>\r\n <FormProvider :form=\"props.form\">\r\n <ElConfigProvider v-bind=\"elConfig\">\r\n <slot :resolve=\"resolve\" :reject=\"reject\" :form=\"form\" />\r\n </ElConfigProvider>\r\n </FormProvider>\r\n </template>\r\n\r\n <template #footer>\r\n <div :class=\"`${prefixCls}-footer`\">\r\n <template v-if=\"slots.footer\">\r\n <slot name=\"footer\" :resolve=\"resolve\" :reject=\"reject\" :form=\"form\" />\r\n </template>\r\n <template v-else>\r\n <ElButton\r\n v-bind=\"_dialogProps.cancelButtonProps\"\r\n @click=\"props.reject()\"\r\n >\r\n {{ _dialogProps.cancelText || '取消' }}\r\n </ElButton>\r\n <ElButton\r\n type=\"primary\"\r\n v-bind=\"_dialogProps.okButtonProps\"\r\n :loading=\"internalSubmitting\"\r\n @click=\"props.resolve()\"\r\n >\r\n {{ _dialogProps.okText || '确定' }}\r\n </ElButton>\r\n </template>\r\n </div>\r\n </template>\r\n </ElDialog>\r\n</template>\r\n","import type { Form, IFormProps } from '@formily/core'\r\nimport type { IMiddleware } from '@formily/shared'\r\nimport type { App, Component } from 'vue'\r\nimport type { FormDialogSlotContent, IFormDialog, IFormDialogProps } from './types'\r\nimport { createForm } from '@formily/core'\r\nimport { toJS } from '@formily/reactive'\r\nimport { applyMiddleware, isArr, isFn, isStr, isValid, pascalCase } from '@formily/shared'\r\nimport { observer } from '@silver-formily/reactive-vue'\r\nimport { camelCase } from 'lodash-es'\r\nimport { createApp, h, ref } from 'vue'\r\nimport { getTransitionDuration, isVueOptions, loading } from '../__builtins__'\r\nimport DialogContent from './dialog-content.vue'\r\n\r\nexport function FormDialog<T extends object = any>(\r\n title: IFormDialogProps | string,\r\n content?: Component | FormDialogSlotContent,\r\n dynamicMiddlewareNames?: string[],\r\n): IFormDialog<T> {\r\n const env: {\r\n root?: HTMLElement\r\n form?: Form<T>\r\n promise?: Promise<any>\r\n instance?: any\r\n app?: App<Element>\r\n openMiddlewares: IMiddleware<IFormProps<T>>[]\r\n confirmMiddlewares: IMiddleware<Form<T>>[]\r\n cancelMiddlewares: IMiddleware<Form<T>>[]\r\n [key: `${string}Middlewares`]: IMiddleware<Form<T>>[] | IMiddleware<IFormProps<T>>[] | undefined\r\n } = {\r\n root: document.createElement('div'),\r\n form: null,\r\n promise: null,\r\n app: null,\r\n instance: null,\r\n openMiddlewares: [],\r\n confirmMiddlewares: [],\r\n cancelMiddlewares: [],\r\n }\r\n\r\n if (isArr(dynamicMiddlewareNames)) {\r\n for (const middlewareName of dynamicMiddlewareNames) {\r\n /* istanbul ignore if -- @preserve */\r\n if (!isStr(middlewareName))\r\n return\r\n const _middlewareName = camelCase(middlewareName)\r\n /* istanbul ignore if -- @preserve */\r\n if (['open', 'cancel', 'confirm'].includes(_middlewareName)) {\r\n throw new Error(`for${pascalCase(_middlewareName)} is presved`)\r\n }\r\n (env[`${_middlewareName}Middlewares`] = [])\r\n }\r\n }\r\n\r\n document.body.append(env.root)\r\n\r\n const props = (isStr(title) ? ({ title }) : title) as IFormDialogProps\r\n\r\n function render(visible: boolean, resolve?: (type?: string) => any, reject?: () => any) {\r\n const _content = isVueOptions(content)\r\n ? { default: () => h(content) }\r\n : content\r\n if (!env.instance) {\r\n const ComponentConstructor = observer({\r\n setup(_, { expose }) {\r\n const visible = ref(false)\r\n expose({\r\n visible,\r\n })\r\n return () => h(DialogContent, {\r\n dialogProps: props,\r\n form: env.form,\r\n resolve,\r\n reject,\r\n visible: visible.value,\r\n }, _content)\r\n },\r\n })\r\n env.app = createApp(ComponentConstructor)\r\n env.instance = env.app.mount(env.root)\r\n }\r\n env.instance.visible = visible\r\n }\r\n\r\n function disposeDialog() {\r\n const animationDuration = getTransitionDuration()\r\n setTimeout(() => {\r\n env.app?.unmount?.()\r\n env.app = null\r\n env.instance = null\r\n env.root?.remove()\r\n env.root = undefined\r\n }, animationDuration)\r\n }\r\n\r\n const formDialog = {\r\n forOpen: (middleware: IMiddleware<IFormProps<T>>) => {\r\n isFn(middleware) && env.openMiddlewares.push(middleware)\r\n return formDialog\r\n },\r\n forConfirm: (middleware: IMiddleware<Form<T>>) => {\r\n isFn(middleware) && env.confirmMiddlewares.push(middleware)\r\n return formDialog\r\n },\r\n forCancel: (middleware: IMiddleware<Form<T>>) => {\r\n isFn(middleware) && env.cancelMiddlewares.push(middleware)\r\n return formDialog\r\n },\r\n open: (payload: IFormProps<T>) => {\r\n /* istanbul ignore if -- @preserve */\r\n if (env.promise)\r\n return env.promise\r\n\r\n env.promise = new Promise((res, rej) => {\r\n loading(props.loadingText, () => applyMiddleware(payload, env.openMiddlewares))\r\n .then((resPayload) => {\r\n env.form = env.form || createForm(resPayload as IFormProps<T>)\r\n render(true, (type: string) => {\r\n env.form.submit(async () => {\r\n await (isValid(type) ? applyMiddleware(env.form, env[`${type}Middlewares`]) : applyMiddleware(env.form, env.confirmMiddlewares))\r\n res(toJS(env.form.values))\r\n formDialog.close()\r\n disposeDialog()\r\n }).catch((error) => {\r\n console.warn(error)\r\n })\r\n }, async () => {\r\n await loading(props.loadingText, () =>\r\n applyMiddleware(env.form, env.cancelMiddlewares))\r\n formDialog.close()\r\n disposeDialog()\r\n rej(new Error('cancel'))\r\n })\r\n })\r\n .catch(/* istanbul ignore next -- @preserve */ error => rej(error))\r\n })\r\n return env.promise\r\n },\r\n close: () => {\r\n /* istanbul ignore if -- @preserve */\r\n if (!env.root)\r\n return\r\n render(false)\r\n },\r\n }\r\n if (isArr(dynamicMiddlewareNames)) {\r\n for (const middlewareName of dynamicMiddlewareNames) {\r\n const _middlewareName = camelCase(middlewareName)\r\n formDialog[`for${pascalCase(_middlewareName)}`] = (middleware: IMiddleware<Form<T>>) => {\r\n isFn(middleware) && env[`${_middlewareName}Middlewares`].push(middleware)\r\n return formDialog\r\n }\r\n }\r\n }\r\n\r\n return formDialog as IFormDialog<T>\r\n}\r\n\r\nexport default FormDialog\r\n"],"names":["props","__props","slots","_useSlots","prefixCls","stylePrefix","elConfig","loadElConfigProvider","_dialogProps","omit","internalSubmitting","useDebonceSubmitting","_openBlock","_createBlock","_unref","_mergeProps","done","isFn","_createVNode","FormProvider","_renderSlot","_ctx","_createElementVNode","_createElementBlock","_Fragment","ElButton","_cache","$event","_createTextVNode","_toDisplayString","FormDialog","title","content","dynamicMiddlewareNames","env","isArr","middlewareName","isStr","_middlewareName","camelCase","pascalCase","render","visible","resolve","reject","_content","isVueOptions","h","ComponentConstructor","observer","_","expose","ref","DialogContent","createApp","disposeDialog","animationDuration","getTransitionDuration","formDialog","middleware","payload","res","rej","loading","applyMiddleware","resPayload","createForm","type","isValid","toJS","error"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/form-dialog/dialog-content.vue","../../src/form-dialog/index.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport type { Form } from '@formily/core'\r\nimport type { ComponentPublicInstance, PropType } from 'vue'\r\nimport type { FormDialogSlots, IFormDialogProps } from './types'\r\nimport { isFn } from '@formily/shared'\r\nimport { FormProvider } from '@silver-formily/vue'\r\nimport { ElButton, ElConfigProvider, ElDialog } from 'element-plus'\r\nimport { omit } from 'lodash-es'\r\nimport { computed, ref } from 'vue'\r\nimport { loadElConfigProvider, stylePrefix, useDebonceSubmitting } from '../__builtins__'\r\nimport { useEnterSubmit } from '../__builtins__/shared/use-enter-submit'\r\nimport { resolveDialogElement } from '../shared/overlay-elements'\r\n\r\ndefineOptions({\r\n name: 'FormDialogContent',\r\n})\r\nconst props = defineProps({\r\n dialogProps: {\r\n type: Object as PropType<IFormDialogProps>,\r\n required: true,\r\n },\r\n visible: {\r\n type: Boolean,\r\n required: true,\r\n },\r\n form: {\r\n type: Object as PropType<Form>,\r\n required: true,\r\n },\r\n resolve: {\r\n type: Function as PropType<() => void>,\r\n required: true,\r\n },\r\n reject: {\r\n type: Function as PropType<() => void>,\r\n required: true,\r\n },\r\n})\r\n\r\nconst slots = defineSlots<FormDialogSlots>()\r\nconst prefixCls = `${stylePrefix}-form-dialog`\r\nconst elConfig = loadElConfigProvider()\r\nconst _dialogProps = omit(props.dialogProps, [\r\n 'modelValue',\r\n 'onUpdate:modelValue',\r\n 'beforeClose',\r\n 'enterSubmit',\r\n])\r\nconst { internalSubmitting } = useDebonceSubmitting(props.form)\r\nconst dialogRef = ref<ComponentPublicInstance | null>(null)\r\nconst enableEnterSubmit = computed(() => props.dialogProps.enterSubmit !== false)\r\n\r\nuseEnterSubmit({\r\n visible: computed(() => props.visible),\r\n resolve: () => props.resolve(),\r\n submitting: internalSubmitting,\r\n getContainer: () => resolveDialogElement(dialogRef.value),\r\n enabled: enableEnterSubmit,\r\n})\r\n</script>\r\n\r\n<template>\r\n <ElDialog\r\n ref=\"dialogRef\"\r\n :class=\"prefixCls\"\r\n :z-index=\"elConfig.zIndex\"\r\n v-bind=\"_dialogProps\"\r\n :model-value=\"visible\"\r\n :before-close=\"(done) => {\r\n reject()\r\n if (isFn(props.dialogProps.beforeClose)) {\r\n props.dialogProps.beforeClose(done)\r\n }\r\n else {\r\n done()\r\n }\r\n }\"\r\n >\r\n <template v-if=\"slots.header\" #header>\r\n <slot name=\"header\" :resolve=\"resolve\" :reject=\"reject\" :form=\"form\" />\r\n </template>\r\n\r\n <template #default>\r\n <FormProvider :form=\"props.form\">\r\n <ElConfigProvider v-bind=\"elConfig\">\r\n <slot :resolve=\"resolve\" :reject=\"reject\" :form=\"form\" />\r\n </ElConfigProvider>\r\n </FormProvider>\r\n </template>\r\n\r\n <template #footer>\r\n <div :class=\"`${prefixCls}-footer`\">\r\n <template v-if=\"slots.footer\">\r\n <slot name=\"footer\" :resolve=\"resolve\" :reject=\"reject\" :form=\"form\" />\r\n </template>\r\n <template v-else>\r\n <ElButton\r\n v-bind=\"_dialogProps.cancelButtonProps\"\r\n @click=\"props.reject()\"\r\n >\r\n {{ _dialogProps.cancelText || '取消' }}\r\n </ElButton>\r\n <ElButton\r\n type=\"primary\"\r\n v-bind=\"_dialogProps.okButtonProps\"\r\n :loading=\"internalSubmitting\"\r\n @click=\"props.resolve()\"\r\n >\r\n {{ _dialogProps.okText || '确定' }}\r\n </ElButton>\r\n </template>\r\n </div>\r\n </template>\r\n </ElDialog>\r\n</template>\r\n","import type { Form, IFormProps } from '@formily/core'\r\nimport type { IMiddleware } from '@formily/shared'\r\nimport type { App, Component } from 'vue'\r\nimport type { FormDialogSlotContent, IFormDialog, IFormDialogProps } from './types'\r\nimport { createForm } from '@formily/core'\r\nimport { toJS } from '@formily/reactive'\r\nimport { applyMiddleware, isArr, isFn, isStr, isValid, pascalCase } from '@formily/shared'\r\nimport { observer } from '@silver-formily/reactive-vue'\r\nimport { camelCase } from 'lodash-es'\r\nimport { createApp, h, ref } from 'vue'\r\nimport { getTransitionDuration, isVueOptions, loading } from '../__builtins__'\r\nimport DialogContent from './dialog-content.vue'\r\n\r\nexport function FormDialog<T extends object = any>(\r\n title: IFormDialogProps | string,\r\n content?: Component | FormDialogSlotContent,\r\n dynamicMiddlewareNames?: string[],\r\n): IFormDialog<T> {\r\n const env: {\r\n root?: HTMLElement\r\n form?: Form<T>\r\n promise?: Promise<any>\r\n instance?: any\r\n app?: App<Element>\r\n openMiddlewares: IMiddleware<IFormProps<T>>[]\r\n confirmMiddlewares: IMiddleware<Form<T>>[]\r\n cancelMiddlewares: IMiddleware<Form<T>>[]\r\n [key: `${string}Middlewares`]: IMiddleware<Form<T>>[] | IMiddleware<IFormProps<T>>[] | undefined\r\n } = {\r\n root: document.createElement('div'),\r\n form: null,\r\n promise: null,\r\n app: null,\r\n instance: null,\r\n openMiddlewares: [],\r\n confirmMiddlewares: [],\r\n cancelMiddlewares: [],\r\n }\r\n\r\n if (isArr(dynamicMiddlewareNames)) {\r\n for (const middlewareName of dynamicMiddlewareNames) {\r\n /* istanbul ignore if -- @preserve */\r\n if (!isStr(middlewareName))\r\n return\r\n const _middlewareName = camelCase(middlewareName)\r\n /* istanbul ignore if -- @preserve */\r\n if (['open', 'cancel', 'confirm'].includes(_middlewareName)) {\r\n throw new Error(`for${pascalCase(_middlewareName)} is presved`)\r\n }\r\n (env[`${_middlewareName}Middlewares`] = [])\r\n }\r\n }\r\n\r\n document.body.append(env.root)\r\n\r\n const props = (isStr(title) ? ({ title }) : title) as IFormDialogProps\r\n\r\n function render(visible: boolean, resolve?: (type?: string) => any, reject?: () => any) {\r\n const _content = isVueOptions(content)\r\n ? { default: () => h(content) }\r\n : content\r\n if (!env.instance) {\r\n const ComponentConstructor = observer({\r\n setup(_, { expose }) {\r\n const visible = ref(false)\r\n expose({\r\n visible,\r\n })\r\n return () => h(DialogContent, {\r\n dialogProps: props,\r\n form: env.form,\r\n resolve,\r\n reject,\r\n visible: visible.value,\r\n }, _content)\r\n },\r\n })\r\n env.app = createApp(ComponentConstructor)\r\n env.instance = env.app.mount(env.root)\r\n }\r\n env.instance.visible = visible\r\n }\r\n\r\n function disposeDialog() {\r\n const animationDuration = getTransitionDuration()\r\n setTimeout(() => {\r\n env.app?.unmount?.()\r\n env.app = null\r\n env.instance = null\r\n env.root?.remove()\r\n env.root = undefined\r\n }, animationDuration)\r\n }\r\n\r\n const formDialog = {\r\n forOpen: (middleware: IMiddleware<IFormProps<T>>) => {\r\n isFn(middleware) && env.openMiddlewares.push(middleware)\r\n return formDialog\r\n },\r\n forConfirm: (middleware: IMiddleware<Form<T>>) => {\r\n isFn(middleware) && env.confirmMiddlewares.push(middleware)\r\n return formDialog\r\n },\r\n forCancel: (middleware: IMiddleware<Form<T>>) => {\r\n isFn(middleware) && env.cancelMiddlewares.push(middleware)\r\n return formDialog\r\n },\r\n open: (payload: IFormProps<T>) => {\r\n /* istanbul ignore if -- @preserve */\r\n if (env.promise)\r\n return env.promise\r\n\r\n env.promise = new Promise((res, rej) => {\r\n loading(props.loadingText, () => applyMiddleware(payload, env.openMiddlewares))\r\n .then((resPayload) => {\r\n env.form = env.form || createForm(resPayload as IFormProps<T>)\r\n render(true, (type: string) => {\r\n env.form.submit(async () => {\r\n await (isValid(type) ? applyMiddleware(env.form, env[`${type}Middlewares`]) : applyMiddleware(env.form, env.confirmMiddlewares))\r\n res(toJS(env.form.values))\r\n formDialog.close()\r\n disposeDialog()\r\n }).catch((error) => {\r\n console.warn(error)\r\n })\r\n }, async () => {\r\n await loading(props.loadingText, () =>\r\n applyMiddleware(env.form, env.cancelMiddlewares))\r\n formDialog.close()\r\n disposeDialog()\r\n rej(new Error('cancel'))\r\n })\r\n })\r\n .catch(/* istanbul ignore next -- @preserve */ error => rej(error))\r\n })\r\n return env.promise\r\n },\r\n close: () => {\r\n /* istanbul ignore if -- @preserve */\r\n if (!env.root)\r\n return\r\n render(false)\r\n },\r\n }\r\n if (isArr(dynamicMiddlewareNames)) {\r\n for (const middlewareName of dynamicMiddlewareNames) {\r\n const _middlewareName = camelCase(middlewareName)\r\n formDialog[`for${pascalCase(_middlewareName)}`] = (middleware: IMiddleware<Form<T>>) => {\r\n isFn(middleware) && env[`${_middlewareName}Middlewares`].push(middleware)\r\n return formDialog\r\n }\r\n }\r\n }\r\n\r\n return formDialog as IFormDialog<T>\r\n}\r\n\r\nexport default FormDialog\r\n"],"names":["props","__props","slots","_useSlots","prefixCls","stylePrefix","elConfig","loadElConfigProvider","_dialogProps","omit","internalSubmitting","useDebonceSubmitting","dialogRef","ref","enableEnterSubmit","computed","useEnterSubmit","resolveDialogElement","_openBlock","_createBlock","_unref","_mergeProps","done","isFn","_createVNode","FormProvider","_renderSlot","_ctx","_createElementVNode","_createElementBlock","_Fragment","ElButton","_cache","$event","_createTextVNode","_toDisplayString","FormDialog","title","content","dynamicMiddlewareNames","env","isArr","middlewareName","isStr","_middlewareName","camelCase","pascalCase","render","visible","resolve","reject","_content","isVueOptions","h","ComponentConstructor","observer","_","expose","DialogContent","createApp","disposeDialog","animationDuration","getTransitionDuration","formDialog","middleware","payload","res","rej","loading","applyMiddleware","resPayload","createForm","type","isValid","toJS","error"],"mappings":"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"}
@@ -8,6 +8,7 @@ export type IFormDialogProps = Partial<DialogProps> & {
8
8
  okText?: string;
9
9
  okButtonProps?: ButtonProps;
10
10
  loadingText?: string;
11
+ enterSubmit?: boolean;
11
12
  };
12
13
  export interface FormDialogSlotProps {
13
14
  resolve: (type?: string) => void;