{"ast":null,"code":"import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport css from \"./css\";\nimport getOffset from \"./offset\";\nimport getOffsetParent from \"./offsetParent\";\nimport scrollLeft from \"./scrollLeft\";\nimport scrollTop from \"./scrollTop\";\n\nvar nodeName = function nodeName(node) {\n  return node.nodeName && node.nodeName.toLowerCase();\n};\n\nexport default function position(node, offsetParent) {\n  var parentOffset = {\n    top: 0,\n    left: 0\n  };\n  var offset;\n\n  if (css(node, 'position') === 'fixed') {\n    offset = node.getBoundingClientRect();\n  } else {\n    var parent = offsetParent || getOffsetParent(node);\n    offset = getOffset(node);\n    if (nodeName(parent) !== 'html') parentOffset = getOffset(parent);\n    var borderTop = String(css(parent, 'borderTopWidth') || 0);\n    parentOffset.top += parseInt(borderTop, 10) - scrollTop(parent) || 0;\n    var borderLeft = String(css(parent, 'borderLeftWidth') || 0);\n    parentOffset.left += parseInt(borderLeft, 10) - scrollLeft(parent) || 0;\n  }\n\n  var marginTop = String(css(node, 'marginTop') || 0);\n  var marginLeft = String(css(node, 'marginLeft') || 0);\n  return _extends({}, offset, {\n    top: offset.top - parentOffset.top - (parseInt(marginTop, 10) || 0),\n    left: offset.left - parentOffset.left - (parseInt(marginLeft, 10) || 0)\n  });\n}","map":{"version":3,"sources":["/Users/rohitsingh/Documents/projects/new-nativebase-setup/NativeBase/node_modules/@react-native-aria/overlays/node_modules/dom-helpers/esm/position.js"],"names":["_extends","css","getOffset","getOffsetParent","scrollLeft","scrollTop","nodeName","node","toLowerCase","position","offsetParent","parentOffset","top","left","offset","getBoundingClientRect","parent","borderTop","String","parseInt","borderLeft","marginTop","marginLeft"],"mappings":"AAAA,OAAOA,QAAP,MAAqB,oCAArB;AACA,OAAOC,GAAP;AACA,OAAOC,SAAP;AACA,OAAOC,eAAP;AACA,OAAOC,UAAP;AACA,OAAOC,SAAP;;AAEA,IAAIC,QAAQ,GAAG,SAASA,QAAT,CAAkBC,IAAlB,EAAwB;AACrC,SAAOA,IAAI,CAACD,QAAL,IAAiBC,IAAI,CAACD,QAAL,CAAcE,WAAd,EAAxB;AACD,CAFD;;AAWA,eAAe,SAASC,QAAT,CAAkBF,IAAlB,EAAwBG,YAAxB,EAAsC;AACnD,MAAIC,YAAY,GAAG;AACjBC,IAAAA,GAAG,EAAE,CADY;AAEjBC,IAAAA,IAAI,EAAE;AAFW,GAAnB;AAIA,MAAIC,MAAJ;;AAGA,MAAIb,GAAG,CAACM,IAAD,EAAO,UAAP,CAAH,KAA0B,OAA9B,EAAuC;AACrCO,IAAAA,MAAM,GAAGP,IAAI,CAACQ,qBAAL,EAAT;AACD,GAFD,MAEO;AACL,QAAIC,MAAM,GAAGN,YAAY,IAAIP,eAAe,CAACI,IAAD,CAA5C;AACAO,IAAAA,MAAM,GAAGZ,SAAS,CAACK,IAAD,CAAlB;AACA,QAAID,QAAQ,CAACU,MAAD,CAAR,KAAqB,MAAzB,EAAiCL,YAAY,GAAGT,SAAS,CAACc,MAAD,CAAxB;AACjC,QAAIC,SAAS,GAAGC,MAAM,CAACjB,GAAG,CAACe,MAAD,EAAS,gBAAT,CAAH,IAAiC,CAAlC,CAAtB;AACAL,IAAAA,YAAY,CAACC,GAAb,IAAoBO,QAAQ,CAACF,SAAD,EAAY,EAAZ,CAAR,GAA0BZ,SAAS,CAACW,MAAD,CAAnC,IAA+C,CAAnE;AACA,QAAII,UAAU,GAAGF,MAAM,CAACjB,GAAG,CAACe,MAAD,EAAS,iBAAT,CAAH,IAAkC,CAAnC,CAAvB;AACAL,IAAAA,YAAY,CAACE,IAAb,IAAqBM,QAAQ,CAACC,UAAD,EAAa,EAAb,CAAR,GAA2BhB,UAAU,CAACY,MAAD,CAArC,IAAiD,CAAtE;AACD;;AAED,MAAIK,SAAS,GAAGH,MAAM,CAACjB,GAAG,CAACM,IAAD,EAAO,WAAP,CAAH,IAA0B,CAA3B,CAAtB;AACA,MAAIe,UAAU,GAAGJ,MAAM,CAACjB,GAAG,CAACM,IAAD,EAAO,YAAP,CAAH,IAA2B,CAA5B,CAAvB;AAEA,SAAOP,QAAQ,CAAC,EAAD,EAAKc,MAAL,EAAa;AAC1BF,IAAAA,GAAG,EAAEE,MAAM,CAACF,GAAP,GAAaD,YAAY,CAACC,GAA1B,IAAiCO,QAAQ,CAACE,SAAD,EAAY,EAAZ,CAAR,IAA2B,CAA5D,CADqB;AAE1BR,IAAAA,IAAI,EAAEC,MAAM,CAACD,IAAP,GAAcF,YAAY,CAACE,IAA3B,IAAmCM,QAAQ,CAACG,UAAD,EAAa,EAAb,CAAR,IAA4B,CAA/D;AAFoB,GAAb,CAAf;AAID","sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport css from './css';\nimport getOffset from './offset';\nimport getOffsetParent from './offsetParent';\nimport scrollLeft from './scrollLeft';\nimport scrollTop from './scrollTop';\n\nvar nodeName = function nodeName(node) {\n  return node.nodeName && node.nodeName.toLowerCase();\n};\n/**\n * Returns the relative position of a given element.\n * \n * @param node the element\n * @param offsetParent the offset parent\n */\n\n\nexport default function position(node, offsetParent) {\n  var parentOffset = {\n    top: 0,\n    left: 0\n  };\n  var offset; // Fixed elements are offset from window (parentOffset = {top:0, left: 0},\n  // because it is its only offset parent\n\n  if (css(node, 'position') === 'fixed') {\n    offset = node.getBoundingClientRect();\n  } else {\n    var parent = offsetParent || getOffsetParent(node);\n    offset = getOffset(node);\n    if (nodeName(parent) !== 'html') parentOffset = getOffset(parent);\n    var borderTop = String(css(parent, 'borderTopWidth') || 0);\n    parentOffset.top += parseInt(borderTop, 10) - scrollTop(parent) || 0;\n    var borderLeft = String(css(parent, 'borderLeftWidth') || 0);\n    parentOffset.left += parseInt(borderLeft, 10) - scrollLeft(parent) || 0;\n  }\n\n  var marginTop = String(css(node, 'marginTop') || 0);\n  var marginLeft = String(css(node, 'marginLeft') || 0); // Subtract parent offsets and node margins\n\n  return _extends({}, offset, {\n    top: offset.top - parentOffset.top - (parseInt(marginTop, 10) || 0),\n    left: offset.left - parentOffset.left - (parseInt(marginLeft, 10) || 0)\n  });\n}"]},"metadata":{},"sourceType":"module"}