UNPKG

@giphy/react-native-sdk

Version:
46 lines 1.81 kB
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } import React from 'react'; import { deserializeGiphyMedia } from './dto/giphyMedia'; import { serializeTheme } from './dto/giphyTheme'; import NativeGiphyGridView from './specs/GiphyGridViewNativeComponent'; export class GiphyGridView extends React.Component { mediaSelectHandler = e => { const { onMediaSelect } = this.props; if (!onMediaSelect) { return; } const media = JSON.parse(e.nativeEvent.media ?? '{}') || {}; e.nativeEvent.media = deserializeGiphyMedia(media); return onMediaSelect(e); }; render() { const { cellPadding = 0, clipsPreviewRenditionType = 'fixed_width', content, disableEmojiVariations = false, fixedSizeCells = false, onMediaSelect, orientation = 'vertical', renditionType = 'fixed_width', showCheckeredBackground = false, theme = 'light', ...other } = this.props; return /*#__PURE__*/React.createElement(NativeGiphyGridView, _extends({ cellPadding: cellPadding, clipsPreviewRenditionType: clipsPreviewRenditionType, content: content ? JSON.stringify(content) : '', disableEmojiVariations: disableEmojiVariations, fixedSizeCells: fixedSizeCells, onMediaSelect: onMediaSelect ? this.mediaSelectHandler : undefined, orientation: orientation, renditionType: renditionType, showCheckeredBackground: showCheckeredBackground, theme: JSON.stringify(serializeTheme(theme)) }, other)); } } //# sourceMappingURL=GiphyGridView.js.map