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

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