UNPKG

@up-group-ui/react-controls

Version:
74 lines 4.02 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.UpCookiesConsent = void 0; var tslib_1 = require("tslib"); var jsx_runtime_1 = require("react/jsx-runtime"); var react_1 = require("react"); var withTheme_1 = (0, tslib_1.__importDefault)(require("../../../Common/theming/withTheme")); var colorMap_1 = require("../../../Common/theming/colorMap"); var Box_1 = (0, tslib_1.__importDefault)(require("../Box")); var Button_1 = (0, tslib_1.__importDefault)(require("../../Inputs/Button")); function setCookie(name, value, days) { var expires = ''; if (days) { var date = new Date(); date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000); expires = "; expires=" + date.toUTCString(); } document.cookie = name + "=" + (value || '') + expires + "; path=/"; } function getCookie(name) { var nameEQ = name + "="; var ca = document.cookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) === ' ') c = c.substring(1, c.length); if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length); } return null; } var UpCookiesConsent = function (props) { var children = props.children, cookieKey = props.cookieKey, cookieValue = props.cookieValue, moreDetailsPage = props.moreDetailsPage, closeButtonLabel = props.closeButtonLabel, cookiesConsentMessage = props.cookiesConsentMessage, knowMoreLabel = props.knowMoreLabel; var _a = (0, react_1.useState)(false), cookiesNotAllowed = _a[0], setCookiesNotAllowed = _a[1]; var updateCookies = function () { if (!getCookie(cookieKey) || getCookie(cookieKey) !== cookieValue) { setCookiesNotAllowed(true); } }; (0, react_1.useEffect)(function () { updateCookies(); }); return ((0, jsx_runtime_1.jsxs)(Box_1.default, (0, tslib_1.__assign)({ style: { display: 'flex', flexDirection: 'column', height: 'calc(100vh)', width: '100%', } }, { children: [(0, jsx_runtime_1.jsxs)(Box_1.default, (0, tslib_1.__assign)({ flexDirection: 'row', justifyContent: 'center', alignItems: 'center', style: { height: cookiesNotAllowed ? 80 : 0, transform: cookiesNotAllowed ? 'scaleY(1)' : 'scaleY(0)', width: '100%', backgroundColor: '#424C4A', paddingRight: 50, paddingLeft: 50, transition: 'height 0.5s, transform 0.5s', } }, { children: [(0, jsx_runtime_1.jsxs)("span", (0, tslib_1.__assign)({ style: { marginRight: 100, color: colorMap_1.colors.white, fontFamily: 'Roboto', fontSize: '14px', lineHeight: '16px', display: 'flex', flexDirection: 'column', } }, { children: [(0, jsx_runtime_1.jsx)("span", { children: cookiesConsentMessage }, void 0), moreDetailsPage && ((0, jsx_runtime_1.jsx)("span", (0, tslib_1.__assign)({ style: { textDecoration: 'underline', cursor: 'pointer', }, onClick: function () { return window.open(moreDetailsPage, '_blank'); } }, { children: knowMoreLabel }), void 0))] }), void 0), (0, jsx_runtime_1.jsx)(Button_1.default, (0, tslib_1.__assign)({ width: 'normal', intent: 'primary', onClick: function () { setCookiesNotAllowed(false); setCookie(cookieKey, cookieValue); } }, { children: closeButtonLabel }), void 0)] }), void 0), children] }), void 0)); }; exports.UpCookiesConsent = UpCookiesConsent; exports.default = (0, withTheme_1.default)(UpCookiesConsent); //# sourceMappingURL=UpCookiesConsent.js.map