@react-native-aria/overlays 0.3.10 → 0.3.11-alpha.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.
Files changed (97) hide show
  1. package/lib/commonjs/Portal.js +17 -37
  2. package/lib/commonjs/Portal.js.map +1 -1
  3. package/lib/commonjs/index.js +0 -10
  4. package/lib/commonjs/index.js.map +1 -1
  5. package/lib/commonjs/index.web.js +0 -10
  6. package/lib/commonjs/index.web.js.map +1 -1
  7. package/lib/commonjs/useOverlay.js +0 -1
  8. package/lib/commonjs/useOverlay.js.map +1 -1
  9. package/lib/commonjs/useOverlay.web.js +9 -11
  10. package/lib/commonjs/useOverlay.web.js.map +1 -1
  11. package/lib/commonjs/useOverlayPosition.js +54 -69
  12. package/lib/commonjs/useOverlayPosition.js.map +1 -1
  13. package/lib/commonjs/useOverlayPosition.web.js +0 -1
  14. package/lib/commonjs/useOverlayPosition.web.js.map +1 -1
  15. package/lib/commonjs/useOverlayTrigger.js +0 -1
  16. package/lib/commonjs/useOverlayTrigger.js.map +1 -1
  17. package/lib/commonjs/useOverlayTrigger.web.js +0 -1
  18. package/lib/commonjs/useOverlayTrigger.web.js.map +1 -1
  19. package/lib/commonjs/usePreventScroll.js +0 -2
  20. package/lib/commonjs/usePreventScroll.js.map +1 -1
  21. package/lib/commonjs/usePreventScroll.web.js +0 -1
  22. package/lib/commonjs/usePreventScroll.web.js.map +1 -1
  23. package/lib/commonjs/utils.js +8 -8
  24. package/lib/commonjs/utils.js.map +1 -1
  25. package/lib/commonjs/web/overlays/index.js +0 -2
  26. package/lib/commonjs/web/overlays/index.js.map +1 -1
  27. package/lib/commonjs/web/overlays/src/calculatePosition.js +35 -68
  28. package/lib/commonjs/web/overlays/src/calculatePosition.js.map +1 -1
  29. package/lib/commonjs/web/overlays/src/index.js +0 -2
  30. package/lib/commonjs/web/overlays/src/index.js.map +1 -1
  31. package/lib/commonjs/web/overlays/src/useCloseOnScroll.js +3 -12
  32. package/lib/commonjs/web/overlays/src/useCloseOnScroll.js.map +1 -1
  33. package/lib/commonjs/web/overlays/src/useOverlayPosition.js +19 -23
  34. package/lib/commonjs/web/overlays/src/useOverlayPosition.js.map +1 -1
  35. package/lib/module/Portal.js +13 -20
  36. package/lib/module/Portal.js.map +1 -1
  37. package/lib/module/index.js.map +1 -1
  38. package/lib/module/index.web.js.map +1 -1
  39. package/lib/module/useOverlay.js.map +1 -1
  40. package/lib/module/useOverlay.web.js +9 -8
  41. package/lib/module/useOverlay.web.js.map +1 -1
  42. package/lib/module/useOverlayPosition.js +55 -60
  43. package/lib/module/useOverlayPosition.js.map +1 -1
  44. package/lib/module/useOverlayPosition.web.js.map +1 -1
  45. package/lib/module/useOverlayTrigger.js.map +1 -1
  46. package/lib/module/useOverlayTrigger.web.js.map +1 -1
  47. package/lib/module/usePreventScroll.js.map +1 -1
  48. package/lib/module/usePreventScroll.web.js.map +1 -1
  49. package/lib/module/utils.js +8 -4
  50. package/lib/module/utils.js.map +1 -1
  51. package/lib/module/web/overlays/index.js +1 -0
  52. package/lib/module/web/overlays/index.js.map +1 -1
  53. package/lib/module/web/overlays/src/calculatePosition.js +34 -57
  54. package/lib/module/web/overlays/src/calculatePosition.js.map +1 -1
  55. package/lib/module/web/overlays/src/index.js +1 -0
  56. package/lib/module/web/overlays/src/index.js.map +1 -1
  57. package/lib/module/web/overlays/src/useCloseOnScroll.js +4 -9
  58. package/lib/module/web/overlays/src/useCloseOnScroll.js.map +1 -1
  59. package/lib/module/web/overlays/src/useOverlayPosition.js +19 -18
  60. package/lib/module/web/overlays/src/useOverlayPosition.js.map +1 -1
  61. package/lib/typescript/Portal.d.ts +4 -2
  62. package/lib/typescript/Portal.d.ts.map +1 -0
  63. package/lib/typescript/index.d.ts +1 -0
  64. package/lib/typescript/index.d.ts.map +1 -0
  65. package/lib/typescript/index.web.d.ts +1 -0
  66. package/lib/typescript/index.web.d.ts.map +1 -0
  67. package/lib/typescript/useOverlay.d.ts +1 -0
  68. package/lib/typescript/useOverlay.d.ts.map +1 -0
  69. package/lib/typescript/useOverlay.web.d.ts +1 -0
  70. package/lib/typescript/useOverlay.web.d.ts.map +1 -0
  71. package/lib/typescript/useOverlayPosition.d.ts +1 -0
  72. package/lib/typescript/useOverlayPosition.d.ts.map +1 -0
  73. package/lib/typescript/useOverlayPosition.web.d.ts +1 -0
  74. package/lib/typescript/useOverlayPosition.web.d.ts.map +1 -0
  75. package/lib/typescript/useOverlayTrigger.d.ts +1 -0
  76. package/lib/typescript/useOverlayTrigger.d.ts.map +1 -0
  77. package/lib/typescript/useOverlayTrigger.web.d.ts +1 -0
  78. package/lib/typescript/useOverlayTrigger.web.d.ts.map +1 -0
  79. package/lib/typescript/usePreventScroll.d.ts +1 -0
  80. package/lib/typescript/usePreventScroll.d.ts.map +1 -0
  81. package/lib/typescript/usePreventScroll.web.d.ts +1 -0
  82. package/lib/typescript/usePreventScroll.web.d.ts.map +1 -0
  83. package/lib/typescript/utils.d.ts +1 -0
  84. package/lib/typescript/utils.d.ts.map +1 -0
  85. package/lib/typescript/web/overlays/index.d.ts +1 -0
  86. package/lib/typescript/web/overlays/index.d.ts.map +1 -0
  87. package/lib/typescript/web/overlays/src/calculatePosition.d.ts +1 -0
  88. package/lib/typescript/web/overlays/src/calculatePosition.d.ts.map +1 -0
  89. package/lib/typescript/web/overlays/src/index.d.ts +1 -0
  90. package/lib/typescript/web/overlays/src/index.d.ts.map +1 -0
  91. package/lib/typescript/web/overlays/src/useCloseOnScroll.d.ts +1 -0
  92. package/lib/typescript/web/overlays/src/useCloseOnScroll.d.ts.map +1 -0
  93. package/lib/typescript/web/overlays/src/useOverlayPosition.d.ts +1 -0
  94. package/lib/typescript/web/overlays/src/useOverlayPosition.d.ts.map +1 -0
  95. package/package.json +2 -1
  96. package/src/useOverlayPosition.ts +37 -17
  97. package/src/utils.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["useOverlayPosition.ts"],"names":["React","Dimensions","isRTL","APPROX_STATUSBAR_HEIGHT","measureOffset","ref","Promise","resolve","current","measureInWindow","x","y","width","height","top","left","useOverlayPosition","props","targetRef","overlayRef","placement","offset","crossOffset","isOpen","shouldFlip","shouldOverlapWithTrigger","position","setPosition","useState","arrowOffsetLeft","undefined","arrowOffsetTop","maxHeight","rendered","setRendered","updatePosition","overlayOffset","triggerOffset","all","requestAnimationFrame","windowHeight","windowWidth","get","positions","calculatePosition","translateRTL","targetNode","overlayNode","scrollNode","padding","boundaryElement","useEffect","useLayoutEffect","style","returnProps","overlayProps","arrowProps","replace","opts","childOffset","isContainerPositioned","overlaySize","margins","bottom","right","scrollSize","boundaryDimensions","containerOffsetWithBoundary","calculatePositionInternal","placementInput","flip","placementInfo","parsePlacement","size","crossAxis","crossSize","crossPlacement","computePosition","normalizedOffset","space","getAvailableSpace","flippedPlacementInfo","FLIPPED_DIRECTION","flippedPosition","flippedSpace","delta","getDelta","getMaxHeight","Math","min","arrowPosition","axis","containerDimensions","containerScroll","containerHeight","AXIS_SIZE","startEdgeOffset","endEdgeOffset","max","_containerOffsetWithBoundary","_margins","_padding","_isContainerPositioned","minViablePosition","maxViablePosition","floor","AXIS","CROSS_AXIS","PARSED_PLACEMENT_CACHE","input","split"],"mappings":"AACA,OAAOA,KAAP,MAAiC,OAAjC;AAEA,SACE;AACAC,UAFF,QAGO,cAHP;AAKA;AACA,SAASC,KAAT,QAAsB,0BAAtB;AAEA,SAASC,uBAAT,QAAwC,SAAxC;;AACA,MAAMC,aAAa,GAAIC,GAAD,IACpB,IAAIC,OAAJ,CAA6BC,OAAD,IAAa;AACvC,MAAIF,GAAG,CAACG,OAAR,EAAiB;AACfH,IAAAA,GAAG,CAACG,OAAJ,CAAYC,eAAZ,CACE,CAACC,CAAD,EAAYC,CAAZ,EAAuBC,KAAvB,EAAsCC,MAAtC,KAAyD;AACvDN,MAAAA,OAAO,CAAC;AAAEO,QAAAA,GAAG,EAAEH,CAAP;AAAUI,QAAAA,IAAI,EAAEL,CAAhB;AAAmBE,QAAAA,KAAnB;AAA0BC,QAAAA;AAA1B,OAAD,CAAP;AACD,KAHH;AAKD;AACF,CARD,CADF;;AAwDA,OAAO,SAASG,kBAAT,CAA4BC,KAA5B,EAAsD;AAAA;;AAC3D,MAAI;AACFC,IAAAA,SADE;AAEFC,IAAAA,UAFE;AAGFC,IAAAA,SAAS,GAAG,QAHV;AAIFC,IAAAA,MAAM,GAAG,CAJP;AAKFC,IAAAA,WAAW,GAAG,CALZ;AAMFC,IAAAA,MAAM,GAAG,IANP;AAOFC,IAAAA,UAAU,GAAG,IAPX;AAQFC,IAAAA,wBAAwB,GAAG;AARzB,MASAR,KATJ;AAWA,MAAI,CAACS,QAAD,EAAWC,WAAX,IAA0B3B,KAAK,CAAC4B,QAAN,CAA+B;AAC3DF,IAAAA,QAAQ,EAAE,EADiD;AAE3DG,IAAAA,eAAe,EAAEC,SAF0C;AAG3DC,IAAAA,cAAc,EAAED,SAH2C;AAI3DE,IAAAA,SAAS,EAAEF,SAJgD;AAK3DV,IAAAA,SAAS,EAAEU;AALgD,GAA/B,CAA9B,CAZ2D,CAoB3D;;AACA,MAAI,CAACG,QAAD,EAAWC,WAAX,IAA0BlC,KAAK,CAAC4B,QAAN,CAAe,KAAf,CAA9B;;AAEA,MAAIO,cAAc,GAAG,YAAY;AAC/B,UAAM,CAACC,aAAD,EAAgBC,aAAhB,IAAiC,MAAM/B,OAAO,CAACgC,GAAR,CAAY,CACvDlC,aAAa,CAACe,UAAD,CAD0C,EAEvDf,aAAa,CAACc,SAAD,CAF0C,CAAZ,CAA7C,CAD+B,CAM/B;;AACA,QACE,CAACkB,aAAa,CAACxB,KAAf,IACA,CAACwB,aAAa,CAACvB,MADf,IAEA,CAACwB,aAAa,CAACzB,KAFf,IAGA,CAACyB,aAAa,CAACxB,MAJjB,EAKE;AACA0B,MAAAA,qBAAqB,CAACJ,cAAD,CAArB;AACA;AACD;;AAED,UAAM;AAAEtB,MAAAA,MAAM,EAAE2B,YAAV;AAAwB5B,MAAAA,KAAK,EAAE6B;AAA/B,QAA+CxC,UAAU,CAACyC,GAAX,CACnD,QADmD,CAArD;AAIA,UAAMC,SAAS,GAAGC,iBAAiB,CAAC;AAClCxB,MAAAA,SAAS,EAAEyB,YAAY,CAACzB,SAAD,CADW;AAElC0B,MAAAA,UAAU,EAAET,aAFsB;AAGlCU,MAAAA,WAAW,EAAEX,aAHqB;AAIlCY,MAAAA,UAAU,EAAEZ,aAJsB;AAKlCa,MAAAA,OAAO,EAAE,CALyB;AAMlCzB,MAAAA,UANkC;AAOlC0B,MAAAA,eAAe,EAAE;AACfpC,QAAAA,GAAG,EAAE,CADU;AAEfC,QAAAA,IAAI,EAAE,CAFS;AAGfH,QAAAA,KAAK,EAAE6B,WAHQ;AAIf5B,QAAAA,MAAM,EAAE2B;AAJO,OAPiB;AAalCnB,MAAAA,MAbkC;AAclCC,MAAAA,WAdkC;AAelCG,MAAAA;AAfkC,KAAD,CAAnC;AAiBAE,IAAAA,WAAW,CAACgB,SAAD,CAAX;AACAT,IAAAA,WAAW,CAAC,IAAD,CAAX;AACD,GAxCD;;AAyCAlC,EAAAA,KAAK,CAACmD,SAAN,CAAgB,MAAM;AACpB,WAAO,MAAM;AACXjB,MAAAA,WAAW,CAAC,KAAD,CAAX;AACD,KAFD;AAGD,GAJD,EAIG,EAJH;AAMAlC,EAAAA,KAAK,CAACoD,eAAN,CAAsB,MAAM;AAC1BjB,IAAAA,cAAc;AACf,GAFD,EAEG,CACDf,SADC,EAEDG,MAFC,EAGDF,MAHC,EAIDG,UAJC,EAKDF,WALC,EAMDG,wBANC,CAFH;AAWA,QAAM4B,KAAK,GAAG,EACZ,GAAG3B,QAAQ,CAACA;AADA,GAAd;;AAIA,MAAIA,QAAQ,SAAR,IAAAA,QAAQ,WAAR,0BAAAA,QAAQ,CAAEA,QAAV,kEAAoBZ,GAApB,IAA2B,CAAAY,QAAQ,SAAR,IAAAA,QAAQ,WAAR,mCAAAA,QAAQ,CAAEA,QAAV,4EAAoBZ,GAApB,MAA4B,CAA3D,EAA8D;AAAA;;AAC5DuC,IAAAA,KAAK,CAACvC,GAAN,GAAY,CAAC,CAAAY,QAAQ,SAAR,IAAAA,QAAQ,WAAR,mCAAAA,QAAQ,CAAEA,QAAV,4EAAoBZ,GAApB,KAA2B,CAA5B,KAAkCX,uBAAuB,IAAI,CAA7D,CAAZ;AACD;;AAED,QAAMmD,WAAW,GAAG;AAClBrB,IAAAA,QADkB;AAElBsB,IAAAA,YAAY,EAAE;AACZF,MAAAA;AADY,KAFI;AAKlBjC,IAAAA,SAAS,EAAEM,QAAQ,CAACN,SALF;AAMlBoC,IAAAA,UAAU,EAAE;AACVH,MAAAA,KAAK,EAAE;AACLtC,QAAAA,IAAI,EAAEW,QAAQ,CAACG,eADV;AAELf,QAAAA,GAAG,EAAE,CAAC,CAAAY,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAEK,cAAV,KAA4B,CAA7B,KAAmC5B,uBAAuB,IAAI,CAA9D;AAFA;AADG,KANM;AAYlBgC,IAAAA;AAZkB,GAApB;;AAeA,MAAIT,QAAQ,CAACM,SAAT,KAAuBF,SAA3B,EAAsC;AACpC;AACAwB,IAAAA,WAAW,CAACC,YAAZ,CAAyBF,KAAzB,CAA+BrB,SAA/B,GAA2CN,QAAQ,CAACM,SAApD;AACD;;AAED,SAAOsB,WAAP;AACD;;AAED,SAAST,YAAT,CAAsBnB,QAAtB,EAAqC;AACnC,MAAIxB,KAAK,EAAT,EAAa;AACX,WAAOwB,QAAQ,CAAC+B,OAAT,CAAiB,OAAjB,EAA0B,OAA1B,EAAmCA,OAAnC,CAA2C,KAA3C,EAAkD,MAAlD,CAAP;AACD;;AACD,SAAO/B,QAAQ,CAAC+B,OAAT,CAAiB,OAAjB,EAA0B,MAA1B,EAAkCA,OAAlC,CAA0C,KAA1C,EAAiD,OAAjD,CAAP;AACD;;AAgCD,MAAMb,iBAAiB,GAAIc,IAAD,IAA+B;AACvD,MAAI;AACFtC,IAAAA,SADE;AAEF0B,IAAAA,UAFE;AAGFC,IAAAA,WAHE;AAIFC,IAAAA,UAJE;AAKFC,IAAAA,OALE;AAMFzB,IAAAA,UANE;AAOF0B,IAAAA,eAPE;AAQF7B,IAAAA,MARE;AASFC,IAAAA,WATE;AAUFG,IAAAA;AAVE,MAWAiC,IAXJ;AAaA,MAAIC,WAAmB,GAAGb,UAA1B;AACA,MAAIc,qBAAqB,GAAG,KAA5B;AACA,MAAIC,WAAmB,GAAGd,WAA1B;AACA,MAAIe,OAAO,GAAG;AAAEhD,IAAAA,GAAG,EAAE,CAAP;AAAUiD,IAAAA,MAAM,EAAE,CAAlB;AAAqBhD,IAAAA,IAAI,EAAE,CAA3B;AAA8BiD,IAAAA,KAAK,EAAE;AAArC,GAAd;AACA,MAAIC,UAAU,GAAGjB,UAAjB;AACA,MAAIkB,kBAAkB,GAAGhB,eAAzB;AAEA,MAAIiB,2BAAmC,GAAGpB,WAA1C;AAEA,SAAOqB,yBAAyB,CAC9BhD,SAD8B,EAE9BuC,WAF8B,EAG9BE,WAH8B,EAI9BI,UAJ8B,EAK9BH,OAL8B,EAM9Bb,OAN8B,EAO9BzB,UAP8B,EAQ9B0C,kBAR8B,EAS9BC,2BAT8B,EAU9B9C,MAV8B,EAW9BC,WAX8B,EAY9BsC,qBAZ8B,EAa9BnC,wBAb8B,CAAhC;AAeD,CAtCD;;AAwCA,SAAS2C,yBAAT,CACEC,cADF,EAEEV,WAFF,EAGEE,WAHF,EAIEI,UAJF,EAKEH,OALF,EAMEb,OANF,EAOEqB,IAPF,EAQEJ,kBARF,EASEC,2BATF,EAUE9C,MAVF,EAWEC,WAXF,EAYEsC,qBAZF,EAaEnC,wBAbF,EAckB;AAChB,MAAI8C,aAAa,GAAGC,cAAc,CAACH,cAAD,CAAlC;AACA,MAAI;AAAEI,IAAAA,IAAF;AAAQC,IAAAA,SAAR;AAAmBC,IAAAA,SAAnB;AAA8BvD,IAAAA,SAA9B;AAAyCwD,IAAAA;AAAzC,MAA4DL,aAAhE;AACA,MAAI7C,QAAQ,GAAGmD,eAAe,CAC5BlB,WAD4B,EAE5BO,kBAF4B,EAG5BL,WAH4B,EAI5BU,aAJ4B,EAK5BlD,MAL4B,EAM5BC,WAN4B,EAO5B6C,2BAP4B,EAQ5BP,qBAR4B,CAA9B;AAUA,MAAIkB,gBAAgB,GAAGzD,MAAvB;AACA,MAAI0D,KAAK,GAAGC,iBAAiB,CAC3Bd,kBAD2B,EAE3BC,2BAF2B,EAG3BR,WAH2B,EAI3BG,OAJ2B,EAK3Bb,OAAO,GAAG5B,MALiB,EAM3BkD,aAN2B,CAA7B;;AASA,MAAID,IAAI,IAAIL,UAAU,CAACQ,IAAD,CAAV,GAAmBM,KAA/B,EAAsC;AACpC,QAAIE,oBAAoB,GAAGT,cAAc,CACtC,GAAEU,iBAAiB,CAAC9D,SAAD,CAAY,IAAGwD,cAAe,EADX,CAAzC;AAGA,QAAIO,eAAe,GAAGN,eAAe,CACnClB,WADmC,EAEnCO,kBAFmC,EAGnCL,WAHmC,EAInCoB,oBAJmC,EAKnC5D,MALmC,EAMnCC,WANmC,EAOnC6C,2BAPmC,EAQnCP,qBARmC,CAArC;AAUA,QAAIwB,YAAY,GAAGJ,iBAAiB,CAClCd,kBADkC,EAElCC,2BAFkC,EAGlCR,WAHkC,EAIlCG,OAJkC,EAKlCb,OAAO,GAAG5B,MALwB,EAMlC4D,oBANkC,CAApC,CAdoC,CAuBpC;;AACA,QAAIG,YAAY,GAAGL,KAAnB,EAA0B;AACxBR,MAAAA,aAAa,GAAGU,oBAAhB;AACAvD,MAAAA,QAAQ,GAAGyD,eAAX;AACAL,MAAAA,gBAAgB,GAAGzD,MAAnB;AACD;AACF;;AAED,MAAIgE,KAAK,GAAGC,QAAQ,CAClBZ,SADkB,EAElBhD,QAAQ,CAACgD,SAAD,CAFU,EAGlBb,WAAW,CAACc,SAAD,CAHO,EAIlBT,kBAJkB,EAKlBjB,OALkB,CAApB;AAOAvB,EAAAA,QAAQ,CAACgD,SAAD,CAAR,IAAuBW,KAAvB;AAEA,MAAIrD,SAAS,GAAGuD,YAAY,CAC1B7D,QAD0B,EAE1BwC,kBAF0B,EAG1BC,2BAH0B,EAI1BR,WAJ0B,EAK1BG,OAL0B,EAM1Bb,OAN0B,CAA5B;AASAY,EAAAA,WAAW,CAAChD,MAAZ,GAAqB2E,IAAI,CAACC,GAAL,CAAS5B,WAAW,CAAChD,MAArB,EAA6BmB,SAA7B,CAArB;AAEAN,EAAAA,QAAQ,GAAGmD,eAAe,CACxBlB,WADwB,EAExBO,kBAFwB,EAGxBL,WAHwB,EAIxBU,aAJwB,EAKxBO,gBALwB,EAMxBxD,WANwB,EAOxB6C,2BAPwB,EAQxBP,qBARwB,CAA1B;AAWAyB,EAAAA,KAAK,GAAGC,QAAQ,CACdZ,SADc,EAEdhD,QAAQ,CAACgD,SAAD,CAFM,EAGdb,WAAW,CAACc,SAAD,CAHG,EAIdT,kBAJc,EAKdjB,OALc,CAAhB;AAOAvB,EAAAA,QAAQ,CAACgD,SAAD,CAAR,IAAuBW,KAAvB;AAEA,MAAIK,aAAuB,GAAG,EAA9B;AACAA,EAAAA,aAAa,CAAChB,SAAD,CAAb,GACEf,WAAW,CAACe,SAAD,CAAX,GAAyBhD,QAAQ,CAACgD,SAAD,CAAjC,GAA+Cf,WAAW,CAACgB,SAAD,CAAX,GAAyB,CAD1E;;AAGA,MAAIlD,wBAAJ,EAA8B;AAC5BC,IAAAA,QAAQ,CAACwD,iBAAiB,CAACX,aAAa,CAACnD,SAAf,CAAlB,CAAR,GACEM,QAAQ,CAACwD,iBAAiB,CAACX,aAAa,CAACnD,SAAf,CAAlB,CAAR,GAAuDuC,WAAW,CAACc,IAAD,CADpE;AAED;;AAED,SAAO;AACL/C,IAAAA,QADK;AAELM,IAAAA,SAFK;AAGLH,IAAAA,eAAe,EAAE6D,aAAa,CAAC3E,IAH1B;AAILgB,IAAAA,cAAc,EAAE2D,aAAa,CAAC5E,GAJzB;AAKLM,IAAAA,SAAS,EAAEmD,aAAa,CAACnD;AALpB,GAAP;AAOD;;AAED,SAASkE,QAAT,CACEK,IADF,EAEEtE,MAFF,EAGEoD,IAHF,EAIEmB,mBAJF,EAKE3C,OALF,EAME;AACA;AACA,MAAI4C,eAAe,GAAGD,mBAAmB,CAACD,IAAD,CAAzC,CAFA,CAGA;;AACA,MAAIG,eAAe,GAAGF,mBAAmB,CAACG,SAAS,CAACJ,IAAD,CAAV,CAAzC;AAEA,MAAIK,eAAe,GAAG3E,MAAM,GAAG4B,OAAT,GAAmB4C,eAAzC;AACA,MAAII,aAAa,GAAG5E,MAAM,GAAG4B,OAAT,GAAmB4C,eAAnB,GAAqCpB,IAAzD;;AAEA,MAAIuB,eAAe,GAAG,CAAtB,EAAyB;AACvB,WAAO,CAACA,eAAR;AACD,GAFD,MAEO,IAAIC,aAAa,GAAGH,eAApB,EAAqC;AAC1C,WAAON,IAAI,CAACU,GAAL,CAASJ,eAAe,GAAGG,aAA3B,EAA0C,CAACD,eAA3C,CAAP;AACD,GAFM,MAEA;AACL,WAAO,CAAP;AACD;AACF;;AAED,SAAST,YAAT,CACE7D,QADF,EAEEwC,kBAFF,EAGEiC,4BAHF,EAIExC,WAJF,EAKEyC,QALF,EAMEC,QANF,EAOE;AACA,SAAO3E,QAAQ,CAACZ,GAAT,IAAgB,IAAhB,GACH;AACA0E,EAAAA,IAAI,CAACU,GAAL,CACE,CADF,EAEEhC,kBAAkB,CAACrD,MAAnB,GAA4B;AAC1Ba,EAAAA,QAAQ,CAACZ,GAHb,CAGiB;AAHjB,GAFG,GAOH;AACA0E,EAAAA,IAAI,CAACU,GAAL,CACE,CADF,EAEEvC,WAAW,CAAC7C,GAAZ,GAAkB;AAChB,GAHJ,CAGM;AAHN,GARJ;AAaD;;AAED,SAAS+D,eAAT,CACElB,WADF,EAEEO,kBAFF,EAGEL,WAHF,EAIEU,aAJF,EAKElD,MALF,EAMEC,WANF,EAOE6E,4BAPF,EAQEG,sBARF,EASE;AACA,MAAI;AACFlF,IAAAA,SADE;AAEFwD,IAAAA,cAFE;AAGFe,IAAAA,IAHE;AAIFjB,IAAAA,SAJE;AAKFD,IAAAA,IALE;AAMFE,IAAAA;AANE,MAOAJ,aAPJ;AAQA,MAAI7C,QAAa,GAAG,EAApB,CATA,CAUA;;AACAA,EAAAA,QAAQ,CAACgD,SAAD,CAAR,GAAsBf,WAAW,CAACe,SAAD,CAAjC;;AAEA,MAAIE,cAAc,KAAK,QAAvB,EAAiC;AAC/BlD,IAAAA,QAAQ,CAACgD,SAAD,CAAR,IACE,CAACf,WAAW,CAACgB,SAAD,CAAX,GAAyBd,WAAW,CAACc,SAAD,CAArC,IAAoD,CADtD;AAED,GAHD,MAGO,IAAIC,cAAc,KAAKF,SAAvB,EAAkC;AACvChD,IAAAA,QAAQ,CAACgD,SAAD,CAAR,IAAuBf,WAAW,CAACgB,SAAD,CAAX,GAAyBd,WAAW,CAACc,SAAD,CAA3D;AACD;;AAEDjD,EAAAA,QAAQ,CAACgD,SAAD,CAAR,IAAuBpD,WAAvB,CApBA,CAsBA;;AACA,MAAIiF,iBAAiB,GACnB5C,WAAW,CAACe,SAAD,CAAX,GACAf,WAAW,CAACgB,SAAD,CAAX,GAAyB,CADzB,GAEAd,WAAW,CAACc,SAAD,CAHb,CAvBA,CA2BA;;AACA,MAAI6B,iBAAiB,GAAG7C,WAAW,CAACe,SAAD,CAAX,GAAyBf,WAAW,CAACgB,SAAD,CAAX,GAAyB,CAA1E,CA5BA,CA8BA;;AACAjD,EAAAA,QAAQ,CAACgD,SAAD,CAAR,GAAsBc,IAAI,CAACC,GAAL,CACpBD,IAAI,CAACU,GAAL,CAASK,iBAAT,EAA4B7E,QAAQ,CAACgD,SAAD,CAApC,CADoB,EAEpB8B,iBAFoB,CAAtB,CA/BA,CAoCA;;AACA,MAAIpF,SAAS,KAAKuE,IAAlB,EAAwB;AACtB;AACA;AACA;AACA;AACA,UAAMG,eAAe,GAAG5B,kBAAkB,CAACO,IAAD,CAA1C;AACA/C,IAAAA,QAAQ,CAACwD,iBAAiB,CAACS,IAAD,CAAlB,CAAR,GAAoCH,IAAI,CAACiB,KAAL,CAClCX,eAAe,GAAGnC,WAAW,CAACgC,IAAD,CAA7B,GAAsCtE,MADJ,CAApC;AAGD,GATD,MASO;AACLK,IAAAA,QAAQ,CAACiE,IAAD,CAAR,GAAiBH,IAAI,CAACiB,KAAL,CAAW9C,WAAW,CAACgC,IAAD,CAAX,GAAoBhC,WAAW,CAACc,IAAD,CAA/B,GAAwCpD,MAAnD,CAAjB;AACD;;AAED,SAAOK,QAAP;AACD;;AAED,SAASsD,iBAAT,CACEd,kBADF,EAEEiC,4BAFF,EAGExC,WAHF,EAIEyC,QAJF,EAKEnD,OALF,EAMEsB,aANF,EAOE;AACA,MAAI;AAAEnD,IAAAA,SAAF;AAAauE,IAAAA,IAAb;AAAmBlB,IAAAA;AAAnB,MAA4BF,aAAhC;;AACA,MAAInD,SAAS,KAAKuE,IAAlB,EAAwB;AACtB,WAAOH,IAAI,CAACU,GAAL,CAAS,CAAT,EAAYvC,WAAW,CAACgC,IAAD,CAAX,GAAoB1C,OAAhC,CAAP;AACD;;AAED,SAAOuC,IAAI,CAACU,GAAL,CACL,CADK,EAELhC,kBAAkB,CAACO,IAAD,CAAlB,GAA2Bd,WAAW,CAACgC,IAAD,CAAtC,GAA+ChC,WAAW,CAACc,IAAD,CAA1D,GAAmExB,OAF9D,CAAP;AAID;;AAED,MAAMyD,IAAS,GAAG;AAChB5F,EAAAA,GAAG,EAAE,KADW;AAEhBiD,EAAAA,MAAM,EAAE,KAFQ;AAGhBhD,EAAAA,IAAI,EAAE,MAHU;AAIhBiD,EAAAA,KAAK,EAAE;AAJS,CAAlB;AAOA,MAAMkB,iBAAsB,GAAG;AAC7BpE,EAAAA,GAAG,EAAE,QADwB;AAE7BiD,EAAAA,MAAM,EAAE,KAFqB;AAG7BhD,EAAAA,IAAI,EAAE,OAHuB;AAI7BiD,EAAAA,KAAK,EAAE;AAJsB,CAA/B;AAOA,MAAM2C,UAAe,GAAG;AACtB7F,EAAAA,GAAG,EAAE,MADiB;AAEtBC,EAAAA,IAAI,EAAE;AAFgB,CAAxB;AAKA,MAAMgF,SAAc,GAAG;AACrBjF,EAAAA,GAAG,EAAE,QADgB;AAErBC,EAAAA,IAAI,EAAE;AAFe,CAAvB;AA2BA,MAAM6F,sBAA2B,GAAG,EAApC;;AAEA,SAASpC,cAAT,CAAwBqC,KAAxB,EAA2D;AACzD,MAAID,sBAAsB,CAACC,KAAD,CAA1B,EAAmC;AACjC,WAAOD,sBAAsB,CAACC,KAAD,CAA7B;AACD;;AAED,MAAI,CAACzF,SAAD,EAAYwD,cAAZ,IAA8BiC,KAAK,CAACC,KAAN,CAAY,GAAZ,CAAlC;AACA,MAAInB,IAAU,GAAGe,IAAI,CAACtF,SAAD,CAAJ,IAAmB,OAApC;AACA,MAAIsD,SAAe,GAAGiC,UAAU,CAAChB,IAAD,CAAhC;;AAEA,MAAI,CAACe,IAAI,CAAC9B,cAAD,CAAT,EAA2B;AACzBA,IAAAA,cAAc,GAAG,QAAjB;AACD;;AAED,MAAIH,IAAI,GAAGsB,SAAS,CAACJ,IAAD,CAApB;AACA,MAAIhB,SAAS,GAAGoB,SAAS,CAACrB,SAAD,CAAzB;AACAkC,EAAAA,sBAAsB,CAACC,KAAD,CAAtB,GAAgC;AAC9BzF,IAAAA,SAD8B;AAE9BwD,IAAAA,cAF8B;AAG9Be,IAAAA,IAH8B;AAI9BjB,IAAAA,SAJ8B;AAK9BD,IAAAA,IAL8B;AAM9BE,IAAAA;AAN8B,GAAhC;AAQA,SAAOiC,sBAAsB,CAACC,KAAD,CAA7B;AACD","sourcesContent":["import type { PlacementAxis } from '@react-types/overlays';\nimport React, { RefObject } from 'react';\nimport type { Axis, SizeAxis } from '@react-types/overlays';\nimport {\n //@ts-ignore\n Dimensions,\n} from 'react-native';\nimport type { Placement, PositionProps } from '@react-types/overlays';\n//@ts-ignore\nimport { isRTL } from '@react-native-aria/utils';\n\nimport { APPROX_STATUSBAR_HEIGHT } from './utils';\nconst measureOffset = (ref: RefObject<any>) =>\n new Promise<IMeasureResult>((resolve) => {\n if (ref.current) {\n ref.current.measureInWindow(\n (x: number, y: number, width: number, height: number) => {\n resolve({ top: y, left: x, width, height });\n }\n );\n }\n });\n\ninterface ParsedPlacement {\n placement: PlacementAxis;\n crossPlacement: PlacementAxis;\n axis: Axis;\n crossAxis: Axis;\n size: SizeAxis;\n crossSize: SizeAxis;\n}\ninterface AriaPositionProps extends PositionProps {\n /**\n * Element that that serves as the positioning boundary.\n * @default document.body\n */\n boundaryElement?: any;\n /**\n * The ref for the element which the overlay positions itself with respect to.\n */\n targetRef: RefObject<any>;\n /**\n * The ref for the overlay element.\n */\n overlayRef: RefObject<any>;\n /**\n * A ref for the scrollable region within the overlay.\n * @default overlayRef\n */\n scrollRef?: RefObject<any>;\n /**\n * Whether the overlay should update its position automatically.\n * @default true\n */\n shouldUpdatePosition?: boolean;\n /** Handler that is called when the overlay should close. */\n onClose?: () => void;\n /** Determines whether the overlay should overlap with the trigger */\n shouldOverlapWithTrigger?: boolean;\n}\n\ntype IMeasureResult = {\n top: number;\n left: number;\n height: number;\n width: number;\n};\n\nexport function useOverlayPosition(props: AriaPositionProps) {\n let {\n targetRef,\n overlayRef,\n placement = 'bottom' as Placement,\n offset = 0,\n crossOffset = 0,\n isOpen = true,\n shouldFlip = true,\n shouldOverlapWithTrigger = false,\n } = props;\n\n let [position, setPosition] = React.useState<PositionResult>({\n position: {},\n arrowOffsetLeft: undefined,\n arrowOffsetTop: undefined,\n maxHeight: undefined,\n placement: undefined,\n });\n\n // Layout measurement happens asynchronously in RN. This causes initial flickr. Using opacity and setting it to 1 post calculation prevents that.\n let [rendered, setRendered] = React.useState(false);\n\n let updatePosition = async () => {\n const [overlayOffset, triggerOffset] = await Promise.all([\n measureOffset(overlayRef),\n measureOffset(targetRef),\n ]);\n\n // Sometimes measure returns height/width 0. Best solution would be to use onLayout callback, but that might diverege from React Aria's useOverlayPosition API. Decide later, this works for now\n if (\n !overlayOffset.width ||\n !overlayOffset.height ||\n !triggerOffset.width ||\n !triggerOffset.height\n ) {\n requestAnimationFrame(updatePosition);\n return;\n }\n\n const { height: windowHeight, width: windowWidth } = Dimensions.get(\n 'window'\n );\n\n const positions = calculatePosition({\n placement: translateRTL(placement),\n targetNode: triggerOffset,\n overlayNode: overlayOffset,\n scrollNode: overlayOffset,\n padding: 0,\n shouldFlip,\n boundaryElement: {\n top: 0,\n left: 0,\n width: windowWidth,\n height: windowHeight,\n },\n offset,\n crossOffset,\n shouldOverlapWithTrigger,\n });\n setPosition(positions);\n setRendered(true);\n };\n React.useEffect(() => {\n return () => {\n setRendered(false);\n };\n }, []);\n\n React.useLayoutEffect(() => {\n updatePosition();\n }, [\n placement,\n isOpen,\n offset,\n shouldFlip,\n crossOffset,\n shouldOverlapWithTrigger,\n ]);\n\n const style = {\n ...position.position,\n };\n\n if (position?.position?.top || position?.position?.top === 0) {\n style.top = (position?.position?.top || 0) + (APPROX_STATUSBAR_HEIGHT || 0);\n }\n\n const returnProps = {\n rendered,\n overlayProps: {\n style,\n },\n placement: position.placement,\n arrowProps: {\n style: {\n left: position.arrowOffsetLeft,\n top: (position?.arrowOffsetTop || 0) + (APPROX_STATUSBAR_HEIGHT || 0),\n },\n },\n updatePosition,\n };\n\n if (position.maxHeight !== undefined) {\n //@ts-ignore\n returnProps.overlayProps.style.maxHeight = position.maxHeight;\n }\n\n return returnProps;\n}\n\nfunction translateRTL(position: any) {\n if (isRTL()) {\n return position.replace('start', 'right').replace('end', 'left');\n }\n return position.replace('start', 'left').replace('end', 'right');\n}\n\ninterface Position {\n top?: number;\n left?: number;\n bottom?: number;\n right?: number;\n}\n\ninterface Dimensions {\n width: number;\n height: number;\n top: number;\n left: number;\n scroll: Position;\n}\n\ninterface Offset {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\nexport interface PositionResult {\n position?: Position;\n arrowOffsetLeft?: number;\n arrowOffsetTop?: number;\n maxHeight?: number;\n placement: PlacementAxis | undefined;\n}\n\nconst calculatePosition = (opts: any): PositionResult => {\n let {\n placement,\n targetNode,\n overlayNode,\n scrollNode,\n padding,\n shouldFlip,\n boundaryElement,\n offset,\n crossOffset,\n shouldOverlapWithTrigger,\n } = opts;\n\n let childOffset: Offset = targetNode;\n let isContainerPositioned = false;\n let overlaySize: Offset = overlayNode;\n let margins = { top: 0, bottom: 0, left: 0, right: 0 };\n let scrollSize = scrollNode;\n let boundaryDimensions = boundaryElement;\n\n let containerOffsetWithBoundary: Offset = overlayNode;\n\n return calculatePositionInternal(\n placement,\n childOffset,\n overlaySize,\n scrollSize,\n margins,\n padding,\n shouldFlip,\n boundaryDimensions,\n containerOffsetWithBoundary,\n offset,\n crossOffset,\n isContainerPositioned,\n shouldOverlapWithTrigger\n );\n};\n\nfunction calculatePositionInternal(\n placementInput: Placement,\n childOffset: any,\n overlaySize: Offset,\n scrollSize: Offset,\n margins: Position,\n padding: number,\n flip: boolean,\n boundaryDimensions: Dimensions,\n containerOffsetWithBoundary: Offset,\n offset: number,\n crossOffset: number,\n isContainerPositioned: boolean,\n shouldOverlapWithTrigger: boolean\n): PositionResult {\n let placementInfo = parsePlacement(placementInput);\n let { size, crossAxis, crossSize, placement, crossPlacement } = placementInfo;\n let position = computePosition(\n childOffset,\n boundaryDimensions,\n overlaySize,\n placementInfo,\n offset,\n crossOffset,\n containerOffsetWithBoundary,\n isContainerPositioned\n );\n let normalizedOffset = offset;\n let space = getAvailableSpace(\n boundaryDimensions,\n containerOffsetWithBoundary,\n childOffset,\n margins,\n padding + offset,\n placementInfo\n );\n\n if (flip && scrollSize[size] > space) {\n let flippedPlacementInfo = parsePlacement(\n `${FLIPPED_DIRECTION[placement]} ${crossPlacement}` as Placement\n );\n let flippedPosition = computePosition(\n childOffset,\n boundaryDimensions,\n overlaySize,\n flippedPlacementInfo,\n offset,\n crossOffset,\n containerOffsetWithBoundary,\n isContainerPositioned\n );\n let flippedSpace = getAvailableSpace(\n boundaryDimensions,\n containerOffsetWithBoundary,\n childOffset,\n margins,\n padding + offset,\n flippedPlacementInfo\n );\n\n // If the available space for the flipped position is greater than the original available space, flip.\n if (flippedSpace > space) {\n placementInfo = flippedPlacementInfo;\n position = flippedPosition;\n normalizedOffset = offset;\n }\n }\n\n let delta = getDelta(\n crossAxis,\n position[crossAxis],\n overlaySize[crossSize],\n boundaryDimensions,\n padding\n );\n position[crossAxis] += delta;\n\n let maxHeight = getMaxHeight(\n position,\n boundaryDimensions,\n containerOffsetWithBoundary,\n childOffset,\n margins,\n padding\n );\n\n overlaySize.height = Math.min(overlaySize.height, maxHeight);\n\n position = computePosition(\n childOffset,\n boundaryDimensions,\n overlaySize,\n placementInfo,\n normalizedOffset,\n crossOffset,\n containerOffsetWithBoundary,\n isContainerPositioned\n );\n\n delta = getDelta(\n crossAxis,\n position[crossAxis],\n overlaySize[crossSize],\n boundaryDimensions,\n padding\n );\n position[crossAxis] += delta;\n\n let arrowPosition: Position = {};\n arrowPosition[crossAxis] =\n childOffset[crossAxis] - position[crossAxis] + childOffset[crossSize] / 2;\n\n if (shouldOverlapWithTrigger) {\n position[FLIPPED_DIRECTION[placementInfo.placement]] =\n position[FLIPPED_DIRECTION[placementInfo.placement]] - childOffset[size];\n }\n\n return {\n position,\n maxHeight,\n arrowOffsetLeft: arrowPosition.left,\n arrowOffsetTop: arrowPosition.top,\n placement: placementInfo.placement,\n };\n}\n\nfunction getDelta(\n axis: Axis,\n offset: number,\n size: number,\n containerDimensions: Dimensions,\n padding: number\n) {\n //@ts-ignore\n let containerScroll = containerDimensions[axis];\n //@ts-ignore\n let containerHeight = containerDimensions[AXIS_SIZE[axis]];\n\n let startEdgeOffset = offset - padding - containerScroll;\n let endEdgeOffset = offset + padding - containerScroll + size;\n\n if (startEdgeOffset < 0) {\n return -startEdgeOffset;\n } else if (endEdgeOffset > containerHeight) {\n return Math.max(containerHeight - endEdgeOffset, -startEdgeOffset);\n } else {\n return 0;\n }\n}\n\nfunction getMaxHeight(\n position: Position,\n boundaryDimensions: Dimensions,\n _containerOffsetWithBoundary: Offset,\n childOffset: Offset,\n _margins: Position,\n _padding: number\n) {\n return position.top != null\n ? // We want the distance between the top of the overlay to the bottom of the boundary\n Math.max(\n 0,\n boundaryDimensions.height - // this is the bottom of the boundary\n position.top // this is the top of the overlay\n )\n : // We want the distance between the top of the trigger to the top of the boundary\n Math.max(\n 0,\n childOffset.top - // this is the top of the trigger\n 0 // this is the top of the boundary\n );\n}\n\nfunction computePosition(\n childOffset: any,\n boundaryDimensions: Dimensions,\n overlaySize: Offset,\n placementInfo: ParsedPlacement,\n offset: number,\n crossOffset: number,\n _containerOffsetWithBoundary: Offset,\n _isContainerPositioned: boolean\n) {\n let {\n placement,\n crossPlacement,\n axis,\n crossAxis,\n size,\n crossSize,\n } = placementInfo;\n let position: any = {};\n //@ts-ignore\n position[crossAxis] = childOffset[crossAxis];\n\n if (crossPlacement === 'center') {\n position[crossAxis] +=\n (childOffset[crossSize] - overlaySize[crossSize]) / 2;\n } else if (crossPlacement !== crossAxis) {\n position[crossAxis] += childOffset[crossSize] - overlaySize[crossSize];\n }\n\n position[crossAxis] += crossOffset;\n\n // this is button center position - the overlay size + half of the button to align bottom of overlay with button center\n let minViablePosition =\n childOffset[crossAxis] +\n childOffset[crossSize] / 2 -\n overlaySize[crossSize];\n // this is button position of center, aligns top of overlay with button center\n let maxViablePosition = childOffset[crossAxis] + childOffset[crossSize] / 2;\n\n // clamp it into the range of the min/max positions\n position[crossAxis] = Math.min(\n Math.max(minViablePosition, position[crossAxis]),\n maxViablePosition\n );\n\n // Floor these so the position isn't placed on a partial pixel, only whole pixels. Shouldn't matter if it was floored or ceiled, so chose one.\n if (placement === axis) {\n // If the container is positioned (non-static), then we use the container's actual\n // height, as `bottom` will be relative to this height. But if the container is static,\n // then it can only be the `document.body`, and `bottom` will be relative to _its_\n // container, which should be as large as boundaryDimensions.\n const containerHeight = boundaryDimensions[size];\n position[FLIPPED_DIRECTION[axis]] = Math.floor(\n containerHeight - childOffset[axis] + offset\n );\n } else {\n position[axis] = Math.floor(childOffset[axis] + childOffset[size] + offset);\n }\n\n return position;\n}\n\nfunction getAvailableSpace(\n boundaryDimensions: Dimensions,\n _containerOffsetWithBoundary: Offset,\n childOffset: any,\n _margins: Position,\n padding: number,\n placementInfo: ParsedPlacement\n) {\n let { placement, axis, size } = placementInfo;\n if (placement === axis) {\n return Math.max(0, childOffset[axis] - padding);\n }\n\n return Math.max(\n 0,\n boundaryDimensions[size] - childOffset[axis] - childOffset[size] - padding\n );\n}\n\nconst AXIS: any = {\n top: 'top',\n bottom: 'top',\n left: 'left',\n right: 'left',\n};\n\nconst FLIPPED_DIRECTION: any = {\n top: 'bottom',\n bottom: 'top',\n left: 'right',\n right: 'left',\n};\n\nconst CROSS_AXIS: any = {\n top: 'left',\n left: 'top',\n};\n\nconst AXIS_SIZE: any = {\n top: 'height',\n left: 'width',\n};\n\ninterface Position {\n top?: number;\n left?: number;\n bottom?: number;\n right?: number;\n}\n\ninterface Dimensions {\n width: number;\n height: number;\n top: number;\n left: number;\n scroll: Position;\n}\n\ninterface Offset {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\nconst PARSED_PLACEMENT_CACHE: any = {};\n\nfunction parsePlacement(input: Placement): ParsedPlacement {\n if (PARSED_PLACEMENT_CACHE[input]) {\n return PARSED_PLACEMENT_CACHE[input];\n }\n\n let [placement, crossPlacement] = input.split(' ');\n let axis: Axis = AXIS[placement] || 'right';\n let crossAxis: Axis = CROSS_AXIS[axis];\n\n if (!AXIS[crossPlacement]) {\n crossPlacement = 'center';\n }\n\n let size = AXIS_SIZE[axis];\n let crossSize = AXIS_SIZE[crossAxis];\n PARSED_PLACEMENT_CACHE[input] = {\n placement,\n crossPlacement,\n axis,\n crossAxis,\n size,\n crossSize,\n };\n return PARSED_PLACEMENT_CACHE[input];\n}\n"]}
