@kiwicom/smart-faq
Version:
Smart FAQ
65 lines (51 loc) • 2.51 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Landscape = exports.Portrait = exports.Mobile = exports.Desktop = void 0;
var React = _interopRequireWildcard(require("react"));
var _reactResponsive = _interopRequireDefault(require("react-responsive"));
var _PageVariant = require("./PageVariant");
var _PageVariant2 = _interopRequireDefault(require("../context/PageVariant"));
// @flow
var fallbackFallbackScreenWidth = 900;
var createBreakpointQuery = function createBreakpointQuery(criterion
/*: 'min' | 'max'*/
, expectedValue
/*: number*/
) {
var visibleOnSSR = function visibleOnSSR(screenWidth) {
return criterion === 'max' ? screenWidth <= expectedValue : screenWidth >= expectedValue;
};
var MediaQueryComponent = function MediaQueryComponent(_ref) {
var children = _ref.children;
return React.createElement(React.Fragment, null, React.createElement(_PageVariant.SidebarVersion, null, React.createElement(_reactResponsive.default, {
query: "screen and (".concat(criterion, "-width: ").concat(expectedValue, "px)")
}, children)), React.createElement(_PageVariant2.default.Consumer, null, function (value) {
return React.createElement(_PageVariant.FullPageVersion, null, visibleOnSSR(value && value.screenWidth || fallbackFallbackScreenWidth) ? children : null);
}));
};
return MediaQueryComponent;
};
var createMediaQuery = function createMediaQuery(mediaquery
/*: string*/
) {
var MediaQueryComponent = function MediaQueryComponent(_ref2) {
var children = _ref2.children;
return React.createElement(React.Fragment, null, React.createElement(_PageVariant.SidebarVersion, null, React.createElement(_reactResponsive.default, {
query: mediaquery
}, children)), React.createElement(_PageVariant.FullPageVersion, null, mediaquery === 'screen and (orientation: landscape)' ? children : null));
};
return MediaQueryComponent;
};
var breakPoint = 900;
var Desktop = createBreakpointQuery('min', breakPoint + 1);
exports.Desktop = Desktop;
var Mobile = createBreakpointQuery('max', breakPoint);
exports.Mobile = Mobile;
var Portrait = createMediaQuery("screen and (orientation: portrait)");
exports.Portrait = Portrait;
var Landscape = createMediaQuery("screen and (orientation: landscape)");
exports.Landscape = Landscape;
;