UNPKG

ima-ui-atoms

Version:
85 lines (73 loc) 2.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _propTypes = _interopRequireDefault(require("prop-types")); var _react = _interopRequireDefault(require("react")); var _HtmlIframe = _interopRequireDefault(require("./HtmlIframe")); var _AmpIframe = _interopRequireDefault(require("./AmpIframe")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * Common iframe * * @namespace ima.ui.atom.iframe * @module ima.ui.atom */ class Iframe extends _react.default.PureComponent { static get contextTypes() { return { $Utils: _propTypes.default.object }; } static get propTypes() { return { src: _propTypes.default.string, srcDoc: _propTypes.default.string, width: _propTypes.default.number, height: _propTypes.default.number, scrolling: _propTypes.default.string, layout: _propTypes.default.string, sandbox: _propTypes.default.string, allow: _propTypes.default.string, allowFullScreen: _propTypes.default.bool, resizable: _propTypes.default.bool, frameBorder: _propTypes.default.string, noloading: _propTypes.default.bool, className: _propTypes.default.string, onLoad: _propTypes.default.func, 'data-e2e': _propTypes.default.string, marginWidth: _propTypes.default.number, marginHeight: _propTypes.default.number }; } static get defaultProps() { return { src: null, srcDoc: null, width: null, height: null, scrolling: 'no', layout: null, sandbox: null, allow: null, allowFullScreen: null, resizable: false, frameBorder: '0', noloading: false, className: '', onLoad: null, 'data-e2e': null, marginWidth: null, marginHeight: null }; } render() { if (this.context.$Utils.$UIComponentHelper.isAmp()) { return _react.default.createElement(_AmpIframe.default, this.props); } else { return _react.default.createElement(_HtmlIframe.default, this.props); } } } exports.default = Iframe;