From da9b62ab8bd684d70e3b9f8aea67543fc8f0bddf Mon Sep 17 00:00:00 2001 From: Sergey Tihomirov Date: Thu, 1 Dec 2022 15:00:57 +0300 Subject: [PATCH] removed fixed width for ContextMenu --- build/rnpm.js | 658 +++++++++-------------------------- build/rnpm.js.map | 2 +- src/renderers/ContextMenu.js | 9 +- 3 files changed, 179 insertions(+), 490 deletions(-) diff --git a/build/rnpm.js b/build/rnpm.js index 1111c2d..a85cba5 100644 --- a/build/rnpm.js +++ b/build/rnpm.js @@ -14,32 +14,6 @@ }; } - function ownKeys(object, enumerableOnly) { - var keys = Object.keys(object); - - if (Object.getOwnPropertySymbols) { - var symbols = Object.getOwnPropertySymbols(object); - enumerableOnly && (symbols = symbols.filter(function (sym) { - return Object.getOwnPropertyDescriptor(object, sym).enumerable; - })), keys.push.apply(keys, symbols); - } - - return keys; - } - - function _objectSpread2(target) { - for (var i = 1; i < arguments.length; i++) { - var source = null != arguments[i] ? arguments[i] : {}; - i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { - _defineProperty(target, key, source[key]); - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { - Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); - }); - } - - return target; - } - function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); @@ -59,9 +33,6 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); - Object.defineProperty(Constructor, "prototype", { - writable: false - }); return Constructor; } @@ -81,7 +52,7 @@ } function _extends() { - _extends = Object.assign ? Object.assign.bind() : function (target) { + _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; @@ -94,9 +65,29 @@ return target; }; + return _extends.apply(this, arguments); } + function _objectSpread(target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i] != null ? arguments[i] : {}; + var ownKeys = Object.keys(source); + + if (typeof Object.getOwnPropertySymbols === 'function') { + ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { + return Object.getOwnPropertyDescriptor(source, sym).enumerable; + })); + } + + ownKeys.forEach(function (key) { + _defineProperty(target, key, source[key]); + }); + } + + return target; + } + function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); @@ -109,38 +100,23 @@ configurable: true } }); - Object.defineProperty(subClass, "prototype", { - writable: false - }); if (superClass) _setPrototypeOf(subClass, superClass); } function _getPrototypeOf(o) { - _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { + _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } function _setPrototypeOf(o, p) { - _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { + _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; - return _setPrototypeOf(o, p); - } - function _isNativeReflectConstruct() { - if (typeof Reflect === "undefined" || !Reflect.construct) return false; - if (Reflect.construct.sham) return false; - if (typeof Proxy === "function") return true; - - try { - Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); - return true; - } catch (e) { - return false; - } + return _setPrototypeOf(o, p); } function _objectWithoutPropertiesLoose(source, excluded) { @@ -190,32 +166,11 @@ function _possibleConstructorReturn(self, call) { if (call && (typeof call === "object" || typeof call === "function")) { return call; - } else if (call !== void 0) { - throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); } - function _createSuper(Derived) { - var hasNativeReflectConstruct = _isNativeReflectConstruct(); - - return function _createSuperInternal() { - var Super = _getPrototypeOf(Derived), - result; - - if (hasNativeReflectConstruct) { - var NewTarget = _getPrototypeOf(this).constructor; - - result = Reflect.construct(Super, arguments, NewTarget); - } else { - result = Super.apply(this, arguments); - } - - return _possibleConstructorReturn(this, result); - }; - } - /** * Promisifies measure's callback function and returns layout object. */ @@ -294,12 +249,16 @@ function deprecatedComponent(message) { var methods = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; return function deprecatedComponentHOC(Component) { - return /*#__PURE__*/function (_React$Component) { - _inherits(DeprecatedComponent, _React$Component); + var _temp; - var _super = _createSuper(DeprecatedComponent); + return _temp = + /*#__PURE__*/ + function (_React$Component) { + _inherits(DeprecatedComponent, _React$Component); function DeprecatedComponent() { + var _getPrototypeOf2; + var _this; _classCallCheck(this, DeprecatedComponent); @@ -308,9 +267,9 @@ args[_key2] = arguments[_key2]; } - _this = _super.call.apply(_super, [this].concat(args)); + _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(DeprecatedComponent)).call.apply(_getPrototypeOf2, [this].concat(args))); - _defineProperty(_assertThisInitialized(_this), "onRef", function (ref) { + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onRef", function (ref) { return _this.ref = ref; }); @@ -328,7 +287,7 @@ _createClass(DeprecatedComponent, [{ key: "render", value: function render() { - return /*#__PURE__*/React__default.createElement(Component, _extends({}, this.props, { + return React__default.createElement(Component, _extends({}, this.props, { ref: this.onRef })); } @@ -340,7 +299,7 @@ }]); return DeprecatedComponent; - }(React__default.Component); + }(React__default.Component), _temp; }; } @@ -348,214 +307,6 @@ return module = { exports: {} }, fn(module, module.exports), module.exports; } - var reactIs_development = createCommonjsModule(function (module, exports) { - - - - { - (function() { - - // The Symbol used to tag the ReactElement-like types. If there is no native Symbol - // nor polyfill, then a plain number is used for performance. - var hasSymbol = typeof Symbol === 'function' && Symbol.for; - var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7; - var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca; - var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb; - var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc; - var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2; - var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd; - var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary - // (unstable) APIs that have been removed. Can we remove the symbols? - - var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf; - var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf; - var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0; - var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1; - var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8; - var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3; - var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4; - var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9; - var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5; - var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6; - var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7; - - function isValidElementType(type) { - return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill. - type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE); - } - - function typeOf(object) { - if (typeof object === 'object' && object !== null) { - var $$typeof = object.$$typeof; - - switch ($$typeof) { - case REACT_ELEMENT_TYPE: - var type = object.type; - - switch (type) { - case REACT_ASYNC_MODE_TYPE: - case REACT_CONCURRENT_MODE_TYPE: - case REACT_FRAGMENT_TYPE: - case REACT_PROFILER_TYPE: - case REACT_STRICT_MODE_TYPE: - case REACT_SUSPENSE_TYPE: - return type; - - default: - var $$typeofType = type && type.$$typeof; - - switch ($$typeofType) { - case REACT_CONTEXT_TYPE: - case REACT_FORWARD_REF_TYPE: - case REACT_LAZY_TYPE: - case REACT_MEMO_TYPE: - case REACT_PROVIDER_TYPE: - return $$typeofType; - - default: - return $$typeof; - } - - } - - case REACT_PORTAL_TYPE: - return $$typeof; - } - } - - return undefined; - } // AsyncMode is deprecated along with isAsyncMode - - var AsyncMode = REACT_ASYNC_MODE_TYPE; - var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE; - var ContextConsumer = REACT_CONTEXT_TYPE; - var ContextProvider = REACT_PROVIDER_TYPE; - var Element = REACT_ELEMENT_TYPE; - var ForwardRef = REACT_FORWARD_REF_TYPE; - var Fragment = REACT_FRAGMENT_TYPE; - var Lazy = REACT_LAZY_TYPE; - var Memo = REACT_MEMO_TYPE; - var Portal = REACT_PORTAL_TYPE; - var Profiler = REACT_PROFILER_TYPE; - var StrictMode = REACT_STRICT_MODE_TYPE; - var Suspense = REACT_SUSPENSE_TYPE; - var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated - - function isAsyncMode(object) { - { - if (!hasWarnedAboutDeprecatedIsAsyncMode) { - hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint - - console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.'); - } - } - - return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE; - } - function isConcurrentMode(object) { - return typeOf(object) === REACT_CONCURRENT_MODE_TYPE; - } - function isContextConsumer(object) { - return typeOf(object) === REACT_CONTEXT_TYPE; - } - function isContextProvider(object) { - return typeOf(object) === REACT_PROVIDER_TYPE; - } - function isElement(object) { - return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; - } - function isForwardRef(object) { - return typeOf(object) === REACT_FORWARD_REF_TYPE; - } - function isFragment(object) { - return typeOf(object) === REACT_FRAGMENT_TYPE; - } - function isLazy(object) { - return typeOf(object) === REACT_LAZY_TYPE; - } - function isMemo(object) { - return typeOf(object) === REACT_MEMO_TYPE; - } - function isPortal(object) { - return typeOf(object) === REACT_PORTAL_TYPE; - } - function isProfiler(object) { - return typeOf(object) === REACT_PROFILER_TYPE; - } - function isStrictMode(object) { - return typeOf(object) === REACT_STRICT_MODE_TYPE; - } - function isSuspense(object) { - return typeOf(object) === REACT_SUSPENSE_TYPE; - } - - exports.AsyncMode = AsyncMode; - exports.ConcurrentMode = ConcurrentMode; - exports.ContextConsumer = ContextConsumer; - exports.ContextProvider = ContextProvider; - exports.Element = Element; - exports.ForwardRef = ForwardRef; - exports.Fragment = Fragment; - exports.Lazy = Lazy; - exports.Memo = Memo; - exports.Portal = Portal; - exports.Profiler = Profiler; - exports.StrictMode = StrictMode; - exports.Suspense = Suspense; - exports.isAsyncMode = isAsyncMode; - exports.isConcurrentMode = isConcurrentMode; - exports.isContextConsumer = isContextConsumer; - exports.isContextProvider = isContextProvider; - exports.isElement = isElement; - exports.isForwardRef = isForwardRef; - exports.isFragment = isFragment; - exports.isLazy = isLazy; - exports.isMemo = isMemo; - exports.isPortal = isPortal; - exports.isProfiler = isProfiler; - exports.isStrictMode = isStrictMode; - exports.isSuspense = isSuspense; - exports.isValidElementType = isValidElementType; - exports.typeOf = typeOf; - })(); - } - }); - var reactIs_development_1 = reactIs_development.AsyncMode; - var reactIs_development_2 = reactIs_development.ConcurrentMode; - var reactIs_development_3 = reactIs_development.ContextConsumer; - var reactIs_development_4 = reactIs_development.ContextProvider; - var reactIs_development_5 = reactIs_development.Element; - var reactIs_development_6 = reactIs_development.ForwardRef; - var reactIs_development_7 = reactIs_development.Fragment; - var reactIs_development_8 = reactIs_development.Lazy; - var reactIs_development_9 = reactIs_development.Memo; - var reactIs_development_10 = reactIs_development.Portal; - var reactIs_development_11 = reactIs_development.Profiler; - var reactIs_development_12 = reactIs_development.StrictMode; - var reactIs_development_13 = reactIs_development.Suspense; - var reactIs_development_14 = reactIs_development.isAsyncMode; - var reactIs_development_15 = reactIs_development.isConcurrentMode; - var reactIs_development_16 = reactIs_development.isContextConsumer; - var reactIs_development_17 = reactIs_development.isContextProvider; - var reactIs_development_18 = reactIs_development.isElement; - var reactIs_development_19 = reactIs_development.isForwardRef; - var reactIs_development_20 = reactIs_development.isFragment; - var reactIs_development_21 = reactIs_development.isLazy; - var reactIs_development_22 = reactIs_development.isMemo; - var reactIs_development_23 = reactIs_development.isPortal; - var reactIs_development_24 = reactIs_development.isProfiler; - var reactIs_development_25 = reactIs_development.isStrictMode; - var reactIs_development_26 = reactIs_development.isSuspense; - var reactIs_development_27 = reactIs_development.isValidElementType; - var reactIs_development_28 = reactIs_development.typeOf; - - var reactIs = createCommonjsModule(function (module) { - - { - module.exports = reactIs_development; - } - }); - /* object-assign (c) Sindre Sorhus @@ -656,14 +407,11 @@ var ReactPropTypesSecret_1 = ReactPropTypesSecret; - var has = Function.call.bind(Object.prototype.hasOwnProperty); - var printWarning = function() {}; { var ReactPropTypesSecret$1 = ReactPropTypesSecret_1; var loggedTypeFailures = {}; - var has$1 = has; printWarning = function(text) { var message = 'Warning: ' + text; @@ -675,7 +423,7 @@ // This error was thrown as a convenience so that you can use this stack // to find the callsite that caused this warning to fire. throw new Error(message); - } catch (x) { /**/ } + } catch (x) {} }; } @@ -693,7 +441,7 @@ function checkPropTypes(typeSpecs, values, location, componentName, getStack) { { for (var typeSpecName in typeSpecs) { - if (has$1(typeSpecs, typeSpecName)) { + if (typeSpecs.hasOwnProperty(typeSpecName)) { var error; // Prop type validation may throw. In case they do, we don't want to // fail the render phase where it didn't fail before. So we log it. @@ -704,8 +452,7 @@ if (typeof typeSpecs[typeSpecName] !== 'function') { var err = Error( (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + - 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + - 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' ); err.name = 'Invariant Violation'; throw err; @@ -723,6 +470,7 @@ 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).' ); + } if (error instanceof Error && !(error.message in loggedTypeFailures)) { // Only monitor this failure once because there tends to be a lot of the @@ -740,17 +488,6 @@ } } - /** - * Resets warning cache when testing. - * - * @private - */ - checkPropTypes.resetWarningCache = function() { - { - loggedTypeFailures = {}; - } - }; - var checkPropTypes_1 = checkPropTypes; var printWarning$1 = function() {}; @@ -853,7 +590,6 @@ // Keep this list in sync with production version in `./factoryWithThrowingShims.js`. var ReactPropTypes = { array: createPrimitiveTypeChecker('array'), - bigint: createPrimitiveTypeChecker('bigint'), bool: createPrimitiveTypeChecker('boolean'), func: createPrimitiveTypeChecker('function'), number: createPrimitiveTypeChecker('number'), @@ -864,7 +600,6 @@ any: createAnyTypeChecker(), arrayOf: createArrayOfTypeChecker, element: createElementTypeChecker(), - elementType: createElementTypeTypeChecker(), instanceOf: createInstanceTypeChecker, node: createNodeChecker(), objectOf: createObjectOfTypeChecker, @@ -899,9 +634,8 @@ * is prohibitively expensive if they are created too often, such as what * happens in oneOfType() for any type before the one that matched. */ - function PropTypeError(message, data) { + function PropTypeError(message) { this.message = message; - this.data = data && typeof data === 'object' ? data: {}; this.stack = ''; } // Make `instanceof Error` still work for returned errors. @@ -936,7 +670,7 @@ ) { printWarning$1( 'You are manually calling a React.PropTypes validation ' + - 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' + + 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' + 'and will throw in the standalone `prop-types` package. ' + 'You may be seeing this warning due to a third-party PropTypes ' + 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.' @@ -975,10 +709,7 @@ // 'of type `object`'. var preciseType = getPreciseType(propValue); - return new PropTypeError( - 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'), - {expectedType: expectedType} - ); + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.')); } return null; } @@ -1022,18 +753,6 @@ return createChainableTypeChecker(validate); } - function createElementTypeTypeChecker() { - function validate(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - if (!reactIs.isValidElementType(propValue)) { - var propType = getPropType(propValue); - return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.')); - } - return null; - } - return createChainableTypeChecker(validate); - } - function createInstanceTypeChecker(expectedClass) { function validate(props, propName, componentName, location, propFullName) { if (!(props[propName] instanceof expectedClass)) { @@ -1048,16 +767,7 @@ function createEnumTypeChecker(expectedValues) { if (!Array.isArray(expectedValues)) { - { - if (arguments.length > 1) { - printWarning$1( - 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' + - 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).' - ); - } else { - printWarning$1('Invalid argument supplied to oneOf, expected an array.'); - } - } + printWarning$1('Invalid argument supplied to oneOf, expected an instance of array.'); return emptyFunctionThatReturnsNull; } @@ -1069,14 +779,8 @@ } } - var valuesString = JSON.stringify(expectedValues, function replacer(key, value) { - var type = getPreciseType(value); - if (type === 'symbol') { - return String(value); - } - return value; - }); - return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.')); + var valuesString = JSON.stringify(expectedValues); + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.')); } return createChainableTypeChecker(validate); } @@ -1092,7 +796,7 @@ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.')); } for (var key in propValue) { - if (has(propValue, key)) { + if (propValue.hasOwnProperty(key)) { var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret_1); if (error instanceof Error) { return error; @@ -1122,19 +826,14 @@ } function validate(props, propName, componentName, location, propFullName) { - var expectedTypes = []; for (var i = 0; i < arrayOfTypeCheckers.length; i++) { var checker = arrayOfTypeCheckers[i]; - var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret_1); - if (checkerResult == null) { + if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret_1) == null) { return null; } - if (checkerResult.data && has(checkerResult.data, 'expectedType')) { - expectedTypes.push(checkerResult.data.expectedType); - } } - var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': ''; - return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.')); + + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.')); } return createChainableTypeChecker(validate); } @@ -1149,13 +848,6 @@ return createChainableTypeChecker(validate); } - function invalidValidatorError(componentName, location, propFullName, key, type) { - return new PropTypeError( - (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' + - 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.' - ); - } - function createShapeTypeChecker(shapeTypes) { function validate(props, propName, componentName, location, propFullName) { var propValue = props[propName]; @@ -1165,8 +857,8 @@ } for (var key in shapeTypes) { var checker = shapeTypes[key]; - if (typeof checker !== 'function') { - return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker)); + if (!checker) { + continue; } var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret_1); if (error) { @@ -1185,18 +877,16 @@ if (propType !== 'object') { return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.')); } - // We need to check all keys in case some are required but missing from props. + // We need to check all keys in case some are required but missing from + // props. var allKeys = objectAssign({}, props[propName], shapeTypes); for (var key in allKeys) { var checker = shapeTypes[key]; - if (has(shapeTypes, key) && typeof checker !== 'function') { - return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker)); - } if (!checker) { return new PropTypeError( 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' + '\nBad object: ' + JSON.stringify(props[propName], null, ' ') + - '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ') + '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ') ); } var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret_1); @@ -1263,11 +953,6 @@ return true; } - // falsy value can't be a Symbol - if (!propValue) { - return false; - } - // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol' if (propValue['@@toStringTag'] === 'Symbol') { return true; @@ -1342,7 +1027,6 @@ } ReactPropTypes.checkPropTypes = checkPropTypes_1; - ReactPropTypes.resetWarningCache = checkPropTypes_1.resetWarningCache; ReactPropTypes.PropTypes = ReactPropTypes; return ReactPropTypes; @@ -1357,28 +1041,36 @@ */ { - var ReactIs = reactIs; + var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' && + Symbol.for && + Symbol.for('react.element')) || + 0xeac7; + + var isValidElement = function(object) { + return typeof object === 'object' && + object !== null && + object.$$typeof === REACT_ELEMENT_TYPE; + }; // By explicitly using `prop-types` you are opting into new development behavior. // http://fb.me/prop-types-in-prod var throwOnDirectAccess = true; - module.exports = factoryWithTypeCheckers(ReactIs.isElement, throwOnDirectAccess); + module.exports = factoryWithTypeCheckers(isValidElement, throwOnDirectAccess); } }); - var _excluded = ["forwardedRef"]; function withContext(Context) { var propName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "context"; return function wrap(Component) { - var EnhanceContext = /*#__PURE__*/function (_React$Component) { + var EnhanceContext = + /*#__PURE__*/ + function (_React$Component) { _inherits(EnhanceContext, _React$Component); - var _super = _createSuper(EnhanceContext); - function EnhanceContext() { _classCallCheck(this, EnhanceContext); - return _super.apply(this, arguments); + return _possibleConstructorReturn(this, _getPrototypeOf(EnhanceContext).apply(this, arguments)); } _createClass(EnhanceContext, [{ @@ -1386,13 +1078,13 @@ value: function render() { var _this$props = this.props, forwardedRef = _this$props.forwardedRef, - rest = _objectWithoutProperties(_this$props, _excluded); + rest = _objectWithoutProperties(_this$props, ["forwardedRef"]); - return /*#__PURE__*/React__default.createElement(Context.Consumer, null, function (value) { + return React__default.createElement(Context.Consumer, null, function (value) { var _custom; var custom = (_custom = {}, _defineProperty(_custom, propName, value), _defineProperty(_custom, "ref", forwardedRef), _custom); - return /*#__PURE__*/React__default.createElement(Component, _extends({}, custom, rest)); + return React__default.createElement(Component, _extends({}, custom, rest)); }); } }]); @@ -1404,7 +1096,7 @@ var consumerName = Context.Consumer.displayName || Context.Consumer.name || "Context.Consumer"; function enhanceForwardRef(props, ref) { - return /*#__PURE__*/React__default.createElement(EnhanceContext, _extends({}, props, { + return React__default.createElement(EnhanceContext, _extends({}, props, { forwardedRef: ref })); } @@ -1484,7 +1176,7 @@ return; } - var menu = _objectSpread2(_objectSpread2({}, menus.get(name)), {}, { + var menu = _objectSpread({}, menus.get(name), { optionsCustomStyles: optionsCustomStyles }); @@ -1521,12 +1213,14 @@ var CLOSE_ANIM_DURATION = 195; var USE_NATIVE_DRIVER = reactNative.Platform.OS !== "web"; - var Backdrop = /*#__PURE__*/function (_Component) { + var Backdrop = + /*#__PURE__*/ + function (_Component) { _inherits(Backdrop, _Component); - var _super = _createSuper(Backdrop); - function Backdrop() { + var _getPrototypeOf2; + var _this; _classCallCheck(this, Backdrop); @@ -1535,7 +1229,7 @@ args[_key] = arguments[_key]; } - _this = _super.call.apply(_super, [this].concat(args)); + _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(Backdrop)).call.apply(_getPrototypeOf2, [this].concat(args))); _this.fadeAnim = new reactNative.Animated.Value(0.001); return _this; } @@ -1572,13 +1266,13 @@ var _this$props = this.props, onPress = _this$props.onPress, style = _this$props.style; - return /*#__PURE__*/React__default.createElement(reactNative.TouchableWithoutFeedback, { + return React__default.createElement(reactNative.TouchableWithoutFeedback, { onPress: onPress - }, /*#__PURE__*/React__default.createElement(reactNative.Animated.View, { + }, React__default.createElement(reactNative.Animated.View, { style: [styles.fullscreen, { opacity: this.fadeAnim }] - }, /*#__PURE__*/React__default.createElement(reactNative.View, { + }, React__default.createElement(reactNative.View, { style: [styles.fullscreen, style] }))); } @@ -1603,11 +1297,11 @@ var CFG = { debug: false - }; - /** - * Debug logger depending on `Menu.debug` static porperty. - */ + /** + * Debug logger depending on `Menu.debug` static porperty. + */ + }; var debug = function debug() { var _console; @@ -1618,17 +1312,17 @@ CFG.debug && (_console = console).log.apply(_console, ['react-native-popup-menu'].concat(args)); }; - var MenuPlaceholder = /*#__PURE__*/function (_Component) { + var MenuPlaceholder = + /*#__PURE__*/ + function (_Component) { _inherits(MenuPlaceholder, _Component); - var _super = _createSuper(MenuPlaceholder); - function MenuPlaceholder(props) { var _this; _classCallCheck(this, MenuPlaceholder); - _this = _super.call(this, props); + _this = _possibleConstructorReturn(this, _getPrototypeOf(MenuPlaceholder).call(this, props)); _this.state = {}; return _this; } @@ -1654,9 +1348,9 @@ return null; } - return /*#__PURE__*/React__default.createElement(reactNative.View, { + return React__default.createElement(reactNative.View, { style: styles$1.placeholder - }, /*#__PURE__*/React__default.createElement(Backdrop, { + }, React__default.createElement(Backdrop, { onPress: ctx._onBackdropPress, style: backdropStyles, ref: ctx.onBackdropRef @@ -1677,7 +1371,6 @@ } }); - var _excluded$1 = ["style", "children", "layouts"]; var computePosition = function computePosition(_ref) { var windowLayout = _ref.windowLayout; return { @@ -1690,10 +1383,10 @@ var style = props.style, children = props.children, layouts = props.layouts, - other = _objectWithoutProperties(props, _excluded$1); + other = _objectWithoutProperties(props, ["style", "children", "layouts"]); var position = computePosition(layouts); - return /*#__PURE__*/React__default.createElement(reactNative.View, _extends({}, other, { + return React__default.createElement(reactNative.View, _extends({}, other, { style: [styles$2.options, style, position], collapsable: false }), children); @@ -1722,19 +1415,19 @@ var instanceCount = 0; - var MenuProvider = /*#__PURE__*/function (_Component) { + var MenuProvider = + /*#__PURE__*/ + function (_Component) { _inherits(MenuProvider, _Component); - var _super = _createSuper(MenuProvider); - function MenuProvider(props) { var _this; _classCallCheck(this, MenuProvider); - _this = _super.call(this, props); + _this = _possibleConstructorReturn(this, _getPrototypeOf(MenuProvider).call(this, props)); - _defineProperty(_assertThisInitialized(_this), "_handleBackButton", function () { + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "_handleBackButton", function () { var backHandler = _this.props.backHandler; debug('_handleBackButton called', backHandler); // Default handler if true is passed @@ -1748,25 +1441,25 @@ if (typeof backHandler === 'function') { - return backHandler(_assertThisInitialized(_this)); + return backHandler(_assertThisInitialized(_assertThisInitialized(_this))); } return false; }); - _defineProperty(_assertThisInitialized(_this), "onBackdropRef", function (r) { + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onBackdropRef", function (r) { _this.backdropRef = r; }); - _defineProperty(_assertThisInitialized(_this), "onOptionsRef", function (r) { + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onOptionsRef", function (r) { _this.optionsRef = r; }); - _defineProperty(_assertThisInitialized(_this), "_onPlaceholderRef", function (r) { + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "_onPlaceholderRef", function (r) { return _this._placeholderRef = r; }); - _defineProperty(_assertThisInitialized(_this), "_onBackdropPress", function () { + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "_onBackdropPress", function () { debug('on backdrop press'); var menu = _this._getOpenedMenu(); @@ -1778,7 +1471,7 @@ _this.closeMenu(); }); - _defineProperty(_assertThisInitialized(_this), "_onLayout", function (_ref) { + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "_onLayout", function (_ref) { var layout = _ref.nativeEvent.layout; if (layoutsEqual(_this._ownLayout, layout)) { @@ -1809,7 +1502,7 @@ }); }); - _defineProperty(_assertThisInitialized(_this), "_onSafeAreaLayout", function (_ref2) { + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "_onSafeAreaLayout", function (_ref2) { var layout = _ref2.nativeEvent.layout; if (layoutsEqual(_this._safeAreaLayout, layout)) { @@ -2072,22 +1765,22 @@ style = _this$props2.style, customStyles = _this$props2.customStyles; debug('render menu', this.isMenuOpen(), this._ownLayout); - return /*#__PURE__*/React__default.createElement(PopupMenuContext.Provider, { + return React__default.createElement(PopupMenuContext.Provider, { value: this.menuCtx - }, /*#__PURE__*/React__default.createElement(reactNative.View, { + }, React__default.createElement(reactNative.View, { style: styles$3.flex1, onLayout: this._onLayout - }, /*#__PURE__*/React__default.createElement(reactNative.View, { + }, React__default.createElement(reactNative.View, { style: [styles$3.flex1, customStyles.menuContextWrapper, customStyles.menuProviderWrapper, style] - }, this.props.children), /*#__PURE__*/React__default.createElement(reactNative.SafeAreaView, { + }, this.props.children), React__default.createElement(reactNative.SafeAreaView, { style: styles$3.safeArea, pointerEvents: "box-none" - }, /*#__PURE__*/React__default.createElement(reactNative.View, { + }, React__default.createElement(reactNative.View, { style: styles$3.flex1, collapsable: false, pointerEvents: "box-none", onLayout: this._onSafeAreaLayout - }), /*#__PURE__*/React__default.createElement(MenuPlaceholder, { + }), React__default.createElement(MenuPlaceholder, { ctx: this, backdropStyles: customStyles.backdrop, ref: this._onPlaceholderRef @@ -2176,7 +1869,7 @@ safeAreaLayout: safeAreaLayout }; - var props = _objectSpread2(_objectSpread2({}, rendererProps), {}, { + var props = _objectSpread({}, rendererProps, { style: style, onLayout: onLayout, layouts: layouts @@ -2217,15 +1910,15 @@ } }); - var MenuOptions = /*#__PURE__*/function (_React$Component) { + var MenuOptions = + /*#__PURE__*/ + function (_React$Component) { _inherits(MenuOptions, _React$Component); - var _super = _createSuper(MenuOptions); - function MenuOptions() { _classCallCheck(this, MenuOptions); - return _super.apply(this, arguments); + return _possibleConstructorReturn(this, _getPrototypeOf(MenuOptions).apply(this, arguments)); } _createClass(MenuOptions, [{ @@ -2257,7 +1950,7 @@ customStyles = _this$props.customStyles, style = _this$props.style, children = _this$props.children; - return /*#__PURE__*/React__default.createElement(reactNative.View, { + return React__default.createElement(reactNative.View, { style: [customStyles.optionsWrapper, style] }, children); } @@ -2275,16 +1968,15 @@ }; var MenuOptions$1 = withCtx(MenuOptions); - var _excluded$2 = ["disabled", "onRef", "text", "children", "style", "customStyles", "menuName", "triggerOnLongPress", "onAlternativeAction", "testID"]; - var MenuTrigger = /*#__PURE__*/function (_Component) { + var MenuTrigger = + /*#__PURE__*/ + function (_Component) { _inherits(MenuTrigger, _Component); - var _super = _createSuper(MenuTrigger); - function MenuTrigger() { _classCallCheck(this, MenuTrigger); - return _super.apply(this, arguments); + return _possibleConstructorReturn(this, _getPrototypeOf(MenuTrigger).apply(this, arguments)); } _createClass(MenuTrigger, [{ @@ -2310,7 +2002,7 @@ triggerOnLongPress = _this$props.triggerOnLongPress, onAlternativeAction = _this$props.onAlternativeAction, testID = _this$props.testID, - other = _objectWithoutProperties(_this$props, _excluded$2); + other = _objectWithoutProperties(_this$props, ["disabled", "onRef", "text", "children", "style", "customStyles", "menuName", "triggerOnLongPress", "onAlternativeAction", "testID"]); var onPress = function onPress() { return !disabled && _this._onPress(); @@ -2320,17 +2012,17 @@ Touchable = _makeTouchable.Touchable, defaultTouchableProps = _makeTouchable.defaultTouchableProps; - return /*#__PURE__*/React__default.createElement(reactNative.View, { + return React__default.createElement(reactNative.View, { ref: onRef, collapsable: false, style: customStyles.triggerOuterWrapper - }, /*#__PURE__*/React__default.createElement(Touchable, _extends({ + }, React__default.createElement(Touchable, _extends({ testID: testID, onPress: triggerOnLongPress ? onAlternativeAction : onPress, onLongPress: triggerOnLongPress ? onPress : onAlternativeAction - }, defaultTouchableProps, customStyles.triggerTouchable), /*#__PURE__*/React__default.createElement(reactNative.View, _extends({}, other, { + }, defaultTouchableProps, customStyles.triggerTouchable), React__default.createElement(reactNative.View, _extends({}, other, { style: [customStyles.triggerWrapper, style] - }), text ? /*#__PURE__*/React__default.createElement(reactNative.Text, { + }), text ? React__default.createElement(reactNative.Text, { style: customStyles.triggerText }, text) : children))); } @@ -2354,8 +2046,6 @@ }; var MenuTrigger$1 = withCtx(MenuTrigger); - var _excluded$3 = ["style", "children", "layouts"]; - var axisPosition = function axisPosition(oDim, wDim, tPos, tDim) { // if options are bigger than window dimension, then render at 0 if (oDim > wDim) { @@ -2458,17 +2148,17 @@ return fitPositionIntoSafeArea(position, layouts); }; - var ContextMenu = /*#__PURE__*/function (_React$Component) { + var ContextMenu = + /*#__PURE__*/ + function (_React$Component) { _inherits(ContextMenu, _React$Component); - var _super = _createSuper(ContextMenu); - function ContextMenu(props) { var _this; _classCallCheck(this, ContextMenu); - _this = _super.call(this, props); + _this = _possibleConstructorReturn(this, _getPrototypeOf(ContextMenu).call(this, props)); _this.state = { scaleAnim: new reactNative.Animated.Value(0.1) }; @@ -2506,7 +2196,7 @@ style = _this$props.style, children = _this$props.children, layouts = _this$props.layouts, - other = _objectWithoutProperties(_this$props, _excluded$3); + other = _objectWithoutProperties(_this$props, ["style", "children", "layouts"]); var animation = { transform: [{ @@ -2515,9 +2205,11 @@ opacity: this.state.scaleAnim }; var position = computePosition$1(layouts, reactNative.I18nManager.isRTL); - return /*#__PURE__*/React__default.createElement(reactNative.Animated.View, _extends({}, other, { - style: [styles$4.options, style, animation, position] - }), children); + return React__default.createElement(reactNative.Animated.View, { + style: [styles$4.options, animation, position] + }, React__default.createElement(reactNative.View, _extends({}, other, { + style: [styles$4.options, style] + }), children)); } }]); @@ -2530,7 +2222,6 @@ position: 'absolute', borderRadius: 2, backgroundColor: 'white', - width: reactNative.PixelRatio.roundToNearestPixel(200), // Shadow only works on iOS. shadowColor: 'black', shadowOpacity: 0.3, @@ -2556,17 +2247,17 @@ return c.type === MenuOptions$1; }; - var Menu = /*#__PURE__*/function (_Component) { + var Menu = + /*#__PURE__*/ + function (_Component) { _inherits(Menu, _Component); - var _super = _createSuper(Menu); - function Menu(props) { var _this; _classCallCheck(this, Menu); - _this = _super.call(this, props); + _this = _possibleConstructorReturn(this, _getPrototypeOf(Menu).call(this, props)); _this._name = _this.props.name || makeName(); _this._forceClose = false; var ctx = props.ctx; @@ -2647,7 +2338,7 @@ var children = this._reduceChildren(); - return /*#__PURE__*/React__default.createElement(reactNative.View, { + return React__default.createElement(reactNative.View, { style: style }, children); } @@ -2752,15 +2443,15 @@ Menu.defaultProps.rendererProps = rendererProps; }; - var MenuOption = /*#__PURE__*/function (_Component) { + var MenuOption = + /*#__PURE__*/ + function (_Component) { _inherits(MenuOption, _Component); - var _super = _createSuper(MenuOption); - function MenuOption() { _classCallCheck(this, MenuOption); - return _super.apply(this, arguments); + return _possibleConstructorReturn(this, _getPrototypeOf(MenuOption).apply(this, arguments)); } _createClass(MenuOption, [{ @@ -2790,7 +2481,7 @@ // FIXME react 16.3 workaround for ControlledExample! var menu = this.props.ctx.menuActions._getOpenedMenu() || {}; var optionsCustomStyles = menu.optionsCustomStyles; - return _objectSpread2(_objectSpread2({}, optionsCustomStyles), this.props.customStyles); + return _objectSpread({}, optionsCustomStyles, this.props.customStyles); } }, { key: "render", @@ -2813,16 +2504,16 @@ if (disabled) { var disabledStyles = [defaultStyles.optionTextDisabled, customStyles.optionText]; - return /*#__PURE__*/React__default.createElement(reactNative.View, { + return React__default.createElement(reactNative.View, { style: [defaultStyles.option, customStyles.optionWrapper, style] - }, text ? /*#__PURE__*/React__default.createElement(reactNative.Text, { + }, text ? React__default.createElement(reactNative.Text, { style: disabledStyles }, text) : children); } - var rendered = /*#__PURE__*/React__default.createElement(reactNative.View, { + var rendered = React__default.createElement(reactNative.View, { style: [defaultStyles.option, customStyles.optionWrapper, style] - }, text ? /*#__PURE__*/React__default.createElement(reactNative.Text, { + }, text ? React__default.createElement(reactNative.Text, { style: customStyles.optionText }, text) : children); @@ -2833,7 +2524,7 @@ Touchable = _makeTouchable.Touchable, defaultTouchableProps = _makeTouchable.defaultTouchableProps; - return /*#__PURE__*/React__default.createElement(Touchable, _extends({ + return React__default.createElement(Touchable, _extends({ testID: testID, onPress: function onPress() { return _this._onSelect(); @@ -2871,20 +2562,19 @@ }); var MenuOption$1 = withCtx(MenuOption); - var _excluded$4 = ["style", "children", "layouts"]; /** Simplified version of ContextMenu without animation. */ - var NotAnimatedContextMenu = /*#__PURE__*/function (_React$Component) { + var NotAnimatedContextMenu = + /*#__PURE__*/ + function (_React$Component) { _inherits(NotAnimatedContextMenu, _React$Component); - var _super = _createSuper(NotAnimatedContextMenu); - function NotAnimatedContextMenu() { _classCallCheck(this, NotAnimatedContextMenu); - return _super.apply(this, arguments); + return _possibleConstructorReturn(this, _getPrototypeOf(NotAnimatedContextMenu).apply(this, arguments)); } _createClass(NotAnimatedContextMenu, [{ @@ -2894,10 +2584,10 @@ style = _this$props.style, children = _this$props.children, layouts = _this$props.layouts, - other = _objectWithoutProperties(_this$props, _excluded$4); + other = _objectWithoutProperties(_this$props, ["style", "children", "layouts"]); var position = computePosition$1(layouts, reactNative.I18nManager.isRTL); - return /*#__PURE__*/React__default.createElement(reactNative.View, _extends({}, other, { + return React__default.createElement(reactNative.View, _extends({}, other, { style: [styles$4.options, style, position] }), children); } @@ -2906,7 +2596,6 @@ return NotAnimatedContextMenu; }(React__default.Component); - var _excluded$5 = ["style", "children", "layouts"]; var computePosition$2 = function computePosition(layouts) { var windowLayout = layouts.windowLayout, optionsLayout = layouts.optionsLayout; @@ -2925,17 +2614,17 @@ return position; }; - var SlideInMenu = /*#__PURE__*/function (_React$Component) { + var SlideInMenu = + /*#__PURE__*/ + function (_React$Component) { _inherits(SlideInMenu, _React$Component); - var _super = _createSuper(SlideInMenu); - function SlideInMenu(props) { var _this; _classCallCheck(this, SlideInMenu); - _this = _super.call(this, props); + _this = _possibleConstructorReturn(this, _getPrototypeOf(SlideInMenu).call(this, props)); _this.state = { slide: new reactNative.Animated.Value(0) }; @@ -2973,7 +2662,7 @@ style = _this$props.style, children = _this$props.children, layouts = _this$props.layouts, - other = _objectWithoutProperties(_this$props, _excluded$5); + other = _objectWithoutProperties(_this$props, ["style", "children", "layouts"]); var oHeight = layouts.optionsLayout.height; var animation = { @@ -2985,7 +2674,7 @@ }] }; var position = computePosition$2(layouts); - return /*#__PURE__*/React__default.createElement(reactNative.Animated.View, _extends({ + return React__default.createElement(reactNative.Animated.View, _extends({ style: [styles$5.options, style, animation, position] }, other), children); } @@ -3010,7 +2699,6 @@ } }); - var _excluded$6 = ["style", "children", "layouts", "anchorStyle", "preferredPlacement", "openAnimationDuration", "closeAnimationDuration", "placement"]; var popoverPadding = 7; var anchorSize = 15; var anchorHyp = Math.sqrt(anchorSize * anchorSize + anchorSize * anchorSize); @@ -3249,17 +2937,17 @@ return propertiesByPlacement[bestPlacement](hOptions, vOptions, isRTL); } - var Popover = /*#__PURE__*/function (_React$Component) { + var Popover = + /*#__PURE__*/ + function (_React$Component) { _inherits(Popover, _React$Component); - var _super = _createSuper(Popover); - function Popover(props) { var _this; _classCallCheck(this, Popover); - _this = _super.call(this, props); + _this = _possibleConstructorReturn(this, _getPrototypeOf(Popover).call(this, props)); _this.state = { scaleAnim: new reactNative.Animated.Value(0.1) }; @@ -3302,7 +2990,7 @@ openAnimationDuration = _this$props.openAnimationDuration, closeAnimationDuration = _this$props.closeAnimationDuration, userPlacement = _this$props.placement, - other = _objectWithoutProperties(_this$props, _excluded$6); + other = _objectWithoutProperties(_this$props, ["style", "children", "layouts", "anchorStyle", "preferredPlacement", "openAnimationDuration", "closeAnimationDuration", "placement"]); var isRTL = reactNative.I18nManager.isRTL; var animation = { @@ -3317,19 +3005,19 @@ placement = _computeProperties.placement, offset = _computeProperties.offset; - return /*#__PURE__*/React__default.createElement(reactNative.Animated.View, { + return React__default.createElement(reactNative.Animated.View, { style: [styles$6.animated, animation, position, getContainerStyle({ placement: placement, isRTL: isRTL })], pointerEvents: "box-none" - }, /*#__PURE__*/React__default.createElement(reactNative.View, { + }, React__default.createElement(reactNative.View, { style: [styles$6.anchor, dynamicAnchorStyle({ placement: placement, offset: offset, isRTL: isRTL }), anchorStyle] - }), /*#__PURE__*/React__default.createElement(reactNative.View, _extends({}, other, { + }), React__default.createElement(reactNative.View, _extends({}, other, { style: [styles$6.options, style] }), children)); } diff --git a/build/rnpm.js.map b/build/rnpm.js.map index 7c1c56f..c65ab60 100644 --- a/build/rnpm.js.map +++ b/build/rnpm.js.map @@ -1 +1 @@ -{"version":3,"file":"rnpm.js","sources":["../src/polyfills.js","../src/helpers.js","../node_modules/react-is/cjs/react-is.development.js","../node_modules/react-is/index.js","../node_modules/object-assign/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/lib/has.js","../node_modules/prop-types/checkPropTypes.js","../node_modules/prop-types/factoryWithTypeCheckers.js","../node_modules/prop-types/index.js","../src/with-context.js","../src/menuRegistry.js","../src/constants.js","../src/Backdrop.js","../src/logger.js","../src/MenuPlaceholder.js","../src/renderers/MenuOutside.js","../src/MenuProvider.js","../src/MenuOptions.js","../src/MenuTrigger.js","../src/renderers/ContextMenu.js","../src/Menu.js","../src/MenuOption.js","../src/renderers/NotAnimatedContextMenu.js","../src/renderers/SlideInMenu.js","../src/renderers/Popover.js","../src/index.js"],"sourcesContent":["// platform select polyfil for older RN versions\nimport { Platform } from 'react-native';\n\nif (!Platform.select) {\n Platform.select = (obj) => obj[Platform.OS];\n}\n","import React from 'react';\nimport { Platform, TouchableHighlight, TouchableNativeFeedback } from 'react-native';\n\n/**\n * Promisifies measure's callback function and returns layout object.\n */\nexport const measure = ref => new Promise((resolve) => {\n ref.measure((x, y, width, height, pageX, pageY) => {\n resolve({\n x: pageX, y: pageY,\n width, height,\n })\n });\n});\n\n/**\n * Create unique menu name across all menu instances.\n */\nexport const makeName = (function() {\n let nextID = 1;\n return () => `menu-${nextID++}`;\n})();\n\n/**\n * Create touchable component based on passed parameter and platform.\n * It also returns default props for specific touchable types.\n */\nexport function makeTouchable(TouchableComponent) {\n const Touchable = TouchableComponent || Platform.select({\n android: TouchableNativeFeedback,\n ios: TouchableHighlight,\n default: TouchableHighlight,\n });\n let defaultTouchableProps = {};\n if (Touchable === TouchableHighlight) {\n defaultTouchableProps = { underlayColor: 'rgba(0, 0, 0, 0.1)' };\n }\n return { Touchable, defaultTouchableProps };\n}\n\nfunction includes(arr, value) {\n return arr.indexOf(value) > -1;\n}\n\n/**\nLog object - prepares object for logging by stripping all \"private\" or excluding fields\n*/\nexport function lo(object, ...excluding) {\n const exc = Array.from(excluding);\n function isObject(obj) {\n return obj === Object(obj);\n }\n function withoutPrivate(obj) {\n if (!isObject(obj)) return obj;\n const res = {};\n for (var property in obj) {\n if (obj.hasOwnProperty(property)) {\n if (!property.startsWith('_') && !includes(exc, property)) {\n res[property] = withoutPrivate(obj[property]);\n }\n }\n }\n return res;\n }\n return withoutPrivate(object);\n}\n\n/**\nConverts iterator to array\n*/\nexport function iterator2array(it) {\n // workaround around https://github.com/instea/react-native-popup-menu/issues/41#issuecomment-340290127\n const arr = [];\n for (let next = it.next(); !next.done; next = it.next()) {\n arr.push(next.value);\n }\n return arr;\n}\n\n/** checks if component is class component */\nexport function isClassComponent(component) {\n return component.prototype && !!component.prototype.render;\n}\n\n/**\n * Higher order component to deprecate usage of component.\n * message - deprecate warning message\n * methods - array of method names to be delegated to deprecated component\n */\nexport function deprecatedComponent(message, methods = []) {\n return function deprecatedComponentHOC(Component) {\n return class DeprecatedComponent extends React.Component {\n constructor(...args) {\n super(...args);\n methods.forEach(name => {\n // delegate methods to the component\n this[name] = (...args) => this.ref && this.ref[name](...args)\n });\n }\n\n render() {\n return \n }\n\n onRef = ref => this.ref = ref;\n\n componentDidMount() {\n console.warn(message);\n }\n }\n }\n}\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","module.exports = Function.call.bind(Object.prototype.hasOwnProperty);\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = require('./lib/has');\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) { /**/ }\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +\n 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar has = require('./lib/has');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bigint: createPrimitiveTypeChecker('bigint'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message, data) {\n this.message = message;\n this.data = data && typeof data === 'object' ? data: {};\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n {expectedType: expectedType}\n );\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var expectedTypes = [];\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n if (checkerResult == null) {\n return null;\n }\n if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n expectedTypes.push(checkerResult.data.expectedType);\n }\n }\n var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function invalidValidatorError(componentName, location, propFullName, key, type) {\n return new PropTypeError(\n (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n );\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (has(shapeTypes, key) && typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","import React from \"react\";\n\nexport function withContext(Context, propName = \"context\") {\n return function wrap(Component) {\n class EnhanceContext extends React.Component {\n render() {\n const { forwardedRef, ...rest } = this.props;\n\n return (\n \n {value => {\n const custom = {\n [propName]: value,\n ref: forwardedRef,\n };\n return ;\n }}\n \n );\n }\n }\n\n const name = Component.displayName || Component.name || \"Component\";\n const consumerName =\n Context.Consumer.displayName ||\n Context.Consumer.name ||\n \"Context.Consumer\";\n\n function enhanceForwardRef(props, ref) {\n return ;\n }\n\n enhanceForwardRef.displayName = `enhanceContext-${consumerName}(${name})`;\n\n const FC = React.forwardRef(enhanceForwardRef);\n FC.defaultProps = Component.defaultProps;\n FC.propTypes = Component.propTypes;\n return FC\n };\n}\n","import { iterator2array } from './helpers';\n\n/**\n * Registry to subscribe, unsubscribe and update data of menus.\n *\n * menu data: {\n * instance: react instance\n * triggerLayout: Object - layout of menu trigger if known\n * optionsLayout: Object - layout of menu options if known\n * optionsCustomStyles: Object - custom styles of options\n * }\n*/\nexport default function makeMenuRegistry(menus = new Map()) {\n\n /**\n * Subscribes menu instance.\n */\n function subscribe(instance) {\n const name = instance.getName()\n if (menus.get(name)) {\n console.warn(`incorrect usage of popup menu - menu with name ${name} already exists`);\n }\n menus.set(name, { name, instance });\n }\n\n /**\n * Unsubscribes menu instance.\n */\n function unsubscribe(instance) {\n menus.delete(instance.getName());\n }\n\n /**\n * Updates layout infomration.\n */\n function updateLayoutInfo(name, layouts = {}) {\n if (!menus.has(name)) {\n return;\n }\n const menu = Object.assign({}, menus.get(name));\n if (layouts.hasOwnProperty('triggerLayout')) {\n menu.triggerLayout = layouts.triggerLayout;\n }\n if (layouts.hasOwnProperty('optionsLayout')) {\n menu.optionsLayout = layouts.optionsLayout;\n }\n menus.set(name, menu);\n }\n\n function setOptionsCustomStyles(name, optionsCustomStyles) {\n if (!menus.has(name)) {\n return;\n }\n const menu = { ...menus.get(name), optionsCustomStyles };\n menus.set(name, menu);\n }\n\n /**\n * Get `menu data` by name.\n */\n function getMenu(name) {\n return menus.get(name);\n }\n\n /**\n * Returns all subscribed menus as array of `menu data`\n */\n function getAll() {\n return iterator2array(menus.values());\n }\n\n return { subscribe, unsubscribe, updateLayoutInfo, getMenu, getAll, setOptionsCustomStyles };\n}\n","import { Platform } from 'react-native';\n\n// common durations of animation\nexport const OPEN_ANIM_DURATION = 225;\nexport const CLOSE_ANIM_DURATION = 195;\n\nexport const USE_NATIVE_DRIVER = (Platform.OS !== \"web\");\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { View, StyleSheet, TouchableWithoutFeedback, Animated } from 'react-native';\nimport { OPEN_ANIM_DURATION, CLOSE_ANIM_DURATION, USE_NATIVE_DRIVER } from './constants';\n\nclass Backdrop extends Component {\n\n constructor(...args) {\n super(...args);\n this.fadeAnim = new Animated.Value(0.001);\n }\n\n open() {\n return new Promise(resolve => {\n Animated.timing(this.fadeAnim, {\n duration: OPEN_ANIM_DURATION,\n toValue: 1,\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start(resolve);\n });\n }\n\n close() {\n return new Promise(resolve => {\n Animated.timing(this.fadeAnim, {\n duration: CLOSE_ANIM_DURATION,\n toValue: 0,\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start(resolve);\n });\n }\n\n render() {\n const { onPress, style } = this.props;\n return (\n \n \n \n \n \n );\n }\n\n}\n\nBackdrop.propTypes = {\n onPress: PropTypes.func.isRequired,\n};\n\nconst styles = StyleSheet.create({\n fullscreen: {\n opacity: 0,\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n },\n});\n\nexport default Backdrop;\n","\nexport const CFG = {\n debug: false,\n}\n/**\n * Debug logger depending on `Menu.debug` static porperty.\n */\nexport const debug = (...args) => {\n CFG.debug && console.log('react-native-popup-menu', ...args);\n};\n","import React, { Component } from 'react';\nimport { View, StyleSheet } from 'react-native';\nimport Backdrop from './Backdrop';\nimport { debug } from './logger.js';\n\nexport default class MenuPlaceholder extends Component {\n constructor(props) {\n super(props)\n this.state = {};\n }\n\n shouldComponentUpdate() {\n // don't terminate closing animation\n return !this.props.ctx._isMenuClosing;\n }\n\n render() {\n const { ctx, backdropStyles } = this.props;\n const shouldRenderMenu = ctx.isMenuOpen() && ctx._isInitialized();\n debug('MenuPlaceholder should render', shouldRenderMenu);\n if (!shouldRenderMenu) {\n return null;\n }\n return (\n \n \n {\n ctx._makeOptions()\n }\n \n );\n }\n}\n\nconst styles = StyleSheet.create({\n placeholder: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n overflow: 'hidden',\n },\n});\n","import React from 'react';\nimport { View, StyleSheet } from 'react-native';\n\nexport const computePosition = ({ windowLayout }) => ({\n top: windowLayout.height,\n left: windowLayout.width,\n});\n\n\nconst MenuOutside = props => {\n const { style, children, layouts, ...other } = props;\n const position = computePosition(layouts);\n return (\n \n {children}\n \n );\n};\n\nconst styles = StyleSheet.create({\n options: {\n position: 'absolute',\n },\n});\n\nexport default MenuOutside;\n","import React, { Component, createContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { View, BackHandler, SafeAreaView, StyleSheet } from 'react-native';\n\nimport { withContext } from './with-context';\nimport makeMenuRegistry from './menuRegistry';\nimport MenuPlaceholder from './MenuPlaceholder';\nimport { measure, isClassComponent } from './helpers';\nimport { debug } from './logger.js';\nimport MenuOutside from './renderers/MenuOutside';\n\nconst defaultOptionsContainerRenderer = options => options;\nconst layoutsEqual = (a, b) => (\n a === b || (a && b && a.width === b.width && a.height === b.height)\n);\n\nif (!React.forwardRef) {\n throw new Error('This version of popup-menu requires RN 0.55+. Check our compatibility table.')\n}\nexport const PopupMenuContext = createContext({})\nexport const withCtx = withContext(PopupMenuContext, \"ctx\");\n\n// count of MenuProvider instances\nlet instanceCount = 0;\n\nexport default class MenuProvider extends Component {\n\n constructor(props) {\n super(props);\n this._menuRegistry = makeMenuRegistry();\n this._isMenuClosing = false;\n this._isBackHandlerRegistered = false;\n const menuActions = {\n openMenu: name => this.openMenu(name),\n closeMenu: () => this.closeMenu(),\n toggleMenu: name => this.toggleMenu(name),\n isMenuOpen: () => this.isMenuOpen(),\n _getOpenedMenu: () => this._getOpenedMenu(),\n _notify: force => this._notify(force),\n };\n this.menuCtx = { menuRegistry: this._menuRegistry, menuActions }\n }\n\n _handleBackButton = () => {\n const { backHandler } = this.props;\n debug('_handleBackButton called', backHandler);\n\n // Default handler if true is passed\n if (backHandler === true) {\n if (this.isMenuOpen()) {\n this.closeMenu();\n return true;\n }\n }\n\n // Custom handler called with MenuProvider instance id function is passed\n if (typeof backHandler === 'function') {\n return backHandler(this);\n }\n\n return false;\n }\n\n componentDidMount() {\n const { customStyles, skipInstanceCheck } = this.props;\n if (customStyles.menuContextWrapper) {\n console.warn('menuContextWrapper custom style is deprecated and it might be removed in future releases, use menuProviderWrapper instead.');\n }\n if (!skipInstanceCheck) {\n instanceCount++;\n }\n if (instanceCount > 1) {\n console.warn('In most cases you should not have more MenuProviders in your app (see API documentation). In other cases use skipInstanceCheck prop.');\n }\n }\n\n componentWillUnmount() {\n debug('unmounting menu provider')\n if (this._isBackHandlerRegistered) {\n BackHandler.removeEventListener('hardwareBackPress', this._handleBackButton);\n }\n const { skipInstanceCheck } = this.props;\n if (!skipInstanceCheck) {\n instanceCount--;\n }\n }\n\n isMenuOpen() {\n return !!this._getOpenedMenu();\n }\n\n openMenu(name) {\n const menu = this._menuRegistry.getMenu(name);\n if (!menu) {\n console.warn(`menu with name ${name} does not exist`);\n return Promise.resolve();\n }\n debug('open menu', name);\n if (!this._isBackHandlerRegistered) {\n // delay menu registration until the menu is really opened (and thus this back handler will be called \"sooner\")\n // too soon registration can cause another back handlers (e.g. react navigation) to be called instead of our back handler\n BackHandler.addEventListener('hardwareBackPress', this._handleBackButton);\n this._isBackHandlerRegistered = true;\n }\n menu.instance._setOpened(true);\n return this._notify();\n }\n\n closeMenu() { // has no effect on controlled menus\n debug('close menu');\n this._menuRegistry.getAll()\n .filter(menu => menu.instance._getOpened())\n .forEach(menu => menu.instance._setOpened(false));\n return this._notify();\n }\n\n _invalidateTriggerLayouts() {\n // invalidate layouts for closed menus,\n // both controlled and uncontrolled menus\n this._menuRegistry.getAll()\n .filter(menu => !menu.instance.isOpen())\n .forEach(menu => {\n this._menuRegistry.updateLayoutInfo(menu.name, { triggerLayout: undefined });\n });\n }\n\n _beforeClose(menu) {\n debug('before close', menu.name);\n const hideMenu = (this.optionsRef\n && this.optionsRef.close\n && this.optionsRef.close()) || Promise.resolve();\n const hideBackdrop = this.backdropRef && this.backdropRef.close();\n this._invalidateTriggerLayouts();\n this._isMenuClosing = true;\n return Promise.all([hideMenu, hideBackdrop])\n .then(() => {\n this._isMenuClosing = false;\n })\n .catch(err => {\n this._isMenuClosing = false;\n throw err;\n })\n }\n\n toggleMenu(name) {\n const menu = this._menuRegistry.getMenu(name);\n if (!menu) {\n console.warn(`menu with name ${name} does not exist`);\n return Promise.resolve();\n }\n debug('toggle menu', name);\n if (menu.instance._getOpened()) {\n return this.closeMenu();\n } else {\n return this.openMenu(name);\n }\n }\n\n _notify(forceUpdate) {\n const NULL = {};\n const prev = this.openedMenu || NULL;\n const next = this._menuRegistry.getAll().find(menu => menu.instance.isOpen()) || NULL;\n // set newly opened menu before any callbacks are called\n this.openedMenu = next === NULL ? undefined : next;\n if (!forceUpdate && !this._isRenderNeeded(prev, next)) {\n return Promise.resolve();\n }\n debug('notify: next menu:', next.name, ' prev menu:', prev.name);\n let afterSetState = undefined;\n let beforeSetState = () => Promise.resolve();\n if (prev.name !== next.name) {\n if (prev !== NULL && !prev.instance.isOpen()) {\n beforeSetState = () => this._beforeClose(prev)\n .then(() => prev.instance.props.onClose());\n }\n if (next !== NULL) {\n next.instance.props.onOpen();\n afterSetState = () => this._initOpen(next);\n }\n }\n return beforeSetState().then(() => {\n if (!this._placeholderRef) {\n debug('setState ignored - maybe the context was unmounted')\n return\n }\n this._placeholderRef.setState({ openedMenuName: this.openedMenu && this.openedMenu.name }, afterSetState);\n debug('notify ended');\n });\n }\n\n /**\n Compares states of opened menu to determine if rerender is needed.\n */\n _isRenderNeeded(prev, next) {\n if (prev === next) {\n debug('_isRenderNeeded: skipping - no change');\n return false;\n }\n if (prev.name !== next.name) {\n return true;\n }\n const { triggerLayout, optionsLayout } = next;\n if (!triggerLayout || !optionsLayout) {\n debug('_isRenderNeeded: skipping - no trigger or options layout');\n return false;\n }\n return true;\n }\n\n render() {\n const { style, customStyles } = this.props;\n debug('render menu', this.isMenuOpen(), this._ownLayout);\n return (\n \n \n \n { this.props.children }\n \n \n \n \n \n \n \n );\n }\n\n onBackdropRef = r => {\n this.backdropRef = r;\n }\n\n onOptionsRef = r => {\n this.optionsRef = r;\n }\n\n _onPlaceholderRef = r => this._placeholderRef = r;\n\n _getOpenedMenu() {\n const name = this._placeholderRef && this._placeholderRef.state.openedMenuName;\n const menu = name ? this._menuRegistry.getMenu(name) : undefined;\n debug('_getOpenedMenu', name, !!menu)\n return menu\n }\n\n _onBackdropPress = () => {\n debug('on backdrop press');\n const menu = this._getOpenedMenu();\n if (menu) {\n menu.instance.props.onBackdropPress();\n }\n this.closeMenu();\n }\n\n _isInitialized() {\n return !!this._ownLayout;\n }\n\n _initOpen(menu) {\n debug('opening', menu.name);\n const trigger = menu.instance._getTrigger();\n measure(trigger).then(triggerLayout => {\n debug('got trigger measurements', triggerLayout);\n this._menuRegistry.updateLayoutInfo(menu.name, { triggerLayout });\n this.backdropRef && this.backdropRef.open()\n this._notify();\n });\n }\n\n _onOptionsLayout(e, name, isOutside) {\n const optionsLayout = e.nativeEvent.layout;\n optionsLayout.isOutside = isOutside;\n debug('got options layout', optionsLayout);\n this._menuRegistry.updateLayoutInfo(name, { optionsLayout });\n this._notify();\n }\n\n _makeOptions() {\n const { instance, triggerLayout, optionsLayout } = this._getOpenedMenu();\n const options = instance._getOptions();\n const { renderer, rendererProps } = instance.props;\n const windowLayout = this._ownLayout;\n const safeAreaLayout = this._safeAreaLayout;\n const { optionsContainerStyle, renderOptionsContainer, customStyles } = options.props;\n const optionsRenderer = renderOptionsContainer || defaultOptionsContainerRenderer;\n const isOutside = !triggerLayout || !optionsLayout;\n const onLayout = e => this._onOptionsLayout(e, instance.getName(), isOutside);\n const style = [optionsContainerStyle, customStyles.optionsContainer];\n const layouts = { windowLayout, triggerLayout, optionsLayout, safeAreaLayout };\n const props = { ...rendererProps, style, onLayout, layouts };\n const optionsType = isOutside ? MenuOutside : renderer;\n if (isClassComponent(optionsType)) {\n props.ref = this.onOptionsRef;\n }\n return React.createElement(optionsType, props, optionsRenderer(options));\n }\n\n _onLayout = ({ nativeEvent: { layout } }) => {\n if (layoutsEqual(this._ownLayout, layout)) {\n return;\n }\n this._ownLayout = layout;\n debug('context layout has changed', this._ownLayout);\n if (!this.isMenuOpen()) {\n return;\n }\n const { instance } = this._getOpenedMenu();\n const trigger = instance._getTrigger();\n measure(trigger).then(triggerLayout => {\n debug('got trigger measurements after context layout change', triggerLayout);\n this._menuRegistry.updateLayoutInfo(instance.getName(), { triggerLayout });\n // force update as own layout has changed\n this._notify(true);\n });\n }\n\n _onSafeAreaLayout = ({ nativeEvent: { layout } }) => {\n if (layoutsEqual(this._safeAreaLayout, layout)) {\n return;\n }\n this._safeAreaLayout = layout;\n debug('safeArea layout has changed', this._safeAreaLayout);\n if (!this.isMenuOpen()) {\n return;\n }\n this._notify(true);\n }\n\n}\n\nMenuProvider.propTypes = {\n customStyles: PropTypes.object,\n backHandler: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n skipInstanceCheck: PropTypes.bool,\n}\n\nMenuProvider.defaultProps = {\n customStyles: {},\n backHandler: false,\n skipInstanceCheck: false,\n};\n\nconst styles = StyleSheet.create({\n flex1: {\n flex: 1,\n },\n safeArea: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { View } from 'react-native';\nimport { withCtx } from './MenuProvider';\n\nexport class MenuOptions extends React.Component {\n\n updateCustomStyles(_props) {\n const { customStyles } = _props\n const menu = this.props.ctx.menuActions._getOpenedMenu()\n // FIXME react 16.3 workaround for ControlledExample!\n if (!menu) return\n const menuName = menu.instance.getName()\n this.props.ctx.menuRegistry.setOptionsCustomStyles(menuName, customStyles)\n }\n\n componentDidMount() {\n this.updateCustomStyles(this.props)\n }\n\n componentDidUpdate() {\n this.updateCustomStyles(this.props)\n }\n\n render() {\n const { customStyles, style, children } = this.props\n return (\n \n {children}\n \n )\n }\n}\n\nMenuOptions.propTypes = {\n customStyles: PropTypes.object,\n renderOptionsContainer: PropTypes.func,\n optionsContainerStyle: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.number,\n PropTypes.array,\n ]),\n};\n\nMenuOptions.defaultProps = {\n customStyles: {},\n};\n\nexport default withCtx(MenuOptions);\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { View, Text } from 'react-native';\nimport { debug } from './logger.js';\nimport { makeTouchable } from './helpers';\nimport { withCtx } from './MenuProvider';\n\nexport class MenuTrigger extends Component {\n\n _onPress() {\n debug('trigger onPress');\n this.props.onPress && this.props.onPress();\n this.props.ctx.menuActions.openMenu(this.props.menuName);\n }\n\n render() {\n const { disabled, onRef, text, children, style, customStyles, menuName, \n triggerOnLongPress, onAlternativeAction, testID, ...other } = this.props;\n const onPress = () => !disabled && this._onPress();\n const { Touchable, defaultTouchableProps } = makeTouchable(customStyles.TriggerTouchableComponent);\n return (\n \n \n \n {text ? {text} : children}\n \n \n \n );\n }\n\n}\n\nMenuTrigger.propTypes = {\n disabled: PropTypes.bool,\n text: PropTypes.string,\n onPress: PropTypes.func,\n onAlternativeAction: PropTypes.func,\n customStyles: PropTypes.object,\n triggerOnLongPress: PropTypes.bool,\n testID: PropTypes.string,\n};\n\nMenuTrigger.defaultProps = {\n disabled: false,\n customStyles: {},\n testID: undefined,\n};\n\nexport default withCtx(MenuTrigger)\n","import React from 'react';\nimport { I18nManager, Animated, Easing, StyleSheet, PixelRatio } from 'react-native';\nimport { OPEN_ANIM_DURATION, CLOSE_ANIM_DURATION, USE_NATIVE_DRIVER } from '../constants';\n\nconst axisPosition = (oDim, wDim, tPos, tDim) => {\n // if options are bigger than window dimension, then render at 0\n if (oDim > wDim) {\n return 0;\n }\n // render at trigger position if possible\n if (tPos + oDim <= wDim) {\n return tPos;\n }\n // aligned to the trigger from the bottom (right)\n if (tPos + tDim - oDim >= 0) {\n return tPos + tDim - oDim;\n }\n // compute center position\n let pos = Math.round(tPos + (tDim / 2) - (oDim / 2));\n // check top boundary\n if (pos < 0) {\n return 0;\n }\n // check bottom boundary\n if (pos + oDim > wDim) {\n return wDim - oDim;\n }\n // if everything ok, render in center position\n return pos;\n};\n\nfunction fit(pos, len, minPos, maxPos) {\n if (pos === undefined) {\n return undefined;\n }\n if (pos + len > maxPos) {\n pos = maxPos - len;\n }\n if (pos < minPos) {\n pos = minPos;\n }\n return pos;\n}\n// fits options (position) into safeArea\nexport const fitPositionIntoSafeArea = (position, layouts) => {\n const { windowLayout, safeAreaLayout, optionsLayout } = layouts;\n if (!safeAreaLayout) {\n return position;\n }\n const { x: saX, y: saY, height: saHeight, width: saWidth } = safeAreaLayout;\n const { height: oHeight, width: oWidth } = optionsLayout;\n const { width: wWidth } = windowLayout;\n let { top, left, right } = position;\n top = fit(top, oHeight, saY, saY + saHeight);\n left = fit(left, oWidth, saX, saX + saWidth)\n right = fit(right, oWidth, wWidth - saX - saWidth, saX)\n return { top, left, right };\n}\n\nexport const computePosition = (layouts, isRTL) => {\n const { windowLayout, triggerLayout, optionsLayout } = layouts;\n const { x: wX, y: wY, width: wWidth, height: wHeight } = windowLayout;\n const { x: tX, y: tY, height: tHeight, width: tWidth } = triggerLayout;\n const { height: oHeight, width: oWidth } = optionsLayout;\n const top = axisPosition(oHeight, wHeight, tY - wY, tHeight);\n const left = axisPosition(oWidth, wWidth, tX - wX, tWidth);\n const start = isRTL ? 'right' : 'left';\n const position = { top, [start]: left };\n return fitPositionIntoSafeArea(position, layouts);\n};\n\nexport default class ContextMenu extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = {\n scaleAnim: new Animated.Value(0.1),\n };\n }\n\n componentDidMount() {\n Animated.timing(this.state.scaleAnim, {\n duration: OPEN_ANIM_DURATION,\n toValue: 1,\n easing: Easing.out(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start();\n }\n\n close() {\n return new Promise(resolve => {\n Animated.timing(this.state.scaleAnim, {\n duration: CLOSE_ANIM_DURATION,\n toValue: 0,\n easing: Easing.in(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start(resolve);\n });\n }\n\n render() {\n const { style, children, layouts, ...other } = this.props;\n const animation = {\n transform: [ { scale: this.state.scaleAnim } ],\n opacity: this.state.scaleAnim,\n };\n const position = computePosition(layouts, I18nManager.isRTL);\n return (\n \n {children}\n \n );\n }\n\n}\n\n// public exports\nContextMenu.computePosition = computePosition;\nContextMenu.fitPositionIntoSafeArea = fitPositionIntoSafeArea;\n\nexport const styles = StyleSheet.create({\n options: {\n position: 'absolute',\n borderRadius: 2,\n backgroundColor: 'white',\n width: PixelRatio.roundToNearestPixel(200),\n\n // Shadow only works on iOS.\n shadowColor: 'black',\n shadowOpacity: 0.3,\n shadowOffset: { width: 3, height: 3 },\n shadowRadius: 4,\n\n // This will elevate the view on Android, causing shadow to be drawn.\n elevation: 5,\n },\n});\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { View } from 'react-native';\nimport MenuOptions from './MenuOptions';\nimport MenuTrigger from './MenuTrigger';\nimport ContextMenu from './renderers/ContextMenu';\nimport { makeName } from './helpers';\nimport { debug, CFG } from './logger';\nimport { withCtx } from './MenuProvider';\n\nconst isRegularComponent = c => c.type !== MenuOptions && c.type !== MenuTrigger;\nconst isTrigger = c => c.type === MenuTrigger;\nconst isMenuOptions = c => c.type === MenuOptions;\n\nexport class Menu extends Component {\n\n constructor(props) {\n super(props);\n this._name = this.props.name || makeName();\n this._forceClose = false;\n const { ctx } = props;\n if(!(ctx && ctx.menuActions)) {\n throw new Error(\"Menu component must be ancestor of MenuProvider\");\n }\n }\n\n componentDidMount() {\n if (!this._validateChildren()) {\n return;\n }\n debug('subscribing menu', this._name);\n this.props.ctx.menuRegistry.subscribe(this);\n this.props.ctx.menuActions._notify();\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.name !== prevProps.name) {\n console.warn('Menu name cannot be changed');\n }\n // force update if menu is opened as its content might have changed\n const force = this.isOpen();\n debug('component did update', this._name, force);\n this.props.ctx.menuActions._notify(force);\n }\n\n componentWillUnmount() {\n debug('unsubscribing menu', this._name);\n if (this.isOpen()) {\n this._forceClose = true;\n this.props.ctx.menuActions._notify();\n }\n this.props.ctx.menuRegistry.unsubscribe(this);\n }\n\n open() {\n return this.props.ctx.menuActions.openMenu(this._name);\n }\n\n close() {\n return this.props.ctx.menuActions.closeMenu();\n }\n\n isOpen() {\n if (this._forceClose) {\n return false;\n }\n return this.props.hasOwnProperty('opened') ? this.props.opened : this._opened;\n }\n\n getName() {\n return this._name;\n }\n\n render() {\n const { style } = this.props;\n const children = this._reduceChildren();\n return (\n \n {children}\n \n );\n }\n\n _reduceChildren() {\n return React.Children.toArray(this.props.children).reduce((r, child) => {\n if (isTrigger(child)) {\n r.push(React.cloneElement(child, {\n key: null,\n menuName: this._name,\n onRef: (t => this._trigger = t),\n }));\n }\n if (isRegularComponent(child)) {\n r.push(child);\n }\n return r;\n }, []);\n }\n\n _getTrigger() {\n return this._trigger;\n }\n\n _getOptions() {\n return React.Children.toArray(this.props.children).find(isMenuOptions);\n }\n\n _getOpened() {\n return this._opened;\n }\n\n _setOpened(opened) {\n this._opened = opened;\n }\n\n _validateChildren() {\n const children = React.Children.toArray(this.props.children);\n const options = children.find(isMenuOptions);\n if (!options) {\n console.warn('Menu has to contain MenuOptions component');\n }\n const trigger = children.find(isTrigger);\n if (!trigger) {\n console.warn('Menu has to contain MenuTrigger component');\n }\n return options && trigger;\n }\n\n}\n\nMenu.propTypes = {\n name: PropTypes.string,\n renderer: PropTypes.func,\n rendererProps: PropTypes.object,\n onSelect: PropTypes.func,\n onOpen: PropTypes.func,\n onClose: PropTypes.func,\n opened: PropTypes.bool,\n onBackdropPress: PropTypes.func,\n};\n\nMenu.defaultProps = {\n renderer: ContextMenu,\n rendererProps: {},\n onSelect: () => {},\n onOpen: () => {},\n onClose: () => {},\n onBackdropPress: () => {},\n};\n\nconst MenuExternal = withCtx(Menu);\nObject.defineProperty(MenuExternal, 'debug', \n { \n get: function() { return CFG.debug }, \n set: function(val) { CFG.debug = val }, \n });\nMenuExternal.setDefaultRenderer = (renderer) => {\n Menu.defaultProps.renderer = renderer;\n}\nMenuExternal.setDefaultRendererProps = (rendererProps) => {\n Menu.defaultProps.rendererProps = rendererProps;\n}\nexport default MenuExternal;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { View, StyleSheet, Text } from 'react-native';\nimport { debug } from './logger';\nimport { makeTouchable } from './helpers';\nimport { withCtx } from './MenuProvider';\n\n\nexport class MenuOption extends Component {\n\n _onSelect() {\n const { value } = this.props;\n const onSelect = this.props.onSelect || this._getMenusOnSelect()\n const shouldClose = onSelect(value) !== false;\n debug('select option', value, shouldClose);\n if (shouldClose) {\n this.props.ctx.menuActions.closeMenu();\n }\n }\n\n _getMenusOnSelect() {\n const menu = this.props.ctx.menuActions._getOpenedMenu();\n return menu.instance.props.onSelect;\n }\n\n _getCustomStyles() {\n // FIXME react 16.3 workaround for ControlledExample!\n const menu = this.props.ctx.menuActions._getOpenedMenu() || {}\n const { optionsCustomStyles } = menu;\n return {\n ...optionsCustomStyles,\n ...this.props.customStyles,\n }\n }\n\n render() {\n const { text, disabled, disableTouchable, children, style, testID } = this.props;\n const customStyles = this._getCustomStyles()\n if (text && React.Children.count(children) > 0) {\n console.warn(\"MenuOption: Please don't use text property together with explicit children. Children are ignored.\");\n }\n if (disabled) {\n const disabledStyles = [defaultStyles.optionTextDisabled, customStyles.optionText];\n return (\n \n {text ? {text} : children}\n \n );\n }\n const rendered = (\n \n {text ? {text} : children}\n \n );\n if (disableTouchable) {\n return rendered;\n }\n else {\n const { Touchable, defaultTouchableProps } = makeTouchable(customStyles.OptionTouchableComponent);\n return (\n this._onSelect()}\n {...defaultTouchableProps}\n {...customStyles.optionTouchable}\n >\n {rendered}\n \n );\n }\n }\n}\n\nMenuOption.propTypes = {\n disabled: PropTypes.bool,\n disableTouchable: PropTypes.bool,\n onSelect: PropTypes.func,\n text: PropTypes.string,\n value: PropTypes.any,\n customStyles: PropTypes.object,\n testID: PropTypes.string,\n};\n\nMenuOption.defaultProps = {\n disabled: false,\n disableTouchable: false,\n customStyles: {},\n testID: undefined,\n};\n\nconst defaultStyles = StyleSheet.create({\n option: {\n padding: 5,\n backgroundColor: 'transparent',\n },\n optionTextDisabled: {\n color: '#ccc',\n },\n});\n\nexport default withCtx(MenuOption);\n","import React from 'react';\nimport { I18nManager, View } from 'react-native';\n\nimport { computePosition, styles } from './ContextMenu';\n\n/**\nSimplified version of ContextMenu without animation.\n*/\nexport default class NotAnimatedContextMenu extends React.Component {\n\n render() {\n const { style, children, layouts, ...other } = this.props;\n const position = computePosition(layouts, I18nManager.isRTL);\n return (\n \n {children}\n \n );\n }\n\n}\n","import React from 'react';\nimport { Animated, StyleSheet, Easing } from 'react-native';\nimport { OPEN_ANIM_DURATION, CLOSE_ANIM_DURATION, USE_NATIVE_DRIVER } from '../constants';\n\nexport const computePosition = (layouts) => {\n const { windowLayout, optionsLayout } = layouts\n const { height: wHeight } = windowLayout;\n const { height: oHeight } = optionsLayout;\n const top = wHeight - oHeight;\n const left = 0, right = 0;\n const position = { top, left, right };\n // TODO what is the best way to handle safeArea?\n // most likely some extra paddings inside SlideInMenu \n return position;\n}\n\nexport default class SlideInMenu extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = {\n slide: new Animated.Value(0),\n };\n }\n\n componentDidMount() {\n Animated.timing(this.state.slide, {\n duration: OPEN_ANIM_DURATION,\n toValue: 1,\n easing: Easing.out(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start();\n }\n\n close() {\n return new Promise(resolve => {\n Animated.timing(this.state.slide, {\n duration: CLOSE_ANIM_DURATION,\n toValue: 0,\n easing: Easing.in(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start(resolve);\n });\n }\n\n render() {\n const { style, children, layouts, ...other } = this.props;\n const { height: oHeight } = layouts.optionsLayout;\n const animation = {\n transform: [{\n translateY: this.state.slide.interpolate({\n inputRange: [0, 1],\n outputRange: [oHeight, 0],\n }),\n }],\n };\n const position = computePosition(layouts);\n return (\n \n {children}\n \n );\n }\n}\n\nconst styles = StyleSheet.create({\n options: {\n position: 'absolute',\n backgroundColor: 'white',\n\n // Shadow only works on iOS.\n shadowColor: 'black',\n shadowOpacity: 0.3,\n shadowOffset: { width: 3, height: 3 },\n shadowRadius: 4,\n\n // This will elevate the view on Android, causing shadow to be drawn.\n elevation: 5,\n },\n});\n","import { I18nManager, Animated, Easing, StyleSheet, View } from 'react-native';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { OPEN_ANIM_DURATION, CLOSE_ANIM_DURATION, USE_NATIVE_DRIVER } from '../constants.js';\n\nconst popoverPadding = 7;\nconst anchorSize = 15;\nconst anchorHyp = Math.sqrt(anchorSize*anchorSize + anchorSize*anchorSize);\nconst anchorOffset = (anchorHyp + anchorSize) / 2 - popoverPadding;\n\n// left/top placement\nfunction axisNegativeSideProperties({ oDim, tPos }) {\n return { position: tPos - oDim };\n}\n\n// right/bottom placement\nfunction axisPositiveSideProperties({ tPos, tDim }) {\n // substract also anchor placeholder from the beginning\n return { position: tPos + tDim - anchorSize };\n}\n\n// computes offsets (off screen overlap) of popover when trying to align it to the center\nfunction centeringProperties({ oDim, wDim, tPos, tDim }) {\n const center = Math.round(tPos + (tDim / 2));\n const leftOffset = (oDim / 2) - center;\n const rightOffset = center + (oDim / 2) - wDim;\n return { center, leftOffset, rightOffset };\n}\n\n/**\n * Computes position and offset of popover when trying to align it to the triger center.\n * It consideres window boundaries.\n * Returns object with keys:\n * - position: Absolute position - top/left,\n * - offset: window overlapping size if window boundaries were not considered\n */\nfunction axisCenteredPositionProperties(options) {\n const { oDim, wDim } = options;\n const { center, leftOffset, rightOffset } = centeringProperties(options);\n if (leftOffset > 0 || rightOffset > 0) {\n // right/bottom position is better\n if (leftOffset < rightOffset) {\n return { offset: rightOffset, position: wDim - oDim };\n }\n // left/top position is better\n if (rightOffset < leftOffset) {\n return { offset: -leftOffset, position: 0 };\n }\n }\n // centered position\n return { offset: 0, position: center - oDim / 2 };\n}\n\n/* Evaluate centering placement */\nfunction getCenteringPrice(options) {\n const { leftOffset, rightOffset } = centeringProperties(options);\n // TODO: currently shifted popovers have higher price,\n // popover shift could be taken into account with the same price\n return Math.max(0, leftOffset) + Math.max(0, rightOffset);\n}\n\n/* Evaluate top placement */\nfunction getTopPrice(hOptions, vOptions) {\n const centerOffset = getCenteringPrice(vOptions)\n const sideOffset = Math.max(0, hOptions.oDim - hOptions.tPos)\n return centerOffset + sideOffset\n}\n\n/* Evaluate bottom placement */\nfunction getBottomPrice(hOptions, vOptions) {\n const centerOffset = getCenteringPrice(vOptions)\n const sideOffset = Math.max(0, hOptions.tPos + hOptions.tDim + hOptions.oDim - hOptions.wDim)\n return centerOffset + sideOffset\n}\n\n/* Evaluate left placement */\nfunction getLeftPrice(hOptions, vOptions) {\n const centerOffset = getCenteringPrice(hOptions)\n const sideOffset = Math.max(0, vOptions.oDim - vOptions.tPos)\n return centerOffset + sideOffset\n}\n\n/* Evaluate right placement */\nfunction getRightPrice(hOptions, vOptions) {\n const centerOffset = getCenteringPrice(hOptions)\n const sideOffset = Math.max(0, vOptions.tPos + vOptions.tDim + vOptions.oDim - vOptions.wDim)\n return centerOffset + sideOffset\n}\n\nfunction getStartPosKey(isRTL) {\n return isRTL ? 'right' : 'left';\n}\n\nfunction topProperties(hOptions, vOptions, isRTL) {\n const centered = axisCenteredPositionProperties(vOptions);\n const side = axisNegativeSideProperties(hOptions);\n return {\n position: {\n top: side.position,\n [getStartPosKey(isRTL)]: centered.position,\n },\n offset: centered.offset,\n placement: 'top',\n };\n}\n\nfunction bottomProperties(hOptions, vOptions, isRTL) {\n const centered = axisCenteredPositionProperties(vOptions);\n const side = axisPositiveSideProperties(hOptions);\n return {\n position: {\n top: side.position,\n [getStartPosKey(isRTL)]: centered.position,\n },\n offset: centered.offset,\n placement: 'bottom',\n };\n}\n\nfunction rightProperties(hOptions, vOptions, isRTL) {\n const centered = axisCenteredPositionProperties(hOptions);\n const side = axisPositiveSideProperties(vOptions);\n return {\n position: {\n top: centered.position,\n [getStartPosKey(isRTL)]: side.position,\n },\n offset: centered.offset,\n placement: 'right',\n };\n}\n\nfunction leftProperties(hOptions, vOptions, isRTL) {\n const centered = axisCenteredPositionProperties(hOptions);\n const side = axisNegativeSideProperties(vOptions);\n return {\n position: {\n top: centered.position,\n [getStartPosKey(isRTL)]: side.position,\n },\n offset: centered.offset,\n placement: 'left',\n };\n}\n\n// maps placement to function which computes correct properties\nconst propertiesByPlacement = {\n top: topProperties,\n bottom: bottomProperties,\n left: leftProperties,\n right: rightProperties,\n};\n\n/**\n * Computes properties needed for drawing popover.\n * Returns object with keys:\n * - position: { top: Number, left: Number } - popover absolute position\n * - placement: top|left|top|bottom - position to the trigger\n * - offset: value by which must be anchor shifted\n */\nexport function computeProperties (\n { windowLayout, triggerLayout, optionsLayout },\n placement,\n preferredPlacement,\n isRTL,\n) {\n const { x: wX, y: wY, width: wWidth, height: wHeight } = windowLayout;\n const { x: tX, y: tY, height: tHeight, width: tWidth } = triggerLayout;\n const { height: oHeight, width: oWidth } = optionsLayout;\n const hOptions = {\n oDim: oHeight + popoverPadding * 2,\n wDim: wHeight,\n tPos: tY - wY,\n tDim: tHeight,\n };\n const vOptions = {\n oDim: oWidth + popoverPadding * 2,\n wDim: wWidth,\n tPos: tX - wX,\n tDim: tWidth,\n };\n if (placement !== 'auto' && propertiesByPlacement[placement]) {\n return propertiesByPlacement[placement](hOptions, vOptions, isRTL)\n }\n\n const prices = {\n top: getTopPrice(hOptions, vOptions),\n bottom: getBottomPrice(hOptions, vOptions),\n right: getRightPrice(hOptions, vOptions),\n left: getLeftPrice(hOptions, vOptions),\n };\n const bestPrice = Object.values(prices).sort((a, b) => a - b)[0]\n const bestPlacement = prices[preferredPlacement] === bestPrice\n ? preferredPlacement\n : Object.keys(prices).find(pl => prices[pl] === bestPrice)\n\n return propertiesByPlacement[bestPlacement](hOptions, vOptions, isRTL)\n}\n\nexport default class Popover extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = {\n scaleAnim: new Animated.Value(0.1),\n };\n }\n\n componentDidMount() {\n Animated.timing(this.state.scaleAnim, {\n duration: this.props.openAnimationDuration !== undefined ? this.props.openAnimationDuration : OPEN_ANIM_DURATION,\n toValue: 1,\n easing: Easing.out(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start();\n }\n\n close() {\n return new Promise(resolve => {\n Animated.timing(this.state.scaleAnim, {\n duration: this.props.closeAnimationDuration !== undefined ? this.props.closeAnimationDuration : CLOSE_ANIM_DURATION,\n toValue: 0,\n easing: Easing.in(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start(resolve);\n });\n }\n\n render() {\n const {\n style,\n children,\n layouts,\n anchorStyle,\n preferredPlacement,\n openAnimationDuration,\n closeAnimationDuration,\n placement: userPlacement,\n ...other\n } = this.props;\n const isRTL = I18nManager.isRTL;\n const animation = {\n transform: [ { scale: this.state.scaleAnim } ],\n opacity: this.state.scaleAnim,\n };\n const { position, placement, offset } = computeProperties(\n layouts,\n userPlacement,\n preferredPlacement,\n isRTL,\n );\n return (\n \n \n \n {children}\n \n \n );\n }\n\n}\n\nPopover.propTypes = {\n anchorStyle: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.number,\n PropTypes.array,\n ]),\n placement: PropTypes.oneOf(['auto', 'top', 'right', 'bottom', 'left']),\n preferredPlacement: PropTypes.oneOf(['top', 'right', 'bottom', 'left']),\n openAnimationDuration: PropTypes.number,\n closeAnimationDuration: PropTypes.number,\n};\n\nPopover.defaultProps = {\n preferredPlacement: 'top',\n placement: 'auto',\n};\n\nconst getContainerStyle = ({ placement, isRTL }) => ({\n left: {\n flexDirection: isRTL ? 'row' : 'row-reverse',\n },\n right: {\n flexDirection: isRTL ? 'row-reverse' : 'row',\n },\n top: {\n flexDirection: 'column-reverse',\n },\n bottom: {\n flexDirection: 'column',\n },\n})[placement]\n\nconst dynamicAnchorStyle = ({ offset, placement, isRTL }) => {\n const start = getStartPosKey(isRTL);\n switch (placement) {\n case 'right':\n return {\n top: offset,\n transform: [\n { translateX: anchorOffset },\n { rotate: '45deg' },\n ],\n };\n case 'left':\n return {\n top: offset,\n transform: [\n { translateX: -anchorOffset },\n { rotate: '45deg' },\n ],\n };\n case 'top':\n return {\n [start]: offset,\n transform: [\n { translateY: -anchorOffset },\n { rotate: '45deg' },\n ],\n };\n case 'bottom':\n return {\n [start]: offset,\n transform: [\n { translateY: anchorOffset },\n { rotate: '45deg' },\n ],\n };\n }\n}\n\nexport const styles = StyleSheet.create({\n animated: {\n padding: popoverPadding,\n backgroundColor: 'transparent',\n position: 'absolute',\n alignItems: 'center',\n },\n options: {\n borderRadius: 2,\n minWidth: anchorHyp,\n minHeight: anchorHyp,\n backgroundColor: 'white',\n\n // Shadow only works on iOS.\n shadowColor: 'black',\n shadowOpacity: 0.3,\n shadowOffset: { width: 3, height: 3 },\n shadowRadius: 4,\n\n // This will elevate the view on Android, causing shadow to be drawn.\n elevation: 5,\n },\n anchor: {\n width: anchorSize,\n height: anchorSize,\n backgroundColor: 'white',\n elevation: 5,\n },\n});\n","import './polyfills';\nimport { deprecatedComponent } from './helpers'\n\nimport Menu from './Menu';\nimport MenuProvider, { withCtx } from './MenuProvider';\nimport MenuOption from './MenuOption';\nimport MenuOptions from './MenuOptions';\nimport MenuTrigger from './MenuTrigger';\n\nimport ContextMenu from './renderers/ContextMenu';\nimport NotAnimatedContextMenu from './renderers/NotAnimatedContextMenu';\nimport SlideInMenu from './renderers/SlideInMenu';\nimport Popover from './renderers/Popover';\nconst renderers = { ContextMenu, SlideInMenu, NotAnimatedContextMenu, Popover };\n\nconst MenuContext = deprecatedComponent(\n 'MenuContext is deprecated and it might be removed in future releases, use MenuProvider instead.',\n ['openMenu', 'toggleMenu', 'closeMenu', 'isMenuOpen'],\n)(MenuProvider);\n\nexport {\n Menu as default,\n Menu,\n MenuProvider,\n MenuContext,\n MenuOption,\n MenuOptions,\n MenuTrigger,\n renderers,\n withCtx as withMenuContext,\n};\n"],"names":["Platform","select","obj","OS","measure","ref","Promise","resolve","x","y","width","height","pageX","pageY","makeName","nextID","makeTouchable","TouchableComponent","Touchable","android","TouchableNativeFeedback","ios","TouchableHighlight","default","defaultTouchableProps","underlayColor","iterator2array","it","arr","next","done","push","value","isClassComponent","component","prototype","render","deprecatedComponent","message","methods","deprecatedComponentHOC","Component","args","forEach","name","React","props","onRef","console","warn","require$$0","ReactPropTypesSecret","has","require$$1","printWarning","ReactIs","assign","checkPropTypes","withContext","Context","propName","wrap","EnhanceContext","forwardedRef","rest","custom","displayName","consumerName","Consumer","enhanceForwardRef","FC","forwardRef","defaultProps","propTypes","makeMenuRegistry","menus","Map","subscribe","instance","getName","get","set","unsubscribe","delete","updateLayoutInfo","layouts","menu","Object","hasOwnProperty","triggerLayout","optionsLayout","setOptionsCustomStyles","optionsCustomStyles","getMenu","getAll","values","OPEN_ANIM_DURATION","CLOSE_ANIM_DURATION","USE_NATIVE_DRIVER","Backdrop","fadeAnim","Animated","Value","timing","duration","toValue","useNativeDriver","start","onPress","style","TouchableWithoutFeedback","styles","fullscreen","opacity","View","PropTypes","func","isRequired","StyleSheet","create","position","top","left","bottom","right","CFG","debug","log","MenuPlaceholder","state","ctx","_isMenuClosing","backdropStyles","shouldRenderMenu","isMenuOpen","_isInitialized","placeholder","_onBackdropPress","onBackdropRef","_makeOptions","overflow","computePosition","windowLayout","MenuOutside","children","other","options","defaultOptionsContainerRenderer","layoutsEqual","a","b","Error","PopupMenuContext","createContext","withCtx","instanceCount","MenuProvider","backHandler","closeMenu","r","backdropRef","optionsRef","_placeholderRef","_getOpenedMenu","onBackdropPress","layout","nativeEvent","_ownLayout","trigger","_getTrigger","then","_menuRegistry","_notify","_safeAreaLayout","_isBackHandlerRegistered","menuActions","openMenu","toggleMenu","force","menuCtx","menuRegistry","customStyles","skipInstanceCheck","menuContextWrapper","BackHandler","removeEventListener","_handleBackButton","addEventListener","_setOpened","filter","_getOpened","isOpen","undefined","hideMenu","close","hideBackdrop","_invalidateTriggerLayouts","all","catch","err","forceUpdate","NULL","prev","openedMenu","find","_isRenderNeeded","afterSetState","beforeSetState","_beforeClose","onClose","onOpen","_initOpen","setState","openedMenuName","flex1","_onLayout","menuProviderWrapper","SafeAreaView","safeArea","_onSafeAreaLayout","backdrop","_onPlaceholderRef","open","e","isOutside","_getOptions","renderer","rendererProps","safeAreaLayout","optionsContainerStyle","renderOptionsContainer","optionsRenderer","onLayout","_onOptionsLayout","optionsContainer","optionsType","onOptionsRef","createElement","object","oneOfType","bool","flex","MenuOptions","_props","menuName","updateCustomStyles","optionsWrapper","number","array","MenuTrigger","disabled","text","triggerOnLongPress","onAlternativeAction","testID","_onPress","TriggerTouchableComponent","triggerOuterWrapper","triggerTouchable","triggerWrapper","Text","triggerText","string","axisPosition","oDim","wDim","tPos","tDim","pos","Math","round","fit","len","minPos","maxPos","fitPositionIntoSafeArea","saX","saY","saHeight","saWidth","oHeight","oWidth","wWidth","isRTL","wX","wY","wHeight","tX","tY","tHeight","tWidth","ContextMenu","scaleAnim","easing","Easing","out","cubic","in","animation","transform","scale","I18nManager","borderRadius","backgroundColor","PixelRatio","roundToNearestPixel","shadowColor","shadowOpacity","shadowOffset","shadowRadius","elevation","isRegularComponent","c","type","isTrigger","isMenuOptions","Menu","_name","_forceClose","_validateChildren","prevProps","opened","_opened","_reduceChildren","Children","toArray","reduce","child","cloneElement","key","t","_trigger","onSelect","MenuExternal","defineProperty","val","setDefaultRenderer","setDefaultRendererProps","MenuOption","_getMenusOnSelect","shouldClose","disableTouchable","_getCustomStyles","count","disabledStyles","defaultStyles","optionTextDisabled","optionText","option","optionWrapper","rendered","OptionTouchableComponent","_onSelect","optionTouchable","any","padding","color","NotAnimatedContextMenu","SlideInMenu","slide","translateY","interpolate","inputRange","outputRange","popoverPadding","anchorSize","anchorHyp","sqrt","anchorOffset","axisNegativeSideProperties","axisPositiveSideProperties","centeringProperties","center","leftOffset","rightOffset","axisCenteredPositionProperties","offset","getCenteringPrice","max","getTopPrice","hOptions","vOptions","centerOffset","sideOffset","getBottomPrice","getLeftPrice","getRightPrice","getStartPosKey","topProperties","centered","side","placement","bottomProperties","rightProperties","leftProperties","propertiesByPlacement","computeProperties","preferredPlacement","prices","bestPrice","sort","bestPlacement","keys","pl","Popover","openAnimationDuration","closeAnimationDuration","anchorStyle","userPlacement","animated","getContainerStyle","anchor","dynamicAnchorStyle","oneOf","flexDirection","translateX","rotate","alignItems","minWidth","minHeight","renderers","MenuContext"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"rnpm.js","sources":["../src/polyfills.js","../src/helpers.js","../node_modules/object-assign/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/checkPropTypes.js","../node_modules/prop-types/factoryWithTypeCheckers.js","../node_modules/prop-types/index.js","../src/with-context.js","../src/menuRegistry.js","../src/constants.js","../src/Backdrop.js","../src/logger.js","../src/MenuPlaceholder.js","../src/renderers/MenuOutside.js","../src/MenuProvider.js","../src/MenuOptions.js","../src/MenuTrigger.js","../src/renderers/ContextMenu.js","../src/Menu.js","../src/MenuOption.js","../src/renderers/NotAnimatedContextMenu.js","../src/renderers/SlideInMenu.js","../src/renderers/Popover.js","../src/index.js"],"sourcesContent":["// platform select polyfil for older RN versions\nimport { Platform } from 'react-native';\n\nif (!Platform.select) {\n Platform.select = (obj) => obj[Platform.OS];\n}\n","import React from 'react';\nimport { Platform, TouchableHighlight, TouchableNativeFeedback } from 'react-native';\n\n/**\n * Promisifies measure's callback function and returns layout object.\n */\nexport const measure = ref => new Promise((resolve) => {\n ref.measure((x, y, width, height, pageX, pageY) => {\n resolve({\n x: pageX, y: pageY,\n width, height,\n })\n });\n});\n\n/**\n * Create unique menu name across all menu instances.\n */\nexport const makeName = (function() {\n let nextID = 1;\n return () => `menu-${nextID++}`;\n})();\n\n/**\n * Create touchable component based on passed parameter and platform.\n * It also returns default props for specific touchable types.\n */\nexport function makeTouchable(TouchableComponent) {\n const Touchable = TouchableComponent || Platform.select({\n android: TouchableNativeFeedback,\n ios: TouchableHighlight,\n default: TouchableHighlight,\n });\n let defaultTouchableProps = {};\n if (Touchable === TouchableHighlight) {\n defaultTouchableProps = { underlayColor: 'rgba(0, 0, 0, 0.1)' };\n }\n return { Touchable, defaultTouchableProps };\n}\n\nfunction includes(arr, value) {\n return arr.indexOf(value) > -1;\n}\n\n/**\nLog object - prepares object for logging by stripping all \"private\" or excluding fields\n*/\nexport function lo(object, ...excluding) {\n const exc = Array.from(excluding);\n function isObject(obj) {\n return obj === Object(obj);\n }\n function withoutPrivate(obj) {\n if (!isObject(obj)) return obj;\n const res = {};\n for (var property in obj) {\n if (obj.hasOwnProperty(property)) {\n if (!property.startsWith('_') && !includes(exc, property)) {\n res[property] = withoutPrivate(obj[property]);\n }\n }\n }\n return res;\n }\n return withoutPrivate(object);\n}\n\n/**\nConverts iterator to array\n*/\nexport function iterator2array(it) {\n // workaround around https://github.com/instea/react-native-popup-menu/issues/41#issuecomment-340290127\n const arr = [];\n for (let next = it.next(); !next.done; next = it.next()) {\n arr.push(next.value);\n }\n return arr;\n}\n\n/** checks if component is class component */\nexport function isClassComponent(component) {\n return component.prototype && !!component.prototype.render;\n}\n\n/**\n * Higher order component to deprecate usage of component.\n * message - deprecate warning message\n * methods - array of method names to be delegated to deprecated component\n */\nexport function deprecatedComponent(message, methods = []) {\n return function deprecatedComponentHOC(Component) {\n return class DeprecatedComponent extends React.Component {\n constructor(...args) {\n super(...args);\n methods.forEach(name => {\n // delegate methods to the component\n this[name] = (...args) => this.ref && this.ref[name](...args)\n });\n }\n\n render() {\n return \n }\n\n onRef = ref => this.ref = ref;\n\n componentDidMount() {\n console.warn(message);\n }\n }\n }\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (typeSpecs.hasOwnProperty(typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n )\n\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOf, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (propValue.hasOwnProperty(key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from\n // props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&\n Symbol.for &&\n Symbol.for('react.element')) ||\n 0xeac7;\n\n var isValidElement = function(object) {\n return typeof object === 'object' &&\n object !== null &&\n object.$$typeof === REACT_ELEMENT_TYPE;\n };\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(isValidElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","import React from \"react\";\n\nexport function withContext(Context, propName = \"context\") {\n return function wrap(Component) {\n class EnhanceContext extends React.Component {\n render() {\n const { forwardedRef, ...rest } = this.props;\n\n return (\n \n {value => {\n const custom = {\n [propName]: value,\n ref: forwardedRef,\n };\n return ;\n }}\n \n );\n }\n }\n\n const name = Component.displayName || Component.name || \"Component\";\n const consumerName =\n Context.Consumer.displayName ||\n Context.Consumer.name ||\n \"Context.Consumer\";\n\n function enhanceForwardRef(props, ref) {\n return ;\n }\n\n enhanceForwardRef.displayName = `enhanceContext-${consumerName}(${name})`;\n\n const FC = React.forwardRef(enhanceForwardRef);\n FC.defaultProps = Component.defaultProps;\n FC.propTypes = Component.propTypes;\n return FC\n };\n}\n","import { iterator2array } from './helpers';\n\n/**\n * Registry to subscribe, unsubscribe and update data of menus.\n *\n * menu data: {\n * instance: react instance\n * triggerLayout: Object - layout of menu trigger if known\n * optionsLayout: Object - layout of menu options if known\n * optionsCustomStyles: Object - custom styles of options\n * }\n*/\nexport default function makeMenuRegistry(menus = new Map()) {\n\n /**\n * Subscribes menu instance.\n */\n function subscribe(instance) {\n const name = instance.getName()\n if (menus.get(name)) {\n console.warn(`incorrect usage of popup menu - menu with name ${name} already exists`);\n }\n menus.set(name, { name, instance });\n }\n\n /**\n * Unsubscribes menu instance.\n */\n function unsubscribe(instance) {\n menus.delete(instance.getName());\n }\n\n /**\n * Updates layout infomration.\n */\n function updateLayoutInfo(name, layouts = {}) {\n if (!menus.has(name)) {\n return;\n }\n const menu = Object.assign({}, menus.get(name));\n if (layouts.hasOwnProperty('triggerLayout')) {\n menu.triggerLayout = layouts.triggerLayout;\n }\n if (layouts.hasOwnProperty('optionsLayout')) {\n menu.optionsLayout = layouts.optionsLayout;\n }\n menus.set(name, menu);\n }\n\n function setOptionsCustomStyles(name, optionsCustomStyles) {\n if (!menus.has(name)) {\n return;\n }\n const menu = { ...menus.get(name), optionsCustomStyles };\n menus.set(name, menu);\n }\n\n /**\n * Get `menu data` by name.\n */\n function getMenu(name) {\n return menus.get(name);\n }\n\n /**\n * Returns all subscribed menus as array of `menu data`\n */\n function getAll() {\n return iterator2array(menus.values());\n }\n\n return { subscribe, unsubscribe, updateLayoutInfo, getMenu, getAll, setOptionsCustomStyles };\n}\n","import { Platform } from 'react-native';\n\n// common durations of animation\nexport const OPEN_ANIM_DURATION = 225;\nexport const CLOSE_ANIM_DURATION = 195;\n\nexport const USE_NATIVE_DRIVER = (Platform.OS !== \"web\");\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { View, StyleSheet, TouchableWithoutFeedback, Animated } from 'react-native';\nimport { OPEN_ANIM_DURATION, CLOSE_ANIM_DURATION, USE_NATIVE_DRIVER } from './constants';\n\nclass Backdrop extends Component {\n\n constructor(...args) {\n super(...args);\n this.fadeAnim = new Animated.Value(0.001);\n }\n\n open() {\n return new Promise(resolve => {\n Animated.timing(this.fadeAnim, {\n duration: OPEN_ANIM_DURATION,\n toValue: 1,\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start(resolve);\n });\n }\n\n close() {\n return new Promise(resolve => {\n Animated.timing(this.fadeAnim, {\n duration: CLOSE_ANIM_DURATION,\n toValue: 0,\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start(resolve);\n });\n }\n\n render() {\n const { onPress, style } = this.props;\n return (\n \n \n \n \n \n );\n }\n\n}\n\nBackdrop.propTypes = {\n onPress: PropTypes.func.isRequired,\n};\n\nconst styles = StyleSheet.create({\n fullscreen: {\n opacity: 0,\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n },\n});\n\nexport default Backdrop;\n","\nexport const CFG = {\n debug: false,\n}\n/**\n * Debug logger depending on `Menu.debug` static porperty.\n */\nexport const debug = (...args) => {\n CFG.debug && console.log('react-native-popup-menu', ...args);\n};\n","import React, { Component } from 'react';\nimport { View, StyleSheet } from 'react-native';\nimport Backdrop from './Backdrop';\nimport { debug } from './logger.js';\n\nexport default class MenuPlaceholder extends Component {\n constructor(props) {\n super(props)\n this.state = {};\n }\n\n shouldComponentUpdate() {\n // don't terminate closing animation\n return !this.props.ctx._isMenuClosing;\n }\n\n render() {\n const { ctx, backdropStyles } = this.props;\n const shouldRenderMenu = ctx.isMenuOpen() && ctx._isInitialized();\n debug('MenuPlaceholder should render', shouldRenderMenu);\n if (!shouldRenderMenu) {\n return null;\n }\n return (\n \n \n {\n ctx._makeOptions()\n }\n \n );\n }\n}\n\nconst styles = StyleSheet.create({\n placeholder: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n overflow: 'hidden',\n },\n});\n","import React from 'react';\nimport { View, StyleSheet } from 'react-native';\n\nexport const computePosition = ({ windowLayout }) => ({\n top: windowLayout.height,\n left: windowLayout.width,\n});\n\n\nconst MenuOutside = props => {\n const { style, children, layouts, ...other } = props;\n const position = computePosition(layouts);\n return (\n \n {children}\n \n );\n};\n\nconst styles = StyleSheet.create({\n options: {\n position: 'absolute',\n },\n});\n\nexport default MenuOutside;\n","import React, { Component, createContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { View, BackHandler, SafeAreaView, StyleSheet } from 'react-native';\n\nimport { withContext } from './with-context';\nimport makeMenuRegistry from './menuRegistry';\nimport MenuPlaceholder from './MenuPlaceholder';\nimport { measure, isClassComponent } from './helpers';\nimport { debug } from './logger.js';\nimport MenuOutside from './renderers/MenuOutside';\n\nconst defaultOptionsContainerRenderer = options => options;\nconst layoutsEqual = (a, b) => (\n a === b || (a && b && a.width === b.width && a.height === b.height)\n);\n\nif (!React.forwardRef) {\n throw new Error('This version of popup-menu requires RN 0.55+. Check our compatibility table.')\n}\nexport const PopupMenuContext = createContext({})\nexport const withCtx = withContext(PopupMenuContext, \"ctx\");\n\n// count of MenuProvider instances\nlet instanceCount = 0;\n\nexport default class MenuProvider extends Component {\n\n constructor(props) {\n super(props);\n this._menuRegistry = makeMenuRegistry();\n this._isMenuClosing = false;\n this._isBackHandlerRegistered = false;\n const menuActions = {\n openMenu: name => this.openMenu(name),\n closeMenu: () => this.closeMenu(),\n toggleMenu: name => this.toggleMenu(name),\n isMenuOpen: () => this.isMenuOpen(),\n _getOpenedMenu: () => this._getOpenedMenu(),\n _notify: force => this._notify(force),\n };\n this.menuCtx = { menuRegistry: this._menuRegistry, menuActions }\n }\n\n _handleBackButton = () => {\n const { backHandler } = this.props;\n debug('_handleBackButton called', backHandler);\n\n // Default handler if true is passed\n if (backHandler === true) {\n if (this.isMenuOpen()) {\n this.closeMenu();\n return true;\n }\n }\n\n // Custom handler called with MenuProvider instance id function is passed\n if (typeof backHandler === 'function') {\n return backHandler(this);\n }\n\n return false;\n }\n\n componentDidMount() {\n const { customStyles, skipInstanceCheck } = this.props;\n if (customStyles.menuContextWrapper) {\n console.warn('menuContextWrapper custom style is deprecated and it might be removed in future releases, use menuProviderWrapper instead.');\n }\n if (!skipInstanceCheck) {\n instanceCount++;\n }\n if (instanceCount > 1) {\n console.warn('In most cases you should not have more MenuProviders in your app (see API documentation). In other cases use skipInstanceCheck prop.');\n }\n }\n\n componentWillUnmount() {\n debug('unmounting menu provider')\n if (this._isBackHandlerRegistered) {\n BackHandler.removeEventListener('hardwareBackPress', this._handleBackButton);\n }\n const { skipInstanceCheck } = this.props;\n if (!skipInstanceCheck) {\n instanceCount--;\n }\n }\n\n isMenuOpen() {\n return !!this._getOpenedMenu();\n }\n\n openMenu(name) {\n const menu = this._menuRegistry.getMenu(name);\n if (!menu) {\n console.warn(`menu with name ${name} does not exist`);\n return Promise.resolve();\n }\n debug('open menu', name);\n if (!this._isBackHandlerRegistered) {\n // delay menu registration until the menu is really opened (and thus this back handler will be called \"sooner\")\n // too soon registration can cause another back handlers (e.g. react navigation) to be called instead of our back handler\n BackHandler.addEventListener('hardwareBackPress', this._handleBackButton);\n this._isBackHandlerRegistered = true;\n }\n menu.instance._setOpened(true);\n return this._notify();\n }\n\n closeMenu() { // has no effect on controlled menus\n debug('close menu');\n this._menuRegistry.getAll()\n .filter(menu => menu.instance._getOpened())\n .forEach(menu => menu.instance._setOpened(false));\n return this._notify();\n }\n\n _invalidateTriggerLayouts() {\n // invalidate layouts for closed menus,\n // both controlled and uncontrolled menus\n this._menuRegistry.getAll()\n .filter(menu => !menu.instance.isOpen())\n .forEach(menu => {\n this._menuRegistry.updateLayoutInfo(menu.name, { triggerLayout: undefined });\n });\n }\n\n _beforeClose(menu) {\n debug('before close', menu.name);\n const hideMenu = (this.optionsRef\n && this.optionsRef.close\n && this.optionsRef.close()) || Promise.resolve();\n const hideBackdrop = this.backdropRef && this.backdropRef.close();\n this._invalidateTriggerLayouts();\n this._isMenuClosing = true;\n return Promise.all([hideMenu, hideBackdrop])\n .then(() => {\n this._isMenuClosing = false;\n })\n .catch(err => {\n this._isMenuClosing = false;\n throw err;\n })\n }\n\n toggleMenu(name) {\n const menu = this._menuRegistry.getMenu(name);\n if (!menu) {\n console.warn(`menu with name ${name} does not exist`);\n return Promise.resolve();\n }\n debug('toggle menu', name);\n if (menu.instance._getOpened()) {\n return this.closeMenu();\n } else {\n return this.openMenu(name);\n }\n }\n\n _notify(forceUpdate) {\n const NULL = {};\n const prev = this.openedMenu || NULL;\n const next = this._menuRegistry.getAll().find(menu => menu.instance.isOpen()) || NULL;\n // set newly opened menu before any callbacks are called\n this.openedMenu = next === NULL ? undefined : next;\n if (!forceUpdate && !this._isRenderNeeded(prev, next)) {\n return Promise.resolve();\n }\n debug('notify: next menu:', next.name, ' prev menu:', prev.name);\n let afterSetState = undefined;\n let beforeSetState = () => Promise.resolve();\n if (prev.name !== next.name) {\n if (prev !== NULL && !prev.instance.isOpen()) {\n beforeSetState = () => this._beforeClose(prev)\n .then(() => prev.instance.props.onClose());\n }\n if (next !== NULL) {\n next.instance.props.onOpen();\n afterSetState = () => this._initOpen(next);\n }\n }\n return beforeSetState().then(() => {\n if (!this._placeholderRef) {\n debug('setState ignored - maybe the context was unmounted')\n return\n }\n this._placeholderRef.setState({ openedMenuName: this.openedMenu && this.openedMenu.name }, afterSetState);\n debug('notify ended');\n });\n }\n\n /**\n Compares states of opened menu to determine if rerender is needed.\n */\n _isRenderNeeded(prev, next) {\n if (prev === next) {\n debug('_isRenderNeeded: skipping - no change');\n return false;\n }\n if (prev.name !== next.name) {\n return true;\n }\n const { triggerLayout, optionsLayout } = next;\n if (!triggerLayout || !optionsLayout) {\n debug('_isRenderNeeded: skipping - no trigger or options layout');\n return false;\n }\n return true;\n }\n\n render() {\n const { style, customStyles } = this.props;\n debug('render menu', this.isMenuOpen(), this._ownLayout);\n return (\n \n \n \n { this.props.children }\n \n \n \n \n \n \n \n );\n }\n\n onBackdropRef = r => {\n this.backdropRef = r;\n }\n\n onOptionsRef = r => {\n this.optionsRef = r;\n }\n\n _onPlaceholderRef = r => this._placeholderRef = r;\n\n _getOpenedMenu() {\n const name = this._placeholderRef && this._placeholderRef.state.openedMenuName;\n const menu = name ? this._menuRegistry.getMenu(name) : undefined;\n debug('_getOpenedMenu', name, !!menu)\n return menu\n }\n\n _onBackdropPress = () => {\n debug('on backdrop press');\n const menu = this._getOpenedMenu();\n if (menu) {\n menu.instance.props.onBackdropPress();\n }\n this.closeMenu();\n }\n\n _isInitialized() {\n return !!this._ownLayout;\n }\n\n _initOpen(menu) {\n debug('opening', menu.name);\n const trigger = menu.instance._getTrigger();\n measure(trigger).then(triggerLayout => {\n debug('got trigger measurements', triggerLayout);\n this._menuRegistry.updateLayoutInfo(menu.name, { triggerLayout });\n this.backdropRef && this.backdropRef.open()\n this._notify();\n });\n }\n\n _onOptionsLayout(e, name, isOutside) {\n const optionsLayout = e.nativeEvent.layout;\n optionsLayout.isOutside = isOutside;\n debug('got options layout', optionsLayout);\n this._menuRegistry.updateLayoutInfo(name, { optionsLayout });\n this._notify();\n }\n\n _makeOptions() {\n const { instance, triggerLayout, optionsLayout } = this._getOpenedMenu();\n const options = instance._getOptions();\n const { renderer, rendererProps } = instance.props;\n const windowLayout = this._ownLayout;\n const safeAreaLayout = this._safeAreaLayout;\n const { optionsContainerStyle, renderOptionsContainer, customStyles } = options.props;\n const optionsRenderer = renderOptionsContainer || defaultOptionsContainerRenderer;\n const isOutside = !triggerLayout || !optionsLayout;\n const onLayout = e => this._onOptionsLayout(e, instance.getName(), isOutside);\n const style = [optionsContainerStyle, customStyles.optionsContainer];\n const layouts = { windowLayout, triggerLayout, optionsLayout, safeAreaLayout };\n const props = { ...rendererProps, style, onLayout, layouts };\n const optionsType = isOutside ? MenuOutside : renderer;\n if (isClassComponent(optionsType)) {\n props.ref = this.onOptionsRef;\n }\n return React.createElement(optionsType, props, optionsRenderer(options));\n }\n\n _onLayout = ({ nativeEvent: { layout } }) => {\n if (layoutsEqual(this._ownLayout, layout)) {\n return;\n }\n this._ownLayout = layout;\n debug('context layout has changed', this._ownLayout);\n if (!this.isMenuOpen()) {\n return;\n }\n const { instance } = this._getOpenedMenu();\n const trigger = instance._getTrigger();\n measure(trigger).then(triggerLayout => {\n debug('got trigger measurements after context layout change', triggerLayout);\n this._menuRegistry.updateLayoutInfo(instance.getName(), { triggerLayout });\n // force update as own layout has changed\n this._notify(true);\n });\n }\n\n _onSafeAreaLayout = ({ nativeEvent: { layout } }) => {\n if (layoutsEqual(this._safeAreaLayout, layout)) {\n return;\n }\n this._safeAreaLayout = layout;\n debug('safeArea layout has changed', this._safeAreaLayout);\n if (!this.isMenuOpen()) {\n return;\n }\n this._notify(true);\n }\n\n}\n\nMenuProvider.propTypes = {\n customStyles: PropTypes.object,\n backHandler: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n skipInstanceCheck: PropTypes.bool,\n}\n\nMenuProvider.defaultProps = {\n customStyles: {},\n backHandler: false,\n skipInstanceCheck: false,\n};\n\nconst styles = StyleSheet.create({\n flex1: {\n flex: 1,\n },\n safeArea: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n },\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { View } from 'react-native';\nimport { withCtx } from './MenuProvider';\n\nexport class MenuOptions extends React.Component {\n\n updateCustomStyles(_props) {\n const { customStyles } = _props\n const menu = this.props.ctx.menuActions._getOpenedMenu()\n // FIXME react 16.3 workaround for ControlledExample!\n if (!menu) return\n const menuName = menu.instance.getName()\n this.props.ctx.menuRegistry.setOptionsCustomStyles(menuName, customStyles)\n }\n\n componentDidMount() {\n this.updateCustomStyles(this.props)\n }\n\n componentDidUpdate() {\n this.updateCustomStyles(this.props)\n }\n\n render() {\n const { customStyles, style, children } = this.props\n return (\n \n {children}\n \n )\n }\n}\n\nMenuOptions.propTypes = {\n customStyles: PropTypes.object,\n renderOptionsContainer: PropTypes.func,\n optionsContainerStyle: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.number,\n PropTypes.array,\n ]),\n};\n\nMenuOptions.defaultProps = {\n customStyles: {},\n};\n\nexport default withCtx(MenuOptions);\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { View, Text } from 'react-native';\nimport { debug } from './logger.js';\nimport { makeTouchable } from './helpers';\nimport { withCtx } from './MenuProvider';\n\nexport class MenuTrigger extends Component {\n\n _onPress() {\n debug('trigger onPress');\n this.props.onPress && this.props.onPress();\n this.props.ctx.menuActions.openMenu(this.props.menuName);\n }\n\n render() {\n const { disabled, onRef, text, children, style, customStyles, menuName, \n triggerOnLongPress, onAlternativeAction, testID, ...other } = this.props;\n const onPress = () => !disabled && this._onPress();\n const { Touchable, defaultTouchableProps } = makeTouchable(customStyles.TriggerTouchableComponent);\n return (\n \n \n \n {text ? {text} : children}\n \n \n \n );\n }\n\n}\n\nMenuTrigger.propTypes = {\n disabled: PropTypes.bool,\n text: PropTypes.string,\n onPress: PropTypes.func,\n onAlternativeAction: PropTypes.func,\n customStyles: PropTypes.object,\n triggerOnLongPress: PropTypes.bool,\n testID: PropTypes.string,\n};\n\nMenuTrigger.defaultProps = {\n disabled: false,\n customStyles: {},\n testID: undefined,\n};\n\nexport default withCtx(MenuTrigger)\n","import React from 'react';\nimport { I18nManager, Animated, Easing, StyleSheet, View } from 'react-native';\nimport { OPEN_ANIM_DURATION, CLOSE_ANIM_DURATION, USE_NATIVE_DRIVER } from '../constants';\n\nconst axisPosition = (oDim, wDim, tPos, tDim) => {\n // if options are bigger than window dimension, then render at 0\n if (oDim > wDim) {\n return 0;\n }\n // render at trigger position if possible\n if (tPos + oDim <= wDim) {\n return tPos;\n }\n // aligned to the trigger from the bottom (right)\n if (tPos + tDim - oDim >= 0) {\n return tPos + tDim - oDim;\n }\n // compute center position\n let pos = Math.round(tPos + (tDim / 2) - (oDim / 2));\n // check top boundary\n if (pos < 0) {\n return 0;\n }\n // check bottom boundary\n if (pos + oDim > wDim) {\n return wDim - oDim;\n }\n // if everything ok, render in center position\n return pos;\n};\n\nfunction fit(pos, len, minPos, maxPos) {\n if (pos === undefined) {\n return undefined;\n }\n if (pos + len > maxPos) {\n pos = maxPos - len;\n }\n if (pos < minPos) {\n pos = minPos;\n }\n return pos;\n}\n// fits options (position) into safeArea\nexport const fitPositionIntoSafeArea = (position, layouts) => {\n const { windowLayout, safeAreaLayout, optionsLayout } = layouts;\n if (!safeAreaLayout) {\n return position;\n }\n const { x: saX, y: saY, height: saHeight, width: saWidth } = safeAreaLayout;\n const { height: oHeight, width: oWidth } = optionsLayout;\n const { width: wWidth } = windowLayout;\n let { top, left, right } = position;\n top = fit(top, oHeight, saY, saY + saHeight);\n left = fit(left, oWidth, saX, saX + saWidth)\n right = fit(right, oWidth, wWidth - saX - saWidth, saX)\n return { top, left, right };\n}\n\nexport const computePosition = (layouts, isRTL) => {\n const { windowLayout, triggerLayout, optionsLayout } = layouts;\n const { x: wX, y: wY, width: wWidth, height: wHeight } = windowLayout;\n const { x: tX, y: tY, height: tHeight, width: tWidth } = triggerLayout;\n const { height: oHeight, width: oWidth } = optionsLayout;\n const top = axisPosition(oHeight, wHeight, tY - wY, tHeight);\n const left = axisPosition(oWidth, wWidth, tX - wX, tWidth);\n const start = isRTL ? 'right' : 'left';\n const position = { top, [start]: left };\n return fitPositionIntoSafeArea(position, layouts);\n};\n\nexport default class ContextMenu extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = {\n scaleAnim: new Animated.Value(0.1),\n };\n }\n\n componentDidMount() {\n Animated.timing(this.state.scaleAnim, {\n duration: OPEN_ANIM_DURATION,\n toValue: 1,\n easing: Easing.out(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start();\n }\n\n close() {\n return new Promise(resolve => {\n Animated.timing(this.state.scaleAnim, {\n duration: CLOSE_ANIM_DURATION,\n toValue: 0,\n easing: Easing.in(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start(resolve);\n });\n }\n\n render() {\n const { style, children, layouts, ...other } = this.props;\n const animation = {\n transform: [ { scale: this.state.scaleAnim } ],\n opacity: this.state.scaleAnim,\n };\n const position = computePosition(layouts, I18nManager.isRTL);\n return (\n \n \n {children}\n \n \n );\n }\n\n}\n\n// public exports\nContextMenu.computePosition = computePosition;\nContextMenu.fitPositionIntoSafeArea = fitPositionIntoSafeArea;\n\nexport const styles = StyleSheet.create({\n options: {\n position: 'absolute',\n borderRadius: 2,\n backgroundColor: 'white',\n\n // Shadow only works on iOS.\n shadowColor: 'black',\n shadowOpacity: 0.3,\n shadowOffset: { width: 3, height: 3 },\n shadowRadius: 4,\n\n // This will elevate the view on Android, causing shadow to be drawn.\n elevation: 5,\n },\n});\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { View } from 'react-native';\nimport MenuOptions from './MenuOptions';\nimport MenuTrigger from './MenuTrigger';\nimport ContextMenu from './renderers/ContextMenu';\nimport { makeName } from './helpers';\nimport { debug, CFG } from './logger';\nimport { withCtx } from './MenuProvider';\n\nconst isRegularComponent = c => c.type !== MenuOptions && c.type !== MenuTrigger;\nconst isTrigger = c => c.type === MenuTrigger;\nconst isMenuOptions = c => c.type === MenuOptions;\n\nexport class Menu extends Component {\n\n constructor(props) {\n super(props);\n this._name = this.props.name || makeName();\n this._forceClose = false;\n const { ctx } = props;\n if(!(ctx && ctx.menuActions)) {\n throw new Error(\"Menu component must be ancestor of MenuProvider\");\n }\n }\n\n componentDidMount() {\n if (!this._validateChildren()) {\n return;\n }\n debug('subscribing menu', this._name);\n this.props.ctx.menuRegistry.subscribe(this);\n this.props.ctx.menuActions._notify();\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.name !== prevProps.name) {\n console.warn('Menu name cannot be changed');\n }\n // force update if menu is opened as its content might have changed\n const force = this.isOpen();\n debug('component did update', this._name, force);\n this.props.ctx.menuActions._notify(force);\n }\n\n componentWillUnmount() {\n debug('unsubscribing menu', this._name);\n if (this.isOpen()) {\n this._forceClose = true;\n this.props.ctx.menuActions._notify();\n }\n this.props.ctx.menuRegistry.unsubscribe(this);\n }\n\n open() {\n return this.props.ctx.menuActions.openMenu(this._name);\n }\n\n close() {\n return this.props.ctx.menuActions.closeMenu();\n }\n\n isOpen() {\n if (this._forceClose) {\n return false;\n }\n return this.props.hasOwnProperty('opened') ? this.props.opened : this._opened;\n }\n\n getName() {\n return this._name;\n }\n\n render() {\n const { style } = this.props;\n const children = this._reduceChildren();\n return (\n \n {children}\n \n );\n }\n\n _reduceChildren() {\n return React.Children.toArray(this.props.children).reduce((r, child) => {\n if (isTrigger(child)) {\n r.push(React.cloneElement(child, {\n key: null,\n menuName: this._name,\n onRef: (t => this._trigger = t),\n }));\n }\n if (isRegularComponent(child)) {\n r.push(child);\n }\n return r;\n }, []);\n }\n\n _getTrigger() {\n return this._trigger;\n }\n\n _getOptions() {\n return React.Children.toArray(this.props.children).find(isMenuOptions);\n }\n\n _getOpened() {\n return this._opened;\n }\n\n _setOpened(opened) {\n this._opened = opened;\n }\n\n _validateChildren() {\n const children = React.Children.toArray(this.props.children);\n const options = children.find(isMenuOptions);\n if (!options) {\n console.warn('Menu has to contain MenuOptions component');\n }\n const trigger = children.find(isTrigger);\n if (!trigger) {\n console.warn('Menu has to contain MenuTrigger component');\n }\n return options && trigger;\n }\n\n}\n\nMenu.propTypes = {\n name: PropTypes.string,\n renderer: PropTypes.func,\n rendererProps: PropTypes.object,\n onSelect: PropTypes.func,\n onOpen: PropTypes.func,\n onClose: PropTypes.func,\n opened: PropTypes.bool,\n onBackdropPress: PropTypes.func,\n};\n\nMenu.defaultProps = {\n renderer: ContextMenu,\n rendererProps: {},\n onSelect: () => {},\n onOpen: () => {},\n onClose: () => {},\n onBackdropPress: () => {},\n};\n\nconst MenuExternal = withCtx(Menu);\nObject.defineProperty(MenuExternal, 'debug', \n { \n get: function() { return CFG.debug }, \n set: function(val) { CFG.debug = val }, \n });\nMenuExternal.setDefaultRenderer = (renderer) => {\n Menu.defaultProps.renderer = renderer;\n}\nMenuExternal.setDefaultRendererProps = (rendererProps) => {\n Menu.defaultProps.rendererProps = rendererProps;\n}\nexport default MenuExternal;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { View, StyleSheet, Text } from 'react-native';\nimport { debug } from './logger';\nimport { makeTouchable } from './helpers';\nimport { withCtx } from './MenuProvider';\n\n\nexport class MenuOption extends Component {\n\n _onSelect() {\n const { value } = this.props;\n const onSelect = this.props.onSelect || this._getMenusOnSelect()\n const shouldClose = onSelect(value) !== false;\n debug('select option', value, shouldClose);\n if (shouldClose) {\n this.props.ctx.menuActions.closeMenu();\n }\n }\n\n _getMenusOnSelect() {\n const menu = this.props.ctx.menuActions._getOpenedMenu();\n return menu.instance.props.onSelect;\n }\n\n _getCustomStyles() {\n // FIXME react 16.3 workaround for ControlledExample!\n const menu = this.props.ctx.menuActions._getOpenedMenu() || {}\n const { optionsCustomStyles } = menu;\n return {\n ...optionsCustomStyles,\n ...this.props.customStyles,\n }\n }\n\n render() {\n const { text, disabled, disableTouchable, children, style, testID } = this.props;\n const customStyles = this._getCustomStyles()\n if (text && React.Children.count(children) > 0) {\n console.warn(\"MenuOption: Please don't use text property together with explicit children. Children are ignored.\");\n }\n if (disabled) {\n const disabledStyles = [defaultStyles.optionTextDisabled, customStyles.optionText];\n return (\n \n {text ? {text} : children}\n \n );\n }\n const rendered = (\n \n {text ? {text} : children}\n \n );\n if (disableTouchable) {\n return rendered;\n }\n else {\n const { Touchable, defaultTouchableProps } = makeTouchable(customStyles.OptionTouchableComponent);\n return (\n this._onSelect()}\n {...defaultTouchableProps}\n {...customStyles.optionTouchable}\n >\n {rendered}\n \n );\n }\n }\n}\n\nMenuOption.propTypes = {\n disabled: PropTypes.bool,\n disableTouchable: PropTypes.bool,\n onSelect: PropTypes.func,\n text: PropTypes.string,\n value: PropTypes.any,\n customStyles: PropTypes.object,\n testID: PropTypes.string,\n};\n\nMenuOption.defaultProps = {\n disabled: false,\n disableTouchable: false,\n customStyles: {},\n testID: undefined,\n};\n\nconst defaultStyles = StyleSheet.create({\n option: {\n padding: 5,\n backgroundColor: 'transparent',\n },\n optionTextDisabled: {\n color: '#ccc',\n },\n});\n\nexport default withCtx(MenuOption);\n","import React from 'react';\nimport { I18nManager, View } from 'react-native';\n\nimport { computePosition, styles } from './ContextMenu';\n\n/**\nSimplified version of ContextMenu without animation.\n*/\nexport default class NotAnimatedContextMenu extends React.Component {\n\n render() {\n const { style, children, layouts, ...other } = this.props;\n const position = computePosition(layouts, I18nManager.isRTL);\n return (\n \n {children}\n \n );\n }\n\n}\n","import React from 'react';\nimport { Animated, StyleSheet, Easing } from 'react-native';\nimport { OPEN_ANIM_DURATION, CLOSE_ANIM_DURATION, USE_NATIVE_DRIVER } from '../constants';\n\nexport const computePosition = (layouts) => {\n const { windowLayout, optionsLayout } = layouts\n const { height: wHeight } = windowLayout;\n const { height: oHeight } = optionsLayout;\n const top = wHeight - oHeight;\n const left = 0, right = 0;\n const position = { top, left, right };\n // TODO what is the best way to handle safeArea?\n // most likely some extra paddings inside SlideInMenu \n return position;\n}\n\nexport default class SlideInMenu extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = {\n slide: new Animated.Value(0),\n };\n }\n\n componentDidMount() {\n Animated.timing(this.state.slide, {\n duration: OPEN_ANIM_DURATION,\n toValue: 1,\n easing: Easing.out(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start();\n }\n\n close() {\n return new Promise(resolve => {\n Animated.timing(this.state.slide, {\n duration: CLOSE_ANIM_DURATION,\n toValue: 0,\n easing: Easing.in(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start(resolve);\n });\n }\n\n render() {\n const { style, children, layouts, ...other } = this.props;\n const { height: oHeight } = layouts.optionsLayout;\n const animation = {\n transform: [{\n translateY: this.state.slide.interpolate({\n inputRange: [0, 1],\n outputRange: [oHeight, 0],\n }),\n }],\n };\n const position = computePosition(layouts);\n return (\n \n {children}\n \n );\n }\n}\n\nconst styles = StyleSheet.create({\n options: {\n position: 'absolute',\n backgroundColor: 'white',\n\n // Shadow only works on iOS.\n shadowColor: 'black',\n shadowOpacity: 0.3,\n shadowOffset: { width: 3, height: 3 },\n shadowRadius: 4,\n\n // This will elevate the view on Android, causing shadow to be drawn.\n elevation: 5,\n },\n});\n","import { I18nManager, Animated, Easing, StyleSheet, View } from 'react-native';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { OPEN_ANIM_DURATION, CLOSE_ANIM_DURATION, USE_NATIVE_DRIVER } from '../constants.js';\n\nconst popoverPadding = 7;\nconst anchorSize = 15;\nconst anchorHyp = Math.sqrt(anchorSize*anchorSize + anchorSize*anchorSize);\nconst anchorOffset = (anchorHyp + anchorSize) / 2 - popoverPadding;\n\n// left/top placement\nfunction axisNegativeSideProperties({ oDim, tPos }) {\n return { position: tPos - oDim };\n}\n\n// right/bottom placement\nfunction axisPositiveSideProperties({ tPos, tDim }) {\n // substract also anchor placeholder from the beginning\n return { position: tPos + tDim - anchorSize };\n}\n\n// computes offsets (off screen overlap) of popover when trying to align it to the center\nfunction centeringProperties({ oDim, wDim, tPos, tDim }) {\n const center = Math.round(tPos + (tDim / 2));\n const leftOffset = (oDim / 2) - center;\n const rightOffset = center + (oDim / 2) - wDim;\n return { center, leftOffset, rightOffset };\n}\n\n/**\n * Computes position and offset of popover when trying to align it to the triger center.\n * It consideres window boundaries.\n * Returns object with keys:\n * - position: Absolute position - top/left,\n * - offset: window overlapping size if window boundaries were not considered\n */\nfunction axisCenteredPositionProperties(options) {\n const { oDim, wDim } = options;\n const { center, leftOffset, rightOffset } = centeringProperties(options);\n if (leftOffset > 0 || rightOffset > 0) {\n // right/bottom position is better\n if (leftOffset < rightOffset) {\n return { offset: rightOffset, position: wDim - oDim };\n }\n // left/top position is better\n if (rightOffset < leftOffset) {\n return { offset: -leftOffset, position: 0 };\n }\n }\n // centered position\n return { offset: 0, position: center - oDim / 2 };\n}\n\n/* Evaluate centering placement */\nfunction getCenteringPrice(options) {\n const { leftOffset, rightOffset } = centeringProperties(options);\n // TODO: currently shifted popovers have higher price,\n // popover shift could be taken into account with the same price\n return Math.max(0, leftOffset) + Math.max(0, rightOffset);\n}\n\n/* Evaluate top placement */\nfunction getTopPrice(hOptions, vOptions) {\n const centerOffset = getCenteringPrice(vOptions)\n const sideOffset = Math.max(0, hOptions.oDim - hOptions.tPos)\n return centerOffset + sideOffset\n}\n\n/* Evaluate bottom placement */\nfunction getBottomPrice(hOptions, vOptions) {\n const centerOffset = getCenteringPrice(vOptions)\n const sideOffset = Math.max(0, hOptions.tPos + hOptions.tDim + hOptions.oDim - hOptions.wDim)\n return centerOffset + sideOffset\n}\n\n/* Evaluate left placement */\nfunction getLeftPrice(hOptions, vOptions) {\n const centerOffset = getCenteringPrice(hOptions)\n const sideOffset = Math.max(0, vOptions.oDim - vOptions.tPos)\n return centerOffset + sideOffset\n}\n\n/* Evaluate right placement */\nfunction getRightPrice(hOptions, vOptions) {\n const centerOffset = getCenteringPrice(hOptions)\n const sideOffset = Math.max(0, vOptions.tPos + vOptions.tDim + vOptions.oDim - vOptions.wDim)\n return centerOffset + sideOffset\n}\n\nfunction getStartPosKey(isRTL) {\n return isRTL ? 'right' : 'left';\n}\n\nfunction topProperties(hOptions, vOptions, isRTL) {\n const centered = axisCenteredPositionProperties(vOptions);\n const side = axisNegativeSideProperties(hOptions);\n return {\n position: {\n top: side.position,\n [getStartPosKey(isRTL)]: centered.position,\n },\n offset: centered.offset,\n placement: 'top',\n };\n}\n\nfunction bottomProperties(hOptions, vOptions, isRTL) {\n const centered = axisCenteredPositionProperties(vOptions);\n const side = axisPositiveSideProperties(hOptions);\n return {\n position: {\n top: side.position,\n [getStartPosKey(isRTL)]: centered.position,\n },\n offset: centered.offset,\n placement: 'bottom',\n };\n}\n\nfunction rightProperties(hOptions, vOptions, isRTL) {\n const centered = axisCenteredPositionProperties(hOptions);\n const side = axisPositiveSideProperties(vOptions);\n return {\n position: {\n top: centered.position,\n [getStartPosKey(isRTL)]: side.position,\n },\n offset: centered.offset,\n placement: 'right',\n };\n}\n\nfunction leftProperties(hOptions, vOptions, isRTL) {\n const centered = axisCenteredPositionProperties(hOptions);\n const side = axisNegativeSideProperties(vOptions);\n return {\n position: {\n top: centered.position,\n [getStartPosKey(isRTL)]: side.position,\n },\n offset: centered.offset,\n placement: 'left',\n };\n}\n\n// maps placement to function which computes correct properties\nconst propertiesByPlacement = {\n top: topProperties,\n bottom: bottomProperties,\n left: leftProperties,\n right: rightProperties,\n};\n\n/**\n * Computes properties needed for drawing popover.\n * Returns object with keys:\n * - position: { top: Number, left: Number } - popover absolute position\n * - placement: top|left|top|bottom - position to the trigger\n * - offset: value by which must be anchor shifted\n */\nexport function computeProperties (\n { windowLayout, triggerLayout, optionsLayout },\n placement,\n preferredPlacement,\n isRTL,\n) {\n const { x: wX, y: wY, width: wWidth, height: wHeight } = windowLayout;\n const { x: tX, y: tY, height: tHeight, width: tWidth } = triggerLayout;\n const { height: oHeight, width: oWidth } = optionsLayout;\n const hOptions = {\n oDim: oHeight + popoverPadding * 2,\n wDim: wHeight,\n tPos: tY - wY,\n tDim: tHeight,\n };\n const vOptions = {\n oDim: oWidth + popoverPadding * 2,\n wDim: wWidth,\n tPos: tX - wX,\n tDim: tWidth,\n };\n if (placement !== 'auto' && propertiesByPlacement[placement]) {\n return propertiesByPlacement[placement](hOptions, vOptions, isRTL)\n }\n\n const prices = {\n top: getTopPrice(hOptions, vOptions),\n bottom: getBottomPrice(hOptions, vOptions),\n right: getRightPrice(hOptions, vOptions),\n left: getLeftPrice(hOptions, vOptions),\n };\n const bestPrice = Object.values(prices).sort((a, b) => a - b)[0]\n const bestPlacement = prices[preferredPlacement] === bestPrice\n ? preferredPlacement\n : Object.keys(prices).find(pl => prices[pl] === bestPrice)\n\n return propertiesByPlacement[bestPlacement](hOptions, vOptions, isRTL)\n}\n\nexport default class Popover extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = {\n scaleAnim: new Animated.Value(0.1),\n };\n }\n\n componentDidMount() {\n Animated.timing(this.state.scaleAnim, {\n duration: this.props.openAnimationDuration !== undefined ? this.props.openAnimationDuration : OPEN_ANIM_DURATION,\n toValue: 1,\n easing: Easing.out(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start();\n }\n\n close() {\n return new Promise(resolve => {\n Animated.timing(this.state.scaleAnim, {\n duration: this.props.closeAnimationDuration !== undefined ? this.props.closeAnimationDuration : CLOSE_ANIM_DURATION,\n toValue: 0,\n easing: Easing.in(Easing.cubic),\n useNativeDriver: USE_NATIVE_DRIVER,\n }).start(resolve);\n });\n }\n\n render() {\n const {\n style,\n children,\n layouts,\n anchorStyle,\n preferredPlacement,\n openAnimationDuration,\n closeAnimationDuration,\n placement: userPlacement,\n ...other\n } = this.props;\n const isRTL = I18nManager.isRTL;\n const animation = {\n transform: [ { scale: this.state.scaleAnim } ],\n opacity: this.state.scaleAnim,\n };\n const { position, placement, offset } = computeProperties(\n layouts,\n userPlacement,\n preferredPlacement,\n isRTL,\n );\n return (\n \n \n \n {children}\n \n \n );\n }\n\n}\n\nPopover.propTypes = {\n anchorStyle: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.number,\n PropTypes.array,\n ]),\n placement: PropTypes.oneOf(['auto', 'top', 'right', 'bottom', 'left']),\n preferredPlacement: PropTypes.oneOf(['top', 'right', 'bottom', 'left']),\n openAnimationDuration: PropTypes.number,\n closeAnimationDuration: PropTypes.number,\n};\n\nPopover.defaultProps = {\n preferredPlacement: 'top',\n placement: 'auto',\n};\n\nconst getContainerStyle = ({ placement, isRTL }) => ({\n left: {\n flexDirection: isRTL ? 'row' : 'row-reverse',\n },\n right: {\n flexDirection: isRTL ? 'row-reverse' : 'row',\n },\n top: {\n flexDirection: 'column-reverse',\n },\n bottom: {\n flexDirection: 'column',\n },\n})[placement]\n\nconst dynamicAnchorStyle = ({ offset, placement, isRTL }) => {\n const start = getStartPosKey(isRTL);\n switch (placement) {\n case 'right':\n return {\n top: offset,\n transform: [\n { translateX: anchorOffset },\n { rotate: '45deg' },\n ],\n };\n case 'left':\n return {\n top: offset,\n transform: [\n { translateX: -anchorOffset },\n { rotate: '45deg' },\n ],\n };\n case 'top':\n return {\n [start]: offset,\n transform: [\n { translateY: -anchorOffset },\n { rotate: '45deg' },\n ],\n };\n case 'bottom':\n return {\n [start]: offset,\n transform: [\n { translateY: anchorOffset },\n { rotate: '45deg' },\n ],\n };\n }\n}\n\nexport const styles = StyleSheet.create({\n animated: {\n padding: popoverPadding,\n backgroundColor: 'transparent',\n position: 'absolute',\n alignItems: 'center',\n },\n options: {\n borderRadius: 2,\n minWidth: anchorHyp,\n minHeight: anchorHyp,\n backgroundColor: 'white',\n\n // Shadow only works on iOS.\n shadowColor: 'black',\n shadowOpacity: 0.3,\n shadowOffset: { width: 3, height: 3 },\n shadowRadius: 4,\n\n // This will elevate the view on Android, causing shadow to be drawn.\n elevation: 5,\n },\n anchor: {\n width: anchorSize,\n height: anchorSize,\n backgroundColor: 'white',\n elevation: 5,\n },\n});\n","import './polyfills';\nimport { deprecatedComponent } from './helpers'\n\nimport Menu from './Menu';\nimport MenuProvider, { withCtx } from './MenuProvider';\nimport MenuOption from './MenuOption';\nimport MenuOptions from './MenuOptions';\nimport MenuTrigger from './MenuTrigger';\n\nimport ContextMenu from './renderers/ContextMenu';\nimport NotAnimatedContextMenu from './renderers/NotAnimatedContextMenu';\nimport SlideInMenu from './renderers/SlideInMenu';\nimport Popover from './renderers/Popover';\nconst renderers = { ContextMenu, SlideInMenu, NotAnimatedContextMenu, Popover };\n\nconst MenuContext = deprecatedComponent(\n 'MenuContext is deprecated and it might be removed in future releases, use MenuProvider instead.',\n ['openMenu', 'toggleMenu', 'closeMenu', 'isMenuOpen'],\n)(MenuProvider);\n\nexport {\n Menu as default,\n Menu,\n MenuProvider,\n MenuContext,\n MenuOption,\n MenuOptions,\n MenuTrigger,\n renderers,\n withCtx as withMenuContext,\n};\n"],"names":["Platform","select","obj","OS","measure","ref","Promise","resolve","x","y","width","height","pageX","pageY","makeName","nextID","makeTouchable","TouchableComponent","Touchable","android","TouchableNativeFeedback","ios","TouchableHighlight","default","defaultTouchableProps","underlayColor","iterator2array","it","arr","next","done","push","value","isClassComponent","component","prototype","render","deprecatedComponent","message","methods","deprecatedComponentHOC","Component","args","forEach","name","React","props","onRef","console","warn","ReactPropTypesSecret","require$$0","printWarning","assign","checkPropTypes","withContext","Context","propName","wrap","EnhanceContext","forwardedRef","rest","custom","displayName","consumerName","Consumer","enhanceForwardRef","FC","forwardRef","defaultProps","propTypes","makeMenuRegistry","menus","Map","subscribe","instance","getName","get","set","unsubscribe","delete","updateLayoutInfo","layouts","has","menu","Object","hasOwnProperty","triggerLayout","optionsLayout","setOptionsCustomStyles","optionsCustomStyles","getMenu","getAll","values","OPEN_ANIM_DURATION","CLOSE_ANIM_DURATION","USE_NATIVE_DRIVER","Backdrop","fadeAnim","Animated","Value","timing","duration","toValue","useNativeDriver","start","onPress","style","TouchableWithoutFeedback","styles","fullscreen","opacity","View","PropTypes","func","isRequired","StyleSheet","create","position","top","left","bottom","right","CFG","debug","log","MenuPlaceholder","state","ctx","_isMenuClosing","backdropStyles","shouldRenderMenu","isMenuOpen","_isInitialized","placeholder","_onBackdropPress","onBackdropRef","_makeOptions","overflow","computePosition","windowLayout","MenuOutside","children","other","options","defaultOptionsContainerRenderer","layoutsEqual","a","b","Error","PopupMenuContext","createContext","withCtx","instanceCount","MenuProvider","backHandler","closeMenu","r","backdropRef","optionsRef","_placeholderRef","_getOpenedMenu","onBackdropPress","layout","nativeEvent","_ownLayout","trigger","_getTrigger","then","_menuRegistry","_notify","_safeAreaLayout","_isBackHandlerRegistered","menuActions","openMenu","toggleMenu","force","menuCtx","menuRegistry","customStyles","skipInstanceCheck","menuContextWrapper","BackHandler","removeEventListener","_handleBackButton","addEventListener","_setOpened","filter","_getOpened","isOpen","undefined","hideMenu","close","hideBackdrop","_invalidateTriggerLayouts","all","catch","err","forceUpdate","NULL","prev","openedMenu","find","_isRenderNeeded","afterSetState","beforeSetState","_beforeClose","onClose","onOpen","_initOpen","setState","openedMenuName","flex1","_onLayout","menuProviderWrapper","SafeAreaView","safeArea","_onSafeAreaLayout","backdrop","_onPlaceholderRef","open","e","isOutside","_getOptions","renderer","rendererProps","safeAreaLayout","optionsContainerStyle","renderOptionsContainer","optionsRenderer","onLayout","_onOptionsLayout","optionsContainer","optionsType","onOptionsRef","createElement","object","oneOfType","bool","flex","MenuOptions","_props","menuName","updateCustomStyles","optionsWrapper","number","array","MenuTrigger","disabled","text","triggerOnLongPress","onAlternativeAction","testID","_onPress","TriggerTouchableComponent","triggerOuterWrapper","triggerTouchable","triggerWrapper","Text","triggerText","string","axisPosition","oDim","wDim","tPos","tDim","pos","Math","round","fit","len","minPos","maxPos","fitPositionIntoSafeArea","saX","saY","saHeight","saWidth","oHeight","oWidth","wWidth","isRTL","wX","wY","wHeight","tX","tY","tHeight","tWidth","ContextMenu","scaleAnim","easing","Easing","out","cubic","in","animation","transform","scale","I18nManager","borderRadius","backgroundColor","shadowColor","shadowOpacity","shadowOffset","shadowRadius","elevation","isRegularComponent","c","type","isTrigger","isMenuOptions","Menu","_name","_forceClose","_validateChildren","prevProps","opened","_opened","_reduceChildren","Children","toArray","reduce","child","cloneElement","key","t","_trigger","onSelect","MenuExternal","defineProperty","val","setDefaultRenderer","setDefaultRendererProps","MenuOption","_getMenusOnSelect","shouldClose","disableTouchable","_getCustomStyles","count","disabledStyles","defaultStyles","optionTextDisabled","optionText","option","optionWrapper","rendered","OptionTouchableComponent","_onSelect","optionTouchable","any","padding","color","NotAnimatedContextMenu","SlideInMenu","slide","translateY","interpolate","inputRange","outputRange","popoverPadding","anchorSize","anchorHyp","sqrt","anchorOffset","axisNegativeSideProperties","axisPositiveSideProperties","centeringProperties","center","leftOffset","rightOffset","axisCenteredPositionProperties","offset","getCenteringPrice","max","getTopPrice","hOptions","vOptions","centerOffset","sideOffset","getBottomPrice","getLeftPrice","getRightPrice","getStartPosKey","topProperties","centered","side","placement","bottomProperties","rightProperties","leftProperties","propertiesByPlacement","computeProperties","preferredPlacement","prices","bestPrice","sort","bestPlacement","keys","pl","Popover","openAnimationDuration","closeAnimationDuration","anchorStyle","userPlacement","animated","getContainerStyle","anchor","dynamicAnchorStyle","oneOf","flexDirection","translateX","rotate","alignItems","minWidth","minHeight","renderers","MenuContext"],"mappings":"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"} \ No newline at end of file diff --git a/src/renderers/ContextMenu.js b/src/renderers/ContextMenu.js index d82236b..f854c13 100644 --- a/src/renderers/ContextMenu.js +++ b/src/renderers/ContextMenu.js @@ -1,5 +1,5 @@ import React from 'react'; -import { I18nManager, Animated, Easing, StyleSheet, PixelRatio } from 'react-native'; +import { I18nManager, Animated, Easing, StyleSheet, View } from 'react-native'; import { OPEN_ANIM_DURATION, CLOSE_ANIM_DURATION, USE_NATIVE_DRIVER } from '../constants'; const axisPosition = (oDim, wDim, tPos, tDim) => { @@ -106,8 +106,10 @@ export default class ContextMenu extends React.Component { }; const position = computePosition(layouts, I18nManager.isRTL); return ( - - {children} + + + {children} + ); } @@ -123,7 +125,6 @@ export const styles = StyleSheet.create({ position: 'absolute', borderRadius: 2, backgroundColor: 'white', - width: PixelRatio.roundToNearestPixel(200), // Shadow only works on iOS. shadowColor: 'black',