UNPKG

react-native-unit-components

Version:

Unit React Native components

92 lines (91 loc) 4.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _WebComponent = require("../../webComponent/WebComponent"); var _react = _interopRequireWildcard(require("react")); var _webComponent = require("../../types/internal/webComponent.types"); var _helpers = require("../../helpers/store/helpers"); var _onLoadMessage = require("../../messages/webMessages/onLoadMessage"); var _paymentsMessage = require("../../messages/webMessages/paymentsMessage"); var _unitComponentsMessages = require("../../messages/webMessages/unitComponentsMessages"); var _pageMessage = require("../../messages/webMessages/pageMessage"); var _UNWirePaymentComponent = require("./UNWirePaymentComponent.utils"); var _UNBaseView = require("../../nativeComponents/UNBaseView"); var _onLoadMessages = require("../../utils/onLoadMessages.utils"); function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } const UNWirePaymentComponent = props => { const [height, setHeight] = (0, _react.useState)(0); const [presentationMode, setPresentationMode] = (0, _react.useState)(_webComponent.PresentationMode.Inherit); const handleUnitOnLoad = response => { if (!props.onLoad) { return; } if (_onLoadMessage.RESPONSE_KEYS.errors in response) { props.onLoad(response); return; } if (_onLoadMessage.RESPONSE_KEYS.account in response) { const account = response[_onLoadMessage.RESPONSE_KEYS.account].data; const paymentOnLoad = { data: (0, _onLoadMessages.ensureArray)(account) }; props.onLoad(paymentOnLoad); return; } console.error('On Load Error: unexpected response type'); return; }; const handleWebViewMessage = message => { if (!message || !message.details) return; switch (message.type) { case _paymentsMessage.PaymentMessage.INITIAL_STAGE_BACK_BUTTON_CLICKED: { props.onInitialStageBackButtonClicked && props.onInitialStageBackButtonClicked(); break; } case _paymentsMessage.PaymentMessage.FINAL_STAGE_DONE_BUTTON_CLICKED: { props.onFinalStageDoneButtonClicked && props.onFinalStageDoneButtonClicked(); break; } case _paymentsMessage.PaymentMessage.PAYMENT_CREATED: props.onPaymentCreated && props.onPaymentCreated(message.details.data); break; case _unitComponentsMessages.UnitComponentsMessage.UNIT_ON_LOAD: handleUnitOnLoad(message.details); break; case _pageMessage.PageMessage.PAGE_HEIGHT: { const currentHeight = message.details.height; setHeight(currentHeight); if (presentationMode === _webComponent.PresentationMode.Inherit && currentHeight === 0) { setPresentationMode(_webComponent.PresentationMode.Default); } break; } } }; const style = presentationMode === _webComponent.PresentationMode.Inherit ? { flex: 1 } : { height: height }; return /*#__PURE__*/_react.default.createElement(_UNBaseView.UNBaseView, { style: style, fallback: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null) }, /*#__PURE__*/_react.default.createElement(_WebComponent.WebComponent, { type: _webComponent.WebComponentType.wirePayment, presentationMode: presentationMode, params: (0, _UNWirePaymentComponent.getWirePaymentParams)(props), script: (0, _UNWirePaymentComponent.getWirePaymentScript)(), onMessage: message => handleWebViewMessage(message), isScrollable: true, theme: props.theme, language: props.language })); }; var _default = exports.default = (0, _helpers.withReduxStore)(UNWirePaymentComponent); //# sourceMappingURL=UNWirePaymentComponent.js.map