{"ast":null,"code":"'use strict';\n\nvar isArray = Array.isArray;\nvar keyList = Object.keys;\nvar hasProp = Object.prototype.hasOwnProperty;\nvar hasElementType = typeof Element !== 'undefined';\n\nfunction equal(a, b) {\n // fast-deep-equal index.js 2.0.1\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n var arrA = isArray(a),\n arrB = isArray(b),\n i,\n length,\n key;\n\n if (arrA && arrB) {\n length = a.length;\n if (length != b.length) return false;\n\n for (i = length; i-- !== 0;) if (!equal(a[i], b[i])) return false;\n\n return true;\n }\n\n if (arrA != arrB) return false;\n var dateA = a instanceof Date,\n dateB = b instanceof Date;\n if (dateA != dateB) return false;\n if (dateA && dateB) return a.getTime() == b.getTime();\n var regexpA = a instanceof RegExp,\n regexpB = b instanceof RegExp;\n if (regexpA != regexpB) return false;\n if (regexpA && regexpB) return a.toString() == b.toString();\n var keys = keyList(a);\n length = keys.length;\n if (length !== keyList(b).length) return false;\n\n for (i = length; i-- !== 0;) if (!hasProp.call(b, keys[i])) return false; // end fast-deep-equal\n // start react-fast-compare\n // custom handling for DOM elements\n\n\n if (hasElementType && a instanceof Element && b instanceof Element) return a === b; // custom handling for React\n\n for (i = length; i-- !== 0;) {\n key = keys[i];\n\n if (key === '_owner' && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner.\n // _owner contains circular references\n // and is not needed when comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of a react element\n continue;\n } else {\n // all other properties should be traversed as usual\n if (!equal(a[key], b[key])) return false;\n }\n } // end react-fast-compare\n // fast-deep-equal index.js 2.0.1\n\n\n return true;\n }\n\n return a !== a && b !== b;\n} // end fast-deep-equal\n\n\nmodule.exports = function exportedEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if (error.message && error.message.match(/stack|recursion/i) || error.number === -2146828260) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('Warning: react-fast-compare does not handle circular references.', error.name, error.message);\n return false;\n } // some other error. we should definitely know about these\n\n\n throw error;\n }\n};","map":{"version":3,"sources":["/app/node_modules/react-fast-compare/index.js"],"names":["isArray","Array","keyList","Object","keys","hasProp","prototype","hasOwnProperty","hasElementType","Element","equal","a","b","arrA","arrB","i","length","key","dateA","Date","dateB","getTime","regexpA","RegExp","regexpB","toString","call","$$typeof","module","exports","exportedEqual","error","message","match","number","console","warn","name"],"mappings":"AAAA;;AAEA,IAAIA,OAAO,GAAGC,KAAK,CAACD,OAApB;AACA,IAAIE,OAAO,GAAGC,MAAM,CAACC,IAArB;AACA,IAAIC,OAAO,GAAGF,MAAM,CAACG,SAAP,CAAiBC,cAA/B;AACA,IAAIC,cAAc,GAAG,OAAOC,OAAP,KAAmB,WAAxC;;AAEA,SAASC,KAAT,CAAeC,CAAf,EAAkBC,CAAlB,EAAqB;AACnB;AACA,MAAID,CAAC,KAAKC,CAAV,EAAa,OAAO,IAAP;;AAEb,MAAID,CAAC,IAAIC,CAAL,IAAU,OAAOD,CAAP,IAAY,QAAtB,IAAkC,OAAOC,CAAP,IAAY,QAAlD,EAA4D;AAC1D,QAAIC,IAAI,GAAGb,OAAO,CAACW,CAAD,CAAlB;AAAA,QACIG,IAAI,GAAGd,OAAO,CAACY,CAAD,CADlB;AAAA,QAEIG,CAFJ;AAAA,QAGIC,MAHJ;AAAA,QAIIC,GAJJ;;AAMA,QAAIJ,IAAI,IAAIC,IAAZ,EAAkB;AAChBE,MAAAA,MAAM,GAAGL,CAAC,CAACK,MAAX;AACA,UAAIA,MAAM,IAAIJ,CAAC,CAACI,MAAhB,EAAwB,OAAO,KAAP;;AACxB,WAAKD,CAAC,GAAGC,MAAT,EAAiBD,CAAC,OAAO,CAAzB,GACE,IAAI,CAACL,KAAK,CAACC,CAAC,CAACI,CAAD,CAAF,EAAOH,CAAC,CAACG,CAAD,CAAR,CAAV,EAAwB,OAAO,KAAP;;AAC1B,aAAO,IAAP;AACD;;AAED,QAAIF,IAAI,IAAIC,IAAZ,EAAkB,OAAO,KAAP;AAElB,QAAII,KAAK,GAAGP,CAAC,YAAYQ,IAAzB;AAAA,QACIC,KAAK,GAAGR,CAAC,YAAYO,IADzB;AAEA,QAAID,KAAK,IAAIE,KAAb,EAAoB,OAAO,KAAP;AACpB,QAAIF,KAAK,IAAIE,KAAb,EAAoB,OAAOT,CAAC,CAACU,OAAF,MAAeT,CAAC,CAACS,OAAF,EAAtB;AAEpB,QAAIC,OAAO,GAAGX,CAAC,YAAYY,MAA3B;AAAA,QACIC,OAAO,GAAGZ,CAAC,YAAYW,MAD3B;AAEA,QAAID,OAAO,IAAIE,OAAf,EAAwB,OAAO,KAAP;AACxB,QAAIF,OAAO,IAAIE,OAAf,EAAwB,OAAOb,CAAC,CAACc,QAAF,MAAgBb,CAAC,CAACa,QAAF,EAAvB;AAExB,QAAIrB,IAAI,GAAGF,OAAO,CAACS,CAAD,CAAlB;AACAK,IAAAA,MAAM,GAAGZ,IAAI,CAACY,MAAd;AAEA,QAAIA,MAAM,KAAKd,OAAO,CAACU,CAAD,CAAP,CAAWI,MAA1B,EACE,OAAO,KAAP;;AAEF,SAAKD,CAAC,GAAGC,MAAT,EAAiBD,CAAC,OAAO,CAAzB,GACE,IAAI,CAACV,OAAO,CAACqB,IAAR,CAAad,CAAb,EAAgBR,IAAI,CAACW,CAAD,CAApB,CAAL,EAA+B,OAAO,KAAP,CAlCyB,CAmC1D;AAEA;AACA;;;AACA,QAAIP,cAAc,IAAIG,CAAC,YAAYF,OAA/B,IAA0CG,CAAC,YAAYH,OAA3D,EACE,OAAOE,CAAC,KAAKC,CAAb,CAxCwD,CA0C1D;;AACA,SAAKG,CAAC,GAAGC,MAAT,EAAiBD,CAAC,OAAO,CAAzB,GAA6B;AAC3BE,MAAAA,GAAG,GAAGb,IAAI,CAACW,CAAD,CAAV;;AACA,UAAIE,GAAG,KAAK,QAAR,IAAoBN,CAAC,CAACgB,QAA1B,EAAoC;AAClC;AACA;AACA;AACA;AACA;AACD,OAND,MAMO;AACL;AACA,YAAI,CAACjB,KAAK,CAACC,CAAC,CAACM,GAAD,CAAF,EAASL,CAAC,CAACK,GAAD,CAAV,CAAV,EAA4B,OAAO,KAAP;AAC7B;AACF,KAvDyD,CAwD1D;AAEA;;;AACA,WAAO,IAAP;AACD;;AAED,SAAON,CAAC,KAAKA,CAAN,IAAWC,CAAC,KAAKA,CAAxB;AACD,C,CACD;;;AAEAgB,MAAM,CAACC,OAAP,GAAiB,SAASC,aAAT,CAAuBnB,CAAvB,EAA0BC,CAA1B,EAA6B;AAC5C,MAAI;AACF,WAAOF,KAAK,CAACC,CAAD,EAAIC,CAAJ,CAAZ;AACD,GAFD,CAEE,OAAOmB,KAAP,EAAc;AACd,QAAKA,KAAK,CAACC,OAAN,IAAiBD,KAAK,CAACC,OAAN,CAAcC,KAAd,CAAoB,kBAApB,CAAlB,IAA+DF,KAAK,CAACG,MAAN,KAAiB,CAAC,UAArF,EAAkG;AAChG;AACA;AACA;AACA;AACA;AACAC,MAAAA,OAAO,CAACC,IAAR,CAAa,kEAAb,EAAiFL,KAAK,CAACM,IAAvF,EAA6FN,KAAK,CAACC,OAAnG;AACA,aAAO,KAAP;AACD,KATa,CAUd;;;AACA,UAAMD,KAAN;AACD;AACF,CAhBD","sourcesContent":["'use strict';\n\nvar isArray = Array.isArray;\nvar keyList = Object.keys;\nvar hasProp = Object.prototype.hasOwnProperty;\nvar hasElementType = typeof Element !== 'undefined';\n\nfunction equal(a, b) {\n // fast-deep-equal index.js 2.0.1\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n var arrA = isArray(a)\n , arrB = isArray(b)\n , i\n , length\n , key;\n\n if (arrA && arrB) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n if (arrA != arrB) return false;\n\n var dateA = a instanceof Date\n , dateB = b instanceof Date;\n if (dateA != dateB) return false;\n if (dateA && dateB) return a.getTime() == b.getTime();\n\n var regexpA = a instanceof RegExp\n , regexpB = b instanceof RegExp;\n if (regexpA != regexpB) return false;\n if (regexpA && regexpB) return a.toString() == b.toString();\n\n var keys = keyList(a);\n length = keys.length;\n\n if (length !== keyList(b).length)\n return false;\n\n for (i = length; i-- !== 0;)\n if (!hasProp.call(b, keys[i])) return false;\n // end fast-deep-equal\n\n // start react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element && b instanceof Element)\n return a === b;\n\n // custom handling for React\n for (i = length; i-- !== 0;) {\n key = keys[i];\n if (key === '_owner' && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner.\n // _owner contains circular references\n // and is not needed when comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of a react element\n continue;\n } else {\n // all other properties should be traversed as usual\n if (!equal(a[key], b[key])) return false;\n }\n }\n // end react-fast-compare\n\n // fast-deep-equal index.js 2.0.1\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function exportedEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if ((error.message && error.message.match(/stack|recursion/i)) || (error.number === -2146828260)) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('Warning: react-fast-compare does not handle circular references.', error.name, error.message);\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n"]},"metadata":{},"sourceType":"script"}