@tamagui/get-token 2.7.7 → 3.0.0-beta.643.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.
@@ -1,87 +1,47 @@
1
+
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
6
  var __export = (target, all) => {
6
- for (var name in all) __defProp(target, name, {
7
- get: all[name],
8
- enumerable: true
9
- });
7
+ for (var name in all) __defProp(target, name, {
8
+ get: all[name],
9
+ enumerable: true
10
+ });
10
11
  };
11
12
  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;
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
15
+ get: () => from[key],
16
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
+ });
18
+ }
19
+ return to;
19
20
  };
20
- var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
- value: true
22
- }), mod);
21
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
23
22
  var index_exports = {};
24
23
  __export(index_exports, {
25
- getRadius: () => getRadius,
26
- getSize: () => getSize,
27
- getSpace: () => getSpace,
28
- getTokenRelative: () => getTokenRelative,
29
- stepTokenUpOrDown: () => stepTokenUpOrDown
24
+ getRadius: () => getRadius,
25
+ getSize: () => getSize,
26
+ getSpace: () => getSpace,
27
+ oneSizeTokenSmaller: () => oneSizeTokenSmaller
30
28
  });
31
29
  module.exports = __toCommonJS(index_exports);
30
+ var import_size = require("@tamagui/size");
32
31
  var import_web = require("@tamagui/web");
33
- const defaultOptions = {
34
- shift: 0,
35
- bounds: [0]
32
+ const resolveToken = (type, input) => {
33
+ const tokens = (0, import_web.getTokens)()[type];
34
+ const resolved = (0, import_size.resolveSizeToken)(input, type);
35
+ if (resolved == null) return resolved;
36
+ if (typeof resolved === "number") return resolved;
37
+ const key = typeof resolved === "object" ? resolved.key : String(resolved);
38
+ return tokens[key] ?? resolved;
36
39
  };
37
- const getSize = (size, options) => {
38
- return getTokenRelative("size", size, options);
40
+ const getSize = (size) => resolveToken("size", size);
41
+ const getSpace = (space) => resolveToken("space", space);
42
+ const getRadius = (radius) => resolveToken("radius", radius);
43
+ const oneSizeTokenSmaller = (token) => {
44
+ const n = Number(String(token));
45
+ if (Number.isNaN(n)) return String(token);
46
+ return `${Math.max(1, Math.round(n) - 1)}`;
39
47
  };
40
- const getSpace = (space, options) => {
41
- return getTokenRelative("space", space, options);
42
- };
43
- const getRadius = (radius, options) => {
44
- return getTokenRelative("radius", radius, options);
45
- };
46
- const cacheVariables = {};
47
- const cacheWholeVariables = {};
48
- const cacheKeys = {};
49
- const cacheWholeKeys = {};
50
- const stepTokenUpOrDown = (type, current, options = defaultOptions) => {
51
- const tokens = (0, import_web.getTokens)({
52
- prefixed: true
53
- })[type];
54
- if (!(type in cacheVariables)) {
55
- cacheKeys[type] = [];
56
- cacheVariables[type] = [];
57
- cacheWholeKeys[type] = [];
58
- cacheWholeVariables[type] = [];
59
- const sorted = Object.keys(tokens).map(k => tokens[k]).sort((a, b) => a.val - b.val);
60
- for (const token of sorted) {
61
- cacheKeys[type].push(token.key);
62
- cacheVariables[type].push(token);
63
- }
64
- const sortedExcludingHalfSteps = sorted.filter(x => !x.key.endsWith(".5"));
65
- for (const token of sortedExcludingHalfSteps) {
66
- cacheWholeKeys[type].push(token.key);
67
- cacheWholeVariables[type].push(token);
68
- }
69
- }
70
- const isString = typeof current === "string";
71
- const cache = options.excludeHalfSteps ? isString ? cacheWholeKeys : cacheWholeVariables : isString ? cacheKeys : cacheVariables;
72
- const tokensOrdered = cache[type];
73
- const min = options.bounds?.[0] ?? 0;
74
- const max = options.bounds?.[1] ?? tokensOrdered.length - 1;
75
- const currentIndex = tokensOrdered.indexOf(current);
76
- let shift = options.shift || 0;
77
- if (shift) {
78
- if (current === "$true" || (0, import_web.isVariable)(current) && current.name === "true") {
79
- shift += shift > 0 ? 1 : -1;
80
- }
81
- }
82
- const index = Math.min(max, Math.max(min, currentIndex + shift));
83
- const found = tokensOrdered[index];
84
- const result = (typeof found === "string" ? tokens[found] : found) || tokens["$true"];
85
- return result;
86
- };
87
- const getTokenRelative = stepTokenUpOrDown;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all) __defProp(target, name, {
10
+ get: all[name],
11
+ enumerable: true
12
+ });
13
+ };
14
+ var __copyProps = (to, from, except, desc) => {
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
17
+ get: () => from[key],
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ }
21
+ return to;
22
+ };
23
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
+ var index_exports = {};
25
+ __export(index_exports, {
26
+ getRadius: () => getRadius,
27
+ getSize: () => getSize,
28
+ getSpace: () => getSpace,
29
+ oneSizeTokenSmaller: () => oneSizeTokenSmaller
30
+ });
31
+ module.exports = __toCommonJS(index_exports);
32
+ var import_size = require("@tamagui/size");
33
+ var import_web = require("@tamagui/web");
34
+ function _type_of(obj) {
35
+ "@swc/helpers - typeof";
36
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
37
+ }
38
+ var resolveToken = function(type, input) {
39
+ var tokens = (0, import_web.getTokens)()[type];
40
+ var resolved = (0, import_size.resolveSizeToken)(input, type);
41
+ if (resolved == null) return resolved;
42
+ if (typeof resolved === "number") return resolved;
43
+ var key = (typeof resolved === "undefined" ? "undefined" : _type_of(resolved)) === "object" ? resolved.key : String(resolved);
44
+ var _tokens_key;
45
+ return (_tokens_key = tokens[key]) !== null && _tokens_key !== void 0 ? _tokens_key : resolved;
46
+ };
47
+ var getSize = function(size) {
48
+ return resolveToken("size", size);
49
+ };
50
+ var getSpace = function(space) {
51
+ return resolveToken("space", space);
52
+ };
53
+ var getRadius = function(radius) {
54
+ return resolveToken("radius", radius);
55
+ };
56
+ var oneSizeTokenSmaller = function(token) {
57
+ var n = Number(String(token));
58
+ if (Number.isNaN(n)) return String(token);
59
+ return `${Math.max(1, Math.round(n) - 1)}`;
60
+ };
@@ -1,138 +1,62 @@
1
1
  "use strict";
2
2
 
3
+
3
4
  var __defProp = Object.defineProperty;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
8
  var __export = (target, all) => {
8
- for (var name in all) __defProp(target, name, {
9
- get: all[name],
10
- enumerable: true
11
- });
9
+ for (var name in all) __defProp(target, name, {
10
+ get: all[name],
11
+ enumerable: true
12
+ });
12
13
  };
