@thecb/components 9.0.3-beta.9 → 9.1.0-beta.1

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.cjs.js CHANGED
@@ -26603,12 +26603,37 @@ var fallbackValues$q = {
26603
26603
  };
26604
26604
 
26605
26605
  var LineItem = function LineItem(_ref) {
26606
+ var _customAttributes$fil;
26607
+
26606
26608
  var description = _ref.description,
26607
26609
  subDescription = _ref.subDescription,
26608
26610
  amount = _ref.amount,
26609
26611
  themeValues = _ref.themeValues,
26612
+ customAttributes = _ref.customAttributes,
26613
+ _ref$visibleFields = _ref.visibleFields,
26614
+ visibleFields = _ref$visibleFields === void 0 ? [] : _ref$visibleFields,
26610
26615
  _ref$displayQuantity = _ref.displayQuantity,
26611
26616
  displayQuantity = _ref$displayQuantity === void 0 ? null : _ref$displayQuantity;
26617
+
26618
+ var formatAttrKeys = function formatAttrKeys(key) {
26619
+ var keyWithoutUnderscores = key.replace(/_/g, " ");
26620
+ var capitalizedKey = keyWithoutUnderscores.split(" ").map(function (word) {
26621
+ return word.charAt(0).toUpperCase();
26622
+ }).join(" ");
26623
+ return capitalizedKey;
26624
+ };
26625
+
26626
+ var visibleCustomAttrs = customAttributes === null || customAttributes === void 0 ? void 0 : (_customAttributes$fil = customAttributes.filter(function (attr) {
26627
+ return visibleFields.includes(attr.key) && attr.key !== "description";
26628
+ })) === null || _customAttributes$fil === void 0 ? void 0 : _customAttributes$fil.map(function (attr) {
26629
+ return /*#__PURE__*/React__default.createElement(Paragraph$1, {
26630
+ variant: themeValues.paragraphVariant,
26631
+ weight: "400",
26632
+ key: attr.key
26633
+ }, /*#__PURE__*/React__default.createElement(Text$1, {
26634
+ weight: FONT_WEIGHT_SEMIBOLD
26635
+ }, "".concat(formatAttrKeys(attr.key), ":")), /*#__PURE__*/React__default.createElement(Text$1, null, " ".concat(attr.value)));
26636
+ });
26612
26637
  return /*#__PURE__*/React__default.createElement(Cluster, {
26613
26638
  nowrap: true,
26614
26639
  justify: "space-between",
@@ -26621,7 +26646,9 @@ var LineItem = function LineItem(_ref) {
26621
26646
  }, description), /*#__PURE__*/React__default.createElement(Paragraph$1, {
26622
26647
  variant: themeValues.paragraphVariant,
26623
26648
  weight: "400"
26624
- }, subDescription)), !!displayQuantity && /*#__PURE__*/React__default.createElement(Paragraph$1, {
26649
+ }, subDescription), visibleCustomAttrs && /*#__PURE__*/React__default.createElement(Stack, {
26650
+ childGap: "0"
26651
+ }, visibleCustomAttrs)), !!displayQuantity && /*#__PURE__*/React__default.createElement(Paragraph$1, {
26625
26652
  variant: themeValues.paragraphVariant,
26626
26653
  weight: themeValues.weightTitle
26627
26654
  }, "x".concat(displayQuantity)), /*#__PURE__*/React__default.createElement(Paragraph$1, {
@@ -27219,11 +27246,7 @@ var RadioButton$1 = function RadioButton(_ref2) {
27219
27246
  disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
27220
27247
  _ref2$ariaDescribedBy = _ref2.ariaDescribedBy,
27221
27248
  ariaDescribedBy = _ref2$ariaDescribedBy === void 0 ? "" : _ref2$ariaDescribedBy,
27222
- themeValues = _ref2.themeValues,
27223
- _ref2$ariaLabelledBy = _ref2.ariaLabelledBy,
27224
- ariaLabelledBy = _ref2$ariaLabelledBy === void 0 ? "" : _ref2$ariaLabelledBy,
27225
- _ref2$ariaLabel = _ref2.ariaLabel,
27226
- ariaLabel = _ref2$ariaLabel === void 0 ? null : _ref2$ariaLabel;
27249
+ themeValues = _ref2.themeValues;
27227
27250
  var buttonBorder = {
27228
27251
  onFocused: {
27229
27252
  borderColor: themeValues.activeColor,
@@ -27264,27 +27287,19 @@ var RadioButton$1 = function RadioButton(_ref2) {
27264
27287
  width: "0px"
27265
27288
  }
27266
27289
  };
27267
- var extraProps = {};
27268
-
27269
- if (ariaLabelledBy && ariaLabelledBy.length) {
27270
- extraProps["aria-labelledby"] = ariaLabelledBy;
27271
- } else if (ariaLabel && ariaLabel !== null) {
27272
- extraProps["aria-label"] = ariaLabel;
27273
- }
27274
-
27275
27290
  return /*#__PURE__*/React__default.createElement(Motion, {
27276
27291
  position: "relative",
27277
27292
  padding: "0",
27278
27293
  initial: "off",
27279
27294
  animate: radioOn ? radioFocused ? "onFocused" : "on" : radioFocused ? "offFocused" : "off"
27280
- }, /*#__PURE__*/React__default.createElement(HiddenRadioButton, _extends({
27281
- type: "radio",
27282
- id: "radio-".concat(name),
27295
+ }, /*#__PURE__*/React__default.createElement(HiddenRadioButton, {
27296
+ id: "#radio-".concat(name),
27297
+ "aria-label": name,
27283
27298
  disabled: disabled,
27284
27299
  onClick: toggleRadio,
27285
27300
  "aria-describedby": ariaDescribedBy,
27286
27301
  tabIndex: "-1"
27287
- }, extraProps)), /*#__PURE__*/React__default.createElement(Motion, {
27302
+ }), /*#__PURE__*/React__default.createElement(Motion, {
27288
27303
  borderWidth: "1px",
27289
27304
  borderStyle: "solid",
27290
27305
  borderRadius: "12px",
@@ -38607,52 +38622,44 @@ var TableHeading_styled = styled__default.th.withConfig({
38607
38622
  return extraStyles;
38608
38623
  });
38609
38624
 
38610
- const validatorToPredicate =
38611
- (validatorFn, emptyCase) =>
38612
- (value, ...rest) =>
38613
- value === '' ? emptyCase : validatorFn(value, ...rest);
38625
+ const validatorToPredicate = (validatorFn, emptyCase) => (
38626
+ value,
38627
+ ...rest
38628
+ ) => (value === "" ? emptyCase : validatorFn(value, ...rest));
38614
38629
 
38615
38630
  var commonjsGlobal$1 = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
38616
38631
 
38617
- function getDefaultExportFromCjs (x) {
38618
- return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
38619
- }
38620
-
38621
38632
  var dayjs_min = {exports: {}};
38622
38633
 
38623
38634
  (function (module, exports) {
38624
- !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}));
38625
- } (dayjs_min));
38635
+ !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}));
38636
+ }(dayjs_min));
38626
38637
 
38627
- var dayjs_minExports = dayjs_min.exports;
38628
- var dayjs = /*@__PURE__*/getDefaultExportFromCjs(dayjs_minExports);
38638
+ var dayjs = dayjs_min.exports;
38629
38639
 
38630
38640
  var customParseFormat$1 = {exports: {}};
38631
38641
 
38632
38642
  (function (module, exports) {
38633
- !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);};}}));
38634
- } (customParseFormat$1));
38643
+ !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);};}}));
38644
+ }(customParseFormat$1));
38635
38645
 
38636
- var customParseFormatExports = customParseFormat$1.exports;
38637
- var customParseFormat = /*@__PURE__*/getDefaultExportFromCjs(customParseFormatExports);
38646
+ var customParseFormat = customParseFormat$1.exports;
38638
38647
 
38639
38648
  var isSameOrBefore$1 = {exports: {}};
38640
38649
 
38641
38650
  (function (module, exports) {
38642
- !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)};}}));
38643
- } (isSameOrBefore$1));
38651
+ !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)};}}));
38652
+ }(isSameOrBefore$1));
38644
38653
 
38645
- var isSameOrBeforeExports = isSameOrBefore$1.exports;
38646
- var isSameOrBefore = /*@__PURE__*/getDefaultExportFromCjs(isSameOrBeforeExports);
38654
+ var isSameOrBefore = isSameOrBefore$1.exports;
38647
38655
 
38648
38656
  var isSameOrAfter$1 = {exports: {}};
38649
38657
 
38650
38658
  (function (module, exports) {
38651
- !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)};}}));
38652
- } (isSameOrAfter$1));
38659
+ !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)};}}));
38660
+ }(isSameOrAfter$1));
38653
38661
 
38654
- var isSameOrAfterExports = isSameOrAfter$1.exports;
38655
- var isSameOrAfter = /*@__PURE__*/getDefaultExportFromCjs(isSameOrAfterExports);
38662
+ var isSameOrAfter = isSameOrAfter$1.exports;
38656
38663
 
38657
38664
  /* eslint-disable no-unused-vars */
38658
38665
 
@@ -38668,24 +38675,24 @@ dayjs.extend(isSameOrAfter);
38668
38675
 
38669
38676
  let validatorFns = {};
38670
38677
 
38671
- const INCLUDED_IN = 'validator/INCLUDED_IN';
38672
- const INCLUDED_IN_ERROR = 'error/INCLUDED_IN';
38678
+ const INCLUDED_IN = "validator/INCLUDED_IN";
38679
+ const INCLUDED_IN_ERROR = "error/INCLUDED_IN";
38673
38680
  const includedIn = createValidator(INCLUDED_IN, INCLUDED_IN_ERROR);
38674
38681
  validatorFns[INCLUDED_IN] = (value, args, form) =>
38675
38682
  Array.isArray(args[0]) ? args[0].includes(value) : args[0] === value;
38676
38683
 
38677
- const REQUIRED = 'validator/REQUIRED';
38678
- const REQUIRED_ERROR = 'error/REQUIRED';
38684
+ const REQUIRED = "validator/REQUIRED";
38685
+ const REQUIRED_ERROR = "error/REQUIRED";
38679
38686
  const required = createValidator(REQUIRED, REQUIRED_ERROR);
38680
- validatorFns[REQUIRED] = (value, args, form) => value !== '';
38687
+ validatorFns[REQUIRED] = (value, args, form) => value !== "";
38681
38688
 
38682
- const ONLY_INTEGERS = 'validator/ONLY_INTEGERS';
38683
- const ONLY_INTEGERS_ERROR = 'error/ONLY_INTEGERS';
38689
+ const ONLY_INTEGERS = "validator/ONLY_INTEGERS";
38690
+ const ONLY_INTEGERS_ERROR = "error/ONLY_INTEGERS";
38684
38691
  const onlyIntegers = createValidator(ONLY_INTEGERS, ONLY_INTEGERS_ERROR);
38685
38692
  validatorFns[ONLY_INTEGERS] = (value, args, form) => /^(-?\d+)?$/.test(value);
38686
38693
 
38687
- const ONLY_NATURALS = 'validator/ONLY_NATURALS';
38688
- const ONLY_NATURALS_ERROR = 'error/ONLY_NATURALS';
38694
+ const ONLY_NATURALS = "validator/ONLY_NATURALS";
38695
+ const ONLY_NATURALS_ERROR = "error/ONLY_NATURALS";
38689
38696
  const onlyNaturals = createValidator(ONLY_NATURALS, ONLY_NATURALS_ERROR);
38690
38697
  validatorFns[ONLY_NATURALS] = (value, args, form) => /^(\d+)?$/.test(value);
38691
38698
 
@@ -38698,8 +38705,8 @@ not tested as validation function
38698
38705
  to validate exp date instead use combo of:
38699
38706
  required(), hasLength(), isValidMonth(), dateAfterToday()
38700
38707
  */
