@react-bootstrap/react-popper
Version:
React wrapper around Popper.js
2 lines (1 loc) • 9.82 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("popper.js")):"function"==typeof define&&define.amd?define(["exports","react","popper.js"],t):t(e.ReactPopper={},e.React,e.Popper)}(this,function(e,r,i){"use strict";var d="default"in r?r.default:r;i=i&&i.hasOwnProperty("default")?i.default:i;var t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function n(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function o(e,t){return e(t={exports:{}},t.exports),t.exports}var p=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,s=Object.prototype.propertyIsEnumerable;(function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return t[e]}).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}})()&&Object.assign;function c(){}var h=o(function(e){e.exports=function(){function e(e,t,n,r,o,p){if("SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"!==p){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}var n={array:e.isRequired=e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t};return n.checkPropTypes=c,n.PropTypes=n}()}),u="__global_unique_id__",y=function(){return t[u]=(t[u]||0)+1};function f(e){return function(){return e}}var l=function(){};l.thatReturns=f,l.thatReturnsFalse=f(!1),l.thatReturnsTrue=f(!0),l.thatReturnsNull=f(null),l.thatReturnsThis=function(){return this},l.thatReturnsArgument=function(e){return e};var v=l,m=o(function(e,t){t.__esModule=!0;n(d);var i=n(h),s=n(y);n(v);function n(e){return e&&e.__esModule?e:{default:e}}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function f(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var l=1073741823;t.default=function(e,a){var t,n,r="__create-react-context-"+(0,s.default)()+"__",o=function(i){function s(){var e,t,n,r;c(this,s);for(var o=arguments.length,p=Array(o),a=0;a<o;a++)p[a]=arguments[a];return(e=t=u(this,i.call.apply(i,[this].concat(p)))).emitter=(n=t.props.value,r=[],{on:function(e){r.push(e)},off:function(t){r=r.filter(function(e){return e!==t})},get:function(){return n},set:function(e,t){n=e,r.forEach(function(e){return e(n,t)})}}),u(t,e)}return f(s,i),s.prototype.getChildContext=function(){var e;return(e={})[r]=this.emitter,e},s.prototype.componentWillReceiveProps=function(e){if(this.props.value!==e.value){var t=this.props.value,n=e.value,r=void 0;((o=t)===(p=n)?0!==o||1/o==1/p:o!=o&&p!=p)?r=0:(r="function"==typeof a?a(t,n):l,0!=(r|=0)&&this.emitter.set(e.value,r))}var o,p},s.prototype.render=function(){return this.props.children},s}(d.Component);o.childContextTypes=((t={})[r]=i.default.object.isRequired,t);var p=function(p){function a(){var e,n;c(this,a);for(var t=arguments.length,r=Array(t),o=0;o<t;o++)r[o]=arguments[o];return(e=n=u(this,p.call.apply(p,[this].concat(r)))).state={value:n.getValue()},n.onUpdate=function(e,t){0!=((0|n.observedBits)&t)&&n.setState({value:n.getValue()})},u(n,e)}return f(a,p),a.prototype.componentWillReceiveProps=function(e){var t=e.observedBits;this.observedBits=null==t?l:t},a.prototype.componentDidMount=function(){this.context[r]&&this.context[r].on(this.onUpdate);var e=this.props.observedBits;this.observedBits=null==e?l:e},a.prototype.componentWillUnmount=function(){this.context[r]&&this.context[r].off(this.onUpdate)},a.prototype.getValue=function(){return this.context[r]?this.context[r].get():e},a.prototype.render=function(){return e=this.props.children,(Array.isArray(e)?e[0]:e)(this.state.value);var e},a}(d.Component);return p.contextTypes=((n={})[r]=i.default.object,n),{Provider:o,Consumer:p}},e.exports=t.default});n(m);var b=n(o(function(e,t){t.__esModule=!0;var n=o(d),r=o(m);function o(e){return e&&e.__esModule?e:{default:e}}t.default=n.default.createContext||r.default,e.exports=t.default})),g=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},O=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},w=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)},P=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t},_=b({getReferenceRef:void 0,referenceNode:void 0}),R=function(t){function n(){g(this,n);var e=P(this,t.call(this));return e.getReferenceRef=function(n){return e.setState(function(e){var t=e.context;return{context:O({},t,{referenceNode:n})}})},e.state={context:{getReferenceRef:e.getReferenceRef,referenceNode:void 0}},e}return w(n,t),n.prototype.render=function(){return r.createElement(_.Provider,{value:this.state.context},this.props.children)},n}(r.Component),E=function(e){return Array.isArray(e)?e[0]:e},j=function(e){for(var t=arguments.length,n=Array(1<t?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];if("function"==typeof e)return e.apply(void 0,n)},x={position:"absolute",top:0,left:0,opacity:0,pointerEvents:"none"},I={},N=function(p){function a(){var e,n;g(this,a);for(var t=arguments.length,r=Array(t),o=0;o<t;o++)r[o]=arguments[o];return(e=n=P(this,p.call.apply(p,[this].concat(r)))).state={data:void 0,placement:void 0},n.popperNode=null,n.arrowNode=null,n.setPopperNode=function(e){n.popperNode!==e&&(j(n.props.innerRef,e),n.popperNode=e,n.popperInstance||n.updatePopperInstance())},n.setArrowNode=function(e){n.arrowNode!==e&&(n.arrowNode=e,n.popperInstance||n.updatePopperInstance())},n.updateStateModifier={enabled:!0,order:900,fn:function(e){var t=e.placement;return n.setState({data:e,placement:t},t!==n.state.placement?n.scheduleUpdate:void 0),e}},n.getOptions=function(){return{placement:n.props.placement,eventsEnabled:n.props.eventsEnabled,positionFixed:n.props.positionFixed,modifiers:O({},n.props.modifiers,{arrow:{enabled:!!n.arrowNode,element:n.arrowNode},applyStyle:{enabled:!1},updateStateModifier:n.updateStateModifier})}},n.getPopperStyle=function(){return n.popperNode&&n.state.data?O({position:n.state.data.offsets.popper.position},n.state.data.styles):x},n.getPopperPlacement=function(){return n.state.data?n.state.placement:void 0},n.getArrowStyle=function(){return n.arrowNode&&n.state.data?n.state.data.arrowStyles:I},n.getOutOfBoundariesState=function(){return n.state.data?n.state.data.hide:void 0},n.destroyPopperInstance=function(){n.popperInstance&&(n.popperInstance.destroy(),n.popperInstance=null)},n.updatePopperInstance=function(){n.destroyPopperInstance();var e=n.popperNode,t=n.props.referenceElement;t&&e&&(n.popperInstance=new i(t,e,n.getOptions()))},n.scheduleUpdate=function(){n.popperInstance&&n.popperInstance.scheduleUpdate()},P(n,e)}return w(a,p),a.prototype.componentDidUpdate=function(e,t){this.props.placement!==e.placement||this.props.referenceElement!==e.referenceElement||this.props.positionFixed!==e.positionFixed?this.updatePopperInstance():this.props.eventsEnabled!==e.eventsEnabled&&this.popperInstance&&(this.props.eventsEnabled?this.popperInstance.enableEventListeners():this.popperInstance.disableEventListeners()),t.placement!==this.state.placement&&this.scheduleUpdate()},a.prototype.componentWillUnmount=function(){this.destroyPopperInstance()},a.prototype.render=function(){return E(this.props.children)({ref:this.setPopperNode,style:this.getPopperStyle(),placement:this.getPopperPlacement(),outOfBoundaries:this.getOutOfBoundariesState(),scheduleUpdate:this.scheduleUpdate,arrowProps:{ref:this.setArrowNode,style:this.getArrowStyle()}})},a}(r.Component);N.defaultProps={placement:"bottom",eventsEnabled:!0,referenceElement:void 0,positionFixed:!1};var S=i.placements;var C=function(){},T=function(p){function a(){var e,t;g(this,a);for(var n=arguments.length,r=Array(n),o=0;o<n;o++)r[o]=arguments[o];return(e=t=P(this,p.call.apply(p,[this].concat(r)))).refHandler=function(e){j(t.props.innerRef,e),j(t.props.getReferenceRef,e)},P(t,e)}return w(a,p),a.prototype.render=function(){return C(this.props.getReferenceRef,"`Reference` should not be used outside of a `Manager` component."),E(this.props.children)({ref:this.refHandler})},a}(r.Component);e.Popper=function(n){return r.createElement(_.Consumer,null,function(e){var t=e.referenceNode;return r.createElement(N,O({referenceElement:t},n))})},e.placements=S,e.Manager=R,e.Reference=function(n){return r.createElement(_.Consumer,null,function(e){var t=e.getReferenceRef;return r.createElement(T,O({getReferenceRef:t},n))})},Object.defineProperty(e,"__esModule",{value:!0})});