1
+ {"version":3,"names":["React","Dimensions","isRTL","APPROX_STATUSBAR_HEIGHT","measureOffset","ref","Promise","resolve","current","measureInWindow","x","y","width","height","top","left","getArrowPropsWithStatusBarHeight","topWithStatusBarHeight","undefined","style","useOverlayPosition","props","_position$position","_position$position2","targetRef","overlayRef","placement","offset","crossOffset","isOpen","shouldFlip","shouldOverlapWithTrigger","position","setPosition","useState","arrowOffsetLeft","arrowOffsetTop","maxHeight","rendered","setRendered","updatePosition","overlayOffset","triggerOffset","all","requestAnimationFrame","windowHeight","windowWidth","get","positions","calculatePosition","translateRTL","targetNode","overlayNode","scrollNode","padding","boundaryElement","useEffect","useLayoutEffect","_position$position3","arrowPropsWithStatusBarHeight","returnProps","overlayProps","arrowProps","replace","opts","childOffset","isContainerPositioned","overlaySize","margins","bottom","right","scrollSize","boundaryDimensions","containerOffsetWithBoundary","calculatePositionInternal","placementInput","flip","placementInfo","parsePlacement","size","crossAxis","crossSize","crossPlacement","computePosition","normalizedOffset","space","getAvailableSpace","flippedPlacementInfo","FLIPPED_DIRECTION","flippedPosition","flippedSpace","delta","getDelta","getMaxHeight","Math","min","arrowPosition","axis","containerDimensions","containerScroll","containerHeight","AXIS_SIZE","startEdgeOffset","endEdgeOffset","max","_containerOffsetWithBoundary","_margins","_padding","_isContainerPositioned","minViablePosition","maxViablePosition","floor","AXIS","CROSS_AXIS","PARSED_PLACEMENT_CACHE","input","split"],"sourceRoot":"../../src","sources":["useOverlayPosition.ts"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["useOverlayPosition.web.ts"],"names":["useOverlayPosition"],"mappings":"AAAA,SAASA,kBAAT,QAAmC,uCAAnC","sourcesContent":["export { useOverlayPosition } from './web/overlays/src/useOverlayPosition';\n"]}
1
+ {"version":3,"names":["useOverlayPosition"],"sourceRoot":"../../src","sources":["useOverlayPosition.web.ts"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ,uCAAuC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["useOverlayTrigger.ts"],"names":["useOverlayTrigger","_props","state","_ref","triggerProps","isOpen","overlayProps"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAkBA;AACA;AACA;AACA;AACA,OAAO,SAASA,iBAAT,CACLC,MADK,EAELC,KAFK,EAGLC,IAHK,EAIe;AACpB,SAAO;AACLC,IAAAA,YAAY,EAAE;AACZ,uBAAiBF,KAAK,CAACG;AADX,KADT;AAILC,IAAAA,YAAY,EAAE;AAJT,GAAP;AAMD","sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { HTMLAttributes, RefObject } from 'react';\nimport { OverlayTriggerState } from '@react-stately/overlays';\n\ninterface OverlayTriggerProps {\n /** Type of overlay that is opened by the trigger. */\n type: 'dialog' | 'menu' | 'listbox' | 'tree' | 'grid';\n}\n\ninterface OverlayTriggerAria {\n /** Props for the trigger element. */\n triggerProps: any;\n\n /** Props for the overlay container element. */\n overlayProps: HTMLAttributes<HTMLElement>;\n}\n\n/**\n * Handles the behavior and accessibility for an overlay trigger, e.g. a button\n * that opens a popover, menu, or other overlay that is positioned relative to the trigger.\n */\nexport function useOverlayTrigger(\n _props: OverlayTriggerProps,\n state: OverlayTriggerState,\n _ref: RefObject<HTMLElement>\n): OverlayTriggerAria {\n return {\n triggerProps: {\n 'aria-expanded': state.isOpen,\n },\n overlayProps: {},\n };\n}\n"]}
1
+ {"version":3,"names":["useOverlayTrigger","_props","state","_ref","triggerProps","isOpen","overlayProps"],"sourceRoot":"../../src","sources":["useOverlayTrigger.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAkBA;AACA;AACA;AACA;AACA,OAAO,SAASA,iBAAiBA,CAC/BC,MAA2B,EAC3BC,KAA0B,EAC1BC,IAA4B,EACR;EACpB,OAAO;IACLC,YAAY,EAAE;MACZ,eAAe,EAAEF,KAAK,CAACG;IACzB,CAAC;IACDC,YAAY,EAAE,CAAC;EACjB,CAAC;AACH"}
@@ -1 +1 @@
1
- {"version":3,"sources":["useOverlayTrigger.web.ts"],"names":["useOverlayTrigger"],"mappings":"AAAA,SAASA,iBAAT,QAAkC,sBAAlC","sourcesContent":["export { useOverlayTrigger } from '@react-aria/overlays';\n"]}
1
+ {"version":3,"names":["useOverlayTrigger"],"sourceRoot":"../../src","sources":["useOverlayTrigger.web.ts"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,sBAAsB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["usePreventScroll.ts"],"names":["usePreventScroll","_options"],"mappings":"AAKA;AACA,OAAO,MAAMA,gBAAgB,GAAG,CAACC,QAA8B,GAAG,EAAlC,KAAyC,CAAE,CAApE","sourcesContent":["interface PreventScrollOptions {\n /** Whether the scroll lock is disabled. */\n isDisabled?: boolean;\n}\n\n// Polyfill\nexport const usePreventScroll = (_options: PreventScrollOptions = {}) => {};\n"]}
1
+ {"version":3,"names":["usePreventScroll","_options"],"sourceRoot":"../../src","sources":["usePreventScroll.ts"],"mappings":"AAKA;AACA,OAAO,MAAMA,gBAAgB,GAAGA,CAACC,QAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["usePreventScroll.web.ts"],"names":["usePreventScroll"],"mappings":"AAAA,SAASA,gBAAT,QAAiC,sBAAjC","sourcesContent":["export { usePreventScroll } from '@react-aria/overlays';\n"]}
1
+ {"version":3,"names":["usePreventScroll"],"sourceRoot":"../../src","sources":["usePreventScroll.web.ts"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,sBAAsB"}
@@ -1,14 +1,18 @@
1
- import { Platform, StatusBar } from 'react-native'; // import Constants from 'expo-constants';
1
+ import { Platform, StatusBar } from 'react-native';
2
+ // import Constants from 'expo-constants';
2
3
  // @ts-ignore
3
4
  // const expo = global.__expo;
4
5
 
5
6
  const IOS_STATUS_BAR_HEIGHT = 20;
6
- const DEFAULT_STATUSBAR_HEIGHT_EXPO = 0; // https://docs.expo.io/versions/latest/sdk/constants/
7
+ const DEFAULT_STATUSBAR_HEIGHT_EXPO = 0;
8
+
9
+ // https://docs.expo.io/versions/latest/sdk/constants/
7
10
  // Try to get height from expo if app is using expo env
8
11
  // IOS >= 11 is handled using SafeAreaView
9
-
10
12
  export const APPROX_STATUSBAR_HEIGHT = Platform.select({
11
13
  android: DEFAULT_STATUSBAR_HEIGHT_EXPO ? DEFAULT_STATUSBAR_HEIGHT_EXPO : StatusBar.currentHeight,
12
- ios: Platform.Version < 11 ? DEFAULT_STATUSBAR_HEIGHT_EXPO ? DEFAULT_STATUSBAR_HEIGHT_EXPO : IOS_STATUS_BAR_HEIGHT : 0
14
+ ios:
15
+ // @ts-ignore
16
+ Platform.Version < 11 ? DEFAULT_STATUSBAR_HEIGHT_EXPO ? DEFAULT_STATUSBAR_HEIGHT_EXPO : IOS_STATUS_BAR_HEIGHT : 0
13
17
  });
14
18
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["utils.ts"],"names":["Platform","StatusBar","IOS_STATUS_BAR_HEIGHT","DEFAULT_STATUSBAR_HEIGHT_EXPO","APPROX_STATUSBAR_HEIGHT","select","android","currentHeight","ios","Version"],"mappings":"AAAA,SAASA,QAAT,EAAmBC,SAAnB,QAAoC,cAApC,C,CACA;AACA;AACA;;AAEA,MAAMC,qBAAqB,GAAG,EAA9B;AAEA,MAAMC,6BAA6B,GAAG,CAAtC,C,CAEA;AACA;AACA;;AACA,OAAO,MAAMC,uBAAuB,GAAGJ,QAAQ,CAACK,MAAT,CAAgB;AACrDC,EAAAA,OAAO,EAAEH,6BAA6B,GAClCA,6BADkC,GAElCF,SAAS,CAACM,aAHuC;AAIrDC,EAAAA,GAAG,EACDR,QAAQ,CAACS,OAAT,GAAmB,EAAnB,GACIN,6BAA6B,GAC3BA,6BAD2B,GAE3BD,qBAHN,GAII;AAT+C,CAAhB,CAAhC","sourcesContent":["import { Platform, StatusBar } from 'react-native';\n// import Constants from 'expo-constants';\n// @ts-ignore\n// const expo = global.__expo;\n\nconst IOS_STATUS_BAR_HEIGHT = 20;\n\nconst DEFAULT_STATUSBAR_HEIGHT_EXPO = 0;\n\n// https://docs.expo.io/versions/latest/sdk/constants/\n// Try to get height from expo if app is using expo env\n// IOS >= 11 is handled using SafeAreaView\nexport const APPROX_STATUSBAR_HEIGHT = Platform.select({\n android: DEFAULT_STATUSBAR_HEIGHT_EXPO\n ? DEFAULT_STATUSBAR_HEIGHT_EXPO\n : StatusBar.currentHeight,\n ios:\n Platform.Version < 11\n ? DEFAULT_STATUSBAR_HEIGHT_EXPO\n ? DEFAULT_STATUSBAR_HEIGHT_EXPO\n : IOS_STATUS_BAR_HEIGHT\n : 0,\n});\n"]}
1
+ {"version":3,"names":["Platform","StatusBar","IOS_STATUS_BAR_HEIGHT","DEFAULT_STATUSBAR_HEIGHT_EXPO","APPROX_STATUSBAR_HEIGHT","select","android","currentHeight","ios","Version"],"sourceRoot":"../../src","sources":["utils.ts"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,SAAS,QAAQ,cAAc;AAClD;AACA;AACA;;AAEA,MAAMC,qBAAqB,GAAG,EAAE;AAEhC,MAAMC,6BAA6B,GAAG,CAAC;;AAEvC;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,GAAGJ,QAAQ,CAACK,MAAM,CAAC;EACrDC,OAAO,EAAEH,6BAA6B,GAClCA,6BAA6B,GAC7BF,SAAS,CAACM,aAAa;EAC3BC,GAAG;EACD;EACAR,QAAQ,CAACS,OAAO,GAAG,EAAE,GACjBN,6BAA6B,GAC3BA,6BAA6B,GAC7BD,qBAAqB,GACvB;AACR,CAAC,CAAC"}
@@ -9,5 +9,6 @@
9
9
  * OF ANY KIND, either express or implied. See the License for the specific language
10
10
  * governing permissions and limitations under the License.
11
11
  */
12
+
12
13
  export * from './src';
13
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,cAAc,OAAd","sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './src';\n"]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["web/overlays/index.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,cAAc,OAAO"}
@@ -1,5 +1,4 @@
1
1
  // @ts-nocheck
2
-
3
2
  /*
4
3
  * Copyright 2020 Adobe. All rights reserved.
5
4
  * This file is licensed to you under the Apache License, Version 2.0 (the "License");
@@ -11,6 +10,7 @@
11
10
  * OF ANY KIND, either express or implied. See the License for the specific language
12
11
  * governing permissions and limitations under the License.
13
12
  */
13
+
14
14
  import getCss from 'dom-helpers/css';
15
15
  import getOffset from 'dom-helpers/offset';
16
16
  import getPosition from 'dom-helpers/position';
@@ -38,22 +38,19 @@ const AXIS_SIZE = {
38
38
  top: 'height',
39
39
  left: 'width'
40
40
  };
41
- const PARSED_PLACEMENT_CACHE = {}; // @ts-ignore
41
+ const PARSED_PLACEMENT_CACHE = {};
42
42
 
43
+ // @ts-ignore
43
44
  let visualViewport = typeof window !== 'undefined' && window.visualViewport;
44
-
45
45
  function getContainerDimensions(containerNode) {
46
46
  let width = 0,
47
- height = 0,
48
- top = 0,
49
- left = 0;
47
+ height = 0,
48
+ top = 0,
49
+ left = 0;
50
50
  let scroll = {};
51
-
52
51
  if (containerNode.tagName === 'BODY') {
53
- var _visualViewport$width, _visualViewport$heigh;
54
-
55
- width = (_visualViewport$width = visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.width) !== null && _visualViewport$width !== void 0 ? _visualViewport$width : document.documentElement.clientWidth;
56
- height = (_visualViewport$heigh = visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.height) !== null && _visualViewport$heigh !== void 0 ? _visualViewport$heigh : document.documentElement.clientHeight;
52
+ width = (visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.width) ?? document.documentElement.clientWidth;
53
+ height = (visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.height) ?? document.documentElement.clientHeight;
57
54
  scroll.top = getScrollTop(ownerDocument(containerNode).documentElement) || getScrollTop(containerNode);
58
55
  scroll.left = getScrollLeft(ownerDocument(containerNode).documentElement) || getScrollLeft(containerNode);
59
56
  } else {
@@ -66,7 +63,6 @@ function getContainerDimensions(containerNode) {
66
63
  scroll.top = getScrollTop(containerNode);
67
64
  scroll.left = getScrollLeft(containerNode);
68
65
  }
69
-
70
66
  return {
71
67
  width,
72
68
  height,
@@ -75,7 +71,6 @@ function getContainerDimensions(containerNode) {
75
71
  left
76
72
  };
77
73
  }
78
-
79
74
  function getScroll(node) {
80
75
  return {
81
76
  top: node.scrollTop,
@@ -84,13 +79,11 @@ function getScroll(node) {
84
79
  height: node.scrollHeight
85
80
  };
86
81
  }
87
-
88
82
  function getDelta(axis, offset, size, containerDimensions, padding) {
89
83
  let containerScroll = containerDimensions.scroll[axis];
90
84
  let containerHeight = containerDimensions[AXIS_SIZE[axis]];
91
85
  let startEdgeOffset = offset - padding - containerScroll;
92
86
  let endEdgeOffset = offset + padding - containerScroll + size;
93
-
94
87
  if (startEdgeOffset < 0) {
95
88
  return -startEdgeOffset;
96
89
  } else if (endEdgeOffset > containerHeight) {
@@ -99,7 +92,6 @@ function getDelta(axis, offset, size, containerDimensions, padding) {
99
92
  return 0;
100
93
  }
101
94
  }
102
-
103
95
  function getMargins(node) {
104
96
  let style = window.getComputedStyle(node);
105
97
  return {
@@ -109,20 +101,16 @@ function getMargins(node) {
109
101
  right: parseInt(style.marginRight, 10) || 0
110
102
  };
111
103
  }
112
-
113
104
  function parsePlacement(input) {
114
105
  if (PARSED_PLACEMENT_CACHE[input]) {
115
106
  return PARSED_PLACEMENT_CACHE[input];
116
107
  }
117
-
118
108
  let [placement, crossPlacement] = input.split(' ');
119
109
  let axis = AXIS[placement] || 'right';
120
110
  let crossAxis = CROSS_AXIS[axis];
121
-
122
111
  if (!AXIS[crossPlacement]) {
123
112
  crossPlacement = 'center';
124
113
  }
125
-
126
114
  let size = AXIS_SIZE[axis];
127
115
  let crossSize = AXIS_SIZE[crossAxis];
128
116
  PARSED_PLACEMENT_CACHE[input] = {
@@ -135,7 +123,6 @@ function parsePlacement(input) {
135
123
  };
136
124
  return PARSED_PLACEMENT_CACHE[input];
137
125
  }
138
-
139
126
  function computePosition(childOffset, boundaryDimensions, overlaySize, placementInfo, offset, crossOffset, containerOffsetWithBoundary, isContainerPositioned) {
140
127
  let {
141
128
  placement,
@@ -145,10 +132,10 @@ function computePosition(childOffset, boundaryDimensions, overlaySize, placement
145
132
  size,
146
133
  crossSize
147
134
  } = placementInfo;
148
- let position = {}; // button position
135
+ let position = {};
149
136
 
137
+ // button position
150
138
  position[crossAxis] = childOffset[crossAxis];
151
-
152
139
  if (crossPlacement === 'center') {
153
140
  // + (button size / 2) - (overlay size / 2)
154
141
  // at this point the overlay center should match the button center
@@ -157,27 +144,27 @@ function computePosition(childOffset, boundaryDimensions, overlaySize, placement
157
144
  // + (button size) - (overlay size)
158
145
  // at this point the overlay bottom should match the button bottom
159
146
  position[crossAxis] += childOffset[crossSize] - overlaySize[crossSize];
160
- }
161
- /* else {
162
- the overlay top should match the button top
163
- } */
147
+ } /* else {
148
+ the overlay top should match the button top
149
+ } */
164
150
  // add the crossOffset from props
151
+ position[crossAxis] += crossOffset;
165
152
 
166
-
167
- position[crossAxis] += crossOffset; // // this is button center position - the overlay size + half of the button to align bottom of overlay with button center
153
+ // // this is button center position - the overlay size + half of the button to align bottom of overlay with button center
168
154
  // let minViablePosition =
169
155
  // childOffset[crossAxis] +
170
156
  // childOffset[crossSize] / 2 -
171
157
  // overlaySize[crossSize];
172
158
  // // this is button position of center, aligns top of overlay with button center
173
159
  // let maxViablePosition = childOffset[crossAxis] + childOffset[crossSize] / 2;
160
+
174
161
  // // clamp it into the range of the min/max positions
175
162
  // position[crossAxis] = Math.min(
176
163
  // Math.max(minViablePosition, position[crossAxis]),
177
164
  // maxViablePosition
178
165
  // );
179
- // Floor these so the position isn't placed on a partial pixel, only whole pixels. Shouldn't matter if it was floored or ceiled, so chose one.
180
166
 
167
+ // Floor these so the position isn't placed on a partial pixel, only whole pixels. Shouldn't matter if it was floored or ceiled, so chose one.
181
168
  if (placement === axis) {
182
169
  // If the container is positioned (non-static), then we use the container's actual
183
170
  // height, as `bottom` will be relative to this height. But if the container is static,
@@ -188,36 +175,36 @@ function computePosition(childOffset, boundaryDimensions, overlaySize, placement
188
175
  } else {
189
176
  position[axis] = Math.floor(childOffset[axis] + childOffset[size] + offset);
190
177
  }
191
-
192
178
  return position;
193
179
  }
194
-
195
180
  function getMaxHeight(position, boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding) {
196
- return position.top != null ? // We want the distance between the top of the overlay to the bottom of the boundary
197
- Math.max(0, boundaryDimensions.height + boundaryDimensions.top + boundaryDimensions.scroll.top - ( // this is the bottom of the boundary
198
- containerOffsetWithBoundary.top + position.top) - ( // this is the top of the overlay
181
+ return position.top != null ?
182
+ // We want the distance between the top of the overlay to the bottom of the boundary
183
+ Math.max(0, boundaryDimensions.height + boundaryDimensions.top + boundaryDimensions.scroll.top - (
184
+ // this is the bottom of the boundary
185
+ containerOffsetWithBoundary.top + position.top) - (
186
+ // this is the top of the overlay
199
187
  margins.top + margins.bottom + padding) // save additional space for margin and padding
200
- ) : // We want the distance between the top of the trigger to the top of the boundary
201
- Math.max(0, childOffset.top + containerOffsetWithBoundary.top - ( // this is the top of the trigger
202
- boundaryDimensions.top + boundaryDimensions.scroll.top) - ( // this is the top of the boundary
188
+ ) :
189
+ // We want the distance between the top of the trigger to the top of the boundary
190
+ Math.max(0, childOffset.top + containerOffsetWithBoundary.top - (
191
+ // this is the top of the trigger
192
+ boundaryDimensions.top + boundaryDimensions.scroll.top) - (
193
+ // this is the top of the boundary
203
194
  margins.top + margins.bottom + padding) // save additional space for margin and padding
204
195
  );
205
196
  }
206
-
207
197
  function getAvailableSpace(boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding, placementInfo) {
208
198
  let {
209
199
  placement,
210
200
  axis,
211
201
  size
212
202
  } = placementInfo;
213
-
214
203
  if (placement === axis) {
215
204
  return Math.max(0, childOffset[axis] - boundaryDimensions[axis] - boundaryDimensions.scroll[axis] + containerOffsetWithBoundary[axis] - margins[axis] - margins[FLIPPED_DIRECTION[axis]] - padding);
216
205
  }
217
-
218
206
  return Math.max(0, boundaryDimensions[size] + boundaryDimensions[axis] + boundaryDimensions.scroll[axis] - containerOffsetWithBoundary[axis] - childOffset[axis] - childOffset[size] - margins[axis] - margins[FLIPPED_DIRECTION[axis]] - padding);
219
207
  }
220
-
221
208
  export function calculatePositionInternal(placementInput, childOffset, overlaySize, scrollSize, margins, padding, flip, boundaryDimensions, containerOffsetWithBoundary, offset, crossOffset, isContainerPositioned, shouldOverlapWithTrigger) {
222
209
  let placementInfo = parsePlacement(placementInput);
223
210
  let {
@@ -230,20 +217,21 @@ export function calculatePositionInternal(placementInput, childOffset, overlaySi
230
217
  } = placementInfo;
231
218
  let position = computePosition(childOffset, boundaryDimensions, overlaySize, placementInfo, offset, crossOffset, containerOffsetWithBoundary, isContainerPositioned);
232
219
  let normalizedOffset = offset;
233
- let space = getAvailableSpace(boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding + offset, placementInfo); // Check if the scroll size of the overlay is greater than the available space to determine if we need to flip
220
+ let space = getAvailableSpace(boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding + offset, placementInfo);
234
221
 
222
+ // Check if the scroll size of the overlay is greater than the available space to determine if we need to flip
235
223
  if (flip && scrollSize[size] > space) {
236
224
  let flippedPlacementInfo = parsePlacement(`${FLIPPED_DIRECTION[placement]} ${crossPlacement}`);
237
225
  let flippedPosition = computePosition(childOffset, boundaryDimensions, overlaySize, flippedPlacementInfo, offset, crossOffset, containerOffsetWithBoundary, isContainerPositioned);
238
- let flippedSpace = getAvailableSpace(boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding + offset, flippedPlacementInfo); // If the available space for the flipped position is greater than the original available space, flip.
226
+ let flippedSpace = getAvailableSpace(boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding + offset, flippedPlacementInfo);
239
227
 
228
+ // If the available space for the flipped position is greater than the original available space, flip.
240
229
  if (flippedSpace > space) {
241
230
  placementInfo = flippedPlacementInfo;
242
231
  position = flippedPosition;
243
232
  normalizedOffset = offset;
244
233
  }
245
234
  }
246
-
247
235
  let delta = getDelta(crossAxis, position[crossAxis], overlaySize[crossSize], boundaryDimensions, padding);
248
236
  position[crossAxis] += delta;
249
237
  let maxHeight = getMaxHeight(position, boundaryDimensions, containerOffsetWithBoundary, childOffset, margins, padding);
@@ -253,11 +241,9 @@ export function calculatePositionInternal(placementInput, childOffset, overlaySi
253
241
  position[crossAxis] += delta;
254
242
  let arrowPosition = {};
255
243
  arrowPosition[crossAxis] = childOffset[crossAxis] - position[crossAxis] + childOffset[crossSize] / 2;
256
-
257
244
  if (shouldOverlapWithTrigger) {
258
245
  position[FLIPPED_DIRECTION[placementInfo.placement]] = position[FLIPPED_DIRECTION[placementInfo.placement]] - childOffset[size];
259
246
  }
260
-
261
247
  return {
262
248
  position,
263
249
  maxHeight: maxHeight,
@@ -266,10 +252,10 @@ export function calculatePositionInternal(placementInput, childOffset, overlaySi
266
252
  placement: placementInfo.placement
267
253
  };
268
254
  }
255
+
269
256
  /**
270
257
  * Determines where to place the overlay with regards to the target and the position of an optional indicator.
271
258
  */
272
-
273
259
  export function calculatePosition(opts) {
274
260
  let {
275
261
  placement,
@@ -288,12 +274,10 @@ export function calculatePosition(opts) {
288
274
  const containerPositionStyle = window.getComputedStyle(container).position;
289
275
  let isContainerPositioned = !!containerPositionStyle && containerPositionStyle !== 'static';
290
276
  let childOffset = isBodyContainer ? getOffset(targetNode) : getPosition(targetNode, container);
291
-
292
277
  if (!isBodyContainer) {
293
278
  childOffset.top += parseInt(getCss(targetNode, 'marginTop'), 10) || 0;
294
279
  childOffset.left += parseInt(getCss(targetNode, 'marginLeft'), 10) || 0;
295
280
  }
296
-
297
281
  let overlaySize = getOffset(overlayNode);
298
282
  const matrix = getComputedStyle(overlayNode).getPropertyValue('transform');
299
283
  const transform = matrix;
@@ -301,32 +285,25 @@ export function calculatePosition(opts) {
301
285
  const matches = transform.match(regex);
302
286
  let scaleX = 1;
303
287
  let scaleY = 1;
304
-
305
288
  if (matches) {
306
289
  scaleX = parseFloat(matches[1]);
307
290
  scaleY = parseFloat(matches[4]);
308
-
309
291
  if (!scaleX || !Number.isFinite(scaleX)) {
310
292
  scaleX = 1;
311
293
  }
312
-
313
294
  if (!scaleY || !Number.isFinite(scaleY)) {
314
295
  scaleY = 1;
315
296
  }
316
297
  }
317
-
318
298
  let margins = getMargins(overlayNode);
319
299
  overlaySize.width += margins.left + margins.right;
320
300
  overlaySize.height += margins.top + margins.bottom;
321
-
322
301
  if (scaleX) {
323
302
  overlaySize.width = overlaySize.width / scaleX;
324
303
  }
325
-
326
304
  if (scaleY) {
327
305
  overlaySize.height = overlaySize.height / scaleY;
328
306
  }
329
-
330
307
  let scrollSize = getScroll(scrollNode);
331
308
  let boundaryDimensions = getContainerDimensions(boundaryElement);
332
309
  let containerOffsetWithBoundary = boundaryElement.tagName === 'BODY' ? getOffset(container) : getPosition(container, boundaryElement);
@@ -1 +1 @@
1
- {"version":3,"sources":["calculatePosition.ts"],"names":["getCss","getOffset","getPosition","getScrollLeft","getScrollTop","ownerDocument","getComputedStyle","AXIS","top","bottom","left","right","FLIPPED_DIRECTION","CROSS_AXIS","AXIS_SIZE","PARSED_PLACEMENT_CACHE","visualViewport","window","getContainerDimensions","containerNode","width","height","scroll","tagName","document","documentElement","clientWidth","clientHeight","getScroll","node","scrollTop","scrollLeft","scrollWidth","scrollHeight","getDelta","axis","offset","size","containerDimensions","padding","containerScroll","containerHeight","startEdgeOffset","endEdgeOffset","Math","max","getMargins","style","parseInt","marginTop","marginBottom","marginLeft","marginRight","parsePlacement","input","placement","crossPlacement","split","crossAxis","crossSize","computePosition","childOffset","boundaryDimensions","overlaySize","placementInfo","crossOffset","containerOffsetWithBoundary","isContainerPositioned","position","floor","getMaxHeight","margins","getAvailableSpace","calculatePositionInternal","placementInput","scrollSize","flip","shouldOverlapWithTrigger","normalizedOffset","space","flippedPlacementInfo","flippedPosition","flippedSpace","delta","maxHeight","min","arrowPosition","arrowOffsetLeft","arrowOffsetTop","calculatePosition","opts","targetNode","overlayNode","scrollNode","shouldFlip","boundaryElement","container","offsetParent","body","isBodyContainer","containerPositionStyle","matrix","getPropertyValue","transform","regex","matches","match","scaleX","scaleY","parseFloat","Number","isFinite"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n Axis,\n Placement,\n PlacementAxis,\n SizeAxis,\n} from '@react-types/overlays';\nimport getCss from 'dom-helpers/css';\nimport getOffset from 'dom-helpers/offset';\nimport getPosition from 'dom-helpers/position';\nimport getScrollLeft from 'dom-helpers/scrollLeft';\nimport getScrollTop from 'dom-helpers/scrollTop';\nimport ownerDocument from 'dom-helpers/ownerDocument';\nimport getComputedStyle from 'dom-helpers/getComputedStyle';\n\ninterface Position {\n top?: number;\n left?: number;\n bottom?: number;\n right?: number;\n}\n\ninterface Dimensions {\n width: number;\n height: number;\n top: number;\n left: number;\n scroll: Position;\n}\n\ninterface ParsedPlacement {\n placement: PlacementAxis;\n crossPlacement: PlacementAxis;\n axis: Axis;\n crossAxis: Axis;\n size: SizeAxis;\n crossSize: SizeAxis;\n}\n\ninterface Offset {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\ninterface PositionOpts {\n placement: Placement;\n targetNode: HTMLElement;\n overlayNode: HTMLElement;\n scrollNode: HTMLElement;\n padding: number;\n shouldFlip: boolean;\n boundaryElement: HTMLElement;\n offset: number;\n crossOffset: number;\n shouldOverlapWithTrigger: boolean;\n}\n\nexport interface PositionResult {\n position?: Position;\n arrowOffsetLeft?: number;\n arrowOffsetTop?: number;\n maxHeight?: number;\n placement: PlacementAxis;\n}\n\nconst AXIS = {\n top: 'top',\n bottom: 'top',\n left: 'left',\n right: 'left',\n};\n\nconst FLIPPED_DIRECTION = {\n top: 'bottom',\n bottom: 'top',\n left: 'right',\n right: 'left',\n};\n\nconst CROSS_AXIS = {\n top: 'left',\n left: 'top',\n};\n\nconst AXIS_SIZE = {\n top: 'height',\n left: 'width',\n};\n\nconst PARSED_PLACEMENT_CACHE = {};\n\n// @ts-ignore\nlet visualViewport = typeof window !== 'undefined' && window.visualViewport;\n\nfunction getContainerDimensions(containerNode: Element): Dimensions {\n let width = 0,\n height = 0,\n top = 0,\n left = 0;\n let scroll: Position = {};\n\n if (containerNode.tagName === 'BODY') {\n width = visualViewport?.width ?? document.documentElement.clientWidth;\n height = visualViewport?.height ?? document.documentElement.clientHeight;\n\n scroll.top =\n getScrollTop(ownerDocument(containerNode).documentElement) ||\n getScrollTop(containerNode);\n scroll.left =\n getScrollLeft(ownerDocument(containerNode).documentElement) ||\n getScrollLeft(containerNode);\n } else {\n ({ width, height, top, left } = getOffset(containerNode));\n scroll.top = getScrollTop(containerNode);\n scroll.left = getScrollLeft(containerNode);\n }\n\n return { width, height, scroll, top, left };\n}\n\nfunction getScroll(node: HTMLElement): Offset {\n return {\n top: node.scrollTop,\n left: node.scrollLeft,\n width: node.scrollWidth,\n height: node.scrollHeight,\n };\n}\n\nfunction getDelta(\n axis: Axis,\n offset: number,\n size: number,\n containerDimensions: Dimensions,\n padding: number\n) {\n let containerScroll = containerDimensions.scroll[axis];\n let containerHeight = containerDimensions[AXIS_SIZE[axis]];\n\n let startEdgeOffset = offset - padding - containerScroll;\n let endEdgeOffset = offset + padding - containerScroll + size;\n\n if (startEdgeOffset < 0) {\n return -startEdgeOffset;\n } else if (endEdgeOffset > containerHeight) {\n return Math.max(containerHeight - endEdgeOffset, -startEdgeOffset);\n } else {\n return 0;\n }\n}\n\nfunction getMargins(node: HTMLElement): Position {\n let style = window.getComputedStyle(node);\n return {\n top: parseInt(style.marginTop, 10) || 0,\n bottom: parseInt(style.marginBottom, 10) || 0,\n left: parseInt(style.marginLeft, 10) || 0,\n right: parseInt(style.marginRight, 10) || 0,\n };\n}\n\nfunction parsePlacement(input: Placement): ParsedPlacement {\n if (PARSED_PLACEMENT_CACHE[input]) {\n return PARSED_PLACEMENT_CACHE[input];\n }\n\n let [placement, crossPlacement] = input.split(' ');\n let axis: Axis = AXIS[placement] || 'right';\n let crossAxis: Axis = CROSS_AXIS[axis];\n\n if (!AXIS[crossPlacement]) {\n crossPlacement = 'center';\n }\n\n let size = AXIS_SIZE[axis];\n let crossSize = AXIS_SIZE[crossAxis];\n PARSED_PLACEMENT_CACHE[input] = {\n placement,\n crossPlacement,\n axis,\n crossAxis,\n size,\n crossSize,\n };\n return PARSED_PLACEMENT_CACHE[input];\n}\n\nfunction computePosition(\n childOffset: Offset,\n boundaryDimensions: Dimensions,\n overlaySize: Offset,\n placementInfo: ParsedPlacement,\n offset: number,\n crossOffset: number,\n containerOffsetWithBoundary: Offset,\n isContainerPositioned: boolean\n) {\n let {\n placement,\n crossPlacement,\n axis,\n crossAxis,\n size,\n crossSize,\n } = placementInfo;\n let position: Position = {};\n\n // button position\n position[crossAxis] = childOffset[crossAxis];\n\n if (crossPlacement === 'center') {\n // + (button size / 2) - (overlay size / 2)\n // at this point the overlay center should match the button center\n position[crossAxis] +=\n (childOffset[crossSize] - overlaySize[crossSize]) / 2;\n } else if (crossPlacement !== crossAxis) {\n // + (button size) - (overlay size)\n // at this point the overlay bottom should match the button bottom\n position[crossAxis] += childOffset[crossSize] - overlaySize[crossSize];\n } /* else {\n the overlay top should match the button top\n } */\n // add the crossOffset from props\n position[crossAxis] += crossOffset;\n\n // // this is button center position - the overlay size + half of the button to align bottom of overlay with button center\n // let minViablePosition =\n // childOffset[crossAxis] +\n // childOffset[crossSize] / 2 -\n // overlaySize[crossSize];\n // // this is button position of center, aligns top of overlay with button center\n // let maxViablePosition = childOffset[crossAxis] + childOffset[crossSize] / 2;\n\n // // clamp it into the range of the min/max positions\n // position[crossAxis] = Math.min(\n // Math.max(minViablePosition, position[crossAxis]),\n // maxViablePosition\n // );\n\n // Floor these so the position isn't placed on a partial pixel, only whole pixels. Shouldn't matter if it was floored or ceiled, so chose one.\n if (placement === axis) {\n // If the container is positioned (non-static), then we use the container's actual\n // height, as `bottom` will be relative to this height. But if the container is static,\n // then it can only be the `document.body`, and `bottom` will be relative to _its_\n // container, which should be as large as boundaryDimensions.\n const containerHeight = isContainerPositioned\n ? containerOffsetWithBoundary[size]\n : boundaryDimensions[size];\n position[FLIPPED_DIRECTION[axis]] = Math.floor(\n containerHeight - childOffset[axis] + offset\n );\n } else {\n position[axis] = Math.floor(childOffset[axis] + childOffset[size] + offset);\n }\n\n return position;\n}\n\nfunction getMaxHeight(\n position: Position,\n boundaryDimensions: Dimensions,\n containerOffsetWithBoundary: Offset,\n childOffset: Offset,\n margins: Position,\n padding: number\n) {\n return position.top != null\n ? // We want the distance between the top of the overlay to the bottom of the boundary\n Math.max(\n 0,\n boundaryDimensions.height +\n boundaryDimensions.top +\n boundaryDimensions.scroll.top - // this is the bottom of the boundary\n (containerOffsetWithBoundary.top + position.top) - // this is the top of the overlay\n (margins.top + margins.bottom + padding) // save additional space for margin and padding\n )\n : // We want the distance between the top of the trigger to the top of the boundary\n Math.max(\n 0,\n childOffset.top +\n containerOffsetWithBoundary.top - // this is the top of the trigger\n (boundaryDimensions.top + boundaryDimensions.scroll.top) - // this is the top of the boundary\n (margins.top + margins.bottom + padding) // save additional space for margin and padding\n );\n}\n\nfunction getAvailableSpace(\n boundaryDimensions: Dimensions,\n containerOffsetWithBoundary: Offset,\n childOffset: Offset,\n margins: Position,\n padding: number,\n placementInfo: ParsedPlacement\n) {\n let { placement, axis, size } = placementInfo;\n if (placement === axis) {\n return Math.max(\n 0,\n childOffset[axis] -\n boundaryDimensions[axis] -\n boundaryDimensions.scroll[axis] +\n containerOffsetWithBoundary[axis] -\n margins[axis] -\n margins[FLIPPED_DIRECTION[axis]] -\n padding\n );\n }\n\n return Math.max(\n 0,\n boundaryDimensions[size] +\n boundaryDimensions[axis] +\n boundaryDimensions.scroll[axis] -\n containerOffsetWithBoundary[axis] -\n childOffset[axis] -\n childOffset[size] -\n margins[axis] -\n margins[FLIPPED_DIRECTION[axis]] -\n padding\n );\n}\n\nexport function calculatePositionInternal(\n placementInput: Placement,\n childOffset: Offset,\n overlaySize: Offset,\n scrollSize: Offset,\n margins: Position,\n padding: number,\n flip: boolean,\n boundaryDimensions: Dimensions,\n containerOffsetWithBoundary: Offset,\n offset: number,\n crossOffset: number,\n isContainerPositioned: boolean,\n shouldOverlapWithTrigger: boolean\n): PositionResult {\n let placementInfo = parsePlacement(placementInput);\n let {\n size,\n crossAxis,\n crossSize,\n placement,\n crossPlacement,\n axis,\n } = placementInfo;\n let position = computePosition(\n childOffset,\n boundaryDimensions,\n overlaySize,\n placementInfo,\n offset,\n crossOffset,\n containerOffsetWithBoundary,\n isContainerPositioned\n );\n\n let normalizedOffset = offset;\n let space = getAvailableSpace(\n boundaryDimensions,\n containerOffsetWithBoundary,\n childOffset,\n margins,\n padding + offset,\n placementInfo\n );\n\n // Check if the scroll size of the overlay is greater than the available space to determine if we need to flip\n if (flip && scrollSize[size] > space) {\n let flippedPlacementInfo = parsePlacement(\n `${FLIPPED_DIRECTION[placement]} ${crossPlacement}` as Placement\n );\n let flippedPosition = computePosition(\n childOffset,\n boundaryDimensions,\n overlaySize,\n flippedPlacementInfo,\n offset,\n crossOffset,\n containerOffsetWithBoundary,\n isContainerPositioned\n );\n let flippedSpace = getAvailableSpace(\n boundaryDimensions,\n containerOffsetWithBoundary,\n childOffset,\n margins,\n padding + offset,\n flippedPlacementInfo\n );\n\n // If the available space for the flipped position is greater than the original available space, flip.\n if (flippedSpace > space) {\n placementInfo = flippedPlacementInfo;\n position = flippedPosition;\n normalizedOffset = offset;\n }\n }\n\n let delta = getDelta(\n crossAxis,\n position[crossAxis],\n overlaySize[crossSize],\n boundaryDimensions,\n padding\n );\n position[crossAxis] += delta;\n\n let maxHeight = getMaxHeight(\n position,\n boundaryDimensions,\n containerOffsetWithBoundary,\n childOffset,\n margins,\n padding\n );\n\n overlaySize.height = Math.min(overlaySize.height, maxHeight);\n\n position = computePosition(\n childOffset,\n boundaryDimensions,\n overlaySize,\n placementInfo,\n normalizedOffset,\n crossOffset,\n containerOffsetWithBoundary,\n isContainerPositioned\n );\n delta = getDelta(\n crossAxis,\n position[crossAxis],\n overlaySize[crossSize],\n boundaryDimensions,\n padding\n );\n position[crossAxis] += delta;\n\n let arrowPosition: Position = {};\n arrowPosition[crossAxis] =\n childOffset[crossAxis] - position[crossAxis] + childOffset[crossSize] / 2;\n\n if (shouldOverlapWithTrigger) {\n position[FLIPPED_DIRECTION[placementInfo.placement]] =\n position[FLIPPED_DIRECTION[placementInfo.placement]] - childOffset[size];\n }\n\n return {\n position,\n maxHeight: maxHeight,\n arrowOffsetLeft: arrowPosition.left,\n arrowOffsetTop: arrowPosition.top,\n placement: placementInfo.placement,\n };\n}\n\n/**\n * Determines where to place the overlay with regards to the target and the position of an optional indicator.\n */\nexport function calculatePosition(opts: PositionOpts): PositionResult {\n let {\n placement,\n targetNode,\n overlayNode,\n scrollNode,\n padding,\n shouldFlip,\n boundaryElement,\n offset,\n crossOffset,\n shouldOverlapWithTrigger,\n } = opts;\n\n let container = overlayNode.offsetParent || document.body;\n let isBodyContainer = container.tagName === 'BODY';\n const containerPositionStyle = window.getComputedStyle(container).position;\n let isContainerPositioned =\n !!containerPositionStyle && containerPositionStyle !== 'static';\n let childOffset: Offset = isBodyContainer\n ? getOffset(targetNode)\n : getPosition(targetNode, container);\n\n if (!isBodyContainer) {\n childOffset.top += parseInt(getCss(targetNode, 'marginTop'), 10) || 0;\n childOffset.left += parseInt(getCss(targetNode, 'marginLeft'), 10) || 0;\n }\n\n let overlaySize: Offset = getOffset(overlayNode);\n const matrix = getComputedStyle(overlayNode).getPropertyValue('transform');\n const transform = matrix;\n const regex = /matrix\\((-?\\d*\\.?\\d+),\\s*(-?\\d*\\.?\\d+),\\s*(-?\\d*\\.?\\d+),\\s*(-?\\d*\\.?\\d+),\\s*(-?\\d*\\.?\\d+),\\s*(-?\\d*\\.?\\d+)\\)/;\n const matches = transform.match(regex);\n let scaleX = 1;\n let scaleY = 1;\n\n if (matches) {\n scaleX = parseFloat(matches[1]);\n scaleY = parseFloat(matches[4]);\n if (!scaleX || !Number.isFinite(scaleX)) {\n scaleX = 1;\n }\n\n if (!scaleY || !Number.isFinite(scaleY)) {\n scaleY = 1;\n }\n }\n\n let margins = getMargins(overlayNode);\n overlaySize.width += margins.left + margins.right;\n overlaySize.height += margins.top + margins.bottom;\n\n if (scaleX) {\n overlaySize.width = overlaySize.width / scaleX;\n }\n if (scaleY) {\n overlaySize.height = overlaySize.height / scaleY;\n }\n\n let scrollSize = getScroll(scrollNode);\n let boundaryDimensions = getContainerDimensions(boundaryElement);\n let containerOffsetWithBoundary: Offset =\n boundaryElement.tagName === 'BODY'\n ? getOffset(container)\n : getPosition(container, boundaryElement);\n\n return calculatePositionInternal(\n placement,\n childOffset,\n overlaySize,\n scrollSize,\n margins,\n padding,\n shouldFlip,\n boundaryDimensions,\n containerOffsetWithBoundary,\n offset,\n crossOffset,\n isContainerPositioned,\n shouldOverlapWithTrigger\n );\n}\n"]}
1
+ {"version":3,"names":["getCss","getOffset","getPosition","getScrollLeft","getScrollTop","ownerDocument","getComputedStyle","AXIS","top","bottom","left","right","FLIPPED_DIRECTION","CROSS_AXIS","AXIS_SIZE","PARSED_PLACEMENT_CACHE","visualViewport","window","getContainerDimensions","containerNode","width","height","scroll","tagName","document","documentElement","clientWidth","clientHeight","getScroll","node","scrollTop","scrollLeft","scrollWidth","scrollHeight","getDelta","axis","offset","size","containerDimensions","padding","containerScroll","containerHeight","startEdgeOffset","endEdgeOffset","Math","max","getMargins","style","parseInt","marginTop","marginBottom","marginLeft","marginRight","parsePlacement","input","placement","crossPlacement","split","crossAxis","crossSize","computePosition","childOffset","boundaryDimensions","overlaySize","placementInfo","crossOffset","containerOffsetWithBoundary","isContainerPositioned","position","floor","getMaxHeight","margins","getAvailableSpace","calculatePositionInternal","placementInput","scrollSize","flip","shouldOverlapWithTrigger","normalizedOffset","space","flippedPlacementInfo","flippedPosition","flippedSpace","delta","maxHeight","min","arrowPosition","arrowOffsetLeft","arrowOffsetTop","calculatePosition","opts","targetNode","overlayNode","scrollNode","shouldFlip","boundaryElement","container","offsetParent","body","isBodyContainer","containerPositionStyle","matrix","getPropertyValue","transform","regex","matches","match","scaleX","scaleY","parseFloat","Number","isFinite"],"sourceRoot":"../../../../../src","sources":["web/overlays/src/calculatePosition.ts"],"mappings":"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"}
@@ -9,5 +9,6 @@
9
9
  * OF ANY KIND, either express or implied. See the License for the specific language
10
10
  * governing permissions and limitations under the License.
11
11
  */
12
+
12
13
  export * from './useOverlayPosition';
13
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,cAAc,sBAAd","sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './useOverlayPosition';\n"]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["web/overlays/src/index.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,cAAc,sBAAsB"}