context.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. "use strict";
  2. "use client";
  3. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
  4. var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
  5. Object.defineProperty(exports, "__esModule", {
  6. value: true
  7. });
  8. exports.VariantContext = exports.NoStyleItemContext = exports.NoFormStyle = exports.FormProvider = exports.FormItemPrefixContext = exports.FormItemInputContext = exports.FormContext = void 0;
  9. var React = _interopRequireWildcard(require("react"));
  10. var _rcFieldForm = require("rc-field-form");
  11. var _omit = _interopRequireDefault(require("rc-util/lib/omit"));
  12. const FormContext = exports.FormContext = /*#__PURE__*/React.createContext({
  13. labelAlign: 'right',
  14. layout: 'horizontal',
  15. itemRef: () => {}
  16. });
  17. const NoStyleItemContext = exports.NoStyleItemContext = /*#__PURE__*/React.createContext(null);
  18. const FormProvider = props => {
  19. const providerProps = (0, _omit.default)(props, ['prefixCls']);
  20. return /*#__PURE__*/React.createElement(_rcFieldForm.FormProvider, Object.assign({}, providerProps));
  21. };
  22. exports.FormProvider = FormProvider;
  23. const FormItemPrefixContext = exports.FormItemPrefixContext = /*#__PURE__*/React.createContext({
  24. prefixCls: ''
  25. });
  26. const FormItemInputContext = exports.FormItemInputContext = /*#__PURE__*/React.createContext({});
  27. if (process.env.NODE_ENV !== 'production') {
  28. FormItemInputContext.displayName = 'FormItemInputContext';
  29. }
  30. const NoFormStyle = ({
  31. children,
  32. status,
  33. override
  34. }) => {
  35. const formItemInputContext = React.useContext(FormItemInputContext);
  36. const newFormItemInputContext = React.useMemo(() => {
  37. const newContext = Object.assign({}, formItemInputContext);
  38. if (override) {
  39. delete newContext.isFormItemInput;
  40. }
  41. if (status) {
  42. delete newContext.status;
  43. delete newContext.hasFeedback;
  44. delete newContext.feedbackIcon;
  45. }
  46. return newContext;
  47. }, [status, override, formItemInputContext]);
  48. return /*#__PURE__*/React.createElement(FormItemInputContext.Provider, {
  49. value: newFormItemInputContext
  50. }, children);
  51. };
  52. exports.NoFormStyle = NoFormStyle;
  53. const VariantContext = exports.VariantContext = /*#__PURE__*/React.createContext(undefined);