@tamagui/static 1.0.0-beta.8 → 1.0.1-beta.100

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 (244) hide show
  1. package/dist/cjs/extractor/accessSafe.js +0 -2
  2. package/dist/cjs/extractor/accessSafe.js.map +1 -1
  3. package/dist/cjs/extractor/babelParse.js +15 -16
  4. package/dist/cjs/extractor/babelParse.js.map +2 -2
  5. package/dist/cjs/extractor/buildClassName.js +0 -2
  6. package/dist/cjs/extractor/buildClassName.js.map +1 -1
  7. package/dist/cjs/extractor/createEvaluator.js +9 -7
  8. package/dist/cjs/extractor/createEvaluator.js.map +2 -2
  9. package/dist/cjs/extractor/createExtractor.js +318 -145
  10. package/dist/cjs/extractor/createExtractor.js.map +2 -2
  11. package/dist/cjs/extractor/ensureImportingConcat.js +0 -2
  12. package/dist/cjs/extractor/ensureImportingConcat.js.map +1 -1
  13. package/dist/cjs/extractor/evaluateAstNode.js +0 -2
  14. package/dist/cjs/extractor/evaluateAstNode.js.map +1 -1
  15. package/dist/cjs/extractor/extractHelpers.js +11 -16
  16. package/dist/cjs/extractor/extractHelpers.js.map +1 -1
  17. package/dist/cjs/extractor/extractMediaStyle.js +3 -8
  18. package/dist/cjs/extractor/extractMediaStyle.js.map +2 -2
  19. package/dist/cjs/extractor/extractToClassNames.js +27 -42
  20. package/dist/cjs/extractor/extractToClassNames.js.map +2 -2
  21. package/dist/cjs/extractor/findTopmostFunction.js +1 -3
  22. package/dist/cjs/extractor/findTopmostFunction.js.map +1 -1
  23. package/dist/cjs/extractor/generatedUid.js +0 -2
  24. package/dist/cjs/extractor/generatedUid.js.map +1 -1
  25. package/dist/cjs/extractor/getPrefixLogs.js +0 -2
  26. package/dist/cjs/extractor/getPrefixLogs.js.map +1 -1
  27. package/dist/cjs/extractor/getPropValueFromAttributes.js +0 -2
  28. package/dist/cjs/extractor/getPropValueFromAttributes.js.map +1 -1
  29. package/dist/cjs/extractor/getSourceModule.js +0 -2
  30. package/dist/cjs/extractor/getSourceModule.js.map +1 -1
  31. package/dist/cjs/extractor/getStaticBindingsForScope.js +1 -5
  32. package/dist/cjs/extractor/getStaticBindingsForScope.js.map +1 -1
  33. package/dist/cjs/extractor/hoistClassNames.js +0 -3
  34. package/dist/cjs/extractor/hoistClassNames.js.map +1 -1
  35. package/dist/cjs/extractor/literalToAst.js +0 -4
  36. package/dist/cjs/extractor/literalToAst.js.map +1 -1
  37. package/dist/cjs/extractor/loadTamagui.js +43 -10
  38. package/dist/cjs/extractor/loadTamagui.js.map +2 -2
  39. package/dist/cjs/extractor/logLines.js +2 -3
  40. package/dist/cjs/extractor/logLines.js.map +1 -1
  41. package/dist/cjs/extractor/normalizeTernaries.js +0 -2
  42. package/dist/cjs/extractor/normalizeTernaries.js.map +1 -1
  43. package/dist/cjs/extractor/removeUnusedHooks.js +2 -4
  44. package/dist/cjs/extractor/removeUnusedHooks.js.map +1 -1
  45. package/dist/cjs/extractor/timer.js +2 -3
  46. package/dist/cjs/extractor/timer.js.map +1 -1
  47. package/dist/cjs/extractor/validHTMLAttributes.js +51 -0
  48. package/dist/cjs/extractor/validHTMLAttributes.js.map +2 -2
  49. package/dist/cjs/index.js +2 -1
  50. package/dist/cjs/index.js.map +2 -2
  51. package/dist/cjs/types.js.map +1 -1
  52. package/dist/esm/extractor/accessSafe.js +0 -3
  53. package/dist/esm/extractor/accessSafe.js.map +1 -1
  54. package/dist/esm/extractor/babelParse.js +15 -17
  55. package/dist/esm/extractor/babelParse.js.map +2 -2
  56. package/dist/esm/extractor/buildClassName.js +0 -3
  57. package/dist/esm/extractor/buildClassName.js.map +1 -1
  58. package/dist/esm/extractor/createEvaluator.js +9 -8
  59. package/dist/esm/extractor/createEvaluator.js.map +2 -2
  60. package/dist/esm/extractor/createExtractor.js +405 -195
  61. package/dist/esm/extractor/createExtractor.js.map +2 -2
  62. package/dist/esm/extractor/ensureImportingConcat.js +0 -3
  63. package/dist/esm/extractor/ensureImportingConcat.js.map +1 -1
  64. package/dist/esm/extractor/evaluateAstNode.js +0 -3
  65. package/dist/esm/extractor/evaluateAstNode.js.map +1 -1
  66. package/dist/esm/extractor/extractHelpers.js +11 -17
  67. package/dist/esm/extractor/extractHelpers.js.map +1 -1
  68. package/dist/esm/extractor/extractMediaStyle.js +29 -20
  69. package/dist/esm/extractor/extractMediaStyle.js.map +2 -2
  70. package/dist/esm/extractor/extractToClassNames.js +53 -52
  71. package/dist/esm/extractor/extractToClassNames.js.map +2 -2
  72. package/dist/esm/extractor/findTopmostFunction.js +1 -4
  73. package/dist/esm/extractor/findTopmostFunction.js.map +1 -1
  74. package/dist/esm/extractor/generatedUid.js +0 -3
  75. package/dist/esm/extractor/generatedUid.js.map +1 -1
  76. package/dist/esm/extractor/getPrefixLogs.js +1 -5
  77. package/dist/esm/extractor/getPrefixLogs.js.map +1 -1
  78. package/dist/esm/extractor/getPropValueFromAttributes.js +0 -3
  79. package/dist/esm/extractor/getPropValueFromAttributes.js.map +1 -1
  80. package/dist/esm/extractor/getSourceModule.js +0 -3
  81. package/dist/esm/extractor/getSourceModule.js.map +1 -1
  82. package/dist/esm/extractor/getStaticBindingsForScope.js +1 -6
  83. package/dist/esm/extractor/getStaticBindingsForScope.js.map +1 -1
  84. package/dist/esm/extractor/hoistClassNames.js +0 -4
  85. package/dist/esm/extractor/hoistClassNames.js.map +1 -1
  86. package/dist/esm/extractor/literalToAst.js +21 -11
  87. package/dist/esm/extractor/literalToAst.js.map +1 -1
  88. package/dist/esm/extractor/loadTamagui.js +44 -11
  89. package/dist/esm/extractor/loadTamagui.js.map +2 -2
  90. package/dist/esm/extractor/logLines.js +2 -4
  91. package/dist/esm/extractor/logLines.js.map +1 -1
  92. package/dist/esm/extractor/normalizeTernaries.js +35 -9
  93. package/dist/esm/extractor/normalizeTernaries.js.map +1 -1
  94. package/dist/esm/extractor/removeUnusedHooks.js +5 -9
  95. package/dist/esm/extractor/removeUnusedHooks.js.map +1 -1
  96. package/dist/esm/extractor/timer.js +2 -4
  97. package/dist/esm/extractor/timer.js.map +1 -1
  98. package/dist/esm/extractor/validHTMLAttributes.js +50 -0
  99. package/dist/esm/extractor/validHTMLAttributes.js.map +2 -2
  100. package/dist/esm/index.js +2 -1
  101. package/dist/esm/index.js.map +2 -2
  102. package/dist/jsx/constants.js +1 -0
  103. package/dist/jsx/constants.js.map +7 -0
  104. package/dist/jsx/extractor/accessSafe.js +1 -3
  105. package/dist/jsx/extractor/accessSafe.js.map +7 -0
  106. package/dist/jsx/extractor/babelParse.js +16 -17
  107. package/dist/jsx/extractor/babelParse.js.map +7 -0
  108. package/dist/jsx/extractor/buildClassName.js +1 -3
  109. package/dist/jsx/extractor/buildClassName.js.map +7 -0
  110. package/dist/jsx/extractor/createEvaluator.js +10 -8
  111. package/dist/jsx/extractor/createEvaluator.js.map +7 -0
  112. package/dist/jsx/extractor/createExtractor.js +325 -150
  113. package/dist/jsx/extractor/createExtractor.js.map +7 -0
  114. package/dist/jsx/extractor/ensureImportingConcat.js +1 -3
  115. package/dist/jsx/extractor/ensureImportingConcat.js.map +7 -0
  116. package/dist/jsx/extractor/evaluateAstNode.js +1 -3
  117. package/dist/jsx/extractor/evaluateAstNode.js.map +7 -0
  118. package/dist/jsx/extractor/extractHelpers.js +12 -17
  119. package/dist/jsx/extractor/extractHelpers.js.map +7 -0
  120. package/dist/jsx/extractor/extractMediaStyle.js +4 -9
  121. package/dist/jsx/extractor/extractMediaStyle.js.map +7 -0
  122. package/dist/jsx/extractor/extractToClassNames.js +31 -43
  123. package/dist/jsx/extractor/extractToClassNames.js.map +7 -0
  124. package/dist/jsx/extractor/findTopmostFunction.js +2 -4
  125. package/dist/jsx/extractor/findTopmostFunction.js.map +7 -0
  126. package/dist/jsx/extractor/generatedUid.js +1 -3
  127. package/dist/jsx/extractor/generatedUid.js.map +7 -0
  128. package/dist/jsx/extractor/getPrefixLogs.js +1 -3
  129. package/dist/jsx/extractor/getPrefixLogs.js.map +7 -0
  130. package/dist/jsx/extractor/getPropValueFromAttributes.js +1 -3
  131. package/dist/jsx/extractor/getPropValueFromAttributes.js.map +7 -0
  132. package/dist/jsx/extractor/getSourceModule.js +1 -3
  133. package/dist/jsx/extractor/getSourceModule.js.map +7 -0
  134. package/dist/jsx/extractor/getStaticBindingsForScope.js +2 -6
  135. package/dist/jsx/extractor/getStaticBindingsForScope.js.map +7 -0
  136. package/dist/jsx/extractor/hoistClassNames.js +1 -4
  137. package/dist/jsx/extractor/hoistClassNames.js.map +7 -0
  138. package/dist/jsx/extractor/literalToAst.js +1 -5
  139. package/dist/jsx/extractor/literalToAst.js.map +7 -0
  140. package/dist/jsx/extractor/loadTamagui.js +30 -11
  141. package/dist/jsx/extractor/loadTamagui.js.map +7 -0
  142. package/dist/jsx/extractor/logLines.js +3 -4
  143. package/dist/jsx/extractor/logLines.js.map +7 -0
  144. package/dist/jsx/extractor/normalizeTernaries.js +1 -3
  145. package/dist/jsx/extractor/normalizeTernaries.js.map +7 -0
  146. package/dist/jsx/extractor/removeUnusedHooks.js +3 -5
  147. package/dist/jsx/extractor/removeUnusedHooks.js.map +7 -0
  148. package/dist/jsx/extractor/timer.js +3 -4
  149. package/dist/jsx/extractor/timer.js.map +7 -0
  150. package/dist/jsx/extractor/validHTMLAttributes.js +51 -0
  151. package/dist/jsx/extractor/validHTMLAttributes.js.map +7 -0
  152. package/dist/jsx/index.js +3 -1
  153. package/dist/jsx/index.js.map +7 -0
  154. package/dist/jsx/types.js +1 -0
  155. package/dist/jsx/types.js.map +7 -0
  156. package/package.json +27 -19
  157. package/src/constants.ts +13 -0
  158. package/src/extractor/accessSafe.ts +18 -0
  159. package/src/extractor/babelParse.ts +27 -0
  160. package/src/extractor/buildClassName.ts +61 -0
  161. package/src/extractor/createEvaluator.ts +75 -0
  162. package/src/extractor/createExtractor.ts +1928 -0
  163. package/src/extractor/ensureImportingConcat.ts +39 -0
  164. package/src/extractor/evaluateAstNode.ts +121 -0
  165. package/src/extractor/extractHelpers.ts +119 -0
  166. package/src/extractor/extractMediaStyle.ts +192 -0
  167. package/src/extractor/extractToClassNames.ts +393 -0
  168. package/src/extractor/findTopmostFunction.ts +22 -0
  169. package/src/extractor/generatedUid.ts +43 -0
  170. package/src/extractor/getPrefixLogs.ts +6 -0
  171. package/src/extractor/getPropValueFromAttributes.ts +92 -0
  172. package/src/extractor/getSourceModule.ts +101 -0
  173. package/src/extractor/getStaticBindingsForScope.ts +183 -0
  174. package/src/extractor/hoistClassNames.ts +45 -0
  175. package/src/extractor/literalToAst.ts +84 -0
  176. package/src/extractor/loadTamagui.ts +145 -0
  177. package/src/extractor/logLines.ts +16 -0
  178. package/src/extractor/normalizeTernaries.ts +63 -0
  179. package/src/extractor/removeUnusedHooks.ts +76 -0
  180. package/src/extractor/timer.ts +18 -0
  181. package/src/extractor/validHTMLAttributes.ts +99 -0
  182. package/src/index.ts +10 -0
  183. package/src/types.ts +96 -0
  184. package/types/extractor/buildClassName.d.ts +0 -0
  185. package/types/extractor/buildClassName.d.ts.map +0 -0
  186. package/types/extractor/createEvaluator.d.ts +1 -1
  187. package/types/extractor/createEvaluator.d.ts.map +1 -1
  188. package/types/extractor/createExtractor.d.ts +3 -4
  189. package/types/extractor/createExtractor.d.ts.map +1 -1
  190. package/types/extractor/extractHelpers.d.ts +1 -1
  191. package/types/extractor/extractHelpers.d.ts.map +1 -1
  192. package/types/extractor/extractMediaStyle.d.ts +0 -0
  193. package/types/extractor/extractMediaStyle.d.ts.map +1 -1
  194. package/types/extractor/extractToClassNames.d.ts +1 -6
  195. package/types/extractor/extractToClassNames.d.ts.map +1 -1
  196. package/types/extractor/getPrefixLogs.d.ts +0 -0
  197. package/types/extractor/getPrefixLogs.d.ts.map +0 -0
  198. package/types/extractor/loadTamagui.d.ts +10 -4
  199. package/types/extractor/loadTamagui.d.ts.map +1 -1
  200. package/types/extractor/normalizeTernaries.d.ts +0 -0
  201. package/types/extractor/normalizeTernaries.d.ts.map +0 -0
  202. package/types/index.d.ts +2 -1
  203. package/types/index.d.ts.map +1 -1
  204. package/types/types.d.ts +6 -7
  205. package/types/types.d.ts.map +1 -1
  206. package/dist/cjs/patchReactNativeWeb.js +0 -167
  207. package/dist/cjs/patchReactNativeWeb.js.map +0 -7
  208. package/dist/esm/patchReactNativeWeb.js +0 -142
  209. package/dist/esm/patchReactNativeWeb.js.map +0 -7
  210. package/dist/jsx/patchReactNativeWeb.js +0 -141
  211. package/types/constants.d.ts +0 -6
  212. package/types/constants.d.ts.map +0 -1
  213. package/types/extractor/accessSafe.d.ts +0 -3
  214. package/types/extractor/accessSafe.d.ts.map +0 -1
  215. package/types/extractor/babelParse.d.ts +0 -5
  216. package/types/extractor/babelParse.d.ts.map +0 -1
  217. package/types/extractor/ensureImportingConcat.d.ts +0 -4
  218. package/types/extractor/ensureImportingConcat.d.ts.map +0 -1
  219. package/types/extractor/evaluateAstNode.d.ts +0 -3
  220. package/types/extractor/evaluateAstNode.d.ts.map +0 -1
  221. package/types/extractor/findTopmostFunction.d.ts +0 -4
  222. package/types/extractor/findTopmostFunction.d.ts.map +0 -1
  223. package/types/extractor/generatedUid.d.ts +0 -5
  224. package/types/extractor/generatedUid.d.ts.map +0 -1
  225. package/types/extractor/getPropValueFromAttributes.d.ts +0 -3
  226. package/types/extractor/getPropValueFromAttributes.d.ts.map +0 -1
  227. package/types/extractor/getSourceModule.d.ts +0 -16
  228. package/types/extractor/getSourceModule.d.ts.map +0 -1
  229. package/types/extractor/getStaticBindingsForScope.d.ts +0 -4
  230. package/types/extractor/getStaticBindingsForScope.d.ts.map +0 -1
  231. package/types/extractor/hoistClassNames.d.ts +0 -6
  232. package/types/extractor/hoistClassNames.d.ts.map +0 -1
  233. package/types/extractor/literalToAst.d.ts +0 -4
  234. package/types/extractor/literalToAst.d.ts.map +0 -1
  235. package/types/extractor/logLines.d.ts +0 -2
  236. package/types/extractor/logLines.d.ts.map +0 -1
  237. package/types/extractor/removeUnusedHooks.d.ts +0 -3
  238. package/types/extractor/removeUnusedHooks.d.ts.map +0 -1
  239. package/types/extractor/timer.d.ts +0 -5
  240. package/types/extractor/timer.d.ts.map +0 -1
  241. package/types/extractor/validHTMLAttributes.d.ts +0 -49
  242. package/types/extractor/validHTMLAttributes.d.ts.map +0 -1
  243. package/types/patchReactNativeWeb.d.ts +0 -2
  244. package/types/patchReactNativeWeb.d.ts.map +0 -1
