@hanzogui/get-font-sized 3.0.5 → 4.3.1
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.cjs +83 -51
- package/dist/cjs/index.native.js +91 -64
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/esm/index.js +69 -39
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +69 -39
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +77 -52
- package/dist/esm/index.native.js.map +1 -1
- package/package.json +4 -4
package/dist/cjs/index.cjs
CHANGED
|
@@ -3,20 +3,22 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
5
|
var __export = (target, all) => {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
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, {
|
|
13
14
|
get: () => from[key],
|
|
14
15
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
16
|
});
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
18
20
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
19
|
-
value:
|
|
21
|
+
value: true
|
|
20
22
|
}), mod);
|
|
21
23
|
var index_exports = {};
|
|
22
24
|
__export(index_exports, {
|
|
@@ -24,53 +26,83 @@ __export(index_exports, {
|
|
|
24
26
|
getFontSized: () => getFontSized
|
|
25
27
|
});
|
|
26
28
|
module.exports = __toCommonJS(index_exports);
|
|
27
|
-
var import_constants = require("@hanzogui/constants")
|
|
28
|
-
|
|
29
|
+
var import_constants = require("@hanzogui/constants");
|
|
30
|
+
var import_web = require("@hanzogui/web");
|
|
29
31
|
const getFontSized = (sizeTokenIn = "$true", {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
font,
|
|
33
|
+
fontFamily,
|
|
34
|
+
props
|
|
35
|
+
}) => {
|
|
36
|
+
if (!font) {
|
|
37
|
+
return {
|
|
35
38
|
fontSize: sizeTokenIn
|
|
36
39
|
};
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
40
|
+
}
|
|
41
|
+
const sizeToken = sizeTokenIn === "$true" ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
42
|
+
const style = {};
|
|
43
|
+
const fontSize = font.size[sizeToken];
|
|
44
|
+
const lineHeight = font.lineHeight?.[sizeToken];
|
|
45
|
+
const fontWeight = font.weight?.[sizeToken];
|
|
46
|
+
const letterSpacing = font.letterSpacing?.[sizeToken];
|
|
47
|
+
const textTransform = font.transform?.[sizeToken];
|
|
48
|
+
const fontStyle = props.fontStyle ?? font.style?.[sizeToken];
|
|
49
|
+
const color = props.color ?? font.color?.[sizeToken];
|
|
50
|
+
if (fontStyle) style.fontStyle = fontStyle;
|
|
51
|
+
if (textTransform) style.textTransform = textTransform;
|
|
52
|
+
if (fontFamily) style.fontFamily = fontFamily;
|
|
53
|
+
if (fontWeight) style.fontWeight = fontWeight;
|
|
54
|
+
if (letterSpacing) style.letterSpacing = letterSpacing;
|
|
55
|
+
if (fontSize) style.fontSize = fontSize;
|
|
56
|
+
if (lineHeight) style.lineHeight = lineHeight;
|
|
57
|
+
if (color) style.color = color;
|
|
58
|
+
if (process.env.NODE_ENV === "development") {
|
|
59
|
+
if (props["debug"] && props["debug"] === "verbose") {
|
|
60
|
+
console.groupCollapsed(" \u{1F539} getFontSized", sizeTokenIn, sizeToken);
|
|
61
|
+
if (import_constants.isClient) {
|
|
62
|
+
console.info({
|
|
63
|
+
style,
|
|
64
|
+
props,
|
|
65
|
+
font
|
|
66
|
+
});
|
|
58
67
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
68
|
+
console.groupEnd();
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return style;
|
|
72
|
+
};
|
|
73
|
+
const SizableText = (0, import_web.styled)(import_web.Text, {
|
|
74
|
+
name: "SizableText",
|
|
75
|
+
fontFamily: "$body",
|
|
76
|
+
variants: {
|
|
77
|
+
size: {
|
|
78
|
+
"...fontSize": getFontSized
|
|
62
79
|
}
|
|
63
|
-
}
|
|
64
|
-
|
|
80
|
+
},
|
|
81
|
+
defaultVariants: {
|
|
82
|
+
size: "$true"
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
const cache = /* @__PURE__ */new WeakMap();
|
|
65
86
|
function getDefaultSizeToken(font) {
|
|
66
|
-
if (typeof font
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
const
|
|
71
|
-
|
|
72
|
-
|
|
87
|
+
if (typeof font === "object" && cache.has(font)) {
|
|
88
|
+
return cache.get(font);
|
|
89
|
+
}
|
|
90
|
+
const tokens = (0, import_web.getTokens)();
|
|
91
|
+
const sizeTokens = "$true" in font.size ? font.size : tokens?.size;
|
|
92
|
+
if (!sizeTokens) {
|
|
93
|
+
return Object.keys(font.size)[3];
|
|
94
|
+
}
|
|
95
|
+
const sizeDefault = sizeTokens["$true"];
|
|
96
|
+
const sizeDefaultSpecific = sizeDefault ? Object.keys(sizeTokens).find(x => x !== "$true" && sizeTokens[x]["val"] === sizeDefault["val"]) : null;
|
|
97
|
+
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
98
|
+
if (process.env.NODE_ENV === "development") {
|
|
99
|
+
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
73
100
|
|
|
74
101
|
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
75
|
-
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`)
|
|
102
|
+
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
103
|
+
}
|
|
104
|
+
return Object.keys(font.size)[3];
|
|
105
|
+
}
|
|
106
|
+
cache.set(font, sizeDefaultSpecific);
|
|
107
|
+
return sizeDefaultSpecific;
|
|
76
108
|
}
|
package/dist/cjs/index.native.js
CHANGED
|
@@ -5,20 +5,22 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __export = (target, all) => {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
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, {
|
|
15
16
|
get: () => from[key],
|
|
16
17
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
18
|
});
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
20
22
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
-
value:
|
|
23
|
+
value: true
|
|
22
24
|
}), mod);
|
|
23
25
|
var index_exports = {};
|
|
24
26
|
__export(index_exports, {
|
|
@@ -26,71 +28,96 @@ __export(index_exports, {
|
|
|
26
28
|
getFontSized: () => getFontSized
|
|
27
29
|
});
|
|
28
30
|
module.exports = __toCommonJS(index_exports);
|
|
29
|
-
var import_constants = require("@hanzogui/constants")
|
|
30
|
-
|
|
31
|
+
var import_constants = require("@hanzogui/constants");
|
|
32
|
+
var import_web = require("@hanzogui/web");
|
|
31
33
|
function _type_of(obj) {
|
|
32
34
|
"@swc/helpers - typeof";
|
|
33
35
|
|
|
34
|
-
return obj && typeof Symbol
|
|
36
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
35
37
|
}
|
|
36
38
|
var getFontSized = function () {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
_font_transform,
|
|
47
|
-
_font_style,
|
|
48
|
-
_font_color;
|
|
49
|
-
if (!font) return {
|
|
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 {
|
|
50
48
|
fontSize: sizeTokenIn
|
|
51
49
|
};
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
50
|
+
}
|
|
51
|
+
var sizeToken = sizeTokenIn === "$true" ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
52
|
+
var style = {};
|
|
53
|
+
var fontSize = font.size[sizeToken];
|
|
54
|
+
var lineHeight = (_font_lineHeight = font.lineHeight) === null || _font_lineHeight === void 0 ? void 0 : _font_lineHeight[sizeToken];
|
|
55
|
+
var fontWeight = (_font_weight = font.weight) === null || _font_weight === void 0 ? void 0 : _font_weight[sizeToken];
|
|
56
|
+
var letterSpacing = (_font_letterSpacing = font.letterSpacing) === null || _font_letterSpacing === void 0 ? void 0 : _font_letterSpacing[sizeToken];
|
|
57
|
+
var textTransform = (_font_transform = font.transform) === null || _font_transform === void 0 ? void 0 : _font_transform[sizeToken];
|
|
58
|
+
var _props_fontStyle;
|
|
59
|
+
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];
|
|
60
|
+
var _props_color;
|
|
61
|
+
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];
|
|
62
|
+
if (fontStyle) style.fontStyle = fontStyle;
|
|
63
|
+
if (textTransform) style.textTransform = textTransform;
|
|
64
|
+
if (fontFamily) style.fontFamily = fontFamily;
|
|
65
|
+
if (fontWeight) style.fontWeight = fontWeight;
|
|
66
|
+
if (letterSpacing) style.letterSpacing = letterSpacing;
|
|
67
|
+
if (fontSize) style.fontSize = fontSize;
|
|
68
|
+
if (lineHeight) style.lineHeight = lineHeight;
|
|
69
|
+
if (color) style.color = color;
|
|
70
|
+
if (process.env.NODE_ENV === "development") {
|
|
71
|
+
if (props["debug"] && props["debug"] === "verbose") {
|
|
72
|
+
console.groupCollapsed(" \u{1F539} getFontSized", sizeTokenIn, sizeToken);
|
|
73
|
+
if (import_constants.isClient) {
|
|
74
|
+
console.info({
|
|
75
|
+
style,
|
|
76
|
+
props,
|
|
77
|
+
font
|
|
78
|
+
});
|
|
75
79
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
80
|
+
console.groupEnd();
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return style;
|
|
84
|
+
};
|
|
85
|
+
var SizableText = (0, import_web.styled)(import_web.Text, {
|
|
86
|
+
name: "SizableText",
|
|
87
|
+
fontFamily: "$body",
|
|
88
|
+
variants: {
|
|
89
|
+
size: {
|
|
90
|
+
"...fontSize": getFontSized
|
|
79
91
|
}
|
|
80
|
-
}
|
|
81
|
-
|
|
92
|
+
},
|
|
93
|
+
defaultVariants: {
|
|
94
|
+
size: "$true"
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
var cache = /* @__PURE__ */new WeakMap();
|
|
82
98
|
function getDefaultSizeToken(font) {
|
|
83
|
-
if ((typeof font
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
var
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
99
|
+
if ((typeof font === "undefined" ? "undefined" : _type_of(font)) === "object" && cache.has(font)) {
|
|
100
|
+
return cache.get(font);
|
|
101
|
+
}
|
|
102
|
+
var tokens = (0, import_web.getTokens)();
|
|
103
|
+
var sizeTokens = "$true" in font.size ? font.size : tokens === null || tokens === void 0 ? void 0 : tokens.size;
|
|
104
|
+
if (!sizeTokens) {
|
|
105
|
+
return Object.keys(font.size)[3];
|
|
106
|
+
}
|
|
107
|
+
var sizeDefault = sizeTokens["$true"];
|
|
108
|
+
var sizeDefaultSpecific = sizeDefault ? Object.keys(sizeTokens).find(function (x) {
|
|
109
|
+
return x !== "$true" && sizeTokens[x]["val"] === sizeDefault["val"];
|
|
110
|
+
}) : null;
|
|
111
|
+
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
112
|
+
if (process.env.NODE_ENV === "development") {
|
|
113
|
+
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
92
114
|
|
|
93
115
|
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
94
|
-
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`)
|
|
116
|
+
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
117
|
+
}
|
|
118
|
+
return Object.keys(font.size)[3];
|
|
119
|
+
}
|
|
120
|
+
cache.set(font, sizeDefaultSpecific);
|
|
121
|
+
return sizeDefaultSpecific;
|
|
95
122
|
}
|
|
96
123
|
//# sourceMappingURL=index.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","index_exports","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","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","_props_fontStyle","fontStyle","_props_color","color","process","env","NODE_ENV","debug","console","groupCollapsed","isClient","info","groupEnd","styled","Text","variants","defaultVariants","cache","WeakMap","has","tokens","getTokens","sizeTokens","keys","sizeDefault","$true","sizeDefaultSpecific","find","x","val","warn","set"],"sources":["index.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: !0 });\n}, __copyProps = (to, from, except, desc) => {\n if (from && typeof from == \"object\" || typeof from == \"function\")\n for (let key of __getOwnPropNames(from))\n !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: !0 }), mod);\nvar index_exports = {};\n__export(index_exports, {\n SizableText: () => SizableText,\n getFontSized: () => getFontSized\n});\nmodule.exports = __toCommonJS(index_exports);\nvar import_constants = require(\"@hanzogui/constants\"), import_web = require(\"@hanzogui/web\");\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol < \"u\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar getFontSized = function() {\n var sizeTokenIn = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : \"$true\", { font, fontFamily, props } = arguments.length > 1 ? arguments[1] : void 0, _font_lineHeight, _font_weight, _font_letterSpacing, _font_transform, _font_style, _font_color;\n if (!font)\n return {\n fontSize: sizeTokenIn\n };\n var sizeToken = sizeTokenIn === \"$true\" ? getDefaultSizeToken(font) : sizeTokenIn, style = {}, fontSize = font.size[sizeToken], lineHeight = (_font_lineHeight = font.lineHeight) === null || _font_lineHeight === void 0 ? void 0 : _font_lineHeight[sizeToken], fontWeight = (_font_weight = font.weight) === null || _font_weight === void 0 ? void 0 : _font_weight[sizeToken], letterSpacing = (_font_letterSpacing = font.letterSpacing) === null || _font_letterSpacing === void 0 ? void 0 : _font_letterSpacing[sizeToken], textTransform = (_font_transform = font.transform) === null || _font_transform === void 0 ? void 0 : _font_transform[sizeToken], _props_fontStyle, 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], _props_color, 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];\n return fontStyle && (style.fontStyle = fontStyle), textTransform && (style.textTransform = textTransform), fontFamily && (style.fontFamily = fontFamily), fontWeight && (style.fontWeight = fontWeight), letterSpacing && (style.letterSpacing = letterSpacing), fontSize && (style.fontSize = fontSize), lineHeight && (style.lineHeight = lineHeight), color && (style.color = color), process.env.NODE_ENV === \"development\" && props.debug && props.debug === \"verbose\" && (console.groupCollapsed(\" \\u{1F539} getFontSized\", sizeTokenIn, sizeToken), import_constants.isClient && console.info({\n style,\n props,\n font\n }), console.groupEnd()), style;\n}, SizableText = (0, import_web.styled)(import_web.Text, {\n name: \"SizableText\",\n fontFamily: \"$body\",\n variants: {\n size: {\n \"...fontSize\": getFontSized\n }\n },\n defaultVariants: {\n size: \"$true\"\n }\n}), cache = /* @__PURE__ */ new WeakMap();\nfunction getDefaultSizeToken(font) {\n if ((typeof font > \"u\" ? \"undefined\" : _type_of(font)) === \"object\" && cache.has(font))\n return cache.get(font);\n var tokens = (0, import_web.getTokens)(), sizeTokens = \"$true\" in font.size ? font.size : tokens?.size;\n if (!sizeTokens)\n return Object.keys(font.size)[3];\n var sizeDefault = sizeTokens.$true, sizeDefaultSpecific = sizeDefault ? Object.keys(sizeTokens).find(function(x) {\n return x !== \"$true\" && sizeTokens[x].val === sizeDefault.val;\n }) : null;\n return !sizeDefault || !sizeDefaultSpecific ? (process.env.NODE_ENV === \"development\" && console.warn(`No default size is set in your tokens for the \"true\" key, fonts will be inconsistent.\n\n Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or\n set true keys for all your font tokens: \"size\", \"lineHeight\", \"fontStyle\", etc.`), Object.keys(font.size)[3]) : (cache.set(font, sizeDefaultSpecific), sizeDefaultSpecific);\n}\n//# sourceMappingURL=index.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
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","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","_props_fontStyle","fontStyle","_props_color","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.js
CHANGED
|
@@ -1,52 +1,82 @@
|
|
|
1
1
|
import { isClient } from "@hanzogui/constants";
|
|
2
2
|
import { getTokens, styled, Text } from "@hanzogui/web";
|
|
3
3
|
const getFontSized = (sizeTokenIn = "$true", {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
font,
|
|
5
|
+
fontFamily,
|
|
6
|
+
props
|
|
7
|
+
}) => {
|
|
8
|
+
if (!font) {
|
|
9
|
+
return {
|
|
9
10
|
fontSize: sizeTokenIn
|
|
10
11
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
12
|
+
}
|
|
13
|
+
const sizeToken = sizeTokenIn === "$true" ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
14
|
+
const style = {};
|
|
15
|
+
const fontSize = font.size[sizeToken];
|
|
16
|
+
const lineHeight = font.lineHeight?.[sizeToken];
|
|
17
|
+
const fontWeight = font.weight?.[sizeToken];
|
|
18
|
+
const letterSpacing = font.letterSpacing?.[sizeToken];
|
|
19
|
+
const textTransform = font.transform?.[sizeToken];
|
|
20
|
+
const fontStyle = props.fontStyle ?? font.style?.[sizeToken];
|
|
21
|
+
const color = props.color ?? font.color?.[sizeToken];
|
|
22
|
+
if (fontStyle) style.fontStyle = fontStyle;
|
|
23
|
+
if (textTransform) style.textTransform = textTransform;
|
|
24
|
+
if (fontFamily) style.fontFamily = fontFamily;
|
|
25
|
+
if (fontWeight) style.fontWeight = fontWeight;
|
|
26
|
+
if (letterSpacing) style.letterSpacing = letterSpacing;
|
|
27
|
+
if (fontSize) style.fontSize = fontSize;
|
|
28
|
+
if (lineHeight) style.lineHeight = lineHeight;
|
|
29
|
+
if (color) style.color = color;
|
|
30
|
+
if (process.env.NODE_ENV === "development") {
|
|
31
|
+
if (props["debug"] && props["debug"] === "verbose") {
|
|
32
|
+
console.groupCollapsed(" \u{1F539} getFontSized", sizeTokenIn, sizeToken);
|
|
33
|
+
if (isClient) {
|
|
34
|
+
console.info({
|
|
35
|
+
style,
|
|
36
|
+
props,
|
|
37
|
+
font
|
|
38
|
+
});
|
|
32
39
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
40
|
+
console.groupEnd();
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return style;
|
|
44
|
+
};
|
|
45
|
+
const SizableText = styled(Text, {
|
|
46
|
+
name: "SizableText",
|
|
47
|
+
fontFamily: "$body",
|
|
48
|
+
variants: {
|
|
49
|
+
size: {
|
|
50
|
+
"...fontSize": getFontSized
|
|
36
51
|
}
|
|
37
|
-
}
|
|
38
|
-
|
|
52
|
+
},
|
|
53
|
+
defaultVariants: {
|
|
54
|
+
size: "$true"
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
const cache = /* @__PURE__ */new WeakMap();
|
|
39
58
|
function getDefaultSizeToken(font) {
|
|
40
|
-
if (typeof font
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
59
|
+
if (typeof font === "object" && cache.has(font)) {
|
|
60
|
+
return cache.get(font);
|
|
61
|
+
}
|
|
62
|
+
const tokens = getTokens();
|
|
63
|
+
const sizeTokens = "$true" in font.size ? font.size : tokens?.size;
|
|
64
|
+
if (!sizeTokens) {
|
|
65
|
+
return Object.keys(font.size)[3];
|
|
66
|
+
}
|
|
67
|
+
const sizeDefault = sizeTokens["$true"];
|
|
68
|
+
const sizeDefaultSpecific = sizeDefault ? Object.keys(sizeTokens).find(x => x !== "$true" && sizeTokens[x]["val"] === sizeDefault["val"]) : null;
|
|
69
|
+
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
70
|
+
if (process.env.NODE_ENV === "development") {
|
|
71
|
+
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
47
72
|
|
|
48
73
|
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
49
|
-
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`)
|
|
74
|
+
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
75
|
+
}
|
|
76
|
+
return Object.keys(font.size)[3];
|
|
77
|
+
}
|
|
78
|
+
cache.set(font, sizeDefaultSpecific);
|
|
79
|
+
return sizeDefaultSpecific;
|
|
50
80
|
}
|
|
51
81
|
export { SizableText, getFontSized };
|
|
52
82
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isClient","getTokens","styled","Text","getFontSized","sizeTokenIn","font","fontFamily","props","fontSize","sizeToken","getDefaultSizeToken","style","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","fontStyle","color","process","env","NODE_ENV","
|
|
1
|
+
{"version":3,"names":["isClient","getTokens","styled","Text","getFontSized","sizeTokenIn","font","fontFamily","props","fontSize","sizeToken","getDefaultSizeToken","style","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","fontStyle","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","warn","set"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,QAAgB;AAQzB,SAASC,SAAA,EAAWC,MAAA,EAAQC,IAAA,QAAY;AAEjC,MAAMC,YAAA,GAAiEA,CAC5EC,WAAA,GAAc,SACd;EAAEC,IAAA;EAAMC,UAAA;EAAYC;AAAM,MACvB;EACH,IAAI,CAACF,IAAA,EAAM;IACT,OAAO;MACLG,QAAA,EAAUJ;IACZ;EACF;EAEA,MAAMK,SAAA,GAAYL,WAAA,KAAgB,UAAUM,mBAAA,CAAoBL,IAAI,IAAID,WAAA;EAExE,MAAMO,KAAA,GAAmB,CAAC;EAG1B,MAAMH,QAAA,GAAWH,IAAA,CAAKO,IAAA,CAAKH,SAAS;EACpC,MAAMI,UAAA,GAAaR,IAAA,CAAKQ,UAAA,GAAaJ,SAAS;EAC9C,MAAMK,UAAA,GAAaT,IAAA,CAAKU,MAAA,GAASN,SAAS;EAC1C,MAAMO,aAAA,GAAgBX,IAAA,CAAKW,aAAA,GAAgBP,SAAS;EACpD,MAAMQ,aAAA,GAAgBZ,IAAA,CAAKa,SAAA,GAAYT,SAAS;EAChD,MAAMU,SAAA,GAAYZ,KAAA,CAAMY,SAAA,IAAad,IAAA,CAAKM,KAAA,GAAQF,SAAS;EAC3D,MAAMW,KAAA,GAAQb,KAAA,CAAMa,KAAA,IAASf,IAAA,CAAKe,KAAA,GAAQX,SAAS;EAEnD,IAAIU,SAAA,EAAWR,KAAA,CAAMQ,SAAA,GAAYA,SAAA;EACjC,IAAIF,aAAA,EAAeN,KAAA,CAAMM,aAAA,GAAgBA,aAAA;EACzC,IAAIX,UAAA,EAAYK,KAAA,CAAML,UAAA,GAAaA,UAAA;EACnC,IAAIQ,UAAA,EAAYH,KAAA,CAAMG,UAAA,GAAaA,UAAA;EACnC,IAAIE,aAAA,EAAeL,KAAA,CAAMK,aAAA,GAAgBA,aAAA;EACzC,IAAIR,QAAA,EAAUG,KAAA,CAAMH,QAAA,GAAWA,QAAA;EAC/B,IAAIK,UAAA,EAAYF,KAAA,CAAME,UAAA,GAAaA,UAAA;EACnC,IAAIO,KAAA,EAAOT,KAAA,CAAMS,KAAA,GAAQA,KAAA;EAEzB,IAAIC,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,eAAe;IAC1C,IAAIhB,KAAA,CAAM,OAAO,KAAKA,KAAA,CAAM,OAAO,MAAM,WAAW;MAClDiB,OAAA,CAAQC,cAAA,CAAe,4BAAqBrB,WAAA,EAAaK,SAAS;MAClE,IAAIV,QAAA,EAAU;QACZyB,OAAA,CAAQE,IAAA,CAAK;UAAEf,KAAA;UAAOJ,KAAA;UAAOF;QAAK,CAAC;MACrC;MACAmB,OAAA,CAAQG,QAAA,CAAS;IACnB;EACF;EAEA,OAAOhB,KAAA;AACT;AAEO,MAAMiB,WAAA,GAAc3B,MAAA,CAAOC,IAAA,EAAM;EACtC2B,IAAA,EAAM;EACNvB,UAAA,EAAY;EAEZwB,QAAA,EAAU;IACRlB,IAAA,EAAM;MACJ,eAAeT;IACjB;EACF;EAEA4B,eAAA,EAAiB;IACfnB,IAAA,EAAM;EACR;AACF,CAAC;AAED,MAAMoB,KAAA,GAAQ,mBAAIC,OAAA,CAA6B;AAE/C,SAASvB,oBAAoBL,IAAA,EAAmB;EAC9C,IAAI,OAAOA,IAAA,KAAS,YAAY2B,KAAA,CAAME,GAAA,CAAI7B,IAAI,GAAG;IAC/C,OAAO2B,KAAA,CAAMG,GAAA,CAAI9B,IAAI;EACvB;EAGA,MAAM+B,MAAA,GAASpC,SAAA,CAAU;EACzB,MAAMqC,UAAA,GAAa,WAAWhC,IAAA,CAAKO,IAAA,GAAOP,IAAA,CAAKO,IAAA,GAAOwB,MAAA,EAAQxB,IAAA;EAC9D,IAAI,CAACyB,UAAA,EAAY;IACf,OAAOC,MAAA,CAAOC,IAAA,CAAKlC,IAAA,CAAKO,IAAI,EAAE,CAAC;EACjC;EACA,MAAM4B,WAAA,GAAcH,UAAA,CAAW,OAAO;EACtC,MAAMI,mBAAA,GAAsBD,WAAA,GACxBF,MAAA,CAAOC,IAAA,CAAKF,UAAU,EAAEK,IAAA,CACrBC,CAAA,IAAMA,CAAA,KAAM,WAAWN,UAAA,CAAWM,CAAC,EAAE,KAAK,MAAMH,WAAA,CAAY,KAAK,CACpE,IACA;EAEJ,IAAI,CAACA,WAAA,IAAe,CAACC,mBAAA,EAAqB;IACxC,IAAIpB,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,eAAe;MAC1CC,OAAA,CAAQoB,IAAA,CAAK;AAAA;AAAA;AAAA,sFAGmE;IAClF;IACA,OAAON,MAAA,CAAOC,IAAA,CAAKlC,IAAA,CAAKO,IAAI,EAAE,CAAC;EACjC;EAEAoB,KAAA,CAAMa,GAAA,CAAIxC,IAAA,EAAMoC,mBAAqC;EACrD,OAAOA,mBAAA;AACT","ignoreList":[]}
|
package/dist/esm/index.mjs
CHANGED
|
@@ -1,52 +1,82 @@
|
|
|
1
1
|
import { isClient } from "@hanzogui/constants";
|
|
2
2
|
import { getTokens, styled, Text } from "@hanzogui/web";
|
|
3
3
|
const getFontSized = (sizeTokenIn = "$true", {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
font,
|
|
5
|
+
fontFamily,
|
|
6
|
+
props
|
|
7
|
+
}) => {
|
|
8
|
+
if (!font) {
|
|
9
|
+
return {
|
|
9
10
|
fontSize: sizeTokenIn
|
|
10
11
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
12
|
+
}
|
|
13
|
+
const sizeToken = sizeTokenIn === "$true" ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
14
|
+
const style = {};
|
|
15
|
+
const fontSize = font.size[sizeToken];
|
|
16
|
+
const lineHeight = font.lineHeight?.[sizeToken];
|
|
17
|
+
const fontWeight = font.weight?.[sizeToken];
|
|
18
|
+
const letterSpacing = font.letterSpacing?.[sizeToken];
|
|
19
|
+
const textTransform = font.transform?.[sizeToken];
|
|
20
|
+
const fontStyle = props.fontStyle ?? font.style?.[sizeToken];
|
|
21
|
+
const color = props.color ?? font.color?.[sizeToken];
|
|
22
|
+
if (fontStyle) style.fontStyle = fontStyle;
|
|
23
|
+
if (textTransform) style.textTransform = textTransform;
|
|
24
|
+
if (fontFamily) style.fontFamily = fontFamily;
|
|
25
|
+
if (fontWeight) style.fontWeight = fontWeight;
|
|
26
|
+
if (letterSpacing) style.letterSpacing = letterSpacing;
|
|
27
|
+
if (fontSize) style.fontSize = fontSize;
|
|
28
|
+
if (lineHeight) style.lineHeight = lineHeight;
|
|
29
|
+
if (color) style.color = color;
|
|
30
|
+
if (process.env.NODE_ENV === "development") {
|
|
31
|
+
if (props["debug"] && props["debug"] === "verbose") {
|
|
32
|
+
console.groupCollapsed(" \u{1F539} getFontSized", sizeTokenIn, sizeToken);
|
|
33
|
+
if (isClient) {
|
|
34
|
+
console.info({
|
|
35
|
+
style,
|
|
36
|
+
props,
|
|
37
|
+
font
|
|
38
|
+
});
|
|
32
39
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
40
|
+
console.groupEnd();
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return style;
|
|
44
|
+
};
|
|
45
|
+
const SizableText = styled(Text, {
|
|
46
|
+
name: "SizableText",
|
|
47
|
+
fontFamily: "$body",
|
|
48
|
+
variants: {
|
|
49
|
+
size: {
|
|
50
|
+
"...fontSize": getFontSized
|
|
36
51
|
}
|
|
37
|
-
}
|
|
38
|
-
|
|
52
|
+
},
|
|
53
|
+
defaultVariants: {
|
|
54
|
+
size: "$true"
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
const cache = /* @__PURE__ */new WeakMap();
|
|
39
58
|
function getDefaultSizeToken(font) {
|
|
40
|
-
if (typeof font
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
59
|
+
if (typeof font === "object" && cache.has(font)) {
|
|
60
|
+
return cache.get(font);
|
|
61
|
+
}
|
|
62
|
+
const tokens = getTokens();
|
|
63
|
+
const sizeTokens = "$true" in font.size ? font.size : tokens?.size;
|
|
64
|
+
if (!sizeTokens) {
|
|
65
|
+
return Object.keys(font.size)[3];
|
|
66
|
+
}
|
|
67
|
+
const sizeDefault = sizeTokens["$true"];
|
|
68
|
+
const sizeDefaultSpecific = sizeDefault ? Object.keys(sizeTokens).find(x => x !== "$true" && sizeTokens[x]["val"] === sizeDefault["val"]) : null;
|
|
69
|
+
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
70
|
+
if (process.env.NODE_ENV === "development") {
|
|
71
|
+
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
47
72
|
|
|
48
73
|
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
49
|
-
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`)
|
|
74
|
+
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
75
|
+
}
|
|
76
|
+
return Object.keys(font.size)[3];
|
|
77
|
+
}
|
|
78
|
+
cache.set(font, sizeDefaultSpecific);
|
|
79
|
+
return sizeDefaultSpecific;
|
|
50
80
|
}
|
|
51
81
|
export { SizableText, getFontSized };
|
|
52
82
|
//# sourceMappingURL=index.mjs.map
|
package/dist/esm/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isClient","getTokens","styled","Text","getFontSized","sizeTokenIn","font","fontFamily","props","fontSize","sizeToken","getDefaultSizeToken","style","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","fontStyle","color","process","env","NODE_ENV","
|
|
1
|
+
{"version":3,"names":["isClient","getTokens","styled","Text","getFontSized","sizeTokenIn","font","fontFamily","props","fontSize","sizeToken","getDefaultSizeToken","style","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","fontStyle","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","warn","set"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/index.native.js
CHANGED
|
@@ -3,67 +3,92 @@ import { getTokens, styled, Text } from "@hanzogui/web";
|
|
|
3
3
|
function _type_of(obj) {
|
|
4
4
|
"@swc/helpers - typeof";
|
|
5
5
|
|
|
6
|
-
return obj && typeof Symbol
|
|
6
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
7
7
|
}
|
|
8
8
|
var getFontSized = function () {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
_font_transform,
|
|
19
|
-
_font_style,
|
|
20
|
-
_font_color;
|
|
21
|
-
if (!font) return {
|
|
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 {
|
|
22
18
|
fontSize: sizeTokenIn
|
|
23
19
|
};
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
20
|
+
}
|
|
21
|
+
var sizeToken = sizeTokenIn === "$true" ? getDefaultSizeToken(font) : sizeTokenIn;
|
|
22
|
+
var style = {};
|
|
23
|
+
var fontSize = font.size[sizeToken];
|
|
24
|
+
var lineHeight = (_font_lineHeight = font.lineHeight) === null || _font_lineHeight === void 0 ? void 0 : _font_lineHeight[sizeToken];
|
|
25
|
+
var fontWeight = (_font_weight = font.weight) === null || _font_weight === void 0 ? void 0 : _font_weight[sizeToken];
|
|
26
|
+
var letterSpacing = (_font_letterSpacing = font.letterSpacing) === null || _font_letterSpacing === void 0 ? void 0 : _font_letterSpacing[sizeToken];
|
|
27
|
+
var textTransform = (_font_transform = font.transform) === null || _font_transform === void 0 ? void 0 : _font_transform[sizeToken];
|
|
28
|
+
var _props_fontStyle;
|
|
29
|
+
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];
|
|
30
|
+
var _props_color;
|
|
31
|
+
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];
|
|
32
|
+
if (fontStyle) style.fontStyle = fontStyle;
|
|
33
|
+
if (textTransform) style.textTransform = textTransform;
|
|
34
|
+
if (fontFamily) style.fontFamily = fontFamily;
|
|
35
|
+
if (fontWeight) style.fontWeight = fontWeight;
|
|
36
|
+
if (letterSpacing) style.letterSpacing = letterSpacing;
|
|
37
|
+
if (fontSize) style.fontSize = fontSize;
|
|
38
|
+
if (lineHeight) style.lineHeight = lineHeight;
|
|
39
|
+
if (color) style.color = color;
|
|
40
|
+
if (process.env.NODE_ENV === "development") {
|
|
41
|
+
if (props["debug"] && props["debug"] === "verbose") {
|
|
42
|
+
console.groupCollapsed(" \u{1F539} getFontSized", sizeTokenIn, sizeToken);
|
|
43
|
+
if (isClient) {
|
|
44
|
+
console.info({
|
|
45
|
+
style,
|
|
46
|
+
props,
|
|
47
|
+
font
|
|
48
|
+
});
|
|
47
49
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
50
|
+
console.groupEnd();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return style;
|
|
54
|
+
};
|
|
55
|
+
var SizableText = styled(Text, {
|
|
56
|
+
name: "SizableText",
|
|
57
|
+
fontFamily: "$body",
|
|
58
|
+
variants: {
|
|
59
|
+
size: {
|
|
60
|
+
"...fontSize": getFontSized
|
|
51
61
|
}
|
|
52
|
-
}
|
|
53
|
-
|
|
62
|
+
},
|
|
63
|
+
defaultVariants: {
|
|
64
|
+
size: "$true"
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
var cache = /* @__PURE__ */new WeakMap();
|
|
54
68
|
function getDefaultSizeToken(font) {
|
|
55
|
-
if ((typeof font
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
var
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
69
|
+
if ((typeof font === "undefined" ? "undefined" : _type_of(font)) === "object" && cache.has(font)) {
|
|
70
|
+
return cache.get(font);
|
|
71
|
+
}
|
|
72
|
+
var tokens = getTokens();
|
|
73
|
+
var sizeTokens = "$true" in font.size ? font.size : tokens === null || tokens === void 0 ? void 0 : tokens.size;
|
|
74
|
+
if (!sizeTokens) {
|
|
75
|
+
return Object.keys(font.size)[3];
|
|
76
|
+
}
|
|
77
|
+
var sizeDefault = sizeTokens["$true"];
|
|
78
|
+
var sizeDefaultSpecific = sizeDefault ? Object.keys(sizeTokens).find(function (x) {
|
|
79
|
+
return x !== "$true" && sizeTokens[x]["val"] === sizeDefault["val"];
|
|
80
|
+
}) : null;
|
|
81
|
+
if (!sizeDefault || !sizeDefaultSpecific) {
|
|
82
|
+
if (process.env.NODE_ENV === "development") {
|
|
83
|
+
console.warn(`No default size is set in your tokens for the "true" key, fonts will be inconsistent.
|
|
64
84
|
|
|
65
85
|
Fix this by having consistent tokens across fonts and sizes and setting a true key for your size tokens, or
|
|
66
|
-
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`)
|
|
86
|
+
set true keys for all your font tokens: "size", "lineHeight", "fontStyle", etc.`);
|
|
87
|
+
}
|
|
88
|
+
return Object.keys(font.size)[3];
|
|
89
|
+
}
|
|
90
|
+
cache.set(font, sizeDefaultSpecific);
|
|
91
|
+
return sizeDefaultSpecific;
|
|
67
92
|
}
|
|
68
93
|
export { SizableText, getFontSized };
|
|
69
94
|
//# sourceMappingURL=index.native.js.map
|
|
@@ -1 +1 @@
|
|
|
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","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","_props_fontStyle","fontStyle","_props_color","color","process","env","NODE_ENV","
|
|
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","size","lineHeight","fontWeight","weight","letterSpacing","textTransform","transform","_props_fontStyle","fontStyle","_props_color","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":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hanzogui/get-font-sized",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "4.3.1",
|
|
4
4
|
"files": [
|
|
5
5
|
"src",
|
|
6
6
|
"types",
|
|
@@ -33,11 +33,11 @@
|
|
|
33
33
|
"clean:build": "hanzo-gui-build clean:build"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@hanzogui/constants": "3.0.
|
|
37
|
-
"@hanzogui/web": "3.0.
|
|
36
|
+
"@hanzogui/constants": "3.0.6",
|
|
37
|
+
"@hanzogui/web": "3.0.6"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@hanzogui/build": "3.0.
|
|
40
|
+
"@hanzogui/build": "3.0.6",
|
|
41
41
|
"react": ">=19"
|
|
42
42
|
},
|
|
43
43
|
"peerDependencies": {
|