@tamagui/core 1.0.0-alpha.4 → 1.0.0-alpha.8

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.
Files changed (225) hide show
  1. package/dist/cjs/constants/constants.js +50 -0
  2. package/{_ → dist/cjs}/constants/constants.js.map +2 -2
  3. package/dist/cjs/constants/platform.js +43 -0
  4. package/dist/cjs/constants/platform.js.map +7 -0
  5. package/dist/cjs/constants/pseudos.js +25 -0
  6. package/{_ → dist/cjs}/constants/pseudos.js.map +2 -2
  7. package/{_ → dist/cjs}/constants/rnw.js +9 -3
  8. package/{_ → dist/cjs}/constants/rnw.js.map +2 -2
  9. package/dist/cjs/createComponent.js +531 -0
  10. package/dist/cjs/createComponent.js.map +7 -0
  11. package/dist/cjs/createFont.js +50 -0
  12. package/dist/cjs/createFont.js.map +7 -0
  13. package/{_ → dist/cjs}/createShorthands.js +9 -3
  14. package/{_ → dist/cjs}/createShorthands.js.map +2 -2
  15. package/dist/cjs/createTamagui.js +206 -0
  16. package/dist/cjs/createTamagui.js.map +7 -0
  17. package/dist/cjs/createTheme.js +42 -0
  18. package/{_ → dist/cjs}/createTheme.js.map +2 -2
  19. package/dist/cjs/createTokens.js +55 -0
  20. package/dist/cjs/createTokens.js.map +7 -0
  21. package/dist/cjs/createVariable.js +47 -0
  22. package/dist/cjs/createVariable.js.map +7 -0
  23. package/dist/cjs/helpers/addStylesUsingClassname.js +79 -0
  24. package/dist/cjs/helpers/addStylesUsingClassname.js.map +7 -0
  25. package/dist/cjs/helpers/createMediaStyle.js +56 -0
  26. package/{_ → dist/cjs}/helpers/createMediaStyle.js.map +2 -2
  27. package/dist/cjs/helpers/createPropMapper.js +190 -0
  28. package/dist/cjs/helpers/createPropMapper.js.map +7 -0
  29. package/dist/cjs/helpers/createTamaguiProvider.js +74 -0
  30. package/dist/cjs/helpers/createTamaguiProvider.js.map +7 -0
  31. package/dist/cjs/helpers/extendStaticConfig.js +82 -0
  32. package/dist/cjs/helpers/extendStaticConfig.js.map +7 -0
  33. package/dist/cjs/helpers/fixNativeShadow.js +14 -0
  34. package/dist/cjs/helpers/fixNativeShadow.js.map +7 -0
  35. package/{_ → dist/cjs}/helpers/fixNativeShadow.native.js +9 -3
  36. package/{_ → dist/cjs}/helpers/fixNativeShadow.native.js.map +2 -2
  37. package/dist/cjs/helpers/getSplitStyles.js +180 -0
  38. package/dist/cjs/helpers/getSplitStyles.js.map +7 -0
  39. package/dist/cjs/helpers/getStylesAtomic.js +117 -0
  40. package/{_ → dist/cjs}/helpers/getStylesAtomic.js.map +2 -2
  41. package/dist/cjs/helpers/getStylesAtomic.native.js +16 -0
  42. package/dist/cjs/helpers/getStylesAtomic.native.js.map +7 -0
  43. package/dist/cjs/helpers/insertStyleRule.js +46 -0
  44. package/{_ → dist/cjs}/helpers/insertStyleRule.js.map +2 -2
  45. package/dist/cjs/helpers/isObj.js +13 -0
  46. package/dist/cjs/helpers/isObj.js.map +7 -0
  47. package/dist/cjs/helpers/isTamaguiElement.js +33 -0
  48. package/dist/cjs/helpers/isTamaguiElement.js.map +7 -0
  49. package/dist/cjs/helpers/matchMedia.js +24 -0
  50. package/dist/cjs/helpers/matchMedia.js.map +7 -0
  51. package/dist/cjs/helpers/matchMedia.native.js +31 -0
  52. package/dist/cjs/helpers/matchMedia.native.js.map +7 -0
  53. package/dist/cjs/helpers/themeable.js +78 -0
  54. package/{_ → dist/cjs}/helpers/themeable.js.map +2 -2
  55. package/dist/cjs/helpers/validate.js +82 -0
  56. package/dist/cjs/helpers/validate.js.map +7 -0
  57. package/dist/cjs/hooks/useConstant.js +37 -0
  58. package/{_ → dist/cjs}/hooks/useConstant.js.map +2 -2
  59. package/dist/cjs/hooks/useFeatures.js +100 -0
  60. package/dist/cjs/hooks/useFeatures.js.map +7 -0
  61. package/{_ → dist/cjs}/hooks/useMedia.js +59 -28
  62. package/dist/cjs/hooks/useMedia.js.map +7 -0
  63. package/dist/cjs/hooks/usePressable.js +50 -0
  64. package/{_ → dist/cjs}/hooks/usePressable.js.map +2 -2
  65. package/dist/cjs/hooks/useTheme.js +111 -0
  66. package/dist/cjs/hooks/useTheme.js.map +7 -0
  67. package/dist/cjs/index.js +55 -0
  68. package/dist/cjs/index.js.map +7 -0
  69. package/dist/cjs/static/postProcessStyles.js +40 -0
  70. package/{_ → dist/cjs}/static/postProcessStyles.js.map +2 -2
  71. package/dist/cjs/static.js +34 -0
  72. package/dist/cjs/static.js.map +7 -0
  73. package/dist/cjs/styled.js +72 -0
  74. package/dist/cjs/styled.js.map +7 -0
  75. package/dist/cjs/types.js +4 -0
  76. package/dist/cjs/types.js.map +7 -0
  77. package/dist/cjs/views/Animated.js +129 -0
  78. package/{_ → dist/cjs}/views/Animated.js.map +2 -2
  79. package/dist/cjs/views/Stack.js +51 -0
  80. package/{_ → dist/cjs}/views/Stack.js.map +2 -2
  81. package/dist/cjs/views/Text.js +93 -0
  82. package/{_ → dist/cjs}/views/Text.js.map +2 -2
  83. package/dist/cjs/views/TextAncestorContext.js +41 -0
  84. package/{_ → dist/cjs}/views/TextAncestorContext.js.map +2 -2
  85. package/dist/cjs/views/Theme.js +88 -0
  86. package/dist/cjs/views/Theme.js.map +7 -0
  87. package/dist/cjs/views/ThemeContext.js +29 -0
  88. package/{_ → dist/cjs}/views/ThemeContext.js.map +2 -2
  89. package/dist/cjs/views/ThemeInverse.js +48 -0
  90. package/{_ → dist/cjs}/views/ThemeInverse.js.map +3 -3
  91. package/dist/cjs/views/ThemeManagerContext.js +84 -0
  92. package/dist/cjs/views/ThemeManagerContext.js.map +7 -0
  93. package/dist/cjs/views/ThemeProvider.js +67 -0
  94. package/{_ → dist/cjs}/views/ThemeProvider.js.map +2 -2
  95. package/dist/createComponent.js +49 -31
  96. package/dist/createComponent.js.map +2 -2
  97. package/dist/createFont.js +4 -0
  98. package/dist/createFont.js.map +2 -2
  99. package/dist/createTamagui.js +11 -2
  100. package/dist/createTamagui.js.map +2 -2
  101. package/dist/createTokens.js +4 -0
  102. package/dist/createTokens.js.map +2 -2
  103. package/dist/createVariable.js +3 -0
  104. package/dist/createVariable.js.map +2 -2
  105. package/dist/helpers/createPropMapper.js +2 -2
  106. package/dist/helpers/createPropMapper.js.map +1 -1
  107. package/dist/helpers/getSplitStyles.js +13 -23
  108. package/dist/helpers/getSplitStyles.js.map +2 -2
  109. package/dist/helpers/isComponent.js +10 -0
  110. package/dist/helpers/isComponent.js.map +7 -0
  111. package/dist/helpers/isTamaguiComponent.js +10 -0
  112. package/dist/helpers/isTamaguiComponent.js.map +7 -0
  113. package/dist/helpers/isTamaguiElement.js +10 -0
  114. package/dist/helpers/isTamaguiElement.js.map +7 -0
  115. package/dist/helpers/matchMedia.js +3 -0
  116. package/dist/helpers/matchMedia.js.map +2 -2
  117. package/dist/helpers/matchMedia.native.js +1 -0
  118. package/dist/helpers/matchMedia.native.js.map +2 -2
  119. package/dist/helpers/validate.js +60 -0
  120. package/dist/helpers/validate.js.map +7 -0
  121. package/dist/helpers/validateConfig.js +46 -0
  122. package/dist/helpers/validateConfig.js.map +7 -0
  123. package/dist/helpers/validateTokens.js +29 -0
  124. package/dist/helpers/validateTokens.js.map +7 -0
  125. package/dist/hooks/useFeatures.js +39 -51
  126. package/dist/hooks/useFeatures.js.map +2 -2
  127. package/dist/hooks/useMedia.js.map +1 -1
  128. package/dist/hooks/useTheme.js +5 -9
  129. package/dist/hooks/useTheme.js.map +2 -2
  130. package/dist/index.cjs +234 -135
  131. package/dist/index.cjs.map +3 -3
  132. package/dist/index.js +1 -1
  133. package/dist/index.js.map +2 -2
  134. package/dist/views/Theme.js +16 -7
  135. package/dist/views/Theme.js.map +2 -2
  136. package/dist/views/ThemeInverse.js +0 -1
  137. package/dist/views/ThemeInverse.js.map +2 -2
  138. package/dist/views/ThemeManagerContext.js +11 -5
  139. package/dist/views/ThemeManagerContext.js.map +2 -2
  140. package/package.json +18 -12
  141. package/src/createComponent.tsx +55 -40
  142. package/src/createFont.ts +5 -0
  143. package/src/createTamagui.ts +11 -1
  144. package/src/createTokens.ts +6 -1
  145. package/src/createVariable.ts +4 -0
  146. package/src/helpers/createPropMapper.ts +2 -2
  147. package/src/helpers/getSplitStyles.tsx +16 -26
  148. package/src/helpers/isTamaguiElement.tsx +5 -0
  149. package/src/helpers/matchMedia.native.ts +3 -0
  150. package/src/helpers/matchMedia.ts +9 -1
  151. package/src/helpers/validate.ts +59 -0
  152. package/src/hooks/useFeatures.tsx +54 -53
  153. package/src/hooks/useMedia.tsx +1 -1
  154. package/src/hooks/useTheme.tsx +7 -8
  155. package/src/index.ts +1 -1
  156. package/src/types.tsx +3 -2
  157. package/src/views/Theme.tsx +26 -9
  158. package/src/views/ThemeInverse.tsx +0 -1
  159. package/src/views/ThemeManagerContext.tsx +18 -6
  160. package/types.d.ts +10 -8
  161. package/.ultra.cache.json +0 -1
  162. package/_/constants/constants.js +0 -14
  163. package/_/constants/platform.js +0 -20
  164. package/_/constants/platform.js.map +0 -7
  165. package/_/constants/pseudos.js +0 -18
  166. package/_/createComponent.js +0 -427
  167. package/_/createComponent.js.map +0 -7
  168. package/_/createTamagui.js +0 -122
  169. package/_/createTamagui.js.map +0 -7
  170. package/_/createTheme.js +0 -20
  171. package/_/createTokens.js +0 -29
  172. package/_/createTokens.js.map +0 -7
  173. package/_/createVariable.js +0 -22
  174. package/_/createVariable.js.map +0 -7
  175. package/_/helpers/addStylesUsingClassname.js +0 -32
  176. package/_/helpers/addStylesUsingClassname.js.map +0 -7
  177. package/_/helpers/createMediaStyle.js +0 -34
  178. package/_/helpers/createTamaguiProvider.js +0 -42
  179. package/_/helpers/createTamaguiProvider.js.map +0 -7
  180. package/_/helpers/extendStaticConfig.js +0 -176
  181. package/_/helpers/extendStaticConfig.js.map +0 -7
  182. package/_/helpers/fixNativeShadow.js +0 -8
  183. package/_/helpers/fixNativeShadow.js.map +0 -7
  184. package/_/helpers/getSplitStyles.js +0 -160
  185. package/_/helpers/getSplitStyles.js.map +0 -7
  186. package/_/helpers/getStylesAtomic.js +0 -84
  187. package/_/helpers/getStylesAtomic.native.js +0 -10
  188. package/_/helpers/getStylesAtomic.native.js.map +0 -7
  189. package/_/helpers/insertStyleRule.js +0 -24
  190. package/_/helpers/matchMedia.js +0 -15
  191. package/_/helpers/matchMedia.js.map +0 -7
  192. package/_/helpers/matchMedia.native.js +0 -8
  193. package/_/helpers/matchMedia.native.js.map +0 -7
  194. package/_/helpers/themeable.js +0 -26
  195. package/_/hooks/useConstant.js +0 -15
  196. package/_/hooks/useFeatures.js +0 -75
  197. package/_/hooks/useFeatures.js.map +0 -7
  198. package/_/hooks/useForceUpdate.js +0 -28
  199. package/_/hooks/useForceUpdate.js.map +0 -7
  200. package/_/hooks/useMedia.js.map +0 -7
  201. package/_/hooks/usePressable.js +0 -14
  202. package/_/hooks/useTheme.js +0 -94
  203. package/_/hooks/useTheme.js.map +0 -7
  204. package/_/index.js +0 -30
  205. package/_/index.js.map +0 -7
  206. package/_/static/postProcessStyles.js +0 -18
  207. package/_/static.js +0 -12
  208. package/_/static.js.map +0 -7
  209. package/_/styled.js +0 -21
  210. package/_/styled.js.map +0 -7
  211. package/_/types.js +0 -1
  212. package/_/types.js.map +0 -7
  213. package/_/views/Animated.js +0 -79
  214. package/_/views/Stack.js +0 -12
  215. package/_/views/Text.js +0 -60
  216. package/_/views/TextAncestorContext.js +0 -19
  217. package/_/views/Theme.js +0 -57
  218. package/_/views/Theme.js.map +0 -7
  219. package/_/views/ThemeContext.js +0 -6
  220. package/_/views/ThemeInverse.js +0 -27
  221. package/_/views/ThemeManagerContext.js +0 -56
  222. package/_/views/ThemeManagerContext.js.map +0 -7
  223. package/_/views/ThemeProvider.js +0 -45
  224. package/src/views/SafeAreaProvider.tsx +0 -33
  225. package/tsconfig.json +0 -8
