{"ast":null,"code":"/**\n * Takes an argument and if it's an array, returns the first item in the array,\n * otherwise returns the argument. Used for Preact compatibility.\n */\nexport var unwrapArray = function unwrapArray(arg) {\n return Array.isArray(arg) ? arg[0] : arg;\n};\n/**\n * Takes a maybe-undefined function and arbitrary args and invokes the function\n * only if it is defined.\n */\n\nexport var safeInvoke = function safeInvoke(fn) {\n if (typeof fn === \"function\") {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return fn.apply(void 0, args);\n }\n};\n/**\n * Does a shallow equality check of two objects by comparing the reference\n * equality of each value.\n */\n\nexport var shallowEqual = function shallowEqual(objA, objB) {\n var aKeys = Object.keys(objA);\n var bKeys = Object.keys(objB);\n\n if (bKeys.length !== aKeys.length) {\n return false;\n }\n\n for (var i = 0; i < bKeys.length; i++) {\n var key = aKeys[i];\n\n if (objA[key] !== objB[key]) {\n return false;\n }\n }\n\n return true;\n};\n/**\n * Sets a ref using either a ref callback or a ref object\n */\n\nexport var setRef = function setRef(ref, node) {\n // if its a function call it\n if (typeof ref === \"function\") {\n return safeInvoke(ref, node);\n } // otherwise we should treat it as a ref object\n else if (ref != null) {\n ref.current = node;\n }\n};","map":{"version":3,"sources":["/app/node_modules/react-popper/lib/esm/utils.js"],"names":["unwrapArray","arg","Array","isArray","safeInvoke","fn","_len","arguments","length","args","_key","apply","shallowEqual","objA","objB","aKeys","Object","keys","bKeys","i","key","setRef","ref","node","current"],"mappings":"AAAA;AACA;AACA;AACA;AACA,OAAO,IAAIA,WAAW,GAAG,SAASA,WAAT,CAAqBC,GAArB,EAA0B;AACjD,SAAOC,KAAK,CAACC,OAAN,CAAcF,GAAd,IAAqBA,GAAG,CAAC,CAAD,CAAxB,GAA8BA,GAArC;AACD,CAFM;AAGP;AACA;AACA;AACA;;AAEA,OAAO,IAAIG,UAAU,GAAG,SAASA,UAAT,CAAoBC,EAApB,EAAwB;AAC9C,MAAI,OAAOA,EAAP,KAAc,UAAlB,EAA8B;AAC5B,SAAK,IAAIC,IAAI,GAAGC,SAAS,CAACC,MAArB,EAA6BC,IAAI,GAAG,IAAIP,KAAJ,CAAUI,IAAI,GAAG,CAAP,GAAWA,IAAI,GAAG,CAAlB,GAAsB,CAAhC,CAApC,EAAwEI,IAAI,GAAG,CAApF,EAAuFA,IAAI,GAAGJ,IAA9F,EAAoGI,IAAI,EAAxG,EAA4G;AAC1GD,MAAAA,IAAI,CAACC,IAAI,GAAG,CAAR,CAAJ,GAAiBH,SAAS,CAACG,IAAD,CAA1B;AACD;;AAED,WAAOL,EAAE,CAACM,KAAH,CAAS,KAAK,CAAd,EAAiBF,IAAjB,CAAP;AACD;AACF,CARM;AASP;AACA;AACA;AACA;;AAEA,OAAO,IAAIG,YAAY,GAAG,SAASA,YAAT,CAAsBC,IAAtB,EAA4BC,IAA5B,EAAkC;AAC1D,MAAIC,KAAK,GAAGC,MAAM,CAACC,IAAP,CAAYJ,IAAZ,CAAZ;AACA,MAAIK,KAAK,GAAGF,MAAM,CAACC,IAAP,CAAYH,IAAZ,CAAZ;;AAEA,MAAII,KAAK,CAACV,MAAN,KAAiBO,KAAK,CAACP,MAA3B,EAAmC;AACjC,WAAO,KAAP;AACD;;AAED,OAAK,IAAIW,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGD,KAAK,CAACV,MAA1B,EAAkCW,CAAC,EAAnC,EAAuC;AACrC,QAAIC,GAAG,GAAGL,KAAK,CAACI,CAAD,CAAf;;AAEA,QAAIN,IAAI,CAACO,GAAD,CAAJ,KAAcN,IAAI,CAACM,GAAD,CAAtB,EAA6B;AAC3B,aAAO,KAAP;AACD;AACF;;AAED,SAAO,IAAP;AACD,CAjBM;AAkBP;AACA;AACA;;AAEA,OAAO,IAAIC,MAAM,GAAG,SAASA,MAAT,CAAgBC,GAAhB,EAAqBC,IAArB,EAA2B;AAC7C;AACA,MAAI,OAAOD,GAAP,KAAe,UAAnB,EAA+B;AAC7B,WAAOlB,UAAU,CAACkB,GAAD,EAAMC,IAAN,CAAjB;AACD,GAFD,CAEE;AAFF,OAGK,IAAID,GAAG,IAAI,IAAX,EAAiB;AAClBA,IAAAA,GAAG,CAACE,OAAJ,GAAcD,IAAd;AACD;AACJ,CARM","sourcesContent":["/**\n * Takes an argument and if it's an array, returns the first item in the array,\n * otherwise returns the argument. Used for Preact compatibility.\n */\nexport var unwrapArray = function unwrapArray(arg) {\n return Array.isArray(arg) ? arg[0] : arg;\n};\n/**\n * Takes a maybe-undefined function and arbitrary args and invokes the function\n * only if it is defined.\n */\n\nexport var safeInvoke = function safeInvoke(fn) {\n if (typeof fn === \"function\") {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return fn.apply(void 0, args);\n }\n};\n/**\n * Does a shallow equality check of two objects by comparing the reference\n * equality of each value.\n */\n\nexport var shallowEqual = function shallowEqual(objA, objB) {\n var aKeys = Object.keys(objA);\n var bKeys = Object.keys(objB);\n\n if (bKeys.length !== aKeys.length) {\n return false;\n }\n\n for (var i = 0; i < bKeys.length; i++) {\n var key = aKeys[i];\n\n if (objA[key] !== objB[key]) {\n return false;\n }\n }\n\n return true;\n};\n/**\n * Sets a ref using either a ref callback or a ref object\n */\n\nexport var setRef = function setRef(ref, node) {\n // if its a function call it\n if (typeof ref === \"function\") {\n return safeInvoke(ref, node);\n } // otherwise we should treat it as a ref object\n else if (ref != null) {\n ref.current = node;\n }\n};"]},"metadata":{},"sourceType":"module"}