@onekeyfe/react-native-native-sheet 3.0.129 → 3.0.131

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.
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+
3
+ const PRESENTATION_CLOSE_FALLBACK_MS = 5_000;
4
+ let nextId = 1;
5
+ let entries = [];
6
+ const listeners = new Set();
7
+ let securityFallbackTimer;
8
+ const closeFallbackTimers = new Map();
9
+ const registryBlockers = new Set();
10
+ function clearCloseFallbackTimer(id) {
11
+ const timer = closeFallbackTimers.get(id);
12
+ if (timer) {
13
+ clearTimeout(timer);
14
+ closeFallbackTimers.delete(id);
15
+ }
16
+ }
17
+ function emitChange() {
18
+ listeners.forEach(listener => listener());
19
+ }
20
+ export function subscribeNativeSheetRegistry(listener) {
21
+ listeners.add(listener);
22
+ return () => listeners.delete(listener);
23
+ }
24
+ export function getNativeSheetRegistrySnapshot() {
25
+ return entries;
26
+ }
27
+ export function addNativeSheetRegistryEntry(options, content) {
28
+ const id = nextId;
29
+ nextId += 1;
30
+ if (registryBlockers.size > 0) {
31
+ options.onOpenChange?.(true);
32
+ options.onOpenChange?.(false);
33
+ options.onDismiss?.('security');
34
+ options.onAnimationComplete?.({
35
+ open: false
36
+ });
37
+ return id;
38
+ }
39
+ const entry = {
40
+ id,
41
+ open: true,
42
+ presentationRequested: false,
43
+ content,
44
+ options
45
+ };
46
+ entries = [...entries, entry];
47
+ options.onOpenChange?.(true);
48
+ emitChange();
49
+ return id;
50
+ }
51
+ export function closeNativeSheetRegistryEntry(id) {
52
+ const entry = entries.find(item => item.id === id);
53
+ if (!entry || !entry.open) {
54
+ return;
55
+ }
56
+ entry.options.onOpenChange?.(false);
57
+ if (!entry.presentationRequested) {
58
+ entries = entries.filter(item => item.id !== id);
59
+ entry.options.onDismiss?.('programmatic');
60
+ entry.options.onAnimationComplete?.({
61
+ open: false
62
+ });
63
+ } else {
64
+ entries = entries.map(item => item.id === id ? {
65
+ ...item,
66
+ open: false
67
+ } : item);
68
+ if (!closeFallbackTimers.has(id)) {
69
+ closeFallbackTimers.set(id, setTimeout(() => {
70
+ closeFallbackTimers.delete(id);
71
+ const pendingEntry = entries.find(item => item.id === id);
72
+ if (!pendingEntry) {
73
+ return;
74
+ }
75
+ finishNativeSheetRegistryEntry(id, 'programmatic');
76
+ pendingEntry.options.onAnimationComplete?.({
77
+ open: false
78
+ });
79
+ }, PRESENTATION_CLOSE_FALLBACK_MS));
80
+ }
81
+ }
82
+ emitChange();
83
+ }
84
+ export function markNativeSheetRegistryEntryPresentationRequested(id) {
85
+ entries = entries.map(entry => entry.id === id && !entry.presentationRequested ? {
86
+ ...entry,
87
+ presentationRequested: true
88
+ } : entry);
89
+ }
90
+ export function finishNativeSheetRegistryEntry(id, reason) {
91
+ const entry = entries.find(item => item.id === id);
92
+ if (!entry) {
93
+ return;
94
+ }
95
+ clearCloseFallbackTimer(id);
96
+ if (entry.open) {
97
+ entry.options.onOpenChange?.(false);
98
+ }
99
+ entries = entries.filter(item => item.id !== id);
100
+ entry.options.onDismiss?.(reason);
101
+ emitChange();
102
+ }
103
+ export function finishAllNativeSheetRegistryEntries(reason) {
104
+ const currentEntries = entries;
105
+ if (!currentEntries.length) {
106
+ return;
107
+ }
108
+ entries = [];
109
+ currentEntries.forEach(entry => {
110
+ clearCloseFallbackTimer(entry.id);
111
+ if (entry.open) {
112
+ entry.options.onOpenChange?.(false);
113
+ }
114
+ entry.options.onDismiss?.(reason);
115
+ entry.options.onAnimationComplete?.({
116
+ open: false
117
+ });
118
+ });
119
+ emitChange();
120
+ }
121
+ export function requestSecurityDismissAllNativeSheets() {
122
+ if (!entries.length) {
123
+ return;
124
+ }
125
+ const unpresentedEntries = entries.filter(entry => !entry.presentationRequested);
126
+ const presentedEntries = entries.filter(entry => entry.presentationRequested);
127
+ unpresentedEntries.forEach(entry => {
128
+ if (entry.open) {
129
+ entry.options.onOpenChange?.(false);
130
+ }
131
+ entry.options.onDismiss?.('security');
132
+ entry.options.onAnimationComplete?.({
133
+ open: false
134
+ });
135
+ });
136
+ entries = presentedEntries.map(entry => {
137
+ if (entry.open) {
138
+ entry.options.onOpenChange?.(false);
139
+ return {
140
+ ...entry,
141
+ open: false
142
+ };
143
+ }
144
+ return entry;
145
+ });
146
+ emitChange();
147
+ if (!entries.length) {
148
+ return;
149
+ }
150
+ if (securityFallbackTimer) {
151
+ clearTimeout(securityFallbackTimer);
152
+ }
153
+ securityFallbackTimer = setTimeout(() => {
154
+ securityFallbackTimer = undefined;
155
+ finishAllNativeSheetRegistryEntries('security');
156
+ }, 500);
157
+ }
158
+ export function setNativeSheetRegistryBlocked(blockerId, blocked) {
159
+ const wasBlocked = registryBlockers.size > 0;
160
+ if (blocked) {
161
+ registryBlockers.add(blockerId);
162
+ } else {
163
+ registryBlockers.delete(blockerId);
164
+ }
165
+ if (!wasBlocked && registryBlockers.size > 0) {
166
+ requestSecurityDismissAllNativeSheets();
167
+ }
168
+ }
169
+ export function resetNativeSheetRegistryForTests() {
170
+ if (securityFallbackTimer) {
171
+ clearTimeout(securityFallbackTimer);
172
+ securityFallbackTimer = undefined;
173
+ }
174
+ closeFallbackTimers.forEach(clearTimeout);
175
+ closeFallbackTimers.clear();
176
+ entries = [];
177
+ nextId = 1;
178
+ registryBlockers.clear();
179
+ listeners.clear();
180
+ }
181
+ //# sourceMappingURL=NativeSheetRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PRESENTATION_CLOSE_FALLBACK_MS","nextId","entries","listeners","Set","securityFallbackTimer","closeFallbackTimers","Map","registryBlockers","clearCloseFallbackTimer","id","timer","get","clearTimeout","delete","emitChange","forEach","listener","subscribeNativeSheetRegistry","add","getNativeSheetRegistrySnapshot","addNativeSheetRegistryEntry","options","content","size","onOpenChange","onDismiss","onAnimationComplete","open","entry","presentationRequested","closeNativeSheetRegistryEntry","find","item","filter","map","has","set","setTimeout","pendingEntry","finishNativeSheetRegistryEntry","markNativeSheetRegistryEntryPresentationRequested","reason","finishAllNativeSheetRegistryEntries","currentEntries","length","requestSecurityDismissAllNativeSheets","unpresentedEntries","presentedEntries","undefined","setNativeSheetRegistryBlocked","blockerId","blocked","wasBlocked","resetNativeSheetRegistryForTests","clear"],"sourceRoot":"../../src","sources":["NativeSheetRegistry.ts"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
- import { createContext, useCallback, useContext } from 'react';
3
+ import { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState, useSyncExternalStore } from 'react';
4
4
  import { StyleSheet, useWindowDimensions, View } from 'react-native';
5
5
  import RNCNativeSheet from './NativeSheetNativeComponent';
6
- import { jsx as _jsx } from "react/jsx-runtime";
6
+ import { resolveNativeSheetHeight, resolveNativeSheetLayoutConstraints } from "./NativeSheetHeight.js";
7
+ import { addNativeSheetRegistryEntry, closeNativeSheetRegistryEntry, finishNativeSheetRegistryEntry, getNativeSheetRegistrySnapshot, markNativeSheetRegistryEntryPresentationRequested, setNativeSheetRegistryBlocked, subscribeNativeSheetRegistry } from "./NativeSheetRegistry.js";
8
+ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
7
9
  const NativeSheetSecurityContext = /*#__PURE__*/createContext(false);
8
10
 
9
11
  /**
@@ -15,8 +17,15 @@ export function NativeSheetSecurityProvider({
15
17
  blocked,
16
18
  children
17
19
  }) {
20
+ const parentBlocked = useContext(NativeSheetSecurityContext);
21
+ const blockerId = useRef(Symbol('NativeSheetSecurityProvider')).current;
22
+ const effectiveBlocked = parentBlocked || blocked;
23
+ useEffect(() => {
24
+ setNativeSheetRegistryBlocked(blockerId, blocked);
25
+ return () => setNativeSheetRegistryBlocked(blockerId, false);
26
+ }, [blocked, blockerId]);
18
27
  return /*#__PURE__*/_jsx(NativeSheetSecurityContext.Provider, {
19
- value: blocked,
28
+ value: effectiveBlocked,
20
29
  children: children
21
30
  });
22
31
  }
@@ -27,38 +36,130 @@ export function NativeSheetSecurityProvider({
27
36
  * Fabric mounts the same child view into the platform sheet without serializing
28
37
  * business content through the native bridge.
29
38
  */
30
- export function NativeSheet({
39
+ function NativeSheetComponent({
31
40
  open,
32
41
  height,
42
+ maxHeight,
33
43
  children,
34
44
  onDismiss,
35
45
  onPresented,
36
- dismissOnPanDown = true,
37
- dismissOnBackdropPress = false,
46
+ onAnimationComplete,
47
+ onOpenChange,
48
+ dismissOnSnapToBottom,
49
+ disableDrag = false,
50
+ dismissOnPanDown,
51
+ dismissOnOverlayPress,
52
+ dismissOnBackdropPress,
38
53
  dismissOnBackPress = true,
39
54
  showHandle = true,
40
55
  cornerRadius = 32,
41
56
  dimAmount = 0.4,
42
57
  backgroundColor,
43
- testID
58
+ testID,
59
+ onPresentationRequested
44
60
  }) {
45
61
  const securityBlocked = useContext(NativeSheetSecurityContext);
46
62
  const {
63
+ height: windowHeight,
47
64
  width
48
65
  } = useWindowDimensions();
66
+ const [measurement, setMeasurement] = useState();
67
+ const lockedHeightRef = useRef(undefined);
68
+ const dismissNotifiedRef = useRef(false);
69
+ const wasOpenRef = useRef(false);
70
+ const openCycleRef = useRef(0);
71
+ const explicitHeightForOpenRef = useRef(false);
72
+ if (open && !wasOpenRef.current) {
73
+ openCycleRef.current += 1;
74
+ dismissNotifiedRef.current = false;
75
+ explicitHeightForOpenRef.current = height !== undefined;
76
+ } else if (open && height !== undefined) {
77
+ explicitHeightForOpenRef.current = true;
78
+ }
79
+ wasOpenRef.current = open;
80
+ const shouldAutoMeasure = !explicitHeightForOpenRef.current;
81
+ const resolvedMaxHeight = maxHeight ?? Math.floor(windowHeight * 0.92);
82
+ if (open) {
83
+ lockedHeightRef.current = resolveNativeSheetHeight({
84
+ currentHeight: lockedHeightRef.current,
85
+ explicitHeight: height,
86
+ measuredHeight: measurement?.openCycle === openCycleRef.current ? measurement.height : undefined,
87
+ maxHeight: resolvedMaxHeight,
88
+ shouldAutoMeasure
89
+ });
90
+ }
91
+ const lockedHeight = lockedHeightRef.current;
92
+ const resolvedDismissOnPanDown = !disableDrag && (dismissOnSnapToBottom ?? dismissOnPanDown ?? true);
93
+ const resolvedDismissOnBackdropPress = dismissOnOverlayPress ?? dismissOnBackdropPress ?? false;
94
+ const layoutConstraints = useMemo(() => resolveNativeSheetLayoutConstraints({
95
+ lockedHeight,
96
+ maxHeight: resolvedMaxHeight,
97
+ shouldAutoMeasure
98
+ }), [lockedHeight, resolvedMaxHeight, shouldAutoMeasure]);
99
+ const notifyDismiss = useCallback(reason => {
100
+ if (dismissNotifiedRef.current) {
101
+ return;
102
+ }
103
+ dismissNotifiedRef.current = true;
104
+ lockedHeightRef.current = undefined;
105
+ onOpenChange?.(false);
106
+ onDismiss?.(reason);
107
+ onAnimationComplete?.({
108
+ open: false
109
+ });
110
+ }, [onAnimationComplete, onDismiss, onOpenChange]);
49
111
  const handleDismiss = useCallback(event => {
50
- onDismiss?.(event.nativeEvent.reason);
51
- }, [onDismiss]);
112
+ notifyDismiss(event.nativeEvent.reason);
113
+ }, [notifyDismiss]);
114
+ useEffect(() => {
115
+ if (!securityBlocked || !open) {
116
+ return;
117
+ }
118
+ // Native normally acknowledges the no-animation security dismissal. This
119
+ // fallback also covers an open request blocked before native presentation.
120
+ const timer = setTimeout(() => notifyDismiss('security'), 500);
121
+ return () => clearTimeout(timer);
122
+ }, [notifyDismiss, open, securityBlocked]);
52
123
  const handlePresented = useCallback(event => {
124
+ onPresentationRequested?.();
53
125
  onPresented?.(event.nativeEvent.height);
54
- }, [onPresented]);
126
+ onAnimationComplete?.({
127
+ open: true
128
+ });
129
+ }, [onAnimationComplete, onPresentationRequested, onPresented]);
130
+ const handleContentLayout = useCallback(event => {
131
+ if (!open || !shouldAutoMeasure) {
132
+ return;
133
+ }
134
+ const nextHeight = Math.ceil(event.nativeEvent.layout.height);
135
+ if (nextHeight > 0) {
136
+ const nextMeasurement = {
137
+ height: Math.min(nextHeight, resolvedMaxHeight),
138
+ openCycle: openCycleRef.current
139
+ };
140
+ setMeasurement(currentMeasurement => {
141
+ if (currentMeasurement?.height === nextMeasurement.height && currentMeasurement.openCycle === nextMeasurement.openCycle) {
142
+ return currentMeasurement;
143
+ }
144
+ return nextMeasurement;
145
+ });
146
+ }
147
+ }, [open, resolvedMaxHeight, shouldAutoMeasure]);
148
+ const hostStyle = useMemo(() => [styles.stagingHost, {
149
+ width,
150
+ ...(layoutConstraints.hostHeight !== undefined ? {
151
+ height: layoutConstraints.hostHeight
152
+ } : {
153
+ maxHeight: layoutConstraints.hostMaxHeight
154
+ })
155
+ }], [layoutConstraints, width]);
55
156
  return /*#__PURE__*/_jsx(RNCNativeSheet, {
56
157
  testID: testID,
57
- open: open,
58
- sheetHeight: height,
158
+ open: open && Boolean(lockedHeight),
159
+ sheetHeight: lockedHeight ?? 1,
59
160
  securityBlocked: securityBlocked,
60
- dismissOnPanDown: dismissOnPanDown,
61
- dismissOnBackdropPress: dismissOnBackdropPress,
161
+ dismissOnPanDown: resolvedDismissOnPanDown,
162
+ dismissOnBackdropPress: resolvedDismissOnBackdropPress,
62
163
  dismissOnBackPress: dismissOnBackPress,
63
164
  showHandle: showHandle,
64
165
  cornerRadius: cornerRadius,
@@ -66,18 +167,72 @@ export function NativeSheet({
66
167
  sheetBackgroundColor: backgroundColor,
67
168
  onDismiss: handleDismiss,
68
169
  onPresented: handlePresented,
69
- style: [styles.stagingHost, {
70
- width,
71
- height
72
- }],
170
+ style: hostStyle,
73
171
  children: /*#__PURE__*/_jsx(View, {
74
172
  pointerEvents: "auto",
75
- style: styles.content,
173
+ style: layoutConstraints.shouldFillHost ? styles.content : undefined,
76
174
  collapsable: false,
77
- children: children
78
- })
175
+ children: shouldAutoMeasure ? /*#__PURE__*/_jsx(View, {
176
+ collapsable: false,
177
+ style: styles.autoMeasureContent,
178
+ onLayout: handleContentLayout,
179
+ children: children
180
+ }) : children
181
+ }, `open-cycle-${openCycleRef.current}`)
182
+ });
183
+ }
184
+ function showNativeSheet(options) {
185
+ let id;
186
+ let closeRequestedBeforeRegistration = false;
187
+ const close = () => {
188
+ if (id === undefined) {
189
+ closeRequestedBeforeRegistration = true;
190
+ return;
191
+ }
192
+ closeNativeSheetRegistryEntry(id);
193
+ };
194
+ const content = typeof options.renderContent === 'function' ? options.renderContent({
195
+ close
196
+ }) : options.renderContent;
197
+ id = addNativeSheetRegistryEntry(options, content);
198
+ if (closeRequestedBeforeRegistration) {
199
+ closeNativeSheetRegistryEntry(id);
200
+ }
201
+ return {
202
+ close
203
+ };
204
+ }
205
+ function NativeSheetHostEntry({
206
+ entry
207
+ }) {
208
+ const handleOpenChange = useCallback(nextOpen => {
209
+ if (!nextOpen) {
210
+ closeNativeSheetRegistryEntry(entry.id);
211
+ }
212
+ }, [entry.id]);
213
+ const handleDismiss = useCallback(reason => finishNativeSheetRegistryEntry(entry.id, reason), [entry.id]);
214
+ const handlePresentationRequested = useCallback(() => markNativeSheetRegistryEntryPresentationRequested(entry.id), [entry.id]);
215
+ return /*#__PURE__*/_jsx(NativeSheetComponent, {
216
+ ...entry.options,
217
+ open: entry.open,
218
+ onOpenChange: handleOpenChange,
219
+ onPresented: entry.options.onPresented,
220
+ onPresentationRequested: handlePresentationRequested,
221
+ onDismiss: handleDismiss,
222
+ children: entry.content
79
223
  });
80
224
  }
