zyzz 0.0.21 → 0.0.23

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 (233) hide show
  1. package/Zyzz.podspec +16 -0
  2. package/dist/Style.d.ts +3 -1
  3. package/dist/Style.d.ts.map +1 -1
  4. package/dist/Style.js.map +1 -1
  5. package/dist/babel/NativeJsx.d.ts.map +1 -1
  6. package/dist/babel/NativeJsx.js +217 -15
  7. package/dist/babel/NativeJsx.js.map +1 -1
  8. package/dist/babel/index.d.ts +6 -2
  9. package/dist/babel/index.d.ts.map +1 -1
  10. package/dist/babel/index.js +10 -1
  11. package/dist/babel/index.js.map +1 -1
  12. package/dist/compiler/Graph.d.ts.map +1 -1
  13. package/dist/compiler/Graph.js +107 -0
  14. package/dist/compiler/Graph.js.map +1 -1
  15. package/dist/compiler/Native.d.ts +6 -3
  16. package/dist/compiler/Native.d.ts.map +1 -1
  17. package/dist/compiler/Native.js +142 -24
  18. package/dist/compiler/Native.js.map +1 -1
  19. package/dist/compiler/Source.d.ts +2 -0
  20. package/dist/compiler/Source.d.ts.map +1 -1
  21. package/dist/compiler/Source.js +17 -5
  22. package/dist/compiler/Source.js.map +1 -1
  23. package/dist/compiler/internal/Configurations.d.ts +2 -0
  24. package/dist/compiler/internal/Configurations.d.ts.map +1 -1
  25. package/dist/compiler/internal/Configurations.js +21 -3
  26. package/dist/compiler/internal/Configurations.js.map +1 -1
  27. package/dist/compiler/internal/Contract.d.ts.map +1 -1
  28. package/dist/compiler/internal/Contract.js +75 -38
  29. package/dist/compiler/internal/Contract.js.map +1 -1
  30. package/dist/compiler/internal/Contributions.d.ts.map +1 -1
  31. package/dist/compiler/internal/Contributions.js +7 -1
  32. package/dist/compiler/internal/Contributions.js.map +1 -1
  33. package/dist/compiler/internal/Descriptors.d.ts.map +1 -1
  34. package/dist/compiler/internal/Descriptors.js +11 -2
  35. package/dist/compiler/internal/Descriptors.js.map +1 -1
  36. package/dist/compiler/internal/Dynamic.d.ts.map +1 -1
  37. package/dist/compiler/internal/Dynamic.js +3 -0
  38. package/dist/compiler/internal/Dynamic.js.map +1 -1
  39. package/dist/compiler/internal/Expression.js +2 -2
  40. package/dist/compiler/internal/Expression.js.map +1 -1
  41. package/dist/compiler/internal/NativeBindings.d.ts +24 -26
  42. package/dist/compiler/internal/NativeBindings.d.ts.map +1 -1
  43. package/dist/compiler/internal/NativeBindings.js +62 -8
  44. package/dist/compiler/internal/NativeBindings.js.map +1 -1
  45. package/dist/compiler/internal/NativeMedia.d.ts +14 -0
  46. package/dist/compiler/internal/NativeMedia.d.ts.map +1 -0
  47. package/dist/compiler/internal/NativeMedia.js +287 -0
  48. package/dist/compiler/internal/NativeMedia.js.map +1 -0
  49. package/dist/compiler/internal/NativeVars.d.ts +28 -0
  50. package/dist/compiler/internal/NativeVars.d.ts.map +1 -0
  51. package/dist/compiler/internal/NativeVars.js +160 -0
  52. package/dist/compiler/internal/NativeVars.js.map +1 -0
  53. package/dist/compiler/internal/PackedStyles.d.ts +2 -0
  54. package/dist/compiler/internal/PackedStyles.d.ts.map +1 -1
  55. package/dist/compiler/internal/PackedStyles.js +2 -0
  56. package/dist/compiler/internal/PackedStyles.js.map +1 -1
  57. package/dist/compiler/internal/Themes.d.ts +24 -1
  58. package/dist/compiler/internal/Themes.d.ts.map +1 -1
  59. package/dist/compiler/internal/Themes.js +120 -3
  60. package/dist/compiler/internal/Themes.js.map +1 -1
  61. package/dist/compiler/internal/Vars.d.ts +1 -1
  62. package/dist/compiler/internal/Vars.d.ts.map +1 -1
  63. package/dist/compiler/internal/Vars.js +7 -2
  64. package/dist/compiler/internal/Vars.js.map +1 -1
  65. package/dist/default.js.zyzz.json +1 -1
  66. package/dist/internal/Completion.d.ts +1 -1
  67. package/dist/internal/Completion.d.ts.map +1 -1
  68. package/dist/internal/Targets.d.ts.map +1 -1
  69. package/dist/internal/Targets.js +2 -0
  70. package/dist/internal/Targets.js.map +1 -1
  71. package/dist/internal/Token.d.ts +0 -2
  72. package/dist/internal/Token.d.ts.map +1 -1
  73. package/dist/internal/Token.js.map +1 -1
  74. package/dist/internal/Value.d.ts +7 -0
  75. package/dist/internal/Value.d.ts.map +1 -1
  76. package/dist/internal/Value.js.map +1 -1
  77. package/dist/metro/Graph.d.ts +22 -7
  78. package/dist/metro/Graph.d.ts.map +1 -1
  79. package/dist/metro/Graph.js +188 -42
  80. package/dist/metro/Graph.js.map +1 -1
  81. package/dist/metro/Watch.d.ts +28 -4
  82. package/dist/metro/Watch.d.ts.map +1 -1
  83. package/dist/metro/Watch.js +39 -7
  84. package/dist/metro/Watch.js.map +1 -1
  85. package/dist/metro/index.d.ts +15 -4
  86. package/dist/metro/index.d.ts.map +1 -1
  87. package/dist/metro/index.js +27 -0
  88. package/dist/metro/index.js.map +1 -1
  89. package/dist/metro/transformer.d.ts +5 -1
  90. package/dist/metro/transformer.d.ts.map +1 -1
  91. package/dist/metro/transformer.js +5 -3
  92. package/dist/metro/transformer.js.map +1 -1
  93. package/dist/react-native/StyleSheet.d.ts +8 -3
  94. package/dist/react-native/StyleSheet.d.ts.map +1 -1
  95. package/dist/react-native/StyleSheet.js +25 -34
  96. package/dist/react-native/StyleSheet.js.map +1 -1
  97. package/dist/react-native/index.d.ts +1 -1
  98. package/dist/react-native/index.d.ts.map +1 -1
  99. package/dist/react-native/index.js +1 -1
  100. package/dist/react-native/index.js.map +1 -1
  101. package/dist/react-native/index.native.d.ts +5 -0
  102. package/dist/react-native/index.native.js +20 -0
  103. package/dist/react-native/index.native.js.map +7 -0
  104. package/dist/react-native/internal/Calculation.d.ts +7 -0
  105. package/dist/react-native/internal/Calculation.d.ts.map +1 -0
  106. package/dist/react-native/internal/Calculation.js +134 -0
  107. package/dist/react-native/internal/Calculation.js.map +1 -0
  108. package/dist/react-native/internal/Device.js +218 -0
  109. package/dist/react-native/internal/Device.js.map +7 -0
  110. package/dist/react-native/internal/NativeZyzz.js +7 -0
  111. package/dist/react-native/internal/NativeZyzz.js.map +7 -0
  112. package/dist/react-native/internal/Scalar.d.ts +16 -0
  113. package/dist/react-native/internal/Scalar.d.ts.map +1 -1
  114. package/dist/react-native/internal/Scalar.js +62 -4
  115. package/dist/react-native/internal/Scalar.js.map +1 -1
  116. package/dist/react-native/internal/Store.d.ts +32 -0
  117. package/dist/react-native/internal/Store.d.ts.map +1 -0
  118. package/dist/react-native/internal/Store.js +57 -0
  119. package/dist/react-native/internal/Store.js.map +1 -0
  120. package/dist/react-native/internal/Styles.d.ts +19 -0
  121. package/dist/react-native/internal/Styles.d.ts.map +1 -0
  122. package/dist/react-native/internal/Styles.js +35 -0
  123. package/dist/react-native/internal/Styles.js.map +1 -0
  124. package/dist/react-native/internal/Tokens.d.ts +21 -0
  125. package/dist/react-native/internal/Tokens.d.ts.map +1 -0
  126. package/dist/react-native/internal/Tokens.js +58 -0
  127. package/dist/react-native/internal/Tokens.js.map +1 -0
  128. package/dist/react-native/internal/Viewport.d.ts +6 -0
  129. package/dist/react-native/internal/Viewport.d.ts.map +1 -0
  130. package/dist/react-native/internal/Viewport.js +4 -0
  131. package/dist/react-native/internal/Viewport.js.map +1 -0
  132. package/dist/react-native/react.d.ts +102 -14
  133. package/dist/react-native/react.d.ts.map +1 -1
  134. package/dist/react-native/react.js +86 -18
  135. package/dist/react-native/react.js.map +1 -1
  136. package/dist/react-native/reanimated.d.ts +39 -0
  137. package/dist/react-native/reanimated.d.ts.map +1 -0
  138. package/dist/react-native/reanimated.js +76 -0
  139. package/dist/react-native/reanimated.js.map +1 -0
  140. package/dist/runtime/NativeContext.d.ts +10 -1
  141. package/dist/runtime/NativeContext.d.ts.map +1 -1
  142. package/dist/runtime/NativeContext.js +67 -14
  143. package/dist/runtime/NativeContext.js.map +1 -1
  144. package/dist/runtime/NativeDynamic.d.ts +3 -2
  145. package/dist/runtime/NativeDynamic.d.ts.map +1 -1
  146. package/dist/runtime/NativeDynamic.js +37 -7
  147. package/dist/runtime/NativeDynamic.js.map +1 -1
  148. package/dist/runtime/NativeStatic.d.ts +23 -0
  149. package/dist/runtime/NativeStatic.d.ts.map +1 -0
  150. package/dist/runtime/NativeStatic.js +106 -0
  151. package/dist/runtime/NativeStatic.js.map +1 -0
  152. package/dist/runtime/NativeVars.d.ts +53 -0
  153. package/dist/runtime/NativeVars.d.ts.map +1 -0
  154. package/dist/runtime/NativeVars.js +77 -0
  155. package/dist/runtime/NativeVars.js.map +1 -0
  156. package/dist/runtime/index.d.ts +4 -0
  157. package/dist/runtime/index.d.ts.map +1 -1
  158. package/dist/runtime/index.js +4 -0
  159. package/dist/runtime/index.js.map +1 -1
  160. package/dist/runtime/internal/NativeMedia.d.ts +25 -0
  161. package/dist/runtime/internal/NativeMedia.d.ts.map +1 -0
  162. package/dist/runtime/internal/NativeMedia.js +36 -0
  163. package/dist/runtime/internal/NativeMedia.js.map +1 -0
  164. package/dist/vite/index.d.ts.map +1 -1
  165. package/dist/vite/index.js +7 -35
  166. package/dist/vite/index.js.map +1 -1
  167. package/dist/web/Css.d.ts.map +1 -1
  168. package/dist/web/Css.js +31 -19
  169. package/dist/web/Css.js.map +1 -1
  170. package/dist/web/internal/Themes.d.ts +0 -2
  171. package/dist/web/internal/Themes.d.ts.map +1 -1
  172. package/dist/web/internal/Themes.js +30 -28
  173. package/dist/web/internal/Themes.js.map +1 -1
  174. package/dist/web/page.d.ts +2 -0
  175. package/dist/web/page.d.ts.map +1 -1
  176. package/native/NativeZyzz.cpp +215 -0
  177. package/native/NativeZyzz.h +52 -0
  178. package/native/ZyzzSpecJSI.h +65 -0
  179. package/native/android/CMakeLists.txt +8 -0
  180. package/native/android/ZyzzSpec-generated.cpp +50 -0
  181. package/native/android/ZyzzSpec.h +31 -0
  182. package/native/ios/ZyzzModuleProvider.mm +13 -0
  183. package/package.json +39 -1
  184. package/react-native.config.ts +14 -0
  185. package/src/Style.ts +11 -8
  186. package/src/babel/NativeJsx.ts +319 -33
  187. package/src/babel/index.ts +21 -3
  188. package/src/compiler/Graph.ts +126 -0
  189. package/src/compiler/Native.ts +158 -26
  190. package/src/compiler/Source.ts +32 -5
  191. package/src/compiler/internal/Configurations.ts +25 -3
  192. package/src/compiler/internal/Contract.ts +98 -50
  193. package/src/compiler/internal/Contributions.ts +7 -1
  194. package/src/compiler/internal/Descriptors.ts +12 -8
  195. package/src/compiler/internal/Dynamic.ts +4 -0
  196. package/src/compiler/internal/Expression.ts +2 -2
  197. package/src/compiler/internal/NativeBindings.ts +99 -15
  198. package/src/compiler/internal/NativeMedia.ts +342 -0
  199. package/src/compiler/internal/NativeVars.ts +231 -0
  200. package/src/compiler/internal/PackedStyles.ts +4 -0
  201. package/src/compiler/internal/Themes.ts +193 -2
  202. package/src/compiler/internal/Vars.ts +12 -1
  203. package/src/internal/Completion.ts +6 -3
  204. package/src/internal/Targets.ts +2 -0
  205. package/src/internal/Token.ts +0 -2
  206. package/src/internal/Value.ts +20 -0
  207. package/src/metro/Graph.ts +250 -50
  208. package/src/metro/Watch.ts +95 -10
  209. package/src/metro/index.ts +62 -4
  210. package/src/metro/transformer.ts +21 -11
  211. package/src/react-native/StyleSheet.ts +56 -49
  212. package/src/react-native/index.native.ts +10 -0
  213. package/src/react-native/index.ts +1 -1
  214. package/src/react-native/internal/Calculation.ts +159 -0
  215. package/src/react-native/internal/Device.ts +297 -0
  216. package/src/react-native/internal/NativeZyzz.ts +20 -0
  217. package/src/react-native/internal/Scalar.ts +86 -4
  218. package/src/react-native/internal/Store.ts +78 -0
  219. package/src/react-native/internal/Styles.ts +77 -0
  220. package/src/react-native/internal/Tokens.ts +85 -0
  221. package/src/react-native/internal/Viewport.ts +8 -0
  222. package/src/react-native/react.ts +218 -26
  223. package/src/react-native/reanimated.ts +162 -0
  224. package/src/runtime/NativeContext.ts +88 -17
  225. package/src/runtime/NativeDynamic.ts +42 -10
  226. package/src/runtime/NativeStatic.ts +145 -0
  227. package/src/runtime/NativeVars.ts +189 -0
  228. package/src/runtime/index.ts +6 -0
  229. package/src/runtime/internal/NativeMedia.ts +63 -0
  230. package/src/vite/index.ts +9 -42
  231. package/src/web/Css.ts +42 -27
  232. package/src/web/internal/Themes.ts +34 -57
  233. package/src/web/page.ts +2 -0
