FormItemContext.js 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. import { computed as c, inject as u, getCurrentInstance as F, onBeforeUnmount as I, provide as r, defineComponent as v, ref as C, watch as x } from "vue";
  2. import { bz as y, d as g } from "./index2.js";
  3. const l = Symbol("ContextProps"), m = Symbol("InternalContextProps"), N = function(a) {
  4. let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : c(() => !0);
  5. const e = C(/* @__PURE__ */ new Map()), o = (n, s) => {
  6. e.value.set(n, s), e.value = new Map(e.value);
  7. }, f = (n) => {
  8. e.value.delete(n), e.value = new Map(e.value);
  9. }, p = F();
  10. x([t, e], () => {
  11. if (process.env.NODE_ENV !== "production" && t.value && e.value.size > 1) {
  12. g(!1, "Form.Item", `FormItem can only collect one field item, you haved set ${[...e.value.values()].map((s) => `\`${s.name}\``).join(", ")} ${e.value.size} field items.
  13. You can set not need to be collected fields into \`a-form-item-rest\``);
  14. let n = p;
  15. for (; n.parent; )
  16. console.warn("at", n.type), n = n.parent;
  17. }
  18. }), r(l, a), r(m, {
  19. addFormItemField: o,
  20. removeFormItemField: f
  21. });
  22. }, i = {
  23. id: c(() => {
  24. }),
  25. onFieldBlur: () => {
  26. },
  27. onFieldChange: () => {
  28. },
  29. clearValidate: () => {
  30. }
  31. }, d = {
  32. addFormItemField: () => {
  33. },
  34. removeFormItemField: () => {
  35. }
  36. }, S = () => {
  37. const a = u(m, d), t = Symbol("FormItemFieldKey"), e = F();
  38. return a.addFormItemField(t, e.type), I(() => {
  39. a.removeFormItemField(t);
  40. }), r(m, d), r(l, i), u(l, i);
  41. }, _ = v({
  42. compatConfig: {
  43. MODE: 3
  44. },
  45. name: "AFormItemRest",
  46. setup(a, t) {
  47. let {
  48. slots: e
  49. } = t;
  50. return r(m, d), r(l, i), () => {
  51. var o;
  52. return (o = e.default) === null || o === void 0 ? void 0 : o.call(e);
  53. };
  54. }
  55. }), b = y({}), K = v({
  56. name: "NoFormStatus",
  57. setup(a, t) {
  58. let {
  59. slots: e
  60. } = t;
  61. return b.useProvide({}), () => {
  62. var o;
  63. return (o = e.default) === null || o === void 0 ? void 0 : o.call(e);
  64. };
  65. }
  66. });
  67. export {
  68. b as F,
  69. K as N,
  70. N as a,
  71. _ as b,
  72. S as u
  73. };