@@ -0,0 +1,190 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
+ var __spreadValues = (a, b) => {
11
+ for (var prop in b || (b = {}))
12
+ if (__hasOwnProp.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ if (__getOwnPropSymbols)
15
+ for (var prop of __getOwnPropSymbols(b)) {
16
+ if (__propIsEnum.call(b, prop))
17
+ __defNormalProp(a, prop, b[prop]);
18
+ }
19
+ return a;
20
+ };
21
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
22
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
23
+ var __export = (target, all) => {
24
+ __markAsModule(target);
25
+ for (var name in all)
26
+ __defProp(target, name, { get: all[name], enumerable: true });
27
+ };
28
+ var __reExport = (target, module2, desc) => {
29
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
30
+ for (let key of __getOwnPropNames(module2))
31
+ if (!__hasOwnProp.call(target, key) && key !== "default")
32
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
33
+ }
34
+ return target;
35
+ };
36
+ var __toModule = (module2) => {
37
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
38
+ };
39
+ __export(exports, {
40
+ createPropMapper: () => createPropMapper
41
+ });
42
+ var import_createTamagui = __toModule(require("../createTamagui"));
43
+ var import_createVariable = __toModule(require("../createVariable"));
44
+ var import_isObj = __toModule(require("./isObj"));
45
+ const createPropMapper = /* @__PURE__ */ __name((c) => {
46
+ const variants = c.variants;
47
+ let variantsParsed;
48
+ const defaultProps = c.defaultProps || {};
49
+ return (key, value, theme, props) => {
50
+ const conf = (0, import_createTamagui.getTamagui)();
51
+ if (!conf) {
52
+ console.trace("no conf! err");
53
+ return;
54
+ }
55
+ if (variants && !variantsParsed) {
56
+ variantsParsed = parseVariants(variants, conf);
57
+ }
58
+ let fontFamily = props.fontFamily || defaultProps.fontFamily || "$body";
59
+ const variant = variantsParsed == null ? void 0 : variantsParsed[key];
60
+ if (variant && typeof value !== "undefined") {
61
+ const val = value === true ? variant["$true"] || variant["true"] : variant[value] ?? variant["..."] ?? value;
62
+ const res = typeof val === "function" ? val(value, { tokens: conf.tokensParsed, theme, props }) : (0, import_isObj.isObj)(val) ? __spreadValues({}, val) : val;
63
+ if ((0, import_isObj.isObj)(res)) {
64
+ resolveTokens(res, conf, fontFamily);
65
+ }
66
+ return res;
67
+ }
68
+ let shouldReturn = false;
69
+ if (conf.shorthands[key]) {
70
+ shouldReturn = true;
71
+ key = conf.shorthands[key];
72
+ }
73
+ if (value && value[0] === "$") {
74
+ shouldReturn = true;
75
+ value = getToken(key, value, conf, fontFamily);
76
+ }
77
+ if (value instanceof import_createVariable.Variable) {
78
+ shouldReturn = true;
79
+ value = value.variable;
80
+ }
81
+ if (shouldReturn) {
82
+ return {
83
+ [key]: value
84
+ };
85
+ }
86
+ };
87
+ }, "createPropMapper");
88
+ const resolveTokens = /* @__PURE__ */ __name((res, conf, fontFamily) => {
89
+ for (const rKey in res) {
90
+ const fKey = conf.shorthands[rKey] || rKey;
91
+ const val = res[rKey];
92
+ if (val instanceof import_createVariable.Variable) {
93
+ res[fKey] = val.variable;
94
+ } else if (typeof val === "string") {
95
+ const fVal = val[0] === "$" ? getToken(fKey, val, conf, fontFamily) : val;
96
+ res[fKey] = fVal;
97
+ } else {
98
+ if ((0, import_isObj.isObj)(val)) {
99
+ resolveTokens(val, conf, fontFamily);
100
+ }
101
+ }
102
+ }
103
+ }, "resolveTokens");
104
+ const getToken = /* @__PURE__ */ __name((key, value, { tokensParsed, themeParsed }, fontFamily = "$body") => {
105
+ var _a, _b, _c, _d, _e;
106
+ if (themeParsed[value]) {
107
+ return themeParsed[value].variable;
108
+ }
109
+ let valOrVar;
110
+ if (key === "fontFamily") {
111
+ valOrVar = ((_a = tokensParsed.font[value]) == null ? void 0 : _a.family) || value;
112
+ }
113
+ if (key === "fontSize") {
114
+ valOrVar = ((_b = tokensParsed.font[fontFamily]) == null ? void 0 : _b.size[value]) || value;
115
+ }
116
+ if (key === "lineHeight") {
117
+ valOrVar = ((_c = tokensParsed.font[fontFamily]) == null ? void 0 : _c.lineHeight[value]) || value;
118
+ }
119
+ if (key === "letterSpacing") {
120
+ valOrVar = ((_d = tokensParsed.font[fontFamily]) == null ? void 0 : _d.letterSpacing[value]) || value;
121
+ }
122
+ if (key === "fontWeight") {
123
+ valOrVar = ((_e = tokensParsed.font[fontFamily]) == null ? void 0 : _e.weight[value]) || value;
124
+ }
125
+ if (typeof valOrVar !== "undefined") {
126
+ if (valOrVar instanceof import_createVariable.Variable) {
127
+ return valOrVar.variable;
128
+ } else {
129
+ return valOrVar;
130
+ }
131
+ }
132
+ for (const cat in tokenCategories) {
133
+ if (tokenCategories[cat][key]) {
134
+ const res = tokensParsed[cat][value];
135
+ if (res) {
136
+ return res.variable;
137
+ } else {
138
+ const themeVar = themeParsed[value];
139
+ if (themeVar) {
140
+ return themeVar.variable;
141
+ }
142
+ }
143
+ }
144
+ }
145
+ const spaceVar = tokensParsed.space[value];
146
+ if (spaceVar) {
147
+ return spaceVar.variable;
148
+ }
149
+ return value;
150
+ }, "getToken");
151
+ const tokenCategories = {
152
+ size: {
153
+ width: true,
154
+ height: true,
155
+ minWidth: true,
156
+ minHeight: true,
157
+ maxWidth: true,
158
+ maxHeight: true
159
+ },
160
+ color: {
161
+ color: true,
162
+ backgroundColor: true,
163
+ borderColor: true,
164
+ borderBottomColor: true,
165
+ borderTopColor: true,
166
+ borderLeftColor: true,
167
+ borderRightColor: true
168
+ }
169
+ };
170
+ function parseVariants(variants, conf) {
171
+ return Object.keys(variants).reduce((acc, key) => {
172
+ acc[key] = Object.keys(variants[key]).reduce((vacc, vkey) => {
173
+ const variantVal = variants[key][vkey];
174
+ if (vkey.startsWith("...")) {
175
+ vacc["..."] = variantVal;
176
+ const tokenKey = vkey.slice(3);
177
+ const tokens = conf.tokens[tokenKey];
178
+ for (const tkey in tokens) {
179
+ vacc[`$${tkey}`] = variantVal;
180
+ }
181
+ } else {
182
+ vacc[vkey] = variantVal;
183
+ }
184
+ return vacc;
185
+ }, {});
186
+ return acc;
187
+ }, {});
188
+ }
189
+ __name(parseVariants, "parseVariants");
190
+ //# sourceMappingURL=createPropMapper.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/createPropMapper.ts"],
4
+ "sourcesContent": ["import { getTamagui } from '../createTamagui'\nimport { Variable } from '../createVariable'\nimport { StaticConfig, TamaguiInternalConfig } from '../types'\nimport { isObj } from './isObj'\n\nexport const createPropMapper = (c: StaticConfig) => {\n const variants = c.variants\n let variantsParsed\n const defaultProps = c.defaultProps || {}\n\n return (key: string, value: any, theme: any, props: any) => {\n const conf = getTamagui()\n if (!conf) {\n console.trace('no conf! err')\n return\n }\n if (variants && !variantsParsed) {\n variantsParsed = parseVariants(variants, conf)\n }\n\n // handled here because we need to resolve this off tokens, its the only one-off like this\n let fontFamily = props.fontFamily || defaultProps.fontFamily || '$body'\n\n // expand variants\n const variant = variantsParsed?.[key]\n if (variant && typeof value !== 'undefined') {\n const val =\n value === true\n ? variant['$true'] || variant['true']\n : variant[value] ?? variant['...'] ?? value\n\n const res =\n typeof val === 'function'\n ? val(value, { tokens: conf.tokensParsed, theme, props })\n : isObj(val)\n ? { ...val }\n : val\n\n if (isObj(res)) {\n resolveTokens(res, conf, fontFamily)\n }\n\n return res\n }\n\n let shouldReturn = false\n\n // handle shorthands\n if (conf.shorthands[key]) {\n shouldReturn = true\n key = conf.shorthands[key]\n }\n\n if (value && value[0] === '$') {\n shouldReturn = true\n value = getToken(key, value, conf, fontFamily)\n }\n\n if (value instanceof Variable) {\n shouldReturn = true\n value = value.variable\n }\n\n if (shouldReturn) {\n return {\n [key]: value,\n }\n }\n }\n}\n\nconst resolveTokens = (res: any, conf: TamaguiInternalConfig, fontFamily: any) => {\n for (const rKey in res) {\n const fKey = conf.shorthands[rKey] || rKey\n const val = res[rKey]\n if (val instanceof Variable) {\n res[fKey] = val.variable\n } else if (typeof val === 'string') {\n const fVal = val[0] === '$' ? getToken(fKey, val, conf, fontFamily) : val\n res[fKey] = fVal\n } else {\n if (isObj(val)) {\n // for things like shadowOffset which is a sub-object\n resolveTokens(val, conf, fontFamily)\n }\n // nullish values cant be tokens so need no exrta parsing\n }\n }\n}\n\nconst getToken = (\n key: string,\n value: string,\n { tokensParsed, themeParsed }: TamaguiInternalConfig,\n fontFamily: string | undefined = '$body'\n) => {\n if (themeParsed[value]) {\n return themeParsed[value].variable\n }\n let valOrVar: any\n if (key === 'fontFamily') {\n valOrVar = tokensParsed.font[value]?.family || value\n }\n if (key === 'fontSize') {\n valOrVar = tokensParsed.font[fontFamily]?.size[value] || value\n }\n if (key === 'lineHeight') {\n valOrVar = tokensParsed.font[fontFamily]?.lineHeight[value] || value\n }\n if (key === 'letterSpacing') {\n valOrVar = tokensParsed.font[fontFamily]?.letterSpacing[value] || value\n }\n if (key === 'fontWeight') {\n valOrVar = tokensParsed.font[fontFamily]?.weight[value] || value\n }\n if (typeof valOrVar !== 'undefined') {\n if (valOrVar instanceof Variable) {\n return valOrVar.variable\n } else {\n return valOrVar\n }\n }\n for (const cat in tokenCategories) {\n if (tokenCategories[cat][key]) {\n const res = tokensParsed[cat][value]\n if (res) {\n return res.variable\n } else {\n const themeVar = themeParsed[value]\n if (themeVar) {\n return themeVar.variable\n }\n }\n }\n }\n const spaceVar = tokensParsed.space[value]\n if (spaceVar) {\n return spaceVar.variable\n }\n return value\n}\n\n// just specificy the least costly, all else go to `space` (most keys - we can exclude)\nconst tokenCategories = {\n size: {\n width: true,\n height: true,\n minWidth: true,\n minHeight: true,\n maxWidth: true,\n maxHeight: true,\n },\n color: {\n color: true,\n backgroundColor: true,\n borderColor: true,\n borderBottomColor: true,\n borderTopColor: true,\n borderLeftColor: true,\n borderRightColor: true,\n },\n}\n\n// turns variant spreads into individual lookups\nfunction parseVariants(variants: any, conf: TamaguiInternalConfig) {\n return Object.keys(variants).reduce((acc, key) => {\n acc[key] = Object.keys(variants[key]).reduce((vacc, vkey) => {\n const variantVal = variants[key][vkey]\n if (vkey.startsWith('...')) {\n // set the default one at '...' for easy fallback on non-exact-variant-match\n vacc['...'] = variantVal\n const tokenKey = vkey.slice(3)\n const tokens = conf.tokens[tokenKey]\n for (const tkey in tokens) {\n vacc[`$${tkey}`] = variantVal\n }\n } else {\n vacc[vkey] = variantVal\n }\n return vacc\n }, {})\n return acc\n }, {})\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,74 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
+ var __spreadValues = (a, b) => {
11
+ for (var prop in b || (b = {}))
12
+ if (__hasOwnProp.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ if (__getOwnPropSymbols)
15
+ for (var prop of __getOwnPropSymbols(b)) {
16
+ if (__propIsEnum.call(b, prop))
17
+ __defNormalProp(a, prop, b[prop]);
18
+ }
19
+ return a;
20
+ };
21
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
22
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
23
+ var __objRest = (source, exclude) => {
24
+ var target = {};
25
+ for (var prop in source)
26
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
27
+ target[prop] = source[prop];
28
+ if (source != null && __getOwnPropSymbols)
29
+ for (var prop of __getOwnPropSymbols(source)) {
30
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
31
+ target[prop] = source[prop];
32
+ }
33
+ return target;
34
+ };
35
+ var __export = (target, all) => {
36
+ __markAsModule(target);
37
+ for (var name in all)
38
+ __defProp(target, name, { get: all[name], enumerable: true });
39
+ };
40
+ var __reExport = (target, module2, desc) => {
41
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
42
+ for (let key of __getOwnPropNames(module2))
43
+ if (!__hasOwnProp.call(target, key) && key !== "default")
44
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
45
+ }
46
+ return target;
47
+ };
48
+ var __toModule = (module2) => {
49
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
50
+ };
51
+ __export(exports, {
52
+ createTamaguiProvider: () => createTamaguiProvider
53
+ });
54
+ var React = __toModule(require("react"));
55
+ var import_TextAncestorContext = __toModule(require("../views/TextAncestorContext"));
56
+ var import_ThemeProvider = __toModule(require("../views/ThemeProvider"));
57
+ function createTamaguiProvider(themeProps) {
58
+ return /* @__PURE__ */ __name(function TamaguiProvider(_a) {
59
+ var _b = _a, {
60
+ initialWindowMetrics,
61
+ fallback,
62
+ children
63
+ } = _b, themePropsProvider = __objRest(_b, [
64
+ "initialWindowMetrics",
65
+ "fallback",
66
+ "children"
67
+ ]);
68
+ return /* @__PURE__ */ React.createElement(import_TextAncestorContext.TextAncestorProvider, null, /* @__PURE__ */ React.createElement(import_ThemeProvider.ThemeProvider, __spreadValues(__spreadValues({}, themeProps), themePropsProvider), /* @__PURE__ */ React.createElement(React.Suspense, {
69
+ fallback: fallback || null
70
+ }, children)));
71
+ }, "TamaguiProvider");
72
+ }
73
+ __name(createTamaguiProvider, "createTamaguiProvider");
74
+ //# sourceMappingURL=createTamaguiProvider.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/createTamaguiProvider.tsx"],
4
+ "sourcesContent": ["import * as React from 'react'\n\nimport { TamaguiProviderProps } from '../types'\nimport { TextAncestorProvider } from '../views/TextAncestorContext'\nimport { ThemeProvider, ThemeProviderProps } from '../views/ThemeProvider'\n\nexport function createTamaguiProvider(themeProps: ThemeProviderProps) {\n return function TamaguiProvider({\n initialWindowMetrics,\n fallback,\n children,\n ...themePropsProvider\n }: TamaguiProviderProps) {\n return (\n <TextAncestorProvider>\n <ThemeProvider {...themeProps} {...themePropsProvider}>\n <React.Suspense fallback={fallback || null}>{children}</React.Suspense>\n </ThemeProvider>\n </TextAncestorProvider>\n )\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA,YAAuB;AAGvB,iCAAqC;AACrC,2BAAkD;AAE3C,+BAA+B,YAAgC;AACpE,SAAO,gDAAyB,IAKP;AALO,iBAC9B;AAAA;AAAA,MACA;AAAA,MACA;AAAA,QAH8B,IAI3B,+BAJ2B,IAI3B;AAAA,MAHH;AAAA,MACA;AAAA,MACA;AAAA;AAGA,WACE,oCAAC,iDAAD,MACE,oCAAC,oCAAD,kCAAmB,aAAgB,qBACjC,oCAAC,MAAM,UAAP;AAAA,MAAgB,UAAU,YAAY;AAAA,OAAO;AAAA,KAT9C;AAAA;AADO;",
6
+ "names": []
7
+ }
@@ -0,0 +1,82 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
+ var __spreadValues = (a, b) => {
13
+ for (var prop in b || (b = {}))
14
+ if (__hasOwnProp.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ if (__getOwnPropSymbols)
17
+ for (var prop of __getOwnPropSymbols(b)) {
18
+ if (__propIsEnum.call(b, prop))
19
+ __defNormalProp(a, prop, b[prop]);
20
+ }
21
+ return a;
22
+ };
23
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
25
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
26
+ var __export = (target, all) => {
27
+ __markAsModule(target);
28
+ for (var name in all)
29
+ __defProp(target, name, { get: all[name], enumerable: true });
30
+ };
31
+ var __reExport = (target, module2, desc) => {
32
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
33
+ for (let key of __getOwnPropNames(module2))
34
+ if (!__hasOwnProp.call(target, key) && key !== "default")
35
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
36
+ }
37
+ return target;
38
+ };
39
+ var __toModule = (module2) => {
40
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
41
+ };
42
+ __export(exports, {
43
+ extendStaticConfig: () => extendStaticConfig,
44
+ parseStaticConfig: () => parseStaticConfig
45
+ });
46
+ var import_createPropMapper = __toModule(require("./createPropMapper"));
47
+ function extendStaticConfig(Component, config = {}) {
48
+ const parent = Component || {};
49
+ if (!parent.staticConfig) {
50
+ parent.staticConfig = {
51
+ Component
52
+ };
53
+ }
54
+ const variants = __spreadValues({}, parent.staticConfig.variants);
55
+ if (config.variants) {
56
+ for (const key in config.variants) {
57
+ if (variants[key]) {
58
+ variants[key] = __spreadValues(__spreadValues({}, variants[key]), config.variants[key]);
59
+ } else {
60
+ variants[key] = config.variants[key];
61
+ }
62
+ }
63
+ }
64
+ return parseStaticConfig(__spreadProps(__spreadValues({}, parent.staticConfig), {
65
+ isZStack: config.isZStack || parent.staticConfig.isZStack,
66
+ variants,
67
+ isText: config.isText || parent.staticConfig.isText || false,
68
+ neverFlatten: config.neverFlatten ?? parent.staticConfig.neverFlatten,
69
+ ensureOverriddenProp: config.ensureOverriddenProp ?? parent.staticConfig.ensureOverriddenProp,
70
+ validStyles: config.validStyles ? __spreadValues(__spreadValues({}, parent.staticConfig.validStyles), config.validStyles) : parent.staticConfig.validStyles,
71
+ validPropsExtra: __spreadValues(__spreadValues({}, parent.staticConfig.validPropsExtra), config.validPropsExtra),
72
+ defaultProps: __spreadValues(__spreadValues({}, parent.staticConfig.defaultProps), config.defaultProps)
73
+ }));
74
+ }
75
+ __name(extendStaticConfig, "extendStaticConfig");
76
+ const parseStaticConfig = /* @__PURE__ */ __name((config) => {
77
+ return __spreadProps(__spreadValues({}, config), {
78
+ parsed: true,
79
+ propMapper: (0, import_createPropMapper.createPropMapper)(config)
80
+ });
81
+ }, "parseStaticConfig");
82
+ //# sourceMappingURL=extendStaticConfig.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/extendStaticConfig.ts"],
4
+ "sourcesContent": ["import React from 'react'\n\nimport { StaticComponent, StaticConfig, StaticConfigParsed } from '../types'\nimport { createPropMapper } from './createPropMapper'\n\nexport function extendStaticConfig(\n // can be undefined when loading with @tamagui/fake-react-native\n // could be fixed a bit cleaner\n Component?: StaticComponent | React.Component<any>,\n config: StaticConfig = {}\n): StaticConfigParsed | null {\n const parent = (Component || {}) as any\n if (!parent.staticConfig) {\n // if no static config, we are extending an external component\n parent.staticConfig = {\n Component,\n }\n }\n\n const variants = {\n ...parent.staticConfig.variants,\n }\n\n // merge variants without clobbering previous... can we tho (typed??\n if (config.variants) {\n for (const key in config.variants) {\n if (variants[key]) {\n variants[key] = {\n ...variants[key],\n ...config.variants[key],\n }\n } else {\n variants[key] = config.variants[key]\n }\n }\n }\n\n return parseStaticConfig({\n ...parent.staticConfig,\n isZStack: config.isZStack || parent.staticConfig.isZStack,\n variants,\n isText: config.isText || parent.staticConfig.isText || false,\n neverFlatten: config.neverFlatten ?? parent.staticConfig.neverFlatten,\n ensureOverriddenProp: config.ensureOverriddenProp ?? parent.staticConfig.ensureOverriddenProp,\n validStyles: config.validStyles\n ? {\n ...parent.staticConfig.validStyles,\n ...config.validStyles,\n }\n : parent.staticConfig.validStyles,\n validPropsExtra: {\n ...parent.staticConfig.validPropsExtra,\n ...config.validPropsExtra,\n },\n defaultProps: {\n ...parent.staticConfig.defaultProps,\n ...config.defaultProps,\n },\n })\n}\n\nexport const parseStaticConfig = (config: StaticConfig): StaticConfigParsed => {\n return {\n ...config,\n parsed: true,\n propMapper: createPropMapper(config),\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAGA,8BAAiC;AAE1B,4BAGL,WACA,SAAuB,IACI;AAC3B,QAAM,SAAU,aAAa;AAC7B,MAAI,CAAC,OAAO,cAAc;AAExB,WAAO,eAAe;AAAA,MACpB;AAAA;AAAA;AAIJ,QAAM,WAAW,mBACZ,OAAO,aAAa;AAIzB,MAAI,OAAO,UAAU;AACnB,eAAW,OAAO,OAAO,UAAU;AACjC,UAAI,SAAS,MAAM;AACjB,iBAAS,OAAO,kCACX,SAAS,OACT,OAAO,SAAS;AAAA,aAEhB;AACL,iBAAS,OAAO,OAAO,SAAS;AAAA;AAAA;AAAA;AAKtC,SAAO,kBAAkB,iCACpB,OAAO,eADa;AAAA,IAEvB,UAAU,OAAO,YAAY,OAAO,aAAa;AAAA,IACjD;AAAA,IACA,QAAQ,OAAO,UAAU,OAAO,aAAa,UAAU;AAAA,IACvD,cAAc,OAAO,gBAAgB,OAAO,aAAa;AAAA,IACzD,sBAAsB,OAAO,wBAAwB,OAAO,aAAa;AAAA,IACzE,aAAa,OAAO,cAChB,kCACK,OAAO,aAAa,cACpB,OAAO,eAEZ,OAAO,aAAa;AAAA,IACxB,iBAAiB,kCACZ,OAAO,aAAa,kBACpB,OAAO;AAAA,IAEZ,cAAc,kCACT,OAAO,aAAa,eACpB,OAAO;AAAA;AAAA;AAnDA;AAwDT,MAAM,oBAAoB,wBAAC,WAA6C;AAC7E,SAAO,iCACF,SADE;AAAA,IAEL,QAAQ;AAAA,IACR,YAAY,8CAAiB;AAAA;AAAA,GAJA;",
6
+ "names": []
7
+ }
@@ -0,0 +1,14 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
3
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
+ var __export = (target, all) => {
5
+ __markAsModule(target);
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ __export(exports, {
10
+ fixNativeShadow: () => fixNativeShadow
11
+ });
12
+ const fixNativeShadow = /* @__PURE__ */ __name((a) => {
13
+ }, "fixNativeShadow");
14
+ //# sourceMappingURL=fixNativeShadow.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/fixNativeShadow.tsx"],
4
+ "sourcesContent": ["// only native of course\nexport const fixNativeShadow = (a: any) => {}\n"],
5
+ "mappings": ";;;;;;;;AAAA;AAAA;AAAA;AACO,MAAM,kBAAkB,wBAAC,MAAW;AAAA,GAAZ;",
6
+ "names": []
7
+ }
@@ -1,5 +1,14 @@
1
1
  var __defProp = Object.defineProperty;
2
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
2
3
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
+ var __export = (target, all) => {
5
+ __markAsModule(target);
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ __export(exports, {
10
+ fixNativeShadow: () => fixNativeShadow
11
+ });
3
12
  const matchRgba = /rgba\(\s*([\d\.]{1,})\s*,\s*([\d\.]{1,})\s*,\s*([\d\.]{1,})\s*,\s*([\d\.]{1,})\s*\)$/;
4
13
  function fixNativeShadow(props) {
5
14
  if (props.shadowColor) {
@@ -24,7 +33,4 @@ function fixNativeShadow(props) {
24
33
  }
25
34
  }
26
35
  __name(fixNativeShadow, "fixNativeShadow");
27
- export {
28
- fixNativeShadow
29
- };
30
36
  //# sourceMappingURL=fixNativeShadow.native.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/helpers/fixNativeShadow.native.tsx"],
3
+ "sources": ["../../../src/helpers/fixNativeShadow.native.tsx"],
4
4
  "sourcesContent": ["const matchRgba =\n /rgba\\(\\s*([\\d\\.]{1,})\\s*,\\s*([\\d\\.]{1,})\\s*,\\s*([\\d\\.]{1,})\\s*,\\s*([\\d\\.]{1,})\\s*\\)$/\n\nexport function fixNativeShadow(props: any) {\n if (props.shadowColor) {\n if (!!!('shadowOffset' in props)) {\n // fixes some broken shadows\n props.shadowOffset = {\n width: 0,\n height: 0,\n }\n }\n if (!!!('shadowOpacity' in props)) {\n const c = `${props.shadowColor}`\n // react native has issues sometimes with rgba()\n if (c[0] === 'r' && c[3] === 'a') {\n const [_, r, g, b, a] = c.match(matchRgba) || []\n if (typeof a !== 'string') {\n console.warn('non valid rgba', c)\n return props\n }\n props.shadowColor = `rgb(${r},${g},${b})`\n props.shadowOpacity = +a\n }\n }\n }\n}\n"],
5
- "mappings": ";;AAAA,MAAM,YACJ;AAEK,yBAAyB,OAAY;AAC1C,MAAI,MAAM,aAAa;AACrB,QAAI,CAAC,CAAC,CAAE,mBAAkB,QAAQ;AAEhC,YAAM,eAAe;AAAA,QACnB,OAAO;AAAA,QACP,QAAQ;AAAA;AAAA;AAGZ,QAAI,CAAC,CAAC,CAAE,oBAAmB,QAAQ;AACjC,YAAM,IAAI,GAAG,MAAM;AAEnB,UAAI,EAAE,OAAO,OAAO,EAAE,OAAO,KAAK;AAChC,cAAM,CAAC,GAAG,GAAG,GAAG,GAAG,KAAK,EAAE,MAAM,cAAc;AAC9C,YAAI,OAAO,MAAM,UAAU;AACzB,kBAAQ,KAAK,kBAAkB;AAC/B,iBAAO;AAAA;AAET,cAAM,cAAc,OAAO,KAAK,KAAK;AACrC,cAAM,gBAAgB,CAAC;AAAA;AAAA;AAAA;AAAA;AAnBf;",
5
+ "mappings": ";;;;;;;;AAAA;AAAA;AAAA;AAAA,MAAM,YACJ;AAEK,yBAAyB,OAAY;AAC1C,MAAI,MAAM,aAAa;AACrB,QAAI,CAAC,CAAC,CAAE,mBAAkB,QAAQ;AAEhC,YAAM,eAAe;AAAA,QACnB,OAAO;AAAA,QACP,QAAQ;AAAA;AAAA;AAGZ,QAAI,CAAC,CAAC,CAAE,oBAAmB,QAAQ;AACjC,YAAM,IAAI,GAAG,MAAM;AAEnB,UAAI,EAAE,OAAO,OAAO,EAAE,OAAO,KAAK;AAChC,cAAM,CAAC,GAAG,GAAG,GAAG,GAAG,KAAK,EAAE,MAAM,cAAc;AAC9C,YAAI,OAAO,MAAM,UAAU;AACzB,kBAAQ,KAAK,kBAAkB;AAC/B,iBAAO;AAAA;AAET,cAAM,cAAc,OAAO,KAAK,KAAK;AACrC,cAAM,gBAAgB,CAAC;AAAA;AAAA;AAAA;AAAA;AAnBf;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,180 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
+ var __spreadValues = (a, b) => {
11
+ for (var prop in b || (b = {}))
12
+ if (__hasOwnProp.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ if (__getOwnPropSymbols)
15
+ for (var prop of __getOwnPropSymbols(b)) {
16
+ if (__propIsEnum.call(b, prop))
17
+ __defNormalProp(a, prop, b[prop]);
18
+ }
19
+ return a;
20
+ };
21
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
22
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
23
+ var __export = (target, all) => {
24
+ __markAsModule(target);
25
+ for (var name in all)
26
+ __defProp(target, name, { get: all[name], enumerable: true });
27
+ };
28
+ var __reExport = (target, module2, desc) => {
29
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
30
+ for (let key of __getOwnPropNames(module2))
31
+ if (!__hasOwnProp.call(target, key) && key !== "default")
32
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
33
+ }
34
+ return target;
35
+ };
36
+ var __toModule = (module2) => {
37
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
38
+ };
39
+ __export(exports, {
40
+ getSplitStyles: () => getSplitStyles
41
+ });
42
+ var import_helpers = __toModule(require("@tamagui/helpers"));
43
+ var import_platform = __toModule(require("../constants/platform"));
44
+ var import_useMedia = __toModule(require("../hooks/useMedia"));
45
+ var import_createMediaStyle = __toModule(require("./createMediaStyle"));
46
+ var import_fixNativeShadow = __toModule(require("./fixNativeShadow"));
47
+ var import_getStylesAtomic = __toModule(require("./getStylesAtomic"));
48
+ var import_insertStyleRule = __toModule(require("./insertStyleRule"));
49
+ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, isSplittingDefaultProps) => {
50
+ const validStyleProps = staticConfig.isText ? import_helpers.stylePropsText : import_helpers.validStyles;
51
+ const viewProps = {};
52
+ const style = [];
53
+ let pseudos = null;
54
+ let cur = null;
55
+ let classNames = null;
56
+ for (const keyInit in props) {
57
+ const valInit = props[keyInit];
58
+ if (keyInit[0] === "$") {
59
+ const mediaKey = keyInit.slice(1);
60
+ if (!import_useMedia.mediaQueryConfig[mediaKey]) {
61
+ viewProps[keyInit] = valInit;
62
+ continue;
63
+ }
64
+ const mediaProps = __spreadValues(__spreadValues({}, props), valInit);
65
+ const mediaStyle = getSubStyle(valInit, staticConfig, theme, props);
66
+ if (import_platform.isWeb) {
67
+ const mediaStyles = (0, import_getStylesAtomic.getStylesAtomic)(mediaStyle);
68
+ if (process.env.NODE_ENV === "development") {
69
+ if (props["debug"]) {
70
+ console.log("mediaStyles", keyInit, { mediaProps, mediaStyle, mediaStyles });
71
+ }
72
+ }
73
+ for (const style2 of mediaStyles) {
74
+ const out2 = (0, import_createMediaStyle.createMediaStyle)(style2, mediaKey, import_useMedia.mediaQueryConfig);
75
+ classNames = classNames || [];
76
+ classNames.push(out2.identifier);
77
+ import_helpers.AllRules.add(out2.styleRule);
78
+ (0, import_insertStyleRule.insertStyleRule)(out2.styleRule);
79
+ if (process.env.NODE_ENV === "development" && props["debug"]) {
80
+ console.log("mediaProp", style2.identifier, out2, mediaProps, mediaStyle, mediaStyles);
81
+ }
82
+ }
83
+ } else {
84
+ if (import_useMedia.mediaState[mediaKey]) {
85
+ style.push(mediaStyle);
86
+ }
87
+ }
88
+ continue;
89
+ }
90
+ if (import_helpers.validStylesPseudo[keyInit]) {
91
+ if (!valInit)
92
+ continue;
93
+ pseudos = pseudos || {};
94
+ pseudos[keyInit] = getSubStyle(valInit, staticConfig, theme, props);
95
+ continue;
96
+ }
97
+ const out = staticConfig.propMapper(keyInit, valInit, theme, props);
98
+ const expanded = out === true || !out ? [[keyInit, valInit]] : Object.entries(out);
99
+ for (const [key, val] of expanded) {
100
+ const keyFirstChar = key[0];
101
+ if (key === "style" || keyFirstChar === "_" && key.startsWith("_style")) {
102
+ if (cur) {
103
+ (0, import_fixNativeShadow.fixNativeShadow)(cur);
104
+ style.push(cur);
105
+ cur = null;
106
+ }
107
+ (0, import_fixNativeShadow.fixNativeShadow)(val);
108
+ style.push(val);
109
+ continue;
110
+ }
111
+ if (key === "flex") {
112
+ cur = cur || {};
113
+ Object.assign(cur, {
114
+ flexGrow: val,
115
+ flexShrink: 1
116
+ });
117
+ continue;
118
+ }
119
+ if (!import_platform.isWeb && key === "pointerEvents") {
120
+ viewProps[key] = val;
121
+ continue;
122
+ }
123
+ if (validStyleProps[key]) {
124
+ if (key in import_helpers.stylePropsTransform) {
125
+ cur = cur || {};
126
+ mergeTransform(cur, key, val);
127
+ continue;
128
+ }
129
+ cur = cur || {};
130
+ cur[key] = val;
131
+ continue;
132
+ }
133
+ if (!staticConfig.variants || !(key in staticConfig.variants)) {
134
+ viewProps[key] = val;
135
+ }
136
+ }
137
+ }
138
+ if (cur) {
139
+ (0, import_fixNativeShadow.fixNativeShadow)(cur);
140
+ style.push(cur);
141
+ }
142
+ if (process.env.NODE_ENV === "development") {
143
+ if (props["debug"]) {
144
+ console.log(" \u{1F95A} splitProps:", { props, viewProps, style });
145
+ }
146
+ }
147
+ return {
148
+ viewProps,
149
+ style,
150
+ pseudos,
151
+ classNames
152
+ };
153
+ }, "getSplitStyles");
154
+ const getSubStyle = /* @__PURE__ */ __name((styleIn, staticConfig, theme, props) => {
155
+ const styleOut = {};
156
+ for (const key in styleIn) {
157
+ const val = styleIn[key];
158
+ const out = staticConfig.propMapper(key, val, theme, props);
159
+ const expanded = out === true || !out ? [[key, val]] : Object.entries(out);
160
+ for (const [skey, sval] of expanded) {
161
+ if (skey in import_helpers.stylePropsTransform) {
162
+ mergeTransform(styleOut, skey, sval);
163
+ } else {
164
+ styleOut[skey] = sval;
165
+ }
166
+ }
167
+ }
168
+ (0, import_fixNativeShadow.fixNativeShadow)(styleOut);
169
+ return styleOut;
170
+ }, "getSubStyle");
171
+ const mapTransformKeys = {
172
+ x: "translateX",
173
+ y: "translateY"
174
+ };
175
+ const mergeTransform = /* @__PURE__ */ __name((obj, key, val) => {
176
+ const transform = obj.transform ? Array.isArray(obj.transform) ? obj.transform : [obj.transform] : [];
177
+ transform.push({ [mapTransformKeys[key] || key]: val });
178
+ obj.transform = transform;
179
+ }, "mergeTransform");
180
+ //# sourceMappingURL=getSplitStyles.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/getSplitStyles.tsx"],
4
+ "sourcesContent": ["import {\n AllRules,\n stylePropsText,\n stylePropsTransform,\n validStyles,\n validStylesPseudo,\n} from '@tamagui/helpers'\nimport { ViewStyle } from 'react-native'\n\nimport { isWeb } from '../constants/platform'\nimport { mediaQueryConfig, mediaState } from '../hooks/useMedia'\nimport { StaticConfigParsed, ThemeObject } from '../types'\nimport { createMediaStyle } from './createMediaStyle'\nimport { fixNativeShadow } from './fixNativeShadow'\nimport { getStylesAtomic } from './getStylesAtomic'\nimport { insertStyleRule } from './insertStyleRule'\n\nexport type SplitStyles = ReturnType<typeof getSplitStyles>\n\n// TODO run over this, should be able to cut it down quite a bit\n\nexport const getSplitStyles = (\n props: { [key: string]: any },\n staticConfig: StaticConfigParsed,\n theme: ThemeObject,\n isSplittingDefaultProps?: boolean\n) => {\n const validStyleProps = staticConfig.isText ? stylePropsText : validStyles\n const viewProps: Record<string, any> = {}\n const style: any[] = []\n\n let pseudos: { hoverStyle?: ViewStyle; pressStyle?: ViewStyle } | null = null\n let cur: ViewStyle | null = null\n let classNames: string[] | null = null\n\n for (const keyInit in props) {\n // be sure to sync next few lines below to getSubStyle (*1)\n const valInit = props[keyInit]\n\n // media\n if (keyInit[0] === '$') {\n const mediaKey = keyInit.slice(1)\n\n if (!mediaQueryConfig[mediaKey]) {\n // this isn't a media key, pass through\n viewProps[keyInit] = valInit\n continue\n }\n\n // dont check if media is active, we just apply *all* media styles\n // we combine the media props on top regular props, could proxy this\n // TODO test proxy here instead of merge\n const mediaProps = { ...props, ...valInit }\n // TODO media + hover\n const mediaStyle = getSubStyle(valInit, staticConfig, theme, props)\n\n if (isWeb) {\n const mediaStyles = getStylesAtomic(mediaStyle)\n if (process.env.NODE_ENV === 'development') {\n if (props['debug']) {\n console.log('mediaStyles', keyInit, { mediaProps, mediaStyle, mediaStyles })\n }\n }\n for (const style of mediaStyles) {\n const out = createMediaStyle(style, mediaKey, mediaQueryConfig)\n classNames = classNames || []\n classNames.push(out.identifier)\n AllRules.add(out.styleRule)\n insertStyleRule(out.styleRule)\n if (process.env.NODE_ENV === 'development' && props['debug']) {\n console.log('mediaProp', style.identifier, out, mediaProps, mediaStyle, mediaStyles)\n }\n }\n } else {\n if (mediaState[mediaKey]) {\n style.push(mediaStyle)\n }\n }\n continue\n }\n\n // pseudo\n if (validStylesPseudo[keyInit]) {\n if (!valInit) continue\n pseudos = pseudos || {}\n pseudos[keyInit] = getSubStyle(valInit, staticConfig, theme, props)\n continue\n }\n\n const out = staticConfig.propMapper(keyInit, valInit, theme, props)\n\n const expanded = out === true || !out ? [[keyInit, valInit]] : Object.entries(out)\n\n for (const [key, val] of expanded) {\n // const val = valueMap(valInit) ?? valInit\n const keyFirstChar = key[0]\n if (key === 'style' || (keyFirstChar === '_' && key.startsWith('_style'))) {\n if (cur) {\n // process last\n fixNativeShadow(cur)\n style.push(cur)\n cur = null\n }\n fixNativeShadow(val)\n style.push(val)\n continue\n }\n // expand flex so it merged with flexShrink etc properly\n // TODO this shouldn't be here...\n if (key === 'flex') {\n cur = cur || {}\n // see spec for flex shorthand https://developer.mozilla.org/en-US/docs/Web/CSS/flex\n // TODO this fixed a behavior but need to find / document / test\n Object.assign(cur, {\n flexGrow: val,\n flexShrink: 1,\n })\n continue\n }\n if (!isWeb && key === 'pointerEvents') {\n viewProps[key] = val\n continue\n }\n if (validStyleProps[key]) {\n // transforms\n if (key in stylePropsTransform) {\n cur = cur || {}\n mergeTransform(cur, key, val)\n continue\n }\n cur = cur || {}\n cur[key] = val\n continue\n }\n\n // pass to view props\n if (!staticConfig.variants || !(key in staticConfig.variants)) {\n viewProps[key] = val\n }\n }\n }\n // push last style\n if (cur) {\n fixNativeShadow(cur)\n style.push(cur)\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (props['debug']) {\n console.log(' \uD83E\uDD5A splitProps:', { props, viewProps, style })\n }\n }\n\n return {\n viewProps,\n style,\n pseudos,\n classNames,\n }\n}\n\nconst getSubStyle = (\n styleIn: Object,\n staticConfig: StaticConfigParsed,\n theme: ThemeObject,\n props: any\n): ViewStyle => {\n const styleOut: ViewStyle = {}\n for (const key in styleIn) {\n // be sure to sync next few lines below to loop above (*1)\n const val = styleIn[key]\n const out = staticConfig.propMapper(key, val, theme, props)\n const expanded = out === true || !out ? [[key, val]] : Object.entries(out)\n for (const [skey, sval] of expanded) {\n // const sval = valueMap(valInit)\n if (skey in stylePropsTransform) {\n mergeTransform(styleOut, skey, sval)\n } else {\n styleOut[skey] = sval\n }\n }\n }\n fixNativeShadow(styleOut)\n return styleOut\n}\n\nconst mapTransformKeys = {\n x: 'translateX',\n y: 'translateY',\n}\n\nconst mergeTransform = (obj: ViewStyle, key: string, val: any) => {\n const transform: any[] = obj.transform\n ? Array.isArray(obj.transform)\n ? obj.transform\n : [obj.transform]\n : []\n transform.push({ [mapTransformKeys[key] || key]: val })\n obj.transform = transform\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }