@ant-design/react-native
Version:
基于蚂蚁金服移动设计规范的 React Native 组件库
1 lines • 5.1 kB
JavaScript
"use client";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _typeof=require("@babel/runtime/helpers/typeof");Object.defineProperty(exports,"__esModule",{value:true});exports.default=ItemHolder;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _index=_interopRequireDefault(require("../../list/index"));var _style=require("../../style");var _index2=_interopRequireDefault(require("../../view/index"));var _ErrorList=_interopRequireDefault(require("../ErrorList"));var _FormItemLabel=_interopRequireDefault(require("../FormItemLabel"));var _context=require("../context");var _useDebounce=_interopRequireDefault(require("../hooks/useDebounce"));var _index3=_interopRequireDefault(require("../style/index"));var _util=require("../util");var _StatusProvider=_interopRequireDefault(require("./StatusProvider"));function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||_typeof(obj)!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var __rest=this&&this.__rest||function(s,e){var t={};for(var p in s){if(Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0)t[p]=s[p];}if(s!=null&&typeof Object.getOwnPropertySymbols==="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++){if(e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i]))t[p[i]]=s[p[i]];}return t;};function ItemHolder(props){var style=props.style,styles=props.styles,fieldId=props.fieldId,help=props.help,errors=props.errors,warnings=props.warnings,validateStatus=props.validateStatus,meta=props.meta,hasFeedback=props.hasFeedback,layout=props.layout,wrapperStyle=props.wrapperStyle,hidden=props.hidden,children=props.children,required=props.required,isRequired=props.isRequired,onSubItemMetaChange=props.onSubItemMetaChange,resetListItemProps=__rest(props,["style","styles","fieldId","help","errors","warnings","validateStatus","meta","hasFeedback","layout","wrapperStyle","hidden","children","required","isRequired","onSubItemMetaChange"]);var _React$useContext=_react.default.useContext(_context.FormContext),requiredMark=_React$useContext.requiredMark;var debounceErrors=(0,_useDebounce.default)(errors);var debounceWarnings=(0,_useDebounce.default)(warnings);var getValidateState=function getValidateState(){var isDebounce=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;var _errors=isDebounce?debounceErrors:meta.errors;var _warnings=isDebounce?debounceWarnings:meta.warnings;return(0,_util.getStatus)(_errors,_warnings,meta,'',!!hasFeedback,validateStatus);};var mergedValidateStatus=getValidateState();var _React$useContext2=_react.default.useContext(_context.FormContext),contextWrapperStyle=_React$useContext2.wrapperStyle,contextLayout=_React$useContext2.layout;var mergeLayout=layout||contextLayout;var mergedWrapperStyle=wrapperStyle||contextWrapperStyle||{};var ss=(0,_style.useTheme)({styles:styles,themeStyles:_index3.default});var itemStyles=(0,_react.useMemo)(function(){return(0,_extends2.default)((0,_extends2.default)({},styles),{Content:_reactNative.StyleSheet.flatten([(styles===null||styles===void 0?void 0:styles.Content)||{},mergeLayout==='horizontal'?{flexDirection:'row'}:{}])});},[mergeLayout,styles]);return _react.default.createElement(_context.NoStyleItemContext.Provider,{value:onSubItemMetaChange},_react.default.createElement(_StatusProvider.default,{styles:ss,meta:meta,errors:meta.errors,warnings:meta.warnings,hasFeedback:hasFeedback,validateStatus:mergedValidateStatus},_react.default.createElement(_index.default.Item,(0,_extends2.default)({},resetListItemProps,{styles:itemStyles,style:[style,hidden&&{display:'none'}]}),_react.default.createElement(_FormItemLabel.default,(0,_extends2.default)({},props,{styles:ss,requiredMark:requiredMark,required:required!==null&&required!==void 0?required:isRequired})),_react.default.createElement(_index2.default,{nativeID:fieldId,style:[ss.formItemControl,mergedWrapperStyle]},children,_react.default.createElement(_ErrorList.default,{errors:debounceErrors,warnings:debounceWarnings,help:help,helpStatus:mergedValidateStatus,styles:ss})))));}