@thecb/components 8.4.12-beta.1 → 8.4.12

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.esm.js CHANGED
@@ -38554,44 +38554,52 @@ var TableHeading_styled = styled.th.withConfig({
38554
38554
  return extraStyles;
38555
38555
  });
38556
38556
 
38557
- const validatorToPredicate = (validatorFn, emptyCase) => (
38558
- value,
38559
- ...rest
38560
- ) => (value === "" ? emptyCase : validatorFn(value, ...rest));
38557
+ const validatorToPredicate =
38558
+ (validatorFn, emptyCase) =>
38559
+ (value, ...rest) =>
38560
+ value === '' ? emptyCase : validatorFn(value, ...rest);
38561
38561
 
38562
38562
  var commonjsGlobal$1 = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
38563
38563
 
38564
+ function getDefaultExportFromCjs (x) {
38565
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
38566
+ }
38567
+
38564
38568
  var dayjs_min = {exports: {}};
38565
38569
 
38566
38570
  (function (module, exports) {
38567
- !function(t,e){module.exports=e();}(commonjsGlobal$1,(function(){var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",s="minute",u="hour",a="day",o="week",f="month",h="quarter",c="year",d="date",$="Invalid Date",l=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},m=function(t,e,n){var r=String(t);return !r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},g={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return (e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()<n.date())return -t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,f),s=n-i<0,u=e.clone().add(r+(s?-1:1),f);return +(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return {M:f,y:c,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:h}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},D="en",v={};v[D]=M;var p=function(t){return t instanceof _},S=function(t,e,n){var r;if(!t)return D;if("string"==typeof t)v[t]&&(r=t),e&&(v[t]=e,r=t);else {var i=t.name;v[i]=t,r=i;}return !n&&r&&(D=r),r||!n&&D},w=function(t,e){if(p(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},O=g;O.l=S,O.i=p,O.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=S(t.locale,null,!0),this.parse(t);}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(l);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.$x=t.x||{},this.init();},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds();},m.$utils=function(){return O},m.isValid=function(){return !(this.$d.toString()===$)},m.isSame=function(t,e){var n=w(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return w(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<w(t)},m.$g=function(t,e,n){return O.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!O.u(e)||e,h=O.p(t),$=function(t,e){var i=O.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},l=function(t,e){return O.w(n.toDate()[t].apply(n.toDate("s"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,g="set"+(this.$u?"UTC":"");switch(h){case c:return r?$(1,0):$(31,11);case f:return r?$(1,M):$(0,M+1);case o:var D=this.$locale().weekStart||0,v=(y<D?y+7:y)-D;return $(r?m-v:m+(6-v),M);case a:case d:return l(g+"Hours",0);case u:return l(g+"Minutes",1);case s:return l(g+"Seconds",2);case i:return l(g+"Milliseconds",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var n,o=O.p(t),h="set"+(this.$u?"UTC":""),$=(n={},n[a]=h+"Date",n[d]=h+"Date",n[f]=h+"Month",n[c]=h+"FullYear",n[u]=h+"Hours",n[s]=h+"Minutes",n[i]=h+"Seconds",n[r]=h+"Milliseconds",n)[o],l=o===a?this.$D+(e-this.$W):e;if(o===f||o===c){var y=this.clone().set(d,1);y.$d[$](l),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d;}else $&&this.$d[$](l);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[O.p(t)]()},m.add=function(r,h){var d,$=this;r=Number(r);var l=O.p(h),y=function(t){var e=w($);return O.w(e.date(e.date()+Math.round(t*r)),$)};if(l===f)return this.set(f,this.$M+r);if(l===c)return this.set(c,this.$y+r);if(l===a)return y(1);if(l===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[l]||1,m=this.$d.getTime()+r*M;return O.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||$;var r=t||"YYYY-MM-DDTHH:mm:ssZ",i=O.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,f=n.months,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].substr(0,s)},c=function(t){return O.s(s%12||12,t,"0")},d=n.meridiem||function(t,e,n){var r=t<12?"AM":"PM";return n?r.toLowerCase():r},l={YY:String(this.$y).slice(-2),YYYY:this.$y,M:a+1,MM:O.s(a+1,2,"0"),MMM:h(n.monthsShort,a,f,3),MMMM:h(f,a),D:this.$D,DD:O.s(this.$D,2,"0"),d:String(this.$W),dd:h(n.weekdaysMin,this.$W,o,2),ddd:h(n.weekdaysShort,this.$W,o,3),dddd:o[this.$W],H:String(s),HH:O.s(s,2,"0"),h:c(1),hh:c(2),a:d(s,u,!0),A:d(s,u,!1),m:String(u),mm:O.s(u,2,"0"),s:String(this.$s),ss:O.s(this.$s,2,"0"),SSS:O.s(this.$ms,3,"0"),Z:i};return r.replace(y,(function(t,e){return e||l[t]||i.replace(":","")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,$){var l,y=O.p(d),M=w(r),m=(M.utcOffset()-this.utcOffset())*e,g=this-M,D=O.m(this,M);return D=(l={},l[c]=D/12,l[f]=D,l[h]=D/3,l[o]=(g-m)/6048e5,l[a]=(g-m)/864e5,l[u]=g/n,l[s]=g/e,l[i]=g/t,l)[y]||g,$?D:O.a(D)},m.daysInMonth=function(){return this.endOf(f).$D},m.$locale=function(){return v[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=S(t,e,!0);return r&&(n.$L=r),n},m.clone=function(){return O.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),b=_.prototype;return w.prototype=b,[["$ms",r],["$s",i],["$m",s],["$H",u],["$W",a],["$M",f],["$y",c],["$D",d]].forEach((function(t){b[t[1]]=function(e){return this.$g(e,t[0],t[1])};})),w.extend=function(t,e){return t.$i||(t(e,_,w),t.$i=!0),w},w.locale=S,w.isDayjs=p,w.unix=function(t){return w(1e3*t)},w.en=v[D],w.Ls=v,w.p={},w}));
38568
- }(dayjs_min));
38571
+ !function(t,e){module.exports=e();}(commonjsGlobal$1,(function(){var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",s="minute",u="hour",a="day",o="week",f="month",h="quarter",c="year",d="date",l="Invalid Date",$=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return "["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},m=function(t,e,n){var r=String(t);return !r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return (e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()<n.date())return -t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,f),s=n-i<0,u=e.clone().add(r+(s?-1:1),f);return +(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return {M:f,y:c,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:h}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},g="en",D={};D[g]=M;var p=function(t){return t instanceof _},S=function t(e,n,r){var i;if(!e)return g;if("string"==typeof e){var s=e.toLowerCase();D[s]&&(i=s),n&&(D[s]=n,i=s);var u=e.split("-");if(!i&&u.length>1)return t(u[0])}else {var a=e.name;D[a]=e,i=a;}return !r&&i&&(g=i),i||!r&&g},w=function(t,e){if(p(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},O=v;O.l=S,O.i=p,O.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=S(t.locale,null,!0),this.parse(t);}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.$x=t.x||{},this.init();},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds();},m.$utils=function(){return O},m.isValid=function(){return !(this.$d.toString()===l)},m.isSame=function(t,e){var n=w(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return w(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<w(t)},m.$g=function(t,e,n){return O.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!O.u(e)||e,h=O.p(t),l=function(t,e){var i=O.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},$=function(t,e){return O.w(n.toDate()[t].apply(n.toDate("s"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,v="set"+(this.$u?"UTC":"");switch(h){case c:return r?l(1,0):l(31,11);case f:return r?l(1,M):l(0,M+1);case o:var g=this.$locale().weekStart||0,D=(y<g?y+7:y)-g;return l(r?m-D:m+(6-D),M);case a:case d:return $(v+"Hours",0);case u:return $(v+"Minutes",1);case s:return $(v+"Seconds",2);case i:return $(v+"Milliseconds",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var n,o=O.p(t),h="set"+(this.$u?"UTC":""),l=(n={},n[a]=h+"Date",n[d]=h+"Date",n[f]=h+"Month",n[c]=h+"FullYear",n[u]=h+"Hours",n[s]=h+"Minutes",n[i]=h+"Seconds",n[r]=h+"Milliseconds",n)[o],$=o===a?this.$D+(e-this.$W):e;if(o===f||o===c){var y=this.clone().set(d,1);y.$d[l]($),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d;}else l&&this.$d[l]($);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[O.p(t)]()},m.add=function(r,h){var d,l=this;r=Number(r);var $=O.p(h),y=function(t){var e=w(l);return O.w(e.date(e.date()+Math.round(t*r)),l)};if($===f)return this.set(f,this.$M+r);if($===c)return this.set(c,this.$y+r);if($===a)return y(1);if($===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[$]||1,m=this.$d.getTime()+r*M;return O.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||l;var r=t||"YYYY-MM-DDTHH:mm:ssZ",i=O.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,f=n.months,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].slice(0,s)},c=function(t){return O.s(s%12||12,t,"0")},d=n.meridiem||function(t,e,n){var r=t<12?"AM":"PM";return n?r.toLowerCase():r},$={YY:String(this.$y).slice(-2),YYYY:this.$y,M:a+1,MM:O.s(a+1,2,"0"),MMM:h(n.monthsShort,a,f,3),MMMM:h(f,a),D:this.$D,DD:O.s(this.$D,2,"0"),d:String(this.$W),dd:h(n.weekdaysMin,this.$W,o,2),ddd:h(n.weekdaysShort,this.$W,o,3),dddd:o[this.$W],H:String(s),HH:O.s(s,2,"0"),h:c(1),hh:c(2),a:d(s,u,!0),A:d(s,u,!1),m:String(u),mm:O.s(u,2,"0"),s:String(this.$s),ss:O.s(this.$s,2,"0"),SSS:O.s(this.$ms,3,"0"),Z:i};return r.replace(y,(function(t,e){return e||$[t]||i.replace(":","")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,l){var $,y=O.p(d),M=w(r),m=(M.utcOffset()-this.utcOffset())*e,v=this-M,g=O.m(this,M);return g=($={},$[c]=g/12,$[f]=g,$[h]=g/3,$[o]=(v-m)/6048e5,$[a]=(v-m)/864e5,$[u]=v/n,$[s]=v/e,$[i]=v/t,$)[y]||v,l?g:O.a(g)},m.daysInMonth=function(){return this.endOf(f).$D},m.$locale=function(){return D[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=S(t,e,!0);return r&&(n.$L=r),n},m.clone=function(){return O.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),T=_.prototype;return w.prototype=T,[["$ms",r],["$s",i],["$m",s],["$H",u],["$W",a],["$M",f],["$y",c],["$D",d]].forEach((function(t){T[t[1]]=function(e){return this.$g(e,t[0],t[1])};})),w.extend=function(t,e){return t.$i||(t(e,_,w),t.$i=!0),w},w.locale=S,w.isDayjs=p,w.unix=function(t){return w(1e3*t)},w.en=D[g],w.Ls=D,w.p={},w}));
38572
+ } (dayjs_min));
38569
38573
 
38570
- var dayjs = dayjs_min.exports;
38574
+ var dayjs_minExports = dayjs_min.exports;
38575
+ var dayjs = /*@__PURE__*/getDefaultExportFromCjs(dayjs_minExports);
38571
38576
 
38572
38577
  var customParseFormat$1 = {exports: {}};
38573
38578
 
38574
38579
  (function (module, exports) {
38575
- !function(t,e){module.exports=e();}(commonjsGlobal$1,(function(){var t={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},e=/(\[[^[]*\])|([-:/.()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d\d/,r=/\d\d?/,i=/\d*[^\s\d-_:/()]+/,o={},s=function(t){return (t=+t)+(t>68?1900:2e3)};var a=function(t){return function(e){this[t]=+e;}},f=[/[+-]\d\d:?(\d\d)?|Z/,function(t){(this.zone||(this.zone={})).offset=function(t){if(!t)return 0;if("Z"===t)return 0;var e=t.match(/([+-]|\d\d)/g),n=60*e[1]+(+e[2]||0);return 0===n?0:"+"===e[0]?-n:n}(t);}],u=function(t){var e=o[t];return e&&(e.indexOf?e:e.s.concat(e.f))},h=function(t,e){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(t.indexOf(r(i,0,e))>-1){n=i>12;break}}else n=t===(e?"pm":"PM");return n},d={A:[i,function(t){this.afternoon=h(t,!1);}],a:[i,function(t){this.afternoon=h(t,!0);}],S:[/\d/,function(t){this.milliseconds=100*+t;}],SS:[n,function(t){this.milliseconds=10*+t;}],SSS:[/\d{3}/,function(t){this.milliseconds=+t;}],s:[r,a("seconds")],ss:[r,a("seconds")],m:[r,a("minutes")],mm:[r,a("minutes")],H:[r,a("hours")],h:[r,a("hours")],HH:[r,a("hours")],hh:[r,a("hours")],D:[r,a("day")],DD:[n,a("day")],Do:[i,function(t){var e=o.ordinal,n=t.match(/\d+/);if(this.day=n[0],e)for(var r=1;r<=31;r+=1)e(r).replace(/\[|\]/g,"")===t&&(this.day=r);}],M:[r,a("month")],MM:[n,a("month")],MMM:[i,function(t){var e=u("months"),n=(u("monthsShort")||e.map((function(t){return t.substr(0,3)}))).indexOf(t)+1;if(n<1)throw new Error;this.month=n%12||n;}],MMMM:[i,function(t){var e=u("months").indexOf(t)+1;if(e<1)throw new Error;this.month=e%12||e;}],Y:[/[+-]?\d+/,a("year")],YY:[n,function(t){this.year=s(t);}],YYYY:[/\d{4}/,a("year")],Z:f,ZZ:f};function c(n){var r,i;r=n,i=o&&o.formats;for(var s=(n=r.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(e,n,r){var o=r&&r.toUpperCase();return n||i[r]||t[r]||i[o].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(t,e,n){return e||n.slice(1)}))}))).match(e),a=s.length,f=0;f<a;f+=1){var u=s[f],h=d[u],c=h&&h[0],l=h&&h[1];s[f]=l?{regex:c,parser:l}:u.replace(/^\[|\]$/g,"");}return function(t){for(var e={},n=0,r=0;n<a;n+=1){var i=s[n];if("string"==typeof i)r+=i.length;else {var o=i.regex,f=i.parser,u=t.substr(r),h=o.exec(u)[0];f.call(e,h),t=t.replace(h,"");}}return function(t){var e=t.afternoon;if(void 0!==e){var n=t.hours;e?n<12&&(t.hours+=12):12===n&&(t.hours=0),delete t.afternoon;}}(e),e}}return function(t,e,n){n.p.customParseFormat=!0,t&&t.parseTwoDigitYear&&(s=t.parseTwoDigitYear);var r=e.prototype,i=r.parse;r.parse=function(t){var e=t.date,r=t.utc,s=t.args;this.$u=r;var a=s[1];if("string"==typeof a){var f=!0===s[2],u=!0===s[3],h=f||u,d=s[2];u&&(d=s[2]),o=this.$locale(),!f&&d&&(o=n.Ls[d]),this.$d=function(t,e,n){try{if(["x","X"].indexOf(e)>-1)return new Date(("X"===e?1e3:1)*t);var r=c(e)(t),i=r.year,o=r.month,s=r.day,a=r.hours,f=r.minutes,u=r.seconds,h=r.milliseconds,d=r.zone,l=new Date,m=s||(i||o?1:l.getDate()),M=i||l.getFullYear(),Y=0;i&&!o||(Y=o>0?o-1:l.getMonth());var p=a||0,v=f||0,D=u||0,g=h||0;return d?new Date(Date.UTC(M,Y,m,p,v,D,g+60*d.offset*1e3)):n?new Date(Date.UTC(M,Y,m,p,v,D,g)):new Date(M,Y,m,p,v,D,g)}catch(t){return new Date("")}}(e,a,r),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),h&&e!=this.format(a)&&(this.$d=new Date("")),o={};}else if(a instanceof Array)for(var l=a.length,m=1;m<=l;m+=1){s[1]=a[m-1];var M=n.apply(this,s);if(M.isValid()){this.$d=M.$d,this.$L=M.$L,this.init();break}m===l&&(this.$d=new Date(""));}else i.call(this,t);};}}));
38576
- }(customParseFormat$1));
38580
+ !function(e,t){module.exports=t();}(commonjsGlobal$1,(function(){var e={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d\d/,r=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,o={},s=function(e){return (e=+e)+(e>68?1900:2e3)};var a=function(e){return function(t){this[e]=+t;}},f=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var t=e.match(/([+-]|\d\d)/g),n=60*t[1]+(+t[2]||0);return 0===n?0:"+"===t[0]?-n:n}(e);}],h=function(e){var t=o[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(e.indexOf(r(i,0,t))>-1){n=i>12;break}}else n=e===(t?"pm":"PM");return n},d={A:[i,function(e){this.afternoon=u(e,!1);}],a:[i,function(e){this.afternoon=u(e,!0);}],S:[/\d/,function(e){this.milliseconds=100*+e;}],SS:[n,function(e){this.milliseconds=10*+e;}],SSS:[/\d{3}/,function(e){this.milliseconds=+e;}],s:[r,a("seconds")],ss:[r,a("seconds")],m:[r,a("minutes")],mm:[r,a("minutes")],H:[r,a("hours")],h:[r,a("hours")],HH:[r,a("hours")],hh:[r,a("hours")],D:[r,a("day")],DD:[n,a("day")],Do:[i,function(e){var t=o.ordinal,n=e.match(/\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\[|\]/g,"")===e&&(this.day=r);}],M:[r,a("month")],MM:[n,a("month")],MMM:[i,function(e){var t=h("months"),n=(h("monthsShort")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw new Error;this.month=n%12||n;}],MMMM:[i,function(e){var t=h("months").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t;}],Y:[/[+-]?\d+/,a("year")],YY:[n,function(e){this.year=s(e);}],YYYY:[/\d{4}/,a("year")],Z:f,ZZ:f};function c(n){var r,i;r=n,i=o&&o.formats;for(var s=(n=r.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var o=r&&r.toUpperCase();return n||i[r]||e[r]||i[o].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),a=s.length,f=0;f<a;f+=1){var h=s[f],u=d[h],c=u&&u[0],l=u&&u[1];s[f]=l?{regex:c,parser:l}:h.replace(/^\[|\]$/g,"");}return function(e){for(var t={},n=0,r=0;n<a;n+=1){var i=s[n];if("string"==typeof i)r+=i.length;else {var o=i.regex,f=i.parser,h=e.slice(r),u=o.exec(h)[0];f.call(t,u),e=e.replace(u,"");}}return function(e){var t=e.afternoon;if(void 0!==t){var n=e.hours;t?n<12&&(e.hours+=12):12===n&&(e.hours=0),delete e.afternoon;}}(t),t}}return function(e,t,n){n.p.customParseFormat=!0,e&&e.parseTwoDigitYear&&(s=e.parseTwoDigitYear);var r=t.prototype,i=r.parse;r.parse=function(e){var t=e.date,r=e.utc,s=e.args;this.$u=r;var a=s[1];if("string"==typeof a){var f=!0===s[2],h=!0===s[3],u=f||h,d=s[2];h&&(d=s[2]),o=this.$locale(),!f&&d&&(o=n.Ls[d]),this.$d=function(e,t,n){try{if(["x","X"].indexOf(t)>-1)return new Date(("X"===t?1e3:1)*e);var r=c(t)(e),i=r.year,o=r.month,s=r.day,a=r.hours,f=r.minutes,h=r.seconds,u=r.milliseconds,d=r.zone,l=new Date,m=s||(i||o?1:l.getDate()),M=i||l.getFullYear(),Y=0;i&&!o||(Y=o>0?o-1:l.getMonth());var p=a||0,v=f||0,D=h||0,g=u||0;return d?new Date(Date.UTC(M,Y,m,p,v,D,g+60*d.offset*1e3)):n?new Date(Date.UTC(M,Y,m,p,v,D,g)):new Date(M,Y,m,p,v,D,g)}catch(e){return new Date("")}}(t,a,r),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(a)&&(this.$d=new Date("")),o={};}else if(a instanceof Array)for(var l=a.length,m=1;m<=l;m+=1){s[1]=a[m-1];var M=n.apply(this,s);if(M.isValid()){this.$d=M.$d,this.$L=M.$L,this.init();break}m===l&&(this.$d=new Date(""));}else i.call(this,e);};}}));
38581
+ } (customParseFormat$1));
38577
38582
 