13
14
  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;
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
17
+ get: () => from[key],
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ }
21
+ return to;
21
22
  };
22
- var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
- value: true
24
- }), mod);
23
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
24
  var index_exports = {};
26
25
  __export(index_exports, {
27
- getRadius: () => getRadius,
28
- getSize: () => getSize,
29
- getSpace: () => getSpace,
30
- getTokenRelative: () => getTokenRelative,
31
- stepTokenUpOrDown: () => stepTokenUpOrDown
26
+ getRadius: () => getRadius,
27
+ getSize: () => getSize,
28
+ getSpace: () => getSpace,
29
+ oneSizeTokenSmaller: () => oneSizeTokenSmaller
32
30
  });
33
31
  module.exports = __toCommonJS(index_exports);
32
+ var import_size = require("@tamagui/size");
34
33
  var import_web = require("@tamagui/web");
35
- var defaultOptions = {
36
- shift: 0,
37
- bounds: [0]
34
+ function _type_of(obj) {
35
+ "@swc/helpers - typeof";
36
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
37
+ }
38
+ var resolveToken = function(type, input) {
39
+ var tokens = (0, import_web.getTokens)()[type];
40
+ var resolved = (0, import_size.resolveSizeToken)(input, type);
41
+ if (resolved == null) return resolved;
42
+ if (typeof resolved === "number") return resolved;
43
+ var key = (typeof resolved === "undefined" ? "undefined" : _type_of(resolved)) === "object" ? resolved.key : String(resolved);
44
+ var _tokens_key;
45
+ return (_tokens_key = tokens[key]) !== null && _tokens_key !== void 0 ? _tokens_key : resolved;
38
46
  };
39
- var getSize = function (size, options) {
40
- return getTokenRelative("size", size, options);
47
+ var getSize = function(size) {
48
+ return resolveToken("size", size);
41
49
  };
42
- var getSpace = function (space, options) {
43
- return getTokenRelative("space", space, options);
50
+ var getSpace = function(space) {
51
+ return resolveToken("space", space);
44
52
  };
45
- var getRadius = function (radius, options) {
46
- return getTokenRelative("radius", radius, options);
53
+ var getRadius = function(radius) {
54
+ return resolveToken("radius", radius);
47
55
  };
48
- var cacheVariables = {};
49
- var cacheWholeVariables = {};
50
- var cacheKeys = {};
51
- var cacheWholeKeys = {};
52
- var stepTokenUpOrDown = function (type, current) {
53
- var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : defaultOptions;
54
- var _options_bounds, _options_bounds1;
55
- var tokens = (0, import_web.getTokens)({
56
- prefixed: true
57
- })[type];
58
- if (!(type in cacheVariables)) {
59
- cacheKeys[type] = [];
60
- cacheVariables[type] = [];
61
- cacheWholeKeys[type] = [];
62
- cacheWholeVariables[type] = [];
63
- var sorted = Object.keys(tokens).map(function (k) {
64
- return tokens[k];
65
- }).sort(function (a, b) {
66
- return a.val - b.val;
67
- });
68
- var _iteratorNormalCompletion = true,
69
- _didIteratorError = false,
70
- _iteratorError = void 0;
71
- try {
72
- for (var _iterator = sorted[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
73
- var token = _step.value;
74
- cacheKeys[type].push(token.key);
75
- cacheVariables[type].push(token);
76
- }
77
- } catch (err) {
78
- _didIteratorError = true;
79
- _iteratorError = err;
80
- } finally {
81
- try {
82
- if (!_iteratorNormalCompletion && _iterator.return != null) {
83
- _iterator.return();
84
- }
85
- } finally {
86
- if (_didIteratorError) {
87
- throw _iteratorError;
88
- }
89
- }
90
- }
91
- var sortedExcludingHalfSteps = sorted.filter(function (x) {
92
- return !x.key.endsWith(".5");
93
- });
94
- var _iteratorNormalCompletion1 = true,
95
- _didIteratorError1 = false,
96
- _iteratorError1 = void 0;
97
- try {
98
- for (var _iterator1 = sortedExcludingHalfSteps[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
99
- var token1 = _step1.value;
100
- cacheWholeKeys[type].push(token1.key);
101
- cacheWholeVariables[type].push(token1);
102
- }
103
- } catch (err) {
104
- _didIteratorError1 = true;
105
- _iteratorError1 = err;
106
- } finally {
107
- try {
108
- if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
109
- _iterator1.return();
110
- }
111
- } finally {
112
- if (_didIteratorError1) {
113
- throw _iteratorError1;
114
- }
115
- }
116
- }
117
- }
118
- var isString = typeof current === "string";
119
- var cache = options.excludeHalfSteps ? isString ? cacheWholeKeys : cacheWholeVariables : isString ? cacheKeys : cacheVariables;
120
- var tokensOrdered = cache[type];
121
- var _options_bounds_;
122
- var min = (_options_bounds_ = (_options_bounds = options.bounds) === null || _options_bounds === void 0 ? void 0 : _options_bounds[0]) !== null && _options_bounds_ !== void 0 ? _options_bounds_ : 0;
123
- var _options_bounds_1;
124
- var max = (_options_bounds_1 = (_options_bounds1 = options.bounds) === null || _options_bounds1 === void 0 ? void 0 : _options_bounds1[1]) !== null && _options_bounds_1 !== void 0 ? _options_bounds_1 : tokensOrdered.length - 1;
125
- var currentIndex = tokensOrdered.indexOf(current);
126
- var shift = options.shift || 0;
127
- if (shift) {
128
- if (current === "$true" || (0, import_web.isVariable)(current) && current.name === "true") {
129
- shift += shift > 0 ? 1 : -1;
130
- }
131
- }
132
- var index = Math.min(max, Math.max(min, currentIndex + shift));
133
- var found = tokensOrdered[index];
134
- var result = (typeof found === "string" ? tokens[found] : found) || tokens["$true"];
135
- return result;
56
+ var oneSizeTokenSmaller = function(token) {
57
+ var n = Number(String(token));
58
+ if (Number.isNaN(n)) return String(token);
59
+ return `${Math.max(1, Math.round(n) - 1)}`;
136
60
  };
137
- var getTokenRelative = stepTokenUpOrDown;
61
+
138
62
  //# 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","getRadius","getSize","getSpace","getTokenRelative","stepTokenUpOrDown","module","exports","import_web","require","defaultOptions","shift","bounds","size","options","space","radius","cacheVariables","cacheWholeVariables","cacheKeys","cacheWholeKeys","type","current","arguments","length","_options_bounds","_options_bounds1","tokens","getTokens","prefixed","sorted","keys","map","k","sort","a","b","val","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","token","push","err","return","sortedExcludingHalfSteps","filter","x","endsWith","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","token1","isString","cache","excludeHalfSteps","tokensOrdered","_options_bounds_","min","_options_bounds_1","max","currentIndex","indexOf","isVariable","index","Math","found","result"],"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: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar index_exports = {};\n__export(index_exports, {\n getRadius: () => getRadius,\n getSize: () => getSize,\n getSpace: () => getSpace,\n getTokenRelative: () => getTokenRelative,\n stepTokenUpOrDown: () => stepTokenUpOrDown\n});\nmodule.exports = __toCommonJS(index_exports);\nvar import_web = require(\"@tamagui/web\");\nvar defaultOptions = {\n shift: 0,\n bounds: [\n 0\n ]\n};\nvar getSize = function(size, options) {\n return getTokenRelative(\"size\", size, options);\n};\nvar getSpace = function(space, options) {\n return getTokenRelative(\"space\", space, options);\n};\nvar getRadius = function(radius, options) {\n return getTokenRelative(\"radius\", radius, options);\n};\nvar cacheVariables = {};\nvar cacheWholeVariables = {};\nvar cacheKeys = {};\nvar cacheWholeKeys = {};\nvar stepTokenUpOrDown = function(type, current) {\n var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : defaultOptions;\n var _options_bounds, _options_bounds1;\n var tokens = (0, import_web.getTokens)({\n prefixed: true\n })[type];\n if (!(type in cacheVariables)) {\n cacheKeys[type] = [];\n cacheVariables[type] = [];\n cacheWholeKeys[type] = [];\n cacheWholeVariables[type] = [];\n var sorted = Object.keys(tokens).map(function(k) {\n return tokens[k];\n }).sort(function(a, b) {\n return a.val - b.val;\n });\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = sorted[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var token = _step.value;\n cacheKeys[type].push(token.key);\n cacheVariables[type].push(token);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var sortedExcludingHalfSteps = sorted.filter(function(x) {\n return !x.key.endsWith(\".5\");\n });\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = sortedExcludingHalfSteps[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var token1 = _step1.value;\n cacheWholeKeys[type].push(token1.key);\n cacheWholeVariables[type].push(token1);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n var isString = typeof current === \"string\";\n var cache = options.excludeHalfSteps ? isString ? cacheWholeKeys : cacheWholeVariables : isString ? cacheKeys : cacheVariables;\n var tokensOrdered = cache[type];\n var _options_bounds_;\n var min = (_options_bounds_ = (_options_bounds = options.bounds) === null || _options_bounds === void 0 ? void 0 : _options_bounds[0]) !== null && _options_bounds_ !== void 0 ? _options_bounds_ : 0;\n var _options_bounds_1;\n var max = (_options_bounds_1 = (_options_bounds1 = options.bounds) === null || _options_bounds1 === void 0 ? void 0 : _options_bounds1[1]) !== null && _options_bounds_1 !== void 0 ? _options_bounds_1 : tokensOrdered.length - 1;\n var currentIndex = tokensOrdered.indexOf(current);\n var shift = options.shift || 0;\n if (shift) {\n if (current === \"$true\" || (0, import_web.isVariable)(current) && current.name === \"true\") {\n shift += shift > 0 ? 1 : -1;\n }\n }\n var index = Math.min(max, Math.max(min, currentIndex + shift));\n var found = tokensOrdered[index];\n var result = (typeof found === \"string\" ? tokens[found] : found) || tokens[\"$true\"];\n return result;\n};\nvar getTokenRelative = stepTokenUpOrDown;\n//# sourceMappingURL=index.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.native.js","names":[],"sources":["cjs/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: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar index_exports = {};\n__export(index_exports, {\n getRadius: () => getRadius,\n getSize: () => getSize,\n getSpace: () => getSpace,\n oneSizeTokenSmaller: () => oneSizeTokenSmaller\n});\nmodule.exports = __toCommonJS(index_exports);\nvar import_size = require(\"@tamagui/size\");\nvar import_web = require(\"@tamagui/web\");\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar resolveToken = function(type, input) {\n var tokens = (0, import_web.getTokens)()[type];\n var resolved = (0, import_size.resolveSizeToken)(input, type);\n if (resolved == null) return resolved;\n if (typeof resolved === \"number\") return resolved;\n var key = (typeof resolved === \"undefined\" ? \"undefined\" : _type_of(resolved)) === \"object\" ? resolved.key : String(resolved);\n var _tokens_key;\n return (_tokens_key = tokens[key]) !== null && _tokens_key !== void 0 ? _tokens_key : resolved;\n};\nvar getSize = function(size) {\n return resolveToken(\"size\", size);\n};\nvar getSpace = function(space) {\n return resolveToken(\"space\", space);\n};\nvar getRadius = function(radius) {\n return resolveToken(\"radius\", radius);\n};\nvar oneSizeTokenSmaller = function(token) {\n var n = Number(String(token));\n if (Number.isNaN(n)) return String(token);\n return `${Math.max(1, Math.round(n) - 1)}`;\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":";;;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,gBAAgB,CAAC;AACrB,SAAS,eAAe;CACtB,iBAAiB;CACjB,eAAe;CACf,gBAAgB;CAChB,2BAA2B;AAC7B,CAAC;AACD,OAAO,UAAU,aAAa,aAAa;AAC3C,IAAI,cAAc,QAAQ,eAAe;AACzC,IAAI,aAAa,QAAQ,cAAc;AACvC,SAAS,SAAS,KAAK;CACrB;CACA,OAAO,OAAO,OAAO,WAAW,eAAe,IAAI,gBAAgB,SAAS,WAAW,OAAO;AAChG;AACA,IAAI,eAAe,SAAS,MAAM,OAAO;CACvC,IAAI,UAAU,GAAG,WAAW,WAAW,EAAE;CACzC,IAAI,YAAY,GAAG,YAAY,kBAAkB,OAAO,IAAI;CAC5D,IAAI,YAAY,MAAM,OAAO;CAC7B,IAAI,OAAO,aAAa,UAAU,OAAO;CACzC,IAAI,OAAO,OAAO,aAAa,cAAc,cAAc,SAAS,QAAQ,OAAO,WAAW,SAAS,MAAM,OAAO,QAAQ;CAC5H,IAAI;CACJ,QAAQ,cAAc,OAAO,UAAU,QAAQ,gBAAgB,KAAK,IAAI,cAAc;AACxF;AACA,IAAI,UAAU,SAAS,MAAM;CAC3B,OAAO,aAAa,QAAQ,IAAI;AAClC;AACA,IAAI,WAAW,SAAS,OAAO;CAC7B,OAAO,aAAa,SAAS,KAAK;AACpC;AACA,IAAI,YAAY,SAAS,QAAQ;CAC/B,OAAO,aAAa,UAAU,MAAM;AACtC;AACA,IAAI,sBAAsB,SAAS,OAAO;CACxC,IAAI,IAAI,OAAO,OAAO,KAAK,CAAC;CAC5B,IAAI,OAAO,MAAM,CAAC,GAAG,OAAO,OAAO,KAAK;CACxC,OAAO,GAAG,KAAK,IAAI,GAAG,KAAK,MAAM,CAAC,IAAI,CAAC;AACzC"}
package/dist/esm/index.js CHANGED
@@ -1,58 +1,22 @@
1
- import { getTokens, isVariable } from "@tamagui/web";
2
- const defaultOptions = {
3
- shift: 0,
4
- bounds: [0]
1
+ import { resolveSizeToken } from "@tamagui/size";
2
+ import { getTokens } from "@tamagui/web";
3
+
4
+ const resolveToken = (type, input) => {
5
+ const tokens = getTokens()[type];
6
+ const resolved = resolveSizeToken(input, type);
7
+ if (resolved == null) return resolved;
8
+ if (typeof resolved === "number") return resolved;
9
+ const key = typeof resolved === "object" ? resolved.key : String(resolved);
10
+ return tokens[key] ?? resolved;
5
11
  };
6
- const getSize = (size, options) => {
7
- return getTokenRelative("size", size, options);
12
+ const getSize = (size) => resolveToken("size", size);
13
+ const getSpace = (space) => resolveToken("space", space);
14
+ const getRadius = (radius) => resolveToken("radius", radius);
15
+ const oneSizeTokenSmaller = (token) => {
16
+ const n = Number(String(token));
17
+ if (Number.isNaN(n)) return String(token);
18
+ return `${Math.max(1, Math.round(n) - 1)}`;
8
19
  };
9
- const getSpace = (space, options) => {
10
- return getTokenRelative("space", space, options);
11
- };
12
- const getRadius = (radius, options) => {
13
- return getTokenRelative("radius", radius, options);
14
- };
15
- const cacheVariables = {};
16
- const cacheWholeVariables = {};
17
- const cacheKeys = {};
18
- const cacheWholeKeys = {};
19
- const stepTokenUpOrDown = (type, current, options = defaultOptions) => {
20
- const tokens = getTokens({
21
- prefixed: true
22
- })[type];
23
- if (!(type in cacheVariables)) {
24
- cacheKeys[type] = [];
25
- cacheVariables[type] = [];
26
- cacheWholeKeys[type] = [];
27
- cacheWholeVariables[type] = [];
28
- const sorted = Object.keys(tokens).map(k => tokens[k]).sort((a, b) => a.val - b.val);
29
- for (const token of sorted) {
30
- cacheKeys[type].push(token.key);
31
- cacheVariables[type].push(token);
32
- }
33
- const sortedExcludingHalfSteps = sorted.filter(x => !x.key.endsWith(".5"));
34
- for (const token of sortedExcludingHalfSteps) {
35
- cacheWholeKeys[type].push(token.key);
36
- cacheWholeVariables[type].push(token);
37
- }
38
- }
39
- const isString = typeof current === "string";
40
- const cache = options.excludeHalfSteps ? isString ? cacheWholeKeys : cacheWholeVariables : isString ? cacheKeys : cacheVariables;
41
- const tokensOrdered = cache[type];
42
- const min = options.bounds?.[0] ?? 0;
43
- const max = options.bounds?.[1] ?? tokensOrdered.length - 1;
44
- const currentIndex = tokensOrdered.indexOf(current);
45
- let shift = options.shift || 0;
46
- if (shift) {
47
- if (current === "$true" || isVariable(current) && current.name === "true") {
48
- shift += shift > 0 ? 1 : -1;
49
- }
50
- }
51
- const index = Math.min(max, Math.max(min, currentIndex + shift));
52
- const found = tokensOrdered[index];
53
- const result = (typeof found === "string" ? tokens[found] : found) || tokens["$true"];
54
- return result;
55
- };
56
- const getTokenRelative = stepTokenUpOrDown;
57
- export { getRadius, getSize, getSpace, getTokenRelative, stepTokenUpOrDown };
20
+
21
+ export { getRadius, getSize, getSpace, oneSizeTokenSmaller };
58
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getTokens","isVariable","defaultOptions","shift","bounds","getSize","size","options","getTokenRelative","getSpace","space","getRadius","radius","cacheVariables","cacheWholeVariables","cacheKeys","cacheWholeKeys","stepTokenUpOrDown","type","current","tokens","prefixed","sorted","Object","keys","map","k","sort","a","b","val","token","push","key","sortedExcludingHalfSteps","filter","x","endsWith","isString","cache","excludeHalfSteps","tokensOrdered","min","max","length","currentIndex","indexOf","name","index","Math","found","result"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["esm/index.js"],"sourcesContent":["import { resolveSizeToken } from \"@tamagui/size\";\nimport { getTokens } from \"@tamagui/web\";\nconst resolveToken = (type, input) => {\n const tokens = getTokens()[type];\n const resolved = resolveSizeToken(input, type);\n if (resolved == null) return resolved;\n if (typeof resolved === \"number\") return resolved;\n const key = typeof resolved === \"object\" ? resolved.key : String(resolved);\n return tokens[key] ?? resolved;\n};\nconst getSize = (size) => resolveToken(\"size\", size);\nconst getSpace = (space) => resolveToken(\"space\", space);\nconst getRadius = (radius) => resolveToken(\"radius\", radius);\nconst oneSizeTokenSmaller = (token) => {\n const n = Number(String(token));\n if (Number.isNaN(n)) return String(token);\n return `${Math.max(1, Math.round(n) - 1)}`;\n};\nexport {\n getRadius,\n getSize,\n getSpace,\n oneSizeTokenSmaller\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":";;;;AAEA,MAAM,gBAAgB,MAAM,UAAU;CACpC,MAAM,SAAS,UAAU,EAAE;CAC3B,MAAM,WAAW,iBAAiB,OAAO,IAAI;CAC7C,IAAI,YAAY,MAAM,OAAO;CAC7B,IAAI,OAAO,aAAa,UAAU,OAAO;CACzC,MAAM,MAAM,OAAO,aAAa,WAAW,SAAS,MAAM,OAAO,QAAQ;CACzE,OAAO,OAAO,QAAQ;AACxB;AACA,MAAM,WAAW,SAAS,aAAa,QAAQ,IAAI;AACnD,MAAM,YAAY,UAAU,aAAa,SAAS,KAAK;AACvD,MAAM,aAAa,WAAW,aAAa,UAAU,MAAM;AAC3D,MAAM,uBAAuB,UAAU;CACrC,MAAM,IAAI,OAAO,OAAO,KAAK,CAAC;CAC9B,IAAI,OAAO,MAAM,CAAC,GAAG,OAAO,OAAO,KAAK;CACxC,OAAO,GAAG,KAAK,IAAI,GAAG,KAAK,MAAM,CAAC,IAAI,CAAC;AACzC"}
@@ -1,58 +1,22 @@
1
- import { getTokens, isVariable } from "@tamagui/web";
2
- const defaultOptions = {
3
- shift: 0,
4
- bounds: [0]
1
+ import { resolveSizeToken } from "@tamagui/size";
2
+ import { getTokens } from "@tamagui/web";
3
+
4
+ const resolveToken = (type, input) => {
5
+ const tokens = getTokens()[type];
6
+ const resolved = resolveSizeToken(input, type);
7
+ if (resolved == null) return resolved;
8
+ if (typeof resolved === "number") return resolved;
9
+ const key = typeof resolved === "object" ? resolved.key : String(resolved);
10
+ return tokens[key] ?? resolved;
5
11
  };
6
- const getSize = (size, options) => {
7
- return getTokenRelative("size", size, options);
12
+ const getSize = (size) => resolveToken("size", size);
13
+ const getSpace = (space) => resolveToken("space", space);
14
+ const getRadius = (radius) => resolveToken("radius", radius);
15
+ const oneSizeTokenSmaller = (token) => {
16
+ const n = Number(String(token));
17
+ if (Number.isNaN(n)) return String(token);
18
+ return `${Math.max(1, Math.round(n) - 1)}`;
8
19
  };
9
- const getSpace = (space, options) => {
10
- return getTokenRelative("space", space, options);
11
- };
12
- const getRadius = (radius, options) => {
13
- return getTokenRelative("radius", radius, options);
14
- };
15
- const cacheVariables = {};
16
- const cacheWholeVariables = {};
17
- const cacheKeys = {};
18
- const cacheWholeKeys = {};
19
- const stepTokenUpOrDown = (type, current, options = defaultOptions) => {
20
- const tokens = getTokens({
21
- prefixed: true
22
- })[type];
23
- if (!(type in cacheVariables)) {
24
- cacheKeys[type] = [];
25
- cacheVariables[type] = [];
26
- cacheWholeKeys[type] = [];
27
- cacheWholeVariables[type] = [];
28
- const sorted = Object.keys(tokens).map(k => tokens[k]).sort((a, b) => a.val - b.val);
29
- for (const token of sorted) {
30
- cacheKeys[type].push(token.key);
31
- cacheVariables[type].push(token);
32
- }
33
- const sortedExcludingHalfSteps = sorted.filter(x => !x.key.endsWith(".5"));
34
- for (const token of sortedExcludingHalfSteps) {
35
- cacheWholeKeys[type].push(token.key);
36
- cacheWholeVariables[type].push(token);
37
- }
38
- }
39
- const isString = typeof current === "string";
40
- const cache = options.excludeHalfSteps ? isString ? cacheWholeKeys : cacheWholeVariables : isString ? cacheKeys : cacheVariables;
41
- const tokensOrdered = cache[type];
42
- const min = options.bounds?.[0] ?? 0;
43
- const max = options.bounds?.[1] ?? tokensOrdered.length - 1;
44
- const currentIndex = tokensOrdered.indexOf(current);
45
- let shift = options.shift || 0;
46
- if (shift) {
47
- if (current === "$true" || isVariable(current) && current.name === "true") {
48
- shift += shift > 0 ? 1 : -1;
49
- }
50
- }
51
- const index = Math.min(max, Math.max(min, currentIndex + shift));
52
- const found = tokensOrdered[index];
53
- const result = (typeof found === "string" ? tokens[found] : found) || tokens["$true"];
54
- return result;
55
- };
56
- const getTokenRelative = stepTokenUpOrDown;
57
- export { getRadius, getSize, getSpace, getTokenRelative, stepTokenUpOrDown };
20
+
21
+ export { getRadius, getSize, getSpace, oneSizeTokenSmaller };
58
22
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["getTokens","isVariable","defaultOptions","shift","bounds","getSize","size","options","getTokenRelative","getSpace","space","getRadius","radius","cacheVariables","cacheWholeVariables","cacheKeys","cacheWholeKeys","stepTokenUpOrDown","type","current","tokens","prefixed","sorted","Object","keys","map","k","sort","a","b","val","token","push","key","sortedExcludingHalfSteps","filter","x","endsWith","isString","cache","excludeHalfSteps","tokensOrdered","min","max","length","currentIndex","indexOf","name","index","Math","found","result"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["esm/index.js"],"sourcesContent":["import { resolveSizeToken } from \"@tamagui/size\";\nimport { getTokens } from \"@tamagui/web\";\nconst resolveToken = (type, input) => {\n const tokens = getTokens()[type];\n const resolved = resolveSizeToken(input, type);\n if (resolved == null) return resolved;\n if (typeof resolved === \"number\") return resolved;\n const key = typeof resolved === \"object\" ? resolved.key : String(resolved);\n return tokens[key] ?? resolved;\n};\nconst getSize = (size) => resolveToken(\"size\", size);\nconst getSpace = (space) => resolveToken(\"space\", space);\nconst getRadius = (radius) => resolveToken(\"radius\", radius);\nconst oneSizeTokenSmaller = (token) => {\n const n = Number(String(token));\n if (Number.isNaN(n)) return String(token);\n return `${Math.max(1, Math.round(n) - 1)}`;\n};\nexport {\n getRadius,\n getSize,\n getSpace,\n oneSizeTokenSmaller\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":";;;;AAEA,MAAM,gBAAgB,MAAM,UAAU;CACpC,MAAM,SAAS,UAAU,EAAE;CAC3B,MAAM,WAAW,iBAAiB,OAAO,IAAI;CAC7C,IAAI,YAAY,MAAM,OAAO;CAC7B,IAAI,OAAO,aAAa,UAAU,OAAO;CACzC,MAAM,MAAM,OAAO,aAAa,WAAW,SAAS,MAAM,OAAO,QAAQ;CACzE,OAAO,OAAO,QAAQ;AACxB;AACA,MAAM,WAAW,SAAS,aAAa,QAAQ,IAAI;AACnD,MAAM,YAAY,UAAU,aAAa,SAAS,KAAK;AACvD,MAAM,aAAa,WAAW,aAAa,UAAU,MAAM;AAC3D,MAAM,uBAAuB,UAAU;CACrC,MAAM,IAAI,OAAO,OAAO,KAAK,CAAC;CAC9B,IAAI,OAAO,MAAM,CAAC,GAAG,OAAO,OAAO,KAAK;CACxC,OAAO,GAAG,KAAK,IAAI,GAAG,KAAK,MAAM,CAAC,IAAI,CAAC;AACzC"}
@@ -1,106 +1,33 @@
1
- import { getTokens, isVariable } from "@tamagui/web";
2
- var defaultOptions = {
3
- shift: 0,
4
- bounds: [0]
1
+ import { resolveSizeToken } from "@tamagui/size";
2
+ import { getTokens } from "@tamagui/web";
3
+
4
+ function _type_of(obj) {
5
+ "@swc/helpers - typeof";
6
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
7
+ }
8
+ var resolveToken = function(type, input) {
9
+ var tokens = getTokens()[type];
10
+ var resolved = resolveSizeToken(input, type);
11
+ if (resolved == null) return resolved;
12
+ if (typeof resolved === "number") return resolved;
13
+ var key = (typeof resolved === "undefined" ? "undefined" : _type_of(resolved)) === "object" ? resolved.key : String(resolved);
14
+ var _tokens_key;
15
+ return (_tokens_key = tokens[key]) !== null && _tokens_key !== void 0 ? _tokens_key : resolved;
5
16
  };
6
- var getSize = function (size, options) {
7
- return getTokenRelative("size", size, options);
17
+ var getSize = function(size) {
18
+ return resolveToken("size", size);
8
19
  };
9
- var getSpace = function (space, options) {
10
- return getTokenRelative("space", space, options);
20
+ var getSpace = function(space) {
21
+ return resolveToken("space", space);
11
22
  };
12
- var getRadius = function (radius, options) {
13
- return getTokenRelative("radius", radius, options);
23
+ var getRadius = function(radius) {
24
+ return resolveToken("radius", radius);
14
25
  };
15
- var cacheVariables = {};
16
- var cacheWholeVariables = {};
17
- var cacheKeys = {};
18
- var cacheWholeKeys = {};
19
- var stepTokenUpOrDown = function (type, current) {
20
- var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : defaultOptions;
21
- var _options_bounds, _options_bounds1;
22
- var tokens = getTokens({
23
- prefixed: true
24
- })[type];
25
- if (!(type in cacheVariables)) {
26
- cacheKeys[type] = [];
27
- cacheVariables[type] = [];
28
- cacheWholeKeys[type] = [];
29
- cacheWholeVariables[type] = [];
30
- var sorted = Object.keys(tokens).map(function (k) {
31
- return tokens[k];
32
- }).sort(function (a, b) {
33
- return a.val - b.val;
34
- });
35
- var _iteratorNormalCompletion = true,
36
- _didIteratorError = false,
37
- _iteratorError = void 0;
38
- try {
39
- for (var _iterator = sorted[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
40
- var token = _step.value;
41
- cacheKeys[type].push(token.key);
42
- cacheVariables[type].push(token);
43
- }
44
- } catch (err) {
45
- _didIteratorError = true;
46
- _iteratorError = err;
47
- } finally {
48
- try {
49
- if (!_iteratorNormalCompletion && _iterator.return != null) {
50
- _iterator.return();
51
- }
52
- } finally {
53
- if (_didIteratorError) {
54
- throw _iteratorError;
55
- }
56
- }
57
- }
58
- var sortedExcludingHalfSteps = sorted.filter(function (x) {
59
- return !x.key.endsWith(".5");
60
- });
61
- var _iteratorNormalCompletion1 = true,
62
- _didIteratorError1 = false,
63
- _iteratorError1 = void 0;
64
- try {
65
- for (var _iterator1 = sortedExcludingHalfSteps[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
66
- var token1 = _step1.value;
67
- cacheWholeKeys[type].push(token1.key);
68
- cacheWholeVariables[type].push(token1);
69
- }
70
- } catch (err) {
71
- _didIteratorError1 = true;
72
- _iteratorError1 = err;
73
- } finally {
74
- try {
75
- if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
76
- _iterator1.return();
77
- }
78
- } finally {
79
- if (_didIteratorError1) {
80
- throw _iteratorError1;
81
- }
82
- }
83
- }
84
- }
85
- var isString = typeof current === "string";
86
- var cache = options.excludeHalfSteps ? isString ? cacheWholeKeys : cacheWholeVariables : isString ? cacheKeys : cacheVariables;
87
- var tokensOrdered = cache[type];
88
- var _options_bounds_;
89
- var min = (_options_bounds_ = (_options_bounds = options.bounds) === null || _options_bounds === void 0 ? void 0 : _options_bounds[0]) !== null && _options_bounds_ !== void 0 ? _options_bounds_ : 0;
90
- var _options_bounds_1;
91
- var max = (_options_bounds_1 = (_options_bounds1 = options.bounds) === null || _options_bounds1 === void 0 ? void 0 : _options_bounds1[1]) !== null && _options_bounds_1 !== void 0 ? _options_bounds_1 : tokensOrdered.length - 1;
92
- var currentIndex = tokensOrdered.indexOf(current);
93
- var shift = options.shift || 0;
94
- if (shift) {
95
- if (current === "$true" || isVariable(current) && current.name === "true") {
96
- shift += shift > 0 ? 1 : -1;
97
- }
98
- }
99
- var index = Math.min(max, Math.max(min, currentIndex + shift));
100
- var found = tokensOrdered[index];
101
- var result = (typeof found === "string" ? tokens[found] : found) || tokens["$true"];
102
- return result;
26
+ var oneSizeTokenSmaller = function(token) {
27
+ var n = Number(String(token));
28
+ if (Number.isNaN(n)) return String(token);
29
+ return `${Math.max(1, Math.round(n) - 1)}`;
103
30
  };
104
- var getTokenRelative = stepTokenUpOrDown;
105
- export { getRadius, getSize, getSpace, getTokenRelative, stepTokenUpOrDown };
31
+
32
+ export { getRadius, getSize, getSpace, oneSizeTokenSmaller };
106
33
  //# sourceMappingURL=index.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getTokens","isVariable","defaultOptions","shift","bounds","getSize","size","options","getTokenRelative","getSpace","space","getRadius","radius","cacheVariables","cacheWholeVariables","cacheKeys","cacheWholeKeys","stepTokenUpOrDown","type","current","arguments","length","_options_bounds","_options_bounds1","tokens","prefixed","sorted","Object","keys","map","k","sort","a","b","val","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","token","value","push","key","err","return"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAA,EAAWC,UAAA,QAAkB;AAWtC,IAAAC,cAAM;EACJC,KAAA,EAAO;EACPC,MAAA,EAAQ,CACV;AAGE;AACF,IAAAC,OAAA,YAAAA,CAAAC,IAAA,EAAAC,OAAA;EAEO,OAAMC,gBAAiC,SAAAF,IAA8B,EAAAC,OAAA;AAC1E;AACF,IAAAE,QAAA,YAAAA,CAAAC,KAAA,EAAAH,OAAA;EAEO,OAAMC,gBAAa,QAAsB,EAAAE,KAA8B,EAAAH,OAAA;AAC5E;AACF,IAAAI,SAAA,YAAAA,CAAAC,MAAA,EAAAL,OAAA;EAEA,OAAMC,gBAA8C,WAAAI,MAAA,EAAAL,OAAA;AACpD;AACA,IAAAM,cAA4C,GAAC;AAC7C,IAAAC,mBAAiD,GAAC;AAG3C,IAAAC,SAAM;AAKX,IAAAC,cAAe;AAEf,IAAAC,iBAAc,YAAAA,CAAiBC,IAAA,EAAAC,OAAA;EAC7B,IAAAZ,OAAA,GAAUa,SAAS,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA,MAAAlB,cAAA;EACnB,IAAAoB,eAAe,EAAIC,gBAAK;EACxB,IAAAC,MAAA,GAAAxB,SAAmB;IACnByB,QAAA;EAEA,GAAAP,IAAA,CAAM;EAIN,MAAAA,IAAA,IAAWL,cAAS,GAAQ;IAC1BE,SAAA,CAAAG,IAAU,IAAM;IAChBL,cAAA,CAAAK,IAAe,IAAM;IACvBF,cAAA,CAAAE,IAAA;IAEAJ,mBAAM,CAAAI,IAAA;IACN,IAAAQ,MAAA,GAAWC,MAAA,CAASC,IAAA,CAAAJ,MAAA,EAAAK,GAAA,WAA0BC,CAAA;MAC5C,OAAAN,MAAA,CAAAM,CAAe;IACf,GAAAC,IAAA,WAAAC,CAAA,EAAAC,CAAA,EAAoB;MACtB,OAAAD,CAAA,CAAAE,GAAA,GAAAD,CAAA,CAAAC,GAAA;IACF;IAEA,IAAMC,yBAAkB,OAAY;MAAAC,iBAAA;MAAAC,cAAA;IACpC,IAAM;MAQN,KAAM,IAAAC,SAAgB,GAAAZ,MAAM,CAAIa,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;QAE1B,IAAAS,KAAM,GAAAH,KAAQ,CAAAI,KAAS;QACvB9B,SAAM,CAAAG,IAAQ,EAAA4B,IAAA,CAAAF,KAAU,CAAAG,GAAK;QAC7BlC,cAAA,CAAeK,IAAA,EAAA4B,IAAA,CAAAF,KAAc;MAE/B;IACJ,EAAI,OAAOI,GAAA;MACTZ,iBAAgB;MACdC,cAAS,GAAQW,GAAA;IACnB;MACF;QAEM,KAAAb,yBAA2B,IAAIG,SAAK,CAAAW,MAAA,IAAe,IAAM;UACzDX,SAAQ,CAAAW,MAAA;QAER;MAKN,UAAO;QACT,IAAAb,iBAAA;UAEa,MAAAC,cAAmB","ignoreList":[]}
1
+ {"version":3,"file":"index.native.js","names":[],"sources":["esm/index.native.js"],"sourcesContent":["import { resolveSizeToken } from \"@tamagui/size\";\nimport { getTokens } from \"@tamagui/web\";\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar resolveToken = function(type, input) {\n var tokens = getTokens()[type];\n var resolved = resolveSizeToken(input, type);\n if (resolved == null) return resolved;\n if (typeof resolved === \"number\") return resolved;\n var key = (typeof resolved === \"undefined\" ? \"undefined\" : _type_of(resolved)) === \"object\" ? resolved.key : String(resolved);\n var _tokens_key;\n return (_tokens_key = tokens[key]) !== null && _tokens_key !== void 0 ? _tokens_key : resolved;\n};\nvar getSize = function(size) {\n return resolveToken(\"size\", size);\n};\nvar getSpace = function(space) {\n return resolveToken(\"space\", space);\n};\nvar getRadius = function(radius) {\n return resolveToken(\"radius\", radius);\n};\nvar oneSizeTokenSmaller = function(token) {\n var n = Number(String(token));\n if (Number.isNaN(n)) return String(token);\n return `${Math.max(1, Math.round(n) - 1)}`;\n};\nexport {\n getRadius,\n getSize,\n getSpace,\n oneSizeTokenSmaller\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":";;;;AAEA,SAAS,SAAS,KAAK;CACrB;CACA,OAAO,OAAO,OAAO,WAAW,eAAe,IAAI,gBAAgB,SAAS,WAAW,OAAO;AAChG;AACA,IAAI,eAAe,SAAS,MAAM,OAAO;CACvC,IAAI,SAAS,UAAU,EAAE;CACzB,IAAI,WAAW,iBAAiB,OAAO,IAAI;CAC3C,IAAI,YAAY,MAAM,OAAO;CAC7B,IAAI,OAAO,aAAa,UAAU,OAAO;CACzC,IAAI,OAAO,OAAO,aAAa,cAAc,cAAc,SAAS,QAAQ,OAAO,WAAW,SAAS,MAAM,OAAO,QAAQ;CAC5H,IAAI;CACJ,QAAQ,cAAc,OAAO,UAAU,QAAQ,gBAAgB,KAAK,IAAI,cAAc;AACxF;AACA,IAAI,UAAU,SAAS,MAAM;CAC3B,OAAO,aAAa,QAAQ,IAAI;AAClC;AACA,IAAI,WAAW,SAAS,OAAO;CAC7B,OAAO,aAAa,SAAS,KAAK;AACpC;AACA,IAAI,YAAY,SAAS,QAAQ;CAC/B,OAAO,aAAa,UAAU,MAAM;AACtC;AACA,IAAI,sBAAsB,SAAS,OAAO;CACxC,IAAI,IAAI,OAAO,OAAO,KAAK,CAAC;CAC5B,IAAI,OAAO,MAAM,CAAC,GAAG,OAAO,OAAO,KAAK;CACxC,OAAO,GAAG,KAAK,IAAI,GAAG,KAAK,MAAM,CAAC,IAAI,CAAC;AACzC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/get-token",
3
- "version": "2.7.7",
3
+ "version": "3.0.0-beta.643.1",
4
4
  "gitHead": "a49cc7ea6b93ba384e77a4880ae48ac4a5635c14",
5
5
  "files": [
6
6
  "src",
@@ -34,10 +34,11 @@
34
34
  "clean:build": "tamagui-build clean:build"
35
35
  },
36
36
  "dependencies": {
37
- "@tamagui/web": "2.7.7"
37
+ "@tamagui/size": "3.0.0-beta.643.1",
38
+ "@tamagui/web": "3.0.0-beta.643.1"
38
39
  },
39
40
  "devDependencies": {
40
- "@tamagui/build": "2.7.7",
41
+ "@tamagui/build": "3.0.0-beta.643.1",
41
42
  "react": ">=19"
42
43
  },
43
44
  "peerDependencies": {
package/src/index.ts CHANGED
@@ -1,98 +1,36 @@
1
1
  import type { Variable, VariableValGeneric } from '@tamagui/web'
2
- import { getTokens, isVariable } from '@tamagui/web'
2
+ import { resolveSizeToken } from '@tamagui/size'
3
+ import { getTokens } from '@tamagui/web'
3
4
 
4
5
  // technically number | undefined just for compat with the generic VariableVal
5
- type GetTokenBase = Variable | string | number | undefined | VariableValGeneric
6
-
7
- type GetTokenOptions = {
8
- shift?: number
9
- bounds?: [number] | [number, number]
10
- excludeHalfSteps?: boolean
11
- }
12
-
13
- const defaultOptions: GetTokenOptions = {
14
- shift: 0,
15
- bounds: [0],
16
- }
17
-
18
- export const getSize = (size: GetTokenBase, options?: GetTokenOptions) => {
19
- return getTokenRelative('size', size, options)
20
- }
21
-
22
- export const getSpace = (space: GetTokenBase, options?: GetTokenOptions) => {
23
- return getTokenRelative('space', space, options)
24
- }
25
-
26
- export const getRadius = (radius: GetTokenBase, options?: GetTokenOptions) => {
27
- return getTokenRelative('radius', radius, options)
28
- }
29
-
30
- const cacheVariables: Record<string, Variable[]> = {}
31
- const cacheWholeVariables: Record<string, Variable[]> = {}
32
- const cacheKeys: Record<string, string[]> = {}
33
- const cacheWholeKeys: Record<string, string[]> = {}
34
-
35
- /** @deprecated use getSize, getSpace, or getTokenRelative instead */
36
- export const stepTokenUpOrDown = (
37
- type: 'size' | 'space' | 'zIndex' | 'radius',
38
- current: GetTokenBase,
39
- options: GetTokenOptions = defaultOptions
6
+ type GetTokenBase = Variable | string | number | boolean | undefined | VariableValGeneric
7
+
8
+ // trivial same-key token resolver: token in, Variable out.
9
+ // resolves `true` through the opt-in size policy, looks the key up in the
10
+ // requested scale, and passes through numbers / unknown keys unchanged.
11
+ const resolveToken = (
12
+ type: 'size' | 'space' | 'radius',
13
+ input: GetTokenBase
40
14
  ): Variable<number> => {
41
- const tokens = getTokens({ prefixed: true })[type] as Record<string, Variable>
42
-
43
- if (!(type in cacheVariables)) {
44
- cacheKeys[type] = []
45
- cacheVariables[type] = []
46
- cacheWholeKeys[type] = []
47
- cacheWholeVariables[type] = []
48
-
49
- const sorted = Object.keys(tokens)
50
- .map((k) => tokens[k])
51
- .sort((a, b) => a.val - b.val)
52
-
53
- for (const token of sorted) {
54
- cacheKeys[type].push(token.key)
55
- cacheVariables[type].push(token)
56
- }
57
-
58
- const sortedExcludingHalfSteps = sorted.filter((x) => !x.key.endsWith('.5'))
59
- for (const token of sortedExcludingHalfSteps) {
60
- cacheWholeKeys[type].push(token.key)
61
- cacheWholeVariables[type].push(token)
62
- }
63
- }
64
-
65
- const isString = typeof current === 'string'
66
- const cache = options.excludeHalfSteps
67
- ? isString
68
- ? cacheWholeKeys
69
- : cacheWholeVariables
70
- : isString
71
- ? cacheKeys
72
- : cacheVariables
73
-
74
- const tokensOrdered = cache[type]
75
-
76
- const min = options.bounds?.[0] ?? 0
77
- const max = options.bounds?.[1] ?? tokensOrdered.length - 1
78
- const currentIndex = tokensOrdered.indexOf(current as any)
79
-
80
- let shift = options.shift || 0
81
- if (shift) {
82
- if (current === '$true' || (isVariable(current) && current.name === 'true')) {
83
- shift += shift > 0 ? 1 : -1
84
- }
85
- }
15
+ const tokens = getTokens()[type] as Record<string, Variable>
16
+ const resolved = resolveSizeToken(input, type)
17
+ if (resolved == null) return resolved as any
18
+ if (typeof resolved === 'number') return resolved as any
19
+ const key = typeof resolved === 'object' ? (resolved as Variable).key : String(resolved)
20
+ return (tokens[key] ?? resolved) as any
21
+ }
86
22
 
87
- const index = Math.min(max, Math.max(min, currentIndex + shift))
88
- const found = tokensOrdered[index]
23
+ export const getSize = (size: GetTokenBase) => resolveToken('size', size)
89
24
 
90
- const result = (typeof found === 'string' ? tokens[found] : found) || tokens['$true']
25
+ export const getSpace = (space: GetTokenBase) => resolveToken('space', space)
91
26
 
92
- // console.log('found', { current, shift, index, found, result })
27
+ export const getRadius = (radius: GetTokenBase) => resolveToken('radius', radius)
93
28
 
94
- // @ts-ignore
95
- return result
29
+ // returns the token key one whole step smaller (e.g. `4` -> `3`), clamped at
30
+ // `1`. used where a component wants a slightly smaller size/font token (list
31
+ // item subtitle, tooltip default size) without stepping through a sorted scale.
32
+ export const oneSizeTokenSmaller = (token: GetTokenBase): string => {
33
+ const n = Number(String(token))
34
+ if (Number.isNaN(n)) return String(token)
35
+ return `${Math.max(1, Math.round(n) - 1)}`
96
36
  }
97
-
98
- export const getTokenRelative = stepTokenUpOrDown
package/types/index.d.ts CHANGED
@@ -1,15 +1,8 @@
1
1
  import type { Variable, VariableValGeneric } from '@tamagui/web';
2
- type GetTokenBase = Variable | string | number | undefined | VariableValGeneric;
3
- type GetTokenOptions = {
4
- shift?: number;
5
- bounds?: [number] | [number, number];
6
- excludeHalfSteps?: boolean;
7
- };
8
- export declare const getSize: (size: GetTokenBase, options?: GetTokenOptions) => Variable<number>;
9
- export declare const getSpace: (space: GetTokenBase, options?: GetTokenOptions) => Variable<number>;
10
- export declare const getRadius: (radius: GetTokenBase, options?: GetTokenOptions) => Variable<number>;
11
- /** @deprecated use getSize, getSpace, or getTokenRelative instead */
12
- export declare const stepTokenUpOrDown: (type: "size" | "space" | "zIndex" | "radius", current: GetTokenBase, options?: GetTokenOptions) => Variable<number>;
13
- export declare const getTokenRelative: (type: "size" | "space" | "zIndex" | "radius", current: GetTokenBase, options?: GetTokenOptions) => Variable<number>;
2
+ type GetTokenBase = Variable | string | number | boolean | undefined | VariableValGeneric;
3
+ export declare const getSize: (size: GetTokenBase) => Variable<number>;
4
+ export declare const getSpace: (space: GetTokenBase) => Variable<number>;
5
+ export declare const getRadius: (radius: GetTokenBase) => Variable<number>;
6
+ export declare const oneSizeTokenSmaller: (token: GetTokenBase) => string;
14
7
  export {};
15
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAIhE,KAAK,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,kBAAkB,CAAA;AAE/E,KAAK,eAAe,GAAG;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAOD,eAAO,MAAM,OAAO,GAAI,MAAM,YAAY,EAAE,UAAU,eAAe,qBAEpE,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,OAAO,YAAY,EAAE,UAAU,eAAe,qBAEtE,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,QAAQ,YAAY,EAAE,UAAU,eAAe,qBAExE,CAAA;AAOD,qEAAqE;AACrE,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,EAC5C,SAAS,YAAY,EACrB,UAAS,eAAgC,KACxC,QAAQ,CAAC,MAAM,CAwDjB,CAAA;AAED,eAAO,MAAM,gBAAgB,SA7DrB,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,WACnC,YAAY,YACZ,eAAe,KACvB,QAAQ,CAAC,MAAM,CA0D+B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAKhE,KAAK,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,kBAAkB,CAAA;AAiBzF,eAAO,MAAM,OAAO,SAAU,YAAY,qBAA+B,CAAA;AAEzE,eAAO,MAAM,QAAQ,UAAW,YAAY,qBAAiC,CAAA;AAE7E,eAAO,MAAM,SAAS,WAAY,YAAY,qBAAmC,CAAA;AAKjF,eAAO,MAAM,mBAAmB,UAAW,YAAY,KAAG,MAIzD,CAAA"}