@felipe-software/react-native-gpui 0.0.0-placeholder → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.reanimated-prebuilt/react-native-reanimated.mjs +29373 -0
- package/LICENSE +21 -0
- package/README.md +658 -1
- package/cli/bin.ts +379 -0
- package/cli/bundle.ts +32 -0
- package/cli/commands/do.ts +213 -0
- package/cli/commands/flow.ts +283 -0
- package/cli/commands/get.ts +584 -0
- package/cli/commands/shot.ts +312 -0
- package/cli/commands/trace.ts +293 -0
- package/cli/host.ts +714 -0
- package/cli/hotReload.ts +210 -0
- package/cli/run.ts +66 -0
- package/cli/selectors.ts +205 -0
- package/dist/Animated.d.ts +120 -0
- package/dist/ChatList.d.ts +28 -0
- package/dist/Dimensions.d.ts +31 -0
- package/dist/StyleSheet.d.ts +18 -0
- package/dist/Window.d.ts +33 -0
- package/dist/apis.d.ts +165 -0
- package/dist/app-state.d.ts +27 -0
- package/dist/chat-list-types.d.ts +136 -0
- package/dist/colors.d.ts +32 -0
- package/dist/commands.d.ts +230 -0
- package/dist/components.d.ts +419 -0
- package/dist/hotModules.d.ts +1 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.development.js +14876 -0
- package/dist/index.js +12 -0
- package/dist/keyboard.d.ts +140 -0
- package/dist/native-menu.d.ts +7 -0
- package/dist/platform-driver.d.ts +32 -0
- package/dist/platform-services.d.ts +35 -0
- package/dist/portal.d.ts +43 -0
- package/dist/raf.d.ts +4 -0
- package/dist/reanimated/colors-processor-shim.d.ts +10 -0
- package/dist/reanimated/reanimated-host.d.ts +10 -0
- package/dist/reanimated/seam.d.ts +34 -0
- package/dist/reanimated/ui-entry.d.ts +2 -0
- package/dist/reanimated/worklet-channel.d.ts +10 -0
- package/dist/reanimated/worklet-runtime.d.ts +466 -0
- package/dist/reanimated/worklets.d.ts +199 -0
- package/dist/reconciler.d.ts +102 -0
- package/dist/refresh.d.ts +1 -0
- package/dist/render.d.ts +37 -0
- package/dist/runtime.d.ts +235 -0
- package/dist/surfaces.d.ts +51 -0
- package/dist/types.d.ts +276 -0
- package/dist/ui-runtime.js +42276 -0
- package/dist/window-context.d.ts +7 -0
- package/dist/window-host.d.ts +41 -0
- package/dist/wire-delta.d.ts +20 -0
- package/package.json +177 -1
- package/scripts/bundle-app.mjs +88 -0
- package/scripts/conformance-utils.mjs +293 -0
- package/scripts/hot-update-alias-plugin.mjs +88 -0
- package/scripts/native-package-exports-plugin.mjs +235 -0
- package/scripts/pixel.mjs +152 -0
- package/scripts/png.mjs +198 -0
- package/scripts/react-refresh-swc.mjs +35 -0
- package/scripts/reanimated-bun-plugin.mjs +188 -0
- package/scripts/service-binary.d.mts +27 -0
- package/scripts/service-binary.mjs +100 -0
- package/src/reanimated/colors-processor-shim.ts +119 -0
- package/src/reanimated/reanimated-host.ts +69 -0
- package/src/reanimated/rngpui-reanimated-prebuilt.d.ts +7 -0
- package/src/reanimated/seam.ts +566 -0
- package/src/reanimated/ui-entry.ts +80 -0
- package/src/reanimated/worklet-channel.ts +64 -0
- package/src/reanimated/worklet-runtime.ts +2569 -0
- package/src/reanimated/worklets.ts +1334 -0
- package/src/refresh.ts +33 -0
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* React-Native-compatible style + prop types for react-native-gpui.
|
|
3
|
+
* Mirrors the shapes of `react-native`'s public types closely enough that RN
|
|
4
|
+
* code (and RN muscle memory) transfers, scoped to what the GPUI bridge renders.
|
|
5
|
+
*/
|
|
6
|
+
import type { ReactNode } from "react";
|
|
7
|
+
export type DynamicColorIOSValue = {
|
|
8
|
+
dynamic: {
|
|
9
|
+
light?: ColorValue | null;
|
|
10
|
+
dark?: ColorValue | null;
|
|
11
|
+
highContrastLight?: ColorValue | null;
|
|
12
|
+
highContrastDark?: ColorValue | null;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export type PlatformColorValue = {
|
|
16
|
+
semantic: string[];
|
|
17
|
+
};
|
|
18
|
+
export type OpaqueColorValue = DynamicColorIOSValue | PlatformColorValue;
|
|
19
|
+
export type ColorValue = string | OpaqueColorValue;
|
|
20
|
+
export type DimensionValue = number | `${number}%` | "auto";
|
|
21
|
+
export type FlexAlignType = "flex-start" | "flex-end" | "center" | "stretch" | "baseline";
|
|
22
|
+
export interface FlexStyle {
|
|
23
|
+
alignContent?: "flex-start" | "flex-end" | "center" | "stretch" | "space-between" | "space-around" | "space-evenly";
|
|
24
|
+
alignItems?: FlexAlignType;
|
|
25
|
+
alignSelf?: "auto" | FlexAlignType;
|
|
26
|
+
aspectRatio?: number | string;
|
|
27
|
+
borderBottomWidth?: number;
|
|
28
|
+
borderEndWidth?: number;
|
|
29
|
+
borderLeftWidth?: number;
|
|
30
|
+
borderRightWidth?: number;
|
|
31
|
+
borderStartWidth?: number;
|
|
32
|
+
borderTopWidth?: number;
|
|
33
|
+
borderWidth?: number;
|
|
34
|
+
bottom?: DimensionValue;
|
|
35
|
+
columnGap?: number;
|
|
36
|
+
display?: "none" | "flex";
|
|
37
|
+
end?: DimensionValue;
|
|
38
|
+
flex?: number;
|
|
39
|
+
flexBasis?: DimensionValue;
|
|
40
|
+
flexDirection?: "row" | "column" | "row-reverse" | "column-reverse";
|
|
41
|
+
flexGrow?: number;
|
|
42
|
+
flexShrink?: number;
|
|
43
|
+
flexWrap?: "wrap" | "nowrap" | "wrap-reverse";
|
|
44
|
+
gap?: number;
|
|
45
|
+
height?: DimensionValue;
|
|
46
|
+
inset?: DimensionValue;
|
|
47
|
+
justifyContent?: "flex-start" | "flex-end" | "center" | "space-between" | "space-around" | "space-evenly";
|
|
48
|
+
left?: DimensionValue;
|
|
49
|
+
margin?: DimensionValue;
|
|
50
|
+
marginBottom?: DimensionValue;
|
|
51
|
+
marginEnd?: DimensionValue;
|
|
52
|
+
marginHorizontal?: DimensionValue;
|
|
53
|
+
marginLeft?: DimensionValue;
|
|
54
|
+
marginRight?: DimensionValue;
|
|
55
|
+
marginStart?: DimensionValue;
|
|
56
|
+
marginTop?: DimensionValue;
|
|
57
|
+
marginVertical?: DimensionValue;
|
|
58
|
+
maxHeight?: DimensionValue;
|
|
59
|
+
maxWidth?: DimensionValue;
|
|
60
|
+
minHeight?: DimensionValue;
|
|
61
|
+
minWidth?: DimensionValue;
|
|
62
|
+
overflow?: "visible" | "hidden" | "scroll";
|
|
63
|
+
padding?: DimensionValue;
|
|
64
|
+
paddingBottom?: DimensionValue;
|
|
65
|
+
paddingEnd?: DimensionValue;
|
|
66
|
+
paddingHorizontal?: DimensionValue;
|
|
67
|
+
paddingLeft?: DimensionValue;
|
|
68
|
+
paddingRight?: DimensionValue;
|
|
69
|
+
paddingStart?: DimensionValue;
|
|
70
|
+
paddingTop?: DimensionValue;
|
|
71
|
+
paddingVertical?: DimensionValue;
|
|
72
|
+
position?: "absolute" | "relative";
|
|
73
|
+
right?: DimensionValue;
|
|
74
|
+
rowGap?: number;
|
|
75
|
+
start?: DimensionValue;
|
|
76
|
+
top?: DimensionValue;
|
|
77
|
+
width?: DimensionValue;
|
|
78
|
+
zIndex?: number;
|
|
79
|
+
}
|
|
80
|
+
export interface ShadowStyleIOS {
|
|
81
|
+
shadowColor?: ColorValue;
|
|
82
|
+
shadowOffset?: {
|
|
83
|
+
width: number;
|
|
84
|
+
height: number;
|
|
85
|
+
};
|
|
86
|
+
shadowOpacity?: number;
|
|
87
|
+
shadowRadius?: number;
|
|
88
|
+
}
|
|
89
|
+
export interface ViewStyle extends FlexStyle, ShadowStyleIOS {
|
|
90
|
+
backgroundColor?: ColorValue;
|
|
91
|
+
/** CSS gradient string, e.g. "linear-gradient(135deg,#a,#b)" — gpui extension */
|
|
92
|
+
backgroundImage?: string;
|
|
93
|
+
/** React Native/Tamagui gradient payload emitted by the native style layer. */
|
|
94
|
+
experimental_backgroundImage?: unknown;
|
|
95
|
+
/** CSS box-shadow string (RN 0.76+) */
|
|
96
|
+
boxShadow?: string;
|
|
97
|
+
borderColor?: ColorValue;
|
|
98
|
+
borderTopColor?: ColorValue;
|
|
99
|
+
borderRightColor?: ColorValue;
|
|
100
|
+
borderBottomColor?: ColorValue;
|
|
101
|
+
borderLeftColor?: ColorValue;
|
|
102
|
+
borderRadius?: number;
|
|
103
|
+
borderTopLeftRadius?: number;
|
|
104
|
+
borderTopRightRadius?: number;
|
|
105
|
+
borderBottomLeftRadius?: number;
|
|
106
|
+
borderBottomRightRadius?: number;
|
|
107
|
+
borderStyle?: "solid" | "dotted" | "dashed";
|
|
108
|
+
borderWidth?: number;
|
|
109
|
+
cursor?: "auto" | "default" | "none" | "pointer" | "text" | "vertical-text" | "crosshair" | "grab" | "grabbing" | "w-resize" | "e-resize" | "ew-resize" | "n-resize" | "s-resize" | "ns-resize" | "nwse-resize" | "nesw-resize" | "col-resize" | "row-resize" | "not-allowed" | "alias" | "copy" | "context-menu";
|
|
110
|
+
elevation?: number;
|
|
111
|
+
opacity?: number;
|
|
112
|
+
}
|
|
113
|
+
export interface TextStyle extends ViewStyle {
|
|
114
|
+
color?: ColorValue;
|
|
115
|
+
fontFamily?: string;
|
|
116
|
+
fontSize?: number;
|
|
117
|
+
fontStyle?: "normal" | "italic";
|
|
118
|
+
fontWeight?: "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | number;
|
|
119
|
+
letterSpacing?: number;
|
|
120
|
+
lineHeight?: number;
|
|
121
|
+
textAlign?: "auto" | "left" | "right" | "center" | "justify";
|
|
122
|
+
textDecorationLine?: "none" | "underline" | "line-through" | "underline line-through";
|
|
123
|
+
textTransform?: "none" | "uppercase" | "lowercase" | "capitalize";
|
|
124
|
+
}
|
|
125
|
+
export interface ImageStyle extends ViewStyle {
|
|
126
|
+
resizeMode?: "cover" | "contain" | "stretch" | "repeat" | "center";
|
|
127
|
+
tintColor?: ColorValue;
|
|
128
|
+
}
|
|
129
|
+
export type StyleProp<T> = T | RegisteredStyle<T> | RecursiveArray<T | RegisteredStyle<T> | Falsy> | Falsy;
|
|
130
|
+
export type Falsy = undefined | null | false;
|
|
131
|
+
export interface RecursiveArray<T> extends Array<T | ReadonlyArray<T> | RecursiveArray<T>> {
|
|
132
|
+
}
|
|
133
|
+
export type RegisteredStyle<T> = T & {
|
|
134
|
+
__registered?: true;
|
|
135
|
+
};
|
|
136
|
+
export interface LayoutRectangle {
|
|
137
|
+
x: number;
|
|
138
|
+
y: number;
|
|
139
|
+
width: number;
|
|
140
|
+
height: number;
|
|
141
|
+
}
|
|
142
|
+
export interface LayoutChangeEvent {
|
|
143
|
+
nativeEvent: {
|
|
144
|
+
layout: LayoutRectangle;
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
export interface GestureResponderEvent {
|
|
148
|
+
nativeEvent: {
|
|
149
|
+
locationX: number;
|
|
150
|
+
locationY: number;
|
|
151
|
+
pageX: number;
|
|
152
|
+
pageY: number;
|
|
153
|
+
shiftKey?: boolean;
|
|
154
|
+
ctrlKey?: boolean;
|
|
155
|
+
altKey?: boolean;
|
|
156
|
+
metaKey?: boolean;
|
|
157
|
+
button?: number;
|
|
158
|
+
buttons?: number;
|
|
159
|
+
pressDrag?: boolean;
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
export interface MouseResponderEvent extends GestureResponderEvent {
|
|
163
|
+
type?: string;
|
|
164
|
+
altKey?: boolean;
|
|
165
|
+
ctrlKey?: boolean;
|
|
166
|
+
metaKey?: boolean;
|
|
167
|
+
shiftKey?: boolean;
|
|
168
|
+
button?: number;
|
|
169
|
+
buttons?: number;
|
|
170
|
+
pressDrag?: boolean;
|
|
171
|
+
preventDefault?: () => void;
|
|
172
|
+
stopPropagation?: () => void;
|
|
173
|
+
isDefaultPrevented?: () => boolean;
|
|
174
|
+
isPropagationStopped?: () => boolean;
|
|
175
|
+
}
|
|
176
|
+
export type AccessibilityRole = "none" | "button" | "link" | "search" | "image" | "keyboardkey" | "text" | "adjustable" | "imagebutton" | "header" | "summary" | "alert" | "checkbox" | "combobox" | "menu" | "menubar" | "menuitem" | "progressbar" | "radio" | "radiogroup" | "scrollbar" | "spinbutton" | "switch" | "tab" | "tablist" | "timer" | "toolbar";
|
|
177
|
+
export interface AccessibilityState {
|
|
178
|
+
disabled?: boolean;
|
|
179
|
+
selected?: boolean;
|
|
180
|
+
checked?: boolean | "mixed";
|
|
181
|
+
busy?: boolean;
|
|
182
|
+
expanded?: boolean;
|
|
183
|
+
}
|
|
184
|
+
export interface AccessibilityValue {
|
|
185
|
+
min?: number;
|
|
186
|
+
max?: number;
|
|
187
|
+
now?: number;
|
|
188
|
+
text?: string;
|
|
189
|
+
}
|
|
190
|
+
export interface AccessibilityProps {
|
|
191
|
+
accessible?: boolean;
|
|
192
|
+
accessibilityElementsHidden?: boolean;
|
|
193
|
+
accessibilityLabel?: string;
|
|
194
|
+
accessibilityRole?: AccessibilityRole;
|
|
195
|
+
accessibilityHint?: string;
|
|
196
|
+
accessibilityState?: AccessibilityState;
|
|
197
|
+
accessibilityValue?: AccessibilityValue | string | number;
|
|
198
|
+
importantForAccessibility?: "auto" | "yes" | "no" | "no-hide-descendants";
|
|
199
|
+
"aria-label"?: string;
|
|
200
|
+
"aria-description"?: string;
|
|
201
|
+
"aria-hidden"?: boolean;
|
|
202
|
+
role?: AccessibilityRole;
|
|
203
|
+
testID?: string;
|
|
204
|
+
nativeID?: string;
|
|
205
|
+
}
|
|
206
|
+
export interface ViewProps extends AccessibilityProps, ViewStyle {
|
|
207
|
+
children?: ReactNode;
|
|
208
|
+
style?: StyleProp<ViewStyle>;
|
|
209
|
+
onClick?: (event: MouseResponderEvent) => void;
|
|
210
|
+
onContextMenu?: (event: MouseResponderEvent) => void;
|
|
211
|
+
onMouseDown?: (event: MouseResponderEvent) => void;
|
|
212
|
+
onMouseUp?: (event: MouseResponderEvent) => void;
|
|
213
|
+
onMouseEnter?: (event: MouseResponderEvent) => void;
|
|
214
|
+
onMouseLeave?: (event: MouseResponderEvent) => void;
|
|
215
|
+
onMouseOver?: (event: MouseResponderEvent) => void;
|
|
216
|
+
onMouseOut?: (event: MouseResponderEvent) => void;
|
|
217
|
+
onMouseMove?: (event: MouseResponderEvent) => void;
|
|
218
|
+
onPointerDown?: (event: MouseResponderEvent) => void;
|
|
219
|
+
onPointerUp?: (event: MouseResponderEvent) => void;
|
|
220
|
+
onPointerEnter?: (event: MouseResponderEvent) => void;
|
|
221
|
+
onPointerLeave?: (event: MouseResponderEvent) => void;
|
|
222
|
+
onPointerMove?: (event: MouseResponderEvent) => void;
|
|
223
|
+
onTouchStart?: (event: MouseResponderEvent) => void;
|
|
224
|
+
onTouchMove?: (event: MouseResponderEvent) => void;
|
|
225
|
+
onTouchEnd?: (event: MouseResponderEvent) => void;
|
|
226
|
+
onTouchCancel?: (event: MouseResponderEvent) => void;
|
|
227
|
+
onStartShouldSetResponder?: (event: MouseResponderEvent) => boolean;
|
|
228
|
+
onStartShouldSetResponderCapture?: (event: MouseResponderEvent) => boolean;
|
|
229
|
+
onResponderGrant?: (event: MouseResponderEvent) => void;
|
|
230
|
+
onResponderMove?: (event: MouseResponderEvent) => void;
|
|
231
|
+
onResponderRelease?: (event: MouseResponderEvent) => void;
|
|
232
|
+
onResponderStart?: (event: MouseResponderEvent) => void;
|
|
233
|
+
onResponderEnd?: (event: MouseResponderEvent) => void;
|
|
234
|
+
onResponderTerminate?: (event: MouseResponderEvent) => void;
|
|
235
|
+
onResponderTerminationRequest?: (event: MouseResponderEvent) => boolean;
|
|
236
|
+
onHoverIn?: (event: MouseResponderEvent) => void;
|
|
237
|
+
onHoverOut?: (event: MouseResponderEvent) => void;
|
|
238
|
+
onKeyPress?: (event: unknown) => void;
|
|
239
|
+
onKeyUp?: (event: KeyboardKeyEvent) => void;
|
|
240
|
+
onAuxClick?: (event: MouseResponderEvent) => void;
|
|
241
|
+
onLayout?: (event: LayoutChangeEvent) => void;
|
|
242
|
+
onDrop?: (event: {
|
|
243
|
+
nativeEvent: {
|
|
244
|
+
paths: string[];
|
|
245
|
+
};
|
|
246
|
+
}) => void;
|
|
247
|
+
pointerEvents?: "auto" | "none" | "box-none" | "box-only";
|
|
248
|
+
/** gpui-only: stable key whose width/height may be changed by native runtime commands. */
|
|
249
|
+
nativeLayoutKey?: string;
|
|
250
|
+
/** gpui-only: drag this view to resize a keyed native layout target without React commits. */
|
|
251
|
+
nativeResize?: NativeResizeSpec;
|
|
252
|
+
/** gpui-only: scope press-drag activation to descendants with the same group. */
|
|
253
|
+
nativeListGroup?: string;
|
|
254
|
+
nativePressDrag?: boolean;
|
|
255
|
+
}
|
|
256
|
+
export type KeyboardKeyEvent = {
|
|
257
|
+
key: string;
|
|
258
|
+
shiftKey: boolean;
|
|
259
|
+
ctrlKey: boolean;
|
|
260
|
+
altKey: boolean;
|
|
261
|
+
metaKey: boolean;
|
|
262
|
+
nativeEvent: {
|
|
263
|
+
key: string;
|
|
264
|
+
shiftKey: boolean;
|
|
265
|
+
ctrlKey: boolean;
|
|
266
|
+
altKey: boolean;
|
|
267
|
+
metaKey: boolean;
|
|
268
|
+
};
|
|
269
|
+
};
|
|
270
|
+
export type NativeResizeEdge = "left" | "right" | "top" | "bottom";
|
|
271
|
+
export interface NativeResizeSpec {
|
|
272
|
+
target: string;
|
|
273
|
+
edge: NativeResizeEdge;
|
|
274
|
+
min?: number;
|
|
275
|
+
max?: number;
|
|
276
|
+
}
|