import PUploadFile from "./PUploadFile"


/**
 *
 * @desc    鍜� antd form 琛ㄥ崟鏃犵紳瀵规帴锛屾帴鍙� initialValue 绛変换鎰忓€�
 *          demo   InitialAuthenticationInformation.js
 * @param   {String} value 鍒濆鍖栫殑鍦板潃
 * @param   {func} onChange(data) 杩斿洖鏂囦欢涓婁紶缁撴灉銆�
 * @return
 */
const ppHoc = (WrappedComponent) => {
  return class extends React.Component {

    onChange = (data) => {
      if (Object.prototype.toString.call(data) == "[object Array]") {
        this.props.onChange(data.join(","));
      }
    }


    render() {
      const props = {...this.props};
      const newProps = {};

      //濡傛灉涓嶆槸鏁扮粍灏辫浆鎹㈡垚鏁扮粍銆�  鍥犱负鍚庡彴杩斿洖鐨勬槸瀛楃涓层€傝€屽涓枃浠朵笂浼犺姹傜殑鏄� 鏁扮粍褰㈠紡銆�
      if (Object.prototype.toString.call(props.value) === "[object Array]") {
        newProps.init = props.value;
      } else if (Object.prototype.toString.call(props.value) === "[object String]") {
        newProps.init = props.value.split(",");
      }
      newProps.onResult = this.onChange;

      return <WrappedComponent  {...this.props} {...newProps}/>
    }
  }
}

const PFromUploadFile = ppHoc(PUploadFile);

export default PFromUploadFile;