38701
- const ONLY_EXPIRATION_DATE = 'validator/ONLY_EXPIRATION_DATE';
38702
- const ONLY_EXPIRATION_DATE_ERROR = 'error/ONLY_EXPIRATION_DATE';
38708
+ const ONLY_EXPIRATION_DATE = "validator/ONLY_EXPIRATION_DATE";
38709
+ const ONLY_EXPIRATION_DATE_ERROR = "error/ONLY_EXPIRATION_DATE";
38703
38710
  const onlyExpirationDate = createValidator(
38704
38711
  ONLY_EXPIRATION_DATE,
38705
38712
  ONLY_EXPIRATION_DATE_ERROR
@@ -38707,63 +38714,64 @@ const onlyExpirationDate = createValidator(
38707
38714
  validatorFns[ONLY_EXPIRATION_DATE] = (value, args, form) =>
38708
38715
  /^(\d?\d?\/?\d?\d?)?$/.test(value);
38709
38716
 
38710
- const NUMBER_LESS_THAN = 'validator/NUMBER_LESS_THAN';
38711
- const NUMBER_LESS_THAN_ERROR = 'error/NUMBER_LESS_THAN';
38717
+ const NUMBER_LESS_THAN = "validator/NUMBER_LESS_THAN";
38718
+ const NUMBER_LESS_THAN_ERROR = "error/NUMBER_LESS_THAN";
38712
38719
  const numberLessThan = createValidator(
38713
38720
  NUMBER_LESS_THAN,
38714
38721
  NUMBER_LESS_THAN_ERROR
38715
38722
  );
38716
38723
  validatorFns[NUMBER_LESS_THAN] = (value, args, form) => {
38717
- if (value === '') {
38724
+ if (value === "") {
38718
38725
  return true;
38719
38726
  }
38720
38727
  return Number(value) < args[0];
38721
38728
  };
38722
38729
 
38723
- const NUMBER_LESS_THAN_OR_EQUAL_TO = 'validator/NUMBER_LESS_THAN_OR_EQUAL_TO';
38730
+ const NUMBER_LESS_THAN_OR_EQUAL_TO =
38731
+ "validator/NUMBER_LESS_THAN_OR_EQUAL_TO";
38724
38732
  const NUMBER_LESS_THAN_OR_EQUAL_TO_ERROR =
38725
- 'error/NUMBER_LESS_THAN_OR_EQUAL_TO';
38733
+ "error/NUMBER_LESS_THAN_OR_EQUAL_TO";
38726
38734
  const numberLessThanOrEqualTo = createValidator(
38727
38735
  NUMBER_LESS_THAN_OR_EQUAL_TO,
38728
38736
  NUMBER_LESS_THAN_OR_EQUAL_TO_ERROR
38729
38737
  );
38730
38738
  validatorFns[NUMBER_LESS_THAN_OR_EQUAL_TO] = (value, args, form) => {
38731
- if (value === '') {
38739
+ if (value === "") {
38732
38740
  return true;
38733
38741
  }
38734
38742
  return Number(value) <= args[0];
38735
38743
  };
38736
38744
 
38737
- const NUMBER_GREATER_THAN = 'validator/NUMBER_GREATER_THAN';
38738
- const NUMBER_GREATER_THAN_ERROR = 'error/NUMBER_GREATER_THAN';
38745
+ const NUMBER_GREATER_THAN = "validator/NUMBER_GREATER_THAN";
38746
+ const NUMBER_GREATER_THAN_ERROR = "error/NUMBER_GREATER_THAN";
38739
38747
  const numberGreaterThan = createValidator(
38740
38748
  NUMBER_GREATER_THAN,
38741
38749
  NUMBER_GREATER_THAN_ERROR
38742
38750
  );
38743
38751
  validatorFns[NUMBER_GREATER_THAN] = (value, args, form) => {
38744
- if (value === '') {
38752
+ if (value === "") {
38745
38753
  return true;
38746
38754
  }
38747
38755
  return Number(value) > args[0];
38748
38756
  };
38749
38757
 
38750
38758
  const NUMBER_GREATER_THAN_OR_EQUAL_TO =
38751
- 'validator/NUMBER_GREATER_THAN_OR_EQUAL_TO';
38759
+ "validator/NUMBER_GREATER_THAN_OR_EQUAL_TO";
38752
38760
  const NUMBER_GREATER_THAN_OR_EQUAL_TO_ERROR =
38753
- 'error/NUMBER_GREATER_THAN_OR_EQUAL_TO';
38761
+ "error/NUMBER_GREATER_THAN_OR_EQUAL_TO";
38754
38762
  const numberGreaterThanOrEqualTo = createValidator(
38755
38763
  NUMBER_GREATER_THAN_OR_EQUAL_TO,
38756
38764
  NUMBER_GREATER_THAN_OR_EQUAL_TO_ERROR
38757
38765
  );
38758
38766
  validatorFns[NUMBER_GREATER_THAN_OR_EQUAL_TO] = (value, args, form) => {
38759
- if (value === '') {
38767
+ if (value === "") {
38760
38768
  return true;
38761
38769
  }
38762
38770
  return Number(value) >= args[0];
38763
38771
  };
38764
38772
 
38765
- const MATCHES_FIELD = 'validator/MATCHES_FIELD';
38766
- const MATCHES_FIELD_ERROR$1 = 'error/MATCHES_FIELD';
38773
+ const MATCHES_FIELD = "validator/MATCHES_FIELD";
38774
+ const MATCHES_FIELD_ERROR$1 = "error/MATCHES_FIELD";
38767
38775
  const matchesField = createValidator(MATCHES_FIELD, MATCHES_FIELD_ERROR$1);
38768
38776
  validatorFns[MATCHES_FIELD] = (value, args, form) => {
38769
38777
  const dependentField = form[args[0]];
@@ -38776,7 +38784,7 @@ validatorFns[MATCHES_FIELD] = (value, args, form) => {
38776
38784
  return value === dependentFieldValue;
38777
38785
  };
38778
38786
 
38779
- const validateWhenErrorMessage = (type) =>
38787
+ const validateWhenErrorMessage = type =>
38780
38788
  `${type} was passed to validateWhen, but that validator type does not exist.
38781
38789
  Please check that you are only calling validator creator functions exported from
38782
38790
  redux-freeform in your form config and that you didn't forget to
@@ -38784,21 +38792,25 @@ const validateWhenErrorMessage = (type) =>
38784
38792
  createFormState). Also make sure you aren't passing validateWhen() to validateWhen
38785
38793
  as the primary validator.`;
38786
38794
 
38787
- const VALIDATE_WHEN = 'validator/VALIDATE_WHEN';
38788
- const VALIDATE_WHEN_ERROR = 'error/VALIDATE_WHEN';
38789
- const validateWhen = (dependentValidator, primaryValidator, optionalFieldName) => ({
38795
+ const VALIDATE_WHEN = "validator/VALIDATE_WHEN";
38796
+ const VALIDATE_WHEN_ERROR = "error/VALIDATE_WHEN";
38797
+ const validateWhen = (
38798
+ dependentValidator,
38799
+ primaryValidator,
38800
+ optionalFieldName
38801
+ ) => ({
38790
38802
  type: VALIDATE_WHEN,
38791
38803
  args: [dependentValidator, primaryValidator, optionalFieldName],
38792
- error: dependentValidator.error,
38804
+ error: dependentValidator.error
38793
38805
  });
38794
38806
  validateWhen.error = VALIDATE_WHEN_ERROR;
38795
38807
  validatorFns[VALIDATE_WHEN] = (value, args, form) => {
38796
38808
  const [dependentValidator, primaryValidator, optionalFieldName] = args;
38797
- const dependsOnOtherField = typeof optionalFieldName === 'string';
38809
+ const dependsOnOtherField = typeof optionalFieldName === "string";
38798
38810
 
38799
38811
  if (
38800
38812
  primaryValidator.type === undefined ||
38801
- typeof validatorFns[primaryValidator.type] !== 'function'
38813
+ typeof validatorFns[primaryValidator.type] !== "function"
38802
38814
  ) {
38803
38815
  throw new Error(validateWhenErrorMessage(primaryValidator.type));
38804
38816
  }
@@ -38822,22 +38834,26 @@ validatorFns[VALIDATE_WHEN] = (value, args, form) => {
38822
38834
  );
38823
38835
 
38824
38836
  return primaryPredicatePassed
38825
- ? validatorFns[dependentValidator.type](value, dependentValidator.args, form)
38837
+ ? validatorFns[dependentValidator.type](
38838
+ value,
38839
+ dependentValidator.args,
38840
+ form
38841
+ )
38826
38842
  : true;
38827
38843
  };
38828
38844
 
38829
- const validateSumErrorMessage = (type) =>
38845
+ const validateSumErrorMessage = type =>
38830
38846
  `${type} was passed to validateSum, but that validator type does not exist.
38831
38847
  Please check that you are only calling validator creator functions exported from
38832
38848
  redux-freeform in your form config and that you didn't forget to
38833
38849
  invoke the validator creator (you cannot pass the functions themselves to
38834
38850
  createFormState).`;
38835
- const VALIDATE_SUM = 'validator/VALIDATE_SUM';
38836
- const VALIDATE_SUM_ERROR = 'error/VALIDATE_SUM';
38851
+ const VALIDATE_SUM = "validator/VALIDATE_SUM";
38852
+ const VALIDATE_SUM_ERROR = "error/VALIDATE_SUM";
38837
38853
  const validateSum = (validator, fieldNamesArray) => ({
38838
38854
  type: VALIDATE_SUM,
38839
38855
  args: [validator, fieldNamesArray],
38840
- error: validator.error,
38856
+ error: validator.error
38841
38857
  });
38842
38858
  validateSum.error = VALIDATE_SUM_ERROR;
38843
38859
  validatorFns[VALIDATE_SUM] = (value, args, form) => {
@@ -38845,7 +38861,7 @@ validatorFns[VALIDATE_SUM] = (value, args, form) => {
38845
38861
 
38846
38862
  if (
38847
38863
  validator.type === undefined ||
38848
- typeof validatorFns[validator.type] !== 'function'
38864
+ typeof validatorFns[validator.type] !== "function"
38849
38865
  ) {
38850
38866
  throw new Error(validateSumErrorMessage(validator.type));
38851
38867
  }
@@ -38866,35 +38882,37 @@ validatorFns[VALIDATE_SUM] = (value, args, form) => {
38866
38882
  return validatorFns[validator.type](sum, validator.args, form);
38867
38883
  };
38868
38884
 
38869
- const HAS_LENGTH = 'validator/HAS_LENGTH';
38870
- const HAS_LENGTH_ERROR = 'error/HAS_LENGTH';
38885
+ const HAS_LENGTH = "validator/HAS_LENGTH";
38886
+ const HAS_LENGTH_ERROR = "error/HAS_LENGTH";
38871
38887
  const hasLength = createValidator(HAS_LENGTH, HAS_LENGTH_ERROR);
38872
38888
  validatorFns[HAS_LENGTH] = (value, args, form) => {
38873
- if (value === '') {
38889
+ if (value === "") {
38874
38890
  return true;
38875
38891
  }
38876
38892
  const min = args[0];
38877
38893
  const max = args[1];
38878
38894
  if (max == undefined || min == undefined) {
38879
38895
  throw new Error(
38880
- 'Max and min need to be defined for hasLength, both or one of them is undefined'
38896
+ "Max and min need to be defined for hasLength, both or one of them is undefined"
38881
38897
  );
38882
38898
  }
38883
38899
  if (max < min) {
38884
- throw new Error('hasLength validator was passed a min greater than the max');
38900
+ throw new Error(
38901
+ "hasLength validator was passed a min greater than the max"
38902
+ );
38885
38903
  }
38886
38904
  const valueLength = value.length;
38887
38905
  return max >= valueLength && valueLength >= min;
38888
38906
  };
38889
38907
 
38890
- const DATE_BEFORE_TODAY = 'validator/DATE_BEFORE_TODAY';
38891
- const DATE_BEFORE_TODAY_ERROR = 'error/DATE_BEFORE_TODAY';
38908
+ const DATE_BEFORE_TODAY = "validator/DATE_BEFORE_TODAY";
38909
+ const DATE_BEFORE_TODAY_ERROR = "error/DATE_BEFORE_TODAY";
38892
38910
  const dateBeforeToday = createValidator(
38893
38911
  DATE_BEFORE_TODAY,
38894
38912
  DATE_BEFORE_TODAY_ERROR
38895
38913
  );
38896
38914
  validatorFns[DATE_BEFORE_TODAY] = (value, args, form) => {
38897
- if (value === '') {
38915
+ if (value === "") {
38898
38916
  return true;
38899
38917
  }
38900
38918
  const dateFormat = args[0];
@@ -38903,7 +38921,7 @@ validatorFns[DATE_BEFORE_TODAY] = (value, args, form) => {
38903
38921
 
38904
38922
  if (dateFormat == undefined || unit == undefined) {
38905
38923
  throw new Error(
38906
- 'Date format and unit need to be defined for dateBeforeToday, one or both are undefined'
38924
+ "Date format and unit need to be defined for dateBeforeToday, one or both are undefined"
38907
38925
  );
38908
38926
  }
38909
38927
  const now = dayjs();
@@ -38915,14 +38933,14 @@ validatorFns[DATE_BEFORE_TODAY] = (value, args, form) => {
38915
38933
  return dateValue.isBefore(now, unit);
38916
38934
  };
38917
38935
 
38918
- const DATE_AFTER_TODAY = 'validator/DATE_AFTER_TODAY';
38919
- const DATE_AFTER_TODAY_ERROR = 'error/DATE_AFTER_TODAY';
38936
+ const DATE_AFTER_TODAY = "validator/DATE_AFTER_TODAY";
38937
+ const DATE_AFTER_TODAY_ERROR = "error/DATE_AFTER_TODAY";
38920
38938
  const dateAfterToday = createValidator(
38921
38939
  DATE_AFTER_TODAY,
38922
38940
  DATE_AFTER_TODAY_ERROR
38923
38941
  );
38924
38942
  validatorFns[DATE_AFTER_TODAY] = (value, args, form) => {
38925
- if (value === '') {
38943
+ if (value === "") {
38926
38944
  return true;
38927
38945
  }
38928
38946
  const dateFormat = args[0];
@@ -38931,7 +38949,7 @@ validatorFns[DATE_AFTER_TODAY] = (value, args, form) => {
38931
38949
 
38932
38950
  if (dateFormat == undefined || unit == undefined) {
38933
38951
  throw new Error(
38934
- 'Date format and unit need to be defined for dateAfterToday, one or both are undefined'
38952
+ "Date format and unit need to be defined for dateAfterToday, one or both are undefined"
38935
38953
  );
38936
38954
  }
38937
38955
  const now = dayjs();
@@ -38943,11 +38961,14 @@ validatorFns[DATE_AFTER_TODAY] = (value, args, form) => {
38943
38961
  return dateValue.isAfter(now, unit);
38944
38962
  };
38945
38963
 
38946
- const IS_VALID_MONTH = 'validator/IS_VALID_MONTH';
38947
- const IS_VALID_MONTH_ERROR = 'error/IS_VALID_MONTH';
38948
- const isValidMonth = createValidator(IS_VALID_MONTH, IS_VALID_MONTH_ERROR);
38964
+ const IS_VALID_MONTH = "validator/IS_VALID_MONTH";
38965
+ const IS_VALID_MONTH_ERROR = "error/IS_VALID_MONTH";
38966
+ const isValidMonth = createValidator(
38967
+ IS_VALID_MONTH,
38968
+ IS_VALID_MONTH_ERROR
38969
+ );
38949
38970
  validatorFns[IS_VALID_MONTH] = (value, args, form) => {
38950
- if (value === '') {
38971
+ if (value === "") {
38951
38972
  return true;
38952
38973
  }
38953
38974
  // Function takes one argument representing the character position
@@ -38957,43 +38978,43 @@ validatorFns[IS_VALID_MONTH] = (value, args, form) => {
38957
38978
  // Only works with two digit months (01, 02, 03, etc)
38958
38979
  const monthStartPosition = parseInt(args[0]);
38959
38980
  const monthEndPosition = monthStartPosition + 2;
38960
- if (isNaN(monthStartPosition)) {
38961
- throw new Error('Month start position has to be a valid integer string');
38981
+ if (monthStartPosition === NaN) {
38982
+ throw new Error("Month start position has to be a valid integer string");
38962
38983
  }
38963
38984
  const month = parseInt(value.slice(monthStartPosition, monthEndPosition));
38964
- if (isNaN(month)) {
38985
+ if (month === NaN) {
38965
38986
  return false;
38966
38987
  }
38967
38988
  return month >= 1 && month <= 12;
38968
38989
  };
38969
38990
 
38970
- const MATCHES_REGEX = 'validator/MATCHES_REGEX';
38971
- const MATCHES_REGEX_ERROR = 'error/MATCHES_REGEX';
38991
+ const MATCHES_REGEX = "validator/MATCHES_REGEX";
38992
+ const MATCHES_REGEX_ERROR = "error/MATCHES_REGEX";
38972
38993
  const matchesRegex = createValidator(MATCHES_REGEX, MATCHES_REGEX_ERROR);
38973
38994
  validatorFns[MATCHES_REGEX] = (value, args, form) => {
38974
- if (value === '') {
38995
+ if (value === "") {
38975
38996
  return true;
38976
38997
  }
38977
38998
  return new RegExp(args[0]).test(value); // new RexExp never throws an error, no matter the input
38978
38999
  };
38979
39000
 
38980
39001
  // based on http://www.brainjar.com/js/validation/
38981
- const IS_ROUTING_NUMBER = 'validator/IS_ROUTING_NUMBER';
38982
- const IS_ROUTING_NUMBER_ERROR = 'error/IS_ROUTING_NUMBER';
39002
+ const IS_ROUTING_NUMBER = "validator/IS_ROUTING_NUMBER";
39003
+ const IS_ROUTING_NUMBER_ERROR = "error/IS_ROUTING_NUMBER";
38983
39004
  const isRoutingNumber = createValidator(
38984
39005
  IS_ROUTING_NUMBER,
38985
39006
  IS_ROUTING_NUMBER_ERROR
38986
39007
  );
38987
39008
  validatorFns[IS_ROUTING_NUMBER] = (value, args, form) => {
38988
- if (value === '') {
39009
+ if (value === "") {
38989
39010
  return true;
38990
39011
  }
38991
39012
  if (value.length != 9) {
38992
39013
  return false;
38993
39014
  }
38994
39015
  const sum = value
38995
- .split('')
38996
- .map((ch) => parseInt(ch))
39016
+ .split("")
39017
+ .map(ch => parseInt(ch))
38997
39018
  .reduce((acc, cur, idx) => {
38998
39019
  switch (idx % 3) {
38999
39020
  case 0:
@@ -39007,69 +39028,69 @@ validatorFns[IS_ROUTING_NUMBER] = (value, args, form) => {
39007
39028
  return sum != 0 && sum % 10 == 0;
39008
39029
  };
39009
39030
 
39010
- const HAS_NUMBER = 'validator/HAS_NUMBER';
39011
- const HAS_NUMBER_ERROR$1 = 'error/HAS_NUMBER';
39031
+ const HAS_NUMBER = "validator/HAS_NUMBER";
39032
+ const HAS_NUMBER_ERROR$1 = "error/HAS_NUMBER";
39012
39033
  const hasNumber = createValidator(HAS_NUMBER, HAS_NUMBER_ERROR$1);
39013
39034
  validatorFns[HAS_NUMBER] = (value, args, form) => {
39014
- if (value === '') {
39035
+ if (value === "") {
39015
39036
  return true;
39016
39037
  }
39017
39038
  return new RegExp(/[0-9]/).test(value);
39018
39039
  };
39019
39040
 
39020
- const HAS_LOWERCASE_LETTER = 'validator/HAS_LOWERCASE_LETTER';
39021
- const HAS_LOWERCASE_LETTER_ERROR$1 = 'error/HAS_LOWERCASE_LETTER';
39041
+ const HAS_LOWERCASE_LETTER = "validator/HAS_LOWERCASE_LETTER";
39042
+ const HAS_LOWERCASE_LETTER_ERROR$1 = "error/HAS_LOWERCASE_LETTER";
39022
39043
  const hasLowercaseLetter = createValidator(
39023
39044
  HAS_LOWERCASE_LETTER,
39024
39045
  HAS_LOWERCASE_LETTER_ERROR$1
39025
39046
  );
39026
39047
  validatorFns[HAS_LOWERCASE_LETTER] = (value, args, form) => {
39027
- if (value === '') {
39048
+ if (value === "") {
39028
39049
  return true;
39029
39050
  }
39030
39051
  return new RegExp(/[a-z]/).test(value);
39031
39052
  };
39032
39053
 
39033
- const HAS_UPPERCASE_LETTER = 'validator/HAS_UPPERCASE_LETTER';
39034
- const HAS_UPPERCASE_LETTER_ERROR$1 = 'error/HAS_UPPERCASE_LETTER';
39054
+ const HAS_UPPERCASE_LETTER = "validator/HAS_UPPERCASE_LETTER";
39055
+ const HAS_UPPERCASE_LETTER_ERROR$1 = "error/HAS_UPPERCASE_LETTER";
39035
39056
  const hasUppercaseLetter = createValidator(
39036
39057
  HAS_UPPERCASE_LETTER,
39037
39058
  HAS_UPPERCASE_LETTER_ERROR$1
39038
39059
  );
39039
39060
  validatorFns[HAS_UPPERCASE_LETTER] = (value, args, form) => {
39040
- if (value === '') {
39061
+ if (value === "") {
39041
39062
  return true;
39042
39063
  }
39043
39064
  return new RegExp(/[A-Z]/).test(value);
39044
39065
  };
39045
39066
 
39046
- const HAS_SPECIAL_CHARACTER = 'validator/HAS_SPECIAL_CHARACTER';
39047
- const HAS_SPECIAL_CHARACTER_ERROR$1 = 'error/HAS_SPECIAL_CHARACTER';
39067
+ const HAS_SPECIAL_CHARACTER = "validator/HAS_SPECIAL_CHARACTER";
39068
+ const HAS_SPECIAL_CHARACTER_ERROR$1 = "error/HAS_SPECIAL_CHARACTER";
39048
39069
  const hasSpecialCharacter = createValidator(
39049
39070
  HAS_SPECIAL_CHARACTER,
39050
39071
  HAS_SPECIAL_CHARACTER_ERROR$1
39051
39072
  );
39052
39073
  validatorFns[HAS_SPECIAL_CHARACTER] = (value, args, form) => {
39053
- if (value === '') {
39074
+ if (value === "") {
39054
39075
  return true;
39055
39076
  }
39056
39077
  return new RegExp(/[!@#$%^&*.?]/).test(value);
39057
39078
  };
39058
39079
 
39059
- const IS_PROBABLY_EMAIL = 'validator/IS_PROBABLY_EMAIL';
39060
- const IS_PROBABLY_EMAIL_ERROR = 'error/IS_PROBABLY_EMAIL';
39080
+ const IS_PROBABLY_EMAIL = "validator/IS_PROBABLY_EMAIL";
39081
+ const IS_PROBABLY_EMAIL_ERROR = "error/IS_PROBABLY_EMAIL";
39061
39082
  const isProbablyEmail = createValidator(
39062
39083
  IS_PROBABLY_EMAIL,
39063
39084
  IS_PROBABLY_EMAIL_ERROR
39064
39085
  );
39065
39086
  validatorFns[IS_PROBABLY_EMAIL] = (value, args, form) => {
39066
- if (value === '') {
39087
+ if (value === "") {
39067
39088
  return true;
39068
39089
  }
39069
39090
  return new RegExp(/^\S+@\S+\.\S+$/).test(value);
39070
39091
  };
39071
39092
 
39072
- const runValidatorErrorMessage = (type) =>
39093
+ const runValidatorErrorMessage = type =>
39073
39094
  `${type} was passed to runValidator, but that validator type does not exist.
39074
39095
  Please check that you are only calling validator creator functions exported from
39075
39096
  redux-freeform in your form config and that you didn't forget to
@@ -39084,53 +39105,1165 @@ const runValidator = (validator, value, form) => {
39084
39105
  return validatorFn(value, validator.args, form) ? null : validator.error;
39085
39106
  };
39086
39107
 
39087
- const runFormValidators = (fieldName, form, validators) => {
39108
+ const _computeErrors = (fieldName, form, validators) => {
39088
39109
  return validators
39089
- .map((v) => runValidator(v, form[fieldName].rawValue, form))
39090
- .filter((x) => x !== null);
39110
+ .map(v => runValidator(v, form[fieldName].rawValue, form))
39111
+ .filter(x => x !== null);
39091
39112
  };
39092
39113
 
39093
39114
  const computeConstraints = (fieldName, form) => {
39094
39115
  const constraints = form[fieldName].constraints;
39095
- return runFormValidators(fieldName, form, constraints);
39116
+ return _computeErrors(fieldName, form, constraints);
39096
39117
  };
39097
39118
 
39098
39119
  const computeErrors = (fieldName, form) => {
39099
39120
  const validators = form[fieldName].validators;
39100
- return runFormValidators(fieldName, form, validators);
39121
+ return _computeErrors(fieldName, form, validators);
39122
+ };
39123
+
39124
+ var obj;
39125
+ var NOTHING = typeof Symbol !== "undefined" ? Symbol("immer-nothing") : ( obj = {}, obj["immer-nothing"] = true, obj );
39126
+ var DRAFTABLE = typeof Symbol !== "undefined" && Symbol.for ? Symbol.for("immer-draftable") : "__$immer_draftable";
39127
+ var DRAFT_STATE = typeof Symbol !== "undefined" && Symbol.for ? Symbol.for("immer-state") : "__$immer_state";
39128
+ function isDraft(value) {
39129
+ return !!value && !!value[DRAFT_STATE];
39130
+ }
39131
+ function isDraftable(value) {
39132
+ if (!value) { return false; }
39133
+ return isPlainObject(value) || !!value[DRAFTABLE] || !!value.constructor[DRAFTABLE];
39134
+ }
39135
+ function isPlainObject(value) {
39136
+ if (!value || typeof value !== "object") { return false; }
39137
+ if (Array.isArray(value)) { return true; }
39138
+ var proto = Object.getPrototypeOf(value);
39139
+ return !proto || proto === Object.prototype;
39140
+ }
39141
+ var assign = Object.assign || function assign(target, value) {
39142
+ for (var key in value) {
39143
+ if (has$1(value, key)) {
39144
+ target[key] = value[key];
39145
+ }
39146
+ }
39147
+
39148
+ return target;
39149
+ };
39150
+ 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;
39151
+ function shallowCopy(base, invokeGetters) {
39152
+ if ( invokeGetters === void 0 ) invokeGetters = false;
39153
+
39154
+ if (Array.isArray(base)) { return base.slice(); }
39155
+ var clone = Object.create(Object.getPrototypeOf(base));
39156
+ ownKeys$2(base).forEach(function (key) {
39157
+ if (key === DRAFT_STATE) {
39158
+ return; // Never copy over draft state.
39159
+ }
39160
+
39161
+ var desc = Object.getOwnPropertyDescriptor(base, key);
39162
+ var value = desc.value;
39163
+
39164
+ if (desc.get) {
39165
+ if (!invokeGetters) {
39166
+ throw new Error("Immer drafts cannot have computed properties");
39167
+ }
39168
+
39169
+ value = desc.get.call(base);
39170
+ }
39171
+
39172
+ if (desc.enumerable) {
39173
+ clone[key] = value;
39174
+ } else {
39175
+ Object.defineProperty(clone, key, {
39176
+ value: value,
39177
+ writable: true,
39178
+ configurable: true
39179
+ });
39180
+ }
39181
+ });
39182
+ return clone;
39183
+ }
39184
+ function each(value, cb) {
39185
+ if (Array.isArray(value)) {
39186
+ for (var i = 0; i < value.length; i++) { cb(i, value[i], value); }
39187
+ } else {
39188
+ ownKeys$2(value).forEach(function (key) { return cb(key, value[key], value); });
39189
+ }
39190
+ }
39191
+ function isEnumerable(base, prop) {
39192
+ var desc = Object.getOwnPropertyDescriptor(base, prop);
39193
+ return !!desc && desc.enumerable;
39194
+ }
39195
+ function has$1(thing, prop) {
39196
+ return Object.prototype.hasOwnProperty.call(thing, prop);
39197
+ }
39198
+ function is(x, y) {
39199
+ // From: https://github.com/facebook/fbjs/blob/c69904a511b900266935168223063dd8772dfc40/packages/fbjs/src/core/shallowEqual.js
39200
+ if (x === y) {
39201
+ return x !== 0 || 1 / x === 1 / y;
39202
+ } else {
39203
+ return x !== x && y !== y;
39204
+ }
39205
+ }
39206
+ function clone(obj) {
39207
+ if (!isDraftable(obj)) { return obj; }
39208
+ if (Array.isArray(obj)) { return obj.map(clone); }
39209
+ var cloned = Object.create(Object.getPrototypeOf(obj));
39210
+
39211
+ for (var key in obj) { cloned[key] = clone(obj[key]); }
39212
+
39213
+ return cloned;
39214
+ }
39215
+
39216
+ /** Each scope represents a `produce` call. */
39217
+
39218
+ var ImmerScope = function ImmerScope(parent) {
39219
+ this.drafts = [];
39220
+ this.parent = parent; // Whenever the modified draft contains a draft from another scope, we
39221
+ // need to prevent auto-freezing so the unowned draft can be finalized.
39222
+
39223
+ this.canAutoFreeze = true; // To avoid prototype lookups:
39224
+
39225
+ this.patches = null;
39226
+ };
39227
+
39228
+ ImmerScope.prototype.usePatches = function usePatches (patchListener) {
39229
+ if (patchListener) {
39230
+ this.patches = [];
39231
+ this.inversePatches = [];
39232
+ this.patchListener = patchListener;
39233
+ }
39234
+ };
39235
+
39236
+ ImmerScope.prototype.revoke = function revoke$1 () {
39237
+ this.leave();
39238
+ this.drafts.forEach(revoke);
39239
+ this.drafts = null; // Make draft-related methods throw.
39240
+ };
39241
+
39242
+ ImmerScope.prototype.leave = function leave () {
39243
+ if (this === ImmerScope.current) {
39244
+ ImmerScope.current = this.parent;
39245
+ }
39246
+ };
39247
+ ImmerScope.current = null;
39248
+
39249
+ ImmerScope.enter = function () {
39250
+ return this.current = new ImmerScope(this.current);
39251
+ };
39252
+
39253
+ function revoke(draft) {
39254
+ draft[DRAFT_STATE].revoke();
39255
+ }
39256
+
39257
+ // but share them all instead
39258
+
39259
+ var descriptors$1 = {};
39260
+ function willFinalize(scope, result, isReplaced) {
39261
+ scope.drafts.forEach(function (draft) {
39262
+ draft[DRAFT_STATE].finalizing = true;
39263
+ });
39264
+
39265
+ if (!isReplaced) {
39266
+ if (scope.patches) {
39267
+ markChangesRecursively(scope.drafts[0]);
39268
+ } // This is faster when we don't care about which attributes changed.
39269
+
39270
+
39271
+ markChangesSweep(scope.drafts);
39272
+ } // When a child draft is returned, look for changes.
39273
+ else if (isDraft(result) && result[DRAFT_STATE].scope === scope) {
39274
+ markChangesSweep(scope.drafts);
39275
+ }
39276
+ }
39277
+ function createProxy(base, parent) {
39278
+ var isArray = Array.isArray(base);
39279
+ var draft = clonePotentialDraft(base);
39280
+ each(draft, function (prop) {
39281
+ proxyProperty(draft, prop, isArray || isEnumerable(base, prop));
39282
+ }); // See "proxy.js" for property documentation.
39283
+
39284
+ var scope = parent ? parent.scope : ImmerScope.current;
39285
+ var state = {
39286
+ scope: scope,
39287
+ modified: false,
39288
+ finalizing: false,
39289
+ // es5 only
39290
+ finalized: false,
39291
+ assigned: {},
39292
+ parent: parent,
39293
+ base: base,
39294
+ draft: draft,
39295
+ copy: null,
39296
+ revoke: revoke$1,
39297
+ revoked: false // es5 only
39298
+
39299
+ };
39300
+ createHiddenProperty(draft, DRAFT_STATE, state);
39301
+ scope.drafts.push(draft);
39302
+ return draft;
39303
+ }
39304
+
39305
+ function revoke$1() {
39306
+ this.revoked = true;
39307
+ }
39308
+
39309
+ function source(state) {
39310
+ return state.copy || state.base;
39311
+ } // Access a property without creating an Immer draft.
39312
+
39313
+
39314
+ function peek(draft, prop) {
39315
+ var state = draft[DRAFT_STATE];
39316
+
39317
+ if (state && !state.finalizing) {
39318
+ state.finalizing = true;
39319
+ var value = draft[prop];
39320
+ state.finalizing = false;
39321
+ return value;
39322
+ }
39323
+
39324
+ return draft[prop];
39325
+ }
39326
+
39327
+ function get$1(state, prop) {
39328
+ assertUnrevoked(state);
39329
+ var value = peek(source(state), prop);
39330
+ if (state.finalizing) { return value; } // Create a draft if the value is unmodified.
39331
+
39332
+ if (value === peek(state.base, prop) && isDraftable(value)) {
39333
+ prepareCopy(state);
39334
+ return state.copy[prop] = createProxy(value, state);
39335
+ }
39336
+
39337
+ return value;
39338
+ }
39339
+
39340
+ function set$1(state, prop, value) {
39341
+ assertUnrevoked(state);
39342
+ state.assigned[prop] = true;
39343
+
39344
+ if (!state.modified) {
39345
+ if (is(value, peek(source(state), prop))) { return; }
39346
+ markChanged(state);
39347
+ prepareCopy(state);
39348
+ }
39349
+
39350
+ state.copy[prop] = value;
39351
+ }
39352
+
39353
+ function markChanged(state) {
39354
+ if (!state.modified) {
39355
+ state.modified = true;
39356
+ if (state.parent) { markChanged(state.parent); }
39357
+ }
39358
+ }
39359
+
39360
+ function prepareCopy(state) {
39361
+ if (!state.copy) { state.copy = clonePotentialDraft(state.base); }
39362
+ }
39363
+
39364
+ function clonePotentialDraft(base) {
39365
+ var state = base && base[DRAFT_STATE];
39366
+
39367
+ if (state) {
39368
+ state.finalizing = true;
39369
+ var draft = shallowCopy(state.draft, true);
39370
+ state.finalizing = false;
39371
+ return draft;
39372
+ }
39373
+
39374
+ return shallowCopy(base);
39375
+ }
39376
+
39377
+ function proxyProperty(draft, prop, enumerable) {
39378
+ var desc = descriptors$1[prop];
39379
+
39380
+ if (desc) {
39381
+ desc.enumerable = enumerable;
39382
+ } else {
39383
+ descriptors$1[prop] = desc = {
39384
+ configurable: true,
39385
+ enumerable: enumerable,
39386
+
39387
+ get: function get$1$1() {
39388
+ return get$1(this[DRAFT_STATE], prop);
39389
+ },
39390
+
39391
+ set: function set$1$1(value) {
39392
+ set$1(this[DRAFT_STATE], prop, value);
39393
+ }
39394
+
39395
+ };
39396
+ }
39397
+
39398
+ Object.defineProperty(draft, prop, desc);
39399
+ }
39400
+
39401
+ function assertUnrevoked(state) {
39402
+ 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))); }
39403
+ } // This looks expensive, but only proxies are visited, and only objects without known changes are scanned.
39404
+
39405
+
39406
+ function markChangesSweep(drafts) {
39407
+ // The natural order of drafts in the `scope` array is based on when they
39408
+ // were accessed. By processing drafts in reverse natural order, we have a
39409
+ // better chance of processing leaf nodes first. When a leaf node is known to
39410
+ // have changed, we can avoid any traversal of its ancestor nodes.
39411
+ for (var i = drafts.length - 1; i >= 0; i--) {
39412
+ var state = drafts[i][DRAFT_STATE];
39413
+
39414
+ if (!state.modified) {
39415
+ if (Array.isArray(state.base)) {
39416
+ if (hasArrayChanges(state)) { markChanged(state); }
39417
+ } else if (hasObjectChanges(state)) { markChanged(state); }
39418
+ }
39419
+ }
39420
+ }
39421
+
39422
+ function markChangesRecursively(object) {
39423
+ if (!object || typeof object !== "object") { return; }
39424
+ var state = object[DRAFT_STATE];
39425
+ if (!state) { return; }
39426
+ var base = state.base;
39427
+ var draft = state.draft;
39428
+ var assigned = state.assigned;
39429
+
39430
+ if (!Array.isArray(object)) {
39431
+ // Look for added keys.
39432
+ Object.keys(draft).forEach(function (key) {
39433
+ // The `undefined` check is a fast path for pre-existing keys.
39434
+ if (base[key] === undefined && !has$1(base, key)) {
39435
+ assigned[key] = true;
39436
+ markChanged(state);
39437
+ } else if (!assigned[key]) {
39438
+ // Only untouched properties trigger recursion.
39439
+ markChangesRecursively(draft[key]);
39440
+ }
39441
+ }); // Look for removed keys.
39442
+
39443
+ Object.keys(base).forEach(function (key) {
39444
+ // The `undefined` check is a fast path for pre-existing keys.
39445
+ if (draft[key] === undefined && !has$1(draft, key)) {
39446
+ assigned[key] = false;
39447
+ markChanged(state);
39448
+ }
39449
+ });
39450
+ } else if (hasArrayChanges(state)) {
39451
+ markChanged(state);
39452
+ assigned.length = true;
39453
+
39454
+ if (draft.length < base.length) {
39455
+ for (var i = draft.length; i < base.length; i++) { assigned[i] = false; }
39456
+ } else {
39457
+ for (var i$1 = base.length; i$1 < draft.length; i$1++) { assigned[i$1] = true; }
39458
+ }
39459
+
39460
+ for (var i$2 = 0; i$2 < draft.length; i$2++) {
39461
+ // Only untouched indices trigger recursion.
39462
+ if (assigned[i$2] === undefined) { markChangesRecursively(draft[i$2]); }
39463
+ }
39464
+ }
39465
+ }
39466
+
39467
+ function hasObjectChanges(state) {
39468
+ var base = state.base;
39469
+ var draft = state.draft; // Search for added keys and changed keys. Start at the back, because
39470
+ // non-numeric keys are ordered by time of definition on the object.
39471
+
39472
+ var keys = Object.keys(draft);
39473
+
39474
+ for (var i = keys.length - 1; i >= 0; i--) {
39475
+ var key = keys[i];
39476
+ var baseValue = base[key]; // The `undefined` check is a fast path for pre-existing keys.
39477
+
39478
+ if (baseValue === undefined && !has$1(base, key)) {
39479
+ return true;
39480
+ } // Once a base key is deleted, future changes go undetected, because its
39481
+ // descriptor is erased. This branch detects any missed changes.
39482
+ else {
39483
+ var value = draft[key];
39484
+ var state$1 = value && value[DRAFT_STATE];
39485
+
39486
+ if (state$1 ? state$1.base !== baseValue : !is(value, baseValue)) {
39487
+ return true;
39488
+ }
39489
+ }
39490
+ } // At this point, no keys were added or changed.
39491
+ // Compare key count to determine if keys were deleted.
39492
+
39493
+
39494
+ return keys.length !== Object.keys(base).length;
39495
+ }
39496
+
39497
+ function hasArrayChanges(state) {
39498
+ var draft = state.draft;
39499
+ if (draft.length !== state.base.length) { return true; } // See #116
39500
+ // If we first shorten the length, our array interceptors will be removed.
39501
+ // If after that new items are added, result in the same original length,
39502
+ // those last items will have no intercepting property.
39503
+ // So if there is no own descriptor on the last position, we know that items were removed and added
39504
+ // N.B.: splice, unshift, etc only shift values around, but not prop descriptors, so we only have to check
39505
+ // the last one
39506
+
39507
+ var descriptor = Object.getOwnPropertyDescriptor(draft, draft.length - 1); // descriptor can be null, but only for newly created sparse arrays, eg. new Array(10)
39508
+
39509
+ 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
39510
+
39511
+ return false;
39512
+ }
39513
+
39514
+ function createHiddenProperty(target, prop, value) {
39515
+ Object.defineProperty(target, prop, {
39516
+ value: value,
39517
+ enumerable: false,
39518
+ writable: true
39519
+ });
39520
+ }
39521
+
39522
+ var legacyProxy = /*#__PURE__*/Object.freeze({
39523
+ willFinalize: willFinalize,
39524
+ createProxy: createProxy
39525
+ });
39526
+
39527
+ function willFinalize$1() {}
39528
+ function createProxy$1(base, parent) {
39529
+ var scope = parent ? parent.scope : ImmerScope.current;
39530
+ var state = {
39531
+ // Track which produce call this is associated with.
39532
+ scope: scope,
39533
+ // True for both shallow and deep changes.
39534
+ modified: false,
39535
+ // Used during finalization.
39536
+ finalized: false,
39537
+ // Track which properties have been assigned (true) or deleted (false).
39538
+ assigned: {},
39539
+ // The parent draft state.
39540
+ parent: parent,
39541
+ // The base state.
39542
+ base: base,
39543
+ // The base proxy.
39544
+ draft: null,
39545
+ // Any property proxies.
39546
+ drafts: {},
39547
+ // The base copy with any updated values.
39548
+ copy: null,
39549
+ // Called by the `produce` function.
39550
+ revoke: null
39551
+ };
39552
+ var ref = Array.isArray(base) ? // [state] is used for arrays, to make sure the proxy is array-ish and not violate invariants,
39553
+ // although state itself is an object
39554
+ Proxy.revocable([state], arrayTraps) : Proxy.revocable(state, objectTraps);
39555
+ var revoke = ref.revoke;
39556
+ var proxy = ref.proxy;
39557
+ state.draft = proxy;
39558
+ state.revoke = revoke;
39559
+ scope.drafts.push(proxy);
39560
+ return proxy;
39561
+ }
39562
+ var objectTraps = {
39563
+ get: get$1$1,
39564
+
39565
+ has: function has(target, prop) {
39566
+ return prop in source$1(target);
39567
+ },
39568
+
39569
+ ownKeys: function ownKeys(target) {
39570
+ return Reflect.ownKeys(source$1(target));
39571
+ },
39572
+
39573
+ set: set$1$1,
39574
+ deleteProperty: deleteProperty,
39575
+ getOwnPropertyDescriptor: getOwnPropertyDescriptor$2,
39576
+
39577
+ defineProperty: function defineProperty() {
39578
+ throw new Error("Object.defineProperty() cannot be used on an Immer draft"); // prettier-ignore
39579
+ },
39580
+
39581
+ getPrototypeOf: function getPrototypeOf(target) {
39582
+ return Object.getPrototypeOf(target.base);
39583
+ },
39584
+
39585
+ setPrototypeOf: function setPrototypeOf() {
39586
+ throw new Error("Object.setPrototypeOf() cannot be used on an Immer draft"); // prettier-ignore
39587
+ }
39588
+
39589
+ };
39590
+ var arrayTraps = {};
39591
+ each(objectTraps, function (key, fn) {
39592
+ arrayTraps[key] = function () {
39593
+ arguments[0] = arguments[0][0];
39594
+ return fn.apply(this, arguments);
39595
+ };
39596
+ });
39597
+
39598
+ arrayTraps.deleteProperty = function (state, prop) {
39599
+ if (isNaN(parseInt(prop))) {
39600
+ throw new Error("Immer only supports deleting array indices"); // prettier-ignore
39601
+ }
39602
+
39603
+ return objectTraps.deleteProperty.call(this, state[0], prop);
39604
+ };
39605
+
39606
+ arrayTraps.set = function (state, prop, value) {
39607
+ if (prop !== "length" && isNaN(parseInt(prop))) {
39608
+ throw new Error("Immer only supports setting array indices and the 'length' property"); // prettier-ignore
39609
+ }
39610
+
39611
+ return objectTraps.set.call(this, state[0], prop, value);
39612
+ }; // returns the object we should be reading the current value from, which is base, until some change has been made
39613
+
39614
+
39615
+ function source$1(state) {
39616
+ return state.copy || state.base;
39617
+ } // Access a property without creating an Immer draft.
39618
+
39619
+
39620
+ function peek$1(draft, prop) {
39621
+ var state = draft[DRAFT_STATE];
39622
+ var desc = Reflect.getOwnPropertyDescriptor(state ? source$1(state) : draft, prop);
39623
+ return desc && desc.value;
39624
+ }
39625
+
39626
+ function get$1$1(state, prop) {
39627
+ if (prop === DRAFT_STATE) { return state; }
39628
+ var drafts = state.drafts; // Check for existing draft in unmodified state.
39629
+
39630
+ if (!state.modified && has$1(drafts, prop)) {
39631
+ return drafts[prop];
39632
+ }
39633
+
39634
+ var value = source$1(state)[prop];
39635
+
39636
+ if (state.finalized || !isDraftable(value)) {
39637
+ return value;
39638
+ } // Check for existing draft in modified state.
39639
+
39640
+
39641
+ if (state.modified) {
39642
+ // Assigned values are never drafted. This catches any drafts we created, too.
39643
+ if (value !== peek$1(state.base, prop)) { return value; } // Store drafts on the copy (when one exists).
39644
+
39645
+ drafts = state.copy;
39646
+ }
39647
+
39648
+ return drafts[prop] = createProxy$1(value, state);
39649
+ }
39650
+
39651
+ function set$1$1(state, prop, value) {
39652
+ if (!state.modified) {
39653
+ var baseValue = peek$1(state.base, prop); // Optimize based on value's truthiness. Truthy values are guaranteed to
39654
+ // never be undefined, so we can avoid the `in` operator. Lastly, truthy
39655
+ // values may be drafts, but falsy values are never drafts.
39656
+
39657
+ var isUnchanged = value ? is(baseValue, value) || value === state.drafts[prop] : is(baseValue, value) && prop in state.base;
39658
+ if (isUnchanged) { return true; }
39659
+ markChanged$1(state);
39660
+ }
39661
+
39662
+ state.assigned[prop] = true;
39663
+ state.copy[prop] = value;
39664
+ return true;
39665
+ }
39666
+
39667
+ function deleteProperty(state, prop) {
39668
+ // The `undefined` check is a fast path for pre-existing keys.
39669
+ if (peek$1(state.base, prop) !== undefined || prop in state.base) {
39670
+ state.assigned[prop] = false;
39671
+ markChanged$1(state);
39672
+ } else if (state.assigned[prop]) {
39673
+ // if an originally not assigned property was deleted
39674
+ delete state.assigned[prop];
39675
+ }
39676
+
39677
+ if (state.copy) { delete state.copy[prop]; }
39678
+ return true;
39679
+ } // Note: We never coerce `desc.value` into an Immer draft, because we can't make
39680
+ // the same guarantee in ES5 mode.
39681
+
39682
+
39683
+ function getOwnPropertyDescriptor$2(state, prop) {
39684
+ var owner = source$1(state);
39685
+ var desc = Reflect.getOwnPropertyDescriptor(owner, prop);
39686
+
39687
+ if (desc) {
39688
+ desc.writable = true;
39689
+ desc.configurable = !Array.isArray(owner) || prop !== "length";
39690
+ }
39691
+
39692
+ return desc;
39693
+ }
39694
+
39695
+ function markChanged$1(state) {
39696
+ if (!state.modified) {
39697
+ state.modified = true;
39698
+ state.copy = assign(shallowCopy(state.base), state.drafts);
39699
+ state.drafts = null;
39700
+ if (state.parent) { markChanged$1(state.parent); }
39701
+ }
39702
+ }
39703
+
39704
+ var modernProxy = /*#__PURE__*/Object.freeze({
39705
+ willFinalize: willFinalize$1,
39706
+ createProxy: createProxy$1
39707
+ });
39708
+
39709
+ function generatePatches(state, basePath, patches, inversePatches) {
39710
+ Array.isArray(state.base) ? generateArrayPatches(state, basePath, patches, inversePatches) : generateObjectPatches(state, basePath, patches, inversePatches);
39711
+ }
39712
+
39713
+ function generateArrayPatches(state, basePath, patches, inversePatches) {
39714
+ var assign, assign$1;
39715
+
39716
+ var base = state.base;
39717
+ var copy = state.copy;
39718
+ var assigned = state.assigned; // Reduce complexity by ensuring `base` is never longer.
39719
+
39720
+ if (copy.length < base.length) {
39721
+ (assign = [copy, base], base = assign[0], copy = assign[1]);
39722
+ (assign$1 = [inversePatches, patches], patches = assign$1[0], inversePatches = assign$1[1]);
39723
+ }
39724
+
39725
+ var delta = copy.length - base.length; // Find the first replaced index.
39726
+
39727
+ var start = 0;
39728
+
39729
+ while (base[start] === copy[start] && start < base.length) {
39730
+ ++start;
39731
+ } // Find the last replaced index. Search from the end to optimize splice patches.
39732
+
39733
+
39734
+ var end = base.length;
39735
+
39736
+ while (end > start && base[end - 1] === copy[end + delta - 1]) {
39737
+ --end;
39738
+ } // Process replaced indices.
39739
+
39740
+
39741
+ for (var i = start; i < end; ++i) {
39742
+ if (assigned[i] && copy[i] !== base[i]) {
39743
+ var path = basePath.concat([i]);
39744
+ patches.push({
39745
+ op: "replace",
39746
+ path: path,
39747
+ value: copy[i]
39748
+ });
39749
+ inversePatches.push({
39750
+ op: "replace",
39751
+ path: path,
39752
+ value: base[i]
39753
+ });
39754
+ }
39755
+ }
39756
+
39757
+ var replaceCount = patches.length; // Process added indices.
39758
+
39759
+ for (var i$1 = end + delta - 1; i$1 >= end; --i$1) {
39760
+ var path$1 = basePath.concat([i$1]);
39761
+ patches[replaceCount + i$1 - end] = {
39762
+ op: "add",
39763
+ path: path$1,
39764
+ value: copy[i$1]
39765
+ };
39766
+ inversePatches.push({
39767
+ op: "remove",
39768
+ path: path$1
39769
+ });
39770
+ }
39771
+ }
39772
+
39773
+ function generateObjectPatches(state, basePath, patches, inversePatches) {
39774
+ var base = state.base;
39775
+ var copy = state.copy;
39776
+ each(state.assigned, function (key, assignedValue) {
39777
+ var origValue = base[key];
39778
+ var value = copy[key];
39779
+ var op = !assignedValue ? "remove" : key in base ? "replace" : "add";
39780
+ if (origValue === value && op === "replace") { return; }
39781
+ var path = basePath.concat(key);
39782
+ patches.push(op === "remove" ? {
39783
+ op: op,
39784
+ path: path
39785
+ } : {
39786
+ op: op,
39787
+ path: path,
39788
+ value: value
39789
+ });
39790
+ inversePatches.push(op === "add" ? {
39791
+ op: "remove",
39792
+ path: path
39793
+ } : op === "remove" ? {
39794
+ op: "add",
39795
+ path: path,
39796
+ value: origValue
39797
+ } : {
39798
+ op: "replace",
39799
+ path: path,
39800
+ value: origValue
39801
+ });
39802
+ });
39803
+ }
39804
+
39805
+ var applyPatches = function (draft, patches) {
39806
+ for (var i$1 = 0, list = patches; i$1 < list.length; i$1 += 1) {
39807
+ var patch = list[i$1];
39808
+
39809
+ var path = patch.path;
39810
+ var op = patch.op;
39811
+ var value = clone(patch.value); // used to clone patch to ensure original patch is not modified, see #411
39812
+
39813
+ if (!path.length) { throw new Error("Illegal state"); }
39814
+ var base = draft;
39815
+
39816
+ for (var i = 0; i < path.length - 1; i++) {
39817
+ base = base[path[i]];
39818
+ if (!base || typeof base !== "object") { throw new Error("Cannot apply patch, path doesn't resolve: " + path.join("/")); } // prettier-ignore
39819
+ }
39820
+
39821
+ var key = path[path.length - 1];
39822
+
39823
+ switch (op) {
39824
+ case "replace":
39825
+ // if value is an object, then it's assigned by reference
39826
+ // in the following add or remove ops, the value field inside the patch will also be modifyed
39827
+ // so we use value from the cloned patch
39828
+ base[key] = value;
39829
+ break;
39830
+
39831
+ case "add":
39832
+ if (Array.isArray(base)) {
39833
+ // TODO: support "foo/-" paths for appending to an array
39834
+ base.splice(key, 0, value);
39835
+ } else {
39836
+ base[key] = value;
39837
+ }
39838
+
39839
+ break;
39840
+
39841
+ case "remove":
39842
+ if (Array.isArray(base)) {
39843
+ base.splice(key, 1);
39844
+ } else {
39845
+ delete base[key];
39846
+ }
39847
+
39848
+ break;
39849
+
39850
+ default:
39851
+ throw new Error("Unsupported patch operation: " + op);
39852
+ }
39853
+ }
39854
+
39855
+ return draft;
39856
+ };
39857
+
39858
+ function verifyMinified() {}
39859
+
39860
+ var configDefaults = {
39861
+ useProxies: typeof Proxy !== "undefined" && typeof Reflect !== "undefined",
39862
+ autoFreeze: typeof process !== "undefined" ? process.env.NODE_ENV !== "production" : verifyMinified.name === "verifyMinified",
39863
+ onAssign: null,
39864
+ onDelete: null,
39865
+ onCopy: null
39866
+ };
39867
+ var Immer = function Immer(config) {
39868
+ assign(this, configDefaults, config);
39869
+ this.setUseProxies(this.useProxies);
39870
+ this.produce = this.produce.bind(this);
39871
+ };
39872
+
39873
+ Immer.prototype.produce = function produce (base, recipe, patchListener) {
39874
+ var this$1$1 = this;
39875
+
39876
+ // curried invocation
39877
+ if (typeof base === "function" && typeof recipe !== "function") {
39878
+ var defaultBase = recipe;
39879
+ recipe = base;
39880
+ var self = this;
39881
+ return function curriedProduce(base) {
39882
+ var this$1$1 = this;
39883
+ if ( base === void 0 ) base = defaultBase;
39884
+ var args = [], len = arguments.length - 1;
39885
+ while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];
39886
+
39887
+ return self.produce(base, function (draft) { return recipe.call.apply(recipe, [ this$1$1, draft ].concat( args )); }); // prettier-ignore
39888
+ };
39889
+ } // prettier-ignore
39890
+
39891
+
39892
+ {
39893
+ if (typeof recipe !== "function") {
39894
+ throw new Error("The first or second argument to `produce` must be a function");
39895
+ }
39896
+
39897
+ if (patchListener !== undefined && typeof patchListener !== "function") {
39898
+ throw new Error("The third argument to `produce` must be a function or undefined");
39899
+ }
39900
+ }
39901
+ var result; // Only plain objects, arrays, and "immerable classes" are drafted.
39902
+
39903
+ if (isDraftable(base)) {
39904
+ var scope = ImmerScope.enter();
39905
+ var proxy = this.createProxy(base);
39906
+ var hasError = true;
39907
+
39908
+ try {
39909
+ result = recipe(proxy);
39910
+ hasError = false;
39911
+ } finally {
39912
+ // finally instead of catch + rethrow better preserves original stack
39913
+ if (hasError) { scope.revoke(); }else { scope.leave(); }
39914
+ }
39915
+
39916
+ if (result instanceof Promise) {
39917
+ return result.then(function (result) {
39918
+ scope.usePatches(patchListener);
39919
+ return this$1$1.processResult(result, scope);
39920
+ }, function (error) {
39921
+ scope.revoke();
39922
+ throw error;
39923
+ });
39924
+ }
39925
+
39926
+ scope.usePatches(patchListener);
39927
+ return this.processResult(result, scope);
39928
+ } else {
39929
+ result = recipe(base);
39930
+ if (result === undefined) { return base; }
39931
+ return result !== NOTHING ? result : undefined;
39932
+ }
39933
+ };
39934
+
39935
+ Immer.prototype.produceWithPatches = function produceWithPatches (arg1, arg2, arg3) {
39936
+ var this$1$1 = this;
39937
+
39938
+ if (typeof arg1 === "function") {
39939
+ return function (state) {
39940
+ var args = [], len = arguments.length - 1;
39941
+ while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];
39942
+
39943
+ return this$1$1.produceWithPatches(state, function (draft) { return arg1.apply(void 0, [ draft ].concat( args )); });
39944
+ };
39945
+ } // non-curried form
39946
+
39947
+
39948
+ if (arg3) { throw new Error("A patch listener cannot be passed to produceWithPatches"); }
39949
+ var patches, inversePatches;
39950
+ var nextState = this.produce(arg1, arg2, function (p, ip) {
39951
+ patches = p;
39952
+ inversePatches = ip;
39953
+ });
39954
+ return [nextState, patches, inversePatches];
39955
+ };
39956
+
39957
+ Immer.prototype.createDraft = function createDraft (base) {
39958
+ if (!isDraftable(base)) {
39959
+ throw new Error("First argument to `createDraft` must be a plain object, an array, or an immerable object"); // prettier-ignore
39960
+ }
39961
+
39962
+ var scope = ImmerScope.enter();
39963
+ var proxy = this.createProxy(base);
39964
+ proxy[DRAFT_STATE].isManual = true;
39965
+ scope.leave();
39966
+ return proxy;
39967
+ };
39968
+
39969
+ Immer.prototype.finishDraft = function finishDraft (draft, patchListener) {
39970
+ var state = draft && draft[DRAFT_STATE];
39971
+
39972
+ if (!state || !state.isManual) {
39973
+ throw new Error("First argument to `finishDraft` must be a draft returned by `createDraft`"); // prettier-ignore
39974
+ }
39975
+
39976
+ if (state.finalized) {
39977
+ throw new Error("The given draft is already finalized"); // prettier-ignore
39978
+ }
39979
+
39980
+ var scope = state.scope;
39981
+ scope.usePatches(patchListener);
39982
+ return this.processResult(undefined, scope);
39983
+ };
39984
+
39985
+ Immer.prototype.setAutoFreeze = function setAutoFreeze (value) {
39986
+ this.autoFreeze = value;
39987
+ };
39988
+
39989
+ Immer.prototype.setUseProxies = function setUseProxies (value) {
39990
+ this.useProxies = value;
39991
+ assign(this, value ? modernProxy : legacyProxy);
39992
+ };
39993
+
39994
+ Immer.prototype.applyPatches = function applyPatches$1 (base, patches) {
39995
+ // If a patch replaces the entire state, take that replacement as base
39996
+ // before applying patches
39997
+ var i;
39998
+
39999
+ for (i = patches.length - 1; i >= 0; i--) {
40000
+ var patch = patches[i];
40001
+
40002
+ if (patch.path.length === 0 && patch.op === "replace") {
40003
+ base = patch.value;
40004
+ break;
40005
+ }
40006
+ }
40007
+
40008
+ if (isDraft(base)) {
40009
+ // N.B: never hits if some patch a replacement, patches are never drafts
40010
+ return applyPatches(base, patches);
40011
+ } // Otherwise, produce a copy of the base state.
40012
+
40013
+
40014
+ return this.produce(base, function (draft) { return applyPatches(draft, patches.slice(i + 1)); });
40015
+ };
40016
+ /** @internal */
40017
+
40018
+
40019
+ Immer.prototype.processResult = function processResult (result, scope) {
40020
+ var baseDraft = scope.drafts[0];
40021
+ var isReplaced = result !== undefined && result !== baseDraft;
40022
+ this.willFinalize(scope, result, isReplaced);
40023
+
40024
+ if (isReplaced) {
40025
+ if (baseDraft[DRAFT_STATE].modified) {
40026
+ scope.revoke();
40027
+ 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
40028
+ }
40029
+
40030
+ if (isDraftable(result)) {
40031
+ // Finalize the result in case it contains (or is) a subset of the draft.
40032
+ result = this.finalize(result, null, scope);
40033
+ }
40034
+
40035
+ if (scope.patches) {
40036
+ scope.patches.push({
40037
+ op: "replace",
40038
+ path: [],
40039
+ value: result
40040
+ });
40041
+ scope.inversePatches.push({
40042
+ op: "replace",
40043
+ path: [],
40044
+ value: baseDraft[DRAFT_STATE].base
40045
+ });
40046
+ }
40047
+ } else {
40048
+ // Finalize the base draft.
40049
+ result = this.finalize(baseDraft, [], scope);
40050
+ }
40051
+
40052
+ scope.revoke();
40053
+
40054
+ if (scope.patches) {
40055
+ scope.patchListener(scope.patches, scope.inversePatches);
40056
+ }
40057
+
40058
+ return result !== NOTHING ? result : undefined;
39101
40059
  };
40060
+ /**
40061
+ * @internal
40062
+ * Finalize a draft, returning either the unmodified base state or a modified
40063
+ * copy of the base state.
40064
+ */
40065
+
40066
+
40067
+ Immer.prototype.finalize = function finalize (draft, path, scope) {
40068
+ var this$1$1 = this;
40069
+
40070
+ var state = draft[DRAFT_STATE];
40071
+
40072
+ if (!state) {
40073
+ if (Object.isFrozen(draft)) { return draft; }
40074
+ return this.finalizeTree(draft, null, scope);
40075
+ } // Never finalize drafts owned by another scope.
40076
+
40077
+
40078
+ if (state.scope !== scope) {
40079
+ return draft;
40080
+ }
40081
+
40082
+ if (!state.modified) {
40083
+ return state.base;
40084
+ }
40085
+
40086
+ if (!state.finalized) {
40087
+ state.finalized = true;
40088
+ this.finalizeTree(state.draft, path, scope);
39102
40089
 
39103
- const computeErrorEntries = (formState) => {
39104
- const fields = Object.entries(formState);
39105
- for (let entry of fields) {
39106
- let fieldName = entry[0];
39107
- let errors = computeErrors(fieldName, formState);
39108
- formState[fieldName].errors = errors;
39109
- formState[fieldName].hasErrors = errors.length > 0;
40090
+ if (this.onDelete) {
40091
+ // The `assigned` object is unreliable with ES5 drafts.
40092
+ if (this.useProxies) {
40093
+ var assigned = state.assigned;
40094
+
40095
+ for (var prop in assigned) {
40096
+ if (!assigned[prop]) { this.onDelete(state, prop); }
40097
+ }
40098
+ } else {
40099
+ var base = state.base;
40100
+ var copy = state.copy;
40101
+ each(base, function (prop) {
40102
+ if (!has$1(copy, prop)) { this$1$1.onDelete(state, prop); }
40103
+ });
40104
+ }
40105
+ }
40106
+
40107
+ if (this.onCopy) {
40108
+ this.onCopy(state);
40109
+ } // At this point, all descendants of `state.copy` have been finalized,
40110
+ // so we can be sure that `scope.canAutoFreeze` is accurate.
40111
+
40112
+
40113
+ if (this.autoFreeze && scope.canAutoFreeze) {
40114
+ Object.freeze(state.copy);
40115
+ }
40116
+
40117
+ if (path && scope.patches) {
40118
+ generatePatches(state, path, scope.patches, scope.inversePatches);
40119
+ }
39110
40120
  }
40121
+
40122
+ return state.copy;
39111
40123
  };
40124
+ /**
40125
+ * @internal
40126
+ * Finalize all drafts in the given state tree.
40127
+ */
40128
+
40129
+
40130
+ Immer.prototype.finalizeTree = function finalizeTree (root, rootPath, scope) {
40131
+ var this$1$1 = this;
39112
40132
 
39113
- const computeDirtyEntries = (formState, changedFieldName) => {
39114
- const fields = Object.entries(formState);
39115
- for (let entry of fields) {
39116
- let fieldName = entry[0];
39117
- let field = entry[1];
39118
- let dirty = fieldName === changedFieldName ? true : field.dirty;
39119
- formState[fieldName].dirty = dirty;
40133
+ var state = root[DRAFT_STATE];
40134
+
40135
+ if (state) {
40136
+ if (!this.useProxies) {
40137
+ // Create the final copy, with added keys and without deleted keys.
40138
+ state.copy = shallowCopy(state.draft, true);
40139
+ }
40140
+
40141
+ root = state.copy;
39120
40142
  }
40143
+
40144
+ var needPatches = !!rootPath && !!scope.patches;
40145
+
40146
+ var finalizeProperty = function (prop, value, parent) {
40147
+ if (value === parent) {
40148
+ throw Error("Immer forbids circular references");
40149
+ } // In the `finalizeTree` method, only the `root` object may be a draft.
40150
+
40151
+
40152
+ var isDraftProp = !!state && parent === root;
40153
+
40154
+ if (isDraft(value)) {
40155
+ var path = isDraftProp && needPatches && !state.assigned[prop] ? rootPath.concat(prop) : null; // Drafts owned by `scope` are finalized here.
40156
+
40157
+ value = this$1$1.finalize(value, path, scope); // Drafts from another scope must prevent auto-freezing.
40158
+
40159
+ if (isDraft(value)) {
40160
+ scope.canAutoFreeze = false;
40161
+ } // Preserve non-enumerable properties.
40162
+
40163
+
40164
+ if (Array.isArray(parent) || isEnumerable(parent, prop)) {
40165
+ parent[prop] = value;
40166
+ } else {
40167
+ Object.defineProperty(parent, prop, {
40168
+ value: value
40169
+ });
40170
+ } // Unchanged drafts are never passed to the `onAssign` hook.
40171
+
40172
+
40173
+ if (isDraftProp && value === state.base[prop]) { return; }
40174
+ } // Unchanged draft properties are ignored.
40175
+ else if (isDraftProp && is(value, state.base[prop])) {
40176
+ return;
40177
+ } // Search new objects for unfinalized drafts. Frozen objects should never contain drafts.
40178
+ else if (isDraftable(value) && !Object.isFrozen(value)) {
40179
+ each(value, finalizeProperty);
40180
+ }
40181
+
40182
+ if (isDraftProp && this$1$1.onAssign) {
40183
+ this$1$1.onAssign(state, prop, value);
40184
+ }
40185
+ };
40186
+
40187
+ each(root, finalizeProperty);
40188
+ return root;
39121
40189
  };
39122
40190
 
39123
- 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;
40191
+ var immer = new Immer();
40192
+ /**
40193
+ * The `produce` function takes a value and a "recipe function" (whose
40194
+ * return value often depends on the base state). The recipe function is
40195
+ * free to mutate its first argument however it wants. All mutations are
40196
+ * only ever applied to a __copy__ of the base state.
40197
+ *
40198
+ * Pass only a function to create a "curried producer" which relieves you
40199
+ * from passing the recipe function every time.
40200
+ *
40201
+ * Only plain objects and arrays are made mutable. All other objects are
40202
+ * considered uncopyable.
40203
+ *
40204
+ * Note: This function is __bound__ to its `Immer` instance.
40205
+ *
40206
+ * @param {any} base - the initial state
40207
+ * @param {Function} producer - function that receives a proxy of the base state as first argument and which can be freely modified
40208
+ * @param {Function} patchListener - optional function that will be called with all the patches produced here
40209
+ * @returns {any} a new state, or the initial state if nothing was modified
40210
+ */
40211
+
40212
+ var produce = immer.produce;
40213
+ /**
40214
+ * Like `produce`, but `produceWithPatches` always returns a tuple
40215
+ * [nextState, patches, inversePatches] (instead of just the next state)
40216
+ */
40217
+
40218
+ immer.produceWithPatches.bind(immer);
40219
+ /**
40220
+ * Pass true to automatically freeze all copies created by Immer.
40221
+ *
40222
+ * By default, auto-freezing is disabled in production.
40223
+ */
40224
+
40225
+ immer.setAutoFreeze.bind(immer);
40226
+ /**
40227
+ * Pass true to use the ES2015 `Proxy` class when creating drafts, which is
40228
+ * always faster than using ES5 proxies.
40229
+ *
40230
+ * By default, feature detection is used, so calling this is rarely necessary.
40231
+ */
40232
+
40233
+ immer.setUseProxies.bind(immer);
40234
+ /**
40235
+ * Apply an array of Immer patches to the first argument.
40236
+ *
40237
+ * This function is a producer, which means copy-on-write is in effect.
40238
+ */
40239
+
40240
+ immer.applyPatches.bind(immer);
40241
+ /**
40242
+ * Create an Immer draft from the given base state, which may be a draft itself.
40243
+ * The draft can be modified until you finalize it with the `finishDraft` function.
40244
+ */
39124
40245
 
39125
- const createInitialState = (formConfig) => {
40246
+ immer.createDraft.bind(immer);
40247
+ /**
40248
+ * Finalize an Immer draft from a `createDraft` call, returning the base state
40249
+ * (if no changes were made) or a modified copy. The draft must *not* be
40250
+ * mutated afterwards.
40251
+ *
40252
+ * Pass a function as the 2nd argument to generate Immer patches based on the
40253
+ * changes that were made.
40254
+ */
40255
+
40256
+ immer.finishDraft.bind(immer);
40257
+
40258
+ const createInitialState = formConfig => {
39126
40259
  let initialForm = {};
39127
40260
  const formConfigKeys = Object.keys(formConfig);
39128
40261
  for (let formKey of formConfigKeys) {
39129
40262
  initialForm[formKey] = {
39130
40263
  dirty: false,
39131
- rawValue: formConfig[formKey].defaultValue || '',
40264
+ rawValue: formConfig[formKey].defaultValue || "",
39132
40265
  validators: formConfig[formKey].validators || [],
39133
- constraints: formConfig[formKey].constraints || [],
40266
+ constraints: formConfig[formKey].constraints || []
39134
40267
  };
39135
40268
  }
39136
40269
  // Because validators require the entire form we have to do a
@@ -39141,99 +40274,82 @@ const createInitialState = (formConfig) => {
39141
40274
  initialForm[formKey].errors = errors;
39142
40275
  initialForm[formKey].hasErrors = errors.length > 0;
39143
40276
  }
39144
-
39145
40277
  return initialForm;
39146
40278
  };
39147
40279
 
39148
- const SET = 'field/SET';
39149
- const set$1 = (fieldName) => (value) => ({
40280
+ const SET = "field/SET";
40281
+ const set$2 = fieldName => value => ({
39150
40282
  type: SET,
39151
- payload: { fieldName, value },
40283
+ payload: { fieldName, value }
39152
40284
  });
39153
40285
 
39154
- const CLEAR = 'form/CLEAR';
40286
+ const CLEAR = "form/CLEAR";
39155
40287
  const clear = () => ({ type: CLEAR });
39156
40288
 
39157
- const ADD_VALIDATOR = 'field/ADD_VALIDATOR';
39158
- const addValidator = (fieldName) => (validator) => ({
40289
+ const ADD_VALIDATOR = "field/ADD_VALIDATOR";
40290
+ const addValidator = fieldName => validator => ({
39159
40291
  type: ADD_VALIDATOR,
39160
- payload: { fieldName, validator },
39161
- });
39162
-
39163
- const REMOVE_VALIDATOR = 'field/REMOVE_VALIDATOR';
39164
- const removeValidator = (fieldName) => (validator) => ({
39165
- type: REMOVE_VALIDATOR,
39166
- payload: { fieldName, validator },
39167
- });
39168
-
39169
- const CLEAR_FIELD_VALIDATORS = 'field/CLEAR_FIELD_VALIDATORS';
39170
- const clearFieldValidators = (fieldName) => () => ({
39171
- type: CLEAR_FIELD_VALIDATORS,
39172
- payload: { fieldName },
40292
+ payload: { fieldName, validator }
39173
40293
  });
39174
40294
 
39175
- const createFormReducer =
39176
- (formConfig) =>
39177
- (state = createInitialState(formConfig), action) => {
39178
- switch (action.type) {
39179
- case SET: {
39180
- const changedFieldName = action.payload.fieldName;
39181
- const newRawValue = action.payload.value;
39182
-
39183
- return produce(state, (draftState) => {
39184
- let originalValue = draftState[changedFieldName].rawValue;
39185
- draftState[changedFieldName].rawValue = newRawValue;
39186
- if (computeConstraints(changedFieldName, draftState).length > 0) {
39187
- // If the change violates constraints, revert the change
39188
- draftState[changedFieldName].rawValue = originalValue;
39189
- return draftState;
39190
- }
39191
-
39192
- computeDirtyEntries(draftState, changedFieldName);
39193
- computeErrorEntries(draftState);
39194
- });
39195
- }
39196
- case CLEAR:
39197
- return createInitialState(formConfig);
39198
- case ADD_VALIDATOR: {
39199
- const fieldWithOverride = action.payload.fieldName;
39200
- const newValidator = action.payload.validator;
39201
-
39202
- return produce(state, (draftState) => {
39203
- draftState[fieldWithOverride].validators.push(newValidator);
39204
- computeErrorEntries(draftState);
39205
- });
39206
- }
39207
- case REMOVE_VALIDATOR: {
39208
- const fieldToOverride = action.payload.fieldName;
39209
- const targetValidator = action.payload.validator;
39210
-
39211
- return produce(state, (draftState) => {
39212
- let fieldValidators = draftState[fieldToOverride].validators;
39213
- draftState[fieldToOverride].validators = fieldValidators.filter(
39214
- (validator) => validator.type !== targetValidator.type
39215
- );
39216
- computeErrorEntries(draftState);
39217
- });
39218
- }
39219
- case CLEAR_FIELD_VALIDATORS: {
39220
- const fieldToClear = action.payload.fieldName;
40295
+ const createFormReducer = formConfig => (
40296
+ state = createInitialState(formConfig),
40297
+ action
40298
+ ) => {
40299
+ switch (action.type) {
40300
+ case SET:
40301
+ const changedFieldName = action.payload.fieldName;
40302
+ const newRawValue = action.payload.value;
40303
+
40304
+ return produce(state, draftState => {
40305
+ let originalValue = draftState[changedFieldName].rawValue;
40306
+ draftState[changedFieldName].rawValue = newRawValue;
40307
+ if (computeConstraints(changedFieldName, draftState).length > 0) {
40308
+ // If the change violates constraints, revert the change
40309
+ draftState[changedFieldName].rawValue = originalValue;
40310
+ return draftState;
40311
+ }
39221
40312
 
39222
- return produce(state, (draftState) => {
39223
- draftState[fieldToClear].validators = [];
39224
- computeErrorEntries(draftState);
39225
- });
39226
- }
39227
- default:
39228
- return state;
39229
- }
39230
- };
40313
+ const fields = Object.entries(draftState);
40314
+ for (let entry of fields) {
40315
+ let fieldName = entry[0];
40316
+ let field = entry[1];
40317
+ let errors = computeErrors(fieldName, draftState);
40318
+ let dirty = fieldName === changedFieldName ? true : field.dirty;
40319
+ draftState[fieldName].errors = errors;
40320
+ draftState[fieldName].dirty = dirty;
40321
+ draftState[fieldName].hasErrors = errors.length > 0;
40322
+ }
40323
+ });
40324
+ case CLEAR:
40325
+ return createInitialState(formConfig);
40326
+ case ADD_VALIDATOR:
40327
+ const fieldWithOverride = action.payload.fieldName;
40328
+ const newValidator = action.payload.validator;
40329
+
40330
+ return produce(state, draftState => {
40331
+ draftState[fieldWithOverride].validators.push(newValidator);
40332
+ const fields = Object.entries(draftState);
40333
+ for (let entry of fields) {
40334
+ let fieldName = entry[0];
40335
+ let field = entry[1];
40336
+ let errors = computeErrors(fieldName, draftState);
40337
+ let dirty = field.dirty;
40338
+ draftState[fieldName].errors = errors;
40339
+ draftState[fieldName].dirty = dirty;
40340
+ draftState[fieldName].hasErrors = errors.length > 0;
40341
+ }
40342
+ });
40343
+ default:
40344
+ return state;
40345
+ }
40346
+ };
39231
40347
 
39232
- const createMapDispatchToProps = (formConfig) => {
40348
+ const createMapDispatchToProps = formConfig => {
39233
40349
  // Do memo-ization
39234
40350
  let cachedDispatch;
39235
40351
  let cacheValue;
39236
- return (dispatch) => {
40352
+ return dispatch => {
39237
40353
  if (dispatch == cachedDispatch) {
39238
40354
  return cacheValue;
39239
40355
  }
@@ -39242,11 +40358,8 @@ const createMapDispatchToProps = (formConfig) => {
39242
40358
  const keys = Object.keys(formConfig);
39243
40359
  for (let fieldName of keys) {
39244
40360
  dispatchObj.fields[fieldName] = {
39245
- set: (value) => dispatch(set$1(fieldName)(value)),
39246
- addValidator: (validator) => dispatch(addValidator(fieldName)(validator)),
39247
- removeValidator: (validator) =>
39248
- dispatch(removeValidator(fieldName)(validator)),
39249
- clear: () => dispatch(clearFieldValidators(fieldName)()),
40361
+ set: value => dispatch(set$2(fieldName)(value)),
40362
+ addValidator: validator => dispatch(addValidator(fieldName)(validator))
39250
40363
  };
39251
40364
  }
39252
40365
  dispatchObj.form = { clear: () => dispatch(clear()) };
@@ -39256,12 +40369,12 @@ const createMapDispatchToProps = (formConfig) => {
39256
40369
  };
39257
40370
  };
39258
40371
 
39259
- const mapStateToProps = (state) => ({ fields: state });
40372
+ const mapStateToProps = state => ({ fields: state });
39260
40373
 
39261
- const createFormState = (formConfig) => ({
40374
+ const createFormState = formConfig => ({
39262
40375
  reducer: createFormReducer(formConfig),
39263
40376
  mapDispatchToProps: createMapDispatchToProps(formConfig),
39264
- mapStateToProps: mapStateToProps,
40377
+ mapStateToProps: mapStateToProps
39265
40378
  });
39266
40379
 
39267
40380
  var AddressForm = function AddressForm(_ref) {
@@ -42127,12 +43240,12 @@ LoginForm.mapDispatchToProps = mapDispatchToProps$5;
42127
43240
  * This source code is licensed under the MIT license found in the
42128
43241
  * LICENSE file in the root directory of this source tree.
42129
43242
  */
42130
- 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?
42131
- 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;
42132
- 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;
42133
- 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};
42134
- 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};
42135
- 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;
43243
+ 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?
43244
+ 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;
43245
+ 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;
43246
+ 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};
43247
+ 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};
43248
+ 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;
42136
43249
 
42137
43250
  var reactIs_production_min = {
42138
43251
  AsyncMode: AsyncMode,
@@ -42503,14 +43616,14 @@ var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
42503
43616
 
42504
43617
  var ReactPropTypesSecret_1 = ReactPropTypesSecret;
42505
43618
 
42506
- var has$1 = Function.call.bind(Object.prototype.hasOwnProperty);
43619
+ var has$2 = Function.call.bind(Object.prototype.hasOwnProperty);
42507
43620
 
42508
43621
  var printWarning = function() {};
42509
43622
 
42510
43623
  if (process.env.NODE_ENV !== 'production') {
42511
43624
  var ReactPropTypesSecret$1 = ReactPropTypesSecret_1;
42512
43625
  var loggedTypeFailures = {};
42513
- var has$2 = has$1;
43626
+ var has$3 = has$2;
42514
43627
 
42515
43628
  printWarning = function(text) {
42516
43629
  var message = 'Warning: ' + text;
@@ -42540,7 +43653,7 @@ if (process.env.NODE_ENV !== 'production') {
42540
43653
  function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
42541
43654
  if (process.env.NODE_ENV !== 'production') {
42542
43655
  for (var typeSpecName in typeSpecs) {
42543
- if (has$2(typeSpecs, typeSpecName)) {
43656
+ if (has$3(typeSpecs, typeSpecName)) {
42544
43657
  var error;
42545
43658
  // Prop type validation may throw. In case they do, we don't want to
42546
43659
  // fail the render phase where it didn't fail before. So we log it.
@@ -42939,7 +44052,7 @@ var factoryWithTypeCheckers = function(isValidElement, throwOnDirectAccess) {
42939
44052
  return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
42940
44053
  }
42941
44054
  for (var key in propValue) {
42942
- if (has$1(propValue, key)) {
44055
+ if (has$2(propValue, key)) {
42943
44056
  var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret_1);
42944
44057
  if (error instanceof Error) {
42945
44058
  return error;
@@ -42976,7 +44089,7 @@ var factoryWithTypeCheckers = function(isValidElement, throwOnDirectAccess) {
42976
44089
  if (checkerResult == null) {
42977
44090
  return null;
42978
44091
  }
42979
- if (checkerResult.data && has$1(checkerResult.data, 'expectedType')) {
44092
+ if (checkerResult.data && has$2(checkerResult.data, 'expectedType')) {
42980
44093
  expectedTypes.push(checkerResult.data.expectedType);
42981
44094
  }
42982
44095
  }
@@ -43036,7 +44149,7 @@ var factoryWithTypeCheckers = function(isValidElement, throwOnDirectAccess) {
43036
44149
  var allKeys = objectAssign({}, props[propName], shapeTypes);
43037
44150
  for (var key in allKeys) {
43038
44151
  var checker = shapeTypes[key];
43039
- if (has$1(shapeTypes, key) && typeof checker !== 'function') {
44152
+ if (has$2(shapeTypes, key) && typeof checker !== 'function') {
43040
44153
  return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
43041
44154
  }
43042
44155
  if (!checker) {
@@ -43774,7 +44887,7 @@ var index_esm = /*#__PURE__*/Object.freeze({
43774
44887
  * @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
43775
44888
  */
43776
44889
 
43777
- function ownKeys$2(object, enumerableOnly) {
44890
+ function ownKeys$3(object, enumerableOnly) {
43778
44891
  var keys = Object.keys(object);
43779
44892
 
43780
44893
  if (Object.getOwnPropertySymbols) {
@@ -43790,9 +44903,9 @@ function ownKeys$2(object, enumerableOnly) {
43790
44903
  function _objectSpread2$1(target) {
43791
44904
  for (var i = 1; i < arguments.length; i++) {
43792
44905
  var source = null != arguments[i] ? arguments[i] : {};
43793
- i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) {
44906
+ i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) {
43794
44907
  _defineProperty$1(target, key, source[key]);
43795
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) {
44908
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) {
43796
44909
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
43797
44910
  });
43798
44911
  }
@@ -48486,10 +49599,6 @@ var fallbackValues$Q = {
48486
49599
 
48487
49600
  */
48488
49601
 
48489
- var computeSectionId = function computeSectionId(section) {
48490
- return typeof section.title === "string" ? createIdFromString(section.title) : section.id;
48491
- };
48492
-
48493
49602
  var RadioSection = function RadioSection(_ref) {
48494
49603
  var themeValues = _ref.themeValues,
48495
49604
  isMobile = _ref.isMobile,
@@ -48507,15 +49616,10 @@ var RadioSection = function RadioSection(_ref) {
48507
49616
  openHeight = _ref$openHeight === void 0 ? "auto" : _ref$openHeight,
48508
49617
  _ref$containerStyles = _ref.containerStyles,
48509
49618
  containerStyles = _ref$containerStyles === void 0 ? "" : _ref$containerStyles,
48510
- ariaDescribedBy = _ref.ariaDescribedBy,
48511
- _ref$rightContentRole = _ref.rightContentRole,
48512
- rightContentRole = _ref$rightContentRole === void 0 ? null : _ref$rightContentRole,
48513
- _ref$ariaLabel = _ref.ariaLabel,
48514
- _ref$rightIconsLabel = _ref.rightIconsLabel,
48515
- rightIconsLabel = _ref$rightIconsLabel === void 0 ? null : _ref$rightIconsLabel;
49619
+ ariaDescribedBy = _ref.ariaDescribedBy;
48516
49620
 
48517
49621
  var handleKeyDown = function handleKeyDown(id, e) {
48518
- if ((e === null || e === void 0 ? void 0 : e.keyCode) === 13 || (e === null || e === void 0 ? void 0 : e.keyCode) === 32) {
49622
+ if ((e === null || e === void 0 ? void 0 : e.keyCode) === 13) {
48519
49623
  toggleOpenSection(id);
48520
49624
  }
48521
49625
  };
@@ -48567,8 +49671,7 @@ var RadioSection = function RadioSection(_ref) {
48567
49671
  borderRadius: "4px",
48568
49672
  extraStyles: containerStyles
48569
49673
  }, /*#__PURE__*/React__default.createElement(Stack, {
48570
- childGap: "0",
48571
- role: "radiogroup"
49674
+ childGap: "0"
48572
49675
  }, sections.filter(function (section) {
48573
49676
  return !section.hidden;
48574
49677
  }).map(function (section) {
@@ -48587,9 +49690,7 @@ var RadioSection = function RadioSection(_ref) {
48587
49690
  animate: openSection === section.id ? "open" : "closed",
48588
49691
  initial: initiallyOpen ? "open" : "closed",
48589
49692
  key: "item-".concat(section.id),
48590
- extraStyles: borderStyles,
48591
- role: "radio",
48592
- "aria-checked": openSection === section.id
49693
+ extraStyles: borderStyles
48593
49694
  }, /*#__PURE__*/React__default.createElement(Stack, {
48594
49695
  childGap: "0"
48595
49696
  }, /*#__PURE__*/React__default.createElement(Box, {
@@ -48619,10 +49720,8 @@ var RadioSection = function RadioSection(_ref) {
48619
49720
  }, !section.hideRadioButton && /*#__PURE__*/React__default.createElement(Box, {
48620
49721
  padding: "0"
48621
49722
  }, /*#__PURE__*/React__default.createElement(RadioButton$2, {
48622
- id: computeSectionId(section),
48623
- name: computeSectionId(section),
49723
+ name: typeof section.title === "string" ? createIdFromString(section.title) : section.id,
48624
49724
  ariaDescribedBy: ariaDescribedBy,
48625
- ariaLabelledBy: "radio-input-".concat(computeSectionId(section)),
48626
49725
  radioOn: openSection === section.id,
48627
49726
  radioFocused: focused === section.id,
48628
49727
  toggleRadio: section.disabled ? noop : function () {
@@ -48634,24 +49733,19 @@ var RadioSection = function RadioSection(_ref) {
48634
49733
  }, section.titleIcon), /*#__PURE__*/React__default.createElement(Box, {
48635
49734
  padding: section.titleIcon ? "0 0 0 8px" : "0"
48636
49735
  }, /*#__PURE__*/React__default.createElement(Text$1, {
48637
- as: "label",
48638
- color: CHARADE_GREY,
48639
- htmlFor: "radio-input-".concat(computeSectionId(section))
49736
+ variant: "p",
49737
+ color: CHARADE_GREY
48640
49738
  }, section.title))), section.rightIcons && /*#__PURE__*/React__default.createElement(Cluster, {
48641
49739
  childGap: "0.5rem"
48642
- }, /*#__PURE__*/React__default.createElement("div", rightIconsLabel !== null ? {
48643
- "aria-label": rightIconsLabel
48644
- } : {}, section.rightIcons.map(function (icon) {
48645
- return /*#__PURE__*/React__default.createElement(RightIcon, _extends({
49740
+ }, section.rightIcons.map(function (icon) {
49741
+ return /*#__PURE__*/React__default.createElement(RightIcon, {
48646
49742
  src: icon.img,
48647
49743
  key: icon.img,
48648
49744
  fade: !icon.enabled,
48649
49745
  isMobile: isMobile,
48650
49746
  alt: icon.altText
48651
- }, rightContentRole !== null ? {
48652
- role: rightContentRole || "presentation"
48653
- } : {}));
48654
- }))), section.rightTitleContent && /*#__PURE__*/React__default.createElement(React.Fragment, null, section.rightTitleContent))), /*#__PURE__*/React__default.createElement(AnimatePresence, {
49747
+ });
49748
+ })), section.rightTitleContent && /*#__PURE__*/React__default.createElement(React.Fragment, null, section.rightTitleContent))), /*#__PURE__*/React__default.createElement(AnimatePresence, {
48655
49749
  initial: false
48656
49750
  }, openSection === section.id && /*#__PURE__*/React__default.createElement(Motion, {
48657
49751
  key: "content-".concat(section.id),