UNPKG

@vimeo/iris

Version:
94 lines (91 loc) 7.54 kB
import { a as __makeTemplateObject, b as __rest, c as __assign } from '../../../../tslib.es6-7f0e734f.js'; import React__default from 'react'; import styled, { css } from 'styled-components'; import { rem, rgba } from 'polished'; import { white, blue } from '../../../../color/colors.esm.js'; import { Paragraph } from '../../../../typography/Paragraph/Paragraph.esm.js'; import '../../../../typography/Paragraph/Paragraph.style.esm.js'; import '../../../../typography/Text/Text.esm.js'; import '../../../../typography/Text/Text.style.esm.js'; import '../../../../typography/typography.esm.js'; import '../../../../tokens/core.esm.js'; import '../../../../tokens/color/index.esm.js'; import '../../../../tokens/color/background/background.esm.js'; import '../../../../tokens/util/readToken.esm.js'; import '../../../../tokens/util/clamp.esm.js'; import '../../../../tokens/color/format/format.esm.js'; import '../../../../tokens/color/format/primary.esm.js'; import '../../../../tokens/color/format/secondary.esm.js'; import '../../../../tokens/color/format/tertiary.esm.js'; import '../../../../tokens/color/rainbow/rainbow.esm.js'; import '../../../../tokens/color/rainbow/conic/index.esm.js'; import '../../../../tokens/color/rainbow/conic/sm.esm.js'; import '../../../../tokens/color/rainbow/conic/xl.esm.js'; import '../../../../tokens/color/rainbow/linear/index.esm.js'; import '../../../../tokens/color/rainbow/linear/sm.esm.js'; import '../../../../tokens/color/rainbow/linear/xl.esm.js'; import '../../../../tokens/color/livestream/livestream.esm.js'; import '../../../../tokens/color/status/status.esm.js'; import '../../../../tokens/color/status/caution.esm.js'; import '../../../../tokens/color/status/negative.esm.js'; import '../../../../tokens/color/status/positive.esm.js'; import '../../../../tokens/color/stroke/stroke.esm.js'; import '../../../../tokens/color/surface/surface.esm.js'; import '../../../../tokens/color/text/text.esm.js'; import '../../../../tokens/util/round.esm.js'; import '../../../../tokens/color/upsell/upsell.esm.js'; import '../../../../tokens/color/upsell/sm.esm.js'; import '../../../../tokens/color/upsell/xl.esm.js'; import '../../../../tokens/color/upsell/new.esm.js'; import '../../../../tokens/edge/edge.esm.js'; import '../../../../tokens/space/space.esm.js'; import '../../../../tokens/typography/index.esm.js'; import '../../../../tokens/typography/size/size.esm.js'; import '../../../../typography/Text/EditableText.esm.js'; import '../../../../utils/HOCs/withIris.esm.js'; import '../../../../utils/hooks/useLayoutStyles.esm.js'; import '../../../../utils/DOM/geometry.esm.js'; import '../../../../utils/css.esm.js'; function Label(_a) { var className = _a.className, children = _a.children, props = __rest(_a, ["className", "children"]); return (React__default.createElement(Paragraph, __assign({ size: "1", className: className }, props), children)); } var CalendarDayLabel = styled(Label)(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n font-size: ", ";\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n\n &:before {\n content: ' ';\n display: inline-block;\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n z-index: -1;\n }\n\n ", "\n\n ", "\n"], ["\n font-size: ", ";\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n\n &:before {\n content: ' ';\n display: inline-block;\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n z-index: -1;\n }\n\n ", "\n\n ", "\n"])), rem(14), function (props) { if (!props.isPast) { return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n &:hover {\n color: ", ";\n z-index: 1;\n\n &::before {\n pointer-events: none;\n background-color: ", ";\n border-radius: 50%;\n transform: scale(1.1);\n }\n }\n "], ["\n &:hover {\n color: ", ";\n z-index: 1;\n\n &::before {\n pointer-events: none;\n background-color: ", ";\n border-radius: 50%;\n transform: scale(1.1);\n }\n }\n "])), white, blue(600)); } }, function (props) { if (props.isPast) { return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n cursor: default;\n color: ", ";\n "], ["\n cursor: default;\n color: ", ";\n "])), function (_a) { var theme = _a.theme; return rgba(theme.formats.soft, 0.25); }); } var backgroundColor = function (_a) { var theme = _a.theme; return theme.name === 'dark' ? blue(850) : blue(50); }; var controlStyle = css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n &::before {\n background-color: ", ";\n border-radius: 50%;\n }\n "], ["\n &::before {\n background-color: ", ";\n border-radius: 50%;\n }\n "])), blue(500)); if (props.isTrack && props.isControl) { return css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n background-color: ", ";\n color: ", ";\n z-index: 1;\n ", ";\n "], ["\n background-color: ", ";\n color: ", ";\n z-index: 1;\n ", ";\n "])), backgroundColor, white, controlStyle); } if (props.isTrack) { return css(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n background-color: ", ";\n "], ["\n background-color: ", ";\n "])), backgroundColor); } if (props.isControl) { var control = css(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n z-index: 1;\n color: ", ";\n ", ";\n "], ["\n z-index: 1;\n color: ", ";\n ", ";\n "])), white, controlStyle); if (props.isStart && !props.isEnd) { return css(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n ", ";\n background-color: ", ";\n border-radius: 50% 0 0 50%;\n "], ["\n ", ";\n background-color: ", ";\n border-radius: 50% 0 0 50%;\n "])), control, backgroundColor); } if (props.isEnd) { return css(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n ", ";\n background-color: ", ";\n border-radius: 0 50% 50% 0;\n "], ["\n ", ";\n background-color: ", ";\n border-radius: 0 50% 50% 0;\n "])), control, backgroundColor); } return css(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n ", "\n "], ["\n ", "\n "])), control); } return css(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n color: ", ";\n "], ["\n color: ", ";\n "])), function (_a) { var theme = _a.theme; return theme.formats.soft; }); }); var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11; export { CalendarDayLabel };