38578
- var customParseFormat = customParseFormat$1.exports;
38583
+ var customParseFormatExports = customParseFormat$1.exports;
38584
+ var customParseFormat = /*@__PURE__*/getDefaultExportFromCjs(customParseFormatExports);
38579
38585
 
38580
38586
  var isSameOrBefore$1 = {exports: {}};
38581
38587
 
38582
38588
  (function (module, exports) {
38583
- !function(e,i){module.exports=i();}(commonjsGlobal$1,(function(){return function(e,i){i.prototype.isSameOrBefore=function(e,i){return this.isSame(e,i)||this.isBefore(e,i)};}}));
38584
- }(isSameOrBefore$1));
38589
+ !function(e,i){module.exports=i();}(commonjsGlobal$1,(function(){return function(e,i){i.prototype.isSameOrBefore=function(e,i){return this.isSame(e,i)||this.isBefore(e,i)};}}));
38590
+ } (isSameOrBefore$1));
38585
38591
 
38586
- var isSameOrBefore = isSameOrBefore$1.exports;
38592
+ var isSameOrBeforeExports = isSameOrBefore$1.exports;
38593
+ var isSameOrBefore = /*@__PURE__*/getDefaultExportFromCjs(isSameOrBeforeExports);
38587
38594
 
38588
38595
  var isSameOrAfter$1 = {exports: {}};
38589
38596
 
38590
38597
  (function (module, exports) {
38591
- !function(e,t){module.exports=t();}(commonjsGlobal$1,(function(){return function(e,t){t.prototype.isSameOrAfter=function(e,t){return this.isSame(e,t)||this.isAfter(e,t)};}}));
38592
- }(isSameOrAfter$1));
38598
+ !function(e,t){module.exports=t();}(commonjsGlobal$1,(function(){return function(e,t){t.prototype.isSameOrAfter=function(e,t){return this.isSame(e,t)||this.isAfter(e,t)};}}));
38599
+ } (isSameOrAfter$1));
38593
38600
 
38594
- var isSameOrAfter = isSameOrAfter$1.exports;
38601
+ var isSameOrAfterExports = isSameOrAfter$1.exports;
38602
+ var isSameOrAfter = /*@__PURE__*/getDefaultExportFromCjs(isSameOrAfterExports);
38595
38603
 
38596
38604
  /* eslint-disable no-unused-vars */
38597
38605
 
@@ -38607,24 +38615,24 @@ dayjs.extend(isSameOrAfter);
38607
38615
 
38608
38616
  let validatorFns = {};
38609
38617
 
38610
- const INCLUDED_IN = "validator/INCLUDED_IN";
38611
- const INCLUDED_IN_ERROR = "error/INCLUDED_IN";
38618
+ const INCLUDED_IN = 'validator/INCLUDED_IN';
38619
+ const INCLUDED_IN_ERROR = 'error/INCLUDED_IN';
38612
38620
  const includedIn = createValidator(INCLUDED_IN, INCLUDED_IN_ERROR);
38613
38621
  validatorFns[INCLUDED_IN] = (value, args, form) =>
38614
38622
  Array.isArray(args[0]) ? args[0].includes(value) : args[0] === value;
38615
38623
 
38616
- const REQUIRED = "validator/REQUIRED";
38617
- const REQUIRED_ERROR = "error/REQUIRED";
38624
+ const REQUIRED = 'validator/REQUIRED';
38625
+ const REQUIRED_ERROR = 'error/REQUIRED';
38618
38626
  const required = createValidator(REQUIRED, REQUIRED_ERROR);
38619
- validatorFns[REQUIRED] = (value, args, form) => value !== "";
38627
+ validatorFns[REQUIRED] = (value, args, form) => value !== '';
38620
38628
 
38621
- const ONLY_INTEGERS = "validator/ONLY_INTEGERS";
38622
- const ONLY_INTEGERS_ERROR = "error/ONLY_INTEGERS";
38629
+ const ONLY_INTEGERS = 'validator/ONLY_INTEGERS';
38630
+ const ONLY_INTEGERS_ERROR = 'error/ONLY_INTEGERS';
38623
38631
  const onlyIntegers = createValidator(ONLY_INTEGERS, ONLY_INTEGERS_ERROR);
38624
38632
  validatorFns[ONLY_INTEGERS] = (value, args, form) => /^(-?\d+)?$/.test(value);
38625
38633
 
38626
- const ONLY_NATURALS = "validator/ONLY_NATURALS";
38627
- const ONLY_NATURALS_ERROR = "error/ONLY_NATURALS";
38634
+ const ONLY_NATURALS = 'validator/ONLY_NATURALS';
38635
+ const ONLY_NATURALS_ERROR = 'error/ONLY_NATURALS';
38628
38636
  const onlyNaturals = createValidator(ONLY_NATURALS, ONLY_NATURALS_ERROR);
38629
38637
  validatorFns[ONLY_NATURALS] = (value, args, form) => /^(\d+)?$/.test(value);
38630
38638
 
@@ -38637,8 +38645,8 @@ not tested as validation function
38637
38645
  to validate exp date instead use combo of:
38638
38646
  required(), hasLength(), isValidMonth(), dateAfterToday()
38639
38647
  */
