@preply/ds-rn-lib 0.62.0 → 0.63.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Heading/Heading.js +2 -2
- package/dist/components/Text/Text.js +2 -2
- package/dist/components/TextInline/TextInline.js +20 -7
- package/dist/props/typography/hooks/private/useTextSharedStyle.d.ts +1 -0
- package/dist/props/typography/hooks/private/useTextSharedStyle.js +1 -1
- package/dist/props/typography/hooks/useHeadingStyle.js +28 -10
- package/dist/props/typography/hooks/useTextStyle.js +51 -9
- package/dist/props/typography/utils/fontFamily.d.ts +6 -2
- package/dist/props/typography/utils/fontFamily.js +67 -5
- package/package.json +8 -8
- package/dist/props/typography/hooks/private/useTextVariantStyle.d.ts +0 -11
- package/dist/props/typography/hooks/private/useTextVariantStyle.js +0 -30
|
@@ -14,9 +14,9 @@ const HeadingBase = ({ level, large = false, accent, color, centered, textTransf
|
|
|
14
14
|
});
|
|
15
15
|
const stretchStyle = stretch ? { flex: 1 } : undefined;
|
|
16
16
|
return (React.createElement(TextVariantProvider, { value: computedStyles },
|
|
17
|
-
React.createElement(Text, Object.assign({ style:
|
|
17
|
+
React.createElement(Text, Object.assign({ style: [computedStyles, stretchStyle] }, rest), children)));
|
|
18
18
|
};
|
|
19
19
|
const Heading = memo(HeadingBase);
|
|
20
20
|
|
|
21
21
|
export { Heading };
|
|
22
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGVhZGluZy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSGVhZGluZy9IZWFkaW5nLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgbWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFRleHQgYXMgUk5UZXh0IH0gZnJvbSAncmVhY3QtbmF0aXZlJztcblxuaW1wb3J0IHsgdXNlSGVhZGluZ1N0eWxlIH0gZnJvbSAnLi4vLi4vcHJvcHMnO1xuaW1wb3J0IHsgRkNXaXRoQ2hpbGRyZW4gfSBmcm9tICcuLi8uLi9wcm9wcy9jb21tb24vdHlwZXMnO1xuaW1wb3J0IHsgSGVhZGluZ1N0eWxlUHJvcHMsIFRleHRDb21tb25Qcm9wcyB9IGZyb20gJy4uLy4uL3Byb3BzL3R5cG9ncmFwaHknO1xuaW1wb3J0IHsgVGV4dFZhcmlhbnRQcm92aWRlciB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9UZXh0VmFyaWFudFByb3ZpZGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBIZWFkaW5nUHJvcHMgZXh0ZW5kcyBUZXh0Q29tbW9uUHJvcHMsIEhlYWRpbmdTdHlsZVByb3BzIHt9XG5cbmNvbnN0IEhlYWRpbmdCYXNlOiBGQ1dpdGhDaGlsZHJlbjxIZWFkaW5nUHJvcHM+ID0gKHtcbiAgICBsZXZlbCxcbiAgICBsYXJnZSA9IGZhbHNlLFxuICAgIGFjY2VudCxcbiAgICBjb2xvcixcbiAgICBjZW50ZXJlZCxcbiAgICB0ZXh0VHJhbnNmb3JtLFxuICAgIHN0cmV0Y2gsXG4gICAgY2hpbGRyZW4sXG4gICAgLi4ucmVzdFxufSkgPT4ge1xuICAgIGNvbnN0IGNvbXB1dGVkU3R5bGVzID0gdXNlSGVhZGluZ1N0eWxlKHtcbiAgICAgICAgbGV2ZWwsXG4gICAgICAgIGxhcmdlLFxuICAgICAgICBhY2NlbnQsXG4gICAgICAgIGNvbG9yLFxuICAgICAgICBjZW50ZXJlZCxcbiAgICAgICAgdGV4dFRyYW5zZm9ybSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHN0cmV0Y2hTdHlsZSA9IHN0cmV0Y2ggPyB7IGZsZXg6IDEgfSA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxUZXh0VmFyaWFudFByb3ZpZGVyIHZhbHVlPXtjb21wdXRlZFN0eWxlc30+
|
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGVhZGluZy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSGVhZGluZy9IZWFkaW5nLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgbWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFRleHQgYXMgUk5UZXh0IH0gZnJvbSAncmVhY3QtbmF0aXZlJztcblxuaW1wb3J0IHsgdXNlSGVhZGluZ1N0eWxlIH0gZnJvbSAnLi4vLi4vcHJvcHMnO1xuaW1wb3J0IHsgRkNXaXRoQ2hpbGRyZW4gfSBmcm9tICcuLi8uLi9wcm9wcy9jb21tb24vdHlwZXMnO1xuaW1wb3J0IHsgSGVhZGluZ1N0eWxlUHJvcHMsIFRleHRDb21tb25Qcm9wcyB9IGZyb20gJy4uLy4uL3Byb3BzL3R5cG9ncmFwaHknO1xuaW1wb3J0IHsgVGV4dFZhcmlhbnRQcm92aWRlciB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9UZXh0VmFyaWFudFByb3ZpZGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBIZWFkaW5nUHJvcHMgZXh0ZW5kcyBUZXh0Q29tbW9uUHJvcHMsIEhlYWRpbmdTdHlsZVByb3BzIHt9XG5cbmNvbnN0IEhlYWRpbmdCYXNlOiBGQ1dpdGhDaGlsZHJlbjxIZWFkaW5nUHJvcHM+ID0gKHtcbiAgICBsZXZlbCxcbiAgICBsYXJnZSA9IGZhbHNlLFxuICAgIGFjY2VudCxcbiAgICBjb2xvcixcbiAgICBjZW50ZXJlZCxcbiAgICB0ZXh0VHJhbnNmb3JtLFxuICAgIHN0cmV0Y2gsXG4gICAgY2hpbGRyZW4sXG4gICAgLi4ucmVzdFxufSkgPT4ge1xuICAgIGNvbnN0IGNvbXB1dGVkU3R5bGVzID0gdXNlSGVhZGluZ1N0eWxlKHtcbiAgICAgICAgbGV2ZWwsXG4gICAgICAgIGxhcmdlLFxuICAgICAgICBhY2NlbnQsXG4gICAgICAgIGNvbG9yLFxuICAgICAgICBjZW50ZXJlZCxcbiAgICAgICAgdGV4dFRyYW5zZm9ybSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHN0cmV0Y2hTdHlsZSA9IHN0cmV0Y2ggPyB7IGZsZXg6IDEgfSA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxUZXh0VmFyaWFudFByb3ZpZGVyIHZhbHVlPXtjb21wdXRlZFN0eWxlc30+XG4gICAgICAgICAgICA8Uk5UZXh0IHN0eWxlPXtbY29tcHV0ZWRTdHlsZXMsIHN0cmV0Y2hTdHlsZV19IHsuLi5yZXN0fT5cbiAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8L1JOVGV4dD5cbiAgICAgICAgPC9UZXh0VmFyaWFudFByb3ZpZGVyPlxuICAgICk7XG59O1xuXG5leHBvcnQgY29uc3QgSGVhZGluZyA9IG1lbW8oSGVhZGluZ0Jhc2UpO1xuIl0sIm5hbWVzIjpbIlJOVGV4dCJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFVQSxNQUFNLFdBQVcsR0FBaUMsQ0FBQyxFQUMvQyxLQUFLLEVBQ0wsS0FBSyxHQUFHLEtBQUssRUFDYixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixhQUFhLEVBQ2IsT0FBTyxFQUNQLFFBQVEsRUFDUixHQUFHLElBQUksRUFDVjtJQUNHLE1BQU0sY0FBYyxHQUFHLGVBQWUsQ0FBQztRQUNuQyxLQUFLO1FBQ0wsS0FBSztRQUNMLE1BQU07UUFDTixLQUFLO1FBQ0wsUUFBUTtRQUNSLGFBQWE7S0FDaEIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxZQUFZLEdBQUcsT0FBTyxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQztJQUV2RCxRQUNJLG9CQUFDLG1CQUFtQixJQUFDLEtBQUssRUFBRSxjQUFjO1FBQ3RDLG9CQUFDQSxJQUFNLGtCQUFDLEtBQUssRUFBRSxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsSUFBTSxJQUFJLEdBQ2xELFFBQVEsQ0FDSixDQUNTLEVBQ3hCO0FBQ04sQ0FBQyxDQUFDO01BRVcsT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXOzs7OyJ9
|
|
@@ -7,9 +7,9 @@ const TextBase = ({ variant, accent, color, centered, textTransform, stretch, ch
|
|
|
7
7
|
const computedStyles = useTextStyle({ variant, accent, color, centered, textTransform });
|
|
8
8
|
const stretchStyle = stretch ? { flex: 1 } : undefined;
|
|
9
9
|
return (React.createElement(TextVariantProvider, { value: computedStyles },
|
|
10
|
-
React.createElement(Text$1, Object.assign({ style:
|
|
10
|
+
React.createElement(Text$1, Object.assign({ style: [computedStyles, stretchStyle] }, rest), children)));
|
|
11
11
|
};
|
|
12
12
|
const Text = memo(TextBase);
|
|
13
13
|
|
|
14
14
|
export { Text };
|
|
15
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGV4dC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVGV4dC9UZXh0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgbWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFRleHQgYXMgUk5UZXh0IH0gZnJvbSAncmVhY3QtbmF0aXZlJztcblxuaW1wb3J0IHsgdXNlVGV4dFN0eWxlIH0gZnJvbSAnLi4vLi4vcHJvcHMnO1xuaW1wb3J0IHsgRkNXaXRoQ2hpbGRyZW4gfSBmcm9tICcuLi8uLi9wcm9wcy9jb21tb24vdHlwZXMnO1xuaW1wb3J0IHsgVGV4dENvbW1vblByb3BzLCBUZXh0U3R5bGVQcm9wcyB9IGZyb20gJy4uLy4uL3Byb3BzL3R5cG9ncmFwaHknO1xuaW1wb3J0IHsgVGV4dFZhcmlhbnRQcm92aWRlciB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9UZXh0VmFyaWFudFByb3ZpZGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBUZXh0UHJvcHMgZXh0ZW5kcyBUZXh0Q29tbW9uUHJvcHMsIFRleHRTdHlsZVByb3BzIHt9XG5cbmNvbnN0IFRleHRCYXNlOiBGQ1dpdGhDaGlsZHJlbjxUZXh0UHJvcHM+
|
|
15
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGV4dC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVGV4dC9UZXh0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgbWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFRleHQgYXMgUk5UZXh0IH0gZnJvbSAncmVhY3QtbmF0aXZlJztcblxuaW1wb3J0IHsgdXNlVGV4dFN0eWxlIH0gZnJvbSAnLi4vLi4vcHJvcHMnO1xuaW1wb3J0IHsgRkNXaXRoQ2hpbGRyZW4gfSBmcm9tICcuLi8uLi9wcm9wcy9jb21tb24vdHlwZXMnO1xuaW1wb3J0IHsgVGV4dENvbW1vblByb3BzLCBUZXh0U3R5bGVQcm9wcyB9IGZyb20gJy4uLy4uL3Byb3BzL3R5cG9ncmFwaHknO1xuaW1wb3J0IHsgVGV4dFZhcmlhbnRQcm92aWRlciB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9UZXh0VmFyaWFudFByb3ZpZGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBUZXh0UHJvcHMgZXh0ZW5kcyBUZXh0Q29tbW9uUHJvcHMsIFRleHRTdHlsZVByb3BzIHt9XG5cbmNvbnN0IFRleHRCYXNlOiBGQ1dpdGhDaGlsZHJlbjxUZXh0UHJvcHM+ID0gKHtcbiAgICB2YXJpYW50LFxuICAgIGFjY2VudCxcbiAgICBjb2xvcixcbiAgICBjZW50ZXJlZCxcbiAgICB0ZXh0VHJhbnNmb3JtLFxuICAgIHN0cmV0Y2gsXG4gICAgY2hpbGRyZW4sXG4gICAgLi4ucmVzdFxufSkgPT4ge1xuICAgIGNvbnN0IGNvbXB1dGVkU3R5bGVzID0gdXNlVGV4dFN0eWxlKHsgdmFyaWFudCwgYWNjZW50LCBjb2xvciwgY2VudGVyZWQsIHRleHRUcmFuc2Zvcm0gfSk7XG5cbiAgICBjb25zdCBzdHJldGNoU3R5bGUgPSBzdHJldGNoID8geyBmbGV4OiAxIH0gOiB1bmRlZmluZWQ7XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8VGV4dFZhcmlhbnRQcm92aWRlciB2YWx1ZT17Y29tcHV0ZWRTdHlsZXN9PlxuICAgICAgICAgICAgPFJOVGV4dCBzdHlsZT17W2NvbXB1dGVkU3R5bGVzLCBzdHJldGNoU3R5bGVdfSB7Li4ucmVzdH0+XG4gICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC9STlRleHQ+XG4gICAgICAgIDwvVGV4dFZhcmlhbnRQcm92aWRlcj5cbiAgICApO1xufTtcblxuZXhwb3J0IGNvbnN0IFRleHQgPSBtZW1vKFRleHRCYXNlKTtcbiJdLCJuYW1lcyI6WyJSTlRleHQiXSwibWFwcGluZ3MiOiI7Ozs7O0FBVUEsTUFBTSxRQUFRLEdBQThCLENBQUMsRUFDekMsT0FBTyxFQUNQLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLGFBQWEsRUFDYixPQUFPLEVBQ1AsUUFBUSxFQUNSLEdBQUcsSUFBSSxFQUNWO0lBQ0csTUFBTSxjQUFjLEdBQUcsWUFBWSxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFFekYsTUFBTSxZQUFZLEdBQUcsT0FBTyxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQztJQUV2RCxRQUNJLG9CQUFDLG1CQUFtQixJQUFDLEtBQUssRUFBRSxjQUFjO1FBQ3RDLG9CQUFDQSxNQUFNLGtCQUFDLEtBQUssRUFBRSxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsSUFBTSxJQUFJLEdBQ2xELFFBQVEsQ0FDSixDQUNTLEVBQ3hCO0FBQ04sQ0FBQyxDQUFDO01BRVcsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFROzs7OyJ9
|
|
@@ -1,25 +1,38 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { root } from '@preply/ds-core';
|
|
2
|
+
import { useTheme, useToken } from '@preply/ds-rn-core';
|
|
3
|
+
import React, { memo, useContext, useMemo } from 'react';
|
|
2
4
|
import { Text } from 'react-native';
|
|
3
5
|
import { useTextColorStyle } from '../../props/typography/hooks/private/useTextColorStyle.js';
|
|
4
|
-
import { getNewFontFamily } from '../../props/typography/utils/fontFamily.js';
|
|
6
|
+
import { getNewFontFamilyTokyo, getNewFontFamily } from '../../props/typography/utils/fontFamily.js';
|
|
5
7
|
import { TextVariantContext, TextVariantProvider } from '../../providers/TextVariantProvider.js';
|
|
6
8
|
|
|
7
9
|
const TextInlineBase = ({ accent, color, weight, italic, textTransform, children, }) => {
|
|
10
|
+
const { theme } = useTheme();
|
|
8
11
|
const parentStyle = useContext(TextVariantContext);
|
|
12
|
+
const headingTypeface = useToken(root.heading.base.typeface);
|
|
9
13
|
if (!parentStyle) {
|
|
10
14
|
throw new Error('TextInline must always be a child of either Text or Heading');
|
|
11
15
|
}
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
|
|
16
|
+
const fontFamily = useMemo(() => {
|
|
17
|
+
if (weight === undefined && italic === undefined) {
|
|
18
|
+
return parentStyle.fontFamily;
|
|
19
|
+
}
|
|
20
|
+
if (theme.name === 'tokyo-ui') {
|
|
21
|
+
if (__DEV__ && parentStyle.fontFamily.includes(headingTypeface)) {
|
|
22
|
+
throw new Error('TextInline does not support custom font weights or italic in tokyo-ui theme when used inside a Heading.');
|
|
23
|
+
}
|
|
24
|
+
return getNewFontFamilyTokyo(parentStyle.fontFamily, weight, italic);
|
|
25
|
+
}
|
|
26
|
+
return getNewFontFamily(parentStyle.fontFamily, weight, italic);
|
|
27
|
+
}, [headingTypeface, italic, parentStyle.fontFamily, theme.name, weight]);
|
|
15
28
|
const computedColorStyle = useTextColorStyle(color, accent);
|
|
16
29
|
const useParentColor = !color && !accent;
|
|
17
30
|
const colorStyle = useParentColor ? undefined : computedColorStyle;
|
|
18
|
-
const textInlineStyle = { ...parentStyle, ...
|
|
31
|
+
const textInlineStyle = { ...parentStyle, ...colorStyle, fontFamily, textTransform };
|
|
19
32
|
return (React.createElement(TextVariantProvider, { value: textInlineStyle },
|
|
20
33
|
React.createElement(Text, { style: textInlineStyle }, children)));
|
|
21
34
|
};
|
|
22
35
|
const TextInline = memo(TextInlineBase);
|
|
23
36
|
|
|
24
37
|
export { TextInline };
|
|
25
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGV4dElubGluZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVGV4dElubGluZS9UZXh0SW5saW5lLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xvck5hbWUsIFRleHRBY2NlbnQsIFRleHRXZWlnaHQsIHJvb3QgfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUnO1xuaW1wb3J0IHsgdXNlVGhlbWUsIHVzZVRva2VuIH0gZnJvbSAnQHByZXBseS9kcy1ybi1jb3JlJztcbmltcG9ydCBSZWFjdCwgeyBtZW1vLCB1c2VDb250ZXh0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgVGV4dCBhcyBSTlRleHQsIFRleHRTdHlsZSBhcyBSTlRleHRTdHlsZSB9IGZyb20gJ3JlYWN0LW5hdGl2ZSc7XG5cbmltcG9ydCB7IEZDV2l0aENoaWxkcmVuIH0gZnJvbSAnLi4vLi4vcHJvcHMvY29tbW9uL3R5cGVzJztcbmltcG9ydCB7IHVzZVRleHRDb2xvclN0eWxlIH0gZnJvbSAnLi4vLi4vcHJvcHMvdHlwb2dyYXBoeS9ob29rcy9wcml2YXRlL3VzZVRleHRDb2xvclN0eWxlJztcbmltcG9ydCB7IGdldE5ld0ZvbnRGYW1pbHksIGdldE5ld0ZvbnRGYW1pbHlUb2t5byB9IGZyb20gJy4uLy4uL3Byb3BzL3R5cG9ncmFwaHkvdXRpbHMvZm9udEZhbWlseSc7XG5pbXBvcnQgeyBUZXh0VmFyaWFudENvbnRleHQsIFRleHRWYXJpYW50UHJvdmlkZXIgfSBmcm9tICcuLi8uLi9wcm92aWRlcnMvVGV4dFZhcmlhbnRQcm92aWRlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGV4dElubGluZVByb3BzIHtcbiAgICBhY2NlbnQ/OiBUZXh0QWNjZW50O1xuICAgIGNvbG9yPzogQ29sb3JOYW1lO1xuICAgIHdlaWdodD86IFRleHRXZWlnaHQ7XG4gICAgaXRhbGljPzogYm9vbGVhbjtcbiAgICB0ZXh0VHJhbnNmb3JtPzogUk5UZXh0U3R5bGVbJ3RleHRUcmFuc2Zvcm0nXTtcbn1cblxuY29uc3QgVGV4dElubGluZUJhc2U6IEZDV2l0aENoaWxkcmVuPFRleHRJbmxpbmVQcm9wcz4gPSAoe1xuICAgIGFjY2VudCxcbiAgICBjb2xvcixcbiAgICB3ZWlnaHQsXG4gICAgaXRhbGljLFxuICAgIHRleHRUcmFuc2Zvcm0sXG4gICAgY2hpbGRyZW4sXG59KSA9PiB7XG4gICAgY29uc3QgeyB0aGVtZSB9ID0gdXNlVGhlbWUoKTtcbiAgICBjb25zdCBwYXJlbnRTdHlsZSA9IHVzZUNvbnRleHQoVGV4dFZhcmlhbnRDb250ZXh0KTtcbiAgICBjb25zdCBoZWFkaW5nVHlwZWZhY2UgPSB1c2VUb2tlbjxzdHJpbmc+KHJvb3QuaGVhZGluZy5iYXNlLnR5cGVmYWNlKTtcblxuICAgIGlmICghcGFyZW50U3R5bGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUZXh0SW5saW5lIG11c3QgYWx3YXlzIGJlIGEgY2hpbGQgb2YgZWl0aGVyIFRleHQgb3IgSGVhZGluZycpO1xuICAgIH1cblxuICAgIGNvbnN0IGZvbnRGYW1pbHkgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgaWYgKHdlaWdodCA9PT0gdW5kZWZpbmVkICYmIGl0YWxpYyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gcGFyZW50U3R5bGUuZm9udEZhbWlseTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGVtZS5uYW1lID09PSAndG9reW8tdWknKSB7XG4gICAgICAgICAgICBpZiAoX19ERVZfXyAmJiBwYXJlbnRTdHlsZS5mb250RmFtaWx5LmluY2x1ZGVzKGhlYWRpbmdUeXBlZmFjZSkpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICdUZXh0SW5saW5lIGRvZXMgbm90IHN1cHBvcnQgY3VzdG9tIGZvbnQgd2VpZ2h0cyBvciBpdGFsaWMgaW4gdG9reW8tdWkgdGhlbWUgd2hlbiB1c2VkIGluc2lkZSBhIEhlYWRpbmcuJyxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gZ2V0TmV3Rm9udEZhbWlseVRva3lvKHBhcmVudFN0eWxlLmZvbnRGYW1pbHksIHdlaWdodCwgaXRhbGljKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBnZXROZXdGb250RmFtaWx5KHBhcmVudFN0eWxlLmZvbnRGYW1pbHksIHdlaWdodCwgaXRhbGljKTtcbiAgICB9LCBbaGVhZGluZ1R5cGVmYWNlLCBpdGFsaWMsIHBhcmVudFN0eWxlLmZvbnRGYW1pbHksIHRoZW1lLm5hbWUsIHdlaWdodF0pO1xuXG4gICAgY29uc3QgY29tcHV0ZWRDb2xvclN0eWxlID0gdXNlVGV4dENvbG9yU3R5bGUoY29sb3IsIGFjY2VudCk7XG4gICAgY29uc3QgdXNlUGFyZW50Q29sb3IgPSAhY29sb3IgJiYgIWFjY2VudDtcbiAgICBjb25zdCBjb2xvclN0eWxlID0gdXNlUGFyZW50Q29sb3IgPyB1bmRlZmluZWQgOiBjb21wdXRlZENvbG9yU3R5bGU7XG5cbiAgICBjb25zdCB0ZXh0SW5saW5lU3R5bGUgPSB7IC4uLnBhcmVudFN0eWxlLCAuLi5jb2xvclN0eWxlLCBmb250RmFtaWx5LCB0ZXh0VHJhbnNmb3JtIH07XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8VGV4dFZhcmlhbnRQcm92aWRlciB2YWx1ZT17dGV4dElubGluZVN0eWxlfT5cbiAgICAgICAgICAgIDxSTlRleHQgc3R5bGU9e3RleHRJbmxpbmVTdHlsZX0+e2NoaWxkcmVufTwvUk5UZXh0PlxuICAgICAgICA8L1RleHRWYXJpYW50UHJvdmlkZXI+XG4gICAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBUZXh0SW5saW5lID0gbWVtbyhUZXh0SW5saW5lQmFzZSk7XG4iXSwibmFtZXMiOlsiUk5UZXh0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQWtCQSxNQUFNLGNBQWMsR0FBb0MsQ0FBQyxFQUNyRCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sYUFBYSxFQUNiLFFBQVEsR0FDWDtJQUNHLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxRQUFRLEVBQUUsQ0FBQztJQUM3QixNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNuRCxNQUFNLGVBQWUsR0FBRyxRQUFRLENBQVMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFckUsSUFBSSxDQUFDLFdBQVcsRUFBRTtRQUNkLE1BQU0sSUFBSSxLQUFLLENBQUMsNkRBQTZELENBQUMsQ0FBQztLQUNsRjtJQUVELE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLE1BQU0sS0FBSyxTQUFTLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRTtZQUM5QyxPQUFPLFdBQVcsQ0FBQyxVQUFVLENBQUM7U0FDakM7UUFFRCxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssVUFBVSxFQUFFO1lBQzNCLElBQUksT0FBTyxJQUFJLFdBQVcsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFO2dCQUM3RCxNQUFNLElBQUksS0FBSyxDQUNYLHlHQUF5RyxDQUM1RyxDQUFDO2FBQ0w7WUFFRCxPQUFPLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQ3hFO1FBRUQsT0FBTyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztLQUNuRSxFQUFFLENBQUMsZUFBZSxFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUUxRSxNQUFNLGtCQUFrQixHQUFHLGlCQUFpQixDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM1RCxNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN6QyxNQUFNLFVBQVUsR0FBRyxjQUFjLEdBQUcsU0FBUyxHQUFHLGtCQUFrQixDQUFDO0lBRW5FLE1BQU0sZUFBZSxHQUFHLEVBQUUsR0FBRyxXQUFXLEVBQUUsR0FBRyxVQUFVLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxDQUFDO0lBRXJGLFFBQ0ksb0JBQUMsbUJBQW1CLElBQUMsS0FBSyxFQUFFLGVBQWU7UUFDdkMsb0JBQUNBLElBQU0sSUFBQyxLQUFLLEVBQUUsZUFBZSxJQUFHLFFBQVEsQ0FBVSxDQUNqQyxFQUN4QjtBQUNOLENBQUMsQ0FBQztNQUVXLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYzs7OzsifQ==
|
|
@@ -4,6 +4,7 @@ interface UseTextSharedStyleResponse {
|
|
|
4
4
|
color: RNTextStyle['color'];
|
|
5
5
|
textAlign: RNTextStyle['textAlign'];
|
|
6
6
|
textTransform: RNTextStyle['textTransform'];
|
|
7
|
+
includeFontPadding: false;
|
|
7
8
|
}
|
|
8
9
|
export declare const useTextSharedStyle: ({ accent, color, centered, textTransform, }: TextStyleCommonProps) => UseTextSharedStyleResponse;
|
|
9
10
|
export {};
|
|
@@ -14,4 +14,4 @@ const useTextSharedStyle = ({ accent, color, centered, textTransform, }) => {
|
|
|
14
14
|
};
|
|
15
15
|
|
|
16
16
|
export { useTextSharedStyle };
|
|
17
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlVGV4dFNoYXJlZFN0eWxlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvcHJvcHMvdHlwb2dyYXBoeS9ob29rcy9wcml2YXRlL3VzZVRleHRTaGFyZWRTdHlsZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgVGV4dFN0eWxlIGFzIFJOVGV4dFN0eWxlIH0gZnJvbSAncmVhY3QtbmF0aXZlJztcblxuaW1wb3J0IHsgVGV4dFN0eWxlQ29tbW9uUHJvcHMgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbmltcG9ydCB7IHVzZVRleHRDb2xvclN0eWxlIH0gZnJvbSAnLi91c2VUZXh0Q29sb3JTdHlsZSc7XG5cbmludGVyZmFjZSBVc2VUZXh0U2hhcmVkU3R5bGVSZXNwb25zZSB7XG4gICAgY29sb3I6IFJOVGV4dFN0eWxlWydjb2xvciddO1xuICAgIHRleHRBbGlnbjogUk5UZXh0U3R5bGVbJ3RleHRBbGlnbiddO1xuICAgIHRleHRUcmFuc2Zvcm06IFJOVGV4dFN0eWxlWyd0ZXh0VHJhbnNmb3JtJ107XG4gICAgaW5jbHVkZUZvbnRQYWRkaW5nOiBmYWxzZTtcbn1cblxuZXhwb3J0IGNvbnN0IHVzZVRleHRTaGFyZWRTdHlsZSA9ICh7XG4gICAgYWNjZW50LFxuICAgIGNvbG9yLFxuICAgIGNlbnRlcmVkLFxuICAgIHRleHRUcmFuc2Zvcm0sXG59OiBUZXh0U3R5bGVDb21tb25Qcm9wcyk6IFVzZVRleHRTaGFyZWRTdHlsZVJlc3BvbnNlID0+IHtcbiAgICBjb25zdCBjb2xvclN0eWxlID0gdXNlVGV4dENvbG9yU3R5bGUoY29sb3IsIGFjY2VudCk7XG5cbiAgICByZXR1cm4gdXNlTWVtbygoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5jb2xvclN0eWxlLFxuICAgICAgICAgICAgdGV4dEFsaWduOiBjZW50ZXJlZCA/ICdjZW50ZXInIDogJ2xlZnQnLFxuICAgICAgICAgICAgdGV4dFRyYW5zZm9ybSxcbiAgICAgICAgICAgIGluY2x1ZGVGb250UGFkZGluZzogZmFsc2UsXG4gICAgICAgIH07XG4gICAgfSwgW2NlbnRlcmVkLCBjb2xvclN0eWxlLCB0ZXh0VHJhbnNmb3JtXSk7XG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztNQWNhLGtCQUFrQixHQUFHLENBQUMsRUFDL0IsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsYUFBYSxHQUNNO0lBQ25CLE1BQU0sVUFBVSxHQUFHLGlCQUFpQixDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUVwRCxPQUFPLE9BQU8sQ0FBQztRQUNYLE9BQU87WUFDSCxHQUFHLFVBQVU7WUFDYixTQUFTLEVBQUUsUUFBUSxHQUFHLFFBQVEsR0FBRyxNQUFNO1lBQ3ZDLGFBQWE7WUFDYixrQkFBa0IsRUFBRSxLQUFLO1NBQzVCLENBQUM7S0FDTCxFQUFFLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDO0FBQzlDOzs7OyJ9
|
|
@@ -1,19 +1,37 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { root, heading } from '@preply/ds-core';
|
|
2
|
+
import { useTheme, useToken } from '@preply/ds-rn-core';
|
|
2
3
|
import { useMemo } from 'react';
|
|
4
|
+
import { getHeadingFontFamilyTokyo, getFontFamily } from '../utils/fontFamily.js';
|
|
3
5
|
import { useTextSharedStyle } from './private/useTextSharedStyle.js';
|
|
4
|
-
import { useTextVariantStyle } from './private/useTextVariantStyle.js';
|
|
5
6
|
|
|
6
7
|
const useHeadingStyle = ({ level, large = false, accent, color, centered, textTransform, }) => {
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
const { theme } = useTheme();
|
|
9
|
+
if (__DEV__ && large && theme.name === 'tokyo-ui') {
|
|
10
|
+
throw new Error('Tokyo UI theme does not support large headings');
|
|
11
|
+
}
|
|
12
|
+
const typeface = useToken(root.heading.base.typeface);
|
|
13
|
+
const tokens = heading.level[level][large ? 'large' : 'normal'];
|
|
14
|
+
const fontSize = useToken(tokens.fontSize);
|
|
15
|
+
const fontWeight = useToken(tokens.fontWeight);
|
|
16
|
+
const lineHeight = useToken(tokens.lineHeight);
|
|
17
|
+
const letterSpacing = useToken(tokens.letterSpacing);
|
|
12
18
|
const textSharedStyle = useTextSharedStyle({ accent, color, centered, textTransform });
|
|
19
|
+
const fontFamily = useMemo(() => {
|
|
20
|
+
if (theme.name === 'tokyo-ui') {
|
|
21
|
+
return getHeadingFontFamilyTokyo(typeface, fontWeight);
|
|
22
|
+
}
|
|
23
|
+
return getFontFamily(typeface, String(fontWeight), 'normal');
|
|
24
|
+
}, [typeface, fontWeight]);
|
|
13
25
|
return useMemo(() => {
|
|
14
|
-
return {
|
|
15
|
-
|
|
26
|
+
return {
|
|
27
|
+
...textSharedStyle,
|
|
28
|
+
fontSize,
|
|
29
|
+
lineHeight,
|
|
30
|
+
letterSpacing,
|
|
31
|
+
fontFamily,
|
|
32
|
+
};
|
|
33
|
+
}, [textSharedStyle, fontSize, lineHeight, letterSpacing, fontFamily]);
|
|
16
34
|
};
|
|
17
35
|
|
|
18
36
|
export { useHeadingStyle };
|
|
19
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlSGVhZGluZ1N0eWxlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcHJvcHMvdHlwb2dyYXBoeS9ob29rcy91c2VIZWFkaW5nU3R5bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGVhZGluZywgcm9vdCB9IGZyb20gJ0BwcmVwbHkvZHMtY29yZSc7XG5pbXBvcnQgeyB1c2VUaGVtZSwgdXNlVG9rZW4gfSBmcm9tICdAcHJlcGx5L2RzLXJuLWNvcmUnO1xuaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHsgSGVhZGluZ1N0eWxlUHJvcHMsIFRleHRTdHlsZSB9IGZyb20gJy4uJztcbmltcG9ydCB7IGdldEZvbnRGYW1pbHksIGdldEhlYWRpbmdGb250RmFtaWx5VG9reW8gfSBmcm9tICcuLi91dGlscy9mb250RmFtaWx5JztcblxuaW1wb3J0IHsgdXNlVGV4dFNoYXJlZFN0eWxlIH0gZnJvbSAnLi9wcml2YXRlL3VzZVRleHRTaGFyZWRTdHlsZSc7XG5cbmV4cG9ydCBjb25zdCB1c2VIZWFkaW5nU3R5bGUgPSAoe1xuICAgIGxldmVsLFxuICAgIGxhcmdlID0gZmFsc2UsXG4gICAgYWNjZW50LFxuICAgIGNvbG9yLFxuICAgIGNlbnRlcmVkLFxuICAgIHRleHRUcmFuc2Zvcm0sXG59OiBIZWFkaW5nU3R5bGVQcm9wcyk6IFRleHRTdHlsZSA9PiB7XG4gICAgY29uc3QgeyB0aGVtZSB9ID0gdXNlVGhlbWUoKTtcbiAgICBpZiAoX19ERVZfXyAmJiBsYXJnZSAmJiB0aGVtZS5uYW1lID09PSAndG9reW8tdWknKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVG9reW8gVUkgdGhlbWUgZG9lcyBub3Qgc3VwcG9ydCBsYXJnZSBoZWFkaW5ncycpO1xuICAgIH1cblxuICAgIGNvbnN0IHR5cGVmYWNlID0gdXNlVG9rZW48c3RyaW5nPihyb290LmhlYWRpbmcuYmFzZS50eXBlZmFjZSk7XG5cbiAgICBjb25zdCB0b2tlbnMgPSBoZWFkaW5nLmxldmVsW2xldmVsXVtsYXJnZSA/ICdsYXJnZScgOiAnbm9ybWFsJ107XG5cbiAgICBjb25zdCBmb250U2l6ZSA9IHVzZVRva2VuPG51bWJlcj4odG9rZW5zLmZvbnRTaXplKTtcbiAgICBjb25zdCBmb250V2VpZ2h0ID0gdXNlVG9rZW48bnVtYmVyPih0b2tlbnMuZm9udFdlaWdodCk7XG4gICAgY29uc3QgbGluZUhlaWdodCA9IHVzZVRva2VuPG51bWJlcj4odG9rZW5zLmxpbmVIZWlnaHQpO1xuICAgIGNvbnN0IGxldHRlclNwYWNpbmcgPSB1c2VUb2tlbjxudW1iZXI+KHRva2Vucy5sZXR0ZXJTcGFjaW5nKTtcblxuICAgIGNvbnN0IHRleHRTaGFyZWRTdHlsZSA9IHVzZVRleHRTaGFyZWRTdHlsZSh7IGFjY2VudCwgY29sb3IsIGNlbnRlcmVkLCB0ZXh0VHJhbnNmb3JtIH0pO1xuXG4gICAgY29uc3QgZm9udEZhbWlseSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBpZiAodGhlbWUubmFtZSA9PT0gJ3Rva3lvLXVpJykge1xuICAgICAgICAgICAgcmV0dXJuIGdldEhlYWRpbmdGb250RmFtaWx5VG9reW8odHlwZWZhY2UsIGZvbnRXZWlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGdldEZvbnRGYW1pbHkodHlwZWZhY2UsIFN0cmluZyhmb250V2VpZ2h0KSwgJ25vcm1hbCcpO1xuICAgIH0sIFt0eXBlZmFjZSwgZm9udFdlaWdodF0pO1xuXG4gICAgcmV0dXJuIHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4udGV4dFNoYXJlZFN0eWxlLFxuICAgICAgICAgICAgZm9udFNpemUsXG4gICAgICAgICAgICBsaW5lSGVpZ2h0LFxuICAgICAgICAgICAgbGV0dGVyU3BhY2luZyxcbiAgICAgICAgICAgIGZvbnRGYW1pbHksXG4gICAgICAgIH07XG4gICAgfSwgW3RleHRTaGFyZWRTdHlsZSwgZm9udFNpemUsIGxpbmVIZWlnaHQsIGxldHRlclNwYWNpbmcsIGZvbnRGYW1pbHldKTtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O01BU2EsZUFBZSxHQUFHLENBQUMsRUFDNUIsS0FBSyxFQUNMLEtBQUssR0FBRyxLQUFLLEVBQ2IsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsYUFBYSxHQUNHO0lBQ2hCLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxRQUFRLEVBQUUsQ0FBQztJQUM3QixJQUFJLE9BQU8sSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxVQUFVLEVBQUU7UUFDL0MsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO0tBQ3JFO0lBRUQsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFTLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTlELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxHQUFHLE9BQU8sR0FBRyxRQUFRLENBQUMsQ0FBQztJQUVoRSxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQVMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25ELE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBUyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkQsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFTLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN2RCxNQUFNLGFBQWEsR0FBRyxRQUFRLENBQVMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBRTdELE1BQU0sZUFBZSxHQUFHLGtCQUFrQixDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQztJQUV2RixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFVBQVUsRUFBRTtZQUMzQixPQUFPLHlCQUF5QixDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUMxRDtRQUVELE9BQU8sYUFBYSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7S0FDaEUsRUFBRSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBRTNCLE9BQU8sT0FBTyxDQUFDO1FBQ1gsT0FBTztZQUNILEdBQUcsZUFBZTtZQUNsQixRQUFRO1lBQ1IsVUFBVTtZQUNWLGFBQWE7WUFDYixVQUFVO1NBQ2IsQ0FBQztLQUNMLEVBQUUsQ0FBQyxlQUFlLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztBQUMzRTs7OzsifQ==
|
|
@@ -1,17 +1,59 @@
|
|
|
1
|
-
import { text } from '@preply/ds-core';
|
|
2
|
-
import { TEXT_VARIANT_RN_DEFAULT } from '@preply/ds-rn-core';
|
|
1
|
+
import { root, text } from '@preply/ds-core';
|
|
2
|
+
import { TEXT_VARIANT_RN_DEFAULT, useTheme, useToken } from '@preply/ds-rn-core';
|
|
3
3
|
import { useMemo } from 'react';
|
|
4
|
+
import { getTextFontFamilyTokyo, getFontFamily } from '../utils/fontFamily.js';
|
|
4
5
|
import { useTextSharedStyle } from './private/useTextSharedStyle.js';
|
|
5
|
-
import { useTextVariantStyle } from './private/useTextVariantStyle.js';
|
|
6
6
|
|
|
7
|
+
const tokyoValidVariants = [
|
|
8
|
+
'l-medium',
|
|
9
|
+
'l-medium-italic',
|
|
10
|
+
'l',
|
|
11
|
+
'l-italic',
|
|
12
|
+
'm-medium',
|
|
13
|
+
'm-medium-italic',
|
|
14
|
+
'm',
|
|
15
|
+
'm-italic',
|
|
16
|
+
's-medium',
|
|
17
|
+
's-medium-italic',
|
|
18
|
+
's',
|
|
19
|
+
's-italic',
|
|
20
|
+
'xs-medium',
|
|
21
|
+
'xs',
|
|
22
|
+
];
|
|
7
23
|
const useTextStyle = ({ variant = TEXT_VARIANT_RN_DEFAULT, accent, color, centered, textTransform, } = {}) => {
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
24
|
+
const { theme } = useTheme();
|
|
25
|
+
if (__DEV__ && theme.name === 'tokyo-ui' && !tokyoValidVariants.includes(variant)) {
|
|
26
|
+
throw new Error(`Invalid variant for Tokyo UI theme: ${variant}`);
|
|
27
|
+
}
|
|
28
|
+
const typeface = useToken(root.text.base.typeface);
|
|
29
|
+
const tokens = text.variant[variant];
|
|
30
|
+
const fontSize = useToken(tokens.fontSize);
|
|
31
|
+
const fontWeight = useToken(tokens.fontWeight);
|
|
32
|
+
const lineHeight = useToken(tokens.lineHeight);
|
|
33
|
+
const letterSpacing = useToken(tokens.letterSpacing);
|
|
34
|
+
const fontStyle = useToken(tokens.fontStyle);
|
|
35
|
+
const textSharedStyle = useTextSharedStyle({
|
|
36
|
+
accent,
|
|
37
|
+
color,
|
|
38
|
+
centered,
|
|
39
|
+
textTransform,
|
|
40
|
+
});
|
|
41
|
+
const fontFamily = useMemo(() => {
|
|
42
|
+
if (theme.name === 'tokyo-ui') {
|
|
43
|
+
return getTextFontFamilyTokyo(typeface, fontWeight, fontStyle);
|
|
44
|
+
}
|
|
45
|
+
return getFontFamily(typeface, String(fontWeight), fontStyle);
|
|
46
|
+
}, [typeface, fontWeight, fontStyle]);
|
|
11
47
|
return useMemo(() => {
|
|
12
|
-
return {
|
|
13
|
-
|
|
48
|
+
return {
|
|
49
|
+
...textSharedStyle,
|
|
50
|
+
fontSize,
|
|
51
|
+
lineHeight,
|
|
52
|
+
letterSpacing,
|
|
53
|
+
fontFamily,
|
|
54
|
+
};
|
|
55
|
+
}, [textSharedStyle, fontSize, lineHeight, letterSpacing, fontFamily]);
|
|
14
56
|
};
|
|
15
57
|
|
|
16
58
|
export { useTextStyle };
|
|
17
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlVGV4dFN0eWxlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcHJvcHMvdHlwb2dyYXBoeS9ob29rcy91c2VUZXh0U3R5bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGV4dFZhcmlhbnQsIHJvb3QsIHRleHQgfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUnO1xuaW1wb3J0IHsgVEVYVF9WQVJJQU5UX1JOX0RFRkFVTFQsIHVzZVRoZW1lLCB1c2VUb2tlbiB9IGZyb20gJ0BwcmVwbHkvZHMtcm4tY29yZSc7XG5pbXBvcnQgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBUZXh0U3R5bGUsIFRleHRTdHlsZVByb3BzIH0gZnJvbSAnLi4nO1xuaW1wb3J0IHsgZ2V0Rm9udEZhbWlseSwgZ2V0VGV4dEZvbnRGYW1pbHlUb2t5byB9IGZyb20gJy4uL3V0aWxzL2ZvbnRGYW1pbHknO1xuXG5pbXBvcnQgeyB1c2VUZXh0U2hhcmVkU3R5bGUgfSBmcm9tICcuL3ByaXZhdGUvdXNlVGV4dFNoYXJlZFN0eWxlJztcblxuY29uc3QgdG9reW9WYWxpZFZhcmlhbnRzOiBUZXh0VmFyaWFudFtdID0gW1xuICAgICdsLW1lZGl1bScsIC8vIEJvZHkvTGFyZ2UvU2VtaWJvbGRcbiAgICAnbC1tZWRpdW0taXRhbGljJywgLy8gQm9keS9MYXJnZS9TZW1pYm9sZCBJdGFsaWNcbiAgICAnbCcsIC8vIEJvZHkvTGFyZ2UvUmVndWxhclxuICAgICdsLWl0YWxpYycsIC8vIEJvZHkvTGFyZ2UvUmVndWxhciBJdGFsaWNcblxuICAgICdtLW1lZGl1bScsIC8vIEJvZHkvRGVmYXVsdC9TZW1pYm9sZFxuICAgICdtLW1lZGl1bS1pdGFsaWMnLCAvLyBCb2R5L0RlZmF1bHQvU2VtaWJvbGQgSXRhbGljXG4gICAgJ20nLCAvLyBCb2R5L0RlZmF1bHQvUmVndWxhclxuICAgICdtLWl0YWxpYycsIC8vIEJvZHkvRGVmYXVsdC9SZWd1bGFyIEl0YWxpY1xuXG4gICAgJ3MtbWVkaXVtJywgLy8gQm9keS9TbWFsbC9TZW1pYm9sZFxuICAgICdzLW1lZGl1bS1pdGFsaWMnLCAvLyBCb2R5L1NtYWxsL1NlbWlib2xkIEl0YWxpY1xuICAgICdzJywgLy8gQm9keS9TbWFsbC9SZWd1bGFyXG4gICAgJ3MtaXRhbGljJywgLy8gQm9keS9TbWFsbC9SZWd1bGFyIEl0YWxpY1xuXG4gICAgJ3hzLW1lZGl1bScsIC8vIEJvZHkvQ2FwdGlvbi9TZW1pYm9sZFxuICAgICd4cycsIC8vIEJvZHkvQ2FwdGlvbi9SZWd1bGFyXG5dO1xuXG5leHBvcnQgY29uc3QgdXNlVGV4dFN0eWxlID0gKHtcbiAgICB2YXJpYW50ID0gVEVYVF9WQVJJQU5UX1JOX0RFRkFVTFQsXG4gICAgYWNjZW50LFxuICAgIGNvbG9yLFxuICAgIGNlbnRlcmVkLFxuICAgIHRleHRUcmFuc2Zvcm0sXG59OiBUZXh0U3R5bGVQcm9wcyA9IHt9KTogVGV4dFN0eWxlID0+IHtcbiAgICBjb25zdCB7IHRoZW1lIH0gPSB1c2VUaGVtZSgpO1xuICAgIGlmIChfX0RFVl9fICYmIHRoZW1lLm5hbWUgPT09ICd0b2t5by11aScgJiYgIXRva3lvVmFsaWRWYXJpYW50cy5pbmNsdWRlcyh2YXJpYW50KSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgdmFyaWFudCBmb3IgVG9reW8gVUkgdGhlbWU6ICR7dmFyaWFudH1gKTtcbiAgICB9XG5cbiAgICBjb25zdCB0eXBlZmFjZSA9IHVzZVRva2VuPHN0cmluZz4ocm9vdC50ZXh0LmJhc2UudHlwZWZhY2UpO1xuXG4gICAgY29uc3QgdG9rZW5zID0gdGV4dC52YXJpYW50W3ZhcmlhbnRdO1xuICAgIGNvbnN0IGZvbnRTaXplID0gdXNlVG9rZW48bnVtYmVyPih0b2tlbnMuZm9udFNpemUpO1xuICAgIGNvbnN0IGZvbnRXZWlnaHQgPSB1c2VUb2tlbjxudW1iZXI+KHRva2Vucy5mb250V2VpZ2h0KTtcbiAgICBjb25zdCBsaW5lSGVpZ2h0ID0gdXNlVG9rZW48bnVtYmVyPih0b2tlbnMubGluZUhlaWdodCk7XG4gICAgY29uc3QgbGV0dGVyU3BhY2luZyA9IHVzZVRva2VuPG51bWJlcj4odG9rZW5zLmxldHRlclNwYWNpbmcpO1xuICAgIGNvbnN0IGZvbnRTdHlsZSA9IHVzZVRva2VuPHN0cmluZz4odG9rZW5zLmZvbnRTdHlsZSk7XG5cbiAgICBjb25zdCB0ZXh0U2hhcmVkU3R5bGUgPSB1c2VUZXh0U2hhcmVkU3R5bGUoe1xuICAgICAgICBhY2NlbnQsXG4gICAgICAgIGNvbG9yLFxuICAgICAgICBjZW50ZXJlZCxcbiAgICAgICAgdGV4dFRyYW5zZm9ybSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGZvbnRGYW1pbHkgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgaWYgKHRoZW1lLm5hbWUgPT09ICd0b2t5by11aScpIHtcbiAgICAgICAgICAgIHJldHVybiBnZXRUZXh0Rm9udEZhbWlseVRva3lvKHR5cGVmYWNlLCBmb250V2VpZ2h0LCBmb250U3R5bGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGdldEZvbnRGYW1pbHkodHlwZWZhY2UsIFN0cmluZyhmb250V2VpZ2h0KSwgZm9udFN0eWxlKTtcbiAgICB9LCBbdHlwZWZhY2UsIGZvbnRXZWlnaHQsIGZvbnRTdHlsZV0pO1xuXG4gICAgcmV0dXJuIHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4udGV4dFNoYXJlZFN0eWxlLFxuICAgICAgICAgICAgZm9udFNpemUsXG4gICAgICAgICAgICBsaW5lSGVpZ2h0LFxuICAgICAgICAgICAgbGV0dGVyU3BhY2luZyxcbiAgICAgICAgICAgIGZvbnRGYW1pbHksXG4gICAgICAgIH07XG4gICAgfSwgW3RleHRTaGFyZWRTdHlsZSwgZm9udFNpemUsIGxpbmVIZWlnaHQsIGxldHRlclNwYWNpbmcsIGZvbnRGYW1pbHldKTtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBU0EsTUFBTSxrQkFBa0IsR0FBa0I7SUFDdEMsVUFBVTtJQUNWLGlCQUFpQjtJQUNqQixHQUFHO0lBQ0gsVUFBVTtJQUVWLFVBQVU7SUFDVixpQkFBaUI7SUFDakIsR0FBRztJQUNILFVBQVU7SUFFVixVQUFVO0lBQ1YsaUJBQWlCO0lBQ2pCLEdBQUc7SUFDSCxVQUFVO0lBRVYsV0FBVztJQUNYLElBQUk7Q0FDUCxDQUFDO01BRVcsWUFBWSxHQUFHLENBQUMsRUFDekIsT0FBTyxHQUFHLHVCQUF1QixFQUNqQyxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixhQUFhLE1BQ0csRUFBRTtJQUNsQixNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsUUFBUSxFQUFFLENBQUM7SUFDN0IsSUFBSSxPQUFPLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxVQUFVLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDL0UsTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsT0FBTyxFQUFFLENBQUMsQ0FBQztLQUNyRTtJQUVELE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUUzRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBUyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbkQsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFTLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN2RCxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQVMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBUyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDN0QsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFTLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUVyRCxNQUFNLGVBQWUsR0FBRyxrQkFBa0IsQ0FBQztRQUN2QyxNQUFNO1FBQ04sS0FBSztRQUNMLFFBQVE7UUFDUixhQUFhO0tBQ2hCLENBQUMsQ0FBQztJQUVILE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssVUFBVSxFQUFFO1lBQzNCLE9BQU8sc0JBQXNCLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQztTQUNsRTtRQUVELE9BQU8sYUFBYSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7S0FDakUsRUFBRSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUV0QyxPQUFPLE9BQU8sQ0FBQztRQUNYLE9BQU87WUFDSCxHQUFHLGVBQWU7WUFDbEIsUUFBUTtZQUNSLFVBQVU7WUFDVixhQUFhO1lBQ2IsVUFBVTtTQUNiLENBQUM7S0FDTCxFQUFFLENBQUMsZUFBZSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7QUFDM0U7Ozs7In0=
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const getFontFamily: (
|
|
1
|
+
import { TextStyle } from '../types';
|
|
2
|
+
export declare const getFontFamily: (typeface: string, fontWeight: string, fontStyle: string) => string;
|
|
3
3
|
export declare const getNewFontFamily: (fontFamily: string, fontWeight?: "normal" | "400" | "500" | "700" | "medium" | "bold" | undefined, italic?: boolean | undefined) => string;
|
|
4
|
+
export declare function getTextFontFamilyVariantTokyo(fontWeight: number, fontStyle: string): string;
|
|
5
|
+
export declare function getTextFontFamilyTokyo(typeface: string, fontWeight: number, fontStyle: string): TextStyle['fontFamily'];
|
|
6
|
+
export declare function getHeadingFontFamilyTokyo(typeface: string, fontWeight: number): TextStyle['fontFamily'];
|
|
7
|
+
export declare function getNewFontFamilyTokyo(fontFamily: TextStyle['fontFamily'], fontWeight?: string, italic?: boolean): TextStyle['fontFamily'];
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
const FONT_REGULAR = 'Regular';
|
|
2
2
|
const FONT_MEDIUM = 'Medium';
|
|
3
|
+
const FONT_SEMI_BOLD = 'SemiBold';
|
|
3
4
|
const FONT_BOLD = 'Bold';
|
|
4
5
|
const FONT_ITALIC = 'Italic';
|
|
5
6
|
const isItalic = (fontStyle) => {
|
|
@@ -40,10 +41,22 @@ const getFontStyleFromString = (fontFamily) => {
|
|
|
40
41
|
}
|
|
41
42
|
return 'normal';
|
|
42
43
|
};
|
|
43
|
-
|
|
44
|
+
function assertFontStyle(input) {
|
|
45
|
+
if (![undefined, 'italic', 'normal', 'oblique 10deg'].includes(input)) {
|
|
46
|
+
throw new Error(`Invalid font style: ${input}`);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function assertFontWeight(input) {
|
|
50
|
+
if (![undefined, 'normal', '400', 'medium', '500', '700', 'bold'].includes(input)) {
|
|
51
|
+
throw new Error(`Invalid font weight: ${input} (${typeof input})`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const getFontFamily = (typeface, fontWeight, fontStyle) => {
|
|
55
|
+
assertFontStyle(fontStyle);
|
|
56
|
+
assertFontWeight(fontWeight);
|
|
44
57
|
const fontWeightString = getFontWeightString(fontWeight, fontStyle);
|
|
45
58
|
const fontStyleString = getFontStyleString(fontStyle);
|
|
46
|
-
return `${
|
|
59
|
+
return `${typeface}-${fontWeightString}${fontStyleString}`;
|
|
47
60
|
};
|
|
48
61
|
const getNewFontFamily = (fontFamily, fontWeight, italic) => {
|
|
49
62
|
const [typeface, weightAndStyle] = fontFamily.split('-');
|
|
@@ -53,7 +66,56 @@ const getNewFontFamily = (fontFamily, fontWeight, italic) => {
|
|
|
53
66
|
const computedFontStyle = italic ? 'italic' : 'normal';
|
|
54
67
|
const newFontStyle = italic === undefined ? prevFontStyle : computedFontStyle;
|
|
55
68
|
return getFontFamily(typeface, newFontWeight, newFontStyle);
|
|
56
|
-
};
|
|
69
|
+
};
|
|
70
|
+
// === TOKYO UI ===
|
|
71
|
+
function assertTokyoTextFontWeight(input) {
|
|
72
|
+
if (![400, 600].includes(input)) {
|
|
73
|
+
throw new Error(`Invalid font weight: ${input} (${typeof input})`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
function getTextFontFamilyVariantTokyo(fontWeight, fontStyle) {
|
|
77
|
+
assertFontStyle(fontStyle);
|
|
78
|
+
assertTokyoTextFontWeight(fontWeight);
|
|
79
|
+
switch (fontWeight) {
|
|
80
|
+
case 600: {
|
|
81
|
+
return `${isItalic(fontStyle) ? 'SemiBoldItalic' : 'SemiBold'}`;
|
|
82
|
+
}
|
|
83
|
+
case 400:
|
|
84
|
+
default: {
|
|
85
|
+
return `${isItalic(fontStyle) ? 'Italic' : 'Regular'}`;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
function getTextFontFamilyTokyo(typeface, fontWeight, fontStyle) {
|
|
90
|
+
return `${typeface}-${getTextFontFamilyVariantTokyo(fontWeight, fontStyle)}`;
|
|
91
|
+
}
|
|
92
|
+
function getHeadingFontFamilyTokyo(typeface, fontWeight) {
|
|
93
|
+
if (fontWeight !== 500 || typeface !== 'Platform-NotoSans') {
|
|
94
|
+
throw new Error('Tokyo UI supports only Platform-NotoSans-Medium font for headings');
|
|
95
|
+
}
|
|
96
|
+
return `Platform-NotoSans-Medium`;
|
|
97
|
+
}
|
|
98
|
+
function splitLastOccurrence(str, substring) {
|
|
99
|
+
const lastIndex = str.lastIndexOf(substring);
|
|
100
|
+
return [str.slice(0, lastIndex), str.slice(lastIndex + 1)];
|
|
101
|
+
}
|
|
102
|
+
function getNewFontFamilyTokyo(fontFamily, fontWeight, italic) {
|
|
103
|
+
if (fontWeight !== undefined && fontWeight !== 'normal' && fontWeight !== 'medium') {
|
|
104
|
+
throw new Error(`"${fontWeight}" is not a valid Tokyo UI font weight. Valid values are: "normal" (for Regular) and "medium" (for SemiBold)`);
|
|
105
|
+
}
|
|
106
|
+
const [typeface] = splitLastOccurrence(fontFamily, '-');
|
|
107
|
+
const parentSemibold = fontFamily.includes(FONT_SEMI_BOLD);
|
|
108
|
+
const parentItalic = fontFamily.includes(FONT_ITALIC);
|
|
109
|
+
let childSemiBold = parentSemibold;
|
|
110
|
+
if (fontWeight !== undefined) {
|
|
111
|
+
childSemiBold = fontWeight === 'medium';
|
|
112
|
+
}
|
|
113
|
+
let childItalic = parentItalic;
|
|
114
|
+
if (italic !== undefined) {
|
|
115
|
+
childItalic = italic;
|
|
116
|
+
}
|
|
117
|
+
return getTextFontFamilyTokyo(typeface, childSemiBold ? 600 : 400, childItalic ? 'italic' : 'normal');
|
|
118
|
+
}
|
|
57
119
|
|
|
58
|
-
export { getFontFamily, getNewFontFamily };
|
|
59
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udEZhbWlseS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Byb3BzL3R5cG9ncmFwaHkvdXRpbHMvZm9udEZhbWlseS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZXh0V2VpZ2h0IH0gZnJvbSAnQHByZXBseS9kcy1jb3JlJztcbmltcG9ydCB7IFRleHRTdHlsZSBhcyBSTlRleHRTdHlsZSB9IGZyb20gJ3JlYWN0LW5hdGl2ZSc7XG5cbmltcG9ydCB7IFRleHRTdHlsZSB9IGZyb20gJy4uL3R5cGVzJztcblxuY29uc3QgRk9OVF9SRUdVTEFSID0gJ1JlZ3VsYXInO1xuY29uc3QgRk9OVF9NRURJVU0gPSAnTWVkaXVtJztcbmNvbnN0IEZPTlRfQk9MRCA9ICdCb2xkJztcbmNvbnN0IEZPTlRfSVRBTElDID0gJ0l0YWxpYyc7XG5cbmNvbnN0IGlzSXRhbGljID0gKGZvbnRTdHlsZTogUk5UZXh0U3R5bGVbJ2ZvbnRTdHlsZSddIHwgJ29ibGlxdWUgMTBkZWcnKSA9PiB7XG4gICAgcmV0dXJuIGZvbnRTdHlsZSA9PT0gJ2l0YWxpYycgfHwgZm9udFN0eWxlID09PSAnb2JsaXF1ZSAxMGRlZyc7XG59O1xuXG5jb25zdCBnZXRGb250V2VpZ2h0U3RyaW5nID0gKFxuICAgIGZvbnRXZWlnaHQ6IFRleHRXZWlnaHQsXG4gICAgZm9udFN0eWxlOiBSTlRleHRTdHlsZVsnZm9udFN0eWxlJ10sXG4pOiBzdHJpbmcgPT4ge1xuICAgIHN3aXRjaCAoZm9udFdlaWdodCkge1xuICAgICAgICBjYXNlICdtZWRpdW0nOlxuICAgICAgICBjYXNlICc1MDAnOiB7XG4gICAgICAgICAgICByZXR1cm4gRk9OVF9NRURJVU07XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSAnYm9sZCc6XG4gICAgICAgIGNhc2UgJzcwMCc6IHtcbiAgICAgICAgICAgIHJldHVybiBGT05UX0JPTEQ7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSAnbm9ybWFsJzpcbiAgICAgICAgY2FzZSAnNDAwJzpcbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgcmV0dXJuIGlzSXRhbGljKGZvbnRTdHlsZSkgPyAnJyA6IEZPTlRfUkVHVUxBUjtcbiAgICAgICAgfVxuICAgIH1cbn07XG5cbmNvbnN0IGdldEZvbnRXZWlnaHRGcm9tU3RyaW5nID0gKGZvbnRGYW1pbHk6IHN0cmluZyk6IFRleHRXZWlnaHQgPT4ge1xuICAgIGlmIChmb250RmFtaWx5LmluY2x1ZGVzKEZPTlRfTUVESVVNKSkge1xuICAgICAgICByZXR1cm4gJzUwMCc7XG4gICAgfVxuXG4gICAgaWYgKGZvbnRGYW1pbHkuaW5jbHVkZXMoRk9OVF9CT0xEKSkge1xuICAgICAgICByZXR1cm4gJzcwMCc7XG4gICAgfVxuXG4gICAgcmV0dXJuICc0MDAnO1xufTtcblxuY29uc3QgZ2V0Rm9udFN0eWxlU3RyaW5nID0gKGZvbnRTdHlsZTogUk5UZXh0U3R5bGVbJ2ZvbnRTdHlsZSddKTogc3RyaW5nID0+IHtcbiAgICByZXR1cm4gaXNJdGFsaWMoZm9udFN0eWxlKSA/IEZPTlRfSVRBTElDIDogJyc7XG59O1xuXG5jb25zdCBnZXRGb250U3R5bGVGcm9tU3RyaW5nID0gKGZvbnRGYW1pbHk6IHN0cmluZyk6IFJOVGV4dFN0eWxlWydmb250U3R5bGUnXSA9PiB7XG4gICAgaWYgKGZvbnRGYW1pbHkuaW5jbHVkZXMoRk9OVF9JVEFMSUMpKSB7XG4gICAgICAgIHJldHVybiAnaXRhbGljJztcbiAgICB9XG5cbiAgICByZXR1cm4gJ25vcm1hbCc7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Rm9udEZhbWlseSA9IChcbiAgICBmb250RmFtaWx5OiBSTlRleHRTdHlsZVsnZm9udEZhbWlseSddLFxuICAgIGZvbnRXZWlnaHQ6IFRleHRXZWlnaHQsXG4gICAgZm9udFN0eWxlOiBSTlRleHRTdHlsZVsnZm9udFN0eWxlJ10sXG4pOiBUZXh0U3R5bGVbJ2ZvbnRGYW1pbHknXSA9PiB7XG4gICAgY29uc3QgZm9udFdlaWdodFN0cmluZyA9IGdldEZvbnRXZWlnaHRTdHJpbmcoZm9udFdlaWdodCwgZm9udFN0eWxlKTtcbiAgICBjb25zdCBmb250U3R5bGVTdHJpbmcgPSBnZXRGb250U3R5bGVTdHJpbmcoZm9udFN0eWxlKTtcblxuICAgIHJldHVybiBgJHtmb250RmFtaWx5fS0ke2ZvbnRXZWlnaHRTdHJpbmd9JHtmb250U3R5bGVTdHJpbmd9YDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXROZXdGb250RmFtaWx5ID0gKFxuICAgIGZvbnRGYW1pbHk6IFRleHRTdHlsZVsnZm9udEZhbWlseSddLFxuICAgIGZvbnRXZWlnaHQ/OiBUZXh0V2VpZ2h0LFxuICAgIGl0YWxpYz86IGJvb2xlYW4sXG4pOiBUZXh0U3R5bGVbJ2ZvbnRGYW1pbHknXSA9PiB7XG4gICAgY29uc3QgW3R5cGVmYWNlLCB3ZWlnaHRBbmRTdHlsZV0gPSBmb250RmFtaWx5LnNwbGl0KCctJyk7XG5cbiAgICBjb25zdCBwcmV2Rm9udFdlaWdodCA9IGdldEZvbnRXZWlnaHRGcm9tU3RyaW5nKHdlaWdodEFuZFN0eWxlKTtcbiAgICBjb25zdCBwcmV2Rm9udFN0eWxlID0gZ2V0Rm9udFN0eWxlRnJvbVN0cmluZyh3ZWlnaHRBbmRTdHlsZSk7XG5cbiAgICBjb25zdCBuZXdGb250V2VpZ2h0ID0gZm9udFdlaWdodCA/PyBwcmV2Rm9udFdlaWdodDtcblxuICAgIGNvbnN0IGNvbXB1dGVkRm9udFN0eWxlID0gaXRhbGljID8gJ2l0YWxpYycgOiAnbm9ybWFsJztcbiAgICBjb25zdCBuZXdGb250U3R5bGUgPSBpdGFsaWMgPT09IHVuZGVmaW5lZCA/IHByZXZGb250U3R5bGUgOiBjb21wdXRlZEZvbnRTdHlsZTtcblxuICAgIHJldHVybiBnZXRGb250RmFtaWx5KHR5cGVmYWNlLCBuZXdGb250V2VpZ2h0LCBuZXdGb250U3R5bGUpO1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLFlBQVksR0FBRyxTQUFTLENBQUM7QUFDL0IsTUFBTSxXQUFX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
|
|
120
|
+
export { getFontFamily, getHeadingFontFamilyTokyo, getNewFontFamily, getNewFontFamilyTokyo, getTextFontFamilyTokyo, getTextFontFamilyVariantTokyo };
|
|
121
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udEZhbWlseS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Byb3BzL3R5cG9ncmFwaHkvdXRpbHMvZm9udEZhbWlseS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZXh0V2VpZ2h0IH0gZnJvbSAnQHByZXBseS9kcy1jb3JlJztcblxuaW1wb3J0IHsgVGV4dFN0eWxlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5jb25zdCBGT05UX1JFR1VMQVIgPSAnUmVndWxhcic7XG5jb25zdCBGT05UX01FRElVTSA9ICdNZWRpdW0nO1xuY29uc3QgRk9OVF9TRU1JX0JPTEQgPSAnU2VtaUJvbGQnO1xuY29uc3QgRk9OVF9CT0xEID0gJ0JvbGQnO1xuY29uc3QgRk9OVF9JVEFMSUMgPSAnSXRhbGljJztcblxudHlwZSBGb250U3R5bGUgPSAnbm9ybWFsJyB8ICdpdGFsaWMnIHwgJ29ibGlxdWUgMTBkZWcnO1xuXG5jb25zdCBpc0l0YWxpYyA9IChmb250U3R5bGU6IEZvbnRTdHlsZSkgPT4ge1xuICAgIHJldHVybiBmb250U3R5bGUgPT09ICdpdGFsaWMnIHx8IGZvbnRTdHlsZSA9PT0gJ29ibGlxdWUgMTBkZWcnO1xufTtcblxuY29uc3QgZ2V0Rm9udFdlaWdodFN0cmluZyA9IChmb250V2VpZ2h0OiBUZXh0V2VpZ2h0LCBmb250U3R5bGU6IEZvbnRTdHlsZSk6IHN0cmluZyA9PiB7XG4gICAgc3dpdGNoIChmb250V2VpZ2h0KSB7XG4gICAgICAgIGNhc2UgJ21lZGl1bSc6XG4gICAgICAgIGNhc2UgJzUwMCc6IHtcbiAgICAgICAgICAgIHJldHVybiBGT05UX01FRElVTTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdib2xkJzpcbiAgICAgICAgY2FzZSAnNzAwJzoge1xuICAgICAgICAgICAgcmV0dXJuIEZPTlRfQk9MRDtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdub3JtYWwnOlxuICAgICAgICBjYXNlICc0MDAnOlxuICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgICByZXR1cm4gaXNJdGFsaWMoZm9udFN0eWxlKSA/ICcnIDogRk9OVF9SRUdVTEFSO1xuICAgICAgICB9XG4gICAgfVxufTtcblxuY29uc3QgZ2V0Rm9udFdlaWdodEZyb21TdHJpbmcgPSAoZm9udEZhbWlseTogc3RyaW5nKTogVGV4dFdlaWdodCA9PiB7XG4gICAgaWYgKGZvbnRGYW1pbHkuaW5jbHVkZXMoRk9OVF9NRURJVU0pKSB7XG4gICAgICAgIHJldHVybiAnNTAwJztcbiAgICB9XG5cbiAgICBpZiAoZm9udEZhbWlseS5pbmNsdWRlcyhGT05UX0JPTEQpKSB7XG4gICAgICAgIHJldHVybiAnNzAwJztcbiAgICB9XG5cbiAgICByZXR1cm4gJzQwMCc7XG59O1xuXG5jb25zdCBnZXRGb250U3R5bGVTdHJpbmcgPSAoZm9udFN0eWxlOiBGb250U3R5bGUpOiBzdHJpbmcgPT4ge1xuICAgIHJldHVybiBpc0l0YWxpYyhmb250U3R5bGUpID8gRk9OVF9JVEFMSUMgOiAnJztcbn07XG5cbmNvbnN0IGdldEZvbnRTdHlsZUZyb21TdHJpbmcgPSAoZm9udEZhbWlseTogc3RyaW5nKTogRm9udFN0eWxlID0+IHtcbiAgICBpZiAoZm9udEZhbWlseS5pbmNsdWRlcyhGT05UX0lUQUxJQykpIHtcbiAgICAgICAgcmV0dXJuICdpdGFsaWMnO1xuICAgIH1cblxuICAgIHJldHVybiAnbm9ybWFsJztcbn07XG5cbmZ1bmN0aW9uIGFzc2VydEZvbnRTdHlsZShpbnB1dDogc3RyaW5nKTogYXNzZXJ0cyBpbnB1dCBpcyBGb250U3R5bGUge1xuICAgIGlmICghW3VuZGVmaW5lZCwgJ2l0YWxpYycsICdub3JtYWwnLCAnb2JsaXF1ZSAxMGRlZyddLmluY2x1ZGVzKGlucHV0KSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZm9udCBzdHlsZTogJHtpbnB1dH1gKTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGFzc2VydEZvbnRXZWlnaHQoaW5wdXQ/OiBzdHJpbmcpOiBhc3NlcnRzIGlucHV0IGlzIFRleHRXZWlnaHQge1xuICAgIGlmICghW3VuZGVmaW5lZCwgJ25vcm1hbCcsICc0MDAnLCAnbWVkaXVtJywgJzUwMCcsICc3MDAnLCAnYm9sZCddLmluY2x1ZGVzKGlucHV0KSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZm9udCB3ZWlnaHQ6ICR7aW5wdXR9ICgke3R5cGVvZiBpbnB1dH0pYCk7XG4gICAgfVxufVxuXG5leHBvcnQgY29uc3QgZ2V0Rm9udEZhbWlseSA9IChcbiAgICB0eXBlZmFjZTogc3RyaW5nLFxuICAgIGZvbnRXZWlnaHQ6IHN0cmluZyxcbiAgICBmb250U3R5bGU6IHN0cmluZyxcbik6IFRleHRTdHlsZVsnZm9udEZhbWlseSddID0+IHtcbiAgICBhc3NlcnRGb250U3R5bGUoZm9udFN0eWxlKTtcbiAgICBhc3NlcnRGb250V2VpZ2h0KGZvbnRXZWlnaHQpO1xuXG4gICAgY29uc3QgZm9udFdlaWdodFN0cmluZyA9IGdldEZvbnRXZWlnaHRTdHJpbmcoZm9udFdlaWdodCwgZm9udFN0eWxlKTtcbiAgICBjb25zdCBmb250U3R5bGVTdHJpbmcgPSBnZXRGb250U3R5bGVTdHJpbmcoZm9udFN0eWxlKTtcblxuICAgIHJldHVybiBgJHt0eXBlZmFjZX0tJHtmb250V2VpZ2h0U3RyaW5nfSR7Zm9udFN0eWxlU3RyaW5nfWA7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0TmV3Rm9udEZhbWlseSA9IChcbiAgICBmb250RmFtaWx5OiBUZXh0U3R5bGVbJ2ZvbnRGYW1pbHknXSxcbiAgICBmb250V2VpZ2h0PzogVGV4dFdlaWdodCxcbiAgICBpdGFsaWM/OiBib29sZWFuLFxuKTogVGV4dFN0eWxlWydmb250RmFtaWx5J10gPT4ge1xuICAgIGNvbnN0IFt0eXBlZmFjZSwgd2VpZ2h0QW5kU3R5bGVdID0gZm9udEZhbWlseS5zcGxpdCgnLScpO1xuXG4gICAgY29uc3QgcHJldkZvbnRXZWlnaHQgPSBnZXRGb250V2VpZ2h0RnJvbVN0cmluZyh3ZWlnaHRBbmRTdHlsZSk7XG4gICAgY29uc3QgcHJldkZvbnRTdHlsZSA9IGdldEZvbnRTdHlsZUZyb21TdHJpbmcod2VpZ2h0QW5kU3R5bGUpO1xuXG4gICAgY29uc3QgbmV3Rm9udFdlaWdodCA9IGZvbnRXZWlnaHQgPz8gcHJldkZvbnRXZWlnaHQ7XG5cbiAgICBjb25zdCBjb21wdXRlZEZvbnRTdHlsZSA9IGl0YWxpYyA/ICdpdGFsaWMnIDogJ25vcm1hbCc7XG4gICAgY29uc3QgbmV3Rm9udFN0eWxlID0gaXRhbGljID09PSB1bmRlZmluZWQgPyBwcmV2Rm9udFN0eWxlIDogY29tcHV0ZWRGb250U3R5bGU7XG5cbiAgICByZXR1cm4gZ2V0Rm9udEZhbWlseSh0eXBlZmFjZSwgbmV3Rm9udFdlaWdodCwgbmV3Rm9udFN0eWxlKTtcbn07XG5cbi8vID09PSBUT0tZTyBVSSA9PT1cblxuZnVuY3Rpb24gYXNzZXJ0VG9reW9UZXh0Rm9udFdlaWdodChpbnB1dDogbnVtYmVyKTogYXNzZXJ0cyBpbnB1dCBpcyA0MDAgfCA2MDAge1xuICAgIGlmICghWzQwMCwgNjAwXS5pbmNsdWRlcyhpbnB1dCkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGZvbnQgd2VpZ2h0OiAke2lucHV0fSAoJHt0eXBlb2YgaW5wdXR9KWApO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFRleHRGb250RmFtaWx5VmFyaWFudFRva3lvKGZvbnRXZWlnaHQ6IG51bWJlciwgZm9udFN0eWxlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGFzc2VydEZvbnRTdHlsZShmb250U3R5bGUpO1xuICAgIGFzc2VydFRva3lvVGV4dEZvbnRXZWlnaHQoZm9udFdlaWdodCk7XG5cbiAgICBzd2l0Y2ggKGZvbnRXZWlnaHQpIHtcbiAgICAgICAgY2FzZSA2MDA6IHtcbiAgICAgICAgICAgIHJldHVybiBgJHtpc0l0YWxpYyhmb250U3R5bGUpID8gJ1NlbWlCb2xkSXRhbGljJyA6ICdTZW1pQm9sZCd9YDtcbiAgICAgICAgfVxuICAgICAgICBjYXNlIDQwMDpcbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgcmV0dXJuIGAke2lzSXRhbGljKGZvbnRTdHlsZSkgPyAnSXRhbGljJyA6ICdSZWd1bGFyJ31gO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGV4dEZvbnRGYW1pbHlUb2t5byhcbiAgICB0eXBlZmFjZTogc3RyaW5nLFxuICAgIGZvbnRXZWlnaHQ6IG51bWJlcixcbiAgICBmb250U3R5bGU6IHN0cmluZyxcbik6IFRleHRTdHlsZVsnZm9udEZhbWlseSddIHtcbiAgICByZXR1cm4gYCR7dHlwZWZhY2V9LSR7Z2V0VGV4dEZvbnRGYW1pbHlWYXJpYW50VG9reW8oZm9udFdlaWdodCwgZm9udFN0eWxlKX1gO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SGVhZGluZ0ZvbnRGYW1pbHlUb2t5byhcbiAgICB0eXBlZmFjZTogc3RyaW5nLFxuICAgIGZvbnRXZWlnaHQ6IG51bWJlcixcbik6IFRleHRTdHlsZVsnZm9udEZhbWlseSddIHtcbiAgICBpZiAoZm9udFdlaWdodCAhPT0gNTAwIHx8IHR5cGVmYWNlICE9PSAnUGxhdGZvcm0tTm90b1NhbnMnKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVG9reW8gVUkgc3VwcG9ydHMgb25seSBQbGF0Zm9ybS1Ob3RvU2Fucy1NZWRpdW0gZm9udCBmb3IgaGVhZGluZ3MnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYFBsYXRmb3JtLU5vdG9TYW5zLU1lZGl1bWA7XG59XG5cbmZ1bmN0aW9uIHNwbGl0TGFzdE9jY3VycmVuY2Uoc3RyOiBzdHJpbmcsIHN1YnN0cmluZzogc3RyaW5nKTogW3N0cmluZywgc3RyaW5nXSB7XG4gICAgY29uc3QgbGFzdEluZGV4ID0gc3RyLmxhc3RJbmRleE9mKHN1YnN0cmluZyk7XG5cbiAgICByZXR1cm4gW3N0ci5zbGljZSgwLCBsYXN0SW5kZXgpLCBzdHIuc2xpY2UobGFzdEluZGV4ICsgMSldO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TmV3Rm9udEZhbWlseVRva3lvKFxuICAgIGZvbnRGYW1pbHk6IFRleHRTdHlsZVsnZm9udEZhbWlseSddLFxuICAgIGZvbnRXZWlnaHQ/OiBzdHJpbmcsXG4gICAgaXRhbGljPzogYm9vbGVhbixcbik6IFRleHRTdHlsZVsnZm9udEZhbWlseSddIHtcbiAgICBpZiAoZm9udFdlaWdodCAhPT0gdW5kZWZpbmVkICYmIGZvbnRXZWlnaHQgIT09ICdub3JtYWwnICYmIGZvbnRXZWlnaHQgIT09ICdtZWRpdW0nKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgIGBcIiR7Zm9udFdlaWdodH1cIiBpcyBub3QgYSB2YWxpZCBUb2t5byBVSSBmb250IHdlaWdodC4gVmFsaWQgdmFsdWVzIGFyZTogXCJub3JtYWxcIiAoZm9yIFJlZ3VsYXIpIGFuZCBcIm1lZGl1bVwiIChmb3IgU2VtaUJvbGQpYCxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBbdHlwZWZhY2VdID0gc3BsaXRMYXN0T2NjdXJyZW5jZShmb250RmFtaWx5LCAnLScpO1xuXG4gICAgY29uc3QgcGFyZW50U2VtaWJvbGQgPSBmb250RmFtaWx5LmluY2x1ZGVzKEZPTlRfU0VNSV9CT0xEKTtcbiAgICBjb25zdCBwYXJlbnRJdGFsaWMgPSBmb250RmFtaWx5LmluY2x1ZGVzKEZPTlRfSVRBTElDKTtcblxuICAgIGxldCBjaGlsZFNlbWlCb2xkID0gcGFyZW50U2VtaWJvbGQ7XG4gICAgaWYgKGZvbnRXZWlnaHQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjaGlsZFNlbWlCb2xkID0gZm9udFdlaWdodCA9PT0gJ21lZGl1bSc7XG4gICAgfVxuXG4gICAgbGV0IGNoaWxkSXRhbGljID0gcGFyZW50SXRhbGljO1xuICAgIGlmIChpdGFsaWMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjaGlsZEl0YWxpYyA9IGl0YWxpYztcbiAgICB9XG5cbiAgICByZXR1cm4gZ2V0VGV4dEZvbnRGYW1pbHlUb2t5byhcbiAgICAgICAgdHlwZWZhY2UsXG4gICAgICAgIGNoaWxkU2VtaUJvbGQgPyA2MDAgOiA0MDAsXG4gICAgICAgIGNoaWxkSXRhbGljID8gJ2l0YWxpYycgOiAnbm9ybWFsJyxcbiAgICApO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sWUFBWSxHQUFHLFNBQVMsQ0FBQztBQUMvQixNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUM7QUFDN0IsTUFBTSxjQUFjLEdBQUcsVUFBVSxDQUFDO0FBQ2xDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQztBQUN6QixNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUM7QUFJN0IsTUFBTSxRQUFRLEdBQUcsQ0FBQyxTQUFvQjtJQUNsQyxPQUFPLFNBQVMsS0FBSyxRQUFRLElBQUksU0FBUyxLQUFLLGVBQWUsQ0FBQztBQUNuRSxDQUFDLENBQUM7QUFFRixNQUFNLG1CQUFtQixHQUFHLENBQUMsVUFBc0IsRUFBRSxTQUFvQjtJQUNyRSxRQUFRLFVBQVU7UUFDZCxLQUFLLFFBQVEsQ0FBQztRQUNkLEtBQUssS0FBSyxFQUFFO1lBQ1IsT0FBTyxXQUFXLENBQUM7U0FDdEI7UUFDRCxLQUFLLE1BQU0sQ0FBQztRQUNaLEtBQUssS0FBSyxFQUFFO1lBQ1IsT0FBTyxTQUFTLENBQUM7U0FDcEI7UUFDRCxLQUFLLFFBQVEsQ0FBQztRQUNkLEtBQUssS0FBSyxDQUFDO1FBQ1gsU0FBUztZQUNMLE9BQU8sUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxZQUFZLENBQUM7U0FDbEQ7S0FDSjtBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxVQUFrQjtJQUMvQyxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUU7UUFDbEMsT0FBTyxLQUFLLENBQUM7S0FDaEI7SUFFRCxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVB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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@preply/ds-rn-lib",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.63.0",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -18,15 +18,15 @@
|
|
|
18
18
|
"dev": "run build:rollup -w"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@preply/ds-core": "0.
|
|
22
|
-
"@preply/ds-rn-core": "0.
|
|
23
|
-
"@preply/ds-rn-root": "0.
|
|
21
|
+
"@preply/ds-core": "0.63.0",
|
|
22
|
+
"@preply/ds-rn-core": "0.63.0",
|
|
23
|
+
"@preply/ds-rn-root": "0.63.0"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
26
|
-
"@preply/ds-core": "0.
|
|
26
|
+
"@preply/ds-core": "0.63.0",
|
|
27
27
|
"@preply/ds-core-types": "0.43.2",
|
|
28
|
-
"@preply/ds-rn-core": "0.
|
|
29
|
-
"@preply/ds-rn-root": "0.
|
|
28
|
+
"@preply/ds-rn-core": "0.63.0",
|
|
29
|
+
"@preply/ds-rn-root": "0.63.0",
|
|
30
30
|
"react": "^16.8.3",
|
|
31
31
|
"react-native": "^0.72.1"
|
|
32
32
|
},
|
|
@@ -38,5 +38,5 @@
|
|
|
38
38
|
"react-native": "^0.72.1",
|
|
39
39
|
"react-test-renderer": "16.8.3"
|
|
40
40
|
},
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "3b0d134c2e84b6828798d26fdba14945ca3f6556"
|
|
42
42
|
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Token } from '@preply/ds-core-types';
|
|
2
|
-
import { TextVariantStyle } from '../..';
|
|
3
|
-
interface VariantRawStyles {
|
|
4
|
-
fontSize: Token;
|
|
5
|
-
fontWeight: Token;
|
|
6
|
-
lineHeight: Token;
|
|
7
|
-
letterSpacing: Token;
|
|
8
|
-
fontStyle: Token;
|
|
9
|
-
}
|
|
10
|
-
export declare const useTextVariantStyle: (variantRawStyles: VariantRawStyles) => TextVariantStyle;
|
|
11
|
-
export {};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { root } from '@preply/ds-core';
|
|
2
|
-
import { useStyleSheet } from '@preply/ds-rn-core';
|
|
3
|
-
import { useMemo } from 'react';
|
|
4
|
-
import { getFontFamily } from '../../utils/fontFamily.js';
|
|
5
|
-
|
|
6
|
-
const fontFamilyRawStyle = {
|
|
7
|
-
fontFamily: root.text.base.typeface,
|
|
8
|
-
};
|
|
9
|
-
const useTextVariantStyle = (variantRawStyles) => {
|
|
10
|
-
const styles = useStyleSheet(useMemo(() => ({
|
|
11
|
-
fontFamily: fontFamilyRawStyle,
|
|
12
|
-
variant: variantRawStyles,
|
|
13
|
-
}), [variantRawStyles]));
|
|
14
|
-
return useMemo(() => ({
|
|
15
|
-
fontFamily: getFontFamily(styles.fontFamily.fontFamily, String(styles.variant.fontWeight), styles.variant.fontStyle),
|
|
16
|
-
fontSize: styles.variant.fontSize,
|
|
17
|
-
letterSpacing: styles.variant.letterSpacing,
|
|
18
|
-
lineHeight: styles.variant.lineHeight,
|
|
19
|
-
}), [
|
|
20
|
-
styles.fontFamily.fontFamily,
|
|
21
|
-
styles.variant.fontSize,
|
|
22
|
-
styles.variant.fontStyle,
|
|
23
|
-
styles.variant.fontWeight,
|
|
24
|
-
styles.variant.letterSpacing,
|
|
25
|
-
styles.variant.lineHeight,
|
|
26
|
-
]);
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
export { useTextVariantStyle };
|
|
30
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlVGV4dFZhcmlhbnRTdHlsZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3Byb3BzL3R5cG9ncmFwaHkvaG9va3MvcHJpdmF0ZS91c2VUZXh0VmFyaWFudFN0eWxlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRleHRXZWlnaHQsIHJvb3QgfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUnO1xuaW1wb3J0IHsgVG9rZW4gfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUtdHlwZXMnO1xuaW1wb3J0IHsgdXNlU3R5bGVTaGVldCB9IGZyb20gJ0BwcmVwbHkvZHMtcm4tY29yZSc7XG5pbXBvcnQgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBUZXh0VmFyaWFudFN0eWxlIH0gZnJvbSAnLi4vLi4nO1xuaW1wb3J0IHsgZ2V0Rm9udEZhbWlseSB9IGZyb20gJy4uLy4uL3V0aWxzL2ZvbnRGYW1pbHknO1xuXG5pbnRlcmZhY2UgVmFyaWFudFJhd1N0eWxlcyB7XG4gICAgZm9udFNpemU6IFRva2VuO1xuICAgIGZvbnRXZWlnaHQ6IFRva2VuO1xuICAgIGxpbmVIZWlnaHQ6IFRva2VuO1xuICAgIGxldHRlclNwYWNpbmc6IFRva2VuO1xuICAgIGZvbnRTdHlsZTogVG9rZW47XG59XG5cbmNvbnN0IGZvbnRGYW1pbHlSYXdTdHlsZSA9IHtcbiAgICBmb250RmFtaWx5OiByb290LnRleHQuYmFzZS50eXBlZmFjZSxcbn07XG5cbmV4cG9ydCBjb25zdCB1c2VUZXh0VmFyaWFudFN0eWxlID0gKHZhcmlhbnRSYXdTdHlsZXM6IFZhcmlhbnRSYXdTdHlsZXMpOiBUZXh0VmFyaWFudFN0eWxlID0+IHtcbiAgICBjb25zdCBzdHlsZXMgPSB1c2VTdHlsZVNoZWV0KFxuICAgICAgICB1c2VNZW1vKFxuICAgICAgICAgICAgKCkgPT4gKHtcbiAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBmb250RmFtaWx5UmF3U3R5bGUsXG4gICAgICAgICAgICAgICAgdmFyaWFudDogdmFyaWFudFJhd1N0eWxlcyxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgW3ZhcmlhbnRSYXdTdHlsZXNdLFxuICAgICAgICApLFxuICAgICk7XG5cbiAgICByZXR1cm4gdXNlTWVtbyhcbiAgICAgICAgKCkgPT4gKHtcbiAgICAgICAgICAgIGZvbnRGYW1pbHk6IGdldEZvbnRGYW1pbHkoXG4gICAgICAgICAgICAgICAgc3R5bGVzLmZvbnRGYW1pbHkuZm9udEZhbWlseSxcbiAgICAgICAgICAgICAgICBTdHJpbmcoc3R5bGVzLnZhcmlhbnQuZm9udFdlaWdodCkgYXMgVGV4dFdlaWdodCxcbiAgICAgICAgICAgICAgICBzdHlsZXMudmFyaWFudC5mb250U3R5bGUsXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgZm9udFNpemU6IHN0eWxlcy52YXJpYW50LmZvbnRTaXplLFxuICAgICAgICAgICAgbGV0dGVyU3BhY2luZzogc3R5bGVzLnZhcmlhbnQubGV0dGVyU3BhY2luZyxcbiAgICAgICAgICAgIGxpbmVIZWlnaHQ6IHN0eWxlcy52YXJpYW50LmxpbmVIZWlnaHQsXG4gICAgICAgIH0pLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZXMuZm9udEZhbWlseS5mb250RmFtaWx5LFxuICAgICAgICAgICAgc3R5bGVzLnZhcmlhbnQuZm9udFNpemUsXG4gICAgICAgICAgICBzdHlsZXMudmFyaWFudC5mb250U3R5bGUsXG4gICAgICAgICAgICBzdHlsZXMudmFyaWFudC5mb250V2VpZ2h0LFxuICAgICAgICAgICAgc3R5bGVzLnZhcmlhbnQubGV0dGVyU3BhY2luZyxcbiAgICAgICAgICAgIHN0eWxlcy52YXJpYW50LmxpbmVIZWlnaHQsXG4gICAgICAgIF0sXG4gICAgKTtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFnQkEsTUFBTSxrQkFBa0IsR0FBRztJQUN2QixVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtDQUN0QyxDQUFDO01BRVcsbUJBQW1CLEdBQUcsQ0FBQyxnQkFBa0M7SUFDbEUsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUN4QixPQUFPLENBQ0gsT0FBTztRQUNILFVBQVUsRUFBRSxrQkFBa0I7UUFDOUIsT0FBTyxFQUFFLGdCQUFnQjtLQUM1QixDQUFDLEVBQ0YsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUNyQixDQUNKLENBQUM7SUFFRixPQUFPLE9BQU8sQ0FDVixPQUFPO1FBQ0gsVUFBVSxFQUFFLGFBQWEsQ0FDckIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxVQUFVLEVBQzVCLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBZSxFQUMvQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FDM0I7UUFDRCxRQUFRLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRO1FBQ2pDLGFBQWEsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWE7UUFDM0MsVUFBVSxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVTtLQUN4QyxDQUFDLEVBQ0Y7UUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLFVBQVU7UUFDNUIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRO1FBQ3ZCLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUztRQUN4QixNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVU7UUFDekIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhO1FBQzVCLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVTtLQUM1QixDQUNKLENBQUM7QUFDTjs7OzsifQ==
|