@hanzogui/get-font-sized 8.3.0 → 8.3.2
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/cjs/index.js +105 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/esm/index.js +92 -80
- package/dist/esm/index.js.map +1 -1
- package/package.json +15 -15
- package/dist/cjs/index.cjs +0 -115
- package/dist/cjs/index.native.js +0 -130
- package/dist/cjs/index.native.js.map +0 -1
- package/dist/esm/index.mjs +0 -89
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/index.native.js +0 -101
- package/dist/esm/index.native.js.map +0 -1
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SizableText = exports.getFontSized = void 0;
|
|
4
|
+
const constants_1 = require("@hanzogui/constants");
|
|
5
|
+
const web_1 = require("@hanzogui/web");
|
|
6
|
+
const getFontSized = (sizeTokenIn = '$true', { font, fontFamily, props }) => {
|
|
7
|
+
if (!font) {
|
|
8
|
+
return {
|
|
9
|
+
fontSize: sizeTokenIn,
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
const sizeToken = sizeTokenIn === '$true' ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
13
|
+
const style = {};
|
|
14
|
+
// A raw numeric size (e.g. `fontSize={32}`) is not a token key, so the
|
|
15
|
+
// `font.size` / `font.lineHeight` maps have no entry for it and every lookup
|
|
16
|
+
// below returns undefined. Treat the number as a literal fontSize and leave
|
|
17
|
+
// lineHeight unset, otherwise a stale default token lineHeight survives and
|
|
18
|
+
// clips glyph tops on iOS (see #4028). We don't scale the lineHeight here,
|
|
19
|
+
// leaving it to the platform default for the given font size.
|
|
20
|
+
if (typeof sizeToken === 'number') {
|
|
21
|
+
style.fontSize = sizeToken;
|
|
22
|
+
if (fontFamily)
|
|
23
|
+
style.fontFamily = fontFamily;
|
|
24
|
+
if (props.fontStyle)
|
|
25
|
+
style.fontStyle = props.fontStyle;
|
|
26
|
+
if (props.color)
|
|
27
|
+
style.color = props.color;
|
|
28
|
+
return style;
|
|
29
|
+
}
|
|
30
|
+
// size related, treat them as overrides
|
|
31
|
+
const fontSize = font.size[sizeToken];
|
|
32
|
+
const lineHeight = font.lineHeight?.[sizeToken];
|
|
33
|
+
const fontWeight = font.weight?.[sizeToken];
|
|
34
|
+
const letterSpacing = font.letterSpacing?.[sizeToken];
|
|
35
|
+
const textTransform = font.transform?.[sizeToken];
|
|
36
|
+
const fontStyle = props.fontStyle ?? font.style?.[sizeToken];
|
|
37
|
+
const color = props.color ?? font.color?.[sizeToken];
|
|
38
|
+
if (fontStyle)
|
|
39
|
+
style.fontStyle = fontStyle;
|
|
40
|
+
if (textTransform)
|
|
41
|
+
style.textTransform = textTransform;
|
|
42
|
+
if (fontFamily)
|
|
43
|
+
style.fontFamily = fontFamily;
|
|
44
|
+
if (fontWeight)
|
|
45
|
+
style.fontWeight = fontWeight;
|
|
46
|
+
if (letterSpacing)
|
|
47
|
+
style.letterSpacing = letterSpacing;
|
|
48
|
+
if (fontSize)
|
|
49
|
+
style.fontSize = fontSize;
|
|
50
|
+
if (lineHeight)
|
|
51
|
+
style.lineHeight = lineHeight;
|
|
52
|
+
if (color)
|
|
53
|
+
style.color = color;
|
|
54
|
+
if (process.env.NODE_ENV === 'development') {
|
|
55
|
+
if (props['debug'] && props['debug'] === 'verbose') {
|
|
56
|
+
console.groupCollapsed(' 🔹 getFontSized', sizeTokenIn, sizeToken);
|
|
57
|
+
if (constants_1.isClient) {
|
|
58
|
+
console.info({ style, props, font });
|
|
59
|
+
}
|
|
60
|
+
console.groupEnd();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return style;
|
|
64
|
+
};
|
|
65
|
+
exports.getFontSized = getFontSized;
|
|
66
|
+
exports.SizableText = (0, web_1.styled)(web_1.Text, {
|
|
67
|
+
name: 'SizableText',
|
|
68
|
+
fontFamily: '$body',
|
|
69
|
+
variants: {
|
|
70
|
+
size: {
|
|
71
|
+
'...fontSize': exports.getFontSized,
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
defaultVariants: {
|
|
75
|
+
size: '$true',
|
|
76
|
+
},
|
|
77
|
+
});
|
|
78
|
+
const cache = new WeakMap();
|
|
79
|
+
function getDefaultSizeToken(font) {
|
|
80
|
+
if (typeof font === 'object' && cache.has(font)) {
|
|
81
|
+
return cache.get(font);
|
|
82
|
+
}
|
|
83
|
+
// use either font.size if it has true set, or fallback to tokens.size mapping to the same
|
|
84
|
+
const tokens = (0, web_1.getTokens)();
|
|
85
|
+
const sizeTokens = '$true' in font.size ? font.size : tokens?.size;
|
|
86
|
+
if (!sizeTokens) {
|
|
87
|
+
return Object.keys(font.size)[3];
|
|
88
|
+
}
|
|
89
|
+
const sizeDefault = sizeTokens['$true'];
|
|
90
|
+
const sizeDefaultSpecific = sizeDefault
|
|
91
|
+
? Object.keys(sizeTokens).find((x) => x !== '$true' && sizeTokens[x]['val'] === sizeDefault['val'])
|
|
92
|
+
: null;
|
|
93
|
+
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
94
|
+
if (process.env.NODE_ENV === 'development') {
|
|
95
|
+
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
96
|
+
|
|
97
|
+
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
98
|
+
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
99
|
+
}
|
|
100
|
+
return Object.keys(font.size)[3];
|
|
101
|
+
}
|
|
102
|
+
cache.set(font, sizeDefaultSpecific);
|
|
103
|
+
return sizeDefaultSpecific;
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "type": "commonjs" }
|
package/dist/esm/index.js
CHANGED
|
@@ -1,89 +1,101 @@
|
|
|
1
|
-
import { isClient } from
|
|
2
|
-
import { getTokens, styled, Text } from
|
|
3
|
-
const getFontSized = (sizeTokenIn =
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
if (!font) {
|
|
9
|
-
return {
|
|
10
|
-
fontSize: sizeTokenIn
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
const sizeToken = sizeTokenIn === "$true" ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
14
|
-
const style = {};
|
|
15
|
-
if (typeof sizeToken === "number") {
|
|
16
|
-
style.fontSize = sizeToken;
|
|
17
|
-
if (fontFamily) style.fontFamily = fontFamily;
|
|
18
|
-
if (props.fontStyle) style.fontStyle = props.fontStyle;
|
|
19
|
-
if (props.color) style.color = props.color;
|
|
20
|
-
return style;
|
|
21
|
-
}
|
|
22
|
-
const fontSize = font.size[sizeToken];
|
|
23
|
-
const lineHeight = font.lineHeight?.[sizeToken];
|
|
24
|
-
const fontWeight = font.weight?.[sizeToken];
|
|
25
|
-
const letterSpacing = font.letterSpacing?.[sizeToken];
|
|
26
|
-
const textTransform = font.transform?.[sizeToken];
|
|
27
|
-
const fontStyle = props.fontStyle ?? font.style?.[sizeToken];
|
|
28
|
-
const color = props.color ?? font.color?.[sizeToken];
|
|
29
|
-
if (fontStyle) style.fontStyle = fontStyle;
|
|
30
|
-
if (textTransform) style.textTransform = textTransform;
|
|
31
|
-
if (fontFamily) style.fontFamily = fontFamily;
|
|
32
|
-
if (fontWeight) style.fontWeight = fontWeight;
|
|
33
|
-
if (letterSpacing) style.letterSpacing = letterSpacing;
|
|
34
|
-
if (fontSize) style.fontSize = fontSize;
|
|
35
|
-
if (lineHeight) style.lineHeight = lineHeight;
|
|
36
|
-
if (color) style.color = color;
|
|
37
|
-
if (process.env.NODE_ENV === "development") {
|
|
38
|
-
if (props["debug"] && props["debug"] === "verbose") {
|
|
39
|
-
console.groupCollapsed(" \u{1F539} getFontSized", sizeTokenIn, sizeToken);
|
|
40
|
-
if (isClient) {
|
|
41
|
-
console.info({
|
|
42
|
-
style,
|
|
43
|
-
props,
|
|
44
|
-
font
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
console.groupEnd();
|
|
1
|
+
import { isClient } from '@hanzogui/constants';
|
|
2
|
+
import { getTokens, styled, Text } from '@hanzogui/web';
|
|
3
|
+
export const getFontSized = (sizeTokenIn = '$true', { font, fontFamily, props }) => {
|
|
4
|
+
if (!font) {
|
|
5
|
+
return {
|
|
6
|
+
fontSize: sizeTokenIn,
|
|
7
|
+
};
|
|
48
8
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
size
|
|
57
|
-
|
|
9
|
+
const sizeToken = sizeTokenIn === '$true' ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
10
|
+
const style = {};
|
|
11
|
+
// A raw numeric size (e.g. `fontSize={32}`) is not a token key, so the
|
|
12
|
+
// `font.size` / `font.lineHeight` maps have no entry for it and every lookup
|
|
13
|
+
// below returns undefined. Treat the number as a literal fontSize and leave
|
|
14
|
+
// lineHeight unset, otherwise a stale default token lineHeight survives and
|
|
15
|
+
// clips glyph tops on iOS (see #4028). We don't scale the lineHeight here,
|
|
16
|
+
// leaving it to the platform default for the given font size.
|
|
17
|
+
if (typeof sizeToken === 'number') {
|
|
18
|
+
style.fontSize = sizeToken;
|
|
19
|
+
if (fontFamily)
|
|
20
|
+
style.fontFamily = fontFamily;
|
|
21
|
+
if (props.fontStyle)
|
|
22
|
+
style.fontStyle = props.fontStyle;
|
|
23
|
+
if (props.color)
|
|
24
|
+
style.color = props.color;
|
|
25
|
+
return style;
|
|
58
26
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
27
|
+
// size related, treat them as overrides
|
|
28
|
+
const fontSize = font.size[sizeToken];
|
|
29
|
+
const lineHeight = font.lineHeight?.[sizeToken];
|
|
30
|
+
const fontWeight = font.weight?.[sizeToken];
|
|
31
|
+
const letterSpacing = font.letterSpacing?.[sizeToken];
|
|
32
|
+
const textTransform = font.transform?.[sizeToken];
|
|
33
|
+
const fontStyle = props.fontStyle ?? font.style?.[sizeToken];
|
|
34
|
+
const color = props.color ?? font.color?.[sizeToken];
|
|
35
|
+
if (fontStyle)
|
|
36
|
+
style.fontStyle = fontStyle;
|
|
37
|
+
if (textTransform)
|
|
38
|
+
style.textTransform = textTransform;
|
|
39
|
+
if (fontFamily)
|
|
40
|
+
style.fontFamily = fontFamily;
|
|
41
|
+
if (fontWeight)
|
|
42
|
+
style.fontWeight = fontWeight;
|
|
43
|
+
if (letterSpacing)
|
|
44
|
+
style.letterSpacing = letterSpacing;
|
|
45
|
+
if (fontSize)
|
|
46
|
+
style.fontSize = fontSize;
|
|
47
|
+
if (lineHeight)
|
|
48
|
+
style.lineHeight = lineHeight;
|
|
49
|
+
if (color)
|
|
50
|
+
style.color = color;
|
|
51
|
+
if (process.env.NODE_ENV === 'development') {
|
|
52
|
+
if (props['debug'] && props['debug'] === 'verbose') {
|
|
53
|
+
console.groupCollapsed(' 🔹 getFontSized', sizeTokenIn, sizeToken);
|
|
54
|
+
if (isClient) {
|
|
55
|
+
console.info({ style, props, font });
|
|
56
|
+
}
|
|
57
|
+
console.groupEnd();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return style;
|
|
61
|
+
};
|
|
62
|
+
export const SizableText = styled(Text, {
|
|
63
|
+
name: 'SizableText',
|
|
64
|
+
fontFamily: '$body',
|
|
65
|
+
variants: {
|
|
66
|
+
size: {
|
|
67
|
+
'...fontSize': getFontSized,
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
defaultVariants: {
|
|
71
|
+
size: '$true',
|
|
72
|
+
},
|
|
63
73
|
});
|
|
64
|
-
const cache =
|
|
74
|
+
const cache = new WeakMap();
|
|
65
75
|
function getDefaultSizeToken(font) {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
76
|
+
if (typeof font === 'object' && cache.has(font)) {
|
|
77
|
+
return cache.get(font);
|
|
78
|
+
}
|
|
79
|
+
// use either font.size if it has true set, or fallback to tokens.size mapping to the same
|
|
80
|
+
const tokens = getTokens();
|
|
81
|
+
const sizeTokens = '$true' in font.size ? font.size : tokens?.size;
|
|
82
|
+
if (!sizeTokens) {
|
|
83
|
+
return Object.keys(font.size)[3];
|
|
84
|
+
}
|
|
85
|
+
const sizeDefault = sizeTokens['$true'];
|
|
86
|
+
const sizeDefaultSpecific = sizeDefault
|
|
87
|
+
? Object.keys(sizeTokens).find((x) => x !== '$true' && sizeTokens[x]['val'] === sizeDefault['val'])
|
|
88
|
+
: null;
|
|
89
|
+
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
90
|
+
if (process.env.NODE_ENV === 'development') {
|
|
91
|
+
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
79
92
|
|
|
80
93
|
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
81
94
|
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
95
|
+
}
|
|
96
|
+
return Object.keys(font.size)[3];
|
|
82
97
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
cache.set(font, sizeDefaultSpecific);
|
|
86
|
-
return sizeDefaultSpecific;
|
|
98
|
+
cache.set(font, sizeDefaultSpecific);
|
|
99
|
+
return sizeDefaultSpecific;
|
|
87
100
|
}
|
|
88
|
-
|
|
89
|
-
//# sourceMappingURL=index.js.map
|
|
101
|
+
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hanzogui/get-font-sized",
|
|
3
|
-
"version": "8.3.
|
|
3
|
+
"version": "8.3.2",
|
|
4
4
|
"files": [
|
|
5
5
|
"src",
|
|
6
6
|
"types",
|
|
@@ -8,40 +8,40 @@
|
|
|
8
8
|
],
|
|
9
9
|
"type": "module",
|
|
10
10
|
"sideEffects": false,
|
|
11
|
-
"main": "dist/cjs",
|
|
12
|
-
"module": "dist/esm",
|
|
11
|
+
"main": "./dist/cjs/index.js",
|
|
12
|
+
"module": "./dist/esm/index.js",
|
|
13
13
|
"types": "./types/index.d.ts",
|
|
14
14
|
"exports": {
|
|
15
15
|
"./package.json": "./package.json",
|
|
16
16
|
".": {
|
|
17
17
|
"types": "./types/index.d.ts",
|
|
18
|
-
"react-native": "./dist/esm/index.
|
|
19
|
-
"browser": "./dist/esm/index.
|
|
20
|
-
"module": "./dist/esm/index.
|
|
21
|
-
"import": "./dist/esm/index.
|
|
22
|
-
"require": "./dist/cjs/index.
|
|
23
|
-
"default": "./dist/esm/index.
|
|
18
|
+
"react-native": "./dist/esm/index.js",
|
|
19
|
+
"browser": "./dist/esm/index.js",
|
|
20
|
+
"module": "./dist/esm/index.js",
|
|
21
|
+
"import": "./dist/esm/index.js",
|
|
22
|
+
"require": "./dist/cjs/index.js",
|
|
23
|
+
"default": "./dist/esm/index.js"
|
|
24
24
|
}
|
|
25
25
|
},
|
|
26
26
|
"publishConfig": {
|
|
27
27
|
"access": "public"
|
|
28
28
|
},
|
|
29
29
|
"scripts": {
|
|
30
|
-
"build": "hanzogui-build",
|
|
30
|
+
"build": "hanzogui-build --skip-native",
|
|
31
31
|
"watch": "hanzogui-build --watch",
|
|
32
32
|
"clean": "hanzogui-build clean",
|
|
33
33
|
"clean:build": "hanzogui-build clean:build"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@hanzogui/constants": "8.3.
|
|
37
|
-
"@hanzogui/web": "8.3.
|
|
36
|
+
"@hanzogui/constants": "8.3.2",
|
|
37
|
+
"@hanzogui/web": "8.3.2"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@hanzogui/build": "8.3.
|
|
41
|
-
"react": "
|
|
40
|
+
"@hanzogui/build": "8.3.2",
|
|
41
|
+
"react": "19.2.8"
|
|
42
42
|
},
|
|
43
43
|
"peerDependencies": {
|
|
44
|
-
"react": ">=19"
|
|
44
|
+
"react": ">=19.2.8"
|
|
45
45
|
},
|
|
46
46
|
"repository": {
|
|
47
47
|
"type": "git",
|
package/dist/cjs/index.cjs
DELETED
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all) __defProp(target, name, {
|
|
7
|
-
get: all[name],
|
|
8
|
-
enumerable: true
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __copyProps = (to, from, except, desc) => {
|
|
12
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
-
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
14
|
-
get: () => from[key],
|
|
15
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
return to;
|
|
19
|
-
};
|
|
20
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
-
value: true
|
|
22
|
-
}), mod);
|
|
23
|
-
var index_exports = {};
|
|
24
|
-
__export(index_exports, {
|
|
25
|
-
SizableText: () => SizableText,
|
|
26
|
-
getFontSized: () => getFontSized
|
|
27
|
-
});
|
|
28
|
-
module.exports = __toCommonJS(index_exports);
|
|
29
|
-
var import_constants = require("@hanzogui/constants");
|
|
30
|
-
var import_web = require("@hanzogui/web");
|
|
31
|
-
const getFontSized = (sizeTokenIn = "$true", {
|
|
32
|
-
font,
|
|
33
|
-
fontFamily,
|
|
34
|
-
props
|
|
35
|
-
}) => {
|
|
36
|
-
if (!font) {
|
|
37
|
-
return {
|
|
38
|
-
fontSize: sizeTokenIn
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
const sizeToken = sizeTokenIn === "$true" ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
42
|
-
const style = {};
|
|
43
|
-
if (typeof sizeToken === "number") {
|
|
44
|
-
style.fontSize = sizeToken;
|
|
45
|
-
if (fontFamily) style.fontFamily = fontFamily;
|
|
46
|
-
if (props.fontStyle) style.fontStyle = props.fontStyle;
|
|
47
|
-
if (props.color) style.color = props.color;
|
|
48
|
-
return style;
|
|
49
|
-
}
|
|
50
|
-
const fontSize = font.size[sizeToken];
|
|
51
|
-
const lineHeight = font.lineHeight?.[sizeToken];
|
|
52
|
-
const fontWeight = font.weight?.[sizeToken];
|
|
53
|
-
const letterSpacing = font.letterSpacing?.[sizeToken];
|
|
54
|
-
const textTransform = font.transform?.[sizeToken];
|
|
55
|
-
const fontStyle = props.fontStyle ?? font.style?.[sizeToken];
|
|
56
|
-
const color = props.color ?? font.color?.[sizeToken];
|
|
57
|
-
if (fontStyle) style.fontStyle = fontStyle;
|
|
58
|
-
if (textTransform) style.textTransform = textTransform;
|
|
59
|
-
if (fontFamily) style.fontFamily = fontFamily;
|
|
60
|
-
if (fontWeight) style.fontWeight = fontWeight;
|
|
61
|
-
if (letterSpacing) style.letterSpacing = letterSpacing;
|
|
62
|
-
if (fontSize) style.fontSize = fontSize;
|
|
63
|
-
if (lineHeight) style.lineHeight = lineHeight;
|
|
64
|
-
if (color) style.color = color;
|
|
65
|
-
if (process.env.NODE_ENV === "development") {
|
|
66
|
-
if (props["debug"] && props["debug"] === "verbose") {
|
|
67
|
-
console.groupCollapsed(" \u{1F539} getFontSized", sizeTokenIn, sizeToken);
|
|
68
|
-
if (import_constants.isClient) {
|
|
69
|
-
console.info({
|
|
70
|
-
style,
|
|
71
|
-
props,
|
|
72
|
-
font
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
console.groupEnd();
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
return style;
|
|
79
|
-
};
|
|
80
|
-
const SizableText = (0, import_web.styled)(import_web.Text, {
|
|
81
|
-
name: "SizableText",
|
|
82
|
-
fontFamily: "$body",
|
|
83
|
-
variants: {
|
|
84
|
-
size: {
|
|
85
|
-
"...fontSize": getFontSized
|
|
86
|
-
}
|
|
87
|
-
},
|
|
88
|
-
defaultVariants: {
|
|
89
|
-
size: "$true"
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
const cache = /* @__PURE__ */new WeakMap();
|
|
93
|
-
function getDefaultSizeToken(font) {
|
|
94
|
-
if (typeof font === "object" && cache.has(font)) {
|
|
95
|
-
return cache.get(font);
|
|
96
|
-
}
|
|
97
|
-
const tokens = (0, import_web.getTokens)();
|
|
98
|
-
const sizeTokens = "$true" in font.size ? font.size : tokens?.size;
|
|
99
|
-
if (!sizeTokens) {
|
|
100
|
-
return Object.keys(font.size)[3];
|
|
101
|
-
}
|
|
102
|
-
const sizeDefault = sizeTokens["$true"];
|
|
103
|
-
const sizeDefaultSpecific = sizeDefault ? Object.keys(sizeTokens).find(x => x !== "$true" && sizeTokens[x]["val"] === sizeDefault["val"]) : null;
|
|
104
|
-
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
105
|
-
if (process.env.NODE_ENV === "development") {
|
|
106
|
-
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
107
|
-
|
|
108
|
-
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
109
|
-
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
110
|
-
}
|
|
111
|
-
return Object.keys(font.size)[3];
|
|
112
|
-
}
|
|
113
|
-
cache.set(font, sizeDefaultSpecific);
|
|
114
|
-
return sizeDefaultSpecific;
|
|
115
|
-
}
|
package/dist/cjs/index.native.js
DELETED
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all) __defProp(target, name, {
|
|
9
|
-
get: all[name],
|
|
10
|
-
enumerable: true
|
|
11
|
-
});
|
|
12
|
-
};
|
|
13
|
-
var __copyProps = (to, from, except, desc) => {
|
|
14
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
-
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
-
get: () => from[key],
|
|
17
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
return to;
|
|
21
|
-
};
|
|
22
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
-
value: true
|
|
24
|
-
}), mod);
|
|
25
|
-
var index_exports = {};
|
|
26
|
-
__export(index_exports, {
|
|
27
|
-
SizableText: () => SizableText,
|
|
28
|
-
getFontSized: () => getFontSized
|
|
29
|
-
});
|
|
30
|
-
module.exports = __toCommonJS(index_exports);
|
|
31
|
-
var import_constants = require("@hanzogui/constants");
|
|
32
|
-
var import_web = require("@hanzogui/web");
|
|
33
|
-
function _type_of(obj) {
|
|
34
|
-
"@swc/helpers - typeof";
|
|
35
|
-
|
|
36
|
-
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
37
|
-
}
|
|
38
|
-
var getFontSized = function () {
|
|
39
|
-
var sizeTokenIn = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "$true",
|
|
40
|
-
{
|
|
41
|
-
font,
|
|
42
|
-
fontFamily,
|
|
43
|
-
props
|
|
44
|
-
} = arguments.length > 1 ? arguments[1] : void 0;
|
|
45
|
-
var _font_lineHeight, _font_weight, _font_letterSpacing, _font_transform, _font_style, _font_color;
|
|
46
|
-
if (!font) {
|
|
47
|
-
return {
|
|
48
|
-
fontSize: sizeTokenIn
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
var sizeToken = sizeTokenIn === "$true" ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
52
|
-
var style = {};
|
|
53
|
-
if (typeof sizeToken === "number") {
|
|
54
|
-
style.fontSize = sizeToken;
|
|
55
|
-
if (fontFamily) style.fontFamily = fontFamily;
|
|
56
|
-
if (props.fontStyle) style.fontStyle = props.fontStyle;
|
|
57
|
-
if (props.color) style.color = props.color;
|
|
58
|
-
return style;
|
|
59
|
-
}
|
|
60
|
-
var fontSize = font.size[sizeToken];
|
|
61
|
-
var lineHeight = (_font_lineHeight = font.lineHeight) === null || _font_lineHeight === void 0 ? void 0 : _font_lineHeight[sizeToken];
|
|
62
|
-
var fontWeight = (_font_weight = font.weight) === null || _font_weight === void 0 ? void 0 : _font_weight[sizeToken];
|
|
63
|
-
var letterSpacing = (_font_letterSpacing = font.letterSpacing) === null || _font_letterSpacing === void 0 ? void 0 : _font_letterSpacing[sizeToken];
|
|
64
|
-
var textTransform = (_font_transform = font.transform) === null || _font_transform === void 0 ? void 0 : _font_transform[sizeToken];
|
|
65
|
-
var _props_fontStyle;
|
|
66
|
-
var fontStyle = (_props_fontStyle = props.fontStyle) !== null && _props_fontStyle !== void 0 ? _props_fontStyle : (_font_style = font.style) === null || _font_style === void 0 ? void 0 : _font_style[sizeToken];
|
|
67
|
-
var _props_color;
|
|
68
|
-
var color = (_props_color = props.color) !== null && _props_color !== void 0 ? _props_color : (_font_color = font.color) === null || _font_color === void 0 ? void 0 : _font_color[sizeToken];
|
|
69
|
-
if (fontStyle) style.fontStyle = fontStyle;
|
|
70
|
-
if (textTransform) style.textTransform = textTransform;
|
|
71
|
-
if (fontFamily) style.fontFamily = fontFamily;
|
|
72
|
-
if (fontWeight) style.fontWeight = fontWeight;
|
|
73
|
-
if (letterSpacing) style.letterSpacing = letterSpacing;
|
|
74
|
-
if (fontSize) style.fontSize = fontSize;
|
|
75
|
-
if (lineHeight) style.lineHeight = lineHeight;
|
|
76
|
-
if (color) style.color = color;
|
|
77
|
-
if (process.env.NODE_ENV === "development") {
|
|
78
|
-
if (props["debug"] && props["debug"] === "verbose") {
|
|
79
|
-
console.groupCollapsed(" \u{1F539} getFontSized", sizeTokenIn, sizeToken);
|
|
80
|
-
if (import_constants.isClient) {
|
|
81
|
-
console.info({
|
|
82
|
-
style,
|
|
83
|
-
props,
|
|
84
|
-
font
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
console.groupEnd();
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
return style;
|
|
91
|
-
};
|
|
92
|
-
var SizableText = (0, import_web.styled)(import_web.Text, {
|
|
93
|
-
name: "SizableText",
|
|
94
|
-
fontFamily: "$body",
|
|
95
|
-
variants: {
|
|
96
|
-
size: {
|
|
97
|
-
"...fontSize": getFontSized
|
|
98
|
-
}
|
|
99
|
-
},
|
|
100
|
-
defaultVariants: {
|
|
101
|
-
size: "$true"
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
var cache = /* @__PURE__ */new WeakMap();
|
|
105
|
-
function getDefaultSizeToken(font) {
|
|
106
|
-
if ((typeof font === "undefined" ? "undefined" : _type_of(font)) === "object" && cache.has(font)) {
|
|
107
|
-
return cache.get(font);
|
|
108
|
-
}
|
|
109
|
-
var tokens = (0, import_web.getTokens)();
|
|
110
|
-
var sizeTokens = "$true" in font.size ? font.size : tokens === null || tokens === void 0 ? void 0 : tokens.size;
|
|
111
|
-
if (!sizeTokens) {
|
|
112
|
-
return Object.keys(font.size)[3];
|
|
113
|
-
}
|
|
114
|
-
var sizeDefault = sizeTokens["$true"];
|
|
115
|
-
var sizeDefaultSpecific = sizeDefault ? Object.keys(sizeTokens).find(function (x) {
|
|
116
|
-
return x !== "$true" && sizeTokens[x]["val"] === sizeDefault["val"];
|
|
117
|
-
}) : null;
|
|
118
|
-
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
119
|
-
if (process.env.NODE_ENV === "development") {
|
|
120
|
-
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
121
|
-
|
|
122
|
-
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
123
|
-
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
124
|
-
}
|
|
125
|
-
return Object.keys(font.size)[3];
|
|
126
|
-
}
|
|
127
|
-
cache.set(font, sizeDefaultSpecific);
|
|
128
|
-
return sizeDefaultSpecific;
|
|
129
|
-
}
|
|
130
|
-
//# sourceMappingURL=index.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","index_exports","__export","SizableText","getFontSized","module","exports","import_constants","require","import_web","_type_of","obj","Symbol","constructor","sizeTokenIn","arguments","length","font","fontFamily","props","_font_lineHeight","_font_weight","_font_letterSpacing","_font_transform","_font_style","_font_color","fontSize","sizeToken","getDefaultSizeToken","style","fontStyle","color","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","_props_fontStyle","_props_color","process","env","NODE_ENV","console","groupCollapsed","isClient","info","groupEnd","styled","Text","name","variants","defaultVariants","cache","WeakMap","has","get","tokens","getTokens","sizeTokens","Object","keys","sizeDefault","sizeDefaultSpecific","find","x"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/index.mjs
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { isClient } from "@hanzogui/constants";
|
|
2
|
-
import { getTokens, styled, Text } from "@hanzogui/web";
|
|
3
|
-
const getFontSized = (sizeTokenIn = "$true", {
|
|
4
|
-
font,
|
|
5
|
-
fontFamily,
|
|
6
|
-
props
|
|
7
|
-
}) => {
|
|
8
|
-
if (!font) {
|
|
9
|
-
return {
|
|
10
|
-
fontSize: sizeTokenIn
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
const sizeToken = sizeTokenIn === "$true" ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
14
|
-
const style = {};
|
|
15
|
-
if (typeof sizeToken === "number") {
|
|
16
|
-
style.fontSize = sizeToken;
|
|
17
|
-
if (fontFamily) style.fontFamily = fontFamily;
|
|
18
|
-
if (props.fontStyle) style.fontStyle = props.fontStyle;
|
|
19
|
-
if (props.color) style.color = props.color;
|
|
20
|
-
return style;
|
|
21
|
-
}
|
|
22
|
-
const fontSize = font.size[sizeToken];
|
|
23
|
-
const lineHeight = font.lineHeight?.[sizeToken];
|
|
24
|
-
const fontWeight = font.weight?.[sizeToken];
|
|
25
|
-
const letterSpacing = font.letterSpacing?.[sizeToken];
|
|
26
|
-
const textTransform = font.transform?.[sizeToken];
|
|
27
|
-
const fontStyle = props.fontStyle ?? font.style?.[sizeToken];
|
|
28
|
-
const color = props.color ?? font.color?.[sizeToken];
|
|
29
|
-
if (fontStyle) style.fontStyle = fontStyle;
|
|
30
|
-
if (textTransform) style.textTransform = textTransform;
|
|
31
|
-
if (fontFamily) style.fontFamily = fontFamily;
|
|
32
|
-
if (fontWeight) style.fontWeight = fontWeight;
|
|
33
|
-
if (letterSpacing) style.letterSpacing = letterSpacing;
|
|
34
|
-
if (fontSize) style.fontSize = fontSize;
|
|
35
|
-
if (lineHeight) style.lineHeight = lineHeight;
|
|
36
|
-
if (color) style.color = color;
|
|
37
|
-
if (process.env.NODE_ENV === "development") {
|
|
38
|
-
if (props["debug"] && props["debug"] === "verbose") {
|
|
39
|
-
console.groupCollapsed(" \u{1F539} getFontSized", sizeTokenIn, sizeToken);
|
|
40
|
-
if (isClient) {
|
|
41
|
-
console.info({
|
|
42
|
-
style,
|
|
43
|
-
props,
|
|
44
|
-
font
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
console.groupEnd();
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
return style;
|
|
51
|
-
};
|
|
52
|
-
const SizableText = styled(Text, {
|
|
53
|
-
name: "SizableText",
|
|
54
|
-
fontFamily: "$body",
|
|
55
|
-
variants: {
|
|
56
|
-
size: {
|
|
57
|
-
"...fontSize": getFontSized
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
defaultVariants: {
|
|
61
|
-
size: "$true"
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
const cache = /* @__PURE__ */new WeakMap();
|
|
65
|
-
function getDefaultSizeToken(font) {
|
|
66
|
-
if (typeof font === "object" && cache.has(font)) {
|
|
67
|
-
return cache.get(font);
|
|
68
|
-
}
|
|
69
|
-
const tokens = getTokens();
|
|
70
|
-
const sizeTokens = "$true" in font.size ? font.size : tokens?.size;
|
|
71
|
-
if (!sizeTokens) {
|
|
72
|
-
return Object.keys(font.size)[3];
|
|
73
|
-
}
|
|
74
|
-
const sizeDefault = sizeTokens["$true"];
|
|
75
|
-
const sizeDefaultSpecific = sizeDefault ? Object.keys(sizeTokens).find(x => x !== "$true" && sizeTokens[x]["val"] === sizeDefault["val"]) : null;
|
|
76
|
-
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
77
|
-
if (process.env.NODE_ENV === "development") {
|
|
78
|
-
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
79
|
-
|
|
80
|
-
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
81
|
-
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
82
|
-
}
|
|
83
|
-
return Object.keys(font.size)[3];
|
|
84
|
-
}
|
|
85
|
-
cache.set(font, sizeDefaultSpecific);
|
|
86
|
-
return sizeDefaultSpecific;
|
|
87
|
-
}
|
|
88
|
-
export { SizableText, getFontSized };
|
|
89
|
-
//# sourceMappingURL=index.mjs.map
|
package/dist/esm/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["isClient","getTokens","styled","Text","getFontSized","sizeTokenIn","font","fontFamily","props","fontSize","sizeToken","getDefaultSizeToken","style","fontStyle","color","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","process","env","NODE_ENV","console","groupCollapsed","info","groupEnd","SizableText","name","variants","defaultVariants","cache","WeakMap","has","get","tokens","sizeTokens","Object","keys","sizeDefault","sizeDefaultSpecific","find","x","warn","set"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/index.native.js
DELETED
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { isClient } from "@hanzogui/constants";
|
|
2
|
-
import { getTokens, styled, Text } from "@hanzogui/web";
|
|
3
|
-
function _type_of(obj) {
|
|
4
|
-
"@swc/helpers - typeof";
|
|
5
|
-
|
|
6
|
-
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
7
|
-
}
|
|
8
|
-
var getFontSized = function () {
|
|
9
|
-
var sizeTokenIn = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "$true",
|
|
10
|
-
{
|
|
11
|
-
font,
|
|
12
|
-
fontFamily,
|
|
13
|
-
props
|
|
14
|
-
} = arguments.length > 1 ? arguments[1] : void 0;
|
|
15
|
-
var _font_lineHeight, _font_weight, _font_letterSpacing, _font_transform, _font_style, _font_color;
|
|
16
|
-
if (!font) {
|
|
17
|
-
return {
|
|
18
|
-
fontSize: sizeTokenIn
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
var sizeToken = sizeTokenIn === "$true" ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
22
|
-
var style = {};
|
|
23
|
-
if (typeof sizeToken === "number") {
|
|
24
|
-
style.fontSize = sizeToken;
|
|
25
|
-
if (fontFamily) style.fontFamily = fontFamily;
|
|
26
|
-
if (props.fontStyle) style.fontStyle = props.fontStyle;
|
|
27
|
-
if (props.color) style.color = props.color;
|
|
28
|
-
return style;
|
|
29
|
-
}
|
|
30
|
-
var fontSize = font.size[sizeToken];
|
|
31
|
-
var lineHeight = (_font_lineHeight = font.lineHeight) === null || _font_lineHeight === void 0 ? void 0 : _font_lineHeight[sizeToken];
|
|
32
|
-
var fontWeight = (_font_weight = font.weight) === null || _font_weight === void 0 ? void 0 : _font_weight[sizeToken];
|
|
33
|
-
var letterSpacing = (_font_letterSpacing = font.letterSpacing) === null || _font_letterSpacing === void 0 ? void 0 : _font_letterSpacing[sizeToken];
|
|
34
|
-
var textTransform = (_font_transform = font.transform) === null || _font_transform === void 0 ? void 0 : _font_transform[sizeToken];
|
|
35
|
-
var _props_fontStyle;
|
|
36
|
-
var fontStyle = (_props_fontStyle = props.fontStyle) !== null && _props_fontStyle !== void 0 ? _props_fontStyle : (_font_style = font.style) === null || _font_style === void 0 ? void 0 : _font_style[sizeToken];
|
|
37
|
-
var _props_color;
|
|
38
|
-
var color = (_props_color = props.color) !== null && _props_color !== void 0 ? _props_color : (_font_color = font.color) === null || _font_color === void 0 ? void 0 : _font_color[sizeToken];
|
|
39
|
-
if (fontStyle) style.fontStyle = fontStyle;
|
|
40
|
-
if (textTransform) style.textTransform = textTransform;
|
|
41
|
-
if (fontFamily) style.fontFamily = fontFamily;
|
|
42
|
-
if (fontWeight) style.fontWeight = fontWeight;
|
|
43
|
-
if (letterSpacing) style.letterSpacing = letterSpacing;
|
|
44
|
-
if (fontSize) style.fontSize = fontSize;
|
|
45
|
-
if (lineHeight) style.lineHeight = lineHeight;
|
|
46
|
-
if (color) style.color = color;
|
|
47
|
-
if (process.env.NODE_ENV === "development") {
|
|
48
|
-
if (props["debug"] && props["debug"] === "verbose") {
|
|
49
|
-
console.groupCollapsed(" \u{1F539} getFontSized", sizeTokenIn, sizeToken);
|
|
50
|
-
if (isClient) {
|
|
51
|
-
console.info({
|
|
52
|
-
style,
|
|
53
|
-
props,
|
|
54
|
-
font
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
console.groupEnd();
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
return style;
|
|
61
|
-
};
|
|
62
|
-
var SizableText = styled(Text, {
|
|
63
|
-
name: "SizableText",
|
|
64
|
-
fontFamily: "$body",
|
|
65
|
-
variants: {
|
|
66
|
-
size: {
|
|
67
|
-
"...fontSize": getFontSized
|
|
68
|
-
}
|
|
69
|
-
},
|
|
70
|
-
defaultVariants: {
|
|
71
|
-
size: "$true"
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
var cache = /* @__PURE__ */new WeakMap();
|
|
75
|
-
function getDefaultSizeToken(font) {
|
|
76
|
-
if ((typeof font === "undefined" ? "undefined" : _type_of(font)) === "object" && cache.has(font)) {
|
|
77
|
-
return cache.get(font);
|
|
78
|
-
}
|
|
79
|
-
var tokens = getTokens();
|
|
80
|
-
var sizeTokens = "$true" in font.size ? font.size : tokens === null || tokens === void 0 ? void 0 : tokens.size;
|
|
81
|
-
if (!sizeTokens) {
|
|
82
|
-
return Object.keys(font.size)[3];
|
|
83
|
-
}
|
|
84
|
-
var sizeDefault = sizeTokens["$true"];
|
|
85
|
-
var sizeDefaultSpecific = sizeDefault ? Object.keys(sizeTokens).find(function (x) {
|
|
86
|
-
return x !== "$true" && sizeTokens[x]["val"] === sizeDefault["val"];
|
|
87
|
-
}) : null;
|
|
88
|
-
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
89
|
-
if (process.env.NODE_ENV === "development") {
|
|
90
|
-
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
91
|
-
|
|
92
|
-
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
93
|
-
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
94
|
-
}
|
|
95
|
-
return Object.keys(font.size)[3];
|
|
96
|
-
}
|
|
97
|
-
cache.set(font, sizeDefaultSpecific);
|
|
98
|
-
return sizeDefaultSpecific;
|
|
99
|
-
}
|
|
100
|
-
export { SizableText, getFontSized };
|
|
101
|
-
//# sourceMappingURL=index.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["isClient","getTokens","styled","Text","_type_of","obj","Symbol","constructor","getFontSized","sizeTokenIn","arguments","length","font","fontFamily","props","_font_lineHeight","_font_weight","_font_letterSpacing","_font_transform","_font_style","_font_color","fontSize","sizeToken","getDefaultSizeToken","style","fontStyle","color","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","_props_fontStyle","_props_color","process","env","NODE_ENV","console","groupCollapsed","info","groupEnd","SizableText","name","variants","defaultVariants","cache","WeakMap","has","get","tokens","sizeTokens","Object","keys","sizeDefault","sizeDefaultSpecific","find","x"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,QAAgB;AAQzB,SAASC,SAAA,EAAWC,MAAA,EAAQC,IAAA,QAAY;AAEjC,SAAMC,SAAAC,GAAiE,EAC5E;EAGA,uBAAW;;EACT,OAAAA,GAAO,WAAAC,MAAA,oBAAAD,GAAA,CAAAE,WAAA,KAAAD,MAAA,qBAAAD,GAAA;AAAA;AACK,IACZG,YAAA,YAAAA,CAAA;EACF,IAAAC,WAAA,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;IAAA;MAAAE,IAAA;MAAAC,UAAA;MAAAC;IAAA,IAAAJ,SAAA,CAAAC,MAAA,OAAAD,SAAA;EAEA,IAAAK,gBAAkB,EAAAC,YAAgB,EAAAC,mBAAU,EAAAC,eAA4B,EAAAC,WAAA,EAAAC,WAAA;EAExE,KAAAR,IAAM;IAQN,OAAI;MACFS,QAAM,EAAAZ;IACN;EACA;EACA,IAAAa,SAAU,GAAAb,WAAa,YAAc,GAAAc,mBAAA,CAAAX,IAAA,IAAAH,WAAA;EACrC,IAAAe,KAAO;EACT,WAAAF,SAAA;IAGAE,KAAM,CAAAH,QAAA,GAAWC,SAAU;IAC3B,IAAMT,UAAA,EAAAW,KAAa,CAAKX,UAAA,GAAaA,UAAS;IAC9C,IAAMC,KAAA,CAAAW,SAAa,EAAAD,KAAK,CAAAC,SAAS,GAAAX,KAAS,CAAAW,SAAA;IAC1C,IAAMX,KAAA,CAAAY,KAAA,EAAAF,KAAgB,CAAAE,KAAK,GAAAZ,KAAA,CAAAY,KAAgB;IAC3C,OAAMF,KAAA;EACN;EACA,IAAAH,QAAM,GAAQT,IAAA,CAAMe,IAAA,CAAAL,SAAc;EAElC,IAAIM,UAAW,IAAAb,gBAAkB,GAAAH,IAAA,CAAAgB,UAAA,cAAAb,gBAAA,uBAAAA,gBAAA,CAAAO,SAAA;EACjC,IAAIO,UAAA,IAAeb,YAAM,GAAAJ,IAAA,CAAAkB,MAAgB,cAAAd,YAAA,uBAAAA,YAAA,CAAAM,SAAA;EACzC,IAAIS,aAAY,IAAAd,mBAAmB,GAAAL,IAAA,CAAAmB,aAAA,cAAAd,mBAAA,uBAAAA,mBAAA,CAAAK,SAAA;EACnC,IAAIU,aAAY,IAAAd,eAAmB,GAAAN,IAAA,CAAAqB,SAAA,cAAAf,eAAA,uBAAAA,eAAA,CAAAI,SAAA;EACnC,IAAIY,gBAAe;EACnB,IAAIT,SAAU,IAAAS,gBAAiB,GAAApB,KAAA,CAAAW,SAAA,cAAAS,gBAAA,cAAAA,gBAAA,IAAAf,WAAA,GAAAP,IAAA,CAAAY,KAAA,cAAAL,WAAA,uBAAAA,WAAA,CAAAG,SAAA;EAC/B,IAAIa,YAAY;EAChB,IAAIT,KAAA,GAAO,CAAAS,YAAc,GAAArB,KAAA,CAAAY,KAAA,cAAAS,YAAA,cAAAA,YAAA,IAAAf,WAAA,GAAAR,IAAA,CAAAc,KAAA,cAAAN,WAAA,uBAAAA,WAAA,CAAAE,SAAA;EAEzB,IAAIG,SAAQ,EAAAD,KAAI,CAAAC,SAAa,GAAAA,SAAA;EAC3B,IAAAO,aAAU,EAAOR,KAAK,CAAAQ,aAAa,GAAAA,aAAiB;EAClD,IAAAnB,UAAQ,EAAAW,KAAA,CAAAX,UAAe,GAAAA,UAAA;EACvB,IAAAgB,UAAI,EAAAL,KAAU,CAAAK,UAAA,GAAAA,UAAA;EACZ,IAAAE,aAAQ,EAAKP,KAAE,CAAAO,aAAc,GAAMA,aAAA;EAAA,IACrCV,QAAA,EAAAG,KAAA,CAAAH,QAAA,GAAAA,QAAA;EACA,IAAAO,UAAQ,EAAAJ,KAAS,CAAAI,UAAA,GAAAA,UAAA;EAAA,IACnBF,KAAA,EAAAF,KAAA,CAAAE,KAAA,GAAAA,KAAA;EACF,IAAAU,OAAA,CAAAC,GAAA,CAAAC,QAAA;IAEA,IAAAxB,KAAO,aAAAA,KAAA;MACTyB,OAAA,CAAAC,cAAA,6BAAA/B,WAAA,EAAAa,SAAA;MAEa,IAAAtB,QAAA,EAAc;QACnBuC,OAAA,CAAAE,IAAA;UACNjB,KAAY;UAEZV,KAAU;UACFF;QACJ;MACF;MACF2B,OAAA,CAAAG,QAAA;IAEA;EAAiB;EAEjB,OAAAlB,KAAA;AACF,CAAC;AAED,IAAAmB,WAAc,GAAAzC,MAAA,CAAAC,IAAA;EAEdyC,IAAA,eAAS;EACP/B,UAAI,EAAO;EACTgC,QAAA,EAAO;IACTlB,IAAA;MAGA,aAAe,EAAAnB;IACf;EACA;EACEsC,eAAO,EAAO;IAChBnB,IAAA;EACA;AACA;AAC4B,IACtBoB,KAAC,GAAM,eAAiB,IAAAC,OAAW,CAAC;AAA8B,SAEpEzB,oBAAAX,IAAA;EAEJ,IAAI,CAAC,OAAAA,IAAA,KAAgB,yBAAqB,GAAAR,QAAA,CAAAQ,IAAA,mBAAAmC,KAAA,CAAAE,GAAA,CAAArC,IAAA;IACxC,OAAImC,KAAQ,CAAAG,GAAI,CAAAtC,IAAA;EACd;EAAa,IAAAuC,MAAA,GAAAlD,SAAA;EAAA,IAAAmD,UAAA,cAAAxC,IAAA,CAAAe,IAAA,GAAAf,IAAA,CAAAe,IAAA,GAAAwB,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAxB,IAAA;EAAA,KAAAyB,UAAA;IAIf,OAAAC,MAAA,CAAAC,IAAA,CAAA1C,IAAA,CAAAe,IAAA;EACA;EACF,IAAA4B,WAAA,GAAAH,UAAA;EAEA,IAAAI,mBAAgB,GAAAD,WAAqC,GAAAF,MAAA,CAAAC,IAAA,CAAAF,UAAA,EAAAK,IAAA,WAAAC,CAAA;IACrD,OAAOA,CAAA,gBAAAN,UAAA,CAAAM,CAAA,aAAAH,WAAA;EACT","ignoreList":[]}
|