@@ -0,0 +1,99 @@
1
+ export const validHTMLAttributes = {
2
+ autocomplete: true,
3
+ border: true,
4
+ contenteditable: true,
5
+ crossorigin: true,
6
+ dir: true,
7
+ draggable: true,
8
+ enctype: true,
9
+ formenctype: true,
10
+ formmethod: true,
11
+ formtarget: true,
12
+ inputmode: true,
13
+ kind: true,
14
+ link: true,
15
+ method: true,
16
+ preload: true,
17
+ referrerpolicy: true,
18
+ rel: true,
19
+ rev: true,
20
+ role: true,
21
+ sandbox: true,
22
+ shape: true,
23
+ spellcheck: true,
24
+ target: true,
25
+ translate: true,
26
+ type: true,
27
+ wrap: true,
28
+ 'aria-autocomplete': true,
29
+ 'aria-busy': true,
30
+ 'aria-checked': true,
31
+ 'aria-current': true,
32
+ 'aria-disabled': true,
33
+ 'aria-expanded': true,
34
+ 'aria-haspopup': true,
35
+ 'aria-hidden': true,
36
+ 'aria-invalid': true,
37
+ 'aria-polite': true,
38
+ 'aria-modal': true,
39
+ 'aria-multiline': true,
40
+ 'aria-multiselectable': true,
41
+ 'aria-orientation': true,
42
+ 'aria-pressed': true,
43
+ 'aria-readonly': true,
44
+ 'aria-relevant': true,
45
+ 'aria-required': true,
46
+ 'aria-selected': true,
47
+ 'aria-sort': true,
48
+ }
49
+
50
+ // for moving off react-native-web eventually (unused atm)
51
+ export const validAccessibilityAttributes = {
52
+ accessibilityRole: true,
53
+ accessibilityActiveDescendant: true,
54
+ accessibilityAtomic: true,
55
+ accessibilityAutoComplete: true,
56
+ accessibilityBusy: true,
57
+ accessibilityChecked: true,
58
+ accessibilityColumnCount: true,
59
+ accessibilityColumnIndex: true,
60
+ accessibilityColumnSpan: true,
61
+ accessibilityControls: true,
62
+ accessibilityCurrent: true,
63
+ accessibilityDescribedBy: true,
64
+ accessibilityDetails: true,
65
+ disabled: true,
66
+ accessibilityErrorMessage: true,
67
+ accessibilityExpanded: true,
68
+ accessibilityFlowTo: true,
69
+ accessibilityHasPopup: true,
70
+ accessibilityHidden: true,
71
+ accessibilityInvalid: true,
72
+ accessibilityKeyShortcuts: true,
73
+ accessibilityLabel: true,
74
+ accessibilityLabelledBy: true,
75
+ accessibilityLevel: true,
76
+ accessibilityLiveRegion: true,
77
+ accessibilityModal: true,
78
+ accessibilityMultiline: true,
79
+ accessibilityMultiSelectable: true,
80
+ accessibilityOrientation: true,
81
+ accessibilityOwns: true,
82
+ accessibilityPlaceholder: true,
83
+ accessibilityPosInSet: true,
84
+ accessibilityPressed: true,
85
+ accessibilityReadOnly: true,
86
+ accessibilityRequired: true,
87
+ accessibilityRoleDescription: true,
88
+ accessibilityRowCount: true,
89
+ accessibilityRowIndex: true,
90
+ accessibilityRowSpan: true,
91
+ accessibilitySelected: true,
92
+ accessibilitySetSize: true,
93
+ accessibilitySort: true,
94
+ accessibilityValueMax: true,
95
+ accessibilityValueMin: true,
96
+ accessibilityValueNow: true,
97
+ accessibilityValueText: true,
98
+ nativeID: true,
99
+ }
package/src/index.ts ADDED
@@ -0,0 +1,10 @@
1
+ process.env.TAMAGUI_COMPILE_PROCESS = '1'
2
+
3
+ export { TamaguiOptions } from './types'
4
+ export { createExtractor } from './extractor/createExtractor'
5
+ export { literalToAst } from './extractor/literalToAst'
6
+ export * from './constants'
7
+ export * from './extractor/extractToClassNames'
8
+ export * from './extractor/extractHelpers'
9
+ export * from '@tamagui/patch-rnw'
10
+ export * from './extractor/loadTamagui'
package/src/types.ts ADDED
@@ -0,0 +1,96 @@
1
+ import { NodePath } from '@babel/traverse'
2
+ import * as t from '@babel/types'
3
+ import { PseudoStyles } from '@tamagui/core-node'
4
+ import { StyleObject } from '@tamagui/core-node'
5
+ import { ViewStyle } from 'react-native'
6
+
7
+ export type { StyleObject } from '@tamagui/helpers'
8
+
9
+ export type ClassNameObject = t.StringLiteral | t.Expression
10
+
11
+ export interface CacheObject {
12
+ [key: string]: any
13
+ }
14
+
15
+ export interface TamaguiOptions {
16
+ // module paths you want to compile with tamagui (for example ['tamagui'])
17
+ components: string[]
18
+ // your tamagui.config.ts
19
+ config?: string
20
+ evaluateVars?: boolean
21
+ importsWhitelist?: string[]
22
+ disable?: boolean
23
+ disableExtraction?: boolean
24
+ disableDebugAttr?: boolean
25
+ disableExtractInlineMedia?: boolean
26
+ disableExtractVariables?: boolean
27
+ excludeReactNativeWebExports?: string[]
28
+ exclude?: RegExp
29
+ logTimings?: boolean
30
+ prefixLogs?: string
31
+
32
+ // probably non user options
33
+ cssPath?: string
34
+ cssData?: any
35
+ deoptProps?: Set<string>
36
+ excludeProps?: Set<string>
37
+ inlineProps?: Set<string>
38
+ forceExtractStyleDefinitions?: boolean
39
+ }
40
+
41
+ export type ExtractedAttrAttr = {
42
+ type: 'attr'
43
+ value: t.JSXAttribute | t.JSXSpreadAttribute
44
+ }
45
+
46
+ export type ExtractedAttrStyle = {
47
+ type: 'style'
48
+ value: ViewStyle & PseudoStyles
49
+ attr?: t.JSXAttribute | t.JSXSpreadAttribute
50
+ name?: string
51
+ }
52
+
53
+ export type ExtractedAttr =
54
+ | ExtractedAttrAttr
55
+ | { type: 'ternary'; value: Ternary }
56
+ | ExtractedAttrStyle
57
+
58
+ export type ExtractTagProps = {
59
+ attrs: ExtractedAttr[]
60
+ node: t.JSXOpeningElement
61
+ attemptEval: (exprNode: t.Node, evalFn?: ((node: t.Node) => any) | undefined) => any
62
+ jsxPath: NodePath<t.JSXElement>
63
+ programPath: NodePath<t.Program>
64
+ originalNodeName: string
65
+ lineNumbers: string
66
+ filePath: string
67
+ isFlattened: boolean
68
+ }
69
+
70
+ export type ExtractorParseProps = TamaguiOptions & {
71
+ target: 'native' | 'html'
72
+ sourcePath?: string
73
+ shouldPrintDebug?: boolean | 'verbose'
74
+ onExtractTag: (props: ExtractTagProps) => void
75
+ getFlattenedNode: (props: { isTextView: boolean; tag: string }) => string
76
+ extractStyledDefinitions?: boolean
77
+ // identifer, rule
78
+ onStyleRule?: (identifier: string, rules: string[]) => void
79
+ }
80
+
81
+ export interface Ternary {
82
+ test: t.Expression
83
+ // shorthand props that don't use hooks
84
+ inlineMediaQuery?: string
85
+ remove: Function
86
+ consequent: Object | null
87
+ alternate: Object | null
88
+ }
89
+
90
+ export type ClassNameToStyleObj = {
91
+ [key: string]: StyleObject
92
+ }
93
+
94
+ export interface PluginContext {
95
+ write: (path: string, rules: { [key: string]: string }) => any
96
+ }
File without changes
File without changes
@@ -5,7 +5,7 @@ export declare function createEvaluator({ tamaguiConfig, staticNamespace, source
5
5
  tamaguiConfig: TamaguiConfig;
6
6
  staticNamespace: Record<string, any>;
7
7
  sourcePath: string;
8
- traversePath: NodePath<t.JSXElement>;
8
+ traversePath?: NodePath<t.JSXElement>;
9
9
  shouldPrintDebug: boolean | 'verbose';
10
10
  }): (n: t.Node) => any;