38640
- const ONLY_EXPIRATION_DATE = "validator/ONLY_EXPIRATION_DATE";
38641
- const ONLY_EXPIRATION_DATE_ERROR = "error/ONLY_EXPIRATION_DATE";
38648
+ const ONLY_EXPIRATION_DATE = 'validator/ONLY_EXPIRATION_DATE';
38649
+ const ONLY_EXPIRATION_DATE_ERROR = 'error/ONLY_EXPIRATION_DATE';
38642
38650
  const onlyExpirationDate = createValidator(
38643
38651
  ONLY_EXPIRATION_DATE,
38644
38652
  ONLY_EXPIRATION_DATE_ERROR
@@ -38646,64 +38654,63 @@ const onlyExpirationDate = createValidator(
38646
38654
  validatorFns[ONLY_EXPIRATION_DATE] = (value, args, form) =>
38647
38655
  /^(\d?\d?\/?\d?\d?)?$/.test(value);
38648
38656
 
38649
- const NUMBER_LESS_THAN = "validator/NUMBER_LESS_THAN";
38650
- const NUMBER_LESS_THAN_ERROR = "error/NUMBER_LESS_THAN";
38657
+ const NUMBER_LESS_THAN = 'validator/NUMBER_LESS_THAN';
38658
+ const NUMBER_LESS_THAN_ERROR = 'error/NUMBER_LESS_THAN';
38651
38659
  const numberLessThan = createValidator(
38652
38660
  NUMBER_LESS_THAN,
38653
38661
  NUMBER_LESS_THAN_ERROR
38654
38662
  );
38655
38663
  validatorFns[NUMBER_LESS_THAN] = (value, args, form) => {
38656
- if (value === "") {
38664
+ if (value === '') {
38657
38665
  return true;
38658
38666
  }
38659
38667
  return Number(value) < args[0];
38660
38668
  };
38661
38669
 
38662
- const NUMBER_LESS_THAN_OR_EQUAL_TO =
38663
- "validator/NUMBER_LESS_THAN_OR_EQUAL_TO";
38670
+ const NUMBER_LESS_THAN_OR_EQUAL_TO = 'validator/NUMBER_LESS_THAN_OR_EQUAL_TO';
38664
38671
  const NUMBER_LESS_THAN_OR_EQUAL_TO_ERROR =
38665
- "error/NUMBER_LESS_THAN_OR_EQUAL_TO";
38672
+ 'error/NUMBER_LESS_THAN_OR_EQUAL_TO';
38666
38673
  const numberLessThanOrEqualTo = createValidator(
38667
38674
  NUMBER_LESS_THAN_OR_EQUAL_TO,
38668
38675
  NUMBER_LESS_THAN_OR_EQUAL_TO_ERROR
38669
38676
  );
38670
38677
  validatorFns[NUMBER_LESS_THAN_OR_EQUAL_TO] = (value, args, form) => {
38671
- if (value === "") {
38678
+ if (value === '') {
38672
38679
  return true;
38673
38680
  }
38674
38681
  return Number(value) <= args[0];
38675
38682
  };
38676
38683
 
38677
- const NUMBER_GREATER_THAN = "validator/NUMBER_GREATER_THAN";
38678
- const NUMBER_GREATER_THAN_ERROR = "error/NUMBER_GREATER_THAN";
38684
+ const NUMBER_GREATER_THAN = 'validator/NUMBER_GREATER_THAN';
38685
+ const NUMBER_GREATER_THAN_ERROR = 'error/NUMBER_GREATER_THAN';
38679
38686
  const numberGreaterThan = createValidator(
38680
38687
  NUMBER_GREATER_THAN,
38681
38688
  NUMBER_GREATER_THAN_ERROR
38682
38689
  );
38683
38690
  validatorFns[NUMBER_GREATER_THAN] = (value, args, form) => {
38684
- if (value === "") {
38691
+ if (value === '') {
38685
38692
  return true;
38686
38693
  }
38687
38694
  return Number(value) > args[0];
38688
38695
  };
38689
38696
 
38690
38697
  const NUMBER_GREATER_THAN_OR_EQUAL_TO =
38691
- "validator/NUMBER_GREATER_THAN_OR_EQUAL_TO";
38698
+ 'validator/NUMBER_GREATER_THAN_OR_EQUAL_TO';
38692
38699
  const NUMBER_GREATER_THAN_OR_EQUAL_TO_ERROR =
38693
- "error/NUMBER_GREATER_THAN_OR_EQUAL_TO";
38700
+ 'error/NUMBER_GREATER_THAN_OR_EQUAL_TO';
38694
38701
  const numberGreaterThanOrEqualTo = createValidator(
38695
38702
  NUMBER_GREATER_THAN_OR_EQUAL_TO,
38696
38703
  NUMBER_GREATER_THAN_OR_EQUAL_TO_ERROR
38697
38704
  );
38698
38705
  validatorFns[NUMBER_GREATER_THAN_OR_EQUAL_TO] = (value, args, form) => {
38699
- if (value === "") {
38706
+ if (value === '') {
38700
38707
  return true;
38701
38708
  }
38702
38709
  return Number(value) >= args[0];
38703
38710
  };
38704
38711
 
38705
- const MATCHES_FIELD = "validator/MATCHES_FIELD";
38706
- const MATCHES_FIELD_ERROR$1 = "error/MATCHES_FIELD";
38712
+ const MATCHES_FIELD = 'validator/MATCHES_FIELD';
38713
+ const MATCHES_FIELD_ERROR$1 = 'error/MATCHES_FIELD';
38707
38714
  const matchesField = createValidator(MATCHES_FIELD, MATCHES_FIELD_ERROR$1);
38708
38715
  validatorFns[MATCHES_FIELD] = (value, args, form) => {
38709
38716
  const dependentField = form[args[0]];
@@ -38716,7 +38723,7 @@ validatorFns[MATCHES_FIELD] = (value, args, form) => {
38716
38723
  return value === dependentFieldValue;
38717
38724
  };
38718
38725
 
38719
- const validateWhenErrorMessage = type =>
38726
+ const validateWhenErrorMessage = (type) =>
38720
38727
  `${type} was passed to validateWhen, but that validator type does not exist.
38721
38728
  Please check that you are only calling validator creator functions exported from
38722
38729
  redux-freeform in your form config and that you didn't forget to
@@ -38724,25 +38731,21 @@ const validateWhenErrorMessage = type =>
38724
38731
  createFormState). Also make sure you aren't passing validateWhen() to validateWhen
38725
38732
  as the primary validator.`;
38726
38733
 
38727
- const VALIDATE_WHEN = "validator/VALIDATE_WHEN";
38728
- const VALIDATE_WHEN_ERROR = "error/VALIDATE_WHEN";
38729
- const validateWhen = (
38730
- dependentValidator,
38731
- primaryValidator,
38732
- optionalFieldName
38733
- ) => ({
38734
+ const VALIDATE_WHEN = 'validator/VALIDATE_WHEN';
38735
+ const VALIDATE_WHEN_ERROR = 'error/VALIDATE_WHEN';
38736
+ const validateWhen = (dependentValidator, primaryValidator, optionalFieldName) => ({
38734
38737
  type: VALIDATE_WHEN,
38735
38738
  args: [dependentValidator, primaryValidator, optionalFieldName],
38736
- error: dependentValidator.error
38739
+ error: dependentValidator.error,
38737
38740
  });
38738
38741
  validateWhen.error = VALIDATE_WHEN_ERROR;
38739
38742
  validatorFns[VALIDATE_WHEN] = (value, args, form) => {
38740
38743
  const [dependentValidator, primaryValidator, optionalFieldName] = args;
38741
- const dependsOnOtherField = typeof optionalFieldName === "string";
38744
+ const dependsOnOtherField = typeof optionalFieldName === 'string';
38742
38745
 
38743
38746
  if (
38744
38747
  primaryValidator.type === undefined ||
38745
- typeof validatorFns[primaryValidator.type] !== "function"
38748
+ typeof validatorFns[primaryValidator.type] !== 'function'
38746
38749
  ) {
38747
38750
  throw new Error(validateWhenErrorMessage(primaryValidator.type));
38748
38751
  }
@@ -38766,26 +38769,22 @@ validatorFns[VALIDATE_WHEN] = (value, args, form) => {
38766
38769
  );
38767
38770
 
38768
38771
  return primaryPredicatePassed
38769
- ? validatorFns[dependentValidator.type](
38770
- value,
38771
- dependentValidator.args,
38772
- form
38773
- )
38772
+ ? validatorFns[dependentValidator.type](value, dependentValidator.args, form)
38774
38773
  : true;
38775
38774
  };
38776
38775
 
38777
- const validateSumErrorMessage = type =>
38776
+ const validateSumErrorMessage = (type) =>
38778
38777
  `${type} was passed to validateSum, but that validator type does not exist.
38779
38778
  Please check that you are only calling validator creator functions exported from
38780
38779
  redux-freeform in your form config and that you didn't forget to
38781
38780
  invoke the validator creator (you cannot pass the functions themselves to
38782
38781
  createFormState).`;
38783
- const VALIDATE_SUM = "validator/VALIDATE_SUM";
38784
- const VALIDATE_SUM_ERROR = "error/VALIDATE_SUM";
38782
+ const VALIDATE_SUM = 'validator/VALIDATE_SUM';
38783
+ const VALIDATE_SUM_ERROR = 'error/VALIDATE_SUM';
38785
38784
  const validateSum = (validator, fieldNamesArray) => ({
38786
38785
  type: VALIDATE_SUM,
38787
38786
  args: [validator, fieldNamesArray],
38788
- error: validator.error
38787
+ error: validator.error,
38789
38788
  });
38790
38789
  validateSum.error = VALIDATE_SUM_ERROR;
38791
38790
  validatorFns[VALIDATE_SUM] = (value, args, form) => {
@@ -38793,7 +38792,7 @@ validatorFns[VALIDATE_SUM] = (value, args, form) => {
38793
38792
 
38794
38793
  if (
38795
38794
  validator.type === undefined ||
38796
- typeof validatorFns[validator.type] !== "function"
38795
+ typeof validatorFns[validator.type] !== 'function'
38797
38796
  ) {
38798
38797
  throw new Error(validateSumErrorMessage(validator.type));
38799
38798
  }
@@ -38814,37 +38813,35 @@ validatorFns[VALIDATE_SUM] = (value, args, form) => {
38814
38813
  return validatorFns[validator.type](sum, validator.args, form);
38815
38814
  };
38816
38815
 
38817
- const HAS_LENGTH = "validator/HAS_LENGTH";
38818
- const HAS_LENGTH_ERROR = "error/HAS_LENGTH";
38816
+ const HAS_LENGTH = 'validator/HAS_LENGTH';
38817
+ const HAS_LENGTH_ERROR = 'error/HAS_LENGTH';
38819
38818
  const hasLength = createValidator(HAS_LENGTH, HAS_LENGTH_ERROR);
38820
38819
  validatorFns[HAS_LENGTH] = (value, args, form) => {
38821
- if (value === "") {
38820
+ if (value === '') {
38822
38821
  return true;
38823
38822
  }
38824
38823
  const min = args[0];
38825
38824
  const max = args[1];
38826
38825
  if (max == undefined || min == undefined) {
38827
38826
  throw new Error(
38828
- "Max and min need to be defined for hasLength, both or one of them is undefined"
38827
+ 'Max and min need to be defined for hasLength, both or one of them is undefined'
38829
38828
  );
38830
38829
  }
38831
38830
  if (max < min) {
38832
- throw new Error(
38833
- "hasLength validator was passed a min greater than the max"
38834
- );
38831
+ throw new Error('hasLength validator was passed a min greater than the max');
38835
38832
  }
38836
38833
  const valueLength = value.length;
38837
38834
  return max >= valueLength && valueLength >= min;
38838
38835
  };
38839
38836
 
38840
- const DATE_BEFORE_TODAY = "validator/DATE_BEFORE_TODAY";
38841
- const DATE_BEFORE_TODAY_ERROR = "error/DATE_BEFORE_TODAY";
38837
+ const DATE_BEFORE_TODAY = 'validator/DATE_BEFORE_TODAY';
38838
+ const DATE_BEFORE_TODAY_ERROR = 'error/DATE_BEFORE_TODAY';
38842
38839
  const dateBeforeToday = createValidator(
38843
38840
  DATE_BEFORE_TODAY,
38844
38841
  DATE_BEFORE_TODAY_ERROR
38845
38842
  );
38846
38843
  validatorFns[DATE_BEFORE_TODAY] = (value, args, form) => {
38847
- if (value === "") {
38844
+ if (value === '') {
38848
38845
  return true;
38849
38846
  }
38850
38847
  const dateFormat = args[0];
@@ -38853,7 +38850,7 @@ validatorFns[DATE_BEFORE_TODAY] = (value, args, form) => {
38853
38850
 
38854
38851
  if (dateFormat == undefined || unit == undefined) {
38855
38852
  throw new Error(
38856
- "Date format and unit need to be defined for dateBeforeToday, one or both are undefined"
38853
+ 'Date format and unit need to be defined for dateBeforeToday, one or both are undefined'
38857
38854
  );
38858
38855
  }
38859
38856
  const now = dayjs();
@@ -38865,14 +38862,14 @@ validatorFns[DATE_BEFORE_TODAY] = (value, args, form) => {
38865
38862
  return dateValue.isBefore(now, unit);
38866
38863
  };
38867
38864
 
38868
- const DATE_AFTER_TODAY = "validator/DATE_AFTER_TODAY";
38869
- const DATE_AFTER_TODAY_ERROR = "error/DATE_AFTER_TODAY";
38865
+ const DATE_AFTER_TODAY = 'validator/DATE_AFTER_TODAY';
38866
+ const DATE_AFTER_TODAY_ERROR = 'error/DATE_AFTER_TODAY';
38870
38867
  const dateAfterToday = createValidator(
38871
38868
  DATE_AFTER_TODAY,
38872
38869
  DATE_AFTER_TODAY_ERROR
38873
38870
  );
38874
38871
  validatorFns[DATE_AFTER_TODAY] = (value, args, form) => {
38875
- if (value === "") {
38872
+ if (value === '') {
38876
38873
  return true;
38877
38874
  }
38878
38875
  const dateFormat = args[0];
@@ -38881,7 +38878,7 @@ validatorFns[DATE_AFTER_TODAY] = (value, args, form) => {
38881
38878
 
38882
38879
  if (dateFormat == undefined || unit == undefined) {
38883
38880
  throw new Error(
38884
- "Date format and unit need to be defined for dateAfterToday, one or both are undefined"
38881
+ 'Date format and unit need to be defined for dateAfterToday, one or both are undefined'
38885
38882
  );
38886
38883
  }
38887
38884
  const now = dayjs();
@@ -38893,14 +38890,11 @@ validatorFns[DATE_AFTER_TODAY] = (value, args, form) => {
38893
38890
  return dateValue.isAfter(now, unit);
38894
38891
  };
38895
38892
 
38896
- const IS_VALID_MONTH = "validator/IS_VALID_MONTH";
38897
- const IS_VALID_MONTH_ERROR = "error/IS_VALID_MONTH";
38898
- const isValidMonth = createValidator(
38899
- IS_VALID_MONTH,
38900
- IS_VALID_MONTH_ERROR
38901
- );
38893
+ const IS_VALID_MONTH = 'validator/IS_VALID_MONTH';
38894
+ const IS_VALID_MONTH_ERROR = 'error/IS_VALID_MONTH';
38895
+ const isValidMonth = createValidator(IS_VALID_MONTH, IS_VALID_MONTH_ERROR);
38902
38896
  validatorFns[IS_VALID_MONTH] = (value, args, form) => {
38903
- if (value === "") {
38897
+ if (value === '') {
38904
38898
  return true;
38905
38899
  }
38906
38900
  // Function takes one argument representing the character position
@@ -38910,43 +38904,43 @@ validatorFns[IS_VALID_MONTH] = (value, args, form) => {
38910
38904
  // Only works with two digit months (01, 02, 03, etc)
38911
38905
  const monthStartPosition = parseInt(args[0]);
38912
38906
  const monthEndPosition = monthStartPosition + 2;
38913
- if (monthStartPosition === NaN) {
38914
- throw new Error("Month start position has to be a valid integer string");
38907
+ if (isNaN(monthStartPosition)) {
38908
+ throw new Error('Month start position has to be a valid integer string');
38915
38909
  }
38916
38910
  const month = parseInt(value.slice(monthStartPosition, monthEndPosition));
38917
- if (month === NaN) {
38911
+ if (isNaN(month)) {
38918
38912
  return false;
38919
38913
  }
38920
38914
  return month >= 1 && month <= 12;
38921
38915
  };
38922
38916
 
38923
- const MATCHES_REGEX = "validator/MATCHES_REGEX";
38924
- const MATCHES_REGEX_ERROR = "error/MATCHES_REGEX";
38917
+ const MATCHES_REGEX = 'validator/MATCHES_REGEX';
38918
+ const MATCHES_REGEX_ERROR = 'error/MATCHES_REGEX';
38925
38919
  const matchesRegex = createValidator(MATCHES_REGEX, MATCHES_REGEX_ERROR);
38926
38920
  validatorFns[MATCHES_REGEX] = (value, args, form) => {
38927
- if (value === "") {
38921
+ if (value === '') {
38928
38922
  return true;
38929
38923
  }
38930
38924
  return new RegExp(args[0]).test(value); // new RexExp never throws an error, no matter the input
38931
38925
  };
38932
38926
 
38933
38927
  // based on http://www.brainjar.com/js/validation/
38934
- const IS_ROUTING_NUMBER = "validator/IS_ROUTING_NUMBER";
38935
- const IS_ROUTING_NUMBER_ERROR = "error/IS_ROUTING_NUMBER";
38928
+ const IS_ROUTING_NUMBER = 'validator/IS_ROUTING_NUMBER';
38929
+ const IS_ROUTING_NUMBER_ERROR = 'error/IS_ROUTING_NUMBER';
38936
38930
  const isRoutingNumber = createValidator(
38937
38931
  IS_ROUTING_NUMBER,
38938
38932
  IS_ROUTING_NUMBER_ERROR
38939
38933
  );
38940
38934
  validatorFns[IS_ROUTING_NUMBER] = (value, args, form) => {
38941
- if (value === "") {
38935
+ if (value === '') {
38942
38936
  return true;
38943
38937
  }
38944
38938
  if (value.length != 9) {
38945
38939
  return false;
38946
38940
  }
38947
38941
  const sum = value
38948
- .split("")
38949
- .map(ch => parseInt(ch))
38942
+ .split('')
38943
+ .map((ch) => parseInt(ch))
38950
38944
  .reduce((acc, cur, idx) => {
38951
38945
  switch (idx % 3) {
38952
38946
  case 0:
@@ -38960,69 +38954,69 @@ validatorFns[IS_ROUTING_NUMBER] = (value, args, form) => {
38960
38954
  return sum != 0 && sum % 10 == 0;
38961
38955
  };
38962
38956
 
38963
- const HAS_NUMBER = "validator/HAS_NUMBER";
38964
- const HAS_NUMBER_ERROR$1 = "error/HAS_NUMBER";
38957
+ const HAS_NUMBER = 'validator/HAS_NUMBER';
38958
+ const HAS_NUMBER_ERROR$1 = 'error/HAS_NUMBER';
38965
38959
  const hasNumber = createValidator(HAS_NUMBER, HAS_NUMBER_ERROR$1);
38966
38960
  validatorFns[HAS_NUMBER] = (value, args, form) => {
38967
- if (value === "") {
38961
+ if (value === '') {
38968
38962
  return true;
38969
38963
  }
38970
38964
  return new RegExp(/[0-9]/).test(value);
38971
38965
  };
38972
38966
 
38973
- const HAS_LOWERCASE_LETTER = "validator/HAS_LOWERCASE_LETTER";
38974
- const HAS_LOWERCASE_LETTER_ERROR$1 = "error/HAS_LOWERCASE_LETTER";
38967
+ const HAS_LOWERCASE_LETTER = 'validator/HAS_LOWERCASE_LETTER';
38968
+ const HAS_LOWERCASE_LETTER_ERROR$1 = 'error/HAS_LOWERCASE_LETTER';
38975
38969
  const hasLowercaseLetter = createValidator(
38976
38970
  HAS_LOWERCASE_LETTER,
38977
38971
  HAS_LOWERCASE_LETTER_ERROR$1
38978
38972
  );
38979
38973
  validatorFns[HAS_LOWERCASE_LETTER] = (value, args, form) => {
38980
- if (value === "") {
38974
+ if (value === '') {
38981
38975
  return true;
38982
38976
  }
38983
38977
  return new RegExp(/[a-z]/).test(value);
38984
38978
  };
38985
38979
 
38986
- const HAS_UPPERCASE_LETTER = "validator/HAS_UPPERCASE_LETTER";
38987
- const HAS_UPPERCASE_LETTER_ERROR$1 = "error/HAS_UPPERCASE_LETTER";
38980
+ const HAS_UPPERCASE_LETTER = 'validator/HAS_UPPERCASE_LETTER';
38981
+ const HAS_UPPERCASE_LETTER_ERROR$1 = 'error/HAS_UPPERCASE_LETTER';
38988
38982
  const hasUppercaseLetter = createValidator(
38989
38983
  HAS_UPPERCASE_LETTER,
38990
38984
  HAS_UPPERCASE_LETTER_ERROR$1
38991
38985
  );
38992
38986
  validatorFns[HAS_UPPERCASE_LETTER] = (value, args, form) => {
38993
- if (value === "") {
38987
+ if (value === '') {
38994
38988
  return true;
38995
38989
  }
38996
38990
  return new RegExp(/[A-Z]/).test(value);
38997
38991
  };
38998
38992
 
38999
- const HAS_SPECIAL_CHARACTER = "validator/HAS_SPECIAL_CHARACTER";
39000
- const HAS_SPECIAL_CHARACTER_ERROR$1 = "error/HAS_SPECIAL_CHARACTER";
38993
+ const HAS_SPECIAL_CHARACTER = 'validator/HAS_SPECIAL_CHARACTER';
38994
+ const HAS_SPECIAL_CHARACTER_ERROR$1 = 'error/HAS_SPECIAL_CHARACTER';
39001
38995
  const hasSpecialCharacter = createValidator(
39002
38996
  HAS_SPECIAL_CHARACTER,
39003
38997
  HAS_SPECIAL_CHARACTER_ERROR$1
39004
38998
  );
39005
38999
  validatorFns[HAS_SPECIAL_CHARACTER] = (value, args, form) => {
39006
- if (value === "") {
39000
+ if (value === '') {
39007
39001
  return true;
39008
39002
  }
39009
39003
  return new RegExp(/[!@#$%^&*.?]/).test(value);
39010
39004
  };
39011
39005
 
39012
- const IS_PROBABLY_EMAIL = "validator/IS_PROBABLY_EMAIL";
39013
- const IS_PROBABLY_EMAIL_ERROR = "error/IS_PROBABLY_EMAIL";
39006
+ const IS_PROBABLY_EMAIL = 'validator/IS_PROBABLY_EMAIL';
39007
+ const IS_PROBABLY_EMAIL_ERROR = 'error/IS_PROBABLY_EMAIL';
39014
39008
  const isProbablyEmail = createValidator(
39015
39009
  IS_PROBABLY_EMAIL,
39016
39010
  IS_PROBABLY_EMAIL_ERROR
39017
39011
  );
39018
39012
  validatorFns[IS_PROBABLY_EMAIL] = (value, args, form) => {
39019
- if (value === "") {
39013
+ if (value === '') {
39020
39014
  return true;
39021
39015
  }
39022
39016
  return new RegExp(/^\S+@\S+\.\S+$/).test(value);
39023
39017
  };
39024
39018
 
39025
- const runValidatorErrorMessage = type =>
39019
+ const runValidatorErrorMessage = (type) =>
39026
39020
  `${type} was passed to runValidator, but that validator type does not exist.
39027
39021
  Please check that you are only calling validator creator functions exported from
39028
39022
  redux-freeform in your form config and that you didn't forget to
@@ -39037,1165 +39031,53 @@ const runValidator = (validator, value, form) => {
39037
39031
  return validatorFn(value, validator.args, form) ? null : validator.error;
39038
39032
  };
39039
39033
 
39040
- const _computeErrors = (fieldName, form, validators) => {
39034
+ const runFormValidators = (fieldName, form, validators) => {
39041
39035
  return validators
39042
- .map(v => runValidator(v, form[fieldName].rawValue, form))
39043
- .filter(x => x !== null);
39036
+ .map((v) => runValidator(v, form[fieldName].rawValue, form))
39037
+ .filter((x) => x !== null);
39044
39038
  };
39045
39039
 
39046
39040
  const computeConstraints = (fieldName, form) => {
39047
39041
  const constraints = form[fieldName].constraints;
39048
- return _computeErrors(fieldName, form, constraints);
39042
+ return runFormValidators(fieldName, form, constraints);
39049
39043
  };
39050
39044
 
39051
39045
  const computeErrors = (fieldName, form) => {
39052
39046
  const validators = form[fieldName].validators;
39053
- return _computeErrors(fieldName, form, validators);
39047
+ return runFormValidators(fieldName, form, validators);
39054
39048
  };
39055
39049
 
39056
- var obj;
39057
- var NOTHING = typeof Symbol !== "undefined" ? Symbol("immer-nothing") : ( obj = {}, obj["immer-nothing"] = true, obj );
39058
- var DRAFTABLE = typeof Symbol !== "undefined" && Symbol.for ? Symbol.for("immer-draftable") : "__$immer_draftable";
39059
- var DRAFT_STATE = typeof Symbol !== "undefined" && Symbol.for ? Symbol.for("immer-state") : "__$immer_state";
39060
- function isDraft(value) {
39061
- return !!value && !!value[DRAFT_STATE];
39062
- }
39063
- function isDraftable(value) {
39064
- if (!value) { return false; }
39065
- return isPlainObject(value) || !!value[DRAFTABLE] || !!value.constructor[DRAFTABLE];
39066
- }
39067
- function isPlainObject(value) {
39068
- if (!value || typeof value !== "object") { return false; }
39069
- if (Array.isArray(value)) { return true; }
39070
- var proto = Object.getPrototypeOf(value);
39071
- return !proto || proto === Object.prototype;
39072
- }
39073
- var assign = Object.assign || function assign(target, value) {
39074
- for (var key in value) {
39075
- if (has$1(value, key)) {
39076
- target[key] = value[key];
39077
- }
39050
+ const computeErrorEntries = (formState) => {
39051
+ const fields = Object.entries(formState);
39052
+ for (let entry of fields) {
39053
+ let fieldName = entry[0];
39054
+ let errors = computeErrors(fieldName, formState);
39055
+ formState[fieldName].errors = errors;
39056
+ formState[fieldName].hasErrors = errors.length > 0;
39078
39057
  }
39079
-
39080
- return target;
39081
39058
  };
39082
- var ownKeys$2 = typeof Reflect !== "undefined" && Reflect.ownKeys ? Reflect.ownKeys : typeof Object.getOwnPropertySymbols !== "undefined" ? function (obj) { return Object.getOwnPropertyNames(obj).concat(Object.getOwnPropertySymbols(obj)); } : Object.getOwnPropertyNames;
39083
- function shallowCopy(base, invokeGetters) {
39084
- if ( invokeGetters === void 0 ) invokeGetters = false;
39085
-
39086
- if (Array.isArray(base)) { return base.slice(); }
39087
- var clone = Object.create(Object.getPrototypeOf(base));
39088
- ownKeys$2(base).forEach(function (key) {
39089
- if (key === DRAFT_STATE) {
39090
- return; // Never copy over draft state.
39091
- }
39092
-
39093
- var desc = Object.getOwnPropertyDescriptor(base, key);
39094
- var value = desc.value;
39095
-
39096
- if (desc.get) {
39097
- if (!invokeGetters) {
39098
- throw new Error("Immer drafts cannot have computed properties");
39099
- }
39100
39059
 
39101
- value = desc.get.call(base);
39102
- }
39103
-
39104
- if (desc.enumerable) {
39105
- clone[key] = value;
39106
- } else {
39107
- Object.defineProperty(clone, key, {
39108
- value: value,
39109
- writable: true,
39110
- configurable: true
39111
- });
39112
- }
39113
- });
39114
- return clone;
39115
- }
39116
- function each(value, cb) {
39117
- if (Array.isArray(value)) {
39118
- for (var i = 0; i < value.length; i++) { cb(i, value[i], value); }
39119
- } else {
39120
- ownKeys$2(value).forEach(function (key) { return cb(key, value[key], value); });
39121
- }
39122
- }
39123
- function isEnumerable(base, prop) {
39124
- var desc = Object.getOwnPropertyDescriptor(base, prop);
39125
- return !!desc && desc.enumerable;
39126
- }
39127
- function has$1(thing, prop) {
39128
- return Object.prototype.hasOwnProperty.call(thing, prop);
39129
- }
39130
- function is(x, y) {
39131
- // From: https://github.com/facebook/fbjs/blob/c69904a511b900266935168223063dd8772dfc40/packages/fbjs/src/core/shallowEqual.js
39132
- if (x === y) {
39133
- return x !== 0 || 1 / x === 1 / y;
39134
- } else {
39135
- return x !== x && y !== y;
39060
+ const computeDirtyEntries = (formState, changedFieldName) => {
39061
+ const fields = Object.entries(formState);
39062
+ for (let entry of fields) {
39063
+ let fieldName = entry[0];
39064
+ let field = entry[1];
39065
+ let dirty = fieldName === changedFieldName ? true : field.dirty;
39066
+ formState[fieldName].dirty = dirty;
39136
39067
  }
39137
- }
39138
- function clone(obj) {
39139
- if (!isDraftable(obj)) { return obj; }
39140
- if (Array.isArray(obj)) { return obj.map(clone); }
39141
- var cloned = Object.create(Object.getPrototypeOf(obj));
39142
-
39143
- for (var key in obj) { cloned[key] = clone(obj[key]); }
39144
-
39145
- return cloned;
39146
- }
39147
-
39148
- /** Each scope represents a `produce` call. */
39149
-
39150
- var ImmerScope = function ImmerScope(parent) {
39151
- this.drafts = [];
39152
- this.parent = parent; // Whenever the modified draft contains a draft from another scope, we
39153
- // need to prevent auto-freezing so the unowned draft can be finalized.
39154
-
39155
- this.canAutoFreeze = true; // To avoid prototype lookups:
39156
-
39157
- this.patches = null;
39158
- };
39159
-
39160
- ImmerScope.prototype.usePatches = function usePatches (patchListener) {
39161
- if (patchListener) {
39162
- this.patches = [];
39163
- this.inversePatches = [];
39164
- this.patchListener = patchListener;
39165
- }
39166
- };
39167
-
39168
- ImmerScope.prototype.revoke = function revoke$1 () {
39169
- this.leave();
39170
- this.drafts.forEach(revoke);
39171
- this.drafts = null; // Make draft-related methods throw.
39172
- };
39173
-
39174
- ImmerScope.prototype.leave = function leave () {
39175
- if (this === ImmerScope.current) {
39176
- ImmerScope.current = this.parent;
39177
- }
39178
- };
39179
- ImmerScope.current = null;
39180
-
39181
- ImmerScope.enter = function () {
39182
- return this.current = new ImmerScope(this.current);
39183
39068
  };
39184
39069
 
39185
- function revoke(draft) {
39186
- draft[DRAFT_STATE].revoke();
39187
- }
39188
-
39189
- // but share them all instead
39190
-
39191
- var descriptors$1 = {};
39192
- function willFinalize(scope, result, isReplaced) {
39193
- scope.drafts.forEach(function (draft) {
39194
- draft[DRAFT_STATE].finalizing = true;
39195
- });
39196
-
39197
- if (!isReplaced) {
39198
- if (scope.patches) {
39199
- markChangesRecursively(scope.drafts[0]);
39200
- } // This is faster when we don't care about which attributes changed.
39070
+ function n(n){for(var r=arguments.length,t=Array(r>1?r-1:0),e=1;e<r;e++)t[e-1]=arguments[e];if("production"!==process.env.NODE_ENV){var i=Y[n],o=i?"function"==typeof i?i.apply(null,t):i:"unknown error nr: "+n;throw Error("[Immer] "+o)}throw Error("[Immer] minified error nr: "+n+(t.length?" "+t.map((function(n){return "'"+n+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function r(n){return !!n&&!!n[Q]}function t(n){var r;return !!n&&(function(n){if(!n||"object"!=typeof n)return !1;var r=Object.getPrototypeOf(n);if(null===r)return !0;var t=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;return t===Object||"function"==typeof t&&Function.toString.call(t)===Z}(n)||Array.isArray(n)||!!n[L]||!!(null===(r=n.constructor)||void 0===r?void 0:r[L])||s(n)||v(n))}function i(n,r,t){void 0===t&&(t=!1),0===o(n)?(t?Object.keys:nn)(n).forEach((function(e){t&&"symbol"==typeof e||r(e,n[e],n);})):n.forEach((function(t,e){return r(e,t,n)}));}function o(n){var r=n[Q];return r?r.i>3?r.i-4:r.i:Array.isArray(n)?1:s(n)?2:v(n)?3:0}function u(n,r){return 2===o(n)?n.has(r):Object.prototype.hasOwnProperty.call(n,r)}function a$1(n,r){return 2===o(n)?n.get(r):n[r]}function f$6(n,r,t){var e=o(n);2===e?n.set(r,t):3===e?n.add(t):n[r]=t;}function c$1(n,r){return n===r?0!==n||1/n==1/r:n!=n&&r!=r}function s(n){return X&&n instanceof Map}function v(n){return q&&n instanceof Set}function p(n){return n.o||n.t}function l(n){if(Array.isArray(n))return Array.prototype.slice.call(n);var r=rn(n);delete r[Q];for(var t=nn(r),e=0;e<t.length;e++){var i=t[e],o=r[i];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(r[i]={configurable:!0,writable:!0,enumerable:o.enumerable,value:n[i]});}return Object.create(Object.getPrototypeOf(n),r)}function d(n,e){return void 0===e&&(e=!1),y(n)||r(n)||!t(n)||(o(n)>1&&(n.set=n.add=n.clear=n.delete=h),Object.freeze(n),e&&i(n,(function(n,r){return d(r,!0)}),!0)),n}function h(){n(2);}function y(n){return null==n||"object"!=typeof n||Object.isFrozen(n)}function b$1(r){var t=tn[r];return t||n(18,r),t}function _(){return "production"===process.env.NODE_ENV||U||n(0),U}function j(n,r){r&&(b$1("Patches"),n.u=[],n.s=[],n.v=r);}function g(n){O(n),n.p.forEach(S),n.p=null;}function O(n){n===U&&(U=n.l);}function w(n){return U={p:[],l:U,h:n,m:!0,_:0}}function S(n){var r=n[Q];0===r.i||1===r.i?r.j():r.g=!0;}function P(r,e){e._=e.p.length;var i=e.p[0],o=void 0!==r&&r!==i;return e.h.O||b$1("ES5").S(e,r,o),o?(i[Q].P&&(g(e),n(4)),t(r)&&(r=M(e,r),e.l||x(e,r)),e.u&&b$1("Patches").M(i[Q].t,r,e.u,e.s)):r=M(e,i,[]),g(e),e.u&&e.v(e.u,e.s),r!==H?r:void 0}function M(n,r,t){if(y(r))return r;var e=r[Q];if(!e)return i(r,(function(i,o){return A(n,e,r,i,o,t)}),!0),r;if(e.A!==n)return r;if(!e.P)return x(n,e.t,!0),e.t;if(!e.I){e.I=!0,e.A._--;var o=4===e.i||5===e.i?e.o=l(e.k):e.o,u=o,a=!1;3===e.i&&(u=new Set(o),o.clear(),a=!0),i(u,(function(r,i){return A(n,e,o,r,i,t,a)})),x(n,o,!1),t&&n.u&&b$1("Patches").N(e,t,n.u,n.s);}return e.o}function A(e,i,o,a,c,s,v){if("production"!==process.env.NODE_ENV&&c===o&&n(5),r(c)){var p=M(e,c,s&&i&&3!==i.i&&!u(i.R,a)?s.concat(a):void 0);if(f$6(o,a,p),!r(p))return;e.m=!1;}else v&&o.add(c);if(t(c)&&!y(c)){if(!e.h.D&&e._<1)return;M(e,c),i&&i.A.l||x(e,c);}}function x(n,r,t){void 0===t&&(t=!1),!n.l&&n.h.D&&n.m&&d(r,t);}function z(n,r){var t=n[Q];return (t?p(t):n)[r]}function I(n,r){if(r in n)for(var t=Object.getPrototypeOf(n);t;){var e=Object.getOwnPropertyDescriptor(t,r);if(e)return e;t=Object.getPrototypeOf(t);}}function k(n){n.P||(n.P=!0,n.l&&k(n.l));}function E(n){n.o||(n.o=l(n.t));}function N(n,r,t){var e=s(r)?b$1("MapSet").F(r,t):v(r)?b$1("MapSet").T(r,t):n.O?function(n,r){var t=Array.isArray(n),e={i:t?1:0,A:r?r.A:_(),P:!1,I:!1,R:{},l:r,t:n,k:null,o:null,j:null,C:!1},i=e,o=en;t&&(i=[e],o=on);var u=Proxy.revocable(i,o),a=u.revoke,f=u.proxy;return e.k=f,e.j=a,f}(r,t):b$1("ES5").J(r,t);return (t?t.A:_()).p.push(e),e}function R(e){return r(e)||n(22,e),function n(r){if(!t(r))return r;var e,u=r[Q],c=o(r);if(u){if(!u.P&&(u.i<4||!b$1("ES5").K(u)))return u.t;u.I=!0,e=D(r,c),u.I=!1;}else e=D(r,c);return i(e,(function(r,t){u&&a$1(u.t,r)===t||f$6(e,r,n(t));})),3===c?new Set(e):e}(e)}function D(n,r){switch(r){case 2:return new Map(n);case 3:return Array.from(n)}return l(n)}var G,U,W="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),X="undefined"!=typeof Map,q="undefined"!=typeof Set,B="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,H=W?Symbol.for("immer-nothing"):((G={})["immer-nothing"]=!0,G),L=W?Symbol.for("immer-draftable"):"__$immer_draftable",Q=W?Symbol.for("immer-state"):"__$immer_state",Y={0:"Illegal state",1:"Immer drafts cannot have computed properties",2:"This object has been frozen and should not be mutated",3:function(n){return "Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+n},4:"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.",5:"Immer forbids circular references",6:"The first or second argument to `produce` must be a function",7:"The third argument to `produce` must be a function or undefined",8:"First argument to `createDraft` must be a plain object, an array, or an immerable object",9:"First argument to `finishDraft` must be a draft returned by `createDraft`",10:"The given draft is already finalized",11:"Object.defineProperty() cannot be used on an Immer draft",12:"Object.setPrototypeOf() cannot be used on an Immer draft",13:"Immer only supports deleting array indices",14:"Immer only supports setting array indices and the 'length' property",15:function(n){return "Cannot apply patch, path doesn't resolve: "+n},16:'Sets cannot have "replace" patches.',17:function(n){return "Unsupported patch operation: "+n},18:function(n){return "The plugin for '"+n+"' has not been loaded into Immer. To enable the plugin, import and call `enable"+n+"()` when initializing your application."},20:"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available",21:function(n){return "produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '"+n+"'"},22:function(n){return "'current' expects a draft, got: "+n},23:function(n){return "'original' expects a draft, got: "+n},24:"Patching reserved attributes like __proto__, prototype and constructor is not allowed"},Z=""+Object.prototype.constructor,nn="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(n){return Object.getOwnPropertyNames(n).concat(Object.getOwnPropertySymbols(n))}:Object.getOwnPropertyNames,rn=Object.getOwnPropertyDescriptors||function(n){var r={};return nn(n).forEach((function(t){r[t]=Object.getOwnPropertyDescriptor(n,t);})),r},tn={},en={get:function(n,r){if(r===Q)return n;var e=p(n);if(!u(e,r))return function(n,r,t){var e,i=I(r,t);return i?"value"in i?i.value:null===(e=i.get)||void 0===e?void 0:e.call(n.k):void 0}(n,e,r);var i=e[r];return n.I||!t(i)?i:i===z(n.t,r)?(E(n),n.o[r]=N(n.A.h,i,n)):i},has:function(n,r){return r in p(n)},ownKeys:function(n){return Reflect.ownKeys(p(n))},set:function(n,r,t){var e=I(p(n),r);if(null==e?void 0:e.set)return e.set.call(n.k,t),!0;if(!n.P){var i=z(p(n),r),o=null==i?void 0:i[Q];if(o&&o.t===t)return n.o[r]=t,n.R[r]=!1,!0;if(c$1(t,i)&&(void 0!==t||u(n.t,r)))return !0;E(n),k(n);}return n.o[r]===t&&(void 0!==t||r in n.o)||Number.isNaN(t)&&Number.isNaN(n.o[r])||(n.o[r]=t,n.R[r]=!0),!0},deleteProperty:function(n,r){return void 0!==z(n.t,r)||r in n.t?(n.R[r]=!1,E(n),k(n)):delete n.R[r],n.o&&delete n.o[r],!0},getOwnPropertyDescriptor:function(n,r){var t=p(n),e=Reflect.getOwnPropertyDescriptor(t,r);return e?{writable:!0,configurable:1!==n.i||"length"!==r,enumerable:e.enumerable,value:t[r]}:e},defineProperty:function(){n(11);},getPrototypeOf:function(n){return Object.getPrototypeOf(n.t)},setPrototypeOf:function(){n(12);}},on={};i(en,(function(n,r){on[n]=function(){return arguments[0]=arguments[0][0],r.apply(this,arguments)};})),on.deleteProperty=function(r,t){return "production"!==process.env.NODE_ENV&&isNaN(parseInt(t))&&n(13),on.set.call(this,r,t,void 0)},on.set=function(r,t,e){return "production"!==process.env.NODE_ENV&&"length"!==t&&isNaN(parseInt(t))&&n(14),en.set.call(this,r[0],t,e,r[0])};var un=function(){function e(r){var e=this;this.O=B,this.D=!0,this.produce=function(r,i,o){if("function"==typeof r&&"function"!=typeof i){var u=i;i=r;var a=e;return function(n){var r=this;void 0===n&&(n=u);for(var t=arguments.length,e=Array(t>1?t-1:0),o=1;o<t;o++)e[o-1]=arguments[o];return a.produce(n,(function(n){var t;return (t=i).call.apply(t,[r,n].concat(e))}))}}var f;if("function"!=typeof i&&n(6),void 0!==o&&"function"!=typeof o&&n(7),t(r)){var c=w(e),s=N(e,r,void 0),v=!0;try{f=i(s),v=!1;}finally{v?g(c):O(c);}return "undefined"!=typeof Promise&&f instanceof Promise?f.then((function(n){return j(c,o),P(n,c)}),(function(n){throw g(c),n})):(j(c,o),P(f,c))}if(!r||"object"!=typeof r){if(void 0===(f=i(r))&&(f=r),f===H&&(f=void 0),e.D&&d(f,!0),o){var p=[],l=[];b$1("Patches").M(r,f,p,l),o(p,l);}return f}n(21,r);},this.produceWithPatches=function(n,r){if("function"==typeof n)return function(r){for(var t=arguments.length,i=Array(t>1?t-1:0),o=1;o<t;o++)i[o-1]=arguments[o];return e.produceWithPatches(r,(function(r){return n.apply(void 0,[r].concat(i))}))};var t,i,o=e.produce(n,r,(function(n,r){t=n,i=r;}));return "undefined"!=typeof Promise&&o instanceof Promise?o.then((function(n){return [n,t,i]})):[o,t,i]},"boolean"==typeof(null==r?void 0:r.useProxies)&&this.setUseProxies(r.useProxies),"boolean"==typeof(null==r?void 0:r.autoFreeze)&&this.setAutoFreeze(r.autoFreeze);}var i=e.prototype;return i.createDraft=function(e){t(e)||n(8),r(e)&&(e=R(e));var i=w(this),o=N(this,e,void 0);return o[Q].C=!0,O(i),o},i.finishDraft=function(r,t){var e=r&&r[Q];"production"!==process.env.NODE_ENV&&(e&&e.C||n(9),e.I&&n(10));var i=e.A;return j(i,t),P(void 0,i)},i.setAutoFreeze=function(n){this.D=n;},i.setUseProxies=function(r){r&&!B&&n(20),this.O=r;},i.applyPatches=function(n,t){var e;for(e=t.length-1;e>=0;e--){var i=t[e];if(0===i.path.length&&"replace"===i.op){n=i.value;break}}e>-1&&(t=t.slice(e+1));var o=b$1("Patches").$;return r(n)?o(n,t):this.produce(n,(function(n){return o(n,t)}))},e}(),an=new un,fn=an.produce;an.produceWithPatches.bind(an);an.setAutoFreeze.bind(an);an.setUseProxies.bind(an);an.applyPatches.bind(an);an.createDraft.bind(an);an.finishDraft.bind(an);var produce = fn;
39201
39071
 
39202
-
39203
- markChangesSweep(scope.drafts);
39204
- } // When a child draft is returned, look for changes.
39205
- else if (isDraft(result) && result[DRAFT_STATE].scope === scope) {
39206
- markChangesSweep(scope.drafts);
39207
- }
39208
- }
39209
- function createProxy(base, parent) {
39210
- var isArray = Array.isArray(base);
39211
- var draft = clonePotentialDraft(base);
39212
- each(draft, function (prop) {
39213
- proxyProperty(draft, prop, isArray || isEnumerable(base, prop));
39214
- }); // See "proxy.js" for property documentation.
39215
-
39216
- var scope = parent ? parent.scope : ImmerScope.current;
39217
- var state = {
39218
- scope: scope,
39219
- modified: false,
39220
- finalizing: false,
39221
- // es5 only
39222
- finalized: false,
39223
- assigned: {},
39224
- parent: parent,
39225
- base: base,
39226
- draft: draft,
39227
- copy: null,
39228
- revoke: revoke$1,
39229
- revoked: false // es5 only
39230
-
39231
- };
39232
- createHiddenProperty(draft, DRAFT_STATE, state);
39233
- scope.drafts.push(draft);
39234
- return draft;
39235
- }
39236
-
39237
- function revoke$1() {
39238
- this.revoked = true;
39239
- }
39240
-
39241
- function source(state) {
39242
- return state.copy || state.base;
39243
- } // Access a property without creating an Immer draft.
39244
-
39245
-
39246
- function peek(draft, prop) {
39247
- var state = draft[DRAFT_STATE];
39248
-
39249
- if (state && !state.finalizing) {
39250
- state.finalizing = true;
39251
- var value = draft[prop];
39252
- state.finalizing = false;
39253
- return value;
39254
- }
39255
-
39256
- return draft[prop];
39257
- }
39258
-
39259
- function get$1(state, prop) {
39260
- assertUnrevoked(state);
39261
- var value = peek(source(state), prop);
39262
- if (state.finalizing) { return value; } // Create a draft if the value is unmodified.
39263
-
39264
- if (value === peek(state.base, prop) && isDraftable(value)) {
39265
- prepareCopy(state);
39266
- return state.copy[prop] = createProxy(value, state);
39267
- }
39268
-
39269
- return value;
39270
- }
39271
-
39272
- function set$1(state, prop, value) {
39273
- assertUnrevoked(state);
39274
- state.assigned[prop] = true;
39275
-
39276
- if (!state.modified) {
39277
- if (is(value, peek(source(state), prop))) { return; }
39278
- markChanged(state);
39279
- prepareCopy(state);
39280
- }
39281
-
39282
- state.copy[prop] = value;
39283
- }
39284
-
39285
- function markChanged(state) {
39286
- if (!state.modified) {
39287
- state.modified = true;
39288
- if (state.parent) { markChanged(state.parent); }
39289
- }
39290
- }
39291
-
39292
- function prepareCopy(state) {
39293
- if (!state.copy) { state.copy = clonePotentialDraft(state.base); }
39294
- }
39295
-
39296
- function clonePotentialDraft(base) {
39297
- var state = base && base[DRAFT_STATE];
39298
-
39299
- if (state) {
39300
- state.finalizing = true;
39301
- var draft = shallowCopy(state.draft, true);
39302
- state.finalizing = false;
39303
- return draft;
39304
- }
39305
-
39306
- return shallowCopy(base);
39307
- }
39308
-
39309
- function proxyProperty(draft, prop, enumerable) {
39310
- var desc = descriptors$1[prop];
39311
-
39312
- if (desc) {
39313
- desc.enumerable = enumerable;
39314
- } else {
39315
- descriptors$1[prop] = desc = {
39316
- configurable: true,
39317
- enumerable: enumerable,
39318
-
39319
- get: function get$1$1() {
39320
- return get$1(this[DRAFT_STATE], prop);
39321
- },
39322
-
39323
- set: function set$1$1(value) {
39324
- set$1(this[DRAFT_STATE], prop, value);
39325
- }
39326
-
39327
- };
39328
- }
39329
-
39330
- Object.defineProperty(draft, prop, desc);
39331
- }
39332
-
39333
- function assertUnrevoked(state) {
39334
- if (state.revoked === true) { throw new Error("Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? " + JSON.stringify(source(state))); }
39335
- } // This looks expensive, but only proxies are visited, and only objects without known changes are scanned.
39336
-
39337
-
39338
- function markChangesSweep(drafts) {
39339
- // The natural order of drafts in the `scope` array is based on when they
39340
- // were accessed. By processing drafts in reverse natural order, we have a
39341
- // better chance of processing leaf nodes first. When a leaf node is known to
39342
- // have changed, we can avoid any traversal of its ancestor nodes.
39343
- for (var i = drafts.length - 1; i >= 0; i--) {
39344
- var state = drafts[i][DRAFT_STATE];
39345
-
39346
- if (!state.modified) {
39347
- if (Array.isArray(state.base)) {
39348
- if (hasArrayChanges(state)) { markChanged(state); }
39349
- } else if (hasObjectChanges(state)) { markChanged(state); }
39350
- }
39351
- }
39352
- }
39353
-
39354
- function markChangesRecursively(object) {
39355
- if (!object || typeof object !== "object") { return; }
39356
- var state = object[DRAFT_STATE];
39357
- if (!state) { return; }
39358
- var base = state.base;
39359
- var draft = state.draft;
39360
- var assigned = state.assigned;
39361
-
39362
- if (!Array.isArray(object)) {
39363
- // Look for added keys.
39364
- Object.keys(draft).forEach(function (key) {
39365
- // The `undefined` check is a fast path for pre-existing keys.
39366
- if (base[key] === undefined && !has$1(base, key)) {
39367
- assigned[key] = true;
39368
- markChanged(state);
39369
- } else if (!assigned[key]) {
39370
- // Only untouched properties trigger recursion.
39371
- markChangesRecursively(draft[key]);
39372
- }
39373
- }); // Look for removed keys.
39374
-
39375
- Object.keys(base).forEach(function (key) {
39376
- // The `undefined` check is a fast path for pre-existing keys.
39377
- if (draft[key] === undefined && !has$1(draft, key)) {
39378
- assigned[key] = false;
39379
- markChanged(state);
39380
- }
39381
- });
39382
- } else if (hasArrayChanges(state)) {
39383
- markChanged(state);
39384
- assigned.length = true;
39385
-
39386
- if (draft.length < base.length) {
39387
- for (var i = draft.length; i < base.length; i++) { assigned[i] = false; }
39388
- } else {
39389
- for (var i$1 = base.length; i$1 < draft.length; i$1++) { assigned[i$1] = true; }
39390
- }
39391
-
39392
- for (var i$2 = 0; i$2 < draft.length; i$2++) {
39393
- // Only untouched indices trigger recursion.
39394
- if (assigned[i$2] === undefined) { markChangesRecursively(draft[i$2]); }
39395
- }
39396
- }
39397
- }
39398
-
39399
- function hasObjectChanges(state) {
39400
- var base = state.base;
39401
- var draft = state.draft; // Search for added keys and changed keys. Start at the back, because
39402
- // non-numeric keys are ordered by time of definition on the object.
39403
-
39404
- var keys = Object.keys(draft);
39405
-
39406
- for (var i = keys.length - 1; i >= 0; i--) {
39407
- var key = keys[i];
39408
- var baseValue = base[key]; // The `undefined` check is a fast path for pre-existing keys.
39409
-
39410
- if (baseValue === undefined && !has$1(base, key)) {
39411
- return true;
39412
- } // Once a base key is deleted, future changes go undetected, because its
39413
- // descriptor is erased. This branch detects any missed changes.
39414
- else {
39415
- var value = draft[key];
39416
- var state$1 = value && value[DRAFT_STATE];
39417
-
39418
- if (state$1 ? state$1.base !== baseValue : !is(value, baseValue)) {
39419
- return true;
39420
- }
39421
- }
39422
- } // At this point, no keys were added or changed.
39423
- // Compare key count to determine if keys were deleted.
39424
-
39425
-
39426
- return keys.length !== Object.keys(base).length;
39427
- }
39428
-
39429
- function hasArrayChanges(state) {
39430
- var draft = state.draft;
39431
- if (draft.length !== state.base.length) { return true; } // See #116
39432
- // If we first shorten the length, our array interceptors will be removed.
39433
- // If after that new items are added, result in the same original length,
39434
- // those last items will have no intercepting property.
39435
- // So if there is no own descriptor on the last position, we know that items were removed and added
39436
- // N.B.: splice, unshift, etc only shift values around, but not prop descriptors, so we only have to check
39437
- // the last one
39438
-
39439
- var descriptor = Object.getOwnPropertyDescriptor(draft, draft.length - 1); // descriptor can be null, but only for newly created sparse arrays, eg. new Array(10)
39440
-
39441
- if (descriptor && !descriptor.get) { return true; } // For all other cases, we don't have to compare, as they would have been picked up by the index setters
39442
-
39443
- return false;
39444
- }
39445
-
39446
- function createHiddenProperty(target, prop, value) {
39447
- Object.defineProperty(target, prop, {
39448
- value: value,
39449
- enumerable: false,
39450
- writable: true
39451
- });
39452
- }
39453
-
39454
- var legacyProxy = /*#__PURE__*/Object.freeze({
39455
- willFinalize: willFinalize,
39456
- createProxy: createProxy
39457
- });
39458
-
39459
- function willFinalize$1() {}
39460
- function createProxy$1(base, parent) {
39461
- var scope = parent ? parent.scope : ImmerScope.current;
39462
- var state = {
39463
- // Track which produce call this is associated with.
39464
- scope: scope,
39465
- // True for both shallow and deep changes.
39466
- modified: false,
39467
- // Used during finalization.
39468
- finalized: false,
39469
- // Track which properties have been assigned (true) or deleted (false).
39470
- assigned: {},
39471
- // The parent draft state.
39472
- parent: parent,
39473
- // The base state.
39474
- base: base,
39475
- // The base proxy.
39476
- draft: null,
39477
- // Any property proxies.
39478
- drafts: {},
39479
- // The base copy with any updated values.
39480
- copy: null,
39481
- // Called by the `produce` function.
39482
- revoke: null
39483
- };
39484
- var ref = Array.isArray(base) ? // [state] is used for arrays, to make sure the proxy is array-ish and not violate invariants,
39485
- // although state itself is an object
39486
- Proxy.revocable([state], arrayTraps) : Proxy.revocable(state, objectTraps);
39487
- var revoke = ref.revoke;
39488
- var proxy = ref.proxy;
39489
- state.draft = proxy;
39490
- state.revoke = revoke;
39491
- scope.drafts.push(proxy);
39492
- return proxy;
39493
- }
39494
- var objectTraps = {
39495
- get: get$1$1,
39496
-
39497
- has: function has(target, prop) {
39498
- return prop in source$1(target);
39499
- },
39500
-
39501
- ownKeys: function ownKeys(target) {
39502
- return Reflect.ownKeys(source$1(target));
39503
- },
39504
-
39505
- set: set$1$1,
39506
- deleteProperty: deleteProperty,
39507
- getOwnPropertyDescriptor: getOwnPropertyDescriptor$2,
39508
-
39509
- defineProperty: function defineProperty() {
39510
- throw new Error("Object.defineProperty() cannot be used on an Immer draft"); // prettier-ignore
39511
- },
39512
-
39513
- getPrototypeOf: function getPrototypeOf(target) {
39514
- return Object.getPrototypeOf(target.base);
39515
- },
39516
-
39517
- setPrototypeOf: function setPrototypeOf() {
39518
- throw new Error("Object.setPrototypeOf() cannot be used on an Immer draft"); // prettier-ignore
39519
- }
39520
-
39521
- };
39522
- var arrayTraps = {};
39523
- each(objectTraps, function (key, fn) {
39524
- arrayTraps[key] = function () {
39525
- arguments[0] = arguments[0][0];
39526
- return fn.apply(this, arguments);
39527
- };
39528
- });
39529
-
39530
- arrayTraps.deleteProperty = function (state, prop) {
39531
- if (isNaN(parseInt(prop))) {
39532
- throw new Error("Immer only supports deleting array indices"); // prettier-ignore
39533
- }
39534
-
39535
- return objectTraps.deleteProperty.call(this, state[0], prop);
39536
- };
39537
-
39538
- arrayTraps.set = function (state, prop, value) {
39539
- if (prop !== "length" && isNaN(parseInt(prop))) {
39540
- throw new Error("Immer only supports setting array indices and the 'length' property"); // prettier-ignore
39541
- }
39542
-
39543
- return objectTraps.set.call(this, state[0], prop, value);
39544
- }; // returns the object we should be reading the current value from, which is base, until some change has been made
39545
-
39546
-
39547
- function source$1(state) {
39548
- return state.copy || state.base;
39549
- } // Access a property without creating an Immer draft.
39550
-
39551
-
39552
- function peek$1(draft, prop) {
39553
- var state = draft[DRAFT_STATE];
39554
- var desc = Reflect.getOwnPropertyDescriptor(state ? source$1(state) : draft, prop);
39555
- return desc && desc.value;
39556
- }
39557
-
39558
- function get$1$1(state, prop) {
39559
- if (prop === DRAFT_STATE) { return state; }
39560
- var drafts = state.drafts; // Check for existing draft in unmodified state.
39561
-
39562
- if (!state.modified && has$1(drafts, prop)) {
39563
- return drafts[prop];
39564
- }
39565
-
39566
- var value = source$1(state)[prop];
39567
-
39568
- if (state.finalized || !isDraftable(value)) {
39569
- return value;
39570
- } // Check for existing draft in modified state.
39571
-
39572
-
39573
- if (state.modified) {
39574
- // Assigned values are never drafted. This catches any drafts we created, too.
39575
- if (value !== peek$1(state.base, prop)) { return value; } // Store drafts on the copy (when one exists).
39576
-
39577
- drafts = state.copy;
39578
- }
39579
-
39580
- return drafts[prop] = createProxy$1(value, state);
39581
- }
39582
-
39583
- function set$1$1(state, prop, value) {
39584
- if (!state.modified) {
39585
- var baseValue = peek$1(state.base, prop); // Optimize based on value's truthiness. Truthy values are guaranteed to
39586
- // never be undefined, so we can avoid the `in` operator. Lastly, truthy
39587
- // values may be drafts, but falsy values are never drafts.
39588
-
39589
- var isUnchanged = value ? is(baseValue, value) || value === state.drafts[prop] : is(baseValue, value) && prop in state.base;
39590
- if (isUnchanged) { return true; }
39591
- markChanged$1(state);
39592
- }
39593
-
39594
- state.assigned[prop] = true;
39595
- state.copy[prop] = value;
39596
- return true;
39597
- }
39598
-
39599
- function deleteProperty(state, prop) {
39600
- // The `undefined` check is a fast path for pre-existing keys.
39601
- if (peek$1(state.base, prop) !== undefined || prop in state.base) {
39602
- state.assigned[prop] = false;
39603
- markChanged$1(state);
39604
- } else if (state.assigned[prop]) {
39605
- // if an originally not assigned property was deleted
39606
- delete state.assigned[prop];
39607
- }
39608
-
39609
- if (state.copy) { delete state.copy[prop]; }
39610
- return true;
39611
- } // Note: We never coerce `desc.value` into an Immer draft, because we can't make
39612
- // the same guarantee in ES5 mode.
39613
-
39614
-
39615
- function getOwnPropertyDescriptor$2(state, prop) {
39616
- var owner = source$1(state);
39617
- var desc = Reflect.getOwnPropertyDescriptor(owner, prop);
39618
-
39619
- if (desc) {
39620
- desc.writable = true;
39621
- desc.configurable = !Array.isArray(owner) || prop !== "length";
39622
- }
39623
-
39624
- return desc;
39625
- }
39626
-
39627
- function markChanged$1(state) {
39628
- if (!state.modified) {
39629
- state.modified = true;
39630
- state.copy = assign(shallowCopy(state.base), state.drafts);
39631
- state.drafts = null;
39632
- if (state.parent) { markChanged$1(state.parent); }
39633
- }
39634
- }
39635
-
39636
- var modernProxy = /*#__PURE__*/Object.freeze({
39637
- willFinalize: willFinalize$1,
39638
- createProxy: createProxy$1
39639
- });
39640
-
39641
- function generatePatches(state, basePath, patches, inversePatches) {
39642
- Array.isArray(state.base) ? generateArrayPatches(state, basePath, patches, inversePatches) : generateObjectPatches(state, basePath, patches, inversePatches);
39643
- }
39644
-
39645
- function generateArrayPatches(state, basePath, patches, inversePatches) {
39646
- var assign, assign$1;
39647
-
39648
- var base = state.base;
39649
- var copy = state.copy;
39650
- var assigned = state.assigned; // Reduce complexity by ensuring `base` is never longer.
39651
-
39652
- if (copy.length < base.length) {
39653
- (assign = [copy, base], base = assign[0], copy = assign[1]);
39654
- (assign$1 = [inversePatches, patches], patches = assign$1[0], inversePatches = assign$1[1]);
39655
- }
39656
-
39657
- var delta = copy.length - base.length; // Find the first replaced index.
39658
-
39659
- var start = 0;
39660
-
39661
- while (base[start] === copy[start] && start < base.length) {
39662
- ++start;
39663
- } // Find the last replaced index. Search from the end to optimize splice patches.
39664
-
39665
-
39666
- var end = base.length;
39667
-
39668
- while (end > start && base[end - 1] === copy[end + delta - 1]) {
39669
- --end;
39670
- } // Process replaced indices.
39671
-
39672
-
39673
- for (var i = start; i < end; ++i) {
39674
- if (assigned[i] && copy[i] !== base[i]) {
39675
- var path = basePath.concat([i]);
39676
- patches.push({
39677
- op: "replace",
39678
- path: path,
39679
- value: copy[i]
39680
- });
39681
- inversePatches.push({
39682
- op: "replace",
39683
- path: path,
39684
- value: base[i]
39685
- });
39686
- }
39687
- }
39688
-
39689
- var replaceCount = patches.length; // Process added indices.
39690
-
39691
- for (var i$1 = end + delta - 1; i$1 >= end; --i$1) {
39692
- var path$1 = basePath.concat([i$1]);
39693
- patches[replaceCount + i$1 - end] = {
39694
- op: "add",
39695
- path: path$1,
39696
- value: copy[i$1]
39697
- };
39698
- inversePatches.push({
39699
- op: "remove",
39700
- path: path$1
39701
- });
39702
- }
39703
- }
39704
-
39705
- function generateObjectPatches(state, basePath, patches, inversePatches) {
39706
- var base = state.base;
39707
- var copy = state.copy;
39708
- each(state.assigned, function (key, assignedValue) {
39709
- var origValue = base[key];
39710
- var value = copy[key];
39711
- var op = !assignedValue ? "remove" : key in base ? "replace" : "add";
39712
- if (origValue === value && op === "replace") { return; }
39713
- var path = basePath.concat(key);
39714
- patches.push(op === "remove" ? {
39715
- op: op,
39716
- path: path
39717
- } : {
39718
- op: op,
39719
- path: path,
39720
- value: value
39721
- });
39722
- inversePatches.push(op === "add" ? {
39723
- op: "remove",
39724
- path: path
39725
- } : op === "remove" ? {
39726
- op: "add",
39727
- path: path,
39728
- value: origValue
39729
- } : {
39730
- op: "replace",
39731
- path: path,
39732
- value: origValue
39733
- });
39734
- });
39735
- }
39736
-
39737
- var applyPatches = function (draft, patches) {
39738
- for (var i$1 = 0, list = patches; i$1 < list.length; i$1 += 1) {
39739
- var patch = list[i$1];
39740
-
39741
- var path = patch.path;
39742
- var op = patch.op;
39743
- var value = clone(patch.value); // used to clone patch to ensure original patch is not modified, see #411
39744
-
39745
- if (!path.length) { throw new Error("Illegal state"); }
39746
- var base = draft;
39747
-
39748
- for (var i = 0; i < path.length - 1; i++) {
39749
- base = base[path[i]];
39750
- if (!base || typeof base !== "object") { throw new Error("Cannot apply patch, path doesn't resolve: " + path.join("/")); } // prettier-ignore
39751
- }
39752
-
39753
- var key = path[path.length - 1];
39754
-
39755
- switch (op) {
39756
- case "replace":
39757
- // if value is an object, then it's assigned by reference
39758
- // in the following add or remove ops, the value field inside the patch will also be modifyed
39759
- // so we use value from the cloned patch
39760
- base[key] = value;
39761
- break;
39762
-
39763
- case "add":
39764
- if (Array.isArray(base)) {
39765
- // TODO: support "foo/-" paths for appending to an array
39766
- base.splice(key, 0, value);
39767
- } else {
39768
- base[key] = value;
39769
- }
39770
-
39771
- break;
39772
-
39773
- case "remove":
39774
- if (Array.isArray(base)) {
39775
- base.splice(key, 1);
39776
- } else {
39777
- delete base[key];
39778
- }
39779
-
39780
- break;
39781
-
39782
- default:
39783
- throw new Error("Unsupported patch operation: " + op);
39784
- }
39785
- }
39786
-
39787
- return draft;
39788
- };
39789
-
39790
- function verifyMinified() {}
39791
-
39792
- var configDefaults = {
39793
- useProxies: typeof Proxy !== "undefined" && typeof Reflect !== "undefined",
39794
- autoFreeze: typeof process !== "undefined" ? process.env.NODE_ENV !== "production" : verifyMinified.name === "verifyMinified",
39795
- onAssign: null,
39796
- onDelete: null,
39797
- onCopy: null
39798
- };
39799
- var Immer = function Immer(config) {
39800
- assign(this, configDefaults, config);
39801
- this.setUseProxies(this.useProxies);
39802
- this.produce = this.produce.bind(this);
39803
- };
39804
-
39805
- Immer.prototype.produce = function produce (base, recipe, patchListener) {
39806
- var this$1$1 = this;
39807
-
39808
- // curried invocation
39809
- if (typeof base === "function" && typeof recipe !== "function") {
39810
- var defaultBase = recipe;
39811
- recipe = base;
39812
- var self = this;
39813
- return function curriedProduce(base) {
39814
- var this$1$1 = this;
39815
- if ( base === void 0 ) base = defaultBase;
39816
- var args = [], len = arguments.length - 1;
39817
- while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];
39818
-
39819
- return self.produce(base, function (draft) { return recipe.call.apply(recipe, [ this$1$1, draft ].concat( args )); }); // prettier-ignore
39820
- };
39821
- } // prettier-ignore
39822
-
39823
-
39824
- {
39825
- if (typeof recipe !== "function") {
39826
- throw new Error("The first or second argument to `produce` must be a function");
39827
- }
39828
-
39829
- if (patchListener !== undefined && typeof patchListener !== "function") {
39830
- throw new Error("The third argument to `produce` must be a function or undefined");
39831
- }
39832
- }
39833
- var result; // Only plain objects, arrays, and "immerable classes" are drafted.
39834
-
39835
- if (isDraftable(base)) {
39836
- var scope = ImmerScope.enter();
39837
- var proxy = this.createProxy(base);
39838
- var hasError = true;
39839
-
39840
- try {
39841
- result = recipe(proxy);
39842
- hasError = false;
39843
- } finally {
39844
- // finally instead of catch + rethrow better preserves original stack
39845
- if (hasError) { scope.revoke(); }else { scope.leave(); }
39846
- }
39847
-
39848
- if (result instanceof Promise) {
39849
- return result.then(function (result) {
39850
- scope.usePatches(patchListener);
39851
- return this$1$1.processResult(result, scope);
39852
- }, function (error) {
39853
- scope.revoke();
39854
- throw error;
39855
- });
39856
- }
39857
-
39858
- scope.usePatches(patchListener);
39859
- return this.processResult(result, scope);
39860
- } else {
39861
- result = recipe(base);
39862
- if (result === undefined) { return base; }
39863
- return result !== NOTHING ? result : undefined;
39864
- }
39865
- };
39866
-
39867
- Immer.prototype.produceWithPatches = function produceWithPatches (arg1, arg2, arg3) {
39868
- var this$1$1 = this;
39869
-
39870
- if (typeof arg1 === "function") {
39871
- return function (state) {
39872
- var args = [], len = arguments.length - 1;
39873
- while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];
39874
-
39875
- return this$1$1.produceWithPatches(state, function (draft) { return arg1.apply(void 0, [ draft ].concat( args )); });
39876
- };
39877
- } // non-curried form
39878
-
39879
-
39880
- if (arg3) { throw new Error("A patch listener cannot be passed to produceWithPatches"); }
39881
- var patches, inversePatches;
39882
- var nextState = this.produce(arg1, arg2, function (p, ip) {
39883
- patches = p;
39884
- inversePatches = ip;
39885
- });
39886
- return [nextState, patches, inversePatches];
39887
- };
39888
-
39889
- Immer.prototype.createDraft = function createDraft (base) {
39890
- if (!isDraftable(base)) {
39891
- throw new Error("First argument to `createDraft` must be a plain object, an array, or an immerable object"); // prettier-ignore
39892
- }
39893
-
39894
- var scope = ImmerScope.enter();
39895
- var proxy = this.createProxy(base);
39896
- proxy[DRAFT_STATE].isManual = true;
39897
- scope.leave();
39898
- return proxy;
39899
- };
39900
-
39901
- Immer.prototype.finishDraft = function finishDraft (draft, patchListener) {
39902
- var state = draft && draft[DRAFT_STATE];
39903
-
39904
- if (!state || !state.isManual) {
39905
- throw new Error("First argument to `finishDraft` must be a draft returned by `createDraft`"); // prettier-ignore
39906
- }
39907
-
39908
- if (state.finalized) {
39909
- throw new Error("The given draft is already finalized"); // prettier-ignore
39910
- }
39911
-
39912
- var scope = state.scope;
39913
- scope.usePatches(patchListener);
39914
- return this.processResult(undefined, scope);
39915
- };
39916
-
39917
- Immer.prototype.setAutoFreeze = function setAutoFreeze (value) {
39918
- this.autoFreeze = value;
39919
- };
39920
-
39921
- Immer.prototype.setUseProxies = function setUseProxies (value) {
39922
- this.useProxies = value;
39923
- assign(this, value ? modernProxy : legacyProxy);
39924
- };
39925
-
39926
- Immer.prototype.applyPatches = function applyPatches$1 (base, patches) {
39927
- // If a patch replaces the entire state, take that replacement as base
39928
- // before applying patches
39929
- var i;
39930
-
39931
- for (i = patches.length - 1; i >= 0; i--) {
39932
- var patch = patches[i];
39933
-
39934
- if (patch.path.length === 0 && patch.op === "replace") {
39935
- base = patch.value;
39936
- break;
39937
- }
39938
- }
39939
-
39940
- if (isDraft(base)) {
39941
- // N.B: never hits if some patch a replacement, patches are never drafts
39942
- return applyPatches(base, patches);
39943
- } // Otherwise, produce a copy of the base state.
39944
-
39945
-
39946
- return this.produce(base, function (draft) { return applyPatches(draft, patches.slice(i + 1)); });
39947
- };
39948
- /** @internal */
39949
-
39950
-
39951
- Immer.prototype.processResult = function processResult (result, scope) {
39952
- var baseDraft = scope.drafts[0];
39953
- var isReplaced = result !== undefined && result !== baseDraft;
39954
- this.willFinalize(scope, result, isReplaced);
39955
-
39956
- if (isReplaced) {
39957
- if (baseDraft[DRAFT_STATE].modified) {
39958
- scope.revoke();
39959
- throw new Error("An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft."); // prettier-ignore
39960
- }
39961
-
39962
- if (isDraftable(result)) {
39963
- // Finalize the result in case it contains (or is) a subset of the draft.
39964
- result = this.finalize(result, null, scope);
39965
- }
39966
-
39967
- if (scope.patches) {
39968
- scope.patches.push({
39969
- op: "replace",
39970
- path: [],
39971
- value: result
39972
- });
39973
- scope.inversePatches.push({
39974
- op: "replace",
39975
- path: [],
39976
- value: baseDraft[DRAFT_STATE].base
39977
- });
39978
- }
39979
- } else {
39980
- // Finalize the base draft.
39981
- result = this.finalize(baseDraft, [], scope);
39982
- }
39983
-
39984
- scope.revoke();
39985
-
39986
- if (scope.patches) {
39987
- scope.patchListener(scope.patches, scope.inversePatches);
39988
- }
39989
-
39990
- return result !== NOTHING ? result : undefined;
39991
- };
39992
- /**
39993
- * @internal
39994
- * Finalize a draft, returning either the unmodified base state or a modified
39995
- * copy of the base state.
39996
- */
39997
-
39998
-
39999
- Immer.prototype.finalize = function finalize (draft, path, scope) {
40000
- var this$1$1 = this;
40001
-
40002
- var state = draft[DRAFT_STATE];
40003
-
40004
- if (!state) {
40005
- if (Object.isFrozen(draft)) { return draft; }
40006
- return this.finalizeTree(draft, null, scope);
40007
- } // Never finalize drafts owned by another scope.
40008
-
40009
-
40010
- if (state.scope !== scope) {
40011
- return draft;
40012
- }
40013
-
40014
- if (!state.modified) {
40015
- return state.base;
40016
- }
40017
-
40018
- if (!state.finalized) {
40019
- state.finalized = true;
40020
- this.finalizeTree(state.draft, path, scope);
40021
-
40022
- if (this.onDelete) {
40023
- // The `assigned` object is unreliable with ES5 drafts.
40024
- if (this.useProxies) {
40025
- var assigned = state.assigned;
40026
-
40027
- for (var prop in assigned) {
40028
- if (!assigned[prop]) { this.onDelete(state, prop); }
40029
- }
40030
- } else {
40031
- var base = state.base;
40032
- var copy = state.copy;
40033
- each(base, function (prop) {
40034
- if (!has$1(copy, prop)) { this$1$1.onDelete(state, prop); }
40035
- });
40036
- }
40037
- }
40038
-
40039
- if (this.onCopy) {
40040
- this.onCopy(state);
40041
- } // At this point, all descendants of `state.copy` have been finalized,
40042
- // so we can be sure that `scope.canAutoFreeze` is accurate.
40043
-
40044
-
40045
- if (this.autoFreeze && scope.canAutoFreeze) {
40046
- Object.freeze(state.copy);
40047
- }
40048
-
40049
- if (path && scope.patches) {
40050
- generatePatches(state, path, scope.patches, scope.inversePatches);
40051
- }
40052
- }
40053
-
40054
- return state.copy;
40055
- };
40056
- /**
40057
- * @internal
40058
- * Finalize all drafts in the given state tree.
40059
- */
40060
-
40061
-
40062
- Immer.prototype.finalizeTree = function finalizeTree (root, rootPath, scope) {
40063
- var this$1$1 = this;
40064
-
40065
- var state = root[DRAFT_STATE];
40066
-
40067
- if (state) {
40068
- if (!this.useProxies) {
40069
- // Create the final copy, with added keys and without deleted keys.
40070
- state.copy = shallowCopy(state.draft, true);
40071
- }
40072
-
40073
- root = state.copy;
40074
- }
40075
-
40076
- var needPatches = !!rootPath && !!scope.patches;
40077
-
40078
- var finalizeProperty = function (prop, value, parent) {
40079
- if (value === parent) {
40080
- throw Error("Immer forbids circular references");
40081
- } // In the `finalizeTree` method, only the `root` object may be a draft.
40082
-
40083
-
40084
- var isDraftProp = !!state && parent === root;
40085
-
40086
- if (isDraft(value)) {
40087
- var path = isDraftProp && needPatches && !state.assigned[prop] ? rootPath.concat(prop) : null; // Drafts owned by `scope` are finalized here.
40088
-
40089
- value = this$1$1.finalize(value, path, scope); // Drafts from another scope must prevent auto-freezing.
40090
-
40091
- if (isDraft(value)) {
40092
- scope.canAutoFreeze = false;
40093
- } // Preserve non-enumerable properties.
40094
-
40095
-
40096
- if (Array.isArray(parent) || isEnumerable(parent, prop)) {
40097
- parent[prop] = value;
40098
- } else {
40099
- Object.defineProperty(parent, prop, {
40100
- value: value
40101
- });
40102
- } // Unchanged drafts are never passed to the `onAssign` hook.
40103
-
40104
-
40105
- if (isDraftProp && value === state.base[prop]) { return; }
40106
- } // Unchanged draft properties are ignored.
40107
- else if (isDraftProp && is(value, state.base[prop])) {
40108
- return;
40109
- } // Search new objects for unfinalized drafts. Frozen objects should never contain drafts.
40110
- else if (isDraftable(value) && !Object.isFrozen(value)) {
40111
- each(value, finalizeProperty);
40112
- }
40113
-
40114
- if (isDraftProp && this$1$1.onAssign) {
40115
- this$1$1.onAssign(state, prop, value);
40116
- }
40117
- };
40118
-
40119
- each(root, finalizeProperty);
40120
- return root;
40121
- };
40122
-
40123
- var immer = new Immer();
40124
- /**
40125
- * The `produce` function takes a value and a "recipe function" (whose
40126
- * return value often depends on the base state). The recipe function is
40127
- * free to mutate its first argument however it wants. All mutations are
40128
- * only ever applied to a __copy__ of the base state.
40129
- *
40130
- * Pass only a function to create a "curried producer" which relieves you
40131
- * from passing the recipe function every time.
40132
- *
40133
- * Only plain objects and arrays are made mutable. All other objects are
40134
- * considered uncopyable.
40135
- *
40136
- * Note: This function is __bound__ to its `Immer` instance.
40137
- *
40138
- * @param {any} base - the initial state
40139
- * @param {Function} producer - function that receives a proxy of the base state as first argument and which can be freely modified
40140
- * @param {Function} patchListener - optional function that will be called with all the patches produced here
40141
- * @returns {any} a new state, or the initial state if nothing was modified
40142
- */
40143
-
40144
- var produce = immer.produce;
40145
- /**
40146
- * Like `produce`, but `produceWithPatches` always returns a tuple
40147
- * [nextState, patches, inversePatches] (instead of just the next state)
40148
- */
40149
-
40150
- immer.produceWithPatches.bind(immer);
40151
- /**
40152
- * Pass true to automatically freeze all copies created by Immer.
40153
- *
40154
- * By default, auto-freezing is disabled in production.
40155
- */
40156
-
40157
- immer.setAutoFreeze.bind(immer);
40158
- /**
40159
- * Pass true to use the ES2015 `Proxy` class when creating drafts, which is
40160
- * always faster than using ES5 proxies.
40161
- *
40162
- * By default, feature detection is used, so calling this is rarely necessary.
40163
- */
40164
-
40165
- immer.setUseProxies.bind(immer);
40166
- /**
40167
- * Apply an array of Immer patches to the first argument.
40168
- *
40169
- * This function is a producer, which means copy-on-write is in effect.
40170
- */
40171
-
40172
- immer.applyPatches.bind(immer);
40173
- /**
40174
- * Create an Immer draft from the given base state, which may be a draft itself.
40175
- * The draft can be modified until you finalize it with the `finishDraft` function.
40176
- */
40177
-
40178
- immer.createDraft.bind(immer);
40179
- /**
40180
- * Finalize an Immer draft from a `createDraft` call, returning the base state
40181
- * (if no changes were made) or a modified copy. The draft must *not* be
40182
- * mutated afterwards.
40183
- *
40184
- * Pass a function as the 2nd argument to generate Immer patches based on the
40185
- * changes that were made.
40186
- */
40187
-
40188
- immer.finishDraft.bind(immer);
40189
-
40190
- const createInitialState = formConfig => {
39072
+ const createInitialState = (formConfig) => {
40191
39073
  let initialForm = {};
40192
39074
  const formConfigKeys = Object.keys(formConfig);
40193
39075
  for (let formKey of formConfigKeys) {
40194
39076
  initialForm[formKey] = {
40195
39077
  dirty: false,
40196
- rawValue: formConfig[formKey].defaultValue || "",
39078
+ rawValue: formConfig[formKey].defaultValue || '',
40197
39079
  validators: formConfig[formKey].validators || [],
40198
- constraints: formConfig[formKey].constraints || []
39080
+ constraints: formConfig[formKey].constraints || [],
40199
39081
  };
40200
39082
  }
40201
39083
  // Because validators require the entire form we have to do a
@@ -40206,82 +39088,99 @@ const createInitialState = formConfig => {
40206
39088
  initialForm[formKey].errors = errors;
40207
39089
  initialForm[formKey].hasErrors = errors.length > 0;
40208
39090
  }
39091
+
40209
39092
  return initialForm;
40210
39093
  };
40211
39094
 
40212
- const SET = "field/SET";
40213
- const set$2 = fieldName => value => ({
39095
+ const SET = 'field/SET';
39096
+ const set$1 = (fieldName) => (value) => ({
40214
39097
  type: SET,
40215
- payload: { fieldName, value }
39098
+ payload: { fieldName, value },
40216
39099
  });
40217
39100
 
40218
- const CLEAR = "form/CLEAR";
39101
+ const CLEAR = 'form/CLEAR';
40219
39102
  const clear = () => ({ type: CLEAR });
40220
39103
 
40221
- const ADD_VALIDATOR = "field/ADD_VALIDATOR";
40222
- const addValidator = fieldName => validator => ({
39104
+ const ADD_VALIDATOR = 'field/ADD_VALIDATOR';
39105
+ const addValidator = (fieldName) => (validator) => ({
40223
39106
  type: ADD_VALIDATOR,
40224
- payload: { fieldName, validator }
39107
+ payload: { fieldName, validator },
40225
39108
  });
40226
39109
 
40227
- const createFormReducer = formConfig => (
40228
- state = createInitialState(formConfig),
40229
- action
40230
- ) => {
40231
- switch (action.type) {
40232
- case SET:
40233
- const changedFieldName = action.payload.fieldName;
40234
- const newRawValue = action.payload.value;
40235
-
40236
- return produce(state, draftState => {
40237
- let originalValue = draftState[changedFieldName].rawValue;
40238
- draftState[changedFieldName].rawValue = newRawValue;
40239
- if (computeConstraints(changedFieldName, draftState).length > 0) {
40240
- // If the change violates constraints, revert the change
40241
- draftState[changedFieldName].rawValue = originalValue;
40242
- return draftState;
40243
- }
39110
+ const REMOVE_VALIDATOR = 'field/REMOVE_VALIDATOR';
39111
+ const removeValidator = (fieldName) => (validator) => ({
39112
+ type: REMOVE_VALIDATOR,
39113
+ payload: { fieldName, validator },
39114
+ });
40244
39115
 
40245
- const fields = Object.entries(draftState);
40246
- for (let entry of fields) {
40247
- let fieldName = entry[0];
40248
- let field = entry[1];
40249
- let errors = computeErrors(fieldName, draftState);
40250
- let dirty = fieldName === changedFieldName ? true : field.dirty;
40251
- draftState[fieldName].errors = errors;
40252
- draftState[fieldName].dirty = dirty;
40253
- draftState[fieldName].hasErrors = errors.length > 0;
40254
- }
40255
- });
40256
- case CLEAR:
40257
- return createInitialState(formConfig);
40258
- case ADD_VALIDATOR:
40259
- const fieldWithOverride = action.payload.fieldName;
40260
- const newValidator = action.payload.validator;
40261
-
40262
- return produce(state, draftState => {
40263
- draftState[fieldWithOverride].validators.push(newValidator);
40264
- const fields = Object.entries(draftState);
40265
- for (let entry of fields) {
40266
- let fieldName = entry[0];
40267
- let field = entry[1];
40268
- let errors = computeErrors(fieldName, draftState);
40269
- let dirty = field.dirty;
40270
- draftState[fieldName].errors = errors;
40271
- draftState[fieldName].dirty = dirty;
40272
- draftState[fieldName].hasErrors = errors.length > 0;
40273
- }
40274
- });
40275
- default:
40276
- return state;
40277
- }
40278
- };
39116
+ const CLEAR_FIELD_VALIDATORS = 'field/CLEAR_FIELD_VALIDATORS';
39117
+ const clearFieldValidators = (fieldName) => () => ({
39118
+ type: CLEAR_FIELD_VALIDATORS,
39119
+ payload: { fieldName },
39120
+ });
39121
+
39122
+ const createFormReducer =
39123
+ (formConfig) =>
39124
+ (state = createInitialState(formConfig), action) => {
39125
+ switch (action.type) {
39126
+ case SET: {
39127
+ const changedFieldName = action.payload.fieldName;
39128
+ const newRawValue = action.payload.value;
39129
+
39130
+ return produce(state, (draftState) => {
39131
+ let originalValue = draftState[changedFieldName].rawValue;
39132
+ draftState[changedFieldName].rawValue = newRawValue;
39133
+ if (computeConstraints(changedFieldName, draftState).length > 0) {
39134
+ // If the change violates constraints, revert the change
39135
+ draftState[changedFieldName].rawValue = originalValue;
39136
+ return draftState;
39137
+ }
39138
+
39139
+ computeDirtyEntries(draftState, changedFieldName);
39140
+ computeErrorEntries(draftState);
39141
+ });
39142
+ }
39143
+ case CLEAR:
39144
+ return createInitialState(formConfig);
39145
+ case ADD_VALIDATOR: {
39146
+ const fieldWithOverride = action.payload.fieldName;
39147
+ const newValidator = action.payload.validator;
39148
+
39149
+ return produce(state, (draftState) => {
39150
+ draftState[fieldWithOverride].validators.push(newValidator);
39151
+ computeErrorEntries(draftState);
39152
+ });
39153
+ }
39154
+ case REMOVE_VALIDATOR: {
39155
+ const fieldToOverride = action.payload.fieldName;
39156
+ const targetValidator = action.payload.validator;
39157
+
39158
+ return produce(state, (draftState) => {
39159
+ let fieldValidators = draftState[fieldToOverride].validators;
39160
+ draftState[fieldToOverride].validators = fieldValidators.filter(
39161
+ (validator) => validator.type !== targetValidator.type
39162
+ );
39163
+ computeErrorEntries(draftState);
39164
+ });
39165
+ }
39166
+ case CLEAR_FIELD_VALIDATORS: {
39167
+ const fieldToClear = action.payload.fieldName;
39168
+
39169
+ return produce(state, (draftState) => {
39170
+ draftState[fieldToClear].validators = [];
39171
+ computeErrorEntries(draftState);
39172
+ });
39173
+ }
39174
+ default:
39175
+ return state;
39176
+ }
39177
+ };
40279
39178
 
40280
- const createMapDispatchToProps = formConfig => {
39179
+ const createMapDispatchToProps = (formConfig) => {
40281
39180
  // Do memo-ization
40282
39181
  let cachedDispatch;
40283
39182
  let cacheValue;
40284
- return dispatch => {
39183
+ return (dispatch) => {
40285
39184
  if (dispatch == cachedDispatch) {
40286
39185
  return cacheValue;
40287
39186
  }
@@ -40290,8 +39189,11 @@ const createMapDispatchToProps = formConfig => {
40290
39189
  const keys = Object.keys(formConfig);
40291
39190
  for (let fieldName of keys) {
40292
39191
  dispatchObj.fields[fieldName] = {
40293
- set: value => dispatch(set$2(fieldName)(value)),
40294
- addValidator: validator => dispatch(addValidator(fieldName)(validator))
39192
+ set: (value) => dispatch(set$1(fieldName)(value)),
39193
+ addValidator: (validator) => dispatch(addValidator(fieldName)(validator)),
39194
+ removeValidator: (validator) =>
39195
+ dispatch(removeValidator(fieldName)(validator)),
39196
+ clear: () => dispatch(clearFieldValidators(fieldName)()),
40295
39197
  };
40296
39198
  }
40297
39199
  dispatchObj.form = { clear: () => dispatch(clear()) };
@@ -40301,12 +39203,12 @@ const createMapDispatchToProps = formConfig => {
40301
39203
  };
40302
39204
  };
40303
39205
 
40304
- const mapStateToProps = state => ({ fields: state });
39206
+ const mapStateToProps = (state) => ({ fields: state });
40305
39207
 
40306
- const createFormState = formConfig => ({
39208
+ const createFormState = (formConfig) => ({
40307
39209
  reducer: createFormReducer(formConfig),
40308
39210
  mapDispatchToProps: createMapDispatchToProps(formConfig),
40309
- mapStateToProps: mapStateToProps
39211
+ mapStateToProps: mapStateToProps,
40310
39212
  });
40311
39213
 
40312
39214
  var AddressForm = function AddressForm(_ref) {
@@ -43160,12 +42062,12 @@ LoginForm.mapDispatchToProps = mapDispatchToProps$5;
43160
42062
  * This source code is licensed under the MIT license found in the
43161
42063
  * LICENSE file in the root directory of this source tree.
43162
42064
  */
43163
- var b$1="function"===typeof Symbol&&Symbol.for,c$1=b$1?Symbol.for("react.element"):60103,d=b$1?Symbol.for("react.portal"):60106,e=b$1?Symbol.for("react.fragment"):60107,f$6=b$1?Symbol.for("react.strict_mode"):60108,g=b$1?Symbol.for("react.profiler"):60114,h=b$1?Symbol.for("react.provider"):60109,k=b$1?Symbol.for("react.context"):60110,l=b$1?Symbol.for("react.async_mode"):60111,m=b$1?Symbol.for("react.concurrent_mode"):60111,n=b$1?Symbol.for("react.forward_ref"):60112,p=b$1?Symbol.for("react.suspense"):60113,q=b$1?
43164
- Symbol.for("react.suspense_list"):60120,r=b$1?Symbol.for("react.memo"):60115,t=b$1?Symbol.for("react.lazy"):60116,v=b$1?Symbol.for("react.block"):60121,w=b$1?Symbol.for("react.fundamental"):60117,x=b$1?Symbol.for("react.responder"):60118,y=b$1?Symbol.for("react.scope"):60119;
43165
- function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c$1:switch(a=a.type,a){case l:case m:case e:case g:case f$6:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}var AsyncMode=l;var ConcurrentMode=m;var ContextConsumer=k;var ContextProvider=h;var Element$1=c$1;var ForwardRef=n;var Fragment=e;var Lazy=t;var Memo=r;var Portal=d;
43166
- var Profiler=g;var StrictMode=f$6;var Suspense=p;var isAsyncMode=function(a){return A(a)||z(a)===l};var isConcurrentMode=A;var isContextConsumer=function(a){return z(a)===k};var isContextProvider=function(a){return z(a)===h};var isElement=function(a){return "object"===typeof a&&null!==a&&a.$$typeof===c$1};var isForwardRef=function(a){return z(a)===n};var isFragment=function(a){return z(a)===e};var isLazy=function(a){return z(a)===t};
43167
- var isMemo=function(a){return z(a)===r};var isPortal=function(a){return z(a)===d};var isProfiler=function(a){return z(a)===g};var isStrictMode=function(a){return z(a)===f$6};var isSuspense=function(a){return z(a)===p};
43168
- var isValidElementType=function(a){return "string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f$6||a===p||a===q||"object"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};var typeOf=z;
42065
+ var b$2="function"===typeof Symbol&&Symbol.for,c$2=b$2?Symbol.for("react.element"):60103,d$1=b$2?Symbol.for("react.portal"):60106,e=b$2?Symbol.for("react.fragment"):60107,f$7=b$2?Symbol.for("react.strict_mode"):60108,g$1=b$2?Symbol.for("react.profiler"):60114,h$1=b$2?Symbol.for("react.provider"):60109,k$1=b$2?Symbol.for("react.context"):60110,l$1=b$2?Symbol.for("react.async_mode"):60111,m=b$2?Symbol.for("react.concurrent_mode"):60111,n$1=b$2?Symbol.for("react.forward_ref"):60112,p$1=b$2?Symbol.for("react.suspense"):60113,q$1=b$2?
42066
+ Symbol.for("react.suspense_list"):60120,r$1=b$2?Symbol.for("react.memo"):60115,t$1=b$2?Symbol.for("react.lazy"):60116,v$1=b$2?Symbol.for("react.block"):60121,w$1=b$2?Symbol.for("react.fundamental"):60117,x$1=b$2?Symbol.for("react.responder"):60118,y$1=b$2?Symbol.for("react.scope"):60119;
42067
+ function z$1(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c$2:switch(a=a.type,a){case l$1:case m:case e:case g$1:case f$7:case p$1:return a;default:switch(a=a&&a.$$typeof,a){case k$1:case n$1:case t$1:case r$1:case h$1:return a;default:return u}}case d$1:return u}}}function A$1(a){return z$1(a)===m}var AsyncMode=l$1;var ConcurrentMode=m;var ContextConsumer=k$1;var ContextProvider=h$1;var Element$1=c$2;var ForwardRef=n$1;var Fragment=e;var Lazy=t$1;var Memo=r$1;var Portal=d$1;
42068
+ var Profiler=g$1;var StrictMode=f$7;var Suspense=p$1;var isAsyncMode=function(a){return A$1(a)||z$1(a)===l$1};var isConcurrentMode=A$1;var isContextConsumer=function(a){return z$1(a)===k$1};var isContextProvider=function(a){return z$1(a)===h$1};var isElement=function(a){return "object"===typeof a&&null!==a&&a.$$typeof===c$2};var isForwardRef=function(a){return z$1(a)===n$1};var isFragment=function(a){return z$1(a)===e};var isLazy=function(a){return z$1(a)===t$1};
42069
+ var isMemo=function(a){return z$1(a)===r$1};var isPortal=function(a){return z$1(a)===d$1};var isProfiler=function(a){return z$1(a)===g$1};var isStrictMode=function(a){return z$1(a)===f$7};var isSuspense=function(a){return z$1(a)===p$1};
42070
+ var isValidElementType=function(a){return "string"===typeof a||"function"===typeof a||a===e||a===m||a===g$1||a===f$7||a===p$1||a===q$1||"object"===typeof a&&null!==a&&(a.$$typeof===t$1||a.$$typeof===r$1||a.$$typeof===h$1||a.$$typeof===k$1||a.$$typeof===n$1||a.$$typeof===w$1||a.$$typeof===x$1||a.$$typeof===y$1||a.$$typeof===v$1)};var typeOf=z$1;
43169
42071
 
43170
42072
  var reactIs_production_min = {
43171
42073
  AsyncMode: AsyncMode,
@@ -43536,14 +42438,14 @@ var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
43536
42438
 
43537
42439
  var ReactPropTypesSecret_1 = ReactPropTypesSecret;
43538
42440
 
43539
- var has$2 = Function.call.bind(Object.prototype.hasOwnProperty);
42441
+ var has$1 = Function.call.bind(Object.prototype.hasOwnProperty);
43540
42442
 
43541
42443
  var printWarning = function() {};
43542
42444
 
43543
42445
  if (process.env.NODE_ENV !== 'production') {
43544
42446
  var ReactPropTypesSecret$1 = ReactPropTypesSecret_1;
43545
42447
  var loggedTypeFailures = {};
43546
- var has$3 = has$2;
42448
+ var has$2 = has$1;
43547
42449
 
43548
42450
  printWarning = function(text) {
43549
42451
  var message = 'Warning: ' + text;
@@ -43573,7 +42475,7 @@ if (process.env.NODE_ENV !== 'production') {
43573
42475
  function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
43574
42476
  if (process.env.NODE_ENV !== 'production') {
43575
42477
  for (var typeSpecName in typeSpecs) {
43576
- if (has$3(typeSpecs, typeSpecName)) {
42478
+ if (has$2(typeSpecs, typeSpecName)) {
43577
42479
  var error;
43578
42480
  // Prop type validation may throw. In case they do, we don't want to
43579
42481
  // fail the render phase where it didn't fail before. So we log it.
@@ -43972,7 +42874,7 @@ var factoryWithTypeCheckers = function(isValidElement, throwOnDirectAccess) {
43972
42874
  return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
43973
42875
  }
43974
42876
  for (var key in propValue) {
43975
- if (has$2(propValue, key)) {
42877
+ if (has$1(propValue, key)) {
43976
42878
  var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret_1);
43977
42879
  if (error instanceof Error) {
43978
42880
  return error;
@@ -44009,7 +42911,7 @@ var factoryWithTypeCheckers = function(isValidElement, throwOnDirectAccess) {
44009
42911
  if (checkerResult == null) {
44010
42912
  return null;
44011
42913
  }
44012
- if (checkerResult.data && has$2(checkerResult.data, 'expectedType')) {
42914
+ if (checkerResult.data && has$1(checkerResult.data, 'expectedType')) {
44013
42915
  expectedTypes.push(checkerResult.data.expectedType);
44014
42916
  }
44015
42917
  }
@@ -44069,7 +42971,7 @@ var factoryWithTypeCheckers = function(isValidElement, throwOnDirectAccess) {
44069
42971
  var allKeys = objectAssign({}, props[propName], shapeTypes);
44070
42972
  for (var key in allKeys) {
44071
42973
  var checker = shapeTypes[key];
44072
- if (has$2(shapeTypes, key) && typeof checker !== 'function') {
42974
+ if (has$1(shapeTypes, key) && typeof checker !== 'function') {
44073
42975
  return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
44074
42976
  }
44075
42977
  if (!checker) {
@@ -44807,7 +43709,7 @@ var index_esm = /*#__PURE__*/Object.freeze({
44807
43709
  * @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
44808
43710
  */
44809
43711
 
44810
- function ownKeys$3(object, enumerableOnly) {
43712
+ function ownKeys$2(object, enumerableOnly) {
44811
43713
  var keys = Object.keys(object);
44812
43714
 
44813
43715
  if (Object.getOwnPropertySymbols) {
@@ -44823,9 +43725,9 @@ function ownKeys$3(object, enumerableOnly) {
44823
43725
  function _objectSpread2$1(target) {
44824
43726
  for (var i = 1; i < arguments.length; i++) {
44825
43727
  var source = null != arguments[i] ? arguments[i] : {};
44826
- i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) {
43728
+ i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) {
44827
43729
  _defineProperty$1(target, key, source[key]);
44828
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) {
43730
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) {
44829
43731
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
44830
43732
  });
44831
43733
  }
@@ -48213,22 +47115,57 @@ var PaymentDetailsContent = function PaymentDetailsContent(_ref) {
48213
47115
  var LoadingDetails = function LoadingDetails() {
48214
47116
  return /*#__PURE__*/React.createElement(Box, {
48215
47117
  padding: "0",
48216
- background: GRECIAN_GREY,
48217
- borderRadius: "4px",
48218
47118
  minHeight: "196px"
48219
- }, /*#__PURE__*/React.createElement(Cover, {
48220
- minHeight: "196px",
48221
- singleChild: true,
48222
- fillCenter: true
48223
- }, /*#__PURE__*/React.createElement(Center, {
48224
- intrinsic: true
48225
47119
  }, /*#__PURE__*/React.createElement(Box, {
48226
47120
  padding: "0",
48227
- extraStyles: "flex-grow: 1; display: flex; justify-content: center; align-items: center;"
47121
+ extraStyles: "position: absolute;\n height: 200px;\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;"
48228
47122
  }, /*#__PURE__*/React.createElement(Spinner$2, {
48229
47123
  size: "100",
48230
47124
  centerSpinner: true
48231
- })))));
47125
+ })), /*#__PURE__*/React.createElement(Stack, {
47126
+ childGap: "16px"
47127
+ }, /*#__PURE__*/React.createElement(Cluster, {
47128
+ nowrap: true,
47129
+ justify: "space-between",
47130
+ align: "start"
47131
+ }, /*#__PURE__*/React.createElement(LoadingLine, {
47132
+ exactWidth: "110",
47133
+ height: "27px"
47134
+ }), /*#__PURE__*/React.createElement(LoadingLine, {
47135
+ exactWidth: "60",
47136
+ height: "27px"
47137
+ })), /*#__PURE__*/React.createElement(SolidDivider$1, null), /*#__PURE__*/React.createElement(Box, {
47138
+ padding: "0.5rem 0"
47139
+ }, /*#__PURE__*/React.createElement(Cluster, {
47140
+ justify: "space-between",
47141
+ align: "start"
47142
+ }, /*#__PURE__*/React.createElement(LoadingLine, {
47143
+ exactWidth: "80",
47144
+ height: "27px"
47145
+ }), /*#__PURE__*/React.createElement(LoadingLine, {
47146
+ exactWidth: "60",
47147
+ height: "27px"
47148
+ })), /*#__PURE__*/React.createElement(Box, {
47149
+ padding: "4px 0"
47150
+ }), /*#__PURE__*/React.createElement(Cluster, {
47151
+ justify: "space-between",
47152
+ align: "start"
47153
+ }, /*#__PURE__*/React.createElement(LoadingLine, {
47154
+ exactWidth: "100",
47155
+ height: "27px"
47156
+ }), /*#__PURE__*/React.createElement(LoadingLine, {
47157
+ exactWidth: "50",
47158
+ height: "27px"
47159
+ }))), /*#__PURE__*/React.createElement(SolidDivider$1, null), /*#__PURE__*/React.createElement(Stack, {
47160
+ justify: "space-between",
47161
+ direction: "row"
47162
+ }, /*#__PURE__*/React.createElement(LoadingLine, {
47163
+ exactWidth: "55",
47164
+ height: "30px"
47165
+ }), /*#__PURE__*/React.createElement(LoadingLine, {
47166
+ exactWidth: "70",
47167
+ height: "30px"
47168
+ }))));
48232
47169
  };
48233
47170
 
48234
47171
  var ErrorDetails = function ErrorDetails() {