@@ -29,6 +29,7 @@ export declare const properties: {
29
29
  readonly columnGap: 'length';
30
30
  readonly direction: readonly ['ltr', 'rtl'];
31
31
  readonly display: readonly ['contents', 'flex', 'none'];
32
+ readonly flex: 'flex';
32
33
  readonly flexBasis: 'size';
33
34
  readonly flexDirection: readonly ['column', 'column-reverse', 'row', 'row-reverse'];
34
35
  readonly flexGrow: 'number';
@@ -41,6 +42,7 @@ export declare const properties: {
41
42
  readonly fontWeight: 'weight';
42
43
  readonly gap: 'length';
43
44
  readonly height: 'size';
45
+ readonly inset: 'boxOffset';
44
46
  readonly justifyContent: readonly ['center', 'flex-end', 'flex-start', 'space-around', 'space-between', 'space-evenly'];
45
47
  readonly left: 'offset';
46
48
  readonly letterSpacing: 'signed';
@@ -90,6 +92,20 @@ export type Options = {
90
92
  };
91
93
  /** Converts a validated property domain using explicit unit and font mappings. */
92
94
  export declare function convert(kind: (typeof properties)[keyof typeof properties], value: number | string, options: Options, path: readonly string[]): number | string;
95
+ /**
96
+ * Expands the CSS `flex` shorthand to native longhands with CSS semantics.
97
+ * Omitted factors default to 1 and an omitted basis to 0, unlike the React Native `flex` prop.
98
+ */
99
+ export declare function flex(value: number | string, options: Options, path: readonly string[]): flex.ReturnType;
100
+ /** Native longhands produced by the `flex` shorthand. */
101
+ export declare namespace flex {
102
+ /** Grow and shrink factors with a converted basis. */
103
+ type ReturnType = {
104
+ readonly flexBasis: number | string;
105
+ readonly flexGrow: number;
106
+ readonly flexShrink: number;
107
+ };
108
+ }
93
109
  /** Converts a portable length to logical units. */
94
110
  export declare function length(value: number | string, options: Options, signed: boolean, path: readonly string[]): number;
95
111
  //# sourceMappingURL=Scalar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Scalar.d.ts","sourceRoot":"","sources":["../../../src/react-native/internal/Scalar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Scalar.d.ts","sourceRoot":"","sources":["../../../src/react-native/internal/Scalar.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  /** Converts portable scalar values without source parsing or device state. @module */
2
2
  import * as Color from './Color.js';
3
+ import * as Calculation from './Calculation.js';
3
4
  /** Portable property domains shared by static and dynamic native conversion. */
4
5
  export const properties = {
5
6
  alignContent: [
@@ -46,6 +47,7 @@ export const properties = {
46
47
  columnGap: 'length',
47
48
  direction: ['ltr', 'rtl'],
48
49
  display: ['contents', 'flex', 'none'],
50
+ flex: 'flex',
49
51
  flexBasis: 'size',
50
52
  flexDirection: ['column', 'column-reverse', 'row', 'row-reverse'],
51
53
  flexGrow: 'number',
@@ -58,6 +60,7 @@ export const properties = {
58
60
  fontWeight: 'weight',
59
61
  gap: 'length',
60
62
  height: 'size',
63
+ inset: 'boxOffset',
61
64
  justifyContent: [
62
65
  'center',
63
66
  'flex-end',
@@ -167,22 +170,77 @@ export function convert(kind, value, options, path) {
167
170
  return value;
168
171
  fail('unsupported_value', 'Invalid native percentage.', path);
169
172
  }
170
- if (kind === 'box' || kind === 'boxSigned') {
171
- const values = typeof value === 'string' ? value.trim().split(/\s+/) : [value];
173
+ if (kind === 'flex') {
174
+ flex(value, options, path);
175
+ return 0;
176
+ }
177
+ if (kind === 'box' || kind === 'boxOffset' || kind === 'boxSigned') {
178
+ const values = typeof value === 'string' ? Calculation.parts(value) : [value];
172
179
  if (!values.length || values.length > 4)
173
180
  fail('unsupported_value', 'Use one to four scalar lengths.', path);
174
181
  for (const value of values)
175
- length(value, options, kind === 'boxSigned', path);
182
+ if (kind === 'boxOffset')
183
+ convert('offset', value, options, path);
184
+ else
185
+ length(value, options, kind === 'boxSigned', path);
176
186
  return 0;
177
187
  }
178
188
  return length(value, options, kind === 'signed' || kind === 'offset', path);
179
189
  }
190
+ /**
191
+ * Expands the CSS `flex` shorthand to native longhands with CSS semantics.
192
+ * Omitted factors default to 1 and an omitted basis to 0, unlike the React Native `flex` prop.
193
+ */
194
+ export function flex(value, options, path) {
195
+ const keyword = typeof value === 'string' ? value.trim() : undefined;
196
+ if (keyword === 'none')
197
+ return { flexBasis: 'auto', flexGrow: 0, flexShrink: 0 };
198
+ if (keyword === 'auto')
199
+ return { flexBasis: 'auto', flexGrow: 1, flexShrink: 1 };
200
+ if (keyword === 'initial')
201
+ return { flexBasis: 'auto', flexGrow: 0, flexShrink: 1 };
202
+ const parts = typeof value === 'string' ? Calculation.parts(value) : [value];
203
+ const kinds = [];
204
+ for (const part of parts) {
205
+ const numeric = typeof part === 'number' ||
206
+ /^[+-]?(?:\d+(?:\.\d+)?|\.\d+)(?:[eE][+-]?\d+)?$/.test(part);
207
+ // A unitless zero after two factors is the basis, as in CSS.
208
+ const basis = !numeric || (kinds.join(' ') === 'factor factor' && Number(part) === 0);
209
+ kinds.push(basis ? 'basis' : 'factor');
210
+ }
211
+ // Factors stay adjacent, and the basis may precede or follow them.
212
+ if (![
213
+ 'basis',
214
+ 'basis factor',
215
+ 'basis factor factor',
216
+ 'factor',
217
+ 'factor basis',
218
+ 'factor factor',
219
+ 'factor factor basis',
220
+ ].includes(kinds.join(' ')))
221
+ fail('unsupported_value', 'Invalid flex shorthand.', path);
222
+ const factors = parts
223
+ .filter((_, index) => kinds[index] === 'factor')
224
+ .map((part) => convert('number', Number(part), options, path));
225
+ const basis = parts.find((_, index) => kinds[index] === 'basis');
226
+ return {
227
+ flexBasis: basis === undefined ? 0 : convert('size', basis, options, path),
228
+ flexGrow: factors[0] ?? 1,
229
+ flexShrink: factors[1] ?? 1,
230
+ };
231
+ }
180
232
  /** Converts a portable length to logical units. */
181
233
  export function length(value, options, signed, path) {
182
234
  if (value === 0 || value === '0')
183
235
  return 0;
236
+ if (typeof value === 'string' && /^\s*calc\(/i.test(value)) {
237
+ const result = Calculation.length(value.trim(), options);
238
+ if (!signed && result < 0)
239
+ fail('unsupported_value', 'Converted length is outside the native property domain.', path);
240
+ return result;
241
+ }
184
242
  const match = typeof value === 'string' &&
185
- /^([+-]?(?:\d+(?:\.\d+)?|\.\d+))(px|rem)$/.exec(value);
243
+ /^([+-]?(?:\d+(?:\.\d+)?|\.\d+)(?:[eE][+-]?\d+)?)(px|rem)$/.exec(value);
186
244
  if (!match)
187
245
  fail('unsupported_value', 'Use zero, px, or rem with an explicit rem conversion.', path);
188
246
  const scale = match[2] === 'px' ? (options.units?.px ?? 1) : options.units?.rem;
@@ -1 +1 @@
1
- {"version":3,"file":"Scalar.js","sourceRoot":"","sources":["../../../src/react-native/internal/Scalar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Scalar.js","sourceRoot":"","sources":["../../../src/react-native/internal/Scalar.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /** Owns scoped React subscriptions and committed native style readers. @module */
2
+ import type * as NativeContext from '../../runtime/NativeContext.js';
3
+ import * as React from 'react';
4
+ /** Internal view update payload shared with the native bridge. */
5
+ export type Patch = {
6
+ /** Runtime-local mounted view identifier. */
7
+ readonly id: number;
8
+ /** Processed native style properties. */
9
+ readonly props: Record<string, unknown>;
10
+ };
11
+ type Selection = {
12
+ readonly commit: () => void;
13
+ readonly patch?: Patch | undefined;
14
+ };
15
+ type Reader = (value: NativeContext.Context) => Selection;
16
+ type Writer = (patches: readonly Patch[]) => void;
17
+ /** Nearest configuration-owned selection. */
18
+ export declare const context: React.Context<{
19
+ bind(read: Reader, write: Writer): () => void;
20
+ getSnapshot: () => Readonly<NativeContext.Context>;
21
+ subscribe(listener: () => void): () => void;
22
+ update(value: NativeContext.Context): void;
23
+ } | undefined>;
24
+ /** Creates subscriptions owned by a Provider or a provider-free style consumer. */
25
+ export declare function create(initial: NativeContext.Context): {
26
+ bind(read: Reader, write: Writer): () => void;
27
+ getSnapshot: () => Readonly<NativeContext.Context>;
28
+ subscribe(listener: () => void): () => void;
29
+ update(value: NativeContext.Context): void;
30
+ };
31
+ export {};
32
+ //# sourceMappingURL=Store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Store.d.ts","sourceRoot":"","sources":["../../../src/react-native/internal/Store.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,OAAO,KAAK,KAAK,aAAa,MAAM,gCAAgC,CAAA;AACpE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,kEAAkE;AAClE,MAAM,MAAM,KAAK,GAAG;IAClB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACxC,CAAA;AAED,KAAK,SAAS,GAAG;IACf,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAA;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CACnC,CAAA;AACD,KAAK,MAAM,GAAG,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,KAAK,SAAS,CAAA;AACzD,KAAK,MAAM,GAAG,CAAC,OAAO,EAAE,SAAS,KAAK,EAAE,KAAK,IAAI,CAAA;AAEjD,6CAA6C;AAC7C,eAAO,MAAM,OAAO;eAWL,MAAM,SAAS,MAAM;;wBAOZ,MAAM,IAAI;kBAOhB,aAAa,CAAC,OAAO;cAvB3B,CAAA;AAEZ,mFAAmF;AACnF,wBAAgB,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO;IAMjD,IAAI,OAAO,MAAM,SAAS,MAAM;IAMhC,WAAW;IACX,SAAS,WAAW,MAAM,IAAI;IAO9B,MAAM,QAAQ,aAAa,CAAC,OAAO;EAgCtC"}
@@ -0,0 +1,57 @@
1
+ import * as React from 'react';
2
+ /** Nearest configuration-owned selection. */
3
+ export const context = React.createContext(undefined);
4
+ /** Creates subscriptions owned by a Provider or a provider-free style consumer. */
5
+ export function create(initial) {
6
+ let snapshot = Object.freeze(initial);
7
+ const bindings = new Map();
8
+ const listeners = new Set();
9
+ return {
10
+ bind(read, write) {
11
+ bindings.set(read, write);
12
+ return () => {
13
+ bindings.delete(read);
14
+ };
15
+ },
16
+ getSnapshot: () => snapshot,
17
+ subscribe(listener) {
18
+ const entry = () => listener();
19
+ listeners.add(entry);
20
+ return () => {
21
+ listeners.delete(entry);
22
+ };
23
+ },
24
+ update(value) {
25
+ if (snapshot.colorScheme === value.colorScheme &&
26
+ snapshot.set === value.set &&
27
+ snapshot.viewport?.height === value.viewport?.height &&
28
+ snapshot.viewport?.width === value.viewport?.width)
29
+ return;
30
+ // Resolve every binding before applying a scope change that can fail.
31
+ const selections = [];
32
+ const batches = new Map();
33
+ for (const [read, write] of bindings) {
34
+ const selection = read(value);
35
+ selections.push(selection);
36
+ if (!selection.patch)
37
+ continue;
38
+ let batch = batches.get(write);
39
+ if (!batch) {
40
+ batch = [];
41
+ batches.set(write, batch);
42
+ }
43
+ batch.push(selection.patch);
44
+ }
45
+ for (const [write, patches] of batches)
46
+ write(patches);
47
+ snapshot = Object.freeze(value);
48
+ for (const selection of selections)
49
+ selection.commit();
50
+ // Subscriptions added during notification wait for the next change.
51
+ for (const listener of Array.from(listeners))
52
+ if (listeners.has(listener))
53
+ listener();
54
+ },
55
+ };
56
+ }
57
+ //# sourceMappingURL=Store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Store.js","sourceRoot":"","sources":["../../../src/react-native/internal/Store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAiB9B,6CAA6C;AAC7C,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAExC,SAAS,CAAC,CAAA;AAEZ,mFAAmF;AACnF,MAAM,UAAU,MAAM,CAAC,OAA8B;IACnD,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACrC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC1C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAA;IAEvC,OAAO;QACL,IAAI,CAAC,IAAY,EAAE,KAAa;YAC9B,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YACzB,OAAO,GAAG,EAAE;gBACV,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACvB,CAAC,CAAA;QACH,CAAC;QACD,WAAW,EAAE,GAAG,EAAE,CAAC,QAAQ;QAC3B,SAAS,CAAC,QAAoB;YAC5B,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAA;YAC9B,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACpB,OAAO,GAAG,EAAE;gBACV,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACzB,CAAC,CAAA;QACH,CAAC;QACD,MAAM,CAAC,KAA4B;YACjC,IACE,QAAQ,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW;gBAC1C,QAAQ,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;gBAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,KAAK,KAAK,CAAC,QAAQ,EAAE,MAAM;gBACpD,QAAQ,CAAC,QAAQ,EAAE,KAAK,KAAK,KAAK,CAAC,QAAQ,EAAE,KAAK;gBAElD,OAAM;YAER,sEAAsE;YACtE,MAAM,UAAU,GAAgB,EAAE,CAAA;YAClC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmB,CAAA;YAC1C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACrC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;gBAC7B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAC1B,IAAI,CAAC,SAAS,CAAC,KAAK;oBAAE,SAAQ;gBAC9B,IAAI,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,KAAK,GAAG,EAAE,CAAA;oBACV,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;gBAC3B,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;YAC7B,CAAC;YACD,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,OAAO;gBAAE,KAAK,CAAC,OAAO,CAAC,CAAA;YAEtD,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC/B,KAAK,MAAM,SAAS,IAAI,UAAU;gBAAE,SAAS,CAAC,MAAM,EAAE,CAAA;YACtD,oEAAoE;YACpE,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;gBAC1C,IAAI,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC;oBAAE,QAAQ,EAAE,CAAA;QAC3C,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,19 @@
1
+ import * as React from 'react';
2
+ import type { useStyles } from '../react.js';
3
+ import type * as Store from './Store.js';
4
+ /** Subscribes to a selection and returns its style resolvers. */
5
+ export declare function use(store: ReturnType<typeof Store.create>): useStyles.ReturnType;
6
+ /**
7
+ * Wraps a component so its style props resolve through an entrypoint's selection hook.
8
+ * @throws For invalid style prop names.
9
+ */
10
+ export declare function wrap<const component extends React.ElementType>(Component: component, options: wrap.Options, useStyles: () => useStyles.ReturnType): React.ForwardRefExoticComponent<React.PropsWithoutRef<React.PropsWithoutRef<React.ComponentProps<component>>> & React.RefAttributes<React.ComponentRef<component>>>;
11
+ /** Style-bearing prop names accepted by a wrapper. */
12
+ export declare namespace wrap {
13
+ /** Entrypoints narrow these names to the wrapped component's props. */
14
+ type Options = {
15
+ /** Additional style props declared by the wrapped component. */
16
+ readonly styleProps?: readonly string[] | undefined;
17
+ };
18
+ }
19
+ //# sourceMappingURL=Styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../src/react-native/internal/Styles.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAA;AAExC,iEAAiE;AACjE,wBAAgB,GAAG,CACjB,KAAK,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,GACrC,SAAS,CAAC,UAAU,CAiBtB;AAED;;;GAGG;AACH,wBAAgB,IAAI,CAAC,KAAK,CAAC,SAAS,SAAS,KAAK,CAAC,WAAW,EAC5D,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,SAAS,EAAE,MAAM,SAAS,CAAC,UAAU,uKAgCtC;AAED,sDAAsD;AACtD,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B,uEAAuE;IACvE,KAAK,OAAO,GAAG;QACb,gEAAgE;QAChE,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAA;KACpD,CAAA;CACF"}
@@ -0,0 +1,35 @@
1
+ /** Resolves compiled style applications for consumers outside native view bindings. @module */
2
+ import * as NativeContext from '../../runtime/NativeContext.js';
3
+ import * as React from 'react';
4
+ /** Subscribes to a selection and returns its style resolvers. */
5
+ export function use(store) {
6
+ const value = React.useSyncExternalStore(store.subscribe, store.getSnapshot, store.getSnapshot);
7
+ return React.useMemo(() => ({
8
+ props: (props) => props && Object.hasOwn(props, 'style')
9
+ ? { ...props, style: NativeContext.resolve(props.style, value) }
10
+ : props,
11
+ style: (style, input) => NativeContext.resolve(style, value, input),
12
+ }), [value]);
13
+ }
14
+ /**
15
+ * Wraps a component so its style props resolve through an entrypoint's selection hook.
16
+ * @throws For invalid style prop names.
17
+ */
18
+ export function wrap(Component, options, useStyles) {
19
+ const additional = options.styleProps ?? [];
20
+ if (!Array.isArray(additional) ||
21
+ additional.some((name) => typeof name !== 'string' || !name || name === 'key' || name === 'ref'))
22
+ throw new Error('withStyles requires style prop names excluding key and ref.');
23
+ const names = [...new Set(['style', 'contentContainerStyle', ...additional])];
24
+ const Wrapped = React.forwardRef((props, ref) => {
25
+ const selected = useStyles();
26
+ const resolved = { ...props, ref };
27
+ for (const name of names)
28
+ if (Object.hasOwn(props, name))
29
+ resolved[name] = selected.style(props[name]);
30
+ return React.createElement(Component, resolved);
31
+ });
32
+ Wrapped.displayName = `withStyles(${typeof Component === 'string' ? Component : Component.displayName || Component.name || 'Component'})`;
33
+ return Wrapped;
34
+ }
35
+ //# sourceMappingURL=Styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Styles.js","sourceRoot":"","sources":["../../../src/react-native/internal/Styles.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,OAAO,KAAK,aAAa,MAAM,gCAAgC,CAAA;AAC/D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,iEAAiE;AACjE,MAAM,UAAU,GAAG,CACjB,KAAsC;IAEtC,MAAM,KAAK,GAAG,KAAK,CAAC,oBAAoB,CACtC,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,WAAW,CAClB,CAAA;IACD,OAAO,KAAK,CAAC,OAAO,CAClB,GAAG,EAAE,CAAC,CAAC;QACL,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;YACpC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;YAChE,CAAC,CAAC,KAAK;QACX,KAAK,EAAE,CAAQ,KAAY,EAAE,KAAe,EAAE,EAAE,CAC9C,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAA2B;KACvE,CAAC,EACF,CAAC,KAAK,CAAC,CACR,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,IAAI,CAClB,SAAoB,EACpB,OAAqB,EACrB,SAAqC;IAErC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAA;IAC3C,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;QAC1B,UAAU,CAAC,IAAI,CACb,CAAC,IAAI,EAAE,EAAE,CACP,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,CACxE;QAED,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAA;IAEH,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,uBAAuB,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;IAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAG9B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACf,MAAM,QAAQ,GAAG,SAAS,EAAE,CAAA;QAC5B,MAAM,QAAQ,GAA4B,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,CAAA;QAC3D,KAAK,MAAM,IAAI,IAAI,KAAK;YACtB,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;gBAC5B,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAC5B,KAAiC,CAAC,IAAI,CAAC,CACzC,CAAA;QAEL,OAAO,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IACjD,CAAC,CAAC,CAAA;IACF,OAAO,CAAC,WAAW,GAAG,cAAc,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,IAAI,IAAI,WAAW,GAAG,CAAA;IAEzI,OAAO,OAAO,CAAA;AAChB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import type * as Scalar from './Scalar.js';
2
+ import type * as Style from '../../Style.js';
3
+ import * as Token from '../../internal/Token.js';
4
+ /** Identifies values whose behavior requires a web target. */
5
+ export declare class UnsupportedError extends Error {
6
+ name: string;
7
+ }
8
+ /** Selects live token aliases and schemes without evaluating authored code. */
9
+ export declare function resolve(input: Style.Declaration['value'], options: resolve.Options): string | number;
10
+ /** Native token selection and explicit unit conversion. */
11
+ export declare namespace resolve {
12
+ /** Profile metadata and scheme independence shared by table preparation. */
13
+ type Options = Scalar.Options & {
14
+ readonly colorScheme: 'dark' | 'light';
15
+ readonly metadata: Token.Metadata | undefined;
16
+ readonly resolution: {
17
+ schemeIndependent: boolean;
18
+ };
19
+ };
20
+ }
21
+ //# sourceMappingURL=Tokens.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tokens.d.ts","sourceRoot":"","sources":["../../../src/react-native/internal/Tokens.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,KAAK,KAAK,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAA;AAEhD,8DAA8D;AAC9D,qBAAa,gBAAiB,SAAQ,KAAK;IAChC,IAAI,SAA4B;CAC1C;AAED,+EAA+E;AAC/E,wBAAgB,OAAO,CACrB,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,EACjC,OAAO,EAAE,OAAO,CAAC,OAAO,GACvB,MAAM,GAAG,MAAM,CA2DjB;AAED,2DAA2D;AAC3D,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,4EAA4E;IAC5E,KAAK,OAAO,GAAG,MAAM,CAAC,OAAO,GAAG;QAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAA;QACtC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAA;QAC7C,QAAQ,CAAC,UAAU,EAAE;YAAE,iBAAiB,EAAE,OAAO,CAAA;SAAE,CAAA;KACpD,CAAA;CACF"}
@@ -0,0 +1,58 @@
1
+ /** Resolves portable references for native tables and callback expressions. @module */
2
+ import * as Calculation from './Calculation.js';
3
+ import * as Token from '../../internal/Token.js';
4
+ /** Identifies values whose behavior requires a web target. */
5
+ export class UnsupportedError extends Error {
6
+ name = 'Tokens.UnsupportedError';
7
+ }
8
+ /** Selects live token aliases and schemes without evaluating authored code. */
9
+ export function resolve(input, options) {
10
+ const active = new Set();
11
+ function scalar(value) {
12
+ if (typeof value === 'number' || typeof value === 'string')
13
+ return value;
14
+ if (Token.is(value) &&
15
+ !Object.getOwnPropertyDescriptor(value, Token.web)?.value) {
16
+ if (active.has(value))
17
+ throw new Error('Native token aliases must not form a cycle.');
18
+ const metadata = options.metadata;
19
+ const shared = metadata &&
20
+ (metadata.contract === value.contract ||
21
+ (metadata.contract[Token.identity] !== undefined &&
22
+ metadata.contract[Token.identity] ===
23
+ value.contract[Token.identity]));
24
+ const next = shared
25
+ ? Object.hasOwn(metadata.values, value.path)
26
+ ? metadata.values[value.path]
27
+ : undefined
28
+ : value.value;
29
+ if (next === undefined)
30
+ throw new Error('Theme is missing a live token.');
31
+ active.add(value);
32
+ const result = scalar(next);
33
+ active.delete(value);
34
+ return result;
35
+ }
36
+ if (Token.isExpression(value)) {
37
+ const text = value.parts.map(scalar).join('');
38
+ if (!('group' in value) ||
39
+ value.group !== 'spacing' ||
40
+ !/^\s*calc\(/i.test(text))
41
+ return text;
42
+ return `${Calculation.length(text, options) / (options.units?.px ?? 1)}px`;
43
+ }
44
+ if (value &&
45
+ typeof value === 'object' &&
46
+ 'light' in value &&
47
+ 'dark' in value) {
48
+ if (value.light !== value.dark)
49
+ options.resolution.schemeIndependent = false;
50
+ return scalar(value[options.colorScheme]);
51
+ }
52
+ if (value && typeof value === 'object' && 'default' in value)
53
+ throw new UnsupportedError('Media-conditioned variables require a web target.');
54
+ throw new UnsupportedError('Web variables, expressions, and dynamic bindings are not native scalar tokens.');
55
+ }
56
+ return scalar(input);
57
+ }
58
+ //# sourceMappingURL=Tokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tokens.js","sourceRoot":"","sources":["../../../src/react-native/internal/Tokens.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /** Connects the native device adapter to framework subscriptions. @module */
2
+ import type * as Media from '../../runtime/internal/NativeMedia.js';
3
+ import * as React from 'react';
4
+ /** Window measurements owned by the native Provider lifecycle. */
5
+ export declare const context: React.Context<Media.Viewport | undefined>;
6
+ //# sourceMappingURL=Viewport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../../src/react-native/internal/Viewport.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,OAAO,KAAK,KAAK,KAAK,MAAM,uCAAuC,CAAA;AACnE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,kEAAkE;AAClE,eAAO,MAAM,OAAO,2CAEnB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ /** Window measurements owned by the native Provider lifecycle. */
3
+ export const context = React.createContext(undefined);
4
+ //# sourceMappingURL=Viewport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Viewport.js","sourceRoot":"","sources":["../../../src/react-native/internal/Viewport.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,kEAAkE;AAClE,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CACxC,SAAS,CACV,CAAA"}
@@ -1,22 +1,110 @@
1
- /** React lifecycle for automatically compiled native styling. @module */
1
+ /** React subscriptions for compiled native styles and variable values. @module */
2
+ import * as Config from '../Config.js';
3
+ import type * as NativeContext from '../runtime/NativeContext.js';
4
+ import * as NativeVars from '../runtime/NativeVars.js';
2
5
  import * as React from 'react';
3
- import * as NativeContext from '../runtime/NativeContext.js';
4
- /** Supplies set and resolved device appearance to compiled native components. */
6
+ import type * as Vars from '../Vars.js';
7
+ import * as Store from './internal/Store.js';
8
+ /** Creates native authoring helpers and a Provider typed to the configured variables. */
9
+ export declare function defineConfig<const options extends Config.create.Options = {}>(options?: options & Parameters<typeof Config.create<options>>[0]): defineConfig.ReturnType<options>;
10
+ /** Native configuration helpers and inferred Provider props. */
11
+ export declare namespace defineConfig {
12
+ /** Resolved scheme and variable names from the owning configuration. */
13
+ type ProviderProps<options extends Config.create.Options> = Omit<Provider.Props, 'vars'> & {
14
+ /** Selected variables. Omission uses the owning configuration's default. */
15
+ readonly vars?: (options extends {
16
+ defaultVars: string;
17
+ vars: infer catalog;
18
+ } ? Extract<keyof catalog, string> : never) | undefined;
19
+ };
20
+ /** Existing authoring helpers plus a configuration-scoped Provider. */
21
+ type ReturnType<options extends Config.create.Options = {}> = Config.create.ReturnType<options> & {
22
+ /** Provides this configuration's typed selection to native consumers. */
23
+ readonly Provider: React.FunctionComponent<ProviderProps<options>>;
24
+ };
25
+ }
26
+ /** Supplies selected variables, appearance, and adapter measurements to this subtree. */
5
27
  export declare function Provider(props: Provider.Props): React.FunctionComponentElement<React.ProviderProps<{
6
- style: (style: unknown, input?: unknown) => unknown;
7
- props: (props: Record<string, unknown> | null | undefined) => Record<string, unknown> | null | undefined;
8
- }>>;
9
- /** Application boundary inputs. Pass React Native's useColorScheme result with a light fallback. */
28
+ bind(read: (value: NativeContext.Context) => {
29
+ readonly commit: () => void;
30
+ readonly patch?: Store.Patch | undefined;
31
+ }, write: (patches: readonly Store.Patch[]) => void): () => void;
32
+ getSnapshot: () => Readonly<NativeContext.Context>;
33
+ subscribe(listener: () => void): () => void;
34
+ update(value: NativeContext.Context): void;
35
+ } | undefined>>;
36
+ /** Application boundary for native variable selection. */
10
37
  export declare namespace Provider {
11
- /** Theme selection and resolved appearance for this React subtree. */
12
- type Props = NativeContext.Context & {
13
- /** Components that consume compiled native styles. */
38
+ /** Resolved appearance and a configuration-relative variable name. */
39
+ type Props = {
40
+ /** Components that consume compiled native styling or values. */
14
41
  readonly children?: React.ReactNode | undefined;
42
+ /** Resolved device scheme or an application override. */
43
+ readonly colorScheme: 'dark' | 'light';
44
+ /** Selected variables. Omission uses each configuration's default. */
45
+ readonly vars?: string | undefined;
15
46
  };
16
47
  }
17
- /** Compiler-inserted unconditional subscription, including memoized components. */
18
- export declare function useStyles(): {
19
- style: (style: unknown, input?: unknown) => unknown;
20
- props: (props: Record<string, unknown> | null | undefined) => Record<string, unknown> | null | undefined;
48
+ /**
49
+ * Compiler-inserted subscription for resolving native style applications.
50
+ * Outside a Provider, selections use default variables and the light scheme.
51
+ */
52
+ export declare function useStyles(): useStyles.ReturnType;
53
+ /** Resolver types for Provider-selected native styles. */
54
+ export declare namespace useStyles {
55
+ /** Resolvers bound to the nearest Provider selection. */
56
+ type ReturnType = {
57
+ /** Resolves the `style` prop of applied props and preserves other props. */
58
+ readonly props: <props extends Readonly<Record<string, unknown>> | null | undefined>(props: props) => props;
59
+ /** Resolves an applied style, native style, style array, or style callback. */
60
+ readonly style: <style>(style: style, input?: unknown) => Style<style>;
61
+ };
62
+ /**
63
+ * Resolved style type. Caller-owned values keep their types. Native applications
64
+ * always carry `style`, so an applied style drops the `undefined` allowed by the shared props type.
65
+ */
66
+ type Style<style> = [
67
+ style extends object ? (string extends keyof style ? style : never) : never
68
+ ] extends [never] ? style : Exclude<style, undefined>;
69
+ }
70
+ /** Compiler fallback for native view bindings when no native adapter is installed. */
71
+ export declare function useNativeStyles(): {
72
+ props: <props extends Readonly<Record<string, unknown>> | null | undefined>(props: props) => props;
73
+ style: <style>(style: style, input?: unknown) => useStyles.Style<style>;
74
+ view: <props extends Readonly<Record<string, unknown>> | null | undefined>(props: props) => props;
21
75
  };
76
+ /**
77
+ * Reads readonly native variables using the nearest Provider's selection.
78
+ * @throws For missing providers, uncompiled definitions, or unsupported field reads.
79
+ */
80
+ export declare function useVars<const variables extends Vars.Definition>(variables: variables, select?: undefined): NativeVars.Values<Vars.Extract<variables>>;
81
+ /**
82
+ * Subscribes to a selection, comparing results with Object.is.
83
+ * @throws For invalid variable selection or unsupported field reads.
84
+ */
85
+ export declare function useVars<const variables extends Vars.Definition, selected>(variables: variables, select: (values: NativeVars.Values<Vars.Extract<variables>>) => selected): selected;
86
+ /**
87
+ * Resolves compiled style props for function components using React updates.
88
+ * @param Component - Function, memo, or ref-forwarding component receiving native styles.
89
+ * @param options - Additional style-bearing prop names.
90
+ * @returns A component with the original call signature and ref. Type parameters remain when `styleProps` is omitted.
91
+ * @throws For invalid style prop names.
92
+ */
93
+ export declare function withStyles<props extends object, result extends React.ReactNode>(Component: (props: props) => result, options?: NoInfer<withStyles.Options<(props: props) => result>>): (props: props) => result;
94
+ /**
95
+ * Resolves compiled style props for class and host components using React updates.
96
+ * @param Component - Class component or host element type receiving native styles.
97
+ * @param options - Additional style-bearing prop names.
98
+ * @returns A component preserving the original props and instance ref.
99
+ * @throws For invalid style prop names.
100
+ */
101
+ export declare function withStyles<const component extends React.ElementType>(Component: component, options?: withStyles.Options<component>): React.ForwardRefExoticComponent<React.ComponentPropsWithRef<component>>;
102
+ /** Style-bearing component properties resolved by the wrapper. */
103
+ export declare namespace withStyles {
104
+ /** Additional names are resolved alongside style and contentContainerStyle. */
105
+ type Options<component extends React.ElementType> = {
106
+ /** Additional style props declared by the wrapped component. */
107
+ readonly styleProps?: readonly Exclude<Extract<keyof React.ComponentProps<component>, string>, 'key' | 'ref'>[] | undefined;
108
+ };
109
+ }
22
110
  //# sourceMappingURL=react.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../src/react-native/react.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,aAAa,MAAM,6BAA6B,CAAA;AAI5D,iFAAiF;AACjF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK;mBAgC3B,OAAO,UAAU,OAAO;mBAExB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS;IApB5D;AAED,oGAAoG;AACpG,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,sEAAsE;IACtE,KAAK,KAAK,GAAG,aAAa,CAAC,OAAO,GAAG;QACnC,sDAAsD;QACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAA;KAChD,CAAA;CACF;AAED,mFAAmF;AACnF,wBAAgB,SAAS;mBAMN,OAAO,UAAU,OAAO;mBAExB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS;EAN5D"}
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../src/react-native/react.ts"],"names":[],"mappings":"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"}