11
11
  export declare function createSafeEvaluator(attemptEval: (n: t.Node) => any): (n: t.Node) => any;
@@ -1 +1 @@
1
- {"version":3,"file":"createEvaluator.d.ts","sourceRoot":"","sources":["../../src/extractor/createEvaluator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAOlD,wBAAgB,eAAe,CAAC,EAC9B,aAAa,EACb,eAAe,EACf,UAAU,EACV,YAAY,EACZ,gBAAgB,GACjB,EAAE;IACD,aAAa,EAAE,aAAa,CAAA;IAC5B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACpC,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;IACpC,gBAAgB,EAAE,OAAO,GAAG,SAAS,CAAA;CACtC,OA+BY,MAAM,SAGlB;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,GAAG,OACtD,MAAM,SAOlB"}
1
+ {"version":3,"file":"createEvaluator.d.ts","sourceRoot":"","sources":["../../src/extractor/createEvaluator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAQlD,wBAAgB,eAAe,CAAC,EAC9B,aAAa,EACb,eAAe,EACf,UAAU,EACV,YAAY,EACZ,gBAAgB,GACjB,EAAE;IACD,aAAa,EAAE,aAAa,CAAA;IAC5B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACpC,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;IACrC,gBAAgB,EAAE,OAAO,GAAG,SAAS,CAAA;CACtC,OAoCY,MAAM,SAGlB;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,GAAG,OACtD,MAAM,SAOlB"}
@@ -16,10 +16,9 @@ export declare function createExtractor(): {
16
16
  [key: string]: string | {
17
17
  [key: string]: any;
18
18
  };
19
- }, {
20
- [key: string]: import("@tamagui/core-node").GenericFont<string | number>;
21
- }>;
22
- parse: (fileOrPath: NodePath<t.Program> | t.File, { config, importsWhitelist, evaluateVars, shouldPrintDebug, sourcePath, onExtractTag, getFlattenedNode, disable, disableExtraction, disableExtractInlineMedia, disableExtractVariables, disableDebugAttr, prefixLogs, excludeProps, ...props }: ExtractorParseProps) => {
19
+ }, import("@tamagui/core-node").GenericFonts>;
20
+ parse: (fileOrPath: NodePath<t.Program> | t.File, { config, importsWhitelist, evaluateVars, shouldPrintDebug, sourcePath, onExtractTag, onStyleRule, getFlattenedNode, disable, disableExtraction, disableExtractInlineMedia, disableExtractVariables, disableDebugAttr, extractStyledDefinitions, prefixLogs, excludeProps, target, ...props }: ExtractorParseProps) => {
21
+ styled: number;
23
22
  flattened: number;
24
23
  optimized: number;
25
24
  modified: number;
@@ -1 +1 @@
1
- {"version":3,"file":"createExtractor.d.ts","sourceRoot":"","sources":["../../src/extractor/createExtractor.ts"],"names":[],"mappings":"AAEA,OAAiB,EAAE,QAAQ,EAAW,MAAM,iBAAiB,CAAA;AAC7D,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AACjC,OAAO,EAGL,qBAAqB,EAOtB,MAAM,oBAAoB,CAAA;AAK3B,OAAO,EAIL,mBAAmB,EAEpB,MAAM,UAAU,CAAA;AAqCjB,oBAAY,SAAS,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;AAI1D,wBAAgB,eAAe;;;;;;;;;;;;;;;;wBAqBb,SAAS,EAAE,OAAO,CAAC,GAAG,MAAM,kPAiBrC,mBAAmB;;;;;;EA0/C3B"}
1
+ {"version":3,"file":"createExtractor.d.ts","sourceRoot":"","sources":["../../src/extractor/createExtractor.ts"],"names":[],"mappings":"AAEA,OAAiB,EAAE,QAAQ,EAAW,MAAM,iBAAiB,CAAA;AAC7D,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AACjC,OAAO,EAGL,qBAAqB,EAStB,MAAM,oBAAoB,CAAA;AAK3B,OAAO,EAIL,mBAAmB,EAEpB,MAAM,UAAU,CAAA;AAqCjB,oBAAY,SAAS,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;AAI1D,wBAAgB,eAAe;;;;;;;;;;;;;;wBAgCb,SAAS,EAAE,OAAO,CAAC,GAAG,MAAM,iSAoBrC,mBAAmB;;;;;;;EA+wD3B"}
@@ -3,7 +3,7 @@ import * as t from '@babel/types';
3
3
  import { ExtractedAttr, Ternary } from '../types';
4
4
  export declare function isPresent<T extends Object>(input: null | void | undefined | T): input is T;
5
5
  export declare function isSimpleSpread(node: t.JSXSpreadAttribute): boolean;
6
- export declare const attrStr: (attr?: ExtractedAttr | undefined) => string | t.JSXIdentifier;
6
+ export declare const attrStr: (attr?: ExtractedAttr) => string | t.JSXIdentifier;
7
7
  export declare const objToStr: (obj: any, spacer?: string) => any;
8
8
  export declare const ternaryStr: (x: Ternary) => string;
9
9
  export declare function findComponentName(scope: any): string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"extractHelpers.d.ts","sourceRoot":"","sources":["../../src/extractor/extractHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAEjC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAGjD,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,CAAC,GAAG,KAAK,IAAI,CAAC,CAE1F;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,kBAAkB,WAExD;AAED,eAAO,MAAM,OAAO,gEAQnB,CAAA;AAED,eAAO,MAAM,QAAQ,QAAS,GAAG,yBAgBhC,CAAA;AASD,eAAO,MAAM,UAAU,MAAO,OAAO,WAepC,CAAA;AAID,wBAAgB,iBAAiB,CAAC,KAAK,KAAA,sBAoBtC;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,EAC/B,CAAC,EAAE,CAAC,CAAC,gBAAgB,EACrB,UAAU,EAAE,MAAM,WAoBnB;AAED,eAAO,MAAM,eAAe,YAAa,MAAM,YAE9C,CAAA"}
1
+ {"version":3,"file":"extractHelpers.d.ts","sourceRoot":"","sources":["../../src/extractor/extractHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAEjC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAGjD,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,CAAC,GAAG,KAAK,IAAI,CAAC,CAE1F;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,kBAAkB,WAExD;AAED,eAAO,MAAM,OAAO,UAAW,aAAa,6BAQ3C,CAAA;AAED,eAAO,MAAM,QAAQ,QAAS,GAAG,yBAgBhC,CAAA;AASD,eAAO,MAAM,UAAU,MAAO,OAAO,WAepC,CAAA;AAID,wBAAgB,iBAAiB,CAAC,KAAK,KAAA,sBAoBtC;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,EAC/B,CAAC,EAAE,CAAC,CAAC,gBAAgB,EACrB,UAAU,EAAE,MAAM,WAoBnB;AAED,eAAO,MAAM,eAAe,YAAa,MAAM,YAE9C,CAAA"}
File without changes
@@ -1 +1 @@
1
- {"version":3,"file":"extractMediaStyle.d.ts","sourceRoot":"","sources":["../../src/extractor/extractMediaStyle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AACjC,OAAO,EAAE,qBAAqB,EAAwC,MAAM,oBAAoB,CAAA;AAIhG,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAG/C,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,EAC/B,aAAa,EAAE,qBAAqB,EACpC,UAAU,EAAE,MAAM,EAClB,UAAU,SAAI,EACd,gBAAgB,GAAE,OAAO,GAAG,SAAiB;;;SAyE9C;AAiFD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,EAC/B,IAAI,EAAE,CAAC,CAAC,UAAU,EAClB,UAAU,EAAE,MAAM,WAiBnB"}
1
+ {"version":3,"file":"extractMediaStyle.d.ts","sourceRoot":"","sources":["../../src/extractor/extractMediaStyle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AACjC,OAAO,EAAE,qBAAqB,EAAwC,MAAM,oBAAoB,CAAA;AAIhG,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAG/C,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,EAC/B,aAAa,EAAE,qBAAqB,EACpC,UAAU,EAAE,MAAM,EAClB,UAAU,SAAI,EACd,gBAAgB,GAAE,OAAO,GAAG,SAAiB;;;SA2E9C;AAiFD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,EAC/B,IAAI,EAAE,CAAC,CAAC,UAAU,EAClB,UAAU,EAAE,MAAM,WAiBnB"}
@@ -1,6 +1,5 @@
1
1
  /// <reference types="node" />
2
2
  import * as t from '@babel/types';
3
- import { LoaderContext } from 'webpack';
4
3
  import { TamaguiOptions } from '../types';
5
4
  import { Extractor } from './createExtractor';
6
5
  export declare type ExtractedResponse = {
@@ -10,15 +9,11 @@ export declare type ExtractedResponse = {
10
9
  ast: t.File;
11
10
  map: any;
12
11
  };
13
- export declare function extractToClassNames({ loader, extractor, source, sourcePath, options, shouldPrintDebug, cssLoaderPath, threaded, cssPath, }: {
14
- loader: LoaderContext<any>;
15
- cssLoaderPath: string;
12
+ export declare function extractToClassNames({ extractor, source, sourcePath, options, shouldPrintDebug, }: {
16
13
  extractor: Extractor;
17
14
  source: string | Buffer;
18
15
  sourcePath: string;
19
16
  options: TamaguiOptions;
20
17
  shouldPrintDebug: boolean | 'verbose';
21
- cssPath: string;
22
- threaded?: boolean;
23
18
  }): ExtractedResponse | null;
24
19
  //# sourceMappingURL=extractToClassNames.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extractToClassNames.d.ts","sourceRoot":"","sources":["../../src/extractor/extractToClassNames.ts"],"names":[],"mappings":";AAKA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAKjC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGvC,OAAO,EAAgC,cAAc,EAAW,MAAM,UAAU,CAAA;AAGhF,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAiB7C,oBAAY,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,CAAC,CAAC,IAAI,CAAA;IACX,GAAG,EAAE,GAAG,CAAA;CACT,CAAA;AAED,wBAAgB,mBAAmB,CAAC,EAClC,MAAM,EACN,SAAS,EACT,MAAM,EACN,UAAU,EACV,OAAO,EACP,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,OAAO,GACR,EAAE;IACD,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;IAC1B,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,cAAc,CAAA;IACvB,gBAAgB,EAAE,OAAO,GAAG,SAAS,CAAA;IACrC,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,GAAG,iBAAiB,GAAG,IAAI,CAkY3B"}
1
+ {"version":3,"file":"extractToClassNames.d.ts","sourceRoot":"","sources":["../../src/extractor/extractToClassNames.ts"],"names":[],"mappings":";AAKA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAOjC,OAAO,EAAgC,cAAc,EAAW,MAAM,UAAU,CAAA;AAGhF,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAgB7C,oBAAY,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,CAAC,CAAC,IAAI,CAAA;IACX,GAAG,EAAE,GAAG,CAAA;CACT,CAAA;AAED,wBAAgB,mBAAmB,CAAC,EAClC,SAAS,EACT,MAAM,EACN,UAAU,EACV,OAAO,EACP,gBAAgB,GACjB,EAAE;IACD,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,cAAc,CAAA;IACvB,gBAAgB,EAAE,OAAO,GAAG,SAAS,CAAA;CACtC,GAAG,iBAAiB,GAAG,IAAI,CAqV3B"}
File without changes
File without changes
@@ -1,9 +1,15 @@
1
1
  import type { TamaguiComponent, TamaguiInternalConfig } from '@tamagui/core';
2
- export declare function loadTamagui(props: {
3
- components: string[];
4
- config: string;
5
- }): {
2
+ declare type NameToPaths = {
3
+ [key: string]: Set<string>;
4
+ };
5
+ export declare type TamaguiProjectInfo = {
6
6
  components: Record<string, TamaguiComponent>;
7
7
  tamaguiConfig: TamaguiInternalConfig;
8
+ nameToPaths: NameToPaths;
8
9
  };
10
+ export declare function loadTamagui(props: {
11
+ components: string[];
12
+ config: string;
13
+ }): TamaguiProjectInfo;
14
+ export {};
9
15
  //# sourceMappingURL=loadTamagui.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loadTamagui.d.ts","sourceRoot":"","sources":["../../src/extractor/loadTamagui.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAK5E,wBAAgB,WAAW,CAAC,KAAK,EAAE;IAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG;IAC5E,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;IAC5C,aAAa,EAAE,qBAAqB,CAAA;CACrC,CA6HA"}
1
+ {"version":3,"file":"loadTamagui.d.ts","sourceRoot":"","sources":["../../src/extractor/loadTamagui.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAgB,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAK1F,aAAK,WAAW,GAAG;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAA;CAC3B,CAAA;AAED,oBAAY,kBAAkB,GAAG;IAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;IAC5C,aAAa,EAAE,qBAAqB,CAAA;IACpC,WAAW,EAAE,WAAW,CAAA;CACzB,CAAA;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE;IAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,kBAAkB,CA+H/F"}
File without changes
File without changes
package/types/index.d.ts CHANGED
@@ -4,5 +4,6 @@ export { literalToAst } from './extractor/literalToAst';
4
4
  export * from './constants';
5
5
  export * from './extractor/extractToClassNames';
6
6
  export * from './extractor/extractHelpers';
7
- export * from './patchReactNativeWeb';
7
+ export * from '@tamagui/patch-rnw';
8
+ export * from './extractor/loadTamagui';
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,cAAc,aAAa,CAAA;AAC3B,cAAc,iCAAiC,CAAA;AAC/C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,cAAc,aAAa,CAAA;AAC3B,cAAc,iCAAiC,CAAA;AAC/C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA"}
package/types/types.d.ts CHANGED
@@ -1,7 +1,9 @@
1
1
  import { NodePath } from '@babel/traverse';
2
2
  import * as t from '@babel/types';
3
3
  import { PseudoStyles } from '@tamagui/core-node';
4
+ import { StyleObject } from '@tamagui/core-node';
4
5
  import { ViewStyle } from 'react-native';
6
+ export type { StyleObject } from '@tamagui/helpers';
5
7
  export declare type ClassNameObject = t.StringLiteral | t.Expression;
6
8
  export interface CacheObject {
7
9
  [key: string]: any;
@@ -25,6 +27,7 @@ export interface TamaguiOptions {
25
27
  deoptProps?: Set<string>;
26
28
  excludeProps?: Set<string>;
27
29
  inlineProps?: Set<string>;
30
+ forceExtractStyleDefinitions?: boolean;
28
31
  }
29
32
  export declare type ExtractedAttrAttr = {
30
33
  type: 'attr';
@@ -52,6 +55,7 @@ export declare type ExtractTagProps = {
52
55
  isFlattened: boolean;
53
56
  };
54
57
  export declare type ExtractorParseProps = TamaguiOptions & {
58
+ target: 'native' | 'html';
55
59
  sourcePath?: string;
56
60
  shouldPrintDebug?: boolean | 'verbose';
57
61
  onExtractTag: (props: ExtractTagProps) => void;
@@ -59,6 +63,8 @@ export declare type ExtractorParseProps = TamaguiOptions & {
59
63
  isTextView: boolean;
60
64
  tag: string;
61
65
  }) => string;
66
+ extractStyledDefinitions?: boolean;
67
+ onStyleRule?: (identifier: string, rules: string[]) => void;
62
68
  };
63
69
  export interface Ternary {
64
70
  test: t.Expression;
@@ -67,13 +73,6 @@ export interface Ternary {
67
73
  consequent: Object | null;
68
74
  alternate: Object | null;
69
75
  }
70
- export declare type StyleObject = {
71
- property: string;
72
- value: string;
73
- className: string;
74
- identifier: string;
75
- rules: string[];
76
- };
77
76
  export declare type ClassNameToStyleObj = {
78
77
  [key: string]: StyleObject;
79
78
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1,167 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
21
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
- var patchReactNativeWeb_exports = {};
23
- __export(patchReactNativeWeb_exports, {
24
- patchReactNativeWeb: () => patchReactNativeWeb
25
- });
26
- module.exports = __toCommonJS(patchReactNativeWeb_exports);
27
- var import_path = __toESM(require("path"));
28
- var fs = __toESM(require("fs-extra"));
29
- function patchReactNativeWeb() {
30
- const rootDir = require.resolve("react-native-web").replace(/\/dist.*/, "");
31
- const modulePath = import_path.default.join(rootDir, "dist", "tamagui-exports.js");
32
- const cjsPath = import_path.default.join(rootDir, "dist", "cjs", "tamagui-exports.js");
33
- const shouldPatchExports = fs.existsSync(modulePath) && fs.readFileSync(modulePath, "utf-8") === moduleExports && fs.existsSync(cjsPath) && fs.readFileSync(cjsPath, "utf-8") === cjsExports;
34
- if (!shouldPatchExports) {
35
- console.log(" | patch " + import_path.default.relative(rootDir, modulePath));
36
- console.log(" | patch " + import_path.default.relative(rootDir, cjsPath));
37
- fs.writeFileSync(modulePath, moduleExports);
38
- fs.writeFileSync(cjsPath, cjsExports);
39
- }
40
- const patches = [
41
- {
42
- id: "dom-props",
43
- filePath: ["modules", "createDOMProps", "index.js"],
44
- replacee: ` if (dataSet != null) {`,
45
- replacer: `
46
- if (props.dataSet && props.dataSet.className) {
47
- const { className, ...dataSetRest } = props.dataSet
48
- classList = className
49
- dataSet = dataSetRest
50
- }
51
- if (props.dataSet && props.dataSet.id) {
52
- domProps['id'] = props.dataSet.id
53
- }
54
- if (dataSet != null) {`
55
- },
56
- {
57
- id: "forward-props",
58
- filePath: ["modules", "forwardedProps", "index.js"],
59
- replacee: `dataSet: true,`,
60
- replacer: `id: true, dataSet: true,`
61
- }
62
- ];
63
- for (const { filePath, replacee, replacer } of patches) {
64
- const files = [
65
- import_path.default.join(rootDir, "dist", ...filePath),
66
- import_path.default.join(rootDir, "dist", "cjs", ...filePath)
67
- ];
68
- for (const file of files) {
69
- const contents = fs.readFileSync(file, "utf-8");
70
- if (contents.includes(replacer)) {
71
- continue;
72
- }
73
- if (!contents.includes(replacee)) {
74
- console.warn(`\u26A0\uFE0F Error: couldn't apply className patch! Maybe using incompatible react-native-web version.`, {
75
- replacee,
76
- contents
77
- });
78
- continue;
79
- }
80
- console.log(" | patch " + import_path.default.relative(rootDir, file));
81
- fs.writeFileSync(file, contents.replace(replacee, replacer));
82
- }
83
- }
84
- const moduleEntry = import_path.default.join(rootDir, "dist", "index.js");
85
- const moduleEntrySrc = fs.readFileSync(moduleEntry, "utf-8");
86
- if (!moduleEntrySrc.includes("// tamagui-patch-v4")) {
87
- fs.writeFileSync(moduleEntry, `${removePatch(moduleEntrySrc)}
88
-
89
- // tamagui-patch-v4
90
- import * as TExports from './tamagui-exports'
91
- export const TamaguiExports = TExports
92
- // tamagui-patch-end
93
- `);
94
- }
95
- const cjsEntry = import_path.default.join(rootDir, "dist", "cjs", "index.js");
96
- const cjsEntrySrc = fs.readFileSync(cjsEntry, "utf-8");
97
- if (!cjsEntrySrc.includes("// tamagui-patch-v4")) {
98
- fs.writeFileSync(cjsEntry, `${removePatch(cjsEntrySrc)}
99
-
100
- // tamagui-patch-v4
101
- exports.TamaguiExports = _interopRequireDefault(require("./tamagui-exports"));
102
- // tamagui-patch-end
103
- `);
104
- }
105
- }
106
- __name(patchReactNativeWeb, "patchReactNativeWeb");
107
- function removePatch(source) {
108
- return source.replace(/\/\/ tamagui-patch([.\s\S]*)/g, "");
109
- }
110
- __name(removePatch, "removePatch");
111
- const forwardedPropsObj = `{
112
- ...fwdProps.defaultProps,
113
- ...fwdProps.accessibilityProps,
114
- ...fwdProps.clickProps,
115
- ...fwdProps.focusProps,
116
- ...fwdProps.keyboardProps,
117
- ...fwdProps.mouseProps,
118
- ...fwdProps.touchProps,
119
- ...fwdProps.styleProps,
120
- href: true,
121
- lang: true,
122
- onScroll: true,
123
- onWheel: true,
124
- pointerEvents: true
125
- }
126
- `;
127
- const moduleExports = `
128
- export { atomic } from './exports/StyleSheet/compile'
129
- export { default as createCompileableStyle } from './exports/StyleSheet/createCompileableStyle'
130
- export { default as createReactDOMStyle } from './exports/StyleSheet/createReactDOMStyle'
131
- export { default as i18Style } from './exports/StyleSheet/i18nStyle'
132
- export { default as createDOMProps } from './modules/createDOMProps'
133
- export { default as AccessibilityUtil } from './modules/AccessibilityUtil'
134
- export { default as createElement } from './exports/createElement'
135
- export { default as css } from './exports/StyleSheet/css'
136
- export { default as TextAncestorContext } from './exports/Text/TextAncestorContext'
137
- export { default as pick } from './modules/pick'
138
- export { default as useElementLayout } from './modules/useElementLayout'
139
- export { default as useMergeRefs } from './modules/useMergeRefs'
140
- export { default as usePlatformMethods } from './modules/usePlatformMethods'
141
- export { default as useResponderEvents } from './modules/useResponderEvents'
142
- import * as fwdProps from './modules/forwardedProps'
143
- export const forwardedProps = ${forwardedPropsObj}
144
- `;
145
- const cjsExports = `
146
- exports.atomic = require('./exports/StyleSheet/compile').atomic
147
- exports.createCompileableStyle = require('./exports/StyleSheet/createCompileableStyle')
148
- exports.createReactDOMStyle = require('./exports/StyleSheet/createReactDOMStyle')
149
- exports.i18Style = require('./exports/StyleSheet/i18nStyle')
150
- exports.createDOMProps = require('./modules/createDOMProps')
151
- exports.AccessibilityUtil = require('./modules/AccessibilityUtil')
152
- exports.createElement = require('./exports/createElement')
153
- exports.css = require('./exports/StyleSheet/css')
154
- exports.TextAncestorContext = require('./exports/Text/TextAncestorContext')
155
- exports.pick = require('./modules/pick')
156
- exports.useElementLayout = require('./modules/useElementLayout')
157
- exports.useMergeRefs = require('./modules/useMergeRefs')
158
- exports.usePlatformMethods = require('./modules/usePlatformMethods')
159
- exports.useResponderEvents = require('./modules/useResponderEvents')
160
- const fwdProps = require('./modules/forwardedProps')
161
- exports.forwardedProps = ${forwardedPropsObj}
162
- `;
163
- // Annotate the CommonJS export names for ESM import in node:
164
- 0 && (module.exports = {
165
- patchReactNativeWeb
166
- });
167
- //# sourceMappingURL=patchReactNativeWeb.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/patchReactNativeWeb.ts"],
4
- "sourcesContent": ["import path from 'path'\n\nimport * as fs from 'fs-extra'\n\n// were patching react-native-web so we can use some internal methods\n// we do it this way because we need to rely on webpack or bundler config to determine cjs vs esm\n// so we can't just require it all directly\n// would be nice in the future to be able to eject from react-native-web entirely optionally\n\n// keep it sync\nexport function patchReactNativeWeb() {\n const rootDir = require.resolve('react-native-web').replace(/\\/dist.*/, '')\n const modulePath = path.join(rootDir, 'dist', 'tamagui-exports.js')\n const cjsPath = path.join(rootDir, 'dist', 'cjs', 'tamagui-exports.js')\n const shouldPatchExports =\n fs.existsSync(modulePath) &&\n fs.readFileSync(modulePath, 'utf-8') === moduleExports &&\n fs.existsSync(cjsPath) &&\n fs.readFileSync(cjsPath, 'utf-8') === cjsExports\n if (!shouldPatchExports) {\n console.log(' | patch ' + path.relative(rootDir, modulePath))\n console.log(' | patch ' + path.relative(rootDir, cjsPath))\n fs.writeFileSync(modulePath, moduleExports)\n fs.writeFileSync(cjsPath, cjsExports)\n }\n\n // patch to allow className prop\n const patches = [\n {\n id: 'dom-props',\n filePath: ['modules', 'createDOMProps', 'index.js'],\n replacee: ` if (dataSet != null) {`,\n replacer: `\n if (props.dataSet && props.dataSet.className) {\n const { className, ...dataSetRest } = props.dataSet\n classList = className\n dataSet = dataSetRest\n }\n if (props.dataSet && props.dataSet.id) {\n domProps['id'] = props.dataSet.id\n }\n if (dataSet != null) {`,\n },\n {\n id: 'forward-props',\n filePath: ['modules', 'forwardedProps', 'index.js'],\n replacee: `dataSet: true,`,\n replacer: `id: true, dataSet: true,`,\n },\n ]\n\n for (const { filePath, replacee, replacer } of patches) {\n const files = [\n path.join(rootDir, 'dist', ...filePath),\n path.join(rootDir, 'dist', 'cjs', ...filePath),\n ]\n for (const file of files) {\n const contents = fs.readFileSync(file, 'utf-8')\n if (contents.includes(replacer)) {\n continue\n }\n if (!contents.includes(replacee)) {\n console.warn(\n `\u26A0\uFE0F Error: couldn't apply className patch! Maybe using incompatible react-native-web version.`,\n {\n replacee,\n contents,\n }\n )\n continue\n }\n console.log(' | patch ' + path.relative(rootDir, file))\n fs.writeFileSync(file, contents.replace(replacee, replacer))\n }\n }\n\n // if entry files not patched, patch them:\n const moduleEntry = path.join(rootDir, 'dist', 'index.js')\n const moduleEntrySrc = fs.readFileSync(moduleEntry, 'utf-8')\n if (!moduleEntrySrc.includes('// tamagui-patch-v4')) {\n fs.writeFileSync(\n moduleEntry,\n `${removePatch(moduleEntrySrc)}\n\n// tamagui-patch-v4\nimport * as TExports from './tamagui-exports'\nexport const TamaguiExports = TExports\n// tamagui-patch-end\n`\n )\n }\n const cjsEntry = path.join(rootDir, 'dist', 'cjs', 'index.js')\n const cjsEntrySrc = fs.readFileSync(cjsEntry, 'utf-8')\n if (!cjsEntrySrc.includes('// tamagui-patch-v4')) {\n fs.writeFileSync(\n cjsEntry,\n `${removePatch(cjsEntrySrc)}\n\n// tamagui-patch-v4\nexports.TamaguiExports = _interopRequireDefault(require(\"./tamagui-exports\"));\n// tamagui-patch-end\n`\n )\n }\n}\n\nfunction removePatch(source: string) {\n return source.replace(/\\/\\/ tamagui-patch([.\\s\\S]*)/g, '')\n}\n\n// view exports/View.ts\nconst forwardedPropsObj = `{\n ...fwdProps.defaultProps,\n ...fwdProps.accessibilityProps,\n ...fwdProps.clickProps,\n ...fwdProps.focusProps,\n ...fwdProps.keyboardProps,\n ...fwdProps.mouseProps,\n ...fwdProps.touchProps,\n ...fwdProps.styleProps,\n href: true,\n lang: true,\n onScroll: true,\n onWheel: true,\n pointerEvents: true\n}\n`\n\nconst moduleExports = `\nexport { atomic } from './exports/StyleSheet/compile'\nexport { default as createCompileableStyle } from './exports/StyleSheet/createCompileableStyle'\nexport { default as createReactDOMStyle } from './exports/StyleSheet/createReactDOMStyle'\nexport { default as i18Style } from './exports/StyleSheet/i18nStyle'\nexport { default as createDOMProps } from './modules/createDOMProps'\nexport { default as AccessibilityUtil } from './modules/AccessibilityUtil'\nexport { default as createElement } from './exports/createElement'\nexport { default as css } from './exports/StyleSheet/css'\nexport { default as TextAncestorContext } from './exports/Text/TextAncestorContext'\nexport { default as pick } from './modules/pick'\nexport { default as useElementLayout } from './modules/useElementLayout'\nexport { default as useMergeRefs } from './modules/useMergeRefs'\nexport { default as usePlatformMethods } from './modules/usePlatformMethods'\nexport { default as useResponderEvents } from './modules/useResponderEvents'\nimport * as fwdProps from './modules/forwardedProps'\nexport const forwardedProps = ${forwardedPropsObj}\n`\n\nconst cjsExports = `\nexports.atomic = require('./exports/StyleSheet/compile').atomic\nexports.createCompileableStyle = require('./exports/StyleSheet/createCompileableStyle')\nexports.createReactDOMStyle = require('./exports/StyleSheet/createReactDOMStyle')\nexports.i18Style = require('./exports/StyleSheet/i18nStyle')\nexports.createDOMProps = require('./modules/createDOMProps')\nexports.AccessibilityUtil = require('./modules/AccessibilityUtil')\nexports.createElement = require('./exports/createElement')\nexports.css = require('./exports/StyleSheet/css')\nexports.TextAncestorContext = require('./exports/Text/TextAncestorContext')\nexports.pick = require('./modules/pick')\nexports.useElementLayout = require('./modules/useElementLayout')\nexports.useMergeRefs = require('./modules/useMergeRefs')\nexports.usePlatformMethods = require('./modules/usePlatformMethods')\nexports.useResponderEvents = require('./modules/useResponderEvents')\nconst fwdProps = require('./modules/forwardedProps')\nexports.forwardedProps = ${forwardedPropsObj}\n`\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAiB;AAEjB,SAAoB;AAQb,+BAA+B;AACpC,QAAM,UAAU,AAAgB,oCAAoB,QAAQ,YAAY,EAAE;AAC1E,QAAM,aAAa,oBAAK,KAAK,SAAS,QAAQ,oBAAoB;AAClE,QAAM,UAAU,oBAAK,KAAK,SAAS,QAAQ,OAAO,oBAAoB;AACtE,QAAM,qBACJ,GAAG,WAAW,UAAU,KACxB,GAAG,aAAa,YAAY,OAAO,MAAM,iBACzC,GAAG,WAAW,OAAO,KACrB,GAAG,aAAa,SAAS,OAAO,MAAM;AACxC,MAAI,CAAC,oBAAoB;AACvB,YAAQ,IAAI,mBAAmB,oBAAK,SAAS,SAAS,UAAU,CAAC;AACjE,YAAQ,IAAI,mBAAmB,oBAAK,SAAS,SAAS,OAAO,CAAC;AAC9D,OAAG,cAAc,YAAY,aAAa;AAC1C,OAAG,cAAc,SAAS,UAAU;AAAA,EACtC;AAGA,QAAM,UAAU;AAAA,IACd;AAAA,MACE,IAAI;AAAA,MACJ,UAAU,CAAC,WAAW,kBAAkB,UAAU;AAAA,MAClD,UAAU;AAAA,MACV,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUZ;AAAA,IACA;AAAA,MACE,IAAI;AAAA,MACJ,UAAU,CAAC,WAAW,kBAAkB,UAAU;AAAA,MAClD,UAAU;AAAA,MACV,UAAU;AAAA,IACZ;AAAA,EACF;AAEA,aAAW,EAAE,UAAU,UAAU,cAAc,SAAS;AACtD,UAAM,QAAQ;AAAA,MACZ,oBAAK,KAAK,SAAS,QAAQ,GAAG,QAAQ;AAAA,MACtC,oBAAK,KAAK,SAAS,QAAQ,OAAO,GAAG,QAAQ;AAAA,IAC/C;AACA,eAAW,QAAQ,OAAO;AACxB,YAAM,WAAW,GAAG,aAAa,MAAM,OAAO;AAC9C,UAAI,SAAS,SAAS,QAAQ,GAAG;AAC/B;AAAA,MACF;AACA,UAAI,CAAC,SAAS,SAAS,QAAQ,GAAG;AAChC,gBAAQ,KACN,0GACA;AAAA,UACE;AAAA,UACA;AAAA,QACF,CACF;AACA;AAAA,MACF;AACA,cAAQ,IAAI,mBAAmB,oBAAK,SAAS,SAAS,IAAI,CAAC;AAC3D,SAAG,cAAc,MAAM,SAAS,QAAQ,UAAU,QAAQ,CAAC;AAAA,IAC7D;AAAA,EACF;AAGA,QAAM,cAAc,oBAAK,KAAK,SAAS,QAAQ,UAAU;AACzD,QAAM,iBAAiB,GAAG,aAAa,aAAa,OAAO;AAC3D,MAAI,CAAC,eAAe,SAAS,qBAAqB,GAAG;AACnD,OAAG,cACD,aACA,GAAG,YAAY,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAO/B;AAAA,EACF;AACA,QAAM,WAAW,oBAAK,KAAK,SAAS,QAAQ,OAAO,UAAU;AAC7D,QAAM,cAAc,GAAG,aAAa,UAAU,OAAO;AACrD,MAAI,CAAC,YAAY,SAAS,qBAAqB,GAAG;AAChD,OAAG,cACD,UACA,GAAG,YAAY,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA,CAM5B;AAAA,EACF;AACF;AA9FgB;AAgGhB,qBAAqB,QAAgB;AACnC,SAAO,OAAO,QAAQ,iCAAiC,EAAE;AAC3D;AAFS;AAKT,MAAM,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiB1B,MAAM,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gCAgBU;AAAA;AAGhC,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAgBQ;AAAA;",
6
- "names": []
7
- }