225
+ export function NativeSheetHost() {
226
+ const entries = useSyncExternalStore(subscribeNativeSheetRegistry, getNativeSheetRegistrySnapshot, getNativeSheetRegistrySnapshot);
227
+ return /*#__PURE__*/_jsx(_Fragment, {
228
+ children: entries.map(entry => /*#__PURE__*/_jsx(NativeSheetHostEntry, {
229
+ entry: entry
230
+ }, entry.id))
231
+ });
232
+ }
233
+ export const NativeSheet = Object.assign(NativeSheetComponent, {
234
+ show: showNativeSheet
235
+ });
81
236
  const styles = StyleSheet.create({
82
237
  stagingHost: {
83
238
  position: 'absolute',
@@ -87,6 +242,10 @@ const styles = StyleSheet.create({
87
242
  },
88
243
  content: {
89
244
  flex: 1
245
+ },
246
+ autoMeasureContent: {
247
+ alignSelf: 'stretch',
248
+ flexShrink: 0
90
249
  }
91
250
  });
92
251
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useCallback","useContext","StyleSheet","useWindowDimensions","View","RNCNativeSheet","jsx","_jsx","NativeSheetSecurityContext","NativeSheetSecurityProvider","blocked","children","Provider","value","NativeSheet","open","height","onDismiss","onPresented","dismissOnPanDown","dismissOnBackdropPress","dismissOnBackPress","showHandle","cornerRadius","dimAmount","backgroundColor","testID","securityBlocked","width","handleDismiss","event","nativeEvent","reason","handlePresented","sheetHeight","sheetBackgroundColor","style","styles","stagingHost","pointerEvents","content","collapsable","create","position","left","bottom","opacity","flex"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SACEA,aAAa,EAEbC,WAAW,EACXC,UAAU,QACL,OAAO;AAEd,SAGEC,UAAU,EACVC,mBAAmB,EACnBC,IAAI,QACC,cAAc;AAErB,OAAOC,cAAc,MAGd,8BAA8B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AA+BtC,MAAMC,0BAA0B,gBAAGT,aAAa,CAAC,KAAK,CAAC;;AAEvD;AACA;AACA;AACA;AACA;AACA,OAAO,SAASU,2BAA2BA,CAAC;EAC1CC,OAAO;EACPC;AACuC,CAAC,EAAE;EAC1C,oBACEJ,IAAA,CAACC,0BAA0B,CAACI,QAAQ;IAACC,KAAK,EAAEH,OAAQ;IAAAC,QAAA,EACjDA;EAAQ,CAC0B,CAAC;AAE1C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASG,WAAWA,CAAC;EAC1BC,IAAI;EACJC,MAAM;EACNL,QAAQ;EACRM,SAAS;EACTC,WAAW;EACXC,gBAAgB,GAAG,IAAI;EACvBC,sBAAsB,GAAG,KAAK;EAC9BC,kBAAkB,GAAG,IAAI;EACzBC,UAAU,GAAG,IAAI;EACjBC,YAAY,GAAG,EAAE;EACjBC,SAAS,GAAG,GAAG;EACfC,eAAe;EACfC;AACgB,CAAC,EAAE;EACnB,MAAMC,eAAe,GAAG1B,UAAU,CAACO,0BAA0B,CAAC;EAC9D,MAAM;IAAEoB;EAAM,CAAC,GAAGzB,mBAAmB,CAAC,CAAC;EAEvC,MAAM0B,aAAa,GAAG7B,WAAW,CAC9B8B,KAAoD,IAAK;IACxDb,SAAS,GAAGa,KAAK,CAACC,WAAW,CAACC,MAAkC,CAAC;EACnE,CAAC,EACD,CAACf,SAAS,CACZ,CAAC;EACD,MAAMgB,eAAe,GAAGjC,WAAW,CAChC8B,KAAsD,IAAK;IAC1DZ,WAAW,GAAGY,KAAK,CAACC,WAAW,CAACf,MAAM,CAAC;EACzC,CAAC,EACD,CAACE,WAAW,CACd,CAAC;EAED,oBACEX,IAAA,CAACF,cAAc;IACbqB,MAAM,EAAEA,MAAO;IACfX,IAAI,EAAEA,IAAK;IACXmB,WAAW,EAAElB,MAAO;IACpBW,eAAe,EAAEA,eAAgB;IACjCR,gBAAgB,EAAEA,gBAAiB;IACnCC,sBAAsB,EAAEA,sBAAuB;IAC/CC,kBAAkB,EAAEA,kBAAmB;IACvCC,UAAU,EAAEA,UAAW;IACvBC,YAAY,EAAEA,YAAa;IAC3BC,SAAS,EAAEA,SAAU;IACrBW,oBAAoB,EAAEV,eAAgB;IACtCR,SAAS,EAAEY,aAAc;IACzBX,WAAW,EAAEe,eAAgB;IAC7BG,KAAK,EAAE,CAACC,MAAM,CAACC,WAAW,EAAE;MAAEV,KAAK;MAAEZ;IAAO,CAAC,CAAE;IAAAL,QAAA,eAE/CJ,IAAA,CAACH,IAAI;MAACmC,aAAa,EAAC,MAAM;MAACH,KAAK,EAAEC,MAAM,CAACG,OAAQ;MAACC,WAAW,EAAE,KAAM;MAAA9B,QAAA,EAClEA;IAAQ,CACL;EAAC,CACO,CAAC;AAErB;AAEA,MAAM0B,MAAM,GAAGnC,UAAU,CAACwC,MAAM,CAAC;EAC/BJ,WAAW,EAAE;IACXK,QAAQ,EAAE,UAAU;IACpBC,IAAI,EAAE,CAAC,OAAO;IACdC,MAAM,EAAE,CAAC;IACTC,OAAO,EAAE;EACX,CAAC;EACDN,OAAO,EAAE;IACPO,IAAI,EAAE;EACR;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","useSyncExternalStore","StyleSheet","useWindowDimensions","View","RNCNativeSheet","resolveNativeSheetHeight","resolveNativeSheetLayoutConstraints","addNativeSheetRegistryEntry","closeNativeSheetRegistryEntry","finishNativeSheetRegistryEntry","getNativeSheetRegistrySnapshot","markNativeSheetRegistryEntryPresentationRequested","setNativeSheetRegistryBlocked","subscribeNativeSheetRegistry","jsx","_jsx","Fragment","_Fragment","NativeSheetSecurityContext","NativeSheetSecurityProvider","blocked","children","parentBlocked","blockerId","Symbol","current","effectiveBlocked","Provider","value","NativeSheetComponent","open","height","maxHeight","onDismiss","onPresented","onAnimationComplete","onOpenChange","dismissOnSnapToBottom","disableDrag","dismissOnPanDown","dismissOnOverlayPress","dismissOnBackdropPress","dismissOnBackPress","showHandle","cornerRadius","dimAmount","backgroundColor","testID","onPresentationRequested","securityBlocked","windowHeight","width","measurement","setMeasurement","lockedHeightRef","undefined","dismissNotifiedRef","wasOpenRef","openCycleRef","explicitHeightForOpenRef","shouldAutoMeasure","resolvedMaxHeight","Math","floor","currentHeight","explicitHeight","measuredHeight","openCycle","lockedHeight","resolvedDismissOnPanDown","resolvedDismissOnBackdropPress","layoutConstraints","notifyDismiss","reason","handleDismiss","event","nativeEvent","timer","setTimeout","clearTimeout","handlePresented","handleContentLayout","nextHeight","ceil","layout","nextMeasurement","min","currentMeasurement","hostStyle","styles","stagingHost","hostHeight","hostMaxHeight","Boolean","sheetHeight","sheetBackgroundColor","style","pointerEvents","shouldFillHost","content","collapsable","autoMeasureContent","onLayout","showNativeSheet","options","id","closeRequestedBeforeRegistration","close","renderContent","NativeSheetHostEntry","entry","handleOpenChange","nextOpen","handlePresentationRequested","NativeSheetHost","entries","map","NativeSheet","Object","assign","show","create","position","left","bottom","opacity","flex","alignSelf","flexShrink"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ export interface ResolveNativeSheetHeightOptions {
2
+ currentHeight?: number;
3
+ explicitHeight?: number;
4
+ measuredHeight?: number;
5
+ maxHeight: number;
6
+ shouldAutoMeasure: boolean;
7
+ }
8
+ export interface ResolveNativeSheetLayoutConstraintsOptions {
9
+ lockedHeight?: number;
10
+ maxHeight: number;
11
+ shouldAutoMeasure: boolean;
12
+ }
13
+ export interface NativeSheetLayoutConstraints {
14
+ hostHeight?: number;
15
+ hostMaxHeight?: number;
16
+ shouldFillHost: boolean;
17
+ }
18
+ export declare function resolveNativeSheetLayoutConstraints({ lockedHeight, maxHeight, shouldAutoMeasure, }: ResolveNativeSheetLayoutConstraintsOptions): NativeSheetLayoutConstraints;
19
+ export declare function resolveNativeSheetHeight({ currentHeight, explicitHeight, measuredHeight, maxHeight, shouldAutoMeasure, }: ResolveNativeSheetHeightOptions): number | undefined;
20
+ //# sourceMappingURL=NativeSheetHeight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeSheetHeight.d.ts","sourceRoot":"","sources":["../../../src/NativeSheetHeight.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,+BAA+B;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,0CAA0C;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,4BAA4B;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,wBAAgB,mCAAmC,CAAC,EAClD,YAAY,EACZ,SAAS,EACT,iBAAiB,GAClB,EAAE,0CAA0C,GAAG,4BAA4B,CAiB3E;AAED,wBAAgB,wBAAwB,CAAC,EACvC,aAAa,EACb,cAAc,EACd,cAAc,EACd,SAAS,EACT,iBAAiB,GAClB,EAAE,+BAA+B,GAAG,MAAM,GAAG,SAAS,CAgBtD"}
@@ -0,0 +1,22 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { NativeSheetDismissReason, NativeSheetShowOptions } from './index';
3
+ export interface NativeSheetRegistryEntry {
4
+ id: number;
5
+ open: boolean;
6
+ presentationRequested: boolean;
7
+ content: ReactNode;
8
+ options: NativeSheetShowOptions;
9
+ }
10
+ type RegistryListener = () => void;
11
+ export declare function subscribeNativeSheetRegistry(listener: RegistryListener): () => boolean;
12
+ export declare function getNativeSheetRegistrySnapshot(): readonly NativeSheetRegistryEntry[];
13
+ export declare function addNativeSheetRegistryEntry(options: NativeSheetShowOptions, content: ReactNode): number;
14
+ export declare function closeNativeSheetRegistryEntry(id: number): void;
15
+ export declare function markNativeSheetRegistryEntryPresentationRequested(id: number): void;
16
+ export declare function finishNativeSheetRegistryEntry(id: number, reason: NativeSheetDismissReason): void;
17
+ export declare function finishAllNativeSheetRegistryEntries(reason: NativeSheetDismissReason): void;
18
+ export declare function requestSecurityDismissAllNativeSheets(): void;
19
+ export declare function setNativeSheetRegistryBlocked(blockerId: symbol, blocked: boolean): void;
20
+ export declare function resetNativeSheetRegistryForTests(): void;
21
+ export {};
22
+ //# sourceMappingURL=NativeSheetRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeSheetRegistry.d.ts","sourceRoot":"","sources":["../../../src/NativeSheetRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEhF,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,qBAAqB,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,SAAS,CAAC;IACnB,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED,KAAK,gBAAgB,GAAG,MAAM,IAAI,CAAC;AAuBnC,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,gBAAgB,iBAGtE;AAED,wBAAgB,8BAA8B,wCAE7C;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,SAAS,UAsBnB;AAED,wBAAgB,6BAA6B,CAAC,EAAE,EAAE,MAAM,QA8BvD;AAED,wBAAgB,iDAAiD,CAAC,EAAE,EAAE,MAAM,QAM3E;AAED,wBAAgB,8BAA8B,CAC5C,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,wBAAwB,QAajC;AAED,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,wBAAwB,QAgBjC;AAED,wBAAgB,qCAAqC,SAmCpD;AAED,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,QAWjB;AAED,wBAAgB,gCAAgC,SAW/C"}
@@ -1,18 +1,31 @@
1
- import { type PropsWithChildren } from 'react';
1
+ import { type ReactNode, type PropsWithChildren } from 'react';
2
2
  import { type ColorValue } from 'react-native';
3
3
  export type NativeSheetDismissReason = 'back' | 'backdrop' | 'pan' | 'programmatic' | 'security' | 'system';
4
4
  export interface NativeSheetProps extends PropsWithChildren {
5
5
  /** Controls whether the sheet is presented. */
6
6
  open: boolean;
7
7
  /**
8
- * Fixed outer height for this presentation, in points/dp. Content updates do
9
- * not change this value, so asynchronously loaded children cannot resize the
10
- * native sheet mid-transition.
8
+ * Outer height in points/dp. Changes while open animate the native surface
9
+ * from its bottom edge. When omitted, settled content-size changes update the
10
+ * native height automatically.
11
11
  */
12
- height: number;
12
+ height?: number;
13
+ /** Maximum auto-fit height. Defaults to 92% of the current window height. */
14
+ maxHeight?: number;
13
15
  onDismiss?: (reason: NativeSheetDismissReason) => void;
14
16
  onPresented?: (height: number) => void;
17
+ onAnimationComplete?: (info: NativeSheetAnimationInfo) => void;
18
+ /** Matches the React Native Sheet callback for controlled open state. */
19
+ onOpenChange?: (open: boolean) => void;
20
+ /** Matches the React Native Sheet drag-dismiss option. */
21
+ dismissOnSnapToBottom?: boolean;
22
+ /** Disables the native drag gesture. */
23
+ disableDrag?: boolean;
24
+ /** @deprecated Use dismissOnSnapToBottom. */
15
25
  dismissOnPanDown?: boolean;
26
+ /** Matches the React Native Sheet overlay-dismiss option. */
27
+ dismissOnOverlayPress?: boolean;
28
+ /** @deprecated Use dismissOnOverlayPress. */
16
29
  dismissOnBackdropPress?: boolean;
17
30
  dismissOnBackPress?: boolean;
18
31
  showHandle?: boolean;
@@ -21,6 +34,21 @@ export interface NativeSheetProps extends PropsWithChildren {
21
34
  backgroundColor?: ColorValue;
22
35
  testID?: string;
23
36
  }
37
+ export type NativeSheetAnimationInfo = Readonly<{
38
+ open: boolean;
39
+ }>;
40
+ export interface NativeSheetShowControls {
41
+ close: () => void;
42
+ }
43
+ export interface NativeSheetShowOptions extends Omit<NativeSheetProps, 'children' | 'open' | 'onDismiss' | 'onOpenChange'> {
44
+ renderContent: ReactNode | ((controls: NativeSheetShowControls) => ReactNode);
45
+ onOpenChange?: (open: boolean) => void;
46
+ onDismiss?: (reason: NativeSheetDismissReason) => void;
47
+ onAnimationComplete?: (info: NativeSheetAnimationInfo) => void;
48
+ }
49
+ export interface NativeSheetShowHandle {
50
+ close: () => void;
51
+ }
24
52
  /**
25
53
  * Blocks every descendant sheet while security UI is visible. Consumers must
26
54
  * place this provider above all NativeSheet instances and bind `blocked` to the
@@ -29,12 +57,10 @@ export interface NativeSheetProps extends PropsWithChildren {
29
57
  export declare function NativeSheetSecurityProvider({ blocked, children, }: PropsWithChildren<{
30
58
  blocked: boolean;
31
59
  }>): import("react/jsx-runtime").JSX.Element;
32
- /**
33
- * Presents arbitrary React Native children inside a native sheet container.
34
- * The native component is staged off-screen before presentation; once opened,
35
- * Fabric mounts the same child view into the platform sheet without serializing
36
- * business content through the native bridge.
37
- */
38
- export declare function NativeSheet({ open, height, children, onDismiss, onPresented, dismissOnPanDown, dismissOnBackdropPress, dismissOnBackPress, showHandle, cornerRadius, dimAmount, backgroundColor, testID, }: NativeSheetProps): import("react/jsx-runtime").JSX.Element;
60
+ declare function showNativeSheet(options: NativeSheetShowOptions): NativeSheetShowHandle;
61
+ export declare function NativeSheetHost(): import("react/jsx-runtime").JSX.Element;
62
+ export declare const NativeSheet: ((props: NativeSheetProps) => ReactNode) & {
63
+ show: typeof showNativeSheet;
64
+ };
39
65
  export type { NativeSheetDismissEvent, NativeSheetNativeProps, NativeSheetPresentedEvent, } from './NativeSheetNativeComponent';
40
66
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,iBAAiB,EAGvB,MAAM,OAAO,CAAC;AAEf,OAAO,EACL,KAAK,UAAU,EAKhB,MAAM,cAAc,CAAC;AAOtB,MAAM,MAAM,wBAAwB,GAChC,MAAM,GACN,UAAU,GACV,KAAK,GACL,cAAc,GACd,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,+CAA+C;IAC/C,IAAI,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,wBAAwB,KAAK,IAAI,CAAC;IACvD,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,EAC1C,OAAO,EACP,QAAQ,GACT,EAAE,iBAAiB,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,2CAMzC;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,SAAS,EACT,WAAW,EACX,gBAAuB,EACvB,sBAA8B,EAC9B,kBAAyB,EACzB,UAAiB,EACjB,YAAiB,EACjB,SAAe,EACf,eAAe,EACf,MAAM,GACP,EAAE,gBAAgB,2CAuClB;AAcD,YAAY,EACV,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,iBAAiB,EAQvB,MAAM,OAAO,CAAC;AAEf,OAAO,EACL,KAAK,UAAU,EAMhB,MAAM,cAAc,CAAC;AAoBtB,MAAM,MAAM,wBAAwB,GAChC,MAAM,GACN,UAAU,GACV,KAAK,GACL,cAAc,GACd,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,+CAA+C;IAC/C,IAAI,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,wBAAwB,KAAK,IAAI,CAAC;IACvD,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAC/D,yEAAyE;IACzE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,0DAA0D;IAC1D,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,wCAAwC;IACxC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6CAA6C;IAC7C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,6DAA6D;IAC7D,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,6CAA6C;IAC7C,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAAC;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAEnE,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,sBACf,SAAQ,IAAI,CACV,gBAAgB,EAChB,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,cAAc,CACnD;IACD,aAAa,EAAE,SAAS,GAAG,CAAC,CAAC,QAAQ,EAAE,uBAAuB,KAAK,SAAS,CAAC,CAAC;IAC9E,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,wBAAwB,KAAK,IAAI,CAAC;IACvD,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,IAAI,CAAC;CAChE;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAQD;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,EAC1C,OAAO,EACP,QAAQ,GACT,EAAE,iBAAiB,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,2CAazC;AA8LD,iBAAS,eAAe,CACtB,OAAO,EAAE,sBAAsB,GAC9B,qBAAqB,CAmBvB;AAsCD,wBAAgB,eAAe,4CAa9B;AAED,eAAO,MAAM,WAAW,EAAE,CAAC,CAAC,KAAK,EAAE,gBAAgB,KAAK,SAAS,CAAC,GAAG;IACnE,IAAI,EAAE,OAAO,eAAe,CAAC;CACmC,CAAC;AAkBnE,YAAY,EACV,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onekeyfe/react-native-native-sheet",
3
- "version": "3.0.129",
3
+ "version": "3.0.131",
4
4
  "description": "Native bottom sheet host for arbitrary React Native content",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/module/index.js",