UNPKG

@popperjs/core

Version:

Tooltip and Popover Positioning Engine

7 lines (5 loc) 8.43 kB
/** * @popperjs/core v2.0.6 - MIT License */ "use strict";!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).Popper={})}(this,(function(e){function t(e){return{width:(e=e.getBoundingClientRect()).width,height:e.height,top:e.top,right:e.right,bottom:e.bottom,left:e.left,x:e.left,y:e.top}}function n(e){return"[object Window]"!==e.toString()?(e=e.ownerDocument)?e.defaultView:window:e}function o(e){return{scrollLeft:(e=n(e)).pageXOffset,scrollTop:e.pageYOffset}}function r(e){return e instanceof n(e).Element}function i(e){return e instanceof n(e).HTMLElement}function a(e){return e?(e.nodeName||"").toLowerCase():null}function s(e){return(r(e)?e.ownerDocument:e.document).documentElement}function f(e,r,f){void 0===f&&(f=!1),e=t(e);var c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return f||("body"!==a(r)&&(c=r!==n(r)&&i(r)?{scrollLeft:r.scrollLeft,scrollTop:r.scrollTop}:o(r)),i(r)?((p=t(r)).x+=r.clientLeft,p.y+=r.clientTop):(f=s(r))&&(r=p,f=t(s(f)).left+o(f).scrollLeft,r.x=f)),{x:e.left+c.scrollLeft-p.x,y:e.top+c.scrollTop-p.y,width:e.width,height:e.height}}function c(e){return"html"===a(e)?e:e.parentNode||e.host||document.ownerDocument||document.documentElement}function p(e){return n(e).getComputedStyle(e)}function u(e,t){void 0===t&&(t=[]);var o=function e(t){if(0<=["html","body","#document"].indexOf(a(t)))return t.ownerDocument.body;if(i(t)){var n=p(t);if(/auto|scroll|overlay|hidden/.test(n.overflow+n.overflowY+n.overflowX))return t}return e(c(t))}(e);return o=(e="body"===a(o))?n(o):o,t=t.concat(o),e?t:t.concat(u(c(o)))}function l(e){var t;return!i(e)||!(t=e.offsetParent)||void 0!==window.InstallTrigger&&"fixed"===p(t).position?null:t}function d(e){var t=n(e);for(e=l(e);e&&0<=["table","td","th"].indexOf(a(e));)e=l(e);return e&&"body"===a(e)&&"static"===p(e).position?t:e||t}function m(e){var t=new Map,n=new Set,o=[];return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||function e(r){n.add(r.name),[].concat(r.requires||[],r.requiresIfExists||[]).forEach((function(o){n.has(o)||(o=t.get(o))&&e(o)})),o.push(r)}(e)})),o}function h(e){var t;return function(){return t||(t=new Promise((function(n){Promise.resolve().then((function(){t=void 0,n(e())}))}))),t}}function v(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function b(e){void 0===e&&(e={});var t=e.defaultModifiers,n=void 0===t?[]:t,o=void 0===(e=e.defaultOptions)?w:e;return function(e,t,i){function a(){c.forEach((function(e){return e()})),c=[]}void 0===i&&(i=o);var s={placement:"bottom",orderedModifiers:[],options:Object.assign({},w,{},o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},c=[],p=!1,l={state:s,setOptions:function(i){return a(),s.options=Object.assign({},o,{},s.options,{},i),s.scrollParents={reference:r(e)?u(e):[],popper:u(t)},i=function(e){var t=m(e);return g.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])}(function(e){var t=e.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,{},t,{options:Object.assign({},n.options,{},t.options),data:Object.assign({},n.data,{},t.data)}):t,e}),{});return Object.keys(t).map((function(e){return t[e]}))}([].concat(n,s.options.modifiers))),s.orderedModifiers=i.filter((function(e){return e.enabled})),s.orderedModifiers.forEach((function(e){var t=e.name,n=e.options;n=void 0===n?{}:n,"function"==typeof(e=e.effect)&&(t=e({state:s,name:t,instance:l,options:n}),c.push(t||function(){}))})),l.update()},forceUpdate:function(){if(!p){var e=s.elements,t=e.reference;if(v(t,e=e.popper))for(s.rects={reference:f(t,d(e),"fixed"===s.options.strategy),popper:{x:e.offsetLeft,y:e.offsetTop,width:e.offsetWidth,height:e.offsetHeight}},s.reset=!1,s.placement=s.options.placement,s.orderedModifiers.forEach((function(e){return s.modifiersData[e.name]=Object.assign({},e.data)})),t=0;t<s.orderedModifiers.length;t++)if(!0===s.reset)s.reset=!1,t=-1;else{var n=s.orderedModifiers[t];e=n.fn;var o=n.options;o=void 0===o?{}:o,n=n.name,"function"==typeof e&&(s=e({state:s,options:o,name:n,instance:l})||s)}}},update:h((function(){return new Promise((function(e){l.forceUpdate(),e(s)}))})),destroy:function(){a(),p=!0}};return v(e,t)?(l.setOptions(i).then((function(e){!p&&i.onFirstUpdate&&i.onFirstUpdate(e)})),l):l}}function y(e){var t,o=e.popper,r=e.popperRect,i=e.placement,a=e.offsets,f=e.position,c=e.gpuAcceleration,p=e.adaptive,u=window.devicePixelRatio||1;e=Math.round(a.x*u)/u||0,u=Math.round(a.y*u)/u||0;var l=a.hasOwnProperty("x");a=a.hasOwnProperty("y");var m,h="left",v="top",b=window;if(p){var y=d(o);y===n(o)&&(y=s(o)),"top"===i&&(v="bottom",u-=y.clientHeight-r.height,u*=c?1:-1),"left"===i&&(h="right",e-=y.clientWidth-r.width,e*=c?1:-1)}return o=Object.assign({position:f},p&&x),c?Object.assign({},o,((m={})[v]=a?"0":"",m[h]=l?"0":"",m.transform=2>(b.devicePixelRatio||1)?"translate("+e+"px, "+u+"px)":"translate3d("+e+"px, "+u+"px, 0)",m)):Object.assign({},o,((t={})[v]=a?u+"px":"",t[h]=l?e+"px":"",t.transform="",t))}var g="beforeRead read afterRead beforeMain main afterMain beforeWrite write afterWrite".split(" "),w={placement:"bottom",modifiers:[],strategy:"absolute"},O={passive:!0},x={top:"auto",right:"auto",bottom:"auto",left:"auto"},j=[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,o=e.instance,r=(e=e.options).scroll,i=void 0===r||r,a=void 0===(e=e.resize)||e,s=n(t.elements.popper),f=[].concat(t.scrollParents.reference,t.scrollParents.popper);return i&&f.forEach((function(e){e.addEventListener("scroll",o.update,O)})),a&&s.addEventListener("resize",o.update,O),function(){i&&f.forEach((function(e){e.removeEventListener("scroll",o.update,O)})),a&&s.removeEventListener("resize",o.update,O)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state;e=e.name;var n=t.modifiersData,o=t.rects.reference,r=t.rects.popper,i=(t=t.placement)?t.split("-")[0]:null;t=t?t.split("-")[1]:null;var a=o.x+o.width/2-r.width/2,s=o.y+o.height/2-r.height/2;switch(i){case"top":a={x:a,y:o.y-r.height};break;case"bottom":a={x:a,y:o.y+o.height};break;case"right":a={x:o.x+o.width,y:s};break;case"left":a={x:o.x-r.width,y:s};break;default:a={x:o.x,y:o.y}}if(null!=(i=i?0<=["top","bottom"].indexOf(i)?"x":"y":null))switch(s="y"===i?"height":"width",t){case"start":a[i]=Math.floor(a[i])-Math.floor(o[s]/2-r[s]/2);break;case"end":a[i]=Math.floor(a[i])+Math.ceil(o[s]/2-r[s]/2)}n[e]=a},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options;e=void 0===(e=n.gpuAcceleration)||e,n=void 0===(n=n.adaptive)||n,e={placement:t.placement.split("-")[0],popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:e},t.styles.popper=Object.assign({},t.styles.popper,{},y(Object.assign({},e,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:n}))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,{},y(Object.assign({},e,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},{name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},o=t.attributes[e]||{},r=t.elements[e];i(r)&&a(r)&&(Object.assign(r.style,n),Object.keys(o).forEach((function(e){var t=o[e];!1===t?r.removeAttribute(e):r.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:"absolute",left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var o=t.elements[e],r=t.attributes[e]||{};e=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{}),i(o)&&a(o)&&(Object.assign(o.style,e),Object.keys(r).forEach((function(e){o.removeAttribute(e)})))}))}},requires:["computeStyles"]}],E=b({defaultModifiers:j});e.createPopper=E,e.defaultModifiers=j,e.popperGenerator=b,Object.defineProperty(e,"__esModule",{value:!0})})); //# sourceMappingURL=popper-lite.min.js.map