taro-form-react 0.2.2 → 0.2.4

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.
package/dist/index.js CHANGED
@@ -17,5 +17,5 @@
17
17
  Copyright (c) 2018 Jed Watson.
18
18
  Licensed under the MIT License (MIT), see
19
19
  http://jedwatson.github.io/classnames
20
- */var En=(xn||(xn=1,function(e){!function(){var t=function(){function e(){}function t(e,t){for(var r=t.length,n=0;n<r;++n)o(e,t[n])}e.prototype=Object.create(null);var r={}.hasOwnProperty,n=/\s+/;function o(e,o){if(o){var a=typeof o;"string"===a?function(e,t){for(var r=t.split(n),o=r.length,a=0;a<o;++a)e[r[a]]=!0}(e,o):Array.isArray(o)?t(e,o):"object"===a?function(e,t){if(t.toString===Object.prototype.toString||t.toString.toString().includes("[native code]"))for(var n in t)r.call(t,n)&&(e[n]=!!t[n]);else e[t.toString()]=!0}(e,o):"number"===a&&function(e,t){e[t]=!0}(e,o)}}return function(){for(var r=arguments.length,n=Array(r),o=0;o<r;o++)n[o]=arguments[o];var a=new e;t(a,n);var i=[];for(var u in a)a[u]&&i.push(u);return i.join(" ")}}();e.exports?(t.default=t,e.exports=t):window.classNames=t}()}(An)),An.exports),Tn=n(En);const Cn=({size:e,required:r,labelClassName:n,label:o})=>{const a="small"===e?"tfr-small tfr-hide-asterisk":"tfr-normal tfr-hide-asterisk",i="small"===e?"tfr-small show-asterisk":"tfr-normal show-asterisk";return f.jsx(t.Text,{className:Tn("tfr-form-label",r?i:a,n),children:o})},Pn=({colon:e=!0,colonClassName:r})=>e&&f.jsx(t.Text,{className:Tn("tfr-form-label-colon",r),children:":"}),Rn=({label:e,required:r,size:n="normal",colon:o=!0,colonClassName:a,labelClassName:i,className:u,addonAfter:c,asteriskTookSpace:s=!0})=>f.jsxs(t.View,{className:Tn("tfr-form-label",!s&&"normal"===n&&"tfr-form-label-no-asterisk-space",u),children:[e&&f.jsx(Cn,{size:n,label:e,required:r,labelClassName:i}),f.jsx(Pn,{colon:o,colonClassName:a}),c]}),Nn=r=>{var{hidden:n,name:o,required:a,trigger:i="onChange",valuePropName:u="value",getValueFromEvent:c=(...e)=>e[0],dependencies:s,label:l=null,noStyle:d,initialValue:v,rules:y,validateTrigger:b,className:h,innerClassName:m,transform:g,children:j}=r,_=p(r,["hidden","name","required","trigger","valuePropName","getValueFromEvent","dependencies","label","noStyle","initialValue","rules","validateTrigger","className","innerClassName","transform","children"]);const w=e.useRef({validate:()=>Promise.resolve()}),{value:O,errors:F,isTouched:S,dependencyValues:k,onChange:x,onErrorsChange:A}=function({ref:t,name:r,initialValue:n,dependencies:o}){const a=e.useRef(!1),{data:i,registerField:u,unregisterField:c,setFieldValue:s,setFieldError:l,getFieldError:f,isFieldsTouched:p}=On();ue((()=>{const e=r,o=t;return u(e,o,n),a.current=!0,()=>{c(e,o),a.current=!1}}),[r]);const d=e.useMemo((()=>ur(i,r)),[i,r]),v=a.current?f(r):[],y=!!a.current&&p([r]),b=e.useCallback((e=>{s(r,e)}),[r,s]),h=e.useCallback((e=>{l(r,e)}),[r,l]);return{value:d,errors:v,isTouched:y,onChange:b,onErrorsChange:h,dependencyValues:e.useMemo((()=>(o||[]).map((e=>ur(i,e)))),[i,o])}}({ref:w,name:o,initialValue:v,dependencies:s}),{colon:E,labelProps:T,layout:C,validateFirst:P,showErrors:R,passthroughErrors:N,transformBehavior:$,updateTickLimit:V,getRequiredMessage:M}=function({colon:e,labelProps:t,layout:r,validateFirst:n,passthroughErrors:o,showErrors:a,transformBehavior:i,updateTickLimit:u,getRequiredMessage:c}={}){const{colon:s=!0,labelProps:l={},layout:f="vertical",validateFirst:p=!1,passthroughErrors:d=!1,showErrors:v=!0,transformBehavior:y="replace",updateTickLimit:b=50,getRequiredMessage:h=e=>`${e}不能为空`}=On();return{colon:Sn(e,s),labelProps:Sn(t,l),layout:Sn(r,f),validateFirst:Sn(n,p),passthroughErrors:Sn(o,d),showErrors:Sn(a,v),transformBehavior:Sn(i,y),updateTickLimit:Sn(u,b),getRequiredMessage:Sn(c,h)}}(_),z=e.useMemo((()=>a&&!(null==y?void 0:y.some((e=>"required"in e)))?[{required:!0,message:M(String(l))},...null!=y?y:[]]:y),[M,l,a,y]),D=e.useCallback((async(e={})=>{const t=await(async(e,t,r=!1)=>{const n=[],o=async t=>{var r,n,o,a,i,u,c;switch(!0){case"required"in t:if(kn(e))return t.message;break;case"pattern"in t:if(!kn(e)&&!t.pattern.test(e))return t.message;break;case"max"in t:if(!kn(e)&&e.length>(null!==(r=t.max)&&void 0!==r?r:1/0)){if("number"==typeof e&&e>(null!==(n=t.max)&&void 0!==n?n:1/0))return t.message;if((null!==(o=null==e?void 0:e.length)&&void 0!==o?o:0)>(null!==(a=t.max)&&void 0!==a?a:1/0))return t.message}break;case"min"in t:if(!kn(e)){if("number"==typeof e&&e<(null!==(i=t.min)&&void 0!==i?i:-1/0))return t.message;if((null!==(u=null==e?void 0:e.length)&&void 0!==u?u:0)<(null!==(c=t.min)&&void 0!==c?c:-1/0))return t.message}break;case"validator"in t:return await t.validator(e)}};if("parallel"===r){const e=await Promise.all(t.map((e=>o(e))));for(const t of e)t&&n.push(t)}else for(const e of t){const t=await o(e);if(t&&(n.push(t),r))return n}return n.length?n:void 0})("value"in e?e.value:O,null!=z?z:[],P);return A(null!=t?t:[]),t}),[O,z,P,A]);e.useEffect((()=>{const e={validate:D};g&&(e.transform=async()=>{const e=await g(O);return{__form_internals_should_merge:"merge"===$,value:e}}),w.current=e}),[D,g,$,O]),e.useEffect((()=>{S&&D()}),k);const I=e.useMemo((()=>null!=b?b:[i]),[b,i]),U=e.useCallback(((...e)=>{var t,r;const n=c(...e);x(n),I.includes(i)&&D({value:n}),null===(r=null===(t=null==j?void 0:j.props)||void 0===t?void 0:t[i])||void 0===r||r.call(t,...e)}),[null==j?void 0:j.props,c,D,x,i,I]),{run:B}=ce(U,{wait:V,trailing:!0});if(n)return null;const q=F.length>0,L=e.cloneElement(j,Object.assign(Object.assign(Object.assign({[i]:B,[u]:O},I.filter((e=>e!==i)).reduce(((e,t)=>{return Object.assign(Object.assign({},e),{[t]:(r=j.props[t],(...e)=>{D(),null==r||r(...e)})});var r}),{})),{className:pe(j.props.className)}),N&&{hasError:q,errors:F}));return d?L:f.jsxs(t.View,{className:pe("tfr-form-item-container","horizontal"===C&&"tfr-form-item-container-horizontal",h),children:[f.jsxs(t.View,{className:pe("tfr-form-item-inner","horizontal"===C&&"tfr-form-item-inner-horizontal","vertical"===C&&"tfr-form-item-inner-vertical",m),children:[!yn(l)&&f.jsx(Rn,Object.assign({label:l,required:a,colon:E},T)),L]}),q&&R&&F.map(((e,r)=>f.jsx(t.View,{className:"tfr-form-item-error-text",children:e},r)))]})},$n=({children:e})=>{const t=On();return f.jsx(f.Fragment,{children:e(t)})},Vn=e.forwardRef((({omitNil:t=!0,onFinish:r,onFinishFailed:n,children:o},a)=>{const i=On(),u=e.useCallback((async()=>{const e=await i.validateFields();if(e)return void(null==n||n(e));const o=t?function(e,t=!1){return Object.entries(e).reduce(((e,[r,n])=>(void 0===n||t&&null===n||(e[r]=n),e)),{})}(i.getFieldsValue(),!0):i.getFieldsValue();try{null==r||r(o)}catch(e){console.log("[taro-form-react] onFinish method errored: ",e)}return o}),[i,t,r,n]);return e.useImperativeHandle(a,(()=>({submit:u,reset:i.resetFields,setFieldValue:i.setFieldValue,getFieldValue:i.getFieldValue,getFieldsValue:i.getFieldsValue,getFieldsFormattedValue:i.getFieldsFormattedValue,setFields:i.setFields,getFields:i.getFields,resetFields:i.resetFields,setFieldError:i.setFieldError,getFieldError:i.getFieldError,validateFields:i.validateFields,isFieldsTouched:i.isFieldsTouched})),[i.getFieldError,i.getFieldValue,i.getFields,i.getFieldsFormattedValue,i.getFieldsValue,i.isFieldsTouched,i.resetFields,i.setFieldError,i.setFieldValue,i.setFields,i.validateFields,u]),o})),Mn=e.forwardRef(((e,t)=>f.jsx(Fn,Object.assign({},e,{children:f.jsx(Vn,Object.assign({ref:t},e))}))));Mn.Item=Nn,Mn.Provider=$n,Mn.Label=Rn,Mn.Keep=({fields:t})=>{const r=e.useMemo((()=>{const e=new Map;for(const r of t)e.set(_n(r),r);return Array.from(e.values())}),[t]);return r.length>0?r.map((e=>f.jsx(Nn,{name:e,hidden:!0},_n(e)))):null},Mn.Sync=t=>{const r=e.useMemo((()=>{const e=new Map;if("fields"in t)for(const r of t.fields)e.set(_n(r),r);else e.set(_n(t.source),t.source),e.set(_n(t.target),t.target);return Array.from(e.values())}),[t]),n=e.useRef(new Map);return f.jsx($n,{children:({data:e,setFieldValue:o})=>{if("fields"in t)for(const t of r){const a=_n(t),i=ur(e,t);let u=!1;if(n.current.get(a)!==i){u=!0;for(const e of r){const t=_n(e);t!==a&&(o(e,i),n.current.set(t,i))}}if(n.current.set(a,i),u)break}else{const r=_n(t.source),a=ur(e,t.source);n.current.get(r)!==a&&o(t.target,a),n.current.set(r,a)}return null}})},module.exports=Mn;
20
+ */var En=(xn||(xn=1,function(e){!function(){var t=function(){function e(){}function t(e,t){for(var r=t.length,n=0;n<r;++n)o(e,t[n])}e.prototype=Object.create(null);var r={}.hasOwnProperty,n=/\s+/;function o(e,o){if(o){var a=typeof o;"string"===a?function(e,t){for(var r=t.split(n),o=r.length,a=0;a<o;++a)e[r[a]]=!0}(e,o):Array.isArray(o)?t(e,o):"object"===a?function(e,t){if(t.toString===Object.prototype.toString||t.toString.toString().includes("[native code]"))for(var n in t)r.call(t,n)&&(e[n]=!!t[n]);else e[t.toString()]=!0}(e,o):"number"===a&&function(e,t){e[t]=!0}(e,o)}}return function(){for(var r=arguments.length,n=Array(r),o=0;o<r;o++)n[o]=arguments[o];var a=new e;t(a,n);var i=[];for(var u in a)a[u]&&i.push(u);return i.join(" ")}}();e.exports?(t.default=t,e.exports=t):window.classNames=t}()}(An)),An.exports),Tn=n(En);const Cn=({size:e,required:r,labelClassName:n,label:o})=>{const a="small"===e?"tfr-small tfr-hide-asterisk":"tfr-normal tfr-hide-asterisk",i="small"===e?"tfr-small tfr-show-asterisk":"tfr-normal tfr-show-asterisk";return f.jsx(t.Text,{className:Tn("tfr-form-label-label",r?i:a,n),children:o})},Pn=({colon:e=!0,colonClassName:r})=>e&&f.jsx(t.Text,{className:Tn("tfr-form-label-colon",r),children:":"}),Rn=({label:e,required:r,size:n="normal",colon:o=!0,colonClassName:a,labelClassName:i,className:u,addonAfter:c,asteriskTookSpace:s=!0})=>f.jsxs(t.View,{className:Tn("tfr-form-label",!s&&"normal"===n&&"tfr-form-label-no-asterisk-space",u),children:[e&&f.jsx(Cn,{size:n,label:e,required:r,labelClassName:i}),f.jsx(Pn,{colon:o,colonClassName:a}),c]}),Nn=r=>{var{hidden:n,name:o,required:a,trigger:i="onChange",valuePropName:u="value",getValueFromEvent:c=(...e)=>e[0],dependencies:s,label:l=null,noStyle:d,initialValue:v,rules:y,validateTrigger:b,className:h,innerClassName:m,transform:g,children:j}=r,_=p(r,["hidden","name","required","trigger","valuePropName","getValueFromEvent","dependencies","label","noStyle","initialValue","rules","validateTrigger","className","innerClassName","transform","children"]);const w=e.useRef({validate:()=>Promise.resolve()}),{value:O,errors:F,isTouched:S,dependencyValues:k,onChange:x,onErrorsChange:A}=function({ref:t,name:r,initialValue:n,dependencies:o}){const a=e.useRef(!1),{data:i,registerField:u,unregisterField:c,setFieldValue:s,setFieldError:l,getFieldError:f,isFieldsTouched:p}=On();ue((()=>{const e=r,o=t;return u(e,o,n),a.current=!0,()=>{c(e,o),a.current=!1}}),[r]);const d=e.useMemo((()=>ur(i,r)),[i,r]),v=a.current?f(r):[],y=!!a.current&&p([r]),b=e.useCallback((e=>{s(r,e)}),[r,s]),h=e.useCallback((e=>{l(r,e)}),[r,l]);return{value:d,errors:v,isTouched:y,onChange:b,onErrorsChange:h,dependencyValues:e.useMemo((()=>(o||[]).map((e=>ur(i,e)))),[i,o])}}({ref:w,name:o,initialValue:v,dependencies:s}),{colon:E,labelProps:T,layout:C,validateFirst:P,showErrors:R,passthroughErrors:N,transformBehavior:$,updateTickLimit:V,getRequiredMessage:M}=function({colon:e,labelProps:t,layout:r,validateFirst:n,passthroughErrors:o,showErrors:a,transformBehavior:i,updateTickLimit:u,getRequiredMessage:c}={}){const{colon:s=!0,labelProps:l={},layout:f="vertical",validateFirst:p=!1,passthroughErrors:d=!1,showErrors:v=!0,transformBehavior:y="replace",updateTickLimit:b=50,getRequiredMessage:h=e=>`${e}不能为空`}=On();return{colon:Sn(e,s),labelProps:Sn(t,l),layout:Sn(r,f),validateFirst:Sn(n,p),passthroughErrors:Sn(o,d),showErrors:Sn(a,v),transformBehavior:Sn(i,y),updateTickLimit:Sn(u,b),getRequiredMessage:Sn(c,h)}}(_),z=e.useMemo((()=>a&&!(null==y?void 0:y.some((e=>"required"in e)))?[{required:!0,message:M(String(l))},...null!=y?y:[]]:y),[M,l,a,y]),D=e.useCallback((async(e={})=>{const t=await(async(e,t,r=!1)=>{const n=[],o=async t=>{var r,n,o,a,i,u,c;switch(!0){case"required"in t:if(kn(e))return t.message;break;case"pattern"in t:if(!kn(e)&&!t.pattern.test(e))return t.message;break;case"max"in t:if(!kn(e)&&e.length>(null!==(r=t.max)&&void 0!==r?r:1/0)){if("number"==typeof e&&e>(null!==(n=t.max)&&void 0!==n?n:1/0))return t.message;if((null!==(o=null==e?void 0:e.length)&&void 0!==o?o:0)>(null!==(a=t.max)&&void 0!==a?a:1/0))return t.message}break;case"min"in t:if(!kn(e)){if("number"==typeof e&&e<(null!==(i=t.min)&&void 0!==i?i:-1/0))return t.message;if((null!==(u=null==e?void 0:e.length)&&void 0!==u?u:0)<(null!==(c=t.min)&&void 0!==c?c:-1/0))return t.message}break;case"validator"in t:return await t.validator(e)}};if("parallel"===r){const e=await Promise.all(t.map((e=>o(e))));for(const t of e)t&&n.push(t)}else for(const e of t){const t=await o(e);if(t&&(n.push(t),r))return n}return n.length?n:void 0})("value"in e?e.value:O,null!=z?z:[],P);return A(null!=t?t:[]),t}),[O,z,P,A]);e.useEffect((()=>{const e={validate:D};g&&(e.transform=async()=>{const e=await g(O);return{__form_internals_should_merge:"merge"===$,value:e}}),w.current=e}),[D,g,$,O]),e.useEffect((()=>{S&&D()}),k);const I=e.useMemo((()=>null!=b?b:[i]),[b,i]),U=e.useCallback(((...e)=>{var t,r;const n=c(...e);x(n),I.includes(i)&&D({value:n}),null===(r=null===(t=null==j?void 0:j.props)||void 0===t?void 0:t[i])||void 0===r||r.call(t,...e)}),[null==j?void 0:j.props,c,D,x,i,I]),{run:B}=ce(U,{wait:V,trailing:!0});if(n)return null;const q=F.length>0,L=e.cloneElement(j,Object.assign(Object.assign(Object.assign({[i]:B,[u]:O},I.filter((e=>e!==i)).reduce(((e,t)=>{return Object.assign(Object.assign({},e),{[t]:(r=j.props[t],(...e)=>{D(),null==r||r(...e)})});var r}),{})),{className:pe(j.props.className)}),N&&{hasError:q,errors:F}));return d?L:f.jsxs(t.View,{className:pe("tfr-form-item-container","horizontal"===C&&"tfr-form-item-container-horizontal",h),children:[f.jsxs(t.View,{className:pe("tfr-form-item-inner","horizontal"===C&&"tfr-form-item-inner-horizontal","vertical"===C&&"tfr-form-item-inner-vertical",m),children:[!yn(l)&&f.jsx(Rn,Object.assign({label:l,required:a,colon:E},T)),L]}),q&&R&&F.map(((e,r)=>f.jsx(t.View,{className:"tfr-form-item-error-text",children:e},r)))]})},$n=({children:e})=>{const t=On();return f.jsx(f.Fragment,{children:e(t)})},Vn=e.forwardRef((({omitNil:t=!0,onFinish:r,onFinishFailed:n,children:o},a)=>{const i=On(),u=e.useCallback((async()=>{const e=await i.validateFields();if(e)return void(null==n||n(e));const o=t?function(e,t=!1){return Object.entries(e).reduce(((e,[r,n])=>(void 0===n||t&&null===n||(e[r]=n),e)),{})}(i.getFieldsValue(),!0):i.getFieldsValue();try{null==r||r(o)}catch(e){console.log("[taro-form-react] onFinish method errored: ",e)}return o}),[i,t,r,n]);return e.useImperativeHandle(a,(()=>({submit:u,reset:i.resetFields,setFieldValue:i.setFieldValue,getFieldValue:i.getFieldValue,getFieldsValue:i.getFieldsValue,getFieldsFormattedValue:i.getFieldsFormattedValue,setFields:i.setFields,getFields:i.getFields,resetFields:i.resetFields,setFieldError:i.setFieldError,getFieldError:i.getFieldError,validateFields:i.validateFields,isFieldsTouched:i.isFieldsTouched})),[i.getFieldError,i.getFieldValue,i.getFields,i.getFieldsFormattedValue,i.getFieldsValue,i.isFieldsTouched,i.resetFields,i.setFieldError,i.setFieldValue,i.setFields,i.validateFields,u]),o})),Mn=e.forwardRef(((e,t)=>f.jsx(Fn,Object.assign({},e,{children:f.jsx(Vn,Object.assign({ref:t},e))}))));Mn.Item=Nn,Mn.Provider=$n,Mn.Label=Rn,Mn.Keep=({fields:t})=>{const r=e.useMemo((()=>{const e=new Map;for(const r of t)e.set(_n(r),r);return Array.from(e.values())}),[t]);return r.length>0?r.map((e=>f.jsx(Nn,{name:e,hidden:!0},_n(e)))):null},Mn.Sync=t=>{const r=e.useMemo((()=>{const e=new Map;if("fields"in t)for(const r of t.fields)e.set(_n(r),r);else e.set(_n(t.source),t.source),e.set(_n(t.target),t.target);return Array.from(e.values())}),[t]),n=e.useRef(new Map);return f.jsx($n,{children:({data:e,setFieldValue:o})=>{if("fields"in t)for(const t of r){const a=_n(t),i=ur(e,t);let u=!1;if(n.current.get(a)!==i){u=!0;for(const e of r){const t=_n(e);t!==a&&(o(e,i),n.current.set(t,i))}}if(n.current.set(a,i),u)break}else{const r=_n(t.source),a=ur(e,t.source);n.current.get(r)!==a&&o(t.target,a),n.current.set(r,a)}return null}})},module.exports=Mn;
21
21
  //# sourceMappingURL=index.js.map