UNPKG

@vimeo/iris

Version:
71 lines (68 loc) 4.19 kB
import { a as __makeTemplateObject } from '../../tslib.es6-7f0e734f.js'; import styled, { css } from 'styled-components'; import { antialias } from '../typography.esm.js'; import { Text } from '../Text/Text.esm.js'; import 'react'; import '../Text/Text.style.esm.js'; import 'polished'; 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 '../../color/colors.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 '../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'; var Header = styled(Text)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: block;\n color: ", ";\n font-weight: ", ";\n ", ";\n ", ";\n"], ["\n display: block;\n color: ", ";\n font-weight: ", ";\n ", ";\n ", ";\n"])), function (p) { return p.theme.formats[p.format]; }, function (p) { return (p.variant === 'thin' ? 400 : 700); }, sizes, antialias); var PlusUltra = styled(Text)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: block;\n color: ", ";\n font-size: calc(2.25rem + 3.5vw);\n line-height: calc(2.0625rem + 3.5125vw);\n letter-spacing: calc(-0.125rem - 0.0025vw);\n font-weight: 800;\n max-width: calc(96vw - 2rem);\n margin-bottom: calc(1.5rem + 0.875vw);\n"], ["\n display: block;\n color: ", ";\n font-size: calc(2.25rem + 3.5vw);\n line-height: calc(2.0625rem + 3.5125vw);\n letter-spacing: calc(-0.125rem - 0.0025vw);\n font-weight: 800;\n max-width: calc(96vw - 2rem);\n margin-bottom: calc(1.5rem + 0.875vw);\n"])), function (p) { return p.theme.formats[p.format]; }); function sizes(_a) { var size = _a.size; var sizeInt = 8 - size / 100; var lineHeight = calcLineHeight(sizeInt); var letterSpacing = calcLetterSpacing(sizeInt); var marginBottom = calcMarginBottom(sizeInt); return css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n line-height: ", ";\n letter-spacing: ", "px;\n margin-bottom: ", "rem;\n "], ["\n line-height: ", ";\n letter-spacing: ", "px;\n margin-bottom: ", "rem;\n "])), lineHeight, letterSpacing, marginBottom); } function calcLineHeight(size) { var lineHeight = Math.round((size / 50 + 1.14) * 100) / 100; return lineHeight; } function calcLetterSpacing(size) { return Math.min(Math.round((-1.2 - (size - 1) * -0.2) * 100) / 100, 0); } function calcMarginBottom(size) { return Math.max(0.5, Math.round((1.45 - (size - 1) / 5) * 100) / 100); } var templateObject_1, templateObject_2, templateObject_3; export { Header, PlusUltra };