@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.cjs.js +1360 -277
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +1360 -277
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/.DS_Store +0 -0
- package/src/components/atoms/.DS_Store +0 -0
- package/src/components/atoms/line-item/LineItem.js +39 -24
- package/src/components/{atoms/icons → molecules}/.DS_Store +0 -0
- package/src/components/molecules/radio-section/RadioSection.js +20 -42
- package/src/components/molecules/radio-section/radio-button/RadioButton.js +3 -12
- package/dist/src/apps/checkout/pages/payment/sub-pages/payment-amount/PaymentAmount_old.js +0 -49322
- package/src/components/.DS_Store +0 -0
- /package/src/components/atoms/icons/{ExternalLinkIcon.js → ExternalLinkicon.js} +0 -0
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)
|
|
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,
|
|
27273
|
-
|
|
27274
|
-
|
|
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
|
-
}
|
|
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
|
-
|
|
38604
|
-
|
|
38605
|
-
|
|
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
|
-
|
|
38617
|
-
}
|
|
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
|
|
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
|
-
|
|
38626
|
-
}
|
|
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
|
|
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
|
-
|
|
38635
|
-
}
|
|
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
|
|
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
|
-
|
|
38644
|
-
}
|
|
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
|
|
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 =
|
|
38664
|
-
const INCLUDED_IN_ERROR =
|
|
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 =
|
|
38670
|
-
const REQUIRED_ERROR =
|
|
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 =
|
|
38675
|
-
const ONLY_INTEGERS_ERROR =
|
|
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 =
|
|
38680
|
-
const ONLY_NATURALS_ERROR =
|
|
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 =
|
|
38694
|
-
const ONLY_EXPIRATION_DATE_ERROR =
|
|
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 =
|
|
38703
|
-
const NUMBER_LESS_THAN_ERROR =
|
|
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 =
|
|
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
|
-
|
|
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 =
|
|
38730
|
-
const NUMBER_GREATER_THAN_ERROR =
|
|
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
|
-
|
|
38740
|
+
"validator/NUMBER_GREATER_THAN_OR_EQUAL_TO";
|
|
38744
38741
|
const NUMBER_GREATER_THAN_OR_EQUAL_TO_ERROR =
|
|
38745
|
-
|
|
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 =
|
|
38758
|
-
const MATCHES_FIELD_ERROR$1 =
|
|
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 =
|
|
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 =
|
|
38780
|
-
const VALIDATE_WHEN_ERROR =
|
|
38781
|
-
const validateWhen = (
|
|
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 ===
|
|
38790
|
+
const dependsOnOtherField = typeof optionalFieldName === "string";
|
|
38790
38791
|
|
|
38791
38792
|
if (
|
|
38792
38793
|
primaryValidator.type === undefined ||
|
|
38793
|
-
typeof validatorFns[primaryValidator.type] !==
|
|
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](
|
|
38818
|
+
? validatorFns[dependentValidator.type](
|
|
38819
|
+
value,
|
|
38820
|
+
dependentValidator.args,
|
|
38821
|
+
form
|
|
38822
|
+
)
|
|
38818
38823
|
: true;
|
|
38819
38824
|
};
|
|
38820
38825
|
|
|
38821
|
-
const validateSumErrorMessage =
|
|
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 =
|
|
38828
|
-
const VALIDATE_SUM_ERROR =
|
|
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] !==
|
|
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 =
|
|
38862
|
-
const HAS_LENGTH_ERROR =
|
|
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
|
-
|
|
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(
|
|
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 =
|
|
38883
|
-
const DATE_BEFORE_TODAY_ERROR =
|
|
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
|
-
|
|
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 =
|
|
38911
|
-
const DATE_AFTER_TODAY_ERROR =
|
|
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
|
-
|
|
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 =
|
|
38939
|
-
const IS_VALID_MONTH_ERROR =
|
|
38940
|
-
const isValidMonth = createValidator(
|
|
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 (
|
|
38953
|
-
throw new Error(
|
|
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 (
|
|
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 =
|
|
38963
|
-
const MATCHES_REGEX_ERROR =
|
|
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 =
|
|
38974
|
-
const IS_ROUTING_NUMBER_ERROR =
|
|
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(
|
|
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 =
|
|
39003
|
-
const HAS_NUMBER_ERROR$1 =
|
|
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 =
|
|
39013
|
-
const HAS_LOWERCASE_LETTER_ERROR$1 =
|
|
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 =
|
|
39026
|
-
const HAS_UPPERCASE_LETTER_ERROR$1 =
|
|
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 =
|
|
39039
|
-
const HAS_SPECIAL_CHARACTER_ERROR$1 =
|
|
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 =
|
|
39052
|
-
const IS_PROBABLY_EMAIL_ERROR =
|
|
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 =
|
|
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
|
|
39089
|
+
const _computeErrors = (fieldName, form, validators) => {
|
|
39080
39090
|
return validators
|
|
39081
|
-
.map(
|
|
39082
|
-
.filter(
|
|
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
|
|
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
|
|
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
|
-
|
|
39096
|
-
|
|
39097
|
-
|
|
39098
|
-
|
|
39099
|
-
|
|
39100
|
-
|
|
39101
|
-
|
|
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
|
-
|
|
39106
|
-
|
|
39107
|
-
|
|
39108
|
-
|
|
39109
|
-
|
|
39110
|
-
|
|
39111
|
-
|
|
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
|
-
|
|
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 =
|
|
39141
|
-
const set$
|
|
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 =
|
|
40267
|
+
const CLEAR = "form/CLEAR";
|
|
39147
40268
|
const clear = () => ({ type: CLEAR });
|
|
39148
40269
|
|
|
39149
|
-
const ADD_VALIDATOR =
|
|
39150
|
-
const addValidator =
|
|
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
|
|
39162
|
-
|
|
39163
|
-
|
|
39164
|
-
|
|
39165
|
-
|
|
39166
|
-
|
|
39167
|
-
const
|
|
39168
|
-
|
|
39169
|
-
|
|
39170
|
-
|
|
39171
|
-
|
|
39172
|
-
|
|
39173
|
-
|
|
39174
|
-
|
|
39175
|
-
|
|
39176
|
-
|
|
39177
|
-
|
|
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
|
-
|
|
39215
|
-
|
|
39216
|
-
|
|
39217
|
-
|
|
39218
|
-
|
|
39219
|
-
|
|
39220
|
-
|
|
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 =
|
|
40329
|
+
const createMapDispatchToProps = formConfig => {
|
|
39225
40330
|
// Do memo-ization
|
|
39226
40331
|
let cachedDispatch;
|
|
39227
40332
|
let cacheValue;
|
|
39228
|
-
return
|
|
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:
|
|
39238
|
-
addValidator:
|
|
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 =
|
|
40353
|
+
const mapStateToProps = state => ({ fields: state });
|
|
39252
40354
|
|
|
39253
|
-
const createFormState =
|
|
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$
|
|
42123
|
-
Symbol.for("react.suspense_list"):60120,r
|
|
42124
|
-
function z
|
|
42125
|
-
var Profiler=g
|
|
42126
|
-
var isMemo=function(a){return z
|
|
42127
|
-
var isValidElementType=function(a){return "string"===typeof a||"function"===typeof a||a===e||a===m||a===g
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
},
|
|
48635
|
-
|
|
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
|
-
}
|
|
48644
|
-
